mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2026-03-13 10:22:08 +08:00
4efdc88a29285368048ec26f42ec5c7ece4b293b
13603 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
4efdc88a29 |
chore(deps): update dependency @stencil/core to v4.15.0 (#29332)
[](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@stencil/core](https://stenciljs.com/) ([source](https://togithub.com/ionic-team/stencil)) | [`4.14.1` -> `4.15.0`](https://renovatebot.com/diffs/npm/@stencil%2fcore/4.14.1/4.15.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>ionic-team/stencil (@​stencil/core)</summary> ### [`v4.15.0`](https://togithub.com/ionic-team/stencil/blob/HEAD/CHANGELOG.md#-4150-2024-04-08) [Compare Source](https://togithub.com/ionic-team/stencil/compare/v4.14.1...v4.15.0) ##### Features - **compiler:** perform automatic key insertion in more situations ([#​5594](https://togithub.com/ionic-team/stencil/issues/5594)) ([8ee071b]( |
||
|
|
7b90025d31 |
chore(deps): update pozil/auto-assign-issue action to v1.14.0 (#29293)
[](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [pozil/auto-assign-issue](https://togithub.com/pozil/auto-assign-issue) | action | minor | `v1.13.0` -> `v1.14.0` | --- ### Release Notes <details> <summary>pozil/auto-assign-issue (pozil/auto-assign-issue)</summary> ### [`v1.14.0`](https://togithub.com/pozil/auto-assign-issue/releases/tag/v1.14.0): - Random assignments with weights [Compare Source](https://togithub.com/pozil/auto-assign-issue/compare/v1.13.0...v1.14.0) - feat: support for weights in random assignments (addresses [#​120](https://togithub.com/pozil/auto-assign-issue/issues/120)) - build: bumped dependencies </details> --- ### Configuration 📅 **Schedule**: Branch creation - "every weekday before 11am" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Never, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/ionic-team/ionic-framework). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> |
||
|
|
176bb43262 |
chore(ci): ignore images when uploading to vercel (#29310)
As part of the Vercel flow for creating public previews of the test files, we'd like to exclude screenshots from being downloaded as they are not required to create the previews. |
||
|
|
c9916ff4b5 |
chore(deps): update dependency @stencil/core to v4.14.1 (#29301)
[](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@stencil/core](https://stenciljs.com/) ([source](https://togithub.com/ionic-team/stencil)) | [`4.14.0` -> `4.14.1`](https://renovatebot.com/diffs/npm/@stencil%2fcore/4.14.0/4.14.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>ionic-team/stencil (@​stencil/core)</summary> ### [`v4.14.1`](https://togithub.com/ionic-team/stencil/blob/HEAD/CHANGELOG.md#-4141-2024-04-04) [Compare Source](https://togithub.com/ionic-team/stencil/compare/v4.14.0...v4.14.1) ##### Bug Fixes - **compiler:** don't mistake aliased paths for collections imports ([#​5620](https://togithub.com/ionic-team/stencil/issues/5620)) ([af22bb8]( |
||
|
|
9738228bc0 |
fix(modal): improve sheet modal scrolling and gesture behavior (#29312)
Issue number: resolves #24583 --------- <!-- 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. --> See https://github.com/ionic-team/ionic-framework/issues/24583#issuecomment-2033478601 ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - See https://github.com/ionic-team/ionic-framework/pull/29260 and https://github.com/ionic-team/ionic-framework/pull/29259. This PR is a combination of previously reviewed fixes. ## 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/docs/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.8.3-dev.11712695191.1d7ec370` |
||
|
|
1388014b65 | merge release-7.8.4 (#29314) | ||
|
|
1073d22b56 | chore(): update package lock files | ||
|
|
cea0b493fc | v7.8.4 v7.8.4 | ||
|
|
3d9871a77f |
chore: update codeowners (#29305)
Discussed with Sean and most of these codeowner directories should be reviewable by anyone on the team, so we don't want to block on a specific person. The exceptions are the gesture/input-shim directories due to the lack of documentation at the moment. |
||
|
|
b315b0cb29 |
chore(docs): consolidate the developer resource files into a docs/ directory (#29266)
Start your review here 👉 [docs/README.md](https://github.com/ionic-team/ionic-framework/blob/FW-6107/docs/README.md) ## What is the current behavior? Documentation files with information on how to contribute, component implementations, testing, etc. are scattered throughout various folders in this repository. ## What is the new behavior? Consolidates the documentation files into a root `docs/` directory for easier discovery and organization. `/docs` tree: ``` ├── _config.yml ├── component-guide.md ├── CONTRIBUTING.md ├── README.md ├── sass-guidelines.md ├── angular │ ├── README.md │ └── testing.md ├── core │ ├── README.md │ └── testing │ ├── README.md │ ├── api.md │ ├── best-practices.md │ ├── preview-changes.md │ └── usage-instructions.md ├── react │ ├── README.md │ └── testing.md ├── react-router │ ├── README.md │ └── testing.md ├── vue │ ├── README.md │ └── testing.md └── vue-router ├── README.md └── testing.md ``` **Migrates the following:** | Previous Location | New Location | | ----------------------------------------------------------- | ----------------------------------------- | | `.github/COMPONENT-GUIDE.md` | `docs/component-guide.md` | | `.github/CONTRIBUTING.md` | `docs/CONTRIBUTING.md` | | `core/scripts/README.md` | `docs/core/testing/preview-changes.md` | | `core/src/utils/test/playwright/docs/api.md` | `docs/core/testing/api.md` | | `core/src/utils/test/playwright/docs/best-practices.md` | `docs/core/testing/best-practices.md` | | `core/src/utils/test/playwright/docs/README.md` | `docs/core/testing/README.md` | | `core/src/utils/test/playwright/docs/usage-instructions.md` | `docs/core/testing/usage-instructions.md` | | `packages/angular/test/README.md` | `docs/angular/testing.md` | | `packages/react-router/test/README.md` | `docs/react-router/testing.md` | | `packages/react/test/README.md` | `docs/react/testing.md` | | `packages/react/test/base/README.md` | `docs/react/testing.md` | | `packages/vue/test/README.md` | `docs/vue/testing.md` | **Adds the following:** | File | Description | | ----------------------------- | ----------------------------------------------------------------------- | | `docs/sass-guidelines.md` | Sass Variable guidelines taken from `ionic-framework-design-documents` | | `docs/README.md` | Entry file that should link to all other files | | `docs/_config.yml` | Config file for use with GitHub pages | | `docs/core/README.md` | Description of core, links to contributing and testing | | `docs/angular/README.md` | Description of angular, links to contributing and testing | | `docs/react/README.md` | Description of react, links to contributing and testing | | `docs/react-router/README.md` | Description of react-router, links to contributing and testing | | `docs/vue/README.md` | Description of vue, links to contributing and testing | | `docs/vue-router/README.md` | Description of vue-router, links to contributing and testing | | `docs/vue-router/testing.md` | Testing file for vue-router, populated from vue-router's main README | **Does not** add any files for `angular-server`. This is because the README is essentially empty and there is no testing in that directory. I can add blank files if we want to have something to add to later. **Does not** migrate the content of the packages' root `README.md` files. These files are used for their npm package descriptions so we should not edit them. ## Hosting Documentation We can (and should) host these files using GitHub Pages. I have duplicated them in a personal repository to see how this would look: [docs-consolidation](https://brandyscarney.github.io/docs-consolidation/). Doing so will require some formatting fixes (see [Sass Guidelines](https://brandyscarney.github.io/docs-consolidation/sass-guidelines.html#-reusable-values)) so I did not publish them now but we can easily enable GitHub pages by toggling a setting in this repository. ## Other information - Verify that no documentation files were missed in the migration - You can use these commands to search for `*.md` files in a directory: - `find core/src -type f -name "*.md" -print` - `find packages/angular -type f -name "*.md" -not -path "**/node_modules/*" -print` - I did add some redirect links in some of the existing markdown files so they might still exist for that reason - We should probably break up the contributing + component guide documentation into smaller files, such as including best practices, but I wanted to get everything in the same place first - The contributing has sections on each of the packages that we could move to that package's docs folder: https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#core --------- Co-authored-by: Maria Hutt <thetaPC@users.noreply.github.com> |
||
|
|
7b6c330f17 |
chore(deps): update dependency @stencil/core to v4.14.0 (#29278)
[](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@stencil/core](https://stenciljs.com/) ([source](https://togithub.com/ionic-team/stencil)) | [`4.13.0` -> `4.14.0`](https://renovatebot.com/diffs/npm/@stencil%2fcore/4.13.0/4.14.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>ionic-team/stencil (@​stencil/core)</summary> ### [`v4.14.0`](https://togithub.com/ionic-team/stencil/blob/HEAD/CHANGELOG.md#-4140-2024-04-01) [Compare Source](https://togithub.com/ionic-team/stencil/compare/v4.13.0...v4.14.0) ##### Bug Fixes - **mock-doc:** provide a local name ([#​5480](https://togithub.com/ionic-team/stencil/issues/5480)) ([2f67b35]( |
||
|
|
b3cd49bf22 |
perf(styles): compress distributed global stylesheets (#29275)
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. --> Ionic Framework developers make extensive use of multi-line comments in the Sass files. However these comments are not stripped from the generated output. This leads to a significant increase to the file size of CSS and can have an impact on runtime performance. For example: https://cdn.jsdelivr.net/npm/@ionic/core/css/core.css has 183 lines of comment blocks before a single line of CSS. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Compresses the generated output from Sass → CSS to strip out multi-line comment blocks. - Developers can use [loud comments](https://sass-lang.com/documentation/syntax/comments/) if they want to include comments in the generated output. - In the case of just the core.css file, the file size goes from 20kb to 10kb. - The entire CSS global styles goes from 758 KB to 606kb. ## 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.8.4-dev.11712251308.1da8aede` |
||
|
|
6c36cef241 |
docs(contributing): using vscode on windows (#29257)
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. --> Developers on a Windows environment using VS Code will experience an issue when using prettier, where files will be tracked as modified even though they have no actual diffs. This is due to differences in how Unix based operating systems and Windows treat carriage returns. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Updates the contributing guide to educate developers using VS Code on how to configure their local environment to not track additional diffs when formatting the codebase. ## 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. --> This is the same documentation that exists on the ionic-docs repository for the same reason. I've applied co-authored-by credit to Netkow for his wonderful contribution to that documentation. Co-authored-by: Matt Netkow <matt.netkow@gmail.com> |
||
|
|
b5cb828861 | merge release-7.8.3 (#29264) | ||
|
|
101ad5402f | chore(): update package lock files | ||
|
|
de35fa8b94 | v7.8.3 v7.8.3 | ||
|
|
c766528a17 |
chore: run build (#29262)
I forgot to run the core build in
|
||
|
|
9b3cf9fbc2 |
chore(docs): move docs to the packages directory (#29256)
Move the `docs/` directory into the `packages/` directory. This will enable us to create a top level `docs/` folder for onboarding and contributing guidelines. It will also be necessary when migrating to pnpm. --------- Co-authored-by: Liam DeBeasi <liamdebeasi@users.noreply.github.com> |
||
|
|
ee5da7a747 |
fix(button): activated outline button in toolbar no longer blends into background on MD dark mode (#29216)
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. --> When using an outline-style button in a toolbar on `md` dark mode, the activated style causes the button to become invisible. Steps to repro in `main`: 1. Update the `css-variables` themes test to use the latest dark theme styles (at least for v7) by replacing the contents of [this file](https://github.com/ionic-team/ionic-framework/blob/main/core/src/themes/test/css-variables/css/dark.css) with the [styles from the docs](https://ionicframework.com/docs/theming/dark-mode#ionic-dark-theme). 2. Host the project locally and navigate to the test at `themes/test/css-variables/index.html`. 3. Switch to dark mode within the page. Note that the activated outline button isn't visible:  ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Button styles corrected. The colors were correct for `ios` mode, but had to be flipped for `md`, so I pulled the relevant styles into the mode-specific stylesheets. - CSS variables test has also been updated to use the same dark mode CSS as in [the docs](https://ionicframework.com/docs/theming/dark-mode#ionic-dark-theme), as per the repro steps above. Let me know if you would rather this be split into a separate PR. Changes to the toolbar test were split into a separate PR to keep this one clean and ensure the screenshot changes can be reviewed more effectively: https://github.com/ionic-team/ionic-framework/pull/29231 ## 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. 5. Update the BREAKING.md file with the breaking change. 6. 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> |
||
|
|
c4bfc783e0 |
chore: remove Amanda from codeowners (#29252)
Removes myself as a codeowner in favor of the round robin assignment. |
||
|
|
0137e732ce |
chore: remove myself from code owners (#29251)
I'm removing myself from code owners in several places in favor of the auto-assignment. However, I did keep my name on areas of the code that I felt are still higher risk for potential regressions due to the nature of how the code is built/tested. |
||
|
|
88ecb29e39 |
chore: remove self from codeowners (#29250)
Remove myself as the codeowner of specific directories as this bypasses the random review assignment and automatically assigns me to any PRs changing these files. |
||
|
|
f726c35868 |
chore(deps): update dependency @stencil/vue-output-target to v0.8.8 (#29243)
[](https://renovatebot.com)
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@stencil/vue-output-target](https://stenciljs.com/)
([source](https://togithub.com/ionic-team/stencil-ds-output-targets)) |
[`0.8.7` ->
`0.8.8`](https://renovatebot.com/diffs/npm/@stencil%2fvue-output-target/0.8.7/0.8.8)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
---
### Release Notes
<details>
<summary>ionic-team/stencil-ds-output-targets
(@​stencil/vue-output-target)</summary>
###
[`v0.8.8`](https://togithub.com/ionic-team/stencil-ds-output-targets/releases/tag/%40stencil/vue-output-target%400.8.8)
[Compare
Source](
|
||
|
|
4a9d84ecbd | chore: remove mapsandapps from issue auto assignment (#29248) | ||
|
|
f08759c2b8 |
fix(popover): viewport can be scrolled if no content present (#29215)
Issue number: resolves #29211 --------- <!-- 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 a bug that caused `.popover-viewport` to have `overflow: hidden`. In reality, this code should have always applied but due to an incorrect selector it never did. As it turns out in https://github.com/ionic-team/ionic-framework/issues/29211, some developers were relying on the broken behavior to build their applications. In particular, developers were using `ion-popover` without an `ion-content`. The linked change made it so that using popovers without `ion-content` were not scrollable. After talking with @mapsandapps we think it makes sense to officially support this behavior. We support using [modals without `ion-content`](https://ionicframework.com/docs/api/modal#custom-dialogs), and we could not think of a reason to not support the same use case for popover. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - If the `.popover-viewport` element has a child content then `.popover-viewport `will not be scrollable. - If the `.popover-viewport` element does not have a child content then `.popover-viewport` will be scrollable. I implemented this behavior using progressive enhancement via `:has`. The [`:has` pseudo-class](https://caniuse.com/?search=%3Ahas) has cross-browser support. Ionic v7 supports some versions of browsers that do not have `:has` support. As a result, we fall back to the existing behavior in this environment. Developers are able to get this behavior on older browsers by explicitly setting `overflow: auto` on `.popover-viewport`. Fortunately, we will be dropping support for several of the older browsers versions in Ionic v8, so the need to do the manual opt-in should be less frequent as time goes on. ## 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.8.2-dev.11711383079.118d48a5` Testing: 1. Open https://codepen.io/liamdebeasi/pen/JjVJrZQ?editors=1100 (this has a dev build installed) 2. Click each button to open a popover. 3. Verify that each popover can be scrolled. I could not find a great way to automate this test, but let me know if anyone has ideas! |
||
|
|
2053bc77a6 |
test(toolbar): add dark theme to basic test (#29231)
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 toolbar `basic` test only checks light theme. Dark theme coverage is required to test against the bug fixed in https://github.com/ionic-team/ionic-framework/pull/29216. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> Dark theme coverage added. This required converting the test to `page.setContent` instead of `page.goto`, so I went ahead and split the captured toolbars into multiple tests, including some cleanup of the test content. Since this included changes across many different tests, even ones not strictly related to the bug, this work has been split into a separate PR. ## 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> |
||
|
|
c23be1befd | merge release-7.8.2 | ||
|
|
a2923aaeb3 | chore(): update package lock files | ||
|
|
eeab96de55 | v7.8.2 v7.8.2 | ||
|
|
ca0923812a |
chore(deps): update dependency @capacitor/core to v5.7.4 (#29209)
[](https://renovatebot.com)
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@capacitor/core](https://capacitorjs.com)
([source](https://togithub.com/ionic-team/capacitor)) | [`5.7.3` ->
`5.7.4`](https://renovatebot.com/diffs/npm/@capacitor%2fcore/5.7.3/5.7.4)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
---
### Release Notes
<details>
<summary>ionic-team/capacitor (@​capacitor/core)</summary>
###
[`v5.7.4`](https://togithub.com/ionic-team/capacitor/releases/tag/5.7.4)
[Compare
Source](https://togithub.com/ionic-team/capacitor/compare/5.7.3...5.7.4)
##### Bug Fixes
- **http:** change proxy url generation
([30a32f4](
|
||
|
|
1be956bd18 |
chore(deps): update dependency @stencil/core to v4.13.0 (#29203)
[](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@stencil/core](https://stenciljs.com/) ([source](https://togithub.com/ionic-team/stencil)) | [`4.12.6` -> `4.13.0`](https://renovatebot.com/diffs/npm/@stencil%2fcore/4.12.6/4.13.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>ionic-team/stencil (@​stencil/core)</summary> ### [`v4.13.0`](https://togithub.com/ionic-team/stencil/blob/HEAD/CHANGELOG.md#-4130-2024-03-18) [Compare Source](https://togithub.com/ionic-team/stencil/compare/v4.12.6...v4.13.0) ##### Bug Fixes - **compiler:** allow to set custom root directory ([#​5446](https://togithub.com/ionic-team/stencil/issues/5446)) ([b6b9617]( |
||
|
|
8ad66c03d7 |
fix(searchbar): autocapitalize is initialized correctly (#29197)
Issue number: resolves #29193
---------
<!-- 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 an attempt to preserve backwards compatibility when adding
`autocapitalize` to Searchbar, we used `!` to indicate that the prop was
never undefined. The `autocapitalize` on `HTMLElement` expects this
value to be a string and never undefined.
For the purposes of the property on Searchbar, setting this prop to one
of the accepted values would constitute a breaking change because it
would override the default browser behavior (which we previously relied
upon). As a result, we used `!` to not set a default prop but inform
TypeScript that this prop is always defined. This unintentionally made
it so developers needed to define the `autocapitalize` property every
time which is not what we want.
## What is the new behavior?
<!-- Please describe the behavior or changes that are being added by
this PR. -->
- `autocapitalize` now defaults to the `'default'` keyword. This is an
internal keyword that is used to tell Ionic to **not** set the
`autocapitalize` attribute on the inner `input` element and instead rely
on the default browser behavior. This satisfies the `HTMLElement`
requirement that `autocapitalize` is never undefined. In Ionic 8 this
`'default'` value will be replaced with `'off'`.
[Typescript currently sets the `HTMLElement` `autocapitalize` type to
`string`](
|
||
|
|
d1253c08c1 | merge release-7.8.1 (#29188) | ||
|
|
7ca6b80b04 | chore(): update package lock files | ||
|
|
4cd8fb15af | v7.8.1 v7.8.1 | ||
|
|
58d217d0cf |
fix(react): avoid definitely typed errors with @types/react@18 (#29182)
Issue number: resolves #29178 --------- <!-- 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. --> [DefinitelyTyped removed the `onPointerEnterCaptured` and `onPointerLeaveCaptured` types for `@types/react`](https://github.com/DefinitelyTyped/DefinitelyTyped/discussions/69006). This caused issues when multiple versions of `@types/react` are installed where an older version inlined these types, but they did not exist in newer versions. For Ionic React, we build with React 16 which did inline the types. In an Ionic React starter app we build with React 18 which does not want these types. As a result, there is a type mismatch. Note that this type change is being [reverted in React 16-17](https://github.com/DefinitelyTyped/DefinitelyTyped/discussions/69006#discussioncomment-8826095) so presumably this issue will go away in its own for those versions. However, developers are building with React 18 too, so this issue will persist for those developers. However, React 17 should still have this problem (at least until the change is reverted), yet the build here passes. The main difference is that the `onPointer{Enter,Leave}Captured` event is no longer inlined. After talking with the Stencil team this is the current understanding of why the issue no longer reproduces. **Building with React 17** ```ts import type { JSX as LocalJSX } from '@ionic/core/components'; import React from 'react'; import type { IonicReactProps } from './IonicReactProps'; export declare const IonRouterOutlet: React.ForwardRefExoticComponent<Pick<LocalJSX.IonRouterOutlet & { basePath?: string | undefined; ref?: React.Ref<any> | undefined; ionPage?: boolean | undefined; } & IonicReactProps & Omit<React.HTMLAttributes<HTMLIonRouterOutletElement>, "style" | "placeholder">, "children" | "slot" | "title" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | keyof IonicReactProps | keyof LocalJSX.IonRouterOutlet | "basePath" | "ionPage"> & React.RefAttributes<HTMLIonRouterOutletElement>>; ``` **Building with React 18** ```ts export declare const IonRouterOutlet: React.ForwardRefExoticComponent<Omit<LocalJSX.IonRouterOutlet & { basePath?: string | undefined; ref?: React.Ref<any> | undefined; ionPage?: boolean | undefined; } & IonicReactProps & Omit<React.HTMLAttributes<HTMLIonRouterOutletElement>, "style" | "placeholder">, "ref"> & React.RefAttributes<HTMLIonRouterOutletElement>>; ``` ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Updated types in our React test apps and verified that the [issue reproduces there without this fix](https://github.com/ionic-team/ionic-framework/actions/runs/8345186602). - Updated Ionic React and Ionic React Router to build with React 17. ## Does this introduce a breaking change? - [ ] Yes - [x] No Ionic v7 expects React 17 or newer, so building with React 17 instead of React 16 is not a breaking change. <!-- 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.8.1-dev.11710859149.114e57ae` Verified with sample repro |
||
|
|
73d661a3a2 |
chore(github-actions): use flexible options to update screenshots (#29044)
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. -->
GitHub actions allow screenshots to be updated either by updating all
the components or providing a component name.
If a component name is given, then the screenshots will only be updated
on `src/components/{component-name}`. This isn't ideal when wanting to
update a specific path.
## What is the new behavior?
<!-- Please describe the behavior or changes that are being added by
this PR. -->
- The script no longer strips out `ion-`. The developer needs to submit
a valid component name or valid path.
- The script no longer appends the value to `src/components/`
- The script will run all instances of a component if only the name is
given
- The script will run tests within a given path
## 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. -->
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 name (`chip`)
- a path (`src/components/chip/test/a11y`)
- a component that doesn't exist (`random-component`)
- no provided component, leave the first input blank
|
||
|
|
fc5d692a05 |
chore(deps): update dependency @capacitor/core to v5.7.3 (#29176)
[](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@capacitor/core](https://capacitorjs.com) ([source](https://togithub.com/ionic-team/capacitor)) | [`5.7.2` -> `5.7.3`](https://renovatebot.com/diffs/npm/@capacitor%2fcore/5.7.2/5.7.3) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>ionic-team/capacitor (@​capacitor/core)</summary> ### [`v5.7.3`](https://togithub.com/ionic-team/capacitor/releases/tag/5.7.3) [Compare Source](https://togithub.com/ionic-team/capacitor/compare/5.7.2...5.7.3) ##### Bug Fixes - **cli:** apkName for multi-dimensional flavors ([#​7347](https://togithub.com/ionic-team/capacitor/issues/7347)) ([771d678]( |
||
|
|
e50d32a388 |
chore(deps): update dependency @stencil/core to v4.12.6 (#29165)
[](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@stencil/core](https://stenciljs.com/) ([source](https://togithub.com/ionic-team/stencil)) | [`4.12.5` -> `4.12.6`](https://renovatebot.com/diffs/npm/@stencil%2fcore/4.12.5/4.12.6) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>ionic-team/stencil (@​stencil/core)</summary> ### [`v4.12.6`](https://togithub.com/ionic-team/stencil/blob/HEAD/CHANGELOG.md#-4126-2024-03-11) [Compare Source](https://togithub.com/ionic-team/stencil/compare/v4.12.5...v4.12.6) ##### Bug Fixes - **cli:** move version logging earlier in CLI to allow `-v`, `--version` ([#​5425](https://togithub.com/ionic-team/stencil/issues/5425)) ([194b0fc]( |
||
|
|
55464ddf84 |
docs(test): fix link for configuring docker for headed tests (#29173)
Creates a link to the correct section of the docs. The old verbiage existed when the configuring step was in the section below. |
||
|
|
e98620ee99 |
test(ci): run tests in docker container (#28893)
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 team currently faces two challenges: 1. Verifying visual changes locally is difficult because we cannot use the existing ground truths as they were generated in Linux environments and most of our team uses either macOS or Windows. While team members can generate ground truths in the correct environment, they need to remember to do that first before making changes. 2. Updating visual diffs is time consuming and can only be done by team members. Our GitHub Action runs the entire test suite which can take ~10 even if only a handful of screenshots are generated. Additionally, this job can only be run by team members meaning community contributors cannot update/add screenshots. This limits them to non-visual tasks when contributing. In the event that they do want to make visual changes, the team needs to copy all their code into a branch and manually run screenshot diffs for them. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - This PR introduces the ability to run all Playwright tests inside of a Docker container using an image with Playwright dependencies. The container will have access to the local project, so developers can make changes and then run tests in the container after the changes are compiled. This enables anyone to propose new screenshot changes. However, the "update screenshot" job will still be available for folks who do not want/are unable to use docker. - There are some typeface differences between GH Actions and the Docker image which is why there are a handful of screenshots that needed to be updated. One risk here is that the Playwright npm and Docker image versions must be kept in sync. As a result, I also updatRenovate to allow us to auto update the npm and Docker image versions at the same time. ## 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. 3. Update the BREAKING.md file with the breaking change. 4. 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. --> ⚠️ There are still some issues I need to sort out with mounting the local project on Windows. However, using Ubuntu with the linux subsystem for windows can be used as a workaround. I'd like to merge this so we can start testing it in our day-to-day workflow and ironing out any bugs. --------- Co-authored-by: ionitron <hi@ionicframework.com> |
||
|
|
02f89bbc42 |
docs(contributing): update component guide with order for states (#29111)
Updates the component guide to use the proper order for the `focused`, `hover`, and `activated` states. Reorders the sections based on the recommended order and adds emphasis and blockquotes to call out the order. I have created ticket [FW-6039](https://outsystemsrd.atlassian.net/browse/FW-6039) for investigating components that don't follow the recommended order here. --------- Co-authored-by: Sean Perkins <13732623+sean-perkins@users.noreply.github.com> |
||
|
|
f75977699d |
perf(datetime): calendar body shows immediately in modal on ios (#29163)
Issue number: resolves #24542 --------- <!-- 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. --> WebKit has a quirk where IntersectionObserver callbacks are delayed until after an accelerated animation finishes if the "root" specified in the config is the browser viewport (the default behavior if "root" is not specified) This means that when presenting a datetime in a modal on iOS the calendar body appears blank until the modal animation finishes. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - We can work around this issue by observing an element inside of the datetime component and using the datetime component itself as the root. To do this, I added an `.intersection-tracker` element inside of datetime. This element has a dimension of 0x0 so it should not affect component layout or functionality. I opted to add this element instead of re-using an existing element because the existing elements are not guaranteed to always be in the DOM due to different datetime presentation styles. | `main` | branch | | - | - | | <video src="https://github.com/ionic-team/ionic-framework/assets/2721089/e84d111d-b156-4f45-887a-d68a1097e5dd"></video> | <video src="https://github.com/ionic-team/ionic-framework/assets/2721089/3dccf1e5-cf79-46ab-b542-0537fd46fa76"></video> | ## 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.8.1-dev.11710449785.14ebd5a0` --------- Co-authored-by: Amanda Johnston <90629384+amandaejohnston@users.noreply.github.com> |
||
|
|
fdfecd32c3 |
fix(header): iOS headers in MD app are not hidden (#29164)
Issue number: resolves #28867 --------- <!-- 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. --> I missed an edge case in https://github.com/ionic-team/ionic-framework/pull/28277 that caused an MD headers in an MD app to be hidden due to the presence of an iOS header (via `mode="ios"`). This was happening because I forgot to scope the selector in `header.ios.scss` to only iOS headers. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - The headers in the relevant selector are now scoped to the iOS headers which avoids this bug while preserving the anti-flicker mechanism added in the linked PR. ## 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.8.1-dev.11710452743.1ca99e5e` --------- Co-authored-by: ionitron <hi@ionicframework.com> |
||
|
|
d67fdcc43a |
test(item): use themes options in config (#29168)
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. --> In https://github.com/ionic-team/ionic-framework/pull/27134 we fixed a bug for item button colors on dark mode. We added a test for this in dark mode, but it was created before we had the infrastructure to test dark mode within Playwright. As a result, the dark mode theme is hard coded into the test. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - This test has been simplified to only test the things we need to test - It also relies on the built-in dark theme testing instead of hard coding the theme. ## 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> |
||
|
|
9ed692ce4f |
chore(deps): update dependency @playwright/test to v1.42.1 (#29162)
[](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@playwright/test](https://playwright.dev) ([source](https://togithub.com/microsoft/playwright)) | [`1.42.0` -> `1.42.1`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.42.0/1.42.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>microsoft/playwright (@​playwright/test)</summary> ### [`v1.42.1`](https://togithub.com/microsoft/playwright/releases/tag/v1.42.1) [Compare Source](https://togithub.com/microsoft/playwright/compare/v1.42.0...v1.42.1) ##### Highlights [https://github.com/microsoft/playwright/issues/29732](https://togithub.com/microsoft/playwright/issues/29732) - \[Regression]: HEAD requests to webServer.url since v1.42.0[https://github.com/microsoft/playwright/issues/29746](https://togithub.com/microsoft/playwright/issues/29746)6 - \[Regression]: Playwright CT CLI scripts fail due to broken initializePlugin impor[https://github.com/microsoft/playwright/issues/29739](https://togithub.com/microsoft/playwright/issues/29739)39 - \[Bug]: Component tests fails when imported a module with a dot in a na[https://github.com/microsoft/playwright/issues/29731](https://togithub.com/microsoft/playwright/issues/29731)731 - \[Regression]: 1.42.0 breaks some import stateme[https://github.com/microsoft/playwright/issues/29760](https://togithub.com/microsoft/playwright/issues/29760)9760 - \[Bug]: Possible regression with chained locators in v1.42 ##### Browser Versions - Chromium 123.0.6312.4 - Mozilla Firefox 123.0 - WebKit 17.4 This version was also tested against the following stable channels: - Google Chrome 122 - Microsoft Edge 123 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "every weekday before 11am" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Never, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/ionic-team/ionic-framework). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yMzguMSIsInVwZGF0ZWRJblZlciI6IjM3LjIzOC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> |
||
|
|
5a42841d52 |
docs(toggle): remove extra backtick to fix formatting (#29160)
Removes the extra backtick in the `alignment` property description that is causing formatting issues in the [Toggle documentation](https://ionicframework.com/docs/api/toggle#properties): <img width="754" alt="Screenshot 2024-03-13 at 4 45 58 PM" src="https://github.com/ionic-team/ionic-framework/assets/6577830/d1430baf-c316-41b8-ba9c-c1b196c99d41"> |
||
|
|
19c1bc16cb |
fix(datetime): wheel picker shows consistently in overlays (#29147)
Issue number: resolves #26234 --------- <!-- 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. --> We use an IntersectionObserver to know when each picker column is visible so we can properly scroll the active option in each column into view. The IO callback passes an array of entries. Up until this PR, we have always grabbed the first entry in the array. The problem is that browsers will sometimes group multiple events into a single array. This means it's possible to have an event with `isIntersecting: false` and then another event with `isIntersecting: true` in the same callback. Since we always grabbed the first event we did not account for the instances where events were coalesced. This resulted in column options sometimes not scrolling into view when presented via an overlay. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Picker column now grabs the last event in the entries array. This represents the most recent threshold change. ## 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.5-dev.11710347256.1954cae9` |
||
|
|
459a023bac |
chore(deps): update dependency @playwright/test to v1.42.0 (#29110)
[](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@playwright/test](https://playwright.dev) ([source](https://togithub.com/microsoft/playwright)) | [`1.41.2` -> `1.42.0`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.41.2/1.42.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>microsoft/playwright (@​playwright/test)</summary> ### [`v1.42.0`](https://togithub.com/microsoft/playwright/releases/tag/v1.42.0) [Compare Source](https://togithub.com/microsoft/playwright/compare/v1.41.2...v1.42.0) #### New APIs - **Test tags** [New tag syntax](https://playwright.dev/docs/test-annotations#tag-tests) for adding tags to the tests (@​-tokens in the test title are still supported). ```js test('test customer login', { tag: ['@​fast', '@​login'] }, async ({ page }) => { // ... }); ``` Use `--grep` command line option to run only tests with certain tags. ```sh npx playwright test --grep @​fast ``` - **Annotating skipped tests** [New annotation syntax](https://playwright.dev/docs/test-annotations#annotate-tests) for test annotations allows annotating the tests that do not run. ```js test('test full report', { annotation: [ { type: 'issue', description: 'https://github.com/microsoft/playwright/issues/23180' }, { type: 'docs', description: 'https://playwright.dev/docs/test-annotations#tag-tests' }, ], }, async ({ page }) => { // ... }); ``` - **page.addLocatorHandler()** New method [page.addLocatorHandler()](https://playwright.dev/docs/api/class-page#page-add-locator-handler) registers a callback that will be invoked when specified element becomes visible and may block Playwright actions. The callback can get rid of the overlay. Here is an example that closes a cookie dialog when it appears. ```js // Setup the handler. await page.addLocatorHandler( page.getByRole('heading', { name: 'Hej! You are in control of your cookies.' }), async () => { await page.getByRole('button', { name: 'Accept all' }).click(); }); // Write the test as usual. await page.goto('https://www.ikea.com/'); await page.getByRole('link', { name: 'Collection of blue and white' }).click(); await expect(page.getByRole('heading', { name: 'Light and easy' })).toBeVisible(); ``` - **Project wildcard filter** Playwright command line [flag](https://playwright.dev/docs/test-cli#reference) now supports '\*' wildcard when filtering by project. ```sh npx playwright test --project='*mobile*' ``` - **Other APIs** - expect(callback).toPass({ timeout }) The timeout can now be configured by `expect.toPass.timeout` option [globally](https://playwright.dev/docs/api/class-testconfig#test-config-expect) or in [project config](https://playwright.dev/docs/api/class-testproject#test-project-expect) - electronApplication.on('console') [electronApplication.on('console')](https://playwright.dev/docs/api/class-electronapplication#electron-application-event-console) event is emitted when Electron main process calls console API methods. ```js electronApp.on('console', async msg => { const values = []; for (const arg of msg.args()) values.push(await arg.jsonValue()); console.log(...values); }); await electronApp.evaluate(() => console.log('hello', 5, { foo: 'bar' })); ``` - [page.pdf()](https://playwright.dev/docs/api/class-page#page-pdf) accepts two new options [`tagged`](https://playwright.dev/docs/api/class-page#page-pdf-option-tagged) and [`outline`](https://playwright.dev/docs/api/class-page#page-pdf-option-outline). #### Breaking changes Mixing the test instances in the same suite is no longer supported. Allowing it was an oversight as it makes reasoning about the semantics unnecessarily hard. ```js const test = baseTest.extend({ item: async ({}, use) => {} }); baseTest.describe('Admin user', () => { test('1', async ({ page, item }) => {}); test('2', async ({ page, item }) => {}); }); ``` #### Announcements - ⚠️ Ubuntu 18 is not supported anymore. #### Browser Versions - Chromium 123.0.6312.4 - Mozilla Firefox 123.0 - WebKit 17.4 This version was also tested against the following stable channels: - Google Chrome 122 - Microsoft Edge 123 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "every weekday before 11am" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Never, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/ionic-team/ionic-framework). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yMjAuMiIsInVwZGF0ZWRJblZlciI6IjM3LjIyMC4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: ionitron <hi@ionicframework.com> Co-authored-by: Maria Hutt <maria@ionic.io> |
||
|
|
0a66ebe321 | merge release-7.8.0 |