mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2026-03-13 10:22:08 +08:00
1091534397df30cf0f1292d33b2a92cabdeb80eb
13560 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
1091534397 | chore: sync with main | ||
|
|
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: |
||
|
|
ed7f30b672 |
chore: merge iOS 17 design improvements
chore: merge iOS 17 design improvements |
||
|
|
47915c3164 | chore: sync with feature-8.0 | ||
|
|
9856295915 |
refactor(toast): remove cssClass from ToastButton (#28977)
BREAKING CHANGE: The `cssClass` property has been removed from `ToastButton` |
||
|
|
7fd7e1d9b8 | refactor(core-styles): use sass variables in global styles (#28979) | ||
|
|
9b25c4f456 |
refactor(dynamic-font): remove --ion-default-dynamic-font (#28966)
Co-authored-by: Brandy Carney <brandyscarney@users.noreply.github.com> |
||
|
|
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` |
||
|
|
b43b9ecfe0 |
refactor(refresher-content): remove the aria-label (#28968)
Co-authored-by: Liam DeBeasi <liamdebeasi@users.noreply.github.com> |
||
|
|
f4d341cec2 | refactor(position): remove host-context usage from mixin (#28972) | ||
|
|
b2481bfd7f |
chore: sync with feature-8.0
chore: sync with feature-8.0 |
||
|
|
37aed8e577 | chore(): add updated snapshots | ||
|
|
7c8afdf1c6 | chore: sync with feature-8.0 | ||
|
|
2816b87ba6 |
refactor(input): remove accept property (#28946)
BREAKING CHANGE: The `accept` property has been removed from `ion-input`. |
||
|
|
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=" |
||
|
|
a393d2a86c |
feat(input): remove size property in favor of CSS styling (#28903)
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 `ion-input` component currently specifies a `size` attribute to align with the HTML `input` implementation. However, Ionic's custom appearance for MD and iOS is not compatible and should not be used with the `size` attribute: https://github.com/ionic-team/ionic-framework/issues/27945#issuecomment-1669702274. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - The `size` property has been removed from `ion-input`. ## Does this introduce a breaking change? - [x] Yes - [ ] 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. --> The `size` attribute has been removed from `ion-input`. As it was not compatible before, this is likely to have a minimal impact to developers. If your application is using the `size` attribute, replace the usage with CSS styling to control the width of the `ion-input`. ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> |
||
|
|
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 |
||
|
|
18ce6e0aeb |
chore: sync with main
chore: sync with main |