Compare commits

..

3 Commits

Author SHA1 Message Date
ionitron
d350a1719f v7.0.13 2023-06-14 14:19:53 +00:00
dependabot[bot]
b571881d6e chore(deps-dev): Bump @axe-core/playwright from 4.7.2 to 4.7.3 in /core (#27637)
Bumps [@axe-core/playwright](https://github.com/dequelabs/axe-core-npm)
from 4.7.2 to 4.7.3.
<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.7.3</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>webdriverjs:</strong> skip unloaded iframes (<a
href="https://redirect.github.com/dequelabs/axe-core-npm/issues/743">#743</a>)
(<a
href="9cb50ebb6b">9cb50eb</a>)</li>
</ul>
</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="9cb50ebb6b"><code>9cb50eb</code></a>
fix(webdriverjs): skip unloaded iframes (<a
href="https://redirect.github.com/dequelabs/axe-core-npm/issues/743">#743</a>)</li>
<li><a
href="48e222e87d"><code>48e222e</code></a>
Merge pull request <a
href="https://redirect.github.com/dequelabs/axe-core-npm/issues/740">#740</a>
from dequelabs/master</li>
<li><a
href="4a5591347a"><code>4a55913</code></a>
docs: update docs to use named import and create example.js (<a
href="https://redirect.github.com/dequelabs/axe-core-npm/issues/741">#741</a>)</li>
<li><a
href="c0b063144d"><code>c0b0631</code></a>
Merge pull request <a
href="https://redirect.github.com/dequelabs/axe-core-npm/issues/736">#736</a>
from dequelabs/release-1685630602</li>
<li><a
href="281ca6955d"><code>281ca69</code></a>
chore: release v4.7.2</li>
<li>See full diff in <a
href="https://github.com/dequelabs/axe-core-npm/compare/v4.7.2...v4.7.3">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@axe-core/playwright&package-manager=npm_and_yarn&previous-version=4.7.2&new-version=4.7.3)](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 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>
2023-06-13 15:23:08 +00:00
dependabot[bot]
1f0c8049a3 chore(deps-dev): Bump @playwright/test from 1.34.3 to 1.35.0 in /core (#27625)
Bumps [@playwright/test](https://github.com/Microsoft/playwright) from
1.34.3 to 1.35.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/Microsoft/playwright/releases"><code>@​playwright/test</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v1.35.0</h2>
<h3>Highlights</h3>
<ul>
<li>
<p>UI mode is now available in VSCode Playwright extension via a new
&quot;Show trace viewer&quot; button:</p>
<p><img
src="https://github.com/microsoft/playwright/assets/746130/13094128-259b-477a-8bbb-c1181178e8a2"
alt="Playwright UI Mode" /></p>
</li>
<li>
<p>UI mode and trace viewer mark network requests handled with <a
href="https://playwright.dev/docs/api/class-page#page-route"><code>page.route()</code></a>
and <a
href="https://playwright.dev/docs/api/class-browsercontext#browser-context-route"><code>browserContext.route()</code></a>
handlers, as well as those issued via the <a
href="https://playwright.dev/docs/api-testing">API testing</a>:</p>
<p><img
src="https://github.com/microsoft/playwright/assets/746130/0df2d4b6-faa3-465c-aff3-c435b430bfe1"
alt="Trace Viewer" /></p>
</li>
<li>
<p>New option <code>maskColor</code> for methods <a
href="https://playwright.dev/docs/api/class-page#page-screenshot"><code>page.screenshot()</code></a>,
<a
href="https://playwright.dev/docs/api/class-locator#locator-screenshot"><code>locator.screenshot()</code></a>,
<a
href="https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-have-screenshot-1"><code>expect(page).toHaveScreenshot()</code></a>
and <a
href="https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-have-screenshot-1"><code>expect(locator).toHaveScreenshot()</code></a>
to change default masking color:</p>
<pre lang="js"><code>await page.goto('https://playwright.dev');
await expect(page).toHaveScreenshot({
  mask: [page.locator('img')],
  maskColor: '#00FF00', // green
});
</code></pre>
</li>
<li>
<p>New <code>uninstall</code> CLI command to uninstall browser
binaries:</p>
<pre lang="bash"><code>$ npx playwright uninstall # remove browsers
installed by this installation
$ npx playwright uninstall --all # remove all ever-install Playwright
browsers
</code></pre>
</li>
<li>
<p>Both UI mode and trace viewer now could be opened in a browser
tab:</p>
<pre lang="bash"><code>$ npx playwright test --ui-port 0 # open UI mode
in a tab on a random port
$ npx playwright show-trace --port 0 # open trace viewer in tab on a
random port
</code></pre>
</li>
</ul>
<h3>⚠️ Breaking changes</h3>
<ul>
<li>
<p><code>playwright-core</code> binary got renamed from
<code>playwright</code> to <code>playwright-core</code>. So if you use
<code>playwright-core</code> CLI, make sure to update the name:</p>
<pre lang="bash"><code>$ npx playwright-core install # the new way to
install browsers when using playwright-core
</code></pre>
<p>This change <strong>does not</strong> affect
<code>@playwright/test</code> and <code>playwright</code> package
users.</p>
</li>
</ul>
<h3>Browser Versions</h3>
<ul>
<li>Chromium 115.0.5790.13</li>
<li>Mozilla Firefox 113.0</li>
<li>WebKit 16.4</li>
</ul>
<p>This version was also tested against the following stable
channels:</p>
<ul>
<li>Google Chrome 114</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="a2798c3221"><code>a2798c3</code></a>
chore: mark 1.35.0 (<a
href="https://redirect.github.com/Microsoft/playwright/issues/23581">#23581</a>)</li>
<li><a
href="745e2009cf"><code>745e200</code></a>
cherry-pick(<a
href="https://redirect.github.com/Microsoft/playwright/issues/23606">#23606</a>)
docs: fix images for release notes</li>
<li><a
href="f28d156039"><code>f28d156</code></a>
cherry-pick(<a
href="https://redirect.github.com/Microsoft/playwright/issues/23582">#23582</a>):
docs: enhance UI mode docs (<a
href="https://redirect.github.com/Microsoft/playwright/issues/23604">#23604</a>)</li>
<li><a
href="3e94abe1d9"><code>3e94abe</code></a>
cherry-pick(<a
href="https://redirect.github.com/Microsoft/playwright/issues/23593">#23593</a>):
feat(chromium): roll to r1067 (<a
href="https://redirect.github.com/Microsoft/playwright/issues/23599">#23599</a>)</li>
<li><a
href="f411348fa2"><code>f411348</code></a>
cherry-pick(<a
href="https://redirect.github.com/Microsoft/playwright/issues/23583">#23583</a>):
chore: do not show select item when Show trace</li>
<li><a
href="e0c4576e29"><code>e0c4576</code></a>
docs: add a note about CodeSpaces UI mode (<a
href="https://redirect.github.com/Microsoft/playwright/issues/23580">#23580</a>)</li>
<li><a
href="4f8680f7a3"><code>4f8680f</code></a>
fix(pause): revert timeouts after pause (<a
href="https://redirect.github.com/Microsoft/playwright/issues/23578">#23578</a>)</li>
<li><a
href="eda109388e"><code>eda1093</code></a>
docs: js release notes 1.35 (<a
href="https://redirect.github.com/Microsoft/playwright/issues/23560">#23560</a>)</li>
<li><a
href="7d2201561f"><code>7d22015</code></a>
chore(devops): add check status for report merger to PRs (<a
href="https://redirect.github.com/Microsoft/playwright/issues/23564">#23564</a>)</li>
<li><a
href="0b30f2017c"><code>0b30f20</code></a>
chore: make trace server work over http (<a
href="https://redirect.github.com/Microsoft/playwright/issues/23561">#23561</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/Microsoft/playwright/compare/v1.34.3...v1.35.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@playwright/test&package-manager=npm_and_yarn&previous-version=1.34.3&new-version=1.35.0)](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 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>
2023-06-09 13:34:11 +00:00
34 changed files with 199 additions and 243 deletions

View File

@@ -3,6 +3,17 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [7.0.13](https://github.com/ionic-team/ionic-framework/compare/v7.0.12...v7.0.13) (2023-06-14)
### Bug Fixes
* **react:** onDoubleClick fires on components ([#27611](https://github.com/ionic-team/ionic-framework/issues/27611)) ([3e191df](https://github.com/ionic-team/ionic-framework/commit/3e191df3dd43dcdd5a5f717166d4db9834340a2b)), closes [#21320](https://github.com/ionic-team/ionic-framework/issues/21320)
## [7.0.12](https://github.com/ionic-team/ionic-framework/compare/v7.0.11...v7.0.12) (2023-06-08)

View File

@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [7.0.13](https://github.com/ionic-team/ionic-framework/compare/v7.0.12...v7.0.13) (2023-06-14)
**Note:** Version bump only for package @ionic/angular
## [7.0.12](https://github.com/ionic-team/ionic-framework/compare/v7.0.11...v7.0.12) (2023-06-08)
**Note:** Version bump only for package @ionic/angular

View File

@@ -1,15 +1,15 @@
{
"name": "@ionic/angular",
"version": "7.0.12",
"version": "7.0.13",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@ionic/angular",
"version": "7.0.12",
"version": "7.0.13",
"license": "MIT",
"dependencies": {
"@ionic/core": "^7.0.12",
"@ionic/core": "^7.0.13",
"ionicons": "^7.0.0",
"jsonc-parser": "^3.0.0",
"tslib": "^2.3.0"

View File

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

View File

@@ -3,6 +3,17 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [7.0.13](https://github.com/ionic-team/ionic-framework/compare/v7.0.12...v7.0.13) (2023-06-14)
### Bug Fixes
* **react:** onDoubleClick fires on components ([#27611](https://github.com/ionic-team/ionic-framework/issues/27611)) ([3e191df](https://github.com/ionic-team/ionic-framework/commit/3e191df3dd43dcdd5a5f717166d4db9834340a2b)), closes [#21320](https://github.com/ionic-team/ionic-framework/issues/21320)
## [7.0.12](https://github.com/ionic-team/ionic-framework/compare/v7.0.11...v7.0.12) (2023-06-08)

52
core/package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "@ionic/core",
"version": "7.0.12",
"version": "7.0.13",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@ionic/core",
"version": "7.0.12",
"version": "7.0.13",
"license": "MIT",
"dependencies": {
"@stencil/core": "^3.3.1",
@@ -14,11 +14,11 @@
"tslib": "^2.1.0"
},
"devDependencies": {
"@axe-core/playwright": "^4.7.2",
"@axe-core/playwright": "^4.7.3",
"@ionic/eslint-config": "^0.3.0",
"@ionic/prettier-config": "^2.0.0",
"@jest/core": "^27.5.1",
"@playwright/test": "^1.34.3",
"@playwright/test": "^1.35.0",
"@rollup/plugin-node-resolve": "^8.4.0",
"@rollup/plugin-virtual": "^2.0.3",
"@stencil/angular-output-target": "^0.7.1",
@@ -53,9 +53,9 @@
"dev": true
},
"node_modules/@axe-core/playwright": {
"version": "4.7.2",
"resolved": "https://registry.npmjs.org/@axe-core/playwright/-/playwright-4.7.2.tgz",
"integrity": "sha512-k5f6KGVkPsZ7wR56XnRZYS4b1Wd8wkVTpjqeScFYZMTJxKVv3FGKoBqQVBoCphWtP0oMWQc41zQgHO6gaYTcQw==",
"version": "4.7.3",
"resolved": "https://registry.npmjs.org/@axe-core/playwright/-/playwright-4.7.3.tgz",
"integrity": "sha512-v2PRgAyGvop7bamrTpNJtc5b1R7giAPnMzZXrS/VDZBCY5+uwVYtCNgDvBsqp5P1QMZxUMoBN+CERJUTMjFN0A==",
"dev": true,
"dependencies": {
"axe-core": "^4.7.0"
@@ -1501,19 +1501,19 @@
}
},
"node_modules/@playwright/test": {
"version": "1.34.3",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.34.3.tgz",
"integrity": "sha512-zPLef6w9P6T/iT6XDYG3mvGOqOyb6eHaV9XtkunYs0+OzxBtrPAAaHotc0X+PJ00WPPnLfFBTl7mf45Mn8DBmw==",
"version": "1.35.0",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.35.0.tgz",
"integrity": "sha512-6qXdd5edCBynOwsz1YcNfgX8tNWeuS9fxy5o59D0rvHXxRtjXRebB4gE4vFVfEMXl/z8zTnAzfOs7aQDEs8G4Q==",
"dev": true,
"dependencies": {
"@types/node": "*",
"playwright-core": "1.34.3"
"playwright-core": "1.35.0"
},
"bin": {
"playwright": "cli.js"
},
"engines": {
"node": ">=14"
"node": ">=16"
},
"optionalDependencies": {
"fsevents": "2.3.2"
@@ -8150,15 +8150,15 @@
}
},
"node_modules/playwright-core": {
"version": "1.34.3",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.34.3.tgz",
"integrity": "sha512-2pWd6G7OHKemc5x1r1rp8aQcpvDh7goMBZlJv6Co5vCNLVcQJdhxRL09SGaY6HcyHH9aT4tiynZabMofVasBYw==",
"version": "1.35.0",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.35.0.tgz",
"integrity": "sha512-muMXyPmIx/2DPrCHOD1H1ePT01o7OdKxKj2ebmCAYvqhUy+Y1bpal7B0rdoxros7YrXI294JT/DWw2LqyiqTPA==",
"dev": true,
"bin": {
"playwright-core": "cli.js"
},
"engines": {
"node": ">=14"
"node": ">=16"
}
},
"node_modules/postcss": {
@@ -10335,9 +10335,9 @@
},
"dependencies": {
"@axe-core/playwright": {
"version": "4.7.2",
"resolved": "https://registry.npmjs.org/@axe-core/playwright/-/playwright-4.7.2.tgz",
"integrity": "sha512-k5f6KGVkPsZ7wR56XnRZYS4b1Wd8wkVTpjqeScFYZMTJxKVv3FGKoBqQVBoCphWtP0oMWQc41zQgHO6gaYTcQw==",
"version": "4.7.3",
"resolved": "https://registry.npmjs.org/@axe-core/playwright/-/playwright-4.7.3.tgz",
"integrity": "sha512-v2PRgAyGvop7bamrTpNJtc5b1R7giAPnMzZXrS/VDZBCY5+uwVYtCNgDvBsqp5P1QMZxUMoBN+CERJUTMjFN0A==",
"dev": true,
"requires": {
"axe-core": "^4.7.0"
@@ -11381,14 +11381,14 @@
}
},
"@playwright/test": {
"version": "1.34.3",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.34.3.tgz",
"integrity": "sha512-zPLef6w9P6T/iT6XDYG3mvGOqOyb6eHaV9XtkunYs0+OzxBtrPAAaHotc0X+PJ00WPPnLfFBTl7mf45Mn8DBmw==",
"version": "1.35.0",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.35.0.tgz",
"integrity": "sha512-6qXdd5edCBynOwsz1YcNfgX8tNWeuS9fxy5o59D0rvHXxRtjXRebB4gE4vFVfEMXl/z8zTnAzfOs7aQDEs8G4Q==",
"dev": true,
"requires": {
"@types/node": "*",
"fsevents": "2.3.2",
"playwright-core": "1.34.3"
"playwright-core": "1.35.0"
}
},
"@rollup/plugin-node-resolve": {
@@ -16258,9 +16258,9 @@
}
},
"playwright-core": {
"version": "1.34.3",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.34.3.tgz",
"integrity": "sha512-2pWd6G7OHKemc5x1r1rp8aQcpvDh7goMBZlJv6Co5vCNLVcQJdhxRL09SGaY6HcyHH9aT4tiynZabMofVasBYw==",
"version": "1.35.0",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.35.0.tgz",
"integrity": "sha512-muMXyPmIx/2DPrCHOD1H1ePT01o7OdKxKj2ebmCAYvqhUy+Y1bpal7B0rdoxros7YrXI294JT/DWw2LqyiqTPA==",
"dev": true
},
"postcss": {

View File

@@ -1,6 +1,6 @@
{
"name": "@ionic/core",
"version": "7.0.12",
"version": "7.0.13",
"description": "Base components for Ionic",
"keywords": [
"ionic",
@@ -36,11 +36,11 @@
"tslib": "^2.1.0"
},
"devDependencies": {
"@axe-core/playwright": "^4.7.2",
"@axe-core/playwright": "^4.7.3",
"@ionic/eslint-config": "^0.3.0",
"@ionic/prettier-config": "^2.0.0",
"@jest/core": "^27.5.1",
"@playwright/test": "^1.34.3",
"@playwright/test": "^1.35.0",
"@rollup/plugin-node-resolve": "^8.4.0",
"@rollup/plugin-virtual": "^2.0.3",
"@stencil/angular-output-target": "^0.7.1",

View File

@@ -11,13 +11,6 @@
<link href="../../../../../scripts/testing/styles.css" rel="stylesheet" />
<script src="../../../../../scripts/testing/scripts.js"></script>
<script type="module" src="../../../../../dist/ionic/ionic.esm.js"></script>
<script type="module">
import * as motion from 'https://esm.run/motion';
window.motionOne = motion;
</script>
</head>
<body>
@@ -30,47 +23,25 @@
<ion-content class="ion-padding">
<ion-button id="default">Open Alert</ion-button>
<ion-button id="timeout">Open Alert, Close After 500ms</ion-button>
<ion-alert id="custom-alert" trigger="default" header="Alert" message="Hello World!"></ion-alert>
<ion-alert id="default-alert" trigger="default" header="Alert" message="Hello World!"></ion-alert>
<ion-alert id="timeout-alert" trigger="timeout" header="Alert" message="Hello World!"></ion-alert>
</ion-content>
</ion-app>
<script>
const customAlert = document.querySelector('#custom-alert');
const defaultAlert = document.querySelector('#default-alert');
const timeoutAlert = document.querySelector('#timeout-alert');
customAlert.enterAnimation = async (el, opts, done) => {
const { animate } = window.motionOne;
const backdropAni = animate('#custom-alert ion-backdrop', {
opacity: 'var(--backdrop-opacity)'
});
defaultAlert.buttons = ['OK'];
timeoutAlert.buttons = ['OK'];
const wrapperAni = animate('#custom-alert .alert-wrapper', {
opacity: 1,
transform: ['scale(1.5)', 'scale(1)']
})
await Promise.all([wrapperAni.finished, backdropAni.finished]);
done();
}
customAlert.leaveAnimation = async (el, opts, done) => {
const { animate } = window.motionOne;
const backdropAni = animate('#custom-alert ion-backdrop', {
opacity: 0
});
const wrapperAni = animate('#custom-alert .alert-wrapper', {
opacity: 0,
transform: 'scale(0.5)'
})
await Promise.all([wrapperAni.finished, backdropAni.finished]);
done();
}
customAlert.buttons = ['OK'];
timeoutAlert.addEventListener('didPresent', () => {
setTimeout(() => {
timeoutAlert.dismiss();
}, 500);
});
</script>
</body>
</html>

View File

@@ -17,8 +17,7 @@ const createLeaveAnimation = () => {
/**
* iOS Modal Leave Animation
*/
export const iosLeaveAnimation = (baseEl: HTMLElement, opts: ModalAnimationOptions): Animation => {
const duration = 500;
export const iosLeaveAnimation = (baseEl: HTMLElement, opts: ModalAnimationOptions, duration = 500): Animation => {
const { presentingEl, currentBreakpoint } = opts;
const root = getElementRoot(baseEl);
const { wrapperAnimation, backdropAnimation } =

View File

@@ -479,9 +479,7 @@ export class Modal implements ComponentInterface, OverlayInterface {
presentingEl: presentingElement,
currentBreakpoint: this.initialBreakpoint,
backdropBreakpoint: this.backdropBreakpoint,
backdropElement: this.backdropEl,
wrapperElement: this.wrapperEl
} as any);
});
/* tslint:disable-next-line */
if (typeof window !== 'undefined') {
@@ -704,9 +702,7 @@ export class Modal implements ComponentInterface, OverlayInterface {
presentingEl: presentingElement,
currentBreakpoint: this.currentBreakpoint ?? this.initialBreakpoint,
backdropBreakpoint: this.backdropBreakpoint,
backdropElement: this.backdropEl,
wrapperElement: this.wrapperEl
} as any
}
);
const dismissed = await this.currentTransition;

View File

@@ -33,11 +33,6 @@
margin-left: 5px;
}
</style>
<script type="module">
import * as motion from 'https://esm.run/motion';
window.motionOne = motion;
</script>
</head>
<body>
<ion-app>
@@ -52,50 +47,12 @@
<div class="grid-item">
<h2>Click</h2>
<ion-button id="left-click-trigger">Trigger</ion-button>
<ion-modal id="custom-modal" trigger="left-click-trigger">
<ion-modal class="left-click-modal" trigger="left-click-trigger">
<ion-content class="ion-padding"> Modal Content </ion-content>
</ion-modal>
</div>
</div>
</ion-content>
</ion-app>
<script>
const customModal = document.querySelector('#custom-modal');
customModal.enterAnimation = async (el, opts, done) => {
const { backdropElement, wrapperElement } = opts;
const { animate } = window.motionOne;
const backdropAni = animate(backdropElement, {
opacity: 'var(--backdrop-opacity)'
});
const wrapperAni = animate(wrapperElement, {
opacity: 1,
transform: ['scale(1.5)', 'scale(1)']
})
await Promise.all([wrapperAni.finished, backdropAni.finished]);
done();
}
customModal.leaveAnimation = async (el, opts, done) => {
const { backdropElement, wrapperElement } = opts;
const { animate } = window.motionOne;
const backdropAni = animate(backdropElement, {
opacity: 0
});
const wrapperAni = animate(wrapperElement, {
opacity: 0,
transform: 'scale(0.5)'
})
await Promise.all([wrapperAni.finished, backdropAni.finished]);
done();
}
</script>
</body>
</html>

View File

@@ -12,11 +12,6 @@
<script src="../../../../../scripts/testing/scripts.js"></script>
<script nomodule src="../../../../../dist/ionic/ionic.js"></script>
<script type="module" src="../../../../../dist/ionic/ionic.esm.js"></script>
<script type="module">
import * as motion from 'https://esm.run/motion';
window.motionOne = motion;
</script>
<script>
class PageOne extends HTMLElement {
connectedCallback() {
@@ -132,26 +127,5 @@
<script>
document.querySelector('ion-route[component=page-three]').componentProps = { param: 'route' };
const routerOutlet = document.querySelector('ion-router-outlet');
routerOutlet.animation = async (el, opts, done) => {
const { enteringEl, leavingEl, direction } = opts;
const { animate, spring } = window.motionOne;
const enteringAni = animate(enteringEl, {
opacity: [1, 1],
x: ['100%', '0%']
}, { easing: spring() });
const leavingAni = animate(leavingEl, {
opacity: [1, 1],
easing: spring(),
x: '-100%'
}, { easing: spring() })
await Promise.all([enteringAni.finished, leavingAni.finished]);
done();
}
</script>
</html>

View File

@@ -264,4 +264,4 @@ export type AnimationPlayTo = 'start' | 'end';
export type AnimationDirection = 'normal' | 'reverse' | 'alternate' | 'alternate-reverse';
export type AnimationFill = 'auto' | 'none' | 'forwards' | 'backwards' | 'both';
export type AnimationBuilder = (baseEl: any, opts?: any, done?: () => void) => Animation;
export type AnimationBuilder = (baseEl: any, opts?: any) => Animation;

View File

@@ -583,35 +583,26 @@ const overlayAnimation = async (
baseEl.classList.remove('overlay-hidden');
const aniRoot = overlay.el;
const animation = animationBuilder(aniRoot, opts);
let resolvePromise;
let promise = new Promise((resolve) => {
resolvePromise = () => { resolve(true) };
})
const animation = animationBuilder(aniRoot, opts, resolvePromise);
if (animation.beforeAddWrite === undefined) {
await promise;
} else {
if (!overlay.animated || !config.getBoolean('animated', true)) {
animation.duration(0);
}
if (overlay.keyboardClose) {
animation.beforeAddWrite(() => {
const activeElement = baseEl.ownerDocument!.activeElement as HTMLElement;
if (activeElement?.matches('input,ion-input, ion-textarea')) {
activeElement.blur();
}
});
}
const activeAni = activeAnimations.get(overlay) || [];
activeAnimations.set(overlay, [...activeAni, animation]);
await animation.play();
if (!overlay.animated || !config.getBoolean('animated', true)) {
animation.duration(0);
}
if (overlay.keyboardClose) {
animation.beforeAddWrite(() => {
const activeElement = baseEl.ownerDocument!.activeElement as HTMLElement;
if (activeElement?.matches('input,ion-input, ion-textarea')) {
activeElement.blur();
}
});
}
const activeAni = activeAnimations.get(overlay) || [];
activeAnimations.set(overlay, [...activeAni, animation]);
await animation.play();
return true;
};

View File

@@ -21,7 +21,7 @@ export const transition = (opts: TransitionOptions): Promise<TransitionResult> =
beforeTransition(opts);
runTransition(opts).then(
(result) => {
if (result.animation && result.animation.destroy) {
if (result.animation) {
result.animation.destroy();
}
afterTransition(opts);
@@ -102,9 +102,11 @@ const getAnimationBuilder = async (opts: TransitionOptions): Promise<AnimationBu
const animation = async (animationBuilder: AnimationBuilder, opts: TransitionOptions): Promise<TransitionResult> => {
await waitForReady(opts, true);
const trans = animationBuilder(opts.baseEl, opts);
fireWillEvents(opts.enteringEl, opts.leavingEl);
const { animation, didComplete } = await playTransition(animationBuilder, opts);
const didComplete = await playTransition(trans, opts);
if (opts.progressCallback) {
opts.progressCallback(undefined);
@@ -116,7 +118,7 @@ const animation = async (animationBuilder: AnimationBuilder, opts: TransitionOpt
return {
hasCompleted: didComplete,
animation,
animation: trans,
};
};
@@ -153,42 +155,27 @@ const notifyViewReady = async (
}
};
const playTransition = async (animationBuilder: AnimationBuilder, opts: TransitionOptions): Promise<{ animation: Animation, didComplete: boolean}> => {
const playTransition = (trans: Animation, opts: TransitionOptions): Promise<boolean> => {
const progressCallback = opts.progressCallback;
let resolvePromise;
let promise: Promise<boolean> = new Promise((resolve) => {
resolvePromise = () => { resolve(true) };
})
const promise = new Promise<boolean>((resolve) => {
trans.onFinish((currentStep: any) => resolve(currentStep === 1));
});
const animation = animationBuilder(opts.baseEl, opts, resolvePromise);
let didComplete = false;
if (animation.beforeAddWrite === undefined) {
didComplete = await promise;
// cool, let's do this, start the transition
if (progressCallback) {
// this is a swipe to go back, just get the transition progress ready
// kick off the swipe animation start
trans.progressStart(true);
progressCallback(trans);
} else {
const progressCallback = opts.progressCallback;
promise = new Promise<boolean>((resolve) => {
animation.onFinish((currentStep: any) => resolve(currentStep === 1));
});
// cool, let's do this, start the transition
if (progressCallback) {
// this is a swipe to go back, just get the transition progress ready
// kick off the swipe animation start
animation.progressStart(true);
progressCallback(animation);
} else {
// only the top level transition should actually start "play"
// kick it off and let it play through
// ******** DOM WRITE ****************
animation.play();
didComplete = await promise;
}
// only the top level transition should actually start "play"
// kick it off and let it play through
// ******** DOM WRITE ****************
trans.play();
}
// create a callback for when the animation is done
return { didComplete, animation };
return promise;
};
const fireWillEvents = (enteringEl: HTMLElement | undefined, leavingEl: HTMLElement | undefined) => {

View File

@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [7.0.13](https://github.com/ionic-team/ionic-framework/compare/v7.0.12...v7.0.13) (2023-06-14)
**Note:** Version bump only for package @ionic/docs
## [7.0.12](https://github.com/ionic-team/ionic-framework/compare/v7.0.11...v7.0.12) (2023-06-08)
**Note:** Version bump only for package @ionic/docs

View File

@@ -1,12 +1,12 @@
{
"name": "@ionic/docs",
"version": "7.0.12",
"version": "7.0.13",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@ionic/docs",
"version": "7.0.12",
"version": "7.0.13",
"license": "MIT"
}
}

View File

@@ -1,6 +1,6 @@
{
"name": "@ionic/docs",
"version": "7.0.12",
"version": "7.0.13",
"description": "Pre-packaged API documentation for the Ionic docs.",
"main": "core.json",
"types": "core.d.ts",

View File

@@ -5,5 +5,5 @@
"angular",
"packages/*"
],
"version": "7.0.12"
"version": "7.0.13"
}

View File

@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [7.0.13](https://github.com/ionic-team/ionic-framework/compare/v7.0.12...v7.0.13) (2023-06-14)
**Note:** Version bump only for package @ionic/angular-server
## [7.0.12](https://github.com/ionic-team/ionic-framework/compare/v7.0.11...v7.0.12) (2023-06-08)
**Note:** Version bump only for package @ionic/angular-server

View File

@@ -1,15 +1,15 @@
{
"name": "@ionic/angular-server",
"version": "7.0.12",
"version": "7.0.13",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@ionic/angular-server",
"version": "7.0.12",
"version": "7.0.13",
"license": "MIT",
"dependencies": {
"@ionic/core": "^7.0.12"
"@ionic/core": "^7.0.13"
},
"devDependencies": {
"@angular-eslint/eslint-plugin": "^14.0.0",

View File

@@ -1,6 +1,6 @@
{
"name": "@ionic/angular-server",
"version": "7.0.12",
"version": "7.0.13",
"description": "Angular SSR Module for Ionic",
"keywords": [
"ionic",
@@ -61,6 +61,6 @@
},
"prettier": "@ionic/prettier-config",
"dependencies": {
"@ionic/core": "^7.0.12"
"@ionic/core": "^7.0.13"
}
}

View File

@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [7.0.13](https://github.com/ionic-team/ionic-framework/compare/v7.0.12...v7.0.13) (2023-06-14)
**Note:** Version bump only for package @ionic/react-router
## [7.0.12](https://github.com/ionic-team/ionic-framework/compare/v7.0.11...v7.0.12) (2023-06-08)
**Note:** Version bump only for package @ionic/react-router

View File

@@ -1,15 +1,15 @@
{
"name": "@ionic/react-router",
"version": "7.0.12",
"version": "7.0.13",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@ionic/react-router",
"version": "7.0.12",
"version": "7.0.13",
"license": "MIT",
"dependencies": {
"@ionic/react": "^7.0.12",
"@ionic/react": "^7.0.13",
"tslib": "*"
},
"devDependencies": {

View File

@@ -1,6 +1,6 @@
{
"name": "@ionic/react-router",
"version": "7.0.12",
"version": "7.0.13",
"description": "React Router wrapper for @ionic/react",
"keywords": [
"ionic",
@@ -37,7 +37,7 @@
"dist/"
],
"dependencies": {
"@ionic/react": "^7.0.12",
"@ionic/react": "^7.0.13",
"tslib": "*"
},
"peerDependencies": {

View File

@@ -3,6 +3,17 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [7.0.13](https://github.com/ionic-team/ionic-framework/compare/v7.0.12...v7.0.13) (2023-06-14)
### Bug Fixes
* **react:** onDoubleClick fires on components ([#27611](https://github.com/ionic-team/ionic-framework/issues/27611)) ([3e191df](https://github.com/ionic-team/ionic-framework/commit/3e191df3dd43dcdd5a5f717166d4db9834340a2b)), closes [#21320](https://github.com/ionic-team/ionic-framework/issues/21320)
## [7.0.12](https://github.com/ionic-team/ionic-framework/compare/v7.0.11...v7.0.12) (2023-06-08)
**Note:** Version bump only for package @ionic/react

View File

@@ -1,15 +1,15 @@
{
"name": "@ionic/react",
"version": "7.0.12",
"version": "7.0.13",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@ionic/react",
"version": "7.0.12",
"version": "7.0.13",
"license": "MIT",
"dependencies": {
"@ionic/core": "^7.0.12",
"@ionic/core": "^7.0.13",
"ionicons": "^7.0.0",
"tslib": "*"
},

View File

@@ -1,6 +1,6 @@
{
"name": "@ionic/react",
"version": "7.0.12",
"version": "7.0.13",
"description": "React specific wrapper for @ionic/core",
"keywords": [
"ionic",
@@ -41,7 +41,7 @@
"css/"
],
"dependencies": {
"@ionic/core": "^7.0.12",
"@ionic/core": "^7.0.13",
"ionicons": "^7.0.0",
"tslib": "*"
},

View File

@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [7.0.13](https://github.com/ionic-team/ionic-framework/compare/v7.0.12...v7.0.13) (2023-06-14)
**Note:** Version bump only for package @ionic/vue-router
## [7.0.12](https://github.com/ionic-team/ionic-framework/compare/v7.0.11...v7.0.12) (2023-06-08)
**Note:** Version bump only for package @ionic/vue-router

View File

@@ -1,15 +1,15 @@
{
"name": "@ionic/vue-router",
"version": "7.0.12",
"version": "7.0.13",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@ionic/vue-router",
"version": "7.0.12",
"version": "7.0.13",
"license": "MIT",
"dependencies": {
"@ionic/vue": "^7.0.12"
"@ionic/vue": "^7.0.13"
},
"devDependencies": {
"@ionic/eslint-config": "^0.3.0",

View File

@@ -1,6 +1,6 @@
{
"name": "@ionic/vue-router",
"version": "7.0.12",
"version": "7.0.13",
"description": "Vue Router integration for @ionic/vue",
"scripts": {
"test.spec": "jest",
@@ -45,7 +45,7 @@
},
"homepage": "https://github.com/ionic-team/ionic#readme",
"dependencies": {
"@ionic/vue": "^7.0.12"
"@ionic/vue": "^7.0.13"
},
"devDependencies": {
"@ionic/eslint-config": "^0.3.0",

View File

@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [7.0.13](https://github.com/ionic-team/ionic-framework/compare/v7.0.12...v7.0.13) (2023-06-14)
**Note:** Version bump only for package @ionic/vue
## [7.0.12](https://github.com/ionic-team/ionic-framework/compare/v7.0.11...v7.0.12) (2023-06-08)
**Note:** Version bump only for package @ionic/vue

View File

@@ -1,15 +1,15 @@
{
"name": "@ionic/vue",
"version": "7.0.12",
"version": "7.0.13",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@ionic/vue",
"version": "7.0.12",
"version": "7.0.13",
"license": "MIT",
"dependencies": {
"@ionic/core": "^7.0.12",
"@ionic/core": "^7.0.13",
"ionicons": "^7.0.0"
},
"devDependencies": {

View File

@@ -1,6 +1,6 @@
{
"name": "@ionic/vue",
"version": "7.0.12",
"version": "7.0.13",
"description": "Vue specific wrapper for @ionic/core",
"scripts": {
"eslint": "eslint src",
@@ -66,7 +66,7 @@
"vue-router": "^4.0.16"
},
"dependencies": {
"@ionic/core": "^7.0.12",
"@ionic/core": "^7.0.13",
"ionicons": "^7.0.0"
},
"vetur": {