mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2026-03-13 10:22:08 +08:00
strength-indicator
13503 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
243cf92600 | add poc | ||
|
|
1ca9aa5246 |
test(toast): reset config to avoid unnecessary setTimeouts (#29004)
Issue number: Internal --------- <!-- 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. --> Team members are running into unexpected errors running spec tests: ``` TypeError: Cannot read properties of undefined (reading '$instanceValues$') ``` This line is the culprit: |
||
|
|
e833ad4649 |
docs(overlays): clarify how to remove an overlay (#28989)
In https://github.com/ionic-team/ionic-framework/issues/28981 there was some confusion surrounding how to remove an overlay from the DOM if it was never presented. The `dismiss` method will remove the overlay from the DOM, but only if the overlay is visible. Otherwise, it's a no-op. This PR updates the `dismiss` method docs for each overlay component to note that developers can use the browser's remove method to remove the element from the DOM. |
||
|
|
f885a5526a |
chore(deps): Bump @stencil/core from 4.12.0 to 4.12.1 in /core (#28980)
Bumps [@stencil/core](https://github.com/ionic-team/stencil) from 4.12.0 to 4.12.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/ionic-team/stencil/releases"><code>@stencil/core</code>'s releases</a>.</em></p> <blockquote> <h2>🏸 v4.12.1 (2024-02-05)</h2> <h3>Bug Fixes</h3> <ul> <li><strong>mock-doc:</strong> improve error message when <code>:scope</code> selector is used (<a href="https://redirect.github.com/ionic-team/stencil/issues/5318">#5318</a>) (<a href=" |
||
|
|
0a8964d30c |
fix(popover): render arrow above backdrop (#28986)
Issue number: resolves #28985 --------- <!-- 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. --> <!-- Please describe the current behavior that you are modifying. --> When a popover is being rendered in iOS mode, the arrow renders under the backdrop.  <!-- Please describe the behavior or changes that are being added by this PR. --> - The arrow renders at the same level as the content.  - [ ] Yes - [x] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer for more information. --> <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> Credit [Sahil-B07](https://github.com/Sahil-B07) for providing the [fix](https://github.com/ionic-team/ionic-framework/pull/28430). A new PR had to be created in order to update snapshots. --------- Co-authored-by: Sahil Bhor <92709590+Sahil-B07@users.noreply.github.com> Co-authored-by: ionitron <hi@ionicframework.com> |
||
|
|
b03dac0870 |
merge release-7.7.1
Release 7.7.1 |
||
|
|
a0afeeb50e | chore(): update package lock files | ||
|
|
66fcb70151 | v7.7.1 v7.7.1 | ||
|
|
7449fb4fed |
fix(action-sheet): iOS dismiss animation respects safe area (#28915)
Issue number: resolves #28541
---------
<!-- 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. -->
On iOS when dismissing the `ion-action-sheet`, the animation does not
account for the safe area of the device. This results in the action
sheet not completely animating off the visible viewport on a device with
safe area enabled.
## What is the new behavior?
<!-- Please describe the behavior or changes that are being added by
this PR. -->
- The `ion-action-sheet` will animate consistently off the viewport when
dismissing, including the safe area.
To better support custom animations not needing to account for the safe
area, the safe area has been added to the padding of the action sheet
container. This results in the height increasing based on the bottom
safe area and animating correctly when translating between [`100%` and
`0%`](
|
||
|
|
5777ce2581 |
fix(react): route with redirect will mount page (#28961)
Issue number: resolves #28838 --------- <!-- 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. --> In #28316 we resolved a longstanding misconfiguration where event listeners being added to the page were not removed. This was due to incorrect usage of `.bind` creating a new instance of the callback functions. By removing the event listener for `ionViewDidLeave`, before the component has actually unmounted in react, resulted in the registered destroy callback to not fire: |
||
|
|
35ab6b4816 |
fix(select): popover can be scrolled (#28965)
Issue number: resolves #28963 --------- <!-- 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. --> In https://github.com/ionic-team/ionic-framework/pull/28861 I fixed an issue that caused the wrong content inside of a popover to be scrollable. This CSS should have been applied, but it broke back when popover was converted to the Shadow DOM. Fixing this issue revealed a misconfiguration with the select-popover that caused the select-popover to no longer be scrollable. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Content inside of `ion-select-popover` can now be scrolled Note that I am considering this a bug fix instead of a regression. While scrolling used to work in select-popover, it only worked by chance. The `.popover-viewport` styles should have always applied to the select-popover, thus requiring the use of `overflow-y: auto` in select-popover. ## Does this introduce a breaking change? - [ ] Yes - [x] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer for more information. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> Dev build: `7.7.1-dev.11706893059.1bef4b38` |
||
|
|
51c729eafc |
refactor(angular, react, vue): add missing test app msg (#28951)
Issue number: N/A --------- <!-- 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. --> The packages, Angular, React, and Vue, will accept any `app_dir` parameter when passing it to the build script. This can lead to a user to entering a directory that doesn't exist within `test/apps`. If this happens, then the build folder will include an incomplete test app. For example: 1. `./build ng13` 2. This creates a `build/ng13` folder, but the folder only contains the contents from the `base` folder. This causes it to be incomplete. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Provides a message that the provided app directory doesn't exist. - Does not create the incomplete app when an invalid app directory is given. ## Does this introduce a breaking change? - [ ] Yes - [x] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 4. Update the BREAKING.md file with the breaking change. 5. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer for more information. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> N/A |
||
|
|
7f3273f0b2 |
docs(angular test app): include instructions for updating nightly build (#28948)
Issue number: None --------- <!-- 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. --> People adding a new Angular test app don't know they need to update the Stencil nightly build. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Documentation exists for adding a new Angular version to the Stencil nightly build when creating a new Angular test app.. ## Does this introduce a breaking change? - [ ] Yes - [x] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer for more information. --> ## Other information This is related to #28945 <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> --------- Co-authored-by: Maria Hutt <thetaPC@users.noreply.github.com> |
||
|
|
e62ec509a3 |
chore(ci): remove ng12-15 apps, add ng16-17 for stencil nightlies (#28945)
Issue number: Internal --------- <!-- 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. --> The Stencil nightlies are still attempting to run old Angular test apps and does not test ng16/17 ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Removed ng12-15 test apps - Added ng16-17 test apps I opted to remove ng14-15 because we are in the process of dropping support for it in Ionic 8. ## Does this introduce a breaking change? - [ ] Yes - [x] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer for more information. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> |
||
|
|
2150188d27 |
chore(deps-dev): Bump @stencil/angular-output-target from 0.8.3 to 0.8.4 in /core (#28896)
Bumps [@stencil/angular-output-target](https://github.com/ionic-team/stencil-ds-output-targets) from 0.8.3 to 0.8.4. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/ionic-team/stencil-ds-output-targets/releases"><code>@stencil/angular-output-target</code>'s releases</a>.</em></p> <blockquote> <h2><code>@stencil/angular-output-target</code><a href="https://github.com/0"><code>@0</code></a>.8.4</h2> <h2>What's Changed</h2> <ul> <li>fix(angular): generate event type with inline types by <a href="https://github.com/sean-perkins"><code>@sean-perkins</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-ds-output-targets/pull/412">ionic-team/stencil-ds-output-targets#412</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/ionic-team/stencil-ds-output-targets/compare/@stencil/angular-output-target@0.8.2...@stencil/angular-output-target@0.8.4">https://github.com/ionic-team/stencil-ds-output-targets/compare/<code>@stencil/angular-output-target</code><code>@0.8.2...</code><code>@stencil/angular-output-target</code><code>@0.8.4</code></a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/ionic-team/stencil-ds-output-targets/commits/@stencil/angular-output-target@0.8.4">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
59543af4e9 |
merge release-7.7.0
Release 7.7.0 |
||
|
|
7bb08f9ce4 | chore(): update package lock files | ||
|
|
e672805406 | v7.7.0 v7.7.0 | ||
|
|
950fa40c55 |
fix(overlays): tear down animations after dismiss (#28907)
Issue number: resolves #28352 --------- <!-- 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. --> Not all animations are getting properly destroyed after they run. This means that styles can get stuck at the end value of their animation. Specifically for this reproduction (as reported in the bug ticket), if the modal animates from 1 to 0 opacity and then the modal gets reopened with a different animation where the opacity should be 1 throughout (i.e. the opacity isn't supposed to animate at all), the modal is invisible because the opacity got stuck at 0 and never got reset to the default value of 1. This bug is probably causing some incorrect behavior on other edge cases with overlays, but this is the only one I've identified. ### Reproduction steps Note: you cannot reproduce this when using a modalController 1. Open a modal, e.g. [this one](http://localhost:3333/src/components/modal/test/card-nav?ionic:mode=ios) in `ios` mode on a screen wider than 768px 1. Close the modal 1. Open the same modal on a screen narrower than 768px 1. See that the modal does not appear ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Animations are properly destroyed after the animation completes - The modal now appears as expected after following the reproduction steps above ## Does this introduce a breaking change? - [ ] Yes - [x] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer for more information. --> <!-- ## Other information Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> --------- Co-authored-by: Liam DeBeasi <liamdebeasi@users.noreply.github.com> |
||
|
|
551065fd9e | chore: sync with main | ||
|
|
d5dc901bb9 |
chore(deps-dev): Bump @capacitor/haptics from 5.0.6 to 5.0.7 in /core (#28932)
Bumps [@capacitor/haptics](https://github.com/ionic-team/capacitor-plugins) from 5.0.6 to 5.0.7. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/ionic-team/capacitor-plugins/releases"><code>@capacitor/haptics</code>'s releases</a>.</em></p> <blockquote> <h2><code>@capacitor/haptics</code><a href="https://github.com/5"><code>@5</code></a>.0.7</h2> <h2><a href="https://github.com/ionic-team/capacitor-plugins/compare/@capacitor/haptics@5.0.6...@capacitor/haptics@5.0.7">5.0.7</a> (2024-01-29)</h2> <p><strong>Note:</strong> Version bump only for package <code>@capacitor/haptics</code></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
775841a397 | chore: sync with main | ||
|
|
c998f022ff |
merge release-7.6.7
Release 7.6.7 |
||
|
|
fae7b24d2a | chore(): update package lock files | ||
|
|
1de5ff9302 | v7.6.7 v7.6.7 | ||
|
|
eedafc394b |
chore: sync with main
chore: sync with main |
||
|
|
7825eab925 |
chore(deps-dev): Bump @capacitor/status-bar from 5.0.6 to 5.0.7 in /core (#28931)
Bumps [@capacitor/status-bar](https://github.com/ionic-team/capacitor-plugins) from 5.0.6 to 5.0.7. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/ionic-team/capacitor-plugins/releases"><code>@capacitor/status-bar</code>'s releases</a>.</em></p> <blockquote> <h2><code>@capacitor/status-bar</code><a href="https://github.com/5"><code>@5</code></a>.0.7</h2> <h2><a href="https://github.com/ionic-team/capacitor-plugins/compare/@capacitor/status-bar@5.0.6...@capacitor/status-bar@5.0.7">5.0.7</a> (2024-01-29)</h2> <p><strong>Note:</strong> Version bump only for package <code>@capacitor/status-bar</code></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
219e630ed5 | chore: sync with main | ||
|
|
bf34e0e247 |
test: migrate form control usages to modern syntax (#28897)
Issue number: Internal --------- <!-- 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. --> Several tests were still using the legacy form syntax. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Migrated tests in `core`, `angular`, and `vue` to use the modern form syntax (`react` did not have form controls). I opted not to migrate `item/test/highlight` and `item/test/counter` because those tests are going to be removed in the future once the deprecate item APIs are removed. ## Does this introduce a breaking change? - [ ] Yes - [x] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer for more information. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> --------- Co-authored-by: ionitron <hi@ionicframework.com> Co-authored-by: Maria Hutt <thetaPC@users.noreply.github.com> |
||
|
|
f6fc22bba6 |
fix(action-sheet, alert, toast): button roles autocomplete with available options (#27940)
Issue number: resolves #27965 --------- https://www.youtube.com/watch?v=a_m7jxrTlaw&list=PLIvujZeVDLMx040-j1W4WFs1BxuTGdI_b&index=3 <!-- 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. --> There is a lack of autocomplete support for AlertButton attribute of `role` (there may be similar situations for other components too, however, I was working on this component and found it). ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Support for autocomplete for the two types defined `cancel` and `destructive`, and also supports any arbitrary string if passed in. ## 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. --> I suggest there to be some global interface similar to the following: ``` interface LooseAutocomplete<T extends string> = T | Omit<string, T>; ``` I referenced this great [video](https://youtu.be/a_m7jxrTlaw) from Matt @mattpocock --------- Co-authored-by: Liam DeBeasi <liamdebeasi@users.noreply.github.com> |
||
|
|
e021eadb81 |
chore(deps-dev): Bump @capacitor/keyboard from 5.0.7 to 5.0.8 in /core (#28913)
Bumps [@capacitor/keyboard](https://github.com/ionic-team/capacitor-plugins) from 5.0.7 to 5.0.8. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/ionic-team/capacitor-plugins/releases"><code>@capacitor/keyboard</code>'s releases</a>.</em></p> <blockquote> <h2><code>@capacitor/keyboard</code><a href="https://github.com/5"><code>@5</code></a>.0.8</h2> <h2><a href="https://github.com/ionic-team/capacitor-plugins/compare/@capacitor/keyboard@5.0.7...@capacitor/keyboard@5.0.8">5.0.8</a> (2024-01-29)</h2> <p><strong>Note:</strong> Version bump only for package <code>@capacitor/keyboard</code></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
a1e7694490 |
chore(deps): Bump @stencil/core from 4.11.0 to 4.12.0 in /core (#28914)
Bumps [@stencil/core](https://github.com/ionic-team/stencil) from 4.11.0 to 4.12.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/ionic-team/stencil/releases"><code>@stencil/core</code>'s releases</a>.</em></p> <blockquote> <h2>🌅 4.12.0 (2024-01-29)</h2> <h3>Bug Fixes</h3> <ul> <li><strong>hmr:</strong> allow changes to component decorators when using HMR (<a href="https://redirect.github.com/ionic-team/stencil/issues/5290">#5290</a>) (<a href=" |
||
|
|
07b987d034 |
chore(deps-dev): Bump @stencil/sass from 3.0.8 to 3.0.9 in /core (#28912)
Bumps [@stencil/sass](https://github.com/ionic-team/stencil-sass) from 3.0.8 to 3.0.9. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/ionic-team/stencil-sass/releases"><code>@stencil/sass</code>'s releases</a>.</em></p> <blockquote> <h2>v3.0.9</h2> <h2>What's Changed</h2> <h3>Bug Fixes</h3> <ul> <li>fix(plugin): normalize dependency path by <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/459">ionic-team/stencil-sass#459</a></li> </ul> <h3>Dependency Updates</h3> <ul> <li>chore(deps): update dependency np to v9.2.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/451">ionic-team/stencil-sass#451</a></li> <li>chore(deps): update actions/setup-node action to v4.0.1 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/454">ionic-team/stencil-sass#454</a></li> <li>chore(deps): update dependency <code>@stencil/core</code> to v4.9.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/455">ionic-team/stencil-sass#455</a></li> <li>chore(deps): update dependency prettier to v3.1.1 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/452">ionic-team/stencil-sass#452</a></li> <li>chore(deps): update dependency <code>@stencil/core</code> to v4.9.1 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/456">ionic-team/stencil-sass#456</a></li> <li>chore(deps): update dependency npm to v10.3.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/457">ionic-team/stencil-sass#457</a></li> <li>chore(deps): update dependency prettier to v3.2.1 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/458">ionic-team/stencil-sass#458</a></li> <li>chore(deps): update node.js to v20.11.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/443">ionic-team/stencil-sass#443</a></li> <li>chore(deps): update dependency rollup to v4.9.5 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/442">ionic-team/stencil-sass#442</a></li> <li>chore(deps): update dependency prettier to v3.2.2 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/460">ionic-team/stencil-sass#460</a></li> <li>chore(deps): update dependency <code>@stencil/core</code> to v4.10.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/462">ionic-team/stencil-sass#462</a></li> <li>chore(deps): update dependency terser to v5.27.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/464">ionic-team/stencil-sass#464</a></li> <li>chore(deps): update dependency prettier to v3.2.4 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/463">ionic-team/stencil-sass#463</a></li> <li>chore(build): improve build process by <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/461">ionic-team/stencil-sass#461</a></li> <li>chore(deps): update dependency rollup to v4.9.6 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/465">ionic-team/stencil-sass#465</a></li> <li>chore(deps): update dependency <code>@stencil/core</code> to v4.11.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/466">ionic-team/stencil-sass#466</a></li> <li>chore(deps): update dependency npm to v10.4.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/468">ionic-team/stencil-sass#468</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a> made their first contribution in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/459">ionic-team/stencil-sass#459</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/ionic-team/stencil-sass/compare/v3.0.8...v3.0.9">https://github.com/ionic-team/stencil-sass/compare/v3.0.8...v3.0.9</a></p> <h2>v3.0.9-0</h2> <h2>What's Changed</h2> <ul> <li>chore(deps): update dependency np to v9.2.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/451">ionic-team/stencil-sass#451</a></li> <li>chore(deps): update actions/setup-node action to v4.0.1 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/454">ionic-team/stencil-sass#454</a></li> <li>chore(deps): update dependency <code>@stencil/core</code> to v4.9.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/455">ionic-team/stencil-sass#455</a></li> <li>chore(deps): update dependency prettier to v3.1.1 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/452">ionic-team/stencil-sass#452</a></li> <li>chore(deps): update dependency <code>@stencil/core</code> to v4.9.1 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/456">ionic-team/stencil-sass#456</a></li> <li>chore(deps): update dependency npm to v10.3.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/457">ionic-team/stencil-sass#457</a></li> <li>chore(deps): update dependency prettier to v3.2.1 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/458">ionic-team/stencil-sass#458</a></li> <li>chore(deps): update node.js to v20.11.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/443">ionic-team/stencil-sass#443</a></li> <li>chore(deps): update dependency rollup to v4.9.5 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/442">ionic-team/stencil-sass#442</a></li> <li>chore(deps): update dependency prettier to v3.2.2 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/460">ionic-team/stencil-sass#460</a></li> <li>chore(deps): update dependency <code>@stencil/core</code> to v4.10.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/462">ionic-team/stencil-sass#462</a></li> <li>fix(plugin): normalize dependency path by <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/459">ionic-team/stencil-sass#459</a></li> <li>chore(deps): update dependency terser to v5.27.0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/464">ionic-team/stencil-sass#464</a></li> <li>chore(deps): update dependency prettier to v3.2.4 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/463">ionic-team/stencil-sass#463</a></li> <li>chore(build): improve build process by <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a> in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/461">ionic-team/stencil-sass#461</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a> made their first contribution in <a href="https://redirect.github.com/ionic-team/stencil-sass/pull/459">ionic-team/stencil-sass#459</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
58639c7a1e |
chore(deps): Bump @stencil/core from 4.10.0 to 4.11.0 in /core (#28866)
Bumps [@stencil/core](https://github.com/ionic-team/stencil) from 4.10.0 to 4.11.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/ionic-team/stencil/releases"><code>@stencil/core</code>'s releases</a>.</em></p> <blockquote> <h2>🍝 4.11.0 (2024-01-22)</h2> <h3>Bug Fixes</h3> <ul> <li><strong>runtime:</strong> resolve memory leak caused by global content ref (<a href="https://redirect.github.com/ionic-team/stencil/issues/5266">#5266</a>) (<a href=" |
||
|
|
b1c4c72474 |
refactor(react, react-router): build works on windows (#28904)
Issue number: Internal --------- <!-- 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. --> React and React Router packages do not build correctly on Windows because certain dependencies were not marked as external. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - 3rd party packages are correctly marked as external ## Does this introduce a breaking change? - [ ] Yes - [x] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer for more information. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> |
||
|
|
9448783bb1 |
fix(item): only default slot content wraps (#28773)
Issue number: resolves #28769 --------- <!-- 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. --> As part of https://github.com/ionic-team/ionic-framework/pull/28146, we allowed text wrapping inside of `ion-item` for accessibility purposes. One of the behaviors we added was to allow start, default, and end slotted containers to wrap to the next line to align with the iOS spec. However, this decision was based on an incorrect assumption. The following screenshot shows the Settings app on iOS: | default scale | 310% scale | | - | - | | <img width="1170" alt="Frame 4" src="https://github.com/ionic-team/ionic-framework/assets/2721089/462ef153-a060-41c8-9a00-f0aad17839be"> | <img width="1170" alt="Frame 5" src="https://github.com/ionic-team/ionic-framework/assets/2721089/f047f880-7b80-4710-939b-96da075fbbf9"> | At the default scale, the blue icon is in the iOS equivalent of the "start" slot, "Bluetooth" is in the default slot, and "On" is in the "end" slot. We incorrectly assumed the same markup was true when scaling the text up. However, at 310% scale the icon, "Bluetooth" text, and "On" text all become part of the default slot in a single container that wraps. You can tell because the bottom border runs underneath the blue icon at 310% whereas it does not at the default scale. This allows the text to wrap underneath the blue icon. When we originally implemented #28146 we thought that this meant the start, default, and end slot containers should wrap to the next line. I further validated this behavior by creating an app with Swift UI. I created a list of items where each item has the native equivalent of a checkbox in the `start` slot and multiple `ion-labels` in the default slot of the item: | Default Scale | 310% Scale | | - | - | |  |  | The content within each label wraps within the container, but the containers themselves never wrap to the next line. Demo code: ```swift import SwiftUI struct ContentView: View { struct Item: Identifiable, Hashable { let id = UUID() } private var items = [ Item(), Item(), Item(), Item(), Item() ] @State private var multiSelection = Set<UUID>() var body: some View { NavigationView { List(items, selection: $multiSelection) {_ in HStack { Text("Column 1 with really long text") Text("Column 2 with really long text") Text("Column 3 with really long text") Text("Column 4 with really long text") } } .toolbar { EditButton() } } Text("\(multiSelection.count) selections") } } #Preview { ContentView() } ``` ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - This PR removes the ability for the start, default, and end slot containers to wrap to the next line. This behavior aligns with pre-v7.6.0 behaviors. The containers inside of the default slot will not wrap to the next line. However, content within each container (such as text within an `ion-label`) will continue to wrap to meet the team's accessibility requirements. ## Does this introduce a breaking change? - [ ] Yes - [x] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer for more information. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> Dev build: `7.6.5-dev.11704916749.1e64a3a7` --------- Co-authored-by: ionitron <hi@ionicframework.com> |
||
|
|
720a3cea99 |
test(react): re-enable picker tests (#28885)
Issue number: N/A --------- <!-- 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. --> The `IonPicker` tests in the React app were skipped due to a Stencil bug that has since been resolved. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> Tests re-enabled. ## Does this introduce a breaking change? - [ ] Yes - [x] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer for more information. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> |
||
|
|
b81d85a401 |
chore(deps-dev): Bump @axe-core/playwright from 4.8.3 to 4.8.4 in /core (#28887)
Bumps [@axe-core/playwright](https://github.com/dequelabs/axe-core-npm) from 4.8.3 to 4.8.4. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/dequelabs/axe-core-npm/releases"><code>@axe-core/playwright</code>'s releases</a>.</em></p> <blockquote> <h2>Release 4.8.4</h2> <h2>What's Changed</h2> <ul> <li>chore: RC v4.8.3 by <a href="https://github.com/github-actions"><code>@github-actions</code></a> in <a href="https://redirect.github.com/dequelabs/axe-core-npm/pull/983">dequelabs/axe-core-npm#983</a></li> <li>chore: bump puppeteer from 19.7.3 to 21.7.0 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/dequelabs/axe-core-npm/pull/979">dequelabs/axe-core-npm#979</a></li> <li>Release v4.8.3 by <a href="https://github.com/dequejenn"><code>@dequejenn</code></a> in <a href="https://redirect.github.com/dequelabs/axe-core-npm/pull/986">dequelabs/axe-core-npm#986</a></li> <li>chore: bump the npm-low-risk group with 11 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/dequelabs/axe-core-npm/pull/982">dequelabs/axe-core-npm#982</a></li> <li>chore: bump follow-redirects from 1.15.2 to 1.15.5 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/dequelabs/axe-core-npm/pull/988">dequelabs/axe-core-npm#988</a></li> <li>chore: merge master into develop by <a href="https://github.com/github-actions"><code>@github-actions</code></a> in <a href="https://redirect.github.com/dequelabs/axe-core-npm/pull/987">dequelabs/axe-core-npm#987</a></li> <li>ci: add env var required for creating gh releases by <a href="https://github.com/michael-siek"><code>@michael-siek</code></a> in <a href="https://redirect.github.com/dequelabs/axe-core-npm/pull/989">dequelabs/axe-core-npm#989</a></li> <li>ci: remove deprecated release candidate action by <a href="https://github.com/michael-siek"><code>@michael-siek</code></a> in <a href="https://redirect.github.com/dequelabs/axe-core-npm/pull/990">dequelabs/axe-core-npm#990</a></li> <li>fix(webdriverjs): use new headless argument to fix selenium-webdriver@4.17.0 breaking release by <a href="https://github.com/straker"><code>@straker</code></a> in <a href="https://redirect.github.com/dequelabs/axe-core-npm/pull/992">dequelabs/axe-core-npm#992</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/dequelabs/axe-core-npm/compare/v4.8.3...4.8.4">https://github.com/dequelabs/axe-core-npm/compare/v4.8.3...4.8.4</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/dequelabs/axe-core-npm/blob/develop/CHANGELOG.md"><code>@axe-core/playwright</code>'s changelog</a>.</em></p> <blockquote> <h1>Change Log</h1> <p>All notable changes to this project will be documented in this file. See <a href="https://conventionalcommits.org">Conventional Commits</a> for commit guidelines.</p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
aecbc92e30 |
refactor(ga-screenshots): option to test single component (#27841)
Issue number: N/A --------- <!-- 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. --> All the E2E tests are run when performing the "Update Reference Screenshots" GitHub actions.  ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - All E2E tests still run as default. - The GH action has the option to run a specific component instead of all tests. - A specified component has the option to run all tests that include the component's name in the file path - A specified component has the option to run all tests that are in the component's folder - If a single component is selected, then the default is to only run tests inside it's folder.  ## 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. --> How to test: 1. Create a new branch based off this one 2. Make a style change 3. Push it to the new branch 4. Update the reference images using the new branch 5. This will show you all the options Recommended to test: - a component with the ion prefix (`ion-button`) - a component without the prefix (`button`) - a component that doesn't exist (`random-component`) - no provided component, leave the first input blank - the checkbox --------- Co-authored-by: Liam DeBeasi <liamdebeasi@users.noreply.github.com> |
||
|
|
bf7922c8b3 |
fix(item): ensure button focus state on property change (#28892)
Issue number: resolves #28525 --------- <!-- 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. --> When navigated via tab-key, the ion-item is not highlighted correctly after switching from button=false to button=true. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> Now, when dynamically changing the the `button` option to `True`, there's a `@watch` callback that will make sure the internal `isFocusable` `@state` will be updated. - A new unit test was added to item/test. As there was still any unit test for the `ion-item`, a new files was created - `item.spec.tsx` ## Does this introduce a breaking change? - [ ] Yes - [x] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer for more information. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> New behavior in runtime:  --------- Co-authored-by: Sean Perkins <sean@ionic.io> |
||
|
|
2a3c26e44d |
test(many): replace waitForSelector with waitFor (#28888)
Issue number: N/A --------- <!-- 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. --> There are some tests that use Playwright's `waitForSelector` [function](https://playwright.dev/docs/api/class-page#page-wait-for-selector). However, Playwright has informed the community to not use this function by labeling it as [discouraged](https://playwright.dev/docs/api/class-page#page-wait-for-selector). ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Replaced `waitForSelector` with the [recommended](https://playwright.dev/docs/api/class-page#page-wait-for-selector) `waitFor` [function](https://playwright.dev/docs/api/class-locator#locator-wait-for). ## Does this introduce a breaking change? - [ ] Yes - [x] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer for more information. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> N/A |
||
|
|
ddd8b92235 |
chore: remove old link scripts (#28886)
This script was used to aid in the test of local version of `@ionic/angular`. However, these instructions have been replaced by the instructions in `packages/angular/test/README.md`. This PR removes the old script. |
||
|
|
9a092c03cc |
chore: assign team members instead of members from team (#28880)
The token I was using didn't have the correct permissions, and I need to figure out how to generate a new token (I don't think I have access to the account where these tokens live). For now, I'm going to hard code the team members until I can figure out the token access out. |
||
|
|
a3ebca0f26 |
chore(ci): auto assign issues (#28873)
To make it easy for the team to quickly triage issues, we'd like to automatically assign issues to team members at random. This PR use https://github.com/marketplace/actions/auto-assign-issue to assign 1 member of the `framework` GitHub team to be the person to triage. |
||
|
|
e10f49c43d |
fix(accordion): prevent opening of readonly accordion using keyboard (#28865)
Issue number: resolves #28344 --------- <!-- 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. --> When an Accordion is inside an Accordion Group, and the Accordion Group is enabled and not readonly but the Accordion is disabled and/or readonly, it is possible to navigate to the accordion and open it using the keyboard. This should not be allowed, just like opening it on click is not allowed. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - A disabled Accordion inside an Accordion Group may not be opened via the keyboard. - A readonly Accordion inside an Accordion Group may not be opened via the keyboard. ## Does this introduce a breaking change? - [ ] Yes - [x] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer for more information. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> |
||
|
|
e41a1a127b |
merge release-7.6.6
Release 7.6.6 |
||
|
|
67bee73513 | chore(): update package lock files | ||
|
|
0c4e1fcdb4 | v7.6.6 v7.6.6 | ||
|
|
9603a4de36 |
fix(menu): improve reliability of main content not being scrollable when menu opens (#28829)
Issue number: resolves #28399 --------- <!-- 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. --> As part of https://github.com/ionic-team/ionic-framework/pull/26976 I fixed an issue where `pointer-events: none` was not applied until after the menu open gesture finishes. This resolved a bug where scrolling was latching after the menu gesture starts. However, I did not account for the edge case where scrolling latches _before_ `pointer-events: none` is applied in the DOM. Since scrolling has already latched then `pointer-events: none` does not change the scrolling behavior. This can happen if a user swipes up and to the right from the left edge of the screen. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - `overflow-y: hidden` is now applied to the scrollable content which will interrupt any scrolling when the menu is open. ## Does this introduce a breaking change? - [ ] Yes - [x] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer for more information. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> Testing: This bug fixes a timing issue where scrolling latches on the main content as the menu tries to open. As a result, I am unable to write reliable automated tests for this. Reviewers should perform the following test on iOS and Android physical devices: 1. Open `src/components/menu/test/basic`. 2. Add enough elements to the main page content such that it scrolls (I added a list with items). 3. On each device, attempt to scroll the main content while also opening the menu on the starting edge of the screen. Scrolling on the main content should not happen if the menu opens. Dev build: `7.6.5-dev.11705341148.1a550d3b` |
||
|
|
10c38d0354 |
fix(popover): content inside of popover scrolls correctly (#28861)
Issue number: resolves #28455 --------- <!-- 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. --> The main `ion-content` inside of a popover is not scrollable. Instead, the `.popover-viewport` container is scrolled because certain styles no longer applied once we moved popover to the Shadow DOM. This bug impacted the linked issue because it meant that the infinite scroll inside of the content never fires (since the content never scrolls). ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - The `.popover-viewport` rule now targets slotted content with the`.popover-viewport` class. This class is added to the root node that is slotted. This enables us to target the user's content in the light dom. ## Does this introduce a breaking change? - [ ] Yes - [x] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer for more information. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> Dev build: `7.6.6-dev.11705696534.177666f8` --------- Co-authored-by: ionitron <hi@ionicframework.com> |