Compare commits

..

24 Commits

Author SHA1 Message Date
ionitron
769424313f v7.0.1 2023-04-05 13:03:12 +00:00
Maria Hutt
d925237082 fix(item-divider): removal of unneeded margin unset (#27042)
## Pull request checklist

Please check if your PR fulfills the following requirements:
- [ ] Tests for the changes have been added (for bug fixes / features)
- [ ] Docs have been reviewed and added / updated if needed (for bug
fixes / features)
- Some docs updates need to be made in the `ionic-docs` repo, in a
separate PR. See the [contributing
guide](https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#modifying-documentation)
for details.
- [x] Build (`npm run build`) was run locally and any changes were
pushed
- [x] Lint (`npm run lint`) has passed locally and any fixes were made
for failures


## Pull request type

Please check the type of change your PR introduces:
- [x] Bugfix
- [ ] Feature
- [ ] Code style update (formatting, renaming)
- [ ] Refactoring (no functional changes, no api changes)
- [ ] Build related changes
- [ ] Documentation content changes
- [ ] Other (please describe): 


## What is the current behavior?

End slots are lacking margin of 2px when in RTL.

Issue URL: Part of #17012  


## What is the new behavior?

- Simplifying `property-horizontal` by removing any margin unset

End slots with buttons will have a margin-end of 2px regardless of
direction.

### Screenshots

![Screen Shot 2023-03-24 at 13 48
25](https://user-images.githubusercontent.com/13530427/227642440-acf0f2c2-37c7-43da-bad4-67ef1b31b3ac.png)
![Screen Shot 2023-03-24 at 13 48
17](https://user-images.githubusercontent.com/13530427/227642445-79cf2986-c0b5-45d1-ba38-1beda698c2d5.png)


## Does this introduce a breaking change?

- [ ] Yes
- [x] No



## Other information

- Continuation of ionic-team/ionic-framework#27024 in order to apply it
to Framework v7

---------

Co-authored-by: Liam DeBeasi <liamdebeasi@users.noreply.github.com>
Co-authored-by: ionitron <hi@ionicframework.com>
2023-04-04 21:11:51 +00:00
Liam DeBeasi
15decdd0de test(popover): skip flaky screenshot test (#27115)
<!-- Please refer to our contributing documentation for any questions on
submitting a pull request, or let us know here if you need any help:
https://ionicframework.com/docs/building/contributing -->

<!-- Some docs updates need to be made in the `ionic-docs` repo, in a
separate PR. See
https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#modifying-documentation
for details. -->

<!-- Please do not submit updates to dependencies unless it fixes an
issue. -->

<!-- Please try to limit your pull request to one type (bugfix, feature,
etc). Submit multiple pull requests if needed. -->

## What is the current behavior?
<!-- Please describe the current behavior that you are modifying. -->


<!-- Issues are required for both bug fixes and features. -->
Popover test is still flaky:
https://github.com/ionic-team/ionic-framework/actions/runs/4611219177/jobs/8150680142

## What is the new behavior?
<!-- Please describe the behavior or changes that are being added by
this PR. -->

- Re-open tech debt ticket and skip test

## Does this introduce a breaking change?

- [ ] Yes
- [x] No

<!-- If this introduces a breaking change, please describe the impact
and migration path for existing applications below. -->


## Other information

<!-- Any other information that is important to this PR such as
screenshots of how the component looks before and after the change. -->
2023-04-04 19:44:28 +00:00
Maria Hutt
a35886e71c fix(menu): update location when dynamically changing side or doc dir (#27079)
## Pull request checklist

Please check if your PR fulfills the following requirements:
- [x] Tests for the changes have been added (for bug fixes / features)
- [ ] Docs have been reviewed and added / updated if needed (for bug
fixes / features)
- Some docs updates need to be made in the `ionic-docs` repo, in a
separate PR. See the [contributing
guide](https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#modifying-documentation)
for details.
- [x] Build (`npm run build`) was run locally and any changes were
pushed
- [x] Lint (`npm run lint`) has passed locally and any fixes were made
for failures


## Pull request type

Please check the type of change your PR introduces:
- [x] Bugfix
- [ ] Feature
- [ ] Code style update (formatting, renaming)
- [ ] Refactoring (no functional changes, no api changes)
- [ ] Build related changes
- [ ] Documentation content changes
- [ ] Other (please describe): 


## What is the current behavior?

- When the document direction is dynamically changed, the menu does not
switch to the correct position. For example, `<ion-menu side='start'>`
will always be on the left side regardless of direction.
- When the side property is dynamically changed, the animation starts in
the middle of the screen instead of off screen.

Issue URL: resolves #25601 #19489 


## What is the new behavior?

- Animation is smooth regardless of side property or document direction
being dynamically change.
- Menu appears on the correct side based on document direction when
dynamically updated.

## Does this introduce a breaking change?

- [ ] Yes
- [x] No

## Other information

N/A

---------

Co-authored-by: ionitron <hi@ionicframework.com>
2023-04-04 19:03:13 +00:00
Brandy Carney
4e7424de03 fix(picker-column-internal): hide empty picker items from screenreaders (#27038)
* fix(picker-column): hide empty picker items from screenreaders

fixes #26809

* style(picker-column-internal): run lint

---------

Co-authored-by: Liam DeBeasi <liamdebeasi@users.noreply.github.com>
2023-04-04 17:49:53 +00:00
Shawn Taylor
adbb50ca5b fix(refresher): set overflow styles when using custom scroll target (#27058)
* bug(refresher): set overflow styles when using custom scroll target

* bug(refresher): set overflow styles when using custom scroll target

* Apply suggestions from code review

Co-authored-by: Liam DeBeasi <liamdebeasi@users.noreply.github.com>

* Add comment

---------

Co-authored-by: Liam DeBeasi <liamdebeasi@users.noreply.github.com>
2023-04-04 16:04:50 +00:00
dependabot[bot]
5e35bfc955 chore(deps-dev): bump @playwright/test from 1.32.1 to 1.32.2 in /core (#27110)
* chore(deps-dev): bump @playwright/test from 1.32.1 to 1.32.2 in /core

Bumps [@playwright/test](https://github.com/Microsoft/playwright) from 1.32.1 to 1.32.2.
- [Release notes](https://github.com/Microsoft/playwright/releases)
- [Commits](https://github.com/Microsoft/playwright/compare/v1.32.1...v1.32.2)

---
updated-dependencies:
- dependency-name: "@playwright/test"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(): update playwright-core dep

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Liam DeBeasi <liamdebeasi@users.noreply.github.com>
2023-04-04 15:48:48 +00:00
Liam DeBeasi
b1f5853cf0 chore(): update PR template (#27109)
* Update PULL_REQUEST_TEMPLATE.md

* Update .github/PULL_REQUEST_TEMPLATE.md

Co-authored-by: Amanda Johnston <90629384+amandaejohnston@users.noreply.github.com>

* Update .github/PULL_REQUEST_TEMPLATE.md

Co-authored-by: Amanda Johnston <90629384+amandaejohnston@users.noreply.github.com>

---------

Co-authored-by: Amanda Johnston <90629384+amandaejohnston@users.noreply.github.com>
2023-04-03 19:26:04 +00:00
dependabot[bot]
ab5e1ce2d9 chore(deps): bump @stencil/core from 3.1.0 to 3.2.0 in /core (#27074)
Bumps [@stencil/core](https://github.com/ionic-team/stencil) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/ionic-team/stencil/releases)
- [Changelog](https://github.com/ionic-team/stencil/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ionic-team/stencil/compare/v3.1.0...v3.2.0)

---
updated-dependencies:
- dependency-name: "@stencil/core"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Liam DeBeasi <liamdebeasi@users.noreply.github.com>
2023-04-03 19:16:22 +00:00
dependabot[bot]
a3b7e1e37f chore(deps-dev): bump @axe-core/playwright from 4.6.0 to 4.6.1 in /core (#27044)
Bumps [@axe-core/playwright](https://github.com/dequelabs/axe-core-npm) from 4.6.0 to 4.6.1.
- [Release notes](https://github.com/dequelabs/axe-core-npm/releases)
- [Changelog](https://github.com/dequelabs/axe-core-npm/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/dequelabs/axe-core-npm/compare/v4.6.0...v4.6.1)

---
updated-dependencies:
- dependency-name: "@axe-core/playwright"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Liam DeBeasi <liamdebeasi@users.noreply.github.com>
2023-04-03 19:12:50 +00:00
Maria Hutt
f8667830dc test(breadcrumbs): check color attribute renders in the DOM (#27080)
Co-authored-by: liamdebeasi <liamdebeasi@users.noreply.github.com>
2023-04-03 11:35:14 -07:00
Maria Hutt
d939ad36e3 test(textarea): skip autogrow test due to flakiness (#27100) 2023-04-03 09:38:56 -07:00
Ryan Waskiewicz
1638749be3 chore(ci): use stencil nightly tags (#26927)
this commit removes the retrieval of stencil source code and building
the library from source. with
24887c0da0
(https://github.com/ionic-team/stencil/pull/4100), stencil now creates
nightly builds from `main@HEAD` of the repository. these pre-built
packages are tagged as "nightly", allowing us to bypass the previously
mentioned build steps and install the package directly

rename stencil-eval to stencil-nightly to better reflect what the
workflow is running. since ionic framework v7.0 has been released,
its feature branch has been removed/merged into `main`. remove
usages of `feature-7.0` in favor of `main`
2023-04-03 09:18:36 -04:00
Shawn Taylor
426913d0de fix(item-divider): set padding-end for md (#27019)
closes #23785
2023-03-31 17:00:12 -04:00
Amanda Johnston
75186d3f83 docs(content): fix typo in forceOverscroll description (#27077) 2023-03-31 10:17:36 -05:00
Brandy Carney
cbf7f7286e chore(readme): update migration guides to correct links (#27072) 2023-03-31 10:34:26 -04:00
Sean Perkins
141ced5010 fix(breadcrumbs): color attribute shows on DOM for Vue (#27068)
Co-authored-by: Maria Hutt <thetaPC@users.noreply.github.com>
2023-03-30 17:11:22 -04:00
Brandy Carney
6d851f19f8 chore(breaking): update utilities title in v7 breaking changes (#27043) 2023-03-30 15:34:54 -04:00
Liam DeBeasi
14145dcaeb fix(vue): v-model props have correct type (#27067)
resolves #27057
2023-03-30 14:32:19 -04:00
Sean Perkins
abadeedc9e Revert "bug(breadcrumbs): color attribute shows on DOM for Vue (#27040)" (#27069)
This reverts commit dd419c0066.

Co-authored-by: Maria Hutt <thetaPC@users.noreply.github.com>
2023-03-30 13:50:34 -04:00
Maria Hutt
dd419c0066 bug(breadcrumbs): color attribute shows on DOM for Vue (#27040)
Co-authored-by: Liam DeBeasi <liamdebeasi@users.noreply.github.com>
2023-03-30 09:57:02 -07:00
Liam DeBeasi
7864a21ca3 chore(): merge feature-7.0 into main
chore(): merge feature-7.0 into main
2023-03-30 12:16:46 -04:00
Liam DeBeasi
df186bb743 merge release-7.0.0
Release 7.0.0
2023-03-29 13:35:24 -04:00
ionitron
8d4247d7d0 chore(): update package lock files 2023-03-29 17:00:27 +00:00
136 changed files with 536 additions and 325 deletions

View File

@@ -1,30 +1,10 @@
<!-- Please refer to our contributing documentation for any questions on submitting a pull request, or let us know here if you need any help: https://ionicframework.com/docs/building/contributing -->
## Pull request checklist
Please check if your PR fulfills the following requirements:
- [ ] Tests for the changes have been added (for bug fixes / features)
- [ ] Docs have been reviewed and added / updated if needed (for bug fixes / features)
- Some docs updates need to be made in the `ionic-docs` repo, in a separate PR. See the [contributing guide](https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#modifying-documentation) for details.
- [ ] Build (`npm run build`) was run locally and any changes were pushed
- [ ] Lint (`npm run lint`) has passed locally and any fixes were made for failures
## Pull request type
<!-- Some docs updates need to be made in the `ionic-docs` repo, in a separate PR. See https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#modifying-documentation for details. -->
<!-- Please do not submit updates to dependencies unless it fixes an issue. -->
<!-- Please try to limit your pull request to one type, submit multiple pull requests if needed. -->
Please check the type of change your PR introduces:
- [ ] Bugfix
- [ ] Feature
- [ ] Code style update (formatting, renaming)
- [ ] Refactoring (no functional changes, no api changes)
- [ ] Build related changes
- [ ] Documentation content changes
- [ ] Other (please describe):
<!-- Please try to limit your pull request to one type (bugfix, feature, etc). Submit multiple pull requests if needed. -->
## What is the current behavior?
<!-- Please describe the current behavior that you are modifying. -->

View File

@@ -1,47 +0,0 @@
name: 'Build Ionic Core with Stencil Eval'
description: 'Build Ionic Core with an Evaluation Copy of Stencil'
runs:
using: 'composite'
steps:
- uses: actions/checkout@v3
with:
ref: feature-7.0
- uses: actions/setup-node@v3
with:
node-version: 16.x
- name: Install Dependencies
run: npm ci
working-directory: ./core
shell: bash
- name: Retrieve Stencil Repository
run: git clone https://github.com/ionic-team/stencil.git stencil-repo-tmp
shell: bash
- name: Report Stencil SHA
run: git rev-parse HEAD
working-directory: ./stencil-repo-tmp
shell: bash
- name: Build Stencil
run: npm ci && npm run build && npm pack
working-directory: ./stencil-repo-tmp
shell: bash
- name: Move the Stencil Build Artifact
# there isn't a great way to get the output of `npm pack`, just grab the first and hope for the best
run: mv $(ls ./stencil-repo-tmp/*.tgz | head -1) ./core/stencil-eval.tgz
shell: bash
- name: Install Stencil Eval
working-directory: ./core
run: npm i ./stencil-eval.tgz
shell: bash
- name: Clean Up Stencil Build
run: rm -rf stencil-repo-tmp
shell: bash
- name: Build Core
run: npm run build -- --ci
working-directory: ./core
shell: bash
- uses: ./.github/workflows/actions/upload-archive
with:
name: ionic-core
output: core/CoreBuild.zip
paths: core/dist core/components core/css core/hydrate core/loader core/src/components.d.ts

View File

@@ -0,0 +1,27 @@
name: 'Build Ionic Core with Stencil Nightly'
description: 'Build Ionic Core with a Nightly Build of Stencil'
runs:
using: 'composite'
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 16.x
- name: Install Dependencies
run: npm ci
working-directory: ./core
shell: bash
- name: Install Stencil Nightly
working-directory: ./core
run: npm i @stencil/core@nightly
shell: bash
- name: Build Core
run: npm run build -- --ci
working-directory: ./core
shell: bash
- uses: ./.github/workflows/actions/upload-archive
with:
name: ionic-core
output: core/CoreBuild.zip
paths: core/dist core/components core/css core/hydrate core/loader core/src/components.d.ts

View File

@@ -18,39 +18,31 @@ concurrency:
cancel-in-progress: false
jobs:
build-core-with-stencil-eval:
build-core-with-stencil-nightly:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: feature-7.0
- uses: ./.github/workflows/actions/build-core-stencil-eval
- uses: ./.github/workflows/actions/build-core-stencil-nightly
test-core-clean-build:
needs: [build-core-with-stencil-eval]
needs: [build-core-with-stencil-nightly]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: feature-7.0
- uses: ./.github/workflows/actions/test-core-clean-build
test-core-lint:
needs: [build-core-with-stencil-eval]
needs: [build-core-with-stencil-nightly]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: feature-7.0
- uses: ./.github/workflows/actions/test-core-lint
test-core-spec:
needs: [build-core-with-stencil-eval]
needs: [build-core-with-stencil-nightly]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: feature-7.0
- uses: ./.github/workflows/actions/test-core-spec
test-core-screenshot:
@@ -68,12 +60,10 @@ jobs:
# to be the length of the shard array.
shard: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
totalShards: [20]
needs: [build-core-with-stencil-eval]
needs: [build-core-with-stencil-nightly]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: feature-7.0
- uses: ./.github/workflows/actions/test-core-screenshot
with:
shard: ${{ matrix.shard }}
@@ -98,12 +88,10 @@ jobs:
run: exit 1
build-vue:
needs: [build-core-with-stencil-eval]
needs: [build-core-with-stencil-nightly]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: feature-7.0
- uses: ./.github/workflows/actions/build-vue
build-vue-router:
@@ -111,8 +99,6 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: feature-7.0
- uses: ./.github/workflows/actions/build-vue-router
test-vue-e2e:
@@ -124,8 +110,6 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: feature-7.0
- uses: ./.github/workflows/actions/test-vue-e2e
with:
app: ${{ matrix.apps }}
@@ -140,12 +124,10 @@ jobs:
run: exit 1
build-angular:
needs: [build-core-with-stencil-eval]
needs: [build-core-with-stencil-nightly]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: feature-7.0
- uses: ./.github/workflows/actions/build-angular
build-angular-server:
@@ -153,8 +135,6 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: feature-7.0
- uses: ./.github/workflows/actions/build-angular-server
test-angular-e2e:
@@ -166,8 +146,6 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: feature-7.0
- uses: ./.github/workflows/actions/test-angular-e2e
with:
app: ${{ matrix.apps }}
@@ -182,12 +160,10 @@ jobs:
run: exit 1
build-react:
needs: [build-core-with-stencil-eval]
needs: [build-core-with-stencil-nightly]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: feature-7.0
- uses: ./.github/workflows/actions/build-react
build-react-router:
@@ -195,8 +171,6 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: feature-7.0
- uses: ./.github/workflows/actions/build-react-router
test-react-router-e2e:
@@ -208,8 +182,6 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: feature-7.0
- uses: ./.github/workflows/actions/test-react-router-e2e
with:
app: ${{ matrix.apps }}
@@ -232,8 +204,6 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: feature-7.0
- uses: ./.github/workflows/actions/test-react-e2e
with:
app: ${{ matrix.apps }}

View File

@@ -42,7 +42,7 @@ This is a comprehensive list of the breaking changes introduced in the major ver
- [Angular](#version-7x-angular)
- [React](#version-7x-react)
- [Vue](#version-7x-vue)
- [Utilities](#version-7x-utilities)
- [CSS Utilities](#version-7x-css-utilities)
- [hidden attribute](#version-7x-hidden-attribute)
<h2 id="version-7x-browser-platform-support">Browser and Platform Support</h2>
@@ -207,7 +207,7 @@ Ionic now listens on the `keydown` event instead of the `keyup` event when deter
- The `debounce` property's value value has changed from `0` to `undefined`. If `debounce` is undefined, the `ionInput` event will fire immediately.
- Range no longer clamps assigned values within bounds. Developers will need to validate the value they are assigning to `ion-range` is within the `min` and `max` bounds when programmatically assigning a value.
- Range no longer clamps assigned values within bounds. Developers will need to validate the value they are assigning to `ion-range` is within the `min` and `max` bounds when programmatically assigning a value.
- The `name` property defaults to `ion-r-${rangeIds++}` where `rangeIds` is a number that is incremented for every instance of `ion-range`.
@@ -326,7 +326,7 @@ Any references to the virtual scroll types from `@ionic/core` have been removed.
`@ionic/vue` and `@ionic/vue-router` no longer ship a CommonJS entry point. Instead, only an ES Module entry point is provided for improved compatibility with Vite.
<h2 id="version-7x-utilities">Utilities</h2>
<h2 id="version-7x-css-utilities">CSS Utilities</h2>
<h4 id="version-7x-hidden-attribute">`hidden` attribute</h4>

View File

@@ -3,6 +3,28 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [7.0.1](https://github.com/ionic-team/ionic-framework/compare/v7.0.0...v7.0.1) (2023-04-05)
### Bug Fixes
* **breadcrumbs:** color attribute shows on DOM for Vue ([#27068](https://github.com/ionic-team/ionic-framework/issues/27068)) ([141ced5](https://github.com/ionic-team/ionic-framework/commit/141ced50103098fd711e0088ea8be4efdaadd0a9))
* **item-divider:** removal of unneeded margin unset ([#27042](https://github.com/ionic-team/ionic-framework/issues/27042)) ([d925237](https://github.com/ionic-team/ionic-framework/commit/d925237082cd2f55a573ddb0301afcbd84f4fda0)), closes [#17012](https://github.com/ionic-team/ionic-framework/issues/17012) [ionic-team/ionic-framework#27024](https://github.com/ionic-team/ionic-framework/issues/27024)
* **item-divider:** set padding-end for md ([#27019](https://github.com/ionic-team/ionic-framework/issues/27019)) ([426913d](https://github.com/ionic-team/ionic-framework/commit/426913d0de50e65a76b029258daa09e6567c6515)), closes [#23785](https://github.com/ionic-team/ionic-framework/issues/23785)
* **menu:** update location when dynamically changing side or doc dir ([#27079](https://github.com/ionic-team/ionic-framework/issues/27079)) ([a35886e](https://github.com/ionic-team/ionic-framework/commit/a35886e71c7c4b8abdd01ad33d92828c04249dc5)), closes [#25601](https://github.com/ionic-team/ionic-framework/issues/25601) [#19489](https://github.com/ionic-team/ionic-framework/issues/19489)
* **picker-column-internal:** hide empty picker items from screenreaders ([#27038](https://github.com/ionic-team/ionic-framework/issues/27038)) ([4e7424d](https://github.com/ionic-team/ionic-framework/commit/4e7424de035888e324b03af321c90ebbb6402746)), closes [#26809](https://github.com/ionic-team/ionic-framework/issues/26809)
* **refresher:** set overflow styles when using custom scroll target ([#27058](https://github.com/ionic-team/ionic-framework/issues/27058)) ([adbb50c](https://github.com/ionic-team/ionic-framework/commit/adbb50ca5b92793ba002e4d704b2a643b92aabc7))
* **vue:** v-model props have correct type ([#27067](https://github.com/ionic-team/ionic-framework/issues/27067)) ([14145dc](https://github.com/ionic-team/ionic-framework/commit/14145dcaebef4dde7654317597fdee6a0cdb4bfa)), closes [#27057](https://github.com/ionic-team/ionic-framework/issues/27057)
### Reverts
* Revert "bug(breadcrumbs): color attribute shows on DOM for Vue (#27040)" (#27069) ([abadeed](https://github.com/ionic-team/ionic-framework/commit/abadeedc9e953f8a1e114d98e118d4c2f05c73dd)), closes [#27040](https://github.com/ionic-team/ionic-framework/issues/27040) [#27069](https://github.com/ionic-team/ionic-framework/issues/27069)
# [7.0.0](https://github.com/ionic-team/ionic-framework/compare/v7.0.0-rc.5...v7.0.0) (2023-03-29)
**Note:** Version bump only for package ionic-framework

View File

@@ -71,10 +71,10 @@ an [issue](https://github.com/ionic-team/ionic/issues/new) on this repository.
Already have an Ionic app? These guides will help you migrate to the latest versions.
* [Migrate from v6 to v7](https://ionicframework.com/docs/v7/updating/7-0)
* [Migrate from v5 to v6](https://ionicframework.com/docs/reference/migration#migrating-from-ionic-5x-to-ionic-6x)
* [Migrate from v4 to v5](https://ionicframework.com/docs/reference/migration#migrating-from-ionic-4x-to-ionic-5x)
* [Migrate from v3 to v4](https://ionicframework.com/docs/reference/migration#migrating-from-ionic-30-to-ionic-40)
* [Migrate from v6 to v7](https://ionicframework.com/docs/updating/7-0)
* [Migrate from v5 to v6](https://ionicframework.com/docs/updating/6-0)
* [Migrate from v4 to v5](https://ionicframework.com/docs/updating/5-0)
* [Migrate from v3 to v4](https://ionicframework.com/docs/updating/4-0)
### Examples

View File

@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [7.0.1](https://github.com/ionic-team/ionic/compare/v7.0.0...v7.0.1) (2023-04-05)
**Note:** Version bump only for package @ionic/angular
# [7.0.0](https://github.com/ionic-team/ionic/compare/v7.0.0-rc.5...v7.0.0) (2023-03-29)
**Note:** Version bump only for package @ionic/angular

View File

@@ -1,15 +1,15 @@
{
"name": "@ionic/angular",
"version": "7.0.0",
"version": "7.0.1",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@ionic/angular",
"version": "7.0.0",
"version": "7.0.1",
"license": "MIT",
"dependencies": {
"@ionic/core": "^7.0.0",
"@ionic/core": "^7.0.1",
"ionicons": "^7.0.0",
"jsonc-parser": "^3.0.0",
"tslib": "^2.3.0"
@@ -1227,9 +1227,9 @@
"dev": true
},
"node_modules/@ionic/core": {
"version": "7.0.0-rc.5",
"resolved": "https://registry.npmjs.org/@ionic/core/-/core-7.0.0-rc.5.tgz",
"integrity": "sha512-c8st2bhM+mlauv2/1Xm++cZIoAXG5mEK2LA+HbO5RAUI6045k/GbXsVbpDyGI0HtrOvOq8+IyCH5i+AdwqzyWQ==",
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/@ionic/core/-/core-7.0.0.tgz",
"integrity": "sha512-pM8qOaea9ZbqZbGnoIswaeeTiHJKNQ9ziSNHSILDpdd4FjpxZjOeMgNUdvYzh5rX9fA6hEM2wodg7McIWHgvZQ==",
"dependencies": {
"@stencil/core": "^3.1.0",
"ionicons": "^7.1.0",
@@ -8104,9 +8104,9 @@
"dev": true
},
"@ionic/core": {
"version": "7.0.0-rc.5",
"resolved": "https://registry.npmjs.org/@ionic/core/-/core-7.0.0-rc.5.tgz",
"integrity": "sha512-c8st2bhM+mlauv2/1Xm++cZIoAXG5mEK2LA+HbO5RAUI6045k/GbXsVbpDyGI0HtrOvOq8+IyCH5i+AdwqzyWQ==",
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/@ionic/core/-/core-7.0.0.tgz",
"integrity": "sha512-pM8qOaea9ZbqZbGnoIswaeeTiHJKNQ9ziSNHSILDpdd4FjpxZjOeMgNUdvYzh5rX9fA6hEM2wodg7McIWHgvZQ==",
"requires": {
"@stencil/core": "^3.1.0",
"ionicons": "^7.1.0",

View File

@@ -1,6 +1,6 @@
{
"name": "@ionic/angular",
"version": "7.0.0",
"version": "7.0.1",
"description": "Angular specific wrappers for @ionic/core",
"keywords": [
"ionic",
@@ -47,7 +47,7 @@
}
},
"dependencies": {
"@ionic/core": "^7.0.0",
"@ionic/core": "^7.0.1",
"ionicons": "^7.0.0",
"jsonc-parser": "^3.0.0",
"tslib": "^2.3.0"

View File

@@ -3,6 +3,28 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [7.0.1](https://github.com/ionic-team/ionic/compare/v7.0.0...v7.0.1) (2023-04-05)
### Bug Fixes
* **breadcrumbs:** color attribute shows on DOM for Vue ([#27068](https://github.com/ionic-team/ionic/issues/27068)) ([141ced5](https://github.com/ionic-team/ionic/commit/141ced50103098fd711e0088ea8be4efdaadd0a9))
* **item-divider:** removal of unneeded margin unset ([#27042](https://github.com/ionic-team/ionic/issues/27042)) ([d925237](https://github.com/ionic-team/ionic/commit/d925237082cd2f55a573ddb0301afcbd84f4fda0)), closes [#17012](https://github.com/ionic-team/ionic/issues/17012) [ionic-team/ionic-framework#27024](https://github.com/ionic-team/ionic-framework/issues/27024)
* **item-divider:** set padding-end for md ([#27019](https://github.com/ionic-team/ionic/issues/27019)) ([426913d](https://github.com/ionic-team/ionic/commit/426913d0de50e65a76b029258daa09e6567c6515)), closes [#23785](https://github.com/ionic-team/ionic/issues/23785)
* **menu:** update location when dynamically changing side or doc dir ([#27079](https://github.com/ionic-team/ionic/issues/27079)) ([a35886e](https://github.com/ionic-team/ionic/commit/a35886e71c7c4b8abdd01ad33d92828c04249dc5)), closes [#25601](https://github.com/ionic-team/ionic/issues/25601) [#19489](https://github.com/ionic-team/ionic/issues/19489)
* **picker-column-internal:** hide empty picker items from screenreaders ([#27038](https://github.com/ionic-team/ionic/issues/27038)) ([4e7424d](https://github.com/ionic-team/ionic/commit/4e7424de035888e324b03af321c90ebbb6402746)), closes [#26809](https://github.com/ionic-team/ionic/issues/26809)
* **refresher:** set overflow styles when using custom scroll target ([#27058](https://github.com/ionic-team/ionic/issues/27058)) ([adbb50c](https://github.com/ionic-team/ionic/commit/adbb50ca5b92793ba002e4d704b2a643b92aabc7))
* **vue:** v-model props have correct type ([#27067](https://github.com/ionic-team/ionic/issues/27067)) ([14145dc](https://github.com/ionic-team/ionic/commit/14145dcaebef4dde7654317597fdee6a0cdb4bfa)), closes [#27057](https://github.com/ionic-team/ionic/issues/27057)
### Reverts
* Revert "bug(breadcrumbs): color attribute shows on DOM for Vue (#27040)" (#27069) ([abadeed](https://github.com/ionic-team/ionic/commit/abadeedc9e953f8a1e114d98e118d4c2f05c73dd)), closes [#27040](https://github.com/ionic-team/ionic/issues/27040) [#27069](https://github.com/ionic-team/ionic/issues/27069)
# [7.0.0](https://github.com/ionic-team/ionic/compare/v7.0.0-rc.5...v7.0.0) (2023-03-29)
**Note:** Version bump only for package @ionic/core

View File

@@ -199,7 +199,7 @@ ion-breadcrumb,part,native
ion-breadcrumb,part,separator
ion-breadcrumbs,shadow
ion-breadcrumbs,prop,color,"danger" | "dark" | "light" | "medium" | "primary" | "secondary" | "success" | "tertiary" | "warning" | string & Record<never, never> | undefined,undefined,false,false
ion-breadcrumbs,prop,color,"danger" | "dark" | "light" | "medium" | "primary" | "secondary" | "success" | "tertiary" | "warning" | string & Record<never, never> | undefined,undefined,false,true
ion-breadcrumbs,prop,itemsAfterCollapse,number,1,false,false
ion-breadcrumbs,prop,itemsBeforeCollapse,number,1,false,false
ion-breadcrumbs,prop,maxItems,number | undefined,undefined,false,false

108
core/package-lock.json generated
View File

@@ -1,30 +1,30 @@
{
"name": "@ionic/core",
"version": "7.0.0",
"version": "7.0.1",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@ionic/core",
"version": "7.0.0",
"version": "7.0.1",
"license": "MIT",
"dependencies": {
"@stencil/core": "^3.1.0",
"@stencil/core": "^3.2.0",
"ionicons": "^7.1.0",
"tslib": "^2.1.0"
},
"devDependencies": {
"@axe-core/playwright": "^4.4.2",
"@axe-core/playwright": "^4.6.1",
"@ionic/eslint-config": "^0.3.0",
"@ionic/prettier-config": "^2.0.0",
"@jest/core": "^27.5.1",
"@playwright/test": "^1.32.1",
"@playwright/test": "^1.32.2",
"@rollup/plugin-node-resolve": "^8.4.0",
"@rollup/plugin-virtual": "^2.0.3",
"@stencil/angular-output-target": "^0.6.0",
"@stencil/react-output-target": "^0.5.0",
"@stencil/sass": "^3.0.0",
"@stencil/vue-output-target": "^0.8.0",
"@stencil/vue-output-target": "^0.8.1",
"@types/jest": "^27.5.2",
"@types/node": "^14.6.0",
"@typescript-eslint/eslint-plugin": "^5.17.0",
@@ -53,12 +53,12 @@
"dev": true
},
"node_modules/@axe-core/playwright": {
"version": "4.6.0",
"resolved": "https://registry.npmjs.org/@axe-core/playwright/-/playwright-4.6.0.tgz",
"integrity": "sha512-q9K4GVJ1fH8FQqErgs01dwzhOJ03vZDfMg+vO9Er05BxQOCp9Rm8oyB3byVzC7oNlxFaPU1qQ8zLwZYypHmchw==",
"version": "4.6.1",
"resolved": "https://registry.npmjs.org/@axe-core/playwright/-/playwright-4.6.1.tgz",
"integrity": "sha512-XMKP2OzGfGIYpU9G9FgI2ulyjEXQDP6qtZerOwdQ7YC1w4SFgofK3ogSk0qVoy0QI+q6XWLUJMfMMkUwdTR2dA==",
"dev": true,
"dependencies": {
"axe-core": "^4.6.1"
"axe-core": "^4.6.3"
},
"peerDependencies": {
"playwright": ">= 1.0.0"
@@ -1501,13 +1501,13 @@
}
},
"node_modules/@playwright/test": {
"version": "1.32.1",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.32.1.tgz",
"integrity": "sha512-FTwjCuhlm1qHUGf4hWjfr64UMJD/z0hXYbk+O387Ioe6WdyZQ+0TBDAc6P+pHjx2xCv1VYNgrKbYrNixFWy4Dg==",
"version": "1.32.2",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.32.2.tgz",
"integrity": "sha512-nhaTSDpEdTTttdkDE8Z6K3icuG1DVRxrl98Qq0Lfc63SS9a2sjc9+x8ezysh7MzCKz6Y+nArml3/mmt+gqRmQQ==",
"dev": true,
"dependencies": {
"@types/node": "*",
"playwright-core": "1.32.1"
"playwright-core": "1.32.2"
},
"bin": {
"playwright": "cli.js"
@@ -1594,9 +1594,9 @@
}
},
"node_modules/@stencil/core": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/@stencil/core/-/core-3.1.0.tgz",
"integrity": "sha512-Zfe+evaw9m2L/HkTO97Hu8go2ThXrObyWkVqa7V3HjTnq+8TUd/nwld9PC0bOItC/eyMRXsWHdEDCpJAZ1tEVQ==",
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/@stencil/core/-/core-3.2.0.tgz",
"integrity": "sha512-vAZiHg4h6hZn4GP6P4w/d7qJwovW0xroitVAn/Ay0rUOeMHqMDYTX5jq0Vy/bgKactKam5WL/to50esGe6lDUQ==",
"bin": {
"stencil": "bin/stencil"
},
@@ -1624,9 +1624,9 @@
}
},
"node_modules/@stencil/vue-output-target": {
"version": "0.8.0",
"resolved": "https://registry.npmjs.org/@stencil/vue-output-target/-/vue-output-target-0.8.0.tgz",
"integrity": "sha512-Clh+aXTvS0uF4IfsecZHOw3Md6jwoNTrY5pXdnJRsqtGKK8KpBDeErcU323ngJNITkgaMhBvRxksSFqvay4kzQ==",
"version": "0.8.1",
"resolved": "https://registry.npmjs.org/@stencil/vue-output-target/-/vue-output-target-0.8.1.tgz",
"integrity": "sha512-nSpwTvDa+i1Du8wxzX8OWp0QTS5DQmiwVNjdzQWBzeI77fCvS5mTMBsXwXbtURkR7emkm/ktMU05wXX8mnbWiQ==",
"dev": true,
"peerDependencies": {
"@stencil/core": "^2.9.0 || ^3.0.0"
@@ -2571,9 +2571,9 @@
}
},
"node_modules/axe-core": {
"version": "4.6.2",
"resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.6.2.tgz",
"integrity": "sha512-b1WlTV8+XKLj9gZy2DZXgQiyDp9xkkoe2a6U6UbYccScq2wgH/YwCeI2/Jq2mgo0HzQxqJOjWZBLeA/mqsk5Mg==",
"version": "4.6.3",
"resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.6.3.tgz",
"integrity": "sha512-/BQzOX780JhsxDnPpH4ZiyrJAzcd8AfzFPkv+89veFSr1rcMjuq2JDCwypKaPeB6ljHp9KjXhPpjgCvQlWYuqg==",
"dev": true,
"engines": {
"node": ">=4"
@@ -8150,14 +8150,14 @@
}
},
"node_modules/playwright": {
"version": "1.32.1",
"resolved": "https://registry.npmjs.org/playwright/-/playwright-1.32.1.tgz",
"integrity": "sha512-GnEizysWMvoqHC3I9l8+4/ZxeLwLNdJJG76xdKGxzOcIZDcw5RSk/FKrFb5CuA+zcLpjIM2p9eR9Z4CuUDkWXg==",
"version": "1.32.2",
"resolved": "https://registry.npmjs.org/playwright/-/playwright-1.32.2.tgz",
"integrity": "sha512-jHVnXJke0PXpuPszKtk9y1zZSlzO5+2a+aockT/AND0oeXx46FiJEFrafthurglLygVZA+1gEbtUM1C7qtTV+Q==",
"dev": true,
"hasInstallScript": true,
"peer": true,
"dependencies": {
"playwright-core": "1.32.1"
"playwright-core": "1.32.2"
},
"bin": {
"playwright": "cli.js"
@@ -8167,9 +8167,9 @@
}
},
"node_modules/playwright-core": {
"version": "1.32.1",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.32.1.tgz",
"integrity": "sha512-KZYUQC10mXD2Am1rGlidaalNGYk3LU1vZqqNk0gT4XPty1jOqgup8KDP8l2CUlqoNKhXM5IfGjWgW37xvGllBA==",
"version": "1.32.2",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.32.2.tgz",
"integrity": "sha512-zD7aonO+07kOTthsrCR3YCVnDcqSHIJpdFUtZEMOb6//1Rc7/6mZDRdw+nlzcQiQltOOsiqI3rrSyn/SlyjnJQ==",
"dev": true,
"bin": {
"playwright": "cli.js"
@@ -10352,12 +10352,12 @@
},
"dependencies": {
"@axe-core/playwright": {
"version": "4.6.0",
"resolved": "https://registry.npmjs.org/@axe-core/playwright/-/playwright-4.6.0.tgz",
"integrity": "sha512-q9K4GVJ1fH8FQqErgs01dwzhOJ03vZDfMg+vO9Er05BxQOCp9Rm8oyB3byVzC7oNlxFaPU1qQ8zLwZYypHmchw==",
"version": "4.6.1",
"resolved": "https://registry.npmjs.org/@axe-core/playwright/-/playwright-4.6.1.tgz",
"integrity": "sha512-XMKP2OzGfGIYpU9G9FgI2ulyjEXQDP6qtZerOwdQ7YC1w4SFgofK3ogSk0qVoy0QI+q6XWLUJMfMMkUwdTR2dA==",
"dev": true,
"requires": {
"axe-core": "^4.6.1"
"axe-core": "^4.6.3"
}
},
"@babel/code-frame": {
@@ -11398,14 +11398,14 @@
}
},
"@playwright/test": {
"version": "1.32.1",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.32.1.tgz",
"integrity": "sha512-FTwjCuhlm1qHUGf4hWjfr64UMJD/z0hXYbk+O387Ioe6WdyZQ+0TBDAc6P+pHjx2xCv1VYNgrKbYrNixFWy4Dg==",
"version": "1.32.2",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.32.2.tgz",
"integrity": "sha512-nhaTSDpEdTTttdkDE8Z6K3icuG1DVRxrl98Qq0Lfc63SS9a2sjc9+x8ezysh7MzCKz6Y+nArml3/mmt+gqRmQQ==",
"dev": true,
"requires": {
"@types/node": "*",
"fsevents": "2.3.2",
"playwright-core": "1.32.1"
"playwright-core": "1.32.2"
}
},
"@rollup/plugin-node-resolve": {
@@ -11467,9 +11467,9 @@
"requires": {}
},
"@stencil/core": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/@stencil/core/-/core-3.1.0.tgz",
"integrity": "sha512-Zfe+evaw9m2L/HkTO97Hu8go2ThXrObyWkVqa7V3HjTnq+8TUd/nwld9PC0bOItC/eyMRXsWHdEDCpJAZ1tEVQ=="
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/@stencil/core/-/core-3.2.0.tgz",
"integrity": "sha512-vAZiHg4h6hZn4GP6P4w/d7qJwovW0xroitVAn/Ay0rUOeMHqMDYTX5jq0Vy/bgKactKam5WL/to50esGe6lDUQ=="
},
"@stencil/react-output-target": {
"version": "0.5.0",
@@ -11486,9 +11486,9 @@
"requires": {}
},
"@stencil/vue-output-target": {
"version": "0.8.0",
"resolved": "https://registry.npmjs.org/@stencil/vue-output-target/-/vue-output-target-0.8.0.tgz",
"integrity": "sha512-Clh+aXTvS0uF4IfsecZHOw3Md6jwoNTrY5pXdnJRsqtGKK8KpBDeErcU323ngJNITkgaMhBvRxksSFqvay4kzQ==",
"version": "0.8.1",
"resolved": "https://registry.npmjs.org/@stencil/vue-output-target/-/vue-output-target-0.8.1.tgz",
"integrity": "sha512-nSpwTvDa+i1Du8wxzX8OWp0QTS5DQmiwVNjdzQWBzeI77fCvS5mTMBsXwXbtURkR7emkm/ktMU05wXX8mnbWiQ==",
"dev": true,
"requires": {}
},
@@ -12144,9 +12144,9 @@
}
},
"axe-core": {
"version": "4.6.2",
"resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.6.2.tgz",
"integrity": "sha512-b1WlTV8+XKLj9gZy2DZXgQiyDp9xkkoe2a6U6UbYccScq2wgH/YwCeI2/Jq2mgo0HzQxqJOjWZBLeA/mqsk5Mg==",
"version": "4.6.3",
"resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.6.3.tgz",
"integrity": "sha512-/BQzOX780JhsxDnPpH4ZiyrJAzcd8AfzFPkv+89veFSr1rcMjuq2JDCwypKaPeB6ljHp9KjXhPpjgCvQlWYuqg==",
"dev": true
},
"babel-jest": {
@@ -16275,19 +16275,19 @@
}
},
"playwright": {
"version": "1.32.1",
"resolved": "https://registry.npmjs.org/playwright/-/playwright-1.32.1.tgz",
"integrity": "sha512-GnEizysWMvoqHC3I9l8+4/ZxeLwLNdJJG76xdKGxzOcIZDcw5RSk/FKrFb5CuA+zcLpjIM2p9eR9Z4CuUDkWXg==",
"version": "1.32.2",
"resolved": "https://registry.npmjs.org/playwright/-/playwright-1.32.2.tgz",
"integrity": "sha512-jHVnXJke0PXpuPszKtk9y1zZSlzO5+2a+aockT/AND0oeXx46FiJEFrafthurglLygVZA+1gEbtUM1C7qtTV+Q==",
"dev": true,
"peer": true,
"requires": {
"playwright-core": "1.32.1"
"playwright-core": "1.32.2"
}
},
"playwright-core": {
"version": "1.32.1",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.32.1.tgz",
"integrity": "sha512-KZYUQC10mXD2Am1rGlidaalNGYk3LU1vZqqNk0gT4XPty1jOqgup8KDP8l2CUlqoNKhXM5IfGjWgW37xvGllBA==",
"version": "1.32.2",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.32.2.tgz",
"integrity": "sha512-zD7aonO+07kOTthsrCR3YCVnDcqSHIJpdFUtZEMOb6//1Rc7/6mZDRdw+nlzcQiQltOOsiqI3rrSyn/SlyjnJQ==",
"dev": true
},
"postcss": {

View File

@@ -1,6 +1,6 @@
{
"name": "@ionic/core",
"version": "7.0.0",
"version": "7.0.1",
"description": "Base components for Ionic",
"keywords": [
"ionic",
@@ -31,22 +31,22 @@
"loader/"
],
"dependencies": {
"@stencil/core": "^3.1.0",
"@stencil/core": "^3.2.0",
"ionicons": "^7.1.0",
"tslib": "^2.1.0"
},
"devDependencies": {
"@axe-core/playwright": "^4.4.2",
"@axe-core/playwright": "^4.6.1",
"@ionic/eslint-config": "^0.3.0",
"@ionic/prettier-config": "^2.0.0",
"@jest/core": "^27.5.1",
"@playwright/test": "^1.32.1",
"@playwright/test": "^1.32.2",
"@rollup/plugin-node-resolve": "^8.4.0",
"@rollup/plugin-virtual": "^2.0.3",
"@stencil/angular-output-target": "^0.6.0",
"@stencil/react-output-target": "^0.5.0",
"@stencil/sass": "^3.0.0",
"@stencil/vue-output-target": "^0.8.0",
"@stencil/vue-output-target": "^0.8.1",
"@types/jest": "^27.5.2",
"@types/node": "^14.6.0",
"@typescript-eslint/eslint-plugin": "^5.17.0",

View File

@@ -765,7 +765,7 @@ export namespace Components {
*/
"color"?: Color;
/**
* If `true` and the content does not cause an overflow scroll, the scroll interaction will cause a bounce. If the content exceeds the bounds of ionContent, nothing will change. Note, the does not disable the system bounce on iOS. That is an OS level setting.
* If `true` and the content does not cause an overflow scroll, the scroll interaction will cause a bounce. If the content exceeds the bounds of ionContent, nothing will change. Note, this does not disable the system bounce on iOS. That is an OS level setting.
*/
"forceOverscroll"?: boolean;
/**
@@ -4791,7 +4791,7 @@ declare namespace LocalJSX {
*/
"color"?: Color;
/**
* If `true` and the content does not cause an overflow scroll, the scroll interaction will cause a bounce. If the content exceeds the bounds of ionContent, nothing will change. Note, the does not disable the system bounce on iOS. That is an OS level setting.
* If `true` and the content does not cause an overflow scroll, the scroll interaction will cause a bounce. If the content exceeds the bounds of ionContent, nothing will change. Note, this does not disable the system bounce on iOS. That is an OS level setting.
*/
"forceOverscroll"?: boolean;
/**

View File

@@ -30,7 +30,7 @@ export class Breadcrumbs implements ComponentInterface {
* Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
* For more information on colors, see [theming](/docs/theming/basics).
*/
@Prop() color?: Color;
@Prop({ reflect: true }) color?: Color;
/**
* The maximum number of breadcrumbs to show before collapsing.

View File

@@ -51,3 +51,18 @@ it('should exclude the separator from narrators', async () => {
expect(separator.getAttribute('aria-hidden')).toBe('true');
});
it('should have color attribute', async () => {
const page = await newSpecPage({
components: [Breadcrumb, Breadcrumbs],
html: `
<ion-breadcrumbs color="danger">
<ion-breadcrumb>First</ion-breadcrumb>
</ion-breadcrumbs>
`,
});
const breadcrumbs = page.body.querySelector('ion-breadcrumbs');
expect(breadcrumbs.hasAttribute('color')).toBe(true);
});

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 KiB

After

Width:  |  Height:  |  Size: 108 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 104 KiB

After

Width:  |  Height:  |  Size: 104 KiB

View File

@@ -75,7 +75,7 @@ export class Content implements ComponentInterface {
/**
* If `true` and the content does not cause an overflow scroll, the scroll interaction will cause a bounce.
* If the content exceeds the bounds of ionContent, nothing will change.
* Note, the does not disable the system bounce on iOS. That is an OS level setting.
* Note, this does not disable the system bounce on iOS. That is an OS level setting.
*/
@Prop({ mutable: true }) forceOverscroll?: boolean;

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 56 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

After

Width:  |  Height:  |  Size: 68 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 48 KiB

View File

@@ -23,4 +23,4 @@ $item-divider-md-border-bottom: 1px solid $item-md-border-color !default;
$item-divider-md-padding-start: $item-md-padding-start !default;
/// @prop - Padding end for the divider
$item-divider-md-padding-end: 0 !default;
$item-divider-md-padding-end: $item-md-padding-end !default;

View File

@@ -0,0 +1,39 @@
import { expect } from '@playwright/test';
import { test } from '@utils/test/playwright';
test.describe('item-divider: basic', () => {
test('should display an item divider with text', async ({ page }) => {
await page.setContent(`
<ion-item-divider>
<ion-label>Item Divider</ion-label>
</ion-item-divider>
`);
const divider = page.locator('ion-item-divider');
await expect(divider).toHaveScreenshot(`item-divider-text-${page.getSnapshotSettings()}.png`);
});
test('should display an item divider with a button in the end slot', async ({ page }) => {
await page.setContent(`
<ion-item-divider>
<ion-label>Item Divider</ion-label>
<ion-button slot="end">Button</ion-button>
</ion-item-divider>
`);
const divider = page.locator('ion-item-divider');
await expect(divider).toHaveScreenshot(`item-divider-button-end-${page.getSnapshotSettings()}.png`);
});
test('should display an item divider with an icon in the start slot', async ({ page }) => {
await page.setContent(`
<ion-item-divider>
<ion-icon slot="start" name="star"></ion-icon>
<ion-label>Item Divider</ion-label>
</ion-item-divider>
`);
const divider = page.locator('ion-item-divider');
await expect(divider).toHaveScreenshot(`item-divider-icon-start-${page.getSnapshotSettings()}.png`);
});
});

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

After

Width:  |  Height:  |  Size: 63 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 75 KiB

After

Width:  |  Height:  |  Size: 75 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 55 KiB

After

Width:  |  Height:  |  Size: 55 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 43 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

After

Width:  |  Height:  |  Size: 57 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 72 KiB

After

Width:  |  Height:  |  Size: 72 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 75 KiB

After

Width:  |  Height:  |  Size: 75 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

After

Width:  |  Height:  |  Size: 64 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 47 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

After

Width:  |  Height:  |  Size: 33 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 48 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

After

Width:  |  Height:  |  Size: 33 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 202 KiB

After

Width:  |  Height:  |  Size: 202 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 234 KiB

After

Width:  |  Height:  |  Size: 236 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 175 KiB

After

Width:  |  Height:  |  Size: 176 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 32 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 36 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

View File

@@ -37,7 +37,6 @@
.menu-inner {
@include position(0, auto, 0, 0);
@include transform(translateX(-9999px));
display: flex;
@@ -62,21 +61,13 @@
:host(.menu-side-start) .menu-inner {
--ion-safe-area-right: 0px;
@include multi-dir() {
/* stylelint-disable property-disallowed-list */
right: auto;
left: 0;
}
@include position(0, auto, 0, 0);
}
:host(.menu-side-end) .menu-inner {
--ion-safe-area-left: 0px;
@include multi-dir() {
right: 0;
left: auto;
/* stylelint-enable property-disallowed-list */
}
@include position(0, 0, 0, auto);
}
ion-backdrop {

View File

@@ -130,6 +130,11 @@ export class Menu implements ComponentInterface, MenuI {
@Watch('side')
protected sideChanged() {
this.isEndSide = isEnd(this.side);
/**
* Menu direction animation is calculated based on the document direction.
* If the document direction changes, we need to create a new animation.
*/
this.animation = undefined;
}
/**
@@ -413,10 +418,16 @@ export class Menu implements ComponentInterface, MenuI {
// Menu swipe animation takes the menu's inner width as parameter,
// If `offsetWidth` changes, we need to create a new animation.
const width = this.menuInnerEl!.offsetWidth;
if (width === this.width && this.animation !== undefined) {
/**
* Menu direction animation is calculated based on the document direction.
* If the document direction changes, we need to create a new animation.
*/
const isEndSide = isEnd(this.side);
if (width === this.width && this.animation !== undefined && isEndSide === this.isEndSide) {
return;
}
this.width = width;
this.isEndSide = isEndSide;
// Destroy existing animation
if (this.animation) {
@@ -703,7 +714,7 @@ export class Menu implements ComponentInterface, MenuI {
}
render() {
const { isEndSide, type, disabled, isPaneVisible, inheritedAttributes } = this;
const { type, disabled, isPaneVisible, inheritedAttributes, side } = this;
const mode = getIonMode(this);
return (
@@ -714,8 +725,7 @@ export class Menu implements ComponentInterface, MenuI {
[mode]: true,
[`menu-type-${type}`]: true,
'menu-enabled': !disabled,
'menu-side-end': isEndSide,
'menu-side-start': !isEndSide,
[`menu-side-${side}`]: true,
'menu-pane-visible': isPaneVisible,
}}
>

View File

@@ -74,6 +74,57 @@ test.describe('menu: basic', () => {
await expect(scrollTop).toBe(200);
});
test('should render on the correct side when side is changed dynamically', async ({ page, skip }) => {
test.info().annotations.push({
type: 'issue',
description: 'https://github.com/ionic-team/ionic-framework/issues/25601',
});
skip.mode('ios', 'Dynamic side changes are not mode dependent');
const ionDidOpen = await page.spyOnEvent('ionDidOpen');
const ionDidClose = await page.spyOnEvent('ionDidClose');
await page.locator('[menu-id="start-menu"]').evaluate(async (el: HTMLIonMenuElement) => {
el.side = 'end';
});
await page.click('#open-start');
await ionDidOpen.next();
await expect(page).toHaveScreenshot(`menu-basic-side-toggled-${page.getSnapshotSettings()}.png`);
await page.locator('[menu-id="start-menu"]').evaluate(async (el: HTMLIonMenuElement) => {
await el.close();
});
await ionDidClose.next();
});
test('should render on the correct side when document direction is changed dynamically', async ({ page, skip }) => {
test.info().annotations.push({
type: 'issue',
description: 'https://github.com/ionic-team/ionic-framework/issues/25601',
});
skip.rtl('Document direction is not dependent on initial load');
skip.mode('ios', 'Dynamic side changes are not mode dependent');
const ionDidOpen = await page.spyOnEvent('ionDidOpen');
const ionDidClose = await page.spyOnEvent('ionDidClose');
await page.evaluate(() => {
document.dir = 'rtl';
});
await page.click('#open-start');
await ionDidOpen.next();
await expect(page).toHaveScreenshot(`menu-basic-doc-dir-toggled-${page.getSnapshotSettings()}.png`);
await page.locator('[menu-id="start-menu"]').evaluate(async (el: HTMLIonMenuElement) => {
await el.close();
});
await ionDidClose.next();
});
});
async function testMenu(page: E2EPage, menu: Locator, menuId: string) {

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -410,9 +410,15 @@ export class PickerColumnInternal implements ComponentInterface {
['picker-column-numeric-input']: numericInput,
})}
>
<div class="picker-item picker-item-empty">&nbsp;</div>
<div class="picker-item picker-item-empty">&nbsp;</div>
<div class="picker-item picker-item-empty">&nbsp;</div>
<div class="picker-item picker-item-empty" aria-hidden="true">
&nbsp;
</div>
<div class="picker-item picker-item-empty" aria-hidden="true">
&nbsp;
</div>
<div class="picker-item picker-item-empty" aria-hidden="true">
&nbsp;
</div>
{items.map((item, index) => {
{
/*
@@ -442,9 +448,15 @@ export class PickerColumnInternal implements ComponentInterface {
</button>
);
})}
<div class="picker-item picker-item-empty">&nbsp;</div>
<div class="picker-item picker-item-empty">&nbsp;</div>
<div class="picker-item picker-item-empty">&nbsp;</div>
<div class="picker-item picker-item-empty" aria-hidden="true">
&nbsp;
</div>
<div class="picker-item picker-item-empty" aria-hidden="true">
&nbsp;
</div>
<div class="picker-item picker-item-empty" aria-hidden="true">
&nbsp;
</div>
</Host>
);
}

View File

@@ -9,7 +9,8 @@ test.describe('popover: size', async () => {
* and massively cut down on screenshots taken. The content has its own
* backdrop so you can still see the popovers.
*/
test('should calculate popover width based on sizing method', async ({ page }) => {
// TODO FW-3598
test.skip('should calculate popover width based on sizing method', async ({ page }) => {
await page.goto('/src/components/popover/test/size');
await page.setViewportSize(Viewports.tablet.portrait); // avoid popovers overlapping

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.4 KiB

After

Width:  |  Height:  |  Size: 8.4 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 9.3 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.9 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

Some files were not shown because too many files have changed in this diff Show More