@ionic/core 8.4.4-dev.11738772061.152d6e09 → 8.4.4-dev.11739312641.10060091
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/checkbox.js +4 -6
- package/components/index6.js +3 -11
- package/components/ion-select.js +4 -6
- package/components/ion-tab-button.js +1 -1
- package/components/ion-tab.js +2 -6
- package/components/ion-toggle.js +4 -6
- package/components/modal.js +35 -259
- package/components/ripple-effect.js +4 -2
- package/components/toolbar.js +2 -2
- package/css/core.css.map +1 -1
- package/css/ionic.bundle.css.map +1 -1
- package/dist/cjs/{data-108e531d.js → data-21dc0f81.js} +1 -1
- package/dist/cjs/{index-2a46a047.js → index-5915f9b3.js} +3 -11
- package/dist/cjs/{index-0d762bba.js → index-5b6a7459.js} +1 -1
- package/dist/cjs/{index-3652c918.js → index-8e789962.js} +1 -1
- package/dist/cjs/{index-e975c92b.js → index-f05acd21.js} +3 -3
- package/dist/cjs/index.cjs.js +6 -6
- package/dist/cjs/{input-shims-cd05268a.js → input-shims-9e59ef62.js} +2 -4
- package/dist/cjs/{input.utils-ffb2f81b.js → input.utils-611cde0b.js} +1 -1
- package/dist/cjs/ion-accordion_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-action-sheet.cjs.entry.js +2 -2
- package/dist/cjs/ion-alert.cjs.entry.js +2 -2
- package/dist/cjs/ion-app_8.cjs.entry.js +7 -7
- package/dist/cjs/ion-button_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-checkbox.cjs.entry.js +4 -5
- package/dist/cjs/ion-datetime-button.cjs.entry.js +2 -2
- package/dist/cjs/ion-datetime_3.cjs.entry.js +3 -3
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +1 -1
- package/dist/cjs/ion-input.cjs.entry.js +2 -2
- package/dist/cjs/ion-item-option_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-loading.cjs.entry.js +2 -2
- package/dist/cjs/ion-menu_3.cjs.entry.js +3 -3
- package/dist/cjs/ion-modal.cjs.entry.js +39 -262
- package/dist/cjs/ion-nav_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-popover.cjs.entry.js +3 -3
- package/dist/cjs/ion-range.cjs.entry.js +2 -2
- package/dist/cjs/ion-refresher_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-reorder_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +4 -2
- package/dist/cjs/ion-select-modal.cjs.entry.js +2 -2
- package/dist/cjs/ion-select_3.cjs.entry.js +6 -7
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-tab_2.cjs.entry.js +2 -6
- package/dist/cjs/ion-textarea.cjs.entry.js +2 -2
- package/dist/cjs/ion-toast.cjs.entry.js +2 -2
- package/dist/cjs/ion-toggle.cjs.entry.js +4 -5
- package/dist/cjs/ionic.cjs.js +1 -1
- package/dist/cjs/{ios.transition-0e664e88.js → ios.transition-cf40433b.js} +2 -2
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{md.transition-2e8aef2c.js → md.transition-ededf99f.js} +2 -2
- package/dist/cjs/{overlays-65fdaff6.js → overlays-aa669eb8.js} +1 -1
- package/dist/cjs/{status-tap-d74f1429.js → status-tap-37681226.js} +2 -3
- package/dist/collection/components/checkbox/checkbox.js +4 -23
- package/dist/collection/components/modal/animations/ios.enter.js +4 -50
- package/dist/collection/components/modal/animations/ios.leave.js +2 -24
- package/dist/collection/components/modal/animations/md.enter.js +5 -52
- package/dist/collection/components/modal/animations/md.leave.js +3 -26
- package/dist/collection/components/modal/animations/sheet.js +2 -11
- package/dist/collection/components/modal/gestures/sheet.js +10 -79
- package/dist/collection/components/modal/modal.ios.css +0 -16
- package/dist/collection/components/modal/modal.js +7 -32
- package/dist/collection/components/modal/modal.md.css +0 -6
- package/dist/collection/components/ripple-effect/ripple-effect.js +4 -2
- package/dist/collection/components/select/select.js +4 -23
- package/dist/collection/components/tab/tab.js +2 -6
- package/dist/collection/components/tab-button/tab-button.js +1 -1
- package/dist/collection/components/toggle/toggle.js +4 -23
- package/dist/collection/components/toolbar/toolbar.js +2 -6
- package/dist/collection/utils/logging/index.js +3 -10
- package/dist/docs.json +2 -115
- package/dist/esm/{data-b3284b5e.js → data-ae11fd43.js} +1 -1
- package/dist/esm/{index-cb21eccb.js → index-24b48b06.js} +1 -1
- package/dist/esm/{index-2f7fde3d.js → index-3ad7f18b.js} +3 -3
- package/dist/esm/{index-efb8ecdf.js → index-5cc724f3.js} +1 -1
- package/dist/esm/{index-6ad967f3.js → index-9b0d46f4.js} +3 -11
- package/dist/esm/index.js +6 -6
- package/dist/esm/{input-shims-2fd7c6ef.js → input-shims-0314bbe5.js} +2 -4
- package/dist/esm/{input.utils-961c9f17.js → input.utils-09c71bc7.js} +1 -1
- package/dist/esm/ion-accordion_2.entry.js +1 -1
- package/dist/esm/ion-action-sheet.entry.js +2 -2
- package/dist/esm/ion-alert.entry.js +2 -2
- package/dist/esm/ion-app_8.entry.js +7 -7
- package/dist/esm/ion-button_2.entry.js +1 -1
- package/dist/esm/ion-checkbox.entry.js +4 -5
- package/dist/esm/ion-datetime-button.entry.js +2 -2
- package/dist/esm/ion-datetime_3.entry.js +3 -3
- package/dist/esm/ion-infinite-scroll_2.entry.js +2 -2
- package/dist/esm/ion-input-password-toggle.entry.js +1 -1
- package/dist/esm/ion-input.entry.js +2 -2
- package/dist/esm/ion-item-option_3.entry.js +2 -2
- package/dist/esm/ion-loading.entry.js +2 -2
- package/dist/esm/ion-menu_3.entry.js +3 -3
- package/dist/esm/ion-modal.entry.js +39 -262
- package/dist/esm/ion-nav_2.entry.js +2 -2
- package/dist/esm/ion-popover.entry.js +3 -3
- package/dist/esm/ion-range.entry.js +2 -2
- package/dist/esm/ion-refresher_2.entry.js +2 -2
- package/dist/esm/ion-reorder_2.entry.js +2 -2
- package/dist/esm/ion-ripple-effect.entry.js +4 -2
- package/dist/esm/ion-select-modal.entry.js +2 -2
- package/dist/esm/ion-select_3.entry.js +6 -7
- package/dist/esm/ion-tab-bar_2.entry.js +1 -1
- package/dist/esm/ion-tab_2.entry.js +2 -6
- package/dist/esm/ion-textarea.entry.js +2 -2
- package/dist/esm/ion-toast.entry.js +2 -2
- package/dist/esm/ion-toggle.entry.js +4 -5
- package/dist/esm/ionic.js +1 -1
- package/dist/esm/{ios.transition-b1da3753.js → ios.transition-4ee1a3af.js} +2 -2
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{md.transition-571b3859.js → md.transition-5106a0d2.js} +2 -2
- package/dist/esm/{overlays-5deab4de.js → overlays-e7b9d6d9.js} +1 -1
- package/dist/esm/{status-tap-79eac0ac.js → status-tap-f472b09f.js} +2 -3
- package/dist/esm-es5/{data-b3284b5e.js → data-ae11fd43.js} +1 -1
- package/dist/esm-es5/{index-cb21eccb.js → index-24b48b06.js} +1 -1
- package/dist/esm-es5/{index-2f7fde3d.js → index-3ad7f18b.js} +1 -1
- package/dist/esm-es5/{index-efb8ecdf.js → index-5cc724f3.js} +1 -1
- package/dist/esm-es5/index-9b0d46f4.js +4 -0
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/input-shims-0314bbe5.js +4 -0
- package/dist/esm-es5/{input.utils-961c9f17.js → input.utils-09c71bc7.js} +1 -1
- package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
- package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
- package/dist/esm-es5/ion-alert.entry.js +1 -1
- package/dist/esm-es5/ion-app_8.entry.js +1 -1
- package/dist/esm-es5/ion-button_2.entry.js +1 -1
- package/dist/esm-es5/ion-checkbox.entry.js +1 -1
- package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
- package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
- package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
- package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
- package/dist/esm-es5/ion-input.entry.js +1 -1
- package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
- package/dist/esm-es5/ion-loading.entry.js +1 -1
- package/dist/esm-es5/ion-menu_3.entry.js +1 -1
- package/dist/esm-es5/ion-modal.entry.js +1 -1
- package/dist/esm-es5/ion-nav_2.entry.js +1 -1
- package/dist/esm-es5/ion-popover.entry.js +1 -1
- package/dist/esm-es5/ion-range.entry.js +1 -1
- package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
- package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
- package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
- package/dist/esm-es5/ion-select-modal.entry.js +1 -1
- package/dist/esm-es5/ion-select_3.entry.js +1 -1
- package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
- package/dist/esm-es5/ion-tab_2.entry.js +1 -1
- package/dist/esm-es5/ion-textarea.entry.js +1 -1
- package/dist/esm-es5/ion-toast.entry.js +1 -1
- package/dist/esm-es5/ion-toggle.entry.js +1 -1
- package/dist/esm-es5/ionic.js +1 -1
- package/dist/esm-es5/{ios.transition-b1da3753.js → ios.transition-4ee1a3af.js} +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/{md.transition-571b3859.js → md.transition-5106a0d2.js} +1 -1
- package/dist/esm-es5/{overlays-5deab4de.js → overlays-e7b9d6d9.js} +1 -1
- package/dist/esm-es5/status-tap-f472b09f.js +4 -0
- package/dist/html.html-data.json +0 -16
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-0303d0f8.js +4 -0
- package/dist/ionic/{p-9343a445.js → p-06e58c4e.js} +1 -1
- package/dist/ionic/p-06fee233.js +4 -0
- package/dist/ionic/{p-ada36597.system.js → p-0aa833fb.system.js} +1 -1
- package/dist/ionic/{p-0eb35a7f.system.js → p-0c06e09b.system.js} +1 -1
- package/dist/ionic/{p-cba1f9bc.system.entry.js → p-1046866e.system.entry.js} +1 -1
- package/dist/ionic/{p-6dfb0f39.system.entry.js → p-12a722b8.system.entry.js} +1 -1
- package/dist/ionic/{p-a4a2420e.system.entry.js → p-14e159ea.system.entry.js} +1 -1
- package/dist/ionic/p-17474161.system.js +4 -0
- package/dist/ionic/{p-e06057c9.entry.js → p-19a5be0a.entry.js} +1 -1
- package/dist/ionic/{p-fceec762.entry.js → p-19ec4f42.entry.js} +1 -1
- package/dist/ionic/p-1d8761e6.entry.js +4 -0
- package/dist/ionic/{p-e09d6392.system.entry.js → p-1e010627.system.entry.js} +2 -2
- package/dist/ionic/{p-f1120724.system.entry.js → p-1fe02220.system.entry.js} +1 -1
- package/dist/ionic/p-2172893e.system.entry.js +4 -0
- package/dist/ionic/{p-0af823e1.js → p-21e5e7e4.js} +1 -1
- package/dist/ionic/p-2690b1de.js +4 -0
- package/dist/ionic/{p-9b122e3c.system.entry.js → p-2799c6d3.system.entry.js} +1 -1
- package/dist/ionic/p-2b9b78c7.entry.js +4 -0
- package/dist/ionic/{p-d6eaffb1.system.entry.js → p-2bd0ae94.system.entry.js} +1 -1
- package/dist/ionic/{p-8694928f.entry.js → p-2fc0dafe.entry.js} +1 -1
- package/dist/ionic/p-322c5fb4.system.js +1 -1
- package/dist/ionic/{p-6933c482.system.entry.js → p-32d44024.system.entry.js} +1 -1
- package/dist/ionic/{p-248318e0.system.entry.js → p-37cb43bd.system.entry.js} +1 -1
- package/dist/ionic/{p-9b428d25.entry.js → p-4439fc2a.entry.js} +1 -1
- package/dist/ionic/{p-948e6c6a.entry.js → p-45693d7e.entry.js} +1 -1
- package/dist/ionic/p-4ec778aa.entry.js +4 -0
- package/dist/ionic/{p-7a02f476.entry.js → p-508d024a.entry.js} +1 -1
- package/dist/ionic/{p-74e3f0af.system.entry.js → p-5823babc.system.entry.js} +2 -2
- package/dist/ionic/p-5ab1b709.entry.js +4 -0
- package/dist/ionic/{p-d22e2a38.system.js → p-5da94421.system.js} +1 -1
- package/dist/ionic/{p-f1060cd8.entry.js → p-61e3f887.entry.js} +1 -1
- package/dist/ionic/{p-05b74e45.system.entry.js → p-6499df44.system.entry.js} +1 -1
- package/dist/ionic/{p-585b455c.system.entry.js → p-66640ff7.system.entry.js} +1 -1
- package/dist/ionic/{p-8ac07653.system.entry.js → p-69666e8a.system.entry.js} +2 -2
- package/dist/ionic/{p-2da9c8a7.entry.js → p-6b280620.entry.js} +1 -1
- package/dist/ionic/{p-1199e388.system.entry.js → p-797eeea8.system.entry.js} +1 -1
- package/dist/ionic/{p-f1c4dcd4.js → p-88e63c7d.js} +1 -1
- package/dist/ionic/p-8b8be2fd.entry.js +4 -0
- package/dist/ionic/p-908d6080.entry.js +4 -0
- package/dist/ionic/{p-a8f2c254.entry.js → p-942b5e13.entry.js} +1 -1
- package/dist/ionic/{p-1ab13b2b.js → p-96cc4814.js} +1 -1
- package/dist/ionic/{p-f63c2d12.entry.js → p-982315a6.entry.js} +1 -1
- package/dist/ionic/p-98ff6b32.entry.js +4 -0
- package/dist/ionic/{p-61db139d.entry.js → p-9e33104d.entry.js} +1 -1
- package/dist/ionic/{p-a88dec0d.system.js → p-9ea607bd.system.js} +2 -2
- package/dist/ionic/{p-5c9eb9af.entry.js → p-9ee1e8a6.entry.js} +1 -1
- package/dist/ionic/{p-b1eb86fd.entry.js → p-9fa07aec.entry.js} +1 -1
- package/dist/ionic/{p-e76dae93.entry.js → p-a43467d8.entry.js} +1 -1
- package/dist/ionic/{p-b3c60433.system.js → p-a4565eb5.system.js} +1 -1
- package/dist/ionic/{p-ab674093.system.entry.js → p-a49378bb.system.entry.js} +1 -1
- package/dist/ionic/{p-92763d3d.entry.js → p-a61cba41.entry.js} +1 -1
- package/dist/ionic/{p-2507278c.system.entry.js → p-a882acef.system.entry.js} +1 -1
- package/dist/ionic/{p-9f364443.system.entry.js → p-b2272f51.system.entry.js} +1 -1
- package/dist/ionic/{p-302b50bb.system.entry.js → p-b335ffed.system.entry.js} +1 -1
- package/dist/ionic/{p-eef505e8.entry.js → p-b79ba17c.entry.js} +1 -1
- package/dist/ionic/{p-cb13696c.js → p-b82d4cab.js} +1 -1
- package/dist/ionic/{p-744c8672.system.entry.js → p-bc36ad98.system.entry.js} +1 -1
- package/dist/ionic/{p-8cfba7e9.system.entry.js → p-c29f8157.system.entry.js} +1 -1
- package/dist/ionic/{p-5c08627a.system.js → p-c449820c.system.js} +1 -1
- package/dist/ionic/{p-120fb79a.entry.js → p-c9f3a539.entry.js} +1 -1
- package/dist/ionic/{p-a090bce8.system.entry.js → p-ca065903.system.entry.js} +1 -1
- package/dist/ionic/{p-933727f9.system.entry.js → p-d18ab582.system.entry.js} +1 -1
- package/dist/ionic/{p-1a5bc5f7.js → p-d60342e3.js} +1 -1
- package/dist/ionic/{p-b6efeab8.js → p-d6841eac.js} +1 -1
- package/dist/ionic/{p-89bf08c7.entry.js → p-da074ff7.entry.js} +1 -1
- package/dist/ionic/{p-a0eb506c.system.entry.js → p-ddaa748a.system.entry.js} +1 -1
- package/dist/ionic/p-dfb78785.system.js +4 -0
- package/dist/ionic/{p-fbd41a7e.system.entry.js → p-e4f69534.system.entry.js} +1 -1
- package/dist/ionic/{p-15d18206.entry.js → p-e563a35c.entry.js} +1 -1
- package/dist/ionic/{p-28706c6f.js → p-e6635685.js} +1 -1
- package/dist/ionic/{p-7de1e42c.system.js → p-e7ed4a7f.system.js} +1 -1
- package/dist/ionic/p-e85d901b.system.entry.js +4 -0
- package/dist/ionic/p-eba29931.entry.js +4 -0
- package/dist/ionic/{p-bdf2cb2e.system.entry.js → p-ebf042e0.system.entry.js} +1 -1
- package/dist/ionic/{p-7a6eaf9e.entry.js → p-efaffe74.entry.js} +1 -1
- package/dist/ionic/{p-2346ab53.system.entry.js → p-f1acf541.system.entry.js} +1 -1
- package/dist/ionic/{p-343b6b1d.system.js → p-f687573e.system.js} +1 -1
- package/dist/ionic/{p-c4238c12.system.js → p-f9a53abb.system.js} +1 -1
- package/dist/ionic/p-ff4b7e40.system.js +4 -0
- package/dist/types/components/checkbox/checkbox.d.ts +0 -6
- package/dist/types/components/modal/animations/sheet.d.ts +0 -1
- package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
- package/dist/types/components/modal/modal-interface.d.ts +0 -1
- package/dist/types/components/modal/modal.d.ts +0 -11
- package/dist/types/components/select/select.d.ts +0 -6
- package/dist/types/components/toggle/toggle.d.ts +0 -6
- package/dist/types/components/toolbar/toolbar.d.ts +0 -4
- package/dist/types/components.d.ts +0 -32
- package/dist/types/utils/config.d.ts +0 -9
- package/dist/types/utils/logging/index.d.ts +1 -13
- package/hydrate/index.js +59 -301
- package/hydrate/index.mjs +59 -301
- package/package.json +1 -1
- package/dist/esm-es5/index-6ad967f3.js +0 -4
- package/dist/esm-es5/input-shims-2fd7c6ef.js +0 -4
- package/dist/esm-es5/status-tap-79eac0ac.js +0 -4
- package/dist/ionic/p-017be83b.entry.js +0 -4
- package/dist/ionic/p-0430c2e0.entry.js +0 -4
- package/dist/ionic/p-147e2d39.system.entry.js +0 -4
- package/dist/ionic/p-4c98e2cf.system.js +0 -4
- package/dist/ionic/p-577bc414.entry.js +0 -4
- package/dist/ionic/p-67222c16.system.js +0 -4
- package/dist/ionic/p-6c95736e.entry.js +0 -4
- package/dist/ionic/p-6d32975a.entry.js +0 -4
- package/dist/ionic/p-7513b0c4.js +0 -4
- package/dist/ionic/p-783411f1.entry.js +0 -4
- package/dist/ionic/p-a3db8ee3.js +0 -4
- package/dist/ionic/p-d1c5b60e.system.js +0 -4
- package/dist/ionic/p-d7dd8fb1.entry.js +0 -4
- package/dist/ionic/p-e3171ff3.entry.js +0 -4
- package/dist/ionic/p-e6376b93.system.entry.js +0 -4
- package/dist/ionic/p-e8d56122.js +0 -4
package/hydrate/index.mjs
CHANGED
|
@@ -3213,12 +3213,9 @@ let accordionIds = 0;
|
|
|
3213
3213
|
* @param message - The string message to be logged to the console.
|
|
3214
3214
|
*/
|
|
3215
3215
|
const printIonWarning = (message, ...params) => {
|
|
3216
|
-
|
|
3217
|
-
if (["WARN" /* LogLevel.WARN */].includes(logLevel)) {
|
|
3218
|
-
return console.warn(`[Ionic Warning]: ${message}`, ...params);
|
|
3219
|
-
}
|
|
3216
|
+
return console.warn(`[Ionic Warning]: ${message}`, ...params);
|
|
3220
3217
|
};
|
|
3221
|
-
|
|
3218
|
+
/*
|
|
3222
3219
|
* Logs an error to the console with an Ionic prefix
|
|
3223
3220
|
* to indicate the library that is warning the developer.
|
|
3224
3221
|
*
|
|
@@ -3226,10 +3223,7 @@ const printIonWarning = (message, ...params) => {
|
|
|
3226
3223
|
* @param params - Additional arguments to supply to the console.error.
|
|
3227
3224
|
*/
|
|
3228
3225
|
const printIonError = (message, ...params) => {
|
|
3229
|
-
|
|
3230
|
-
if (["ERROR" /* LogLevel.ERROR */, "WARN" /* LogLevel.WARN */].includes(logLevel)) {
|
|
3231
|
-
return console.error(`[Ionic Error]: ${message}`, ...params);
|
|
3232
|
-
}
|
|
3226
|
+
return console.error(`[Ionic Error]: ${message}`, ...params);
|
|
3233
3227
|
};
|
|
3234
3228
|
/**
|
|
3235
3229
|
* Prints an error informing developers that an implementation requires an element to be used
|
|
@@ -8493,7 +8487,6 @@ class Checkbox {
|
|
|
8493
8487
|
this.labelPlacement = 'start';
|
|
8494
8488
|
this.justify = undefined;
|
|
8495
8489
|
this.alignment = undefined;
|
|
8496
|
-
this.required = false;
|
|
8497
8490
|
}
|
|
8498
8491
|
componentWillLoad() {
|
|
8499
8492
|
this.inheritedAttributes = Object.assign({}, inheritAriaAttributes(this.el));
|
|
@@ -8505,11 +8498,11 @@ class Checkbox {
|
|
|
8505
8498
|
}
|
|
8506
8499
|
}
|
|
8507
8500
|
render() {
|
|
8508
|
-
const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment,
|
|
8501
|
+
const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment, } = this;
|
|
8509
8502
|
const mode = getIonMode$1(this);
|
|
8510
8503
|
const path = getSVGPath(mode, indeterminate);
|
|
8511
8504
|
renderHiddenInput(true, el, name, checked ? value : '', disabled);
|
|
8512
|
-
return (hAsync(Host, { key: '
|
|
8505
|
+
return (hAsync(Host, { key: '6dc787e1100521d08c4900104e1a3e2f594e919f', "aria-checked": indeterminate ? 'mixed' : `${checked}`, class: createColorClasses$1(color, {
|
|
8513
8506
|
[mode]: true,
|
|
8514
8507
|
'in-item': hostContext('ion-item', el),
|
|
8515
8508
|
'checkbox-checked': checked,
|
|
@@ -8519,10 +8512,10 @@ class Checkbox {
|
|
|
8519
8512
|
[`checkbox-justify-${justify}`]: justify !== undefined,
|
|
8520
8513
|
[`checkbox-alignment-${alignment}`]: alignment !== undefined,
|
|
8521
8514
|
[`checkbox-label-placement-${labelPlacement}`]: true,
|
|
8522
|
-
}), onClick: this.onClick }, hAsync("label", { key: '
|
|
8515
|
+
}), onClick: this.onClick }, hAsync("label", { key: '68222fb736a5ec3f2e488649b0e2ce0417dcb224', class: "checkbox-wrapper" }, hAsync("input", Object.assign({ key: 'f12962d7e9b19c744cfdbdeccc67ae7f5d080281', type: "checkbox", checked: checked ? true : undefined, disabled: disabled, id: inputId, onChange: this.toggleChecked, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl) }, inheritedAttributes)), hAsync("div", { key: 'c72df2699414b1e5a41a1bc267bc634f0c93dcff', class: {
|
|
8523
8516
|
'label-text-wrapper': true,
|
|
8524
8517
|
'label-text-wrapper-hidden': el.textContent === '',
|
|
8525
|
-
}, part: "label" }, hAsync("slot", { key: '
|
|
8518
|
+
}, part: "label" }, hAsync("slot", { key: 'a2a80285178a7e0e3b536fc9ca26b8b444aa4307' })), hAsync("div", { key: 'c2b05e0d1fe8df5dcd72858220b5ff51ecaee4cc', class: "native-wrapper" }, hAsync("svg", { key: 'ee24913fded72258ebd9713654a6dba92a18fcf7', class: "checkbox-icon", viewBox: "0 0 24 24", part: "container" }, path)))));
|
|
8526
8519
|
}
|
|
8527
8520
|
getSVGPath(mode, indeterminate) {
|
|
8528
8521
|
let path = indeterminate ? (hAsync("path", { d: "M6 12L18 12", part: "mark" })) : (hAsync("path", { d: "M5.9,12.5l3.8,3.8l8.8-8.8", part: "mark" }));
|
|
@@ -8549,7 +8542,6 @@ class Checkbox {
|
|
|
8549
8542
|
"labelPlacement": [1, "label-placement"],
|
|
8550
8543
|
"justify": [1],
|
|
8551
8544
|
"alignment": [1],
|
|
8552
|
-
"required": [4],
|
|
8553
8545
|
"setFocus": [64]
|
|
8554
8546
|
},
|
|
8555
8547
|
"$listeners$": undefined,
|
|
@@ -19025,7 +19017,7 @@ const computeDuration = (remaining, velocity) => {
|
|
|
19025
19017
|
};
|
|
19026
19018
|
|
|
19027
19019
|
const createSheetEnterAnimation = (opts) => {
|
|
19028
|
-
const { currentBreakpoint, backdropBreakpoint
|
|
19020
|
+
const { currentBreakpoint, backdropBreakpoint } = opts;
|
|
19029
19021
|
/**
|
|
19030
19022
|
* If the backdropBreakpoint is undefined, then the backdrop
|
|
19031
19023
|
* should always fade in. If the backdropBreakpoint came before the
|
|
@@ -19045,16 +19037,7 @@ const createSheetEnterAnimation = (opts) => {
|
|
|
19045
19037
|
{ offset: 0, opacity: 1, transform: 'translateY(100%)' },
|
|
19046
19038
|
{ offset: 1, opacity: 1, transform: `translateY(${100 - currentBreakpoint * 100}%)` },
|
|
19047
19039
|
]);
|
|
19048
|
-
|
|
19049
|
-
* This allows the content to be scrollable at any breakpoint.
|
|
19050
|
-
*/
|
|
19051
|
-
const contentAnimation = !expandToScroll
|
|
19052
|
-
? createAnimation('contentAnimation').keyframes([
|
|
19053
|
-
{ offset: 0, opacity: 1, maxHeight: `${(1 - currentBreakpoint) * 100}%` },
|
|
19054
|
-
{ offset: 1, opacity: 1, maxHeight: `${currentBreakpoint * 100}%` },
|
|
19055
|
-
])
|
|
19056
|
-
: undefined;
|
|
19057
|
-
return { wrapperAnimation, backdropAnimation, contentAnimation };
|
|
19040
|
+
return { wrapperAnimation, backdropAnimation };
|
|
19058
19041
|
};
|
|
19059
19042
|
const createSheetLeaveAnimation = (opts) => {
|
|
19060
19043
|
const { currentBreakpoint, backdropBreakpoint } = opts;
|
|
@@ -19089,68 +19072,22 @@ const createEnterAnimation$1 = () => {
|
|
|
19089
19072
|
})
|
|
19090
19073
|
.afterClearStyles(['pointer-events']);
|
|
19091
19074
|
const wrapperAnimation = createAnimation().fromTo('transform', 'translateY(100vh)', 'translateY(0vh)');
|
|
19092
|
-
return { backdropAnimation, wrapperAnimation
|
|
19075
|
+
return { backdropAnimation, wrapperAnimation };
|
|
19093
19076
|
};
|
|
19094
19077
|
/**
|
|
19095
19078
|
* iOS Modal Enter Animation for the Card presentation style
|
|
19096
19079
|
*/
|
|
19097
19080
|
const iosEnterAnimation$3 = (baseEl, opts) => {
|
|
19098
|
-
const { presentingEl, currentBreakpoint
|
|
19081
|
+
const { presentingEl, currentBreakpoint } = opts;
|
|
19099
19082
|
const root = getElementRoot(baseEl);
|
|
19100
|
-
const { wrapperAnimation, backdropAnimation
|
|
19083
|
+
const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation$1();
|
|
19101
19084
|
backdropAnimation.addElement(root.querySelector('ion-backdrop'));
|
|
19102
19085
|
wrapperAnimation.addElement(root.querySelectorAll('.modal-wrapper, .modal-shadow')).beforeStyles({ opacity: 1 });
|
|
19103
|
-
// The content animation is only added if scrolling is enabled for
|
|
19104
|
-
// all the breakpoints.
|
|
19105
|
-
!expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
|
|
19106
19086
|
const baseAnimation = createAnimation('entering-base')
|
|
19107
19087
|
.addElement(baseEl)
|
|
19108
19088
|
.easing('cubic-bezier(0.32,0.72,0,1)')
|
|
19109
19089
|
.duration(500)
|
|
19110
|
-
.addAnimation(
|
|
19111
|
-
.beforeAddWrite(() => {
|
|
19112
|
-
if (expandToScroll) {
|
|
19113
|
-
// Scroll can only be done when the modal is fully expanded.
|
|
19114
|
-
return;
|
|
19115
|
-
}
|
|
19116
|
-
/**
|
|
19117
|
-
* There are some browsers that causes flickering when
|
|
19118
|
-
* dragging the content when scroll is enabled at every
|
|
19119
|
-
* breakpoint. This is due to the wrapper element being
|
|
19120
|
-
* transformed off the screen and having a snap animation.
|
|
19121
|
-
*
|
|
19122
|
-
* A workaround is to clone the footer element and append
|
|
19123
|
-
* it outside of the wrapper element. This way, the footer
|
|
19124
|
-
* is still visible and the drag can be done without
|
|
19125
|
-
* flickering. The original footer is hidden until the modal
|
|
19126
|
-
* is dismissed. This maintains the animation of the footer
|
|
19127
|
-
* when the modal is dismissed.
|
|
19128
|
-
*
|
|
19129
|
-
* The workaround needs to be done before the animation starts
|
|
19130
|
-
* so there are no flickering issues.
|
|
19131
|
-
*/
|
|
19132
|
-
const ionFooter = baseEl.querySelector('ion-footer');
|
|
19133
|
-
/**
|
|
19134
|
-
* This check is needed to prevent more than one footer
|
|
19135
|
-
* from being appended to the shadow root.
|
|
19136
|
-
* Otherwise, iOS and MD enter animations would append
|
|
19137
|
-
* the footer twice.
|
|
19138
|
-
*/
|
|
19139
|
-
const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
|
|
19140
|
-
if (ionFooter && !ionFooterAlreadyAppended) {
|
|
19141
|
-
const footerHeight = ionFooter.clientHeight;
|
|
19142
|
-
const clonedFooter = ionFooter.cloneNode(true);
|
|
19143
|
-
baseEl.shadowRoot.appendChild(clonedFooter);
|
|
19144
|
-
ionFooter.style.setProperty('display', 'none');
|
|
19145
|
-
ionFooter.setAttribute('aria-hidden', 'true');
|
|
19146
|
-
// Padding is added to prevent some content from being hidden.
|
|
19147
|
-
const page = baseEl.querySelector('.ion-page');
|
|
19148
|
-
page.style.setProperty('padding-bottom', `${footerHeight}px`);
|
|
19149
|
-
}
|
|
19150
|
-
});
|
|
19151
|
-
if (contentAnimation) {
|
|
19152
|
-
baseAnimation.addAnimation(contentAnimation);
|
|
19153
|
-
}
|
|
19090
|
+
.addAnimation(wrapperAnimation);
|
|
19154
19091
|
if (presentingEl) {
|
|
19155
19092
|
const isMobile = window.innerWidth < 768;
|
|
19156
19093
|
const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
|
|
@@ -19228,7 +19165,7 @@ const createLeaveAnimation$1 = () => {
|
|
|
19228
19165
|
* iOS Modal Leave Animation
|
|
19229
19166
|
*/
|
|
19230
19167
|
const iosLeaveAnimation$3 = (baseEl, opts, duration = 500) => {
|
|
19231
|
-
const { presentingEl, currentBreakpoint
|
|
19168
|
+
const { presentingEl, currentBreakpoint } = opts;
|
|
19232
19169
|
const root = getElementRoot(baseEl);
|
|
19233
19170
|
const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation$1();
|
|
19234
19171
|
backdropAnimation.addElement(root.querySelector('ion-backdrop'));
|
|
@@ -19237,29 +19174,7 @@ const iosLeaveAnimation$3 = (baseEl, opts, duration = 500) => {
|
|
|
19237
19174
|
.addElement(baseEl)
|
|
19238
19175
|
.easing('cubic-bezier(0.32,0.72,0,1)')
|
|
19239
19176
|
.duration(duration)
|
|
19240
|
-
.addAnimation(wrapperAnimation)
|
|
19241
|
-
.beforeAddWrite(() => {
|
|
19242
|
-
if (expandToScroll) {
|
|
19243
|
-
// Scroll can only be done when the modal is fully expanded.
|
|
19244
|
-
return;
|
|
19245
|
-
}
|
|
19246
|
-
/**
|
|
19247
|
-
* If expandToScroll is disabled, we need to swap
|
|
19248
|
-
* the visibility to the original, so the footer
|
|
19249
|
-
* dismisses with the modal and doesn't stay
|
|
19250
|
-
* until the modal is removed from the DOM.
|
|
19251
|
-
*/
|
|
19252
|
-
const ionFooter = baseEl.querySelector('ion-footer');
|
|
19253
|
-
if (ionFooter) {
|
|
19254
|
-
const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
|
|
19255
|
-
ionFooter.style.removeProperty('display');
|
|
19256
|
-
ionFooter.removeAttribute('aria-hidden');
|
|
19257
|
-
clonedFooter.style.setProperty('display', 'none');
|
|
19258
|
-
clonedFooter.setAttribute('aria-hidden', 'true');
|
|
19259
|
-
const page = baseEl.querySelector('.ion-page');
|
|
19260
|
-
page.style.removeProperty('padding-bottom');
|
|
19261
|
-
}
|
|
19262
|
-
});
|
|
19177
|
+
.addAnimation(wrapperAnimation);
|
|
19263
19178
|
if (presentingEl) {
|
|
19264
19179
|
const isMobile = window.innerWidth < 768;
|
|
19265
19180
|
const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
|
|
@@ -19337,69 +19252,22 @@ const createEnterAnimation = () => {
|
|
|
19337
19252
|
{ offset: 0, opacity: 0.01, transform: 'translateY(40px)' },
|
|
19338
19253
|
{ offset: 1, opacity: 1, transform: `translateY(0px)` },
|
|
19339
19254
|
]);
|
|
19340
|
-
return { backdropAnimation, wrapperAnimation
|
|
19255
|
+
return { backdropAnimation, wrapperAnimation };
|
|
19341
19256
|
};
|
|
19342
19257
|
/**
|
|
19343
19258
|
* Md Modal Enter Animation
|
|
19344
19259
|
*/
|
|
19345
19260
|
const mdEnterAnimation$2 = (baseEl, opts) => {
|
|
19346
|
-
const { currentBreakpoint
|
|
19261
|
+
const { currentBreakpoint } = opts;
|
|
19347
19262
|
const root = getElementRoot(baseEl);
|
|
19348
|
-
const { wrapperAnimation, backdropAnimation
|
|
19263
|
+
const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation();
|
|
19349
19264
|
backdropAnimation.addElement(root.querySelector('ion-backdrop'));
|
|
19350
19265
|
wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
|
|
19351
|
-
|
|
19352
|
-
// all the breakpoints.
|
|
19353
|
-
expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
|
|
19354
|
-
const baseAnimation = createAnimation()
|
|
19266
|
+
return createAnimation()
|
|
19355
19267
|
.addElement(baseEl)
|
|
19356
19268
|
.easing('cubic-bezier(0.36,0.66,0.04,1)')
|
|
19357
19269
|
.duration(280)
|
|
19358
|
-
.addAnimation([backdropAnimation, wrapperAnimation])
|
|
19359
|
-
.beforeAddWrite(() => {
|
|
19360
|
-
if (expandToScroll) {
|
|
19361
|
-
// Scroll can only be done when the modal is fully expanded.
|
|
19362
|
-
return;
|
|
19363
|
-
}
|
|
19364
|
-
/**
|
|
19365
|
-
* There are some browsers that causes flickering when
|
|
19366
|
-
* dragging the content when scroll is enabled at every
|
|
19367
|
-
* breakpoint. This is due to the wrapper element being
|
|
19368
|
-
* transformed off the screen and having a snap animation.
|
|
19369
|
-
*
|
|
19370
|
-
* A workaround is to clone the footer element and append
|
|
19371
|
-
* it outside of the wrapper element. This way, the footer
|
|
19372
|
-
* is still visible and the drag can be done without
|
|
19373
|
-
* flickering. The original footer is hidden until the modal
|
|
19374
|
-
* is dismissed. This maintains the animation of the footer
|
|
19375
|
-
* when the modal is dismissed.
|
|
19376
|
-
*
|
|
19377
|
-
* The workaround needs to be done before the animation starts
|
|
19378
|
-
* so there are no flickering issues.
|
|
19379
|
-
*/
|
|
19380
|
-
const ionFooter = baseEl.querySelector('ion-footer');
|
|
19381
|
-
/**
|
|
19382
|
-
* This check is needed to prevent more than one footer
|
|
19383
|
-
* from being appended to the shadow root.
|
|
19384
|
-
* Otherwise, iOS and MD enter animations would append
|
|
19385
|
-
* the footer twice.
|
|
19386
|
-
*/
|
|
19387
|
-
const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
|
|
19388
|
-
if (ionFooter && !ionFooterAlreadyAppended) {
|
|
19389
|
-
const footerHeight = ionFooter.clientHeight;
|
|
19390
|
-
const clonedFooter = ionFooter.cloneNode(true);
|
|
19391
|
-
baseEl.shadowRoot.appendChild(clonedFooter);
|
|
19392
|
-
ionFooter.style.setProperty('display', 'none');
|
|
19393
|
-
ionFooter.setAttribute('aria-hidden', 'true');
|
|
19394
|
-
// Padding is added to prevent some content from being hidden.
|
|
19395
|
-
const page = baseEl.querySelector('.ion-page');
|
|
19396
|
-
page.style.setProperty('padding-bottom', `${footerHeight}px`);
|
|
19397
|
-
}
|
|
19398
|
-
});
|
|
19399
|
-
if (contentAnimation) {
|
|
19400
|
-
baseAnimation.addAnimation(contentAnimation);
|
|
19401
|
-
}
|
|
19402
|
-
return baseAnimation;
|
|
19270
|
+
.addAnimation([backdropAnimation, wrapperAnimation]);
|
|
19403
19271
|
};
|
|
19404
19272
|
|
|
19405
19273
|
const createLeaveAnimation = () => {
|
|
@@ -19414,41 +19282,18 @@ const createLeaveAnimation = () => {
|
|
|
19414
19282
|
* Md Modal Leave Animation
|
|
19415
19283
|
*/
|
|
19416
19284
|
const mdLeaveAnimation$2 = (baseEl, opts) => {
|
|
19417
|
-
const { currentBreakpoint
|
|
19285
|
+
const { currentBreakpoint } = opts;
|
|
19418
19286
|
const root = getElementRoot(baseEl);
|
|
19419
19287
|
const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation();
|
|
19420
19288
|
backdropAnimation.addElement(root.querySelector('ion-backdrop'));
|
|
19421
19289
|
wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
|
|
19422
|
-
|
|
19290
|
+
return createAnimation()
|
|
19423
19291
|
.easing('cubic-bezier(0.47,0,0.745,0.715)')
|
|
19424
19292
|
.duration(200)
|
|
19425
|
-
.addAnimation([backdropAnimation, wrapperAnimation])
|
|
19426
|
-
.beforeAddWrite(() => {
|
|
19427
|
-
if (expandToScroll) {
|
|
19428
|
-
// Scroll can only be done when the modal is fully expanded.
|
|
19429
|
-
return;
|
|
19430
|
-
}
|
|
19431
|
-
/**
|
|
19432
|
-
* If expandToScroll is disabled, we need to swap
|
|
19433
|
-
* the visibility to the original, so the footer
|
|
19434
|
-
* dismisses with the modal and doesn't stay
|
|
19435
|
-
* until the modal is removed from the DOM.
|
|
19436
|
-
*/
|
|
19437
|
-
const ionFooter = baseEl.querySelector('ion-footer');
|
|
19438
|
-
if (ionFooter) {
|
|
19439
|
-
const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
|
|
19440
|
-
ionFooter.style.removeProperty('display');
|
|
19441
|
-
ionFooter.removeAttribute('aria-hidden');
|
|
19442
|
-
clonedFooter.style.setProperty('display', 'none');
|
|
19443
|
-
clonedFooter.setAttribute('aria-hidden', 'true');
|
|
19444
|
-
const page = baseEl.querySelector('.ion-page');
|
|
19445
|
-
page.style.removeProperty('padding-bottom');
|
|
19446
|
-
}
|
|
19447
|
-
});
|
|
19448
|
-
return baseAnimation;
|
|
19293
|
+
.addAnimation([backdropAnimation, wrapperAnimation]);
|
|
19449
19294
|
};
|
|
19450
19295
|
|
|
19451
|
-
const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [],
|
|
19296
|
+
const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], getCurrentBreakpoint, onDismiss, onBreakpointChange) => {
|
|
19452
19297
|
// Defaults for the sheet swipe animation
|
|
19453
19298
|
const defaultBackdrop = [
|
|
19454
19299
|
{ offset: 0, opacity: 'var(--backdrop-opacity)' },
|
|
@@ -19465,10 +19310,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19465
19310
|
{ offset: 1, transform: 'translateY(100%)' },
|
|
19466
19311
|
],
|
|
19467
19312
|
BACKDROP_KEYFRAMES: backdropBreakpoint !== 0 ? customBackdrop : defaultBackdrop,
|
|
19468
|
-
CONTENT_KEYFRAMES: [
|
|
19469
|
-
{ offset: 0, maxHeight: '100%' },
|
|
19470
|
-
{ offset: 1, maxHeight: '0%' },
|
|
19471
|
-
],
|
|
19472
19313
|
};
|
|
19473
19314
|
const contentEl = baseEl.querySelector('ion-content');
|
|
19474
19315
|
const height = wrapperEl.clientHeight;
|
|
@@ -19476,11 +19317,10 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19476
19317
|
let offset = 0;
|
|
19477
19318
|
let canDismissBlocksGesture = false;
|
|
19478
19319
|
const canDismissMaxStep = 0.95;
|
|
19479
|
-
const maxBreakpoint = breakpoints[breakpoints.length - 1];
|
|
19480
|
-
const minBreakpoint = breakpoints[0];
|
|
19481
19320
|
const wrapperAnimation = animation.childAnimations.find((ani) => ani.id === 'wrapperAnimation');
|
|
19482
19321
|
const backdropAnimation = animation.childAnimations.find((ani) => ani.id === 'backdropAnimation');
|
|
19483
|
-
const
|
|
19322
|
+
const maxBreakpoint = breakpoints[breakpoints.length - 1];
|
|
19323
|
+
const minBreakpoint = breakpoints[0];
|
|
19484
19324
|
const enableBackdrop = () => {
|
|
19485
19325
|
baseEl.style.setProperty('pointer-events', 'auto');
|
|
19486
19326
|
backdropEl.style.setProperty('pointer-events', 'auto');
|
|
@@ -19503,31 +19343,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19503
19343
|
*/
|
|
19504
19344
|
baseEl.classList.add(FOCUS_TRAP_DISABLE_CLASS);
|
|
19505
19345
|
};
|
|
19506
|
-
/**
|
|
19507
|
-
* Toggles the visible modal footer when `expandToScroll` is disabled.
|
|
19508
|
-
* @param footer The footer to show.
|
|
19509
|
-
*/
|
|
19510
|
-
const swapFooterVisibility = (footer) => {
|
|
19511
|
-
const originalFooter = baseEl.querySelector('ion-footer');
|
|
19512
|
-
if (!originalFooter) {
|
|
19513
|
-
return;
|
|
19514
|
-
}
|
|
19515
|
-
const clonedFooter = wrapperEl.nextElementSibling;
|
|
19516
|
-
const footerToHide = footer === 'original' ? clonedFooter : originalFooter;
|
|
19517
|
-
const footerToShow = footer === 'original' ? originalFooter : clonedFooter;
|
|
19518
|
-
footerToShow.style.removeProperty('display');
|
|
19519
|
-
footerToShow.removeAttribute('aria-hidden');
|
|
19520
|
-
const page = baseEl.querySelector('.ion-page');
|
|
19521
|
-
if (footer === 'original') {
|
|
19522
|
-
page.style.removeProperty('padding-bottom');
|
|
19523
|
-
}
|
|
19524
|
-
else {
|
|
19525
|
-
const pagePadding = footerToShow.clientHeight;
|
|
19526
|
-
page.style.setProperty('padding-bottom', `${pagePadding}px`);
|
|
19527
|
-
}
|
|
19528
|
-
footerToHide.style.setProperty('display', 'none');
|
|
19529
|
-
footerToHide.setAttribute('aria-hidden', 'true');
|
|
19530
|
-
};
|
|
19531
19346
|
/**
|
|
19532
19347
|
* After the entering animation completes,
|
|
19533
19348
|
* we need to set the animation to go from
|
|
@@ -19539,7 +19354,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19539
19354
|
if (wrapperAnimation && backdropAnimation) {
|
|
19540
19355
|
wrapperAnimation.keyframes([...SheetDefaults.WRAPPER_KEYFRAMES]);
|
|
19541
19356
|
backdropAnimation.keyframes([...SheetDefaults.BACKDROP_KEYFRAMES]);
|
|
19542
|
-
contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.keyframes([...SheetDefaults.CONTENT_KEYFRAMES]);
|
|
19543
19357
|
animation.progressStart(true, 1 - currentBreakpoint);
|
|
19544
19358
|
/**
|
|
19545
19359
|
* If backdrop is not enabled, then content
|
|
@@ -19556,7 +19370,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19556
19370
|
disableBackdrop();
|
|
19557
19371
|
}
|
|
19558
19372
|
}
|
|
19559
|
-
if (contentEl && currentBreakpoint !== maxBreakpoint
|
|
19373
|
+
if (contentEl && currentBreakpoint !== maxBreakpoint) {
|
|
19560
19374
|
contentEl.scrollY = false;
|
|
19561
19375
|
}
|
|
19562
19376
|
const canStart = (detail) => {
|
|
@@ -19570,13 +19384,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19570
19384
|
*/
|
|
19571
19385
|
const contentEl = findClosestIonContent(detail.event.target);
|
|
19572
19386
|
currentBreakpoint = getCurrentBreakpoint();
|
|
19573
|
-
/**
|
|
19574
|
-
* If we have expandToScroll disabled, we should not allow the swipe gesture to start
|
|
19575
|
-
* if the content is being swiped.
|
|
19576
|
-
*/
|
|
19577
|
-
if (!expandToScroll && contentEl) {
|
|
19578
|
-
return false;
|
|
19579
|
-
}
|
|
19580
19387
|
if (currentBreakpoint === 1 && contentEl) {
|
|
19581
19388
|
/**
|
|
19582
19389
|
* The modal should never swipe to close on the content with a refresher.
|
|
@@ -19607,15 +19414,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19607
19414
|
* Remove undefined check
|
|
19608
19415
|
*/
|
|
19609
19416
|
canDismissBlocksGesture = baseEl.canDismiss !== undefined && baseEl.canDismiss !== true && minBreakpoint === 0;
|
|
19610
|
-
/**
|
|
19611
|
-
* If expandToScroll is disabled, we need to swap
|
|
19612
|
-
* the footer visibility to the original, so if the modal
|
|
19613
|
-
* is dismissed, the footer dismisses with the modal
|
|
19614
|
-
* and doesn't stay on the screen after the modal is gone.
|
|
19615
|
-
*/
|
|
19616
|
-
if (!expandToScroll) {
|
|
19617
|
-
swapFooterVisibility('original');
|
|
19618
|
-
}
|
|
19619
19417
|
/**
|
|
19620
19418
|
* If we are pulling down, then it is possible we are pulling on the content.
|
|
19621
19419
|
* We do not want scrolling to happen at the same time as the gesture.
|
|
@@ -19731,19 +19529,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19731
19529
|
opacity: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(snapToBreakpoint, backdropBreakpoint)})`,
|
|
19732
19530
|
},
|
|
19733
19531
|
]);
|
|
19734
|
-
if (contentAnimation) {
|
|
19735
|
-
/**
|
|
19736
|
-
* The modal content should scroll at any breakpoint when expandToScroll
|
|
19737
|
-
* is disabled. In order to do this, the content needs to be completely
|
|
19738
|
-
* viewable so scrolling can access everything. Otherwise, the default
|
|
19739
|
-
* behavior would show the content off the screen and only allow
|
|
19740
|
-
* scrolling when the sheet is fully expanded.
|
|
19741
|
-
*/
|
|
19742
|
-
contentAnimation.keyframes([
|
|
19743
|
-
{ offset: 0, maxHeight: `${(1 - breakpointOffset) * 100}%` },
|
|
19744
|
-
{ offset: 1, maxHeight: `${snapToBreakpoint * 100}%` },
|
|
19745
|
-
]);
|
|
19746
|
-
}
|
|
19747
19532
|
animation.progressStep(0);
|
|
19748
19533
|
}
|
|
19749
19534
|
/**
|
|
@@ -19751,14 +19536,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19751
19536
|
* snapping animation completes.
|
|
19752
19537
|
*/
|
|
19753
19538
|
gesture.enable(false);
|
|
19754
|
-
/**
|
|
19755
|
-
* If expandToScroll is disabled, we need to swap
|
|
19756
|
-
* the footer visibility to the cloned one so the footer
|
|
19757
|
-
* doesn't flicker when the sheet's height is animated.
|
|
19758
|
-
*/
|
|
19759
|
-
if (!expandToScroll && shouldRemainOpen) {
|
|
19760
|
-
swapFooterVisibility('cloned');
|
|
19761
|
-
}
|
|
19762
19539
|
if (shouldPreventDismiss) {
|
|
19763
19540
|
handleCanDismiss(baseEl, animation);
|
|
19764
19541
|
}
|
|
@@ -19766,13 +19543,13 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19766
19543
|
onDismiss();
|
|
19767
19544
|
}
|
|
19768
19545
|
/**
|
|
19769
|
-
*
|
|
19770
|
-
*
|
|
19771
|
-
*
|
|
19772
|
-
*
|
|
19773
|
-
* released, so we align with that
|
|
19546
|
+
* If the sheet is going to be fully expanded then we should enable
|
|
19547
|
+
* scrolling immediately. The sheet modal animation takes ~500ms to finish
|
|
19548
|
+
* so if we wait until then there is a visible delay for when scrolling is
|
|
19549
|
+
* re-enabled. Native iOS allows for scrolling on the sheet modal as soon
|
|
19550
|
+
* as the gesture is released, so we align with that.
|
|
19774
19551
|
*/
|
|
19775
|
-
if (contentEl &&
|
|
19552
|
+
if (contentEl && snapToBreakpoint === breakpoints[breakpoints.length - 1]) {
|
|
19776
19553
|
contentEl.scrollY = true;
|
|
19777
19554
|
}
|
|
19778
19555
|
return new Promise((resolve) => {
|
|
@@ -19790,7 +19567,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19790
19567
|
raf(() => {
|
|
19791
19568
|
wrapperAnimation.keyframes([...SheetDefaults.WRAPPER_KEYFRAMES]);
|
|
19792
19569
|
backdropAnimation.keyframes([...SheetDefaults.BACKDROP_KEYFRAMES]);
|
|
19793
|
-
contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.keyframes([...SheetDefaults.CONTENT_KEYFRAMES]);
|
|
19794
19570
|
animation.progressStart(true, 1 - snapToBreakpoint);
|
|
19795
19571
|
currentBreakpoint = snapToBreakpoint;
|
|
19796
19572
|
onBreakpointChange(currentBreakpoint);
|
|
@@ -19843,10 +19619,10 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19843
19619
|
};
|
|
19844
19620
|
};
|
|
19845
19621
|
|
|
19846
|
-
const modalIosCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host
|
|
19622
|
+
const modalIosCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.4)}:host(.modal-card),:host(.modal-sheet){--border-radius:10px}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:10px}}.modal-wrapper{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0)}@media screen and (max-width: 767px){@supports (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - max(30px, var(--ion-safe-area-top)) - 10px)}}@supports not (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - 40px)}}:host(.modal-card) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-card){--backdrop-opacity:0;--width:100%;-ms-flex-align:end;align-items:flex-end}:host(.modal-card) .modal-shadow{display:none}:host(.modal-card) ion-backdrop{pointer-events:none}}@media screen and (min-width: 768px){:host(.modal-card){--width:calc(100% - 120px);--height:calc(100% - (120px + var(--ion-safe-area-top) + var(--ion-safe-area-bottom)));--max-width:720px;--max-height:1000px;--backdrop-opacity:0;--box-shadow:0px 0px 30px 10px rgba(0, 0, 0, 0.1);-webkit-transition:all 0.5s ease-in-out;transition:all 0.5s ease-in-out}:host(.modal-card) .modal-wrapper{-webkit-box-shadow:none;box-shadow:none}:host(.modal-card) .modal-shadow{-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}}:host(.modal-sheet) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}";
|
|
19847
19623
|
var IonModalIosStyle0 = modalIosCss;
|
|
19848
19624
|
|
|
19849
|
-
const modalMdCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host
|
|
19625
|
+
const modalMdCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:2px;--box-shadow:0 28px 48px rgba(0, 0, 0, 0.4)}}.modal-wrapper{-webkit-transform:translate3d(0, 40px, 0);transform:translate3d(0, 40px, 0);opacity:0.01}";
|
|
19850
19626
|
var IonModalMdStyle0 = modalMdCss;
|
|
19851
19627
|
|
|
19852
19628
|
// TODO(FW-2832): types
|
|
@@ -19925,7 +19701,6 @@ class Modal {
|
|
|
19925
19701
|
this.enterAnimation = undefined;
|
|
19926
19702
|
this.leaveAnimation = undefined;
|
|
19927
19703
|
this.breakpoints = undefined;
|
|
19928
|
-
this.expandToScroll = true;
|
|
19929
19704
|
this.initialBreakpoint = undefined;
|
|
19930
19705
|
this.backdropBreakpoint = 0;
|
|
19931
19706
|
this.handle = undefined;
|
|
@@ -20141,7 +19916,6 @@ class Modal {
|
|
|
20141
19916
|
presentingEl: presentingElement,
|
|
20142
19917
|
currentBreakpoint: this.initialBreakpoint,
|
|
20143
19918
|
backdropBreakpoint: this.backdropBreakpoint,
|
|
20144
|
-
expandToScroll: this.expandToScroll,
|
|
20145
19919
|
});
|
|
20146
19920
|
/* tslint:disable-next-line */
|
|
20147
19921
|
if (typeof window !== 'undefined') {
|
|
@@ -20192,10 +19966,7 @@ class Modal {
|
|
|
20192
19966
|
// should be in the DOM and referenced by now, except
|
|
20193
19967
|
// for the presenting el
|
|
20194
19968
|
const animationBuilder = this.leaveAnimation || config.get('modalLeave', iosLeaveAnimation$3);
|
|
20195
|
-
const ani = (this.animation = animationBuilder(el, {
|
|
20196
|
-
presentingEl: this.presentingElement,
|
|
20197
|
-
expandToScroll: this.expandToScroll,
|
|
20198
|
-
}));
|
|
19969
|
+
const ani = (this.animation = animationBuilder(el, { presentingEl: this.presentingElement }));
|
|
20199
19970
|
const contentEl = findIonContent(el);
|
|
20200
19971
|
if (!contentEl) {
|
|
20201
19972
|
printIonContentErrorMsg(el);
|
|
@@ -20240,10 +20011,9 @@ class Modal {
|
|
|
20240
20011
|
presentingEl: this.presentingElement,
|
|
20241
20012
|
currentBreakpoint: initialBreakpoint,
|
|
20242
20013
|
backdropBreakpoint,
|
|
20243
|
-
expandToScroll: this.expandToScroll,
|
|
20244
20014
|
}));
|
|
20245
20015
|
ani.progressStart(true, 1);
|
|
20246
|
-
const { gesture, moveSheetToBreakpoint } = createSheetGesture(this.el, this.backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, ani, this.sortedBreakpoints,
|
|
20016
|
+
const { gesture, moveSheetToBreakpoint } = createSheetGesture(this.el, this.backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, ani, this.sortedBreakpoints, () => { var _a; return (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : 0; }, () => this.sheetOnDismiss(), (breakpoint) => {
|
|
20247
20017
|
if (this.currentBreakpoint !== breakpoint) {
|
|
20248
20018
|
this.currentBreakpoint = breakpoint;
|
|
20249
20019
|
this.ionBreakpointDidChange.emit({ breakpoint });
|
|
@@ -20321,7 +20091,6 @@ class Modal {
|
|
|
20321
20091
|
presentingEl: presentingElement,
|
|
20322
20092
|
currentBreakpoint: (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : this.initialBreakpoint,
|
|
20323
20093
|
backdropBreakpoint: this.backdropBreakpoint,
|
|
20324
|
-
expandToScroll: this.expandToScroll,
|
|
20325
20094
|
});
|
|
20326
20095
|
if (dismissed) {
|
|
20327
20096
|
const { delegate } = this.getDelegate();
|
|
@@ -20407,23 +20176,23 @@ class Modal {
|
|
|
20407
20176
|
return true;
|
|
20408
20177
|
}
|
|
20409
20178
|
render() {
|
|
20410
|
-
const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap
|
|
20179
|
+
const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap } = this;
|
|
20411
20180
|
const showHandle = handle !== false && isSheetModal;
|
|
20412
20181
|
const mode = getIonMode$1(this);
|
|
20413
20182
|
const isCardModal = presentingElement !== undefined && mode === 'ios';
|
|
20414
20183
|
const isHandleCycle = handleBehavior === 'cycle';
|
|
20415
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
20184
|
+
return (hAsync(Host, Object.assign({ key: 'b4da5111fe4719fa450c39b2d4bd884a302a7924', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
|
|
20416
20185
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
20417
|
-
}, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal,
|
|
20186
|
+
}, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle }), hAsync("ion-backdrop", { key: 'c12dbf747e0eb914eaf1331798548ffc7e147763', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && hAsync("div", { key: 'da546ee80c6576b5acc66e959fd5009e0b9a8160', class: "modal-shadow" }), hAsync("div", Object.assign({ key: '306ebe6427440ad5f7ed36d590e562d15a503b75',
|
|
20418
20187
|
/*
|
|
20419
20188
|
role and aria-modal must be used on the
|
|
20420
20189
|
same element. They must also be set inside the
|
|
20421
20190
|
shadow DOM otherwise ion-button will not be highlighted
|
|
20422
20191
|
when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
|
|
20423
20192
|
*/
|
|
20424
|
-
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: '
|
|
20193
|
+
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: 'c5d17e346fe255a7c0cacbbf15c0083f2d09c488', class: "modal-handle",
|
|
20425
20194
|
// Prevents the handle from receiving keyboard focus when it does not cycle
|
|
20426
|
-
tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), hAsync("slot", { key: '
|
|
20195
|
+
tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), hAsync("slot", { key: '5cc714170a00b67f3eda0cd1d6f37c1489a99c83' }))));
|
|
20427
20196
|
}
|
|
20428
20197
|
get el() { return getElement(this); }
|
|
20429
20198
|
static get watchers() { return {
|
|
@@ -20445,7 +20214,6 @@ class Modal {
|
|
|
20445
20214
|
"enterAnimation": [16],
|
|
20446
20215
|
"leaveAnimation": [16],
|
|
20447
20216
|
"breakpoints": [16],
|
|
20448
|
-
"expandToScroll": [4, "expand-to-scroll"],
|
|
20449
20217
|
"initialBreakpoint": [2, "initial-breakpoint"],
|
|
20450
20218
|
"backdropBreakpoint": [2, "backdrop-breakpoint"],
|
|
20451
20219
|
"handle": [4],
|
|
@@ -27318,10 +27086,12 @@ class RippleEffect {
|
|
|
27318
27086
|
}; }
|
|
27319
27087
|
}
|
|
27320
27088
|
const removeRipple = (ripple) => {
|
|
27089
|
+
if (!ripple.parentNode)
|
|
27090
|
+
return;
|
|
27321
27091
|
ripple.classList.add('fade-out');
|
|
27322
|
-
|
|
27092
|
+
ripple.addEventListener('transitionend', () => {
|
|
27323
27093
|
ripple.remove();
|
|
27324
|
-
},
|
|
27094
|
+
}, { once: true });
|
|
27325
27095
|
};
|
|
27326
27096
|
const PADDING = 10;
|
|
27327
27097
|
const INITIAL_ORIGIN_SCALE = 0.5;
|
|
@@ -29889,7 +29659,6 @@ class Select {
|
|
|
29889
29659
|
this.expandedIcon = undefined;
|
|
29890
29660
|
this.shape = undefined;
|
|
29891
29661
|
this.value = undefined;
|
|
29892
|
-
this.required = false;
|
|
29893
29662
|
}
|
|
29894
29663
|
styleChanged() {
|
|
29895
29664
|
this.emitStyle();
|
|
@@ -30374,8 +30143,8 @@ class Select {
|
|
|
30374
30143
|
return renderedLabel;
|
|
30375
30144
|
}
|
|
30376
30145
|
renderListbox() {
|
|
30377
|
-
const { disabled, inputId, isExpanded
|
|
30378
|
-
return (hAsync("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`,
|
|
30146
|
+
const { disabled, inputId, isExpanded } = this;
|
|
30147
|
+
return (hAsync("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl) => (this.focusEl = focusEl) }));
|
|
30379
30148
|
}
|
|
30380
30149
|
render() {
|
|
30381
30150
|
const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value } = this;
|
|
@@ -30406,7 +30175,7 @@ class Select {
|
|
|
30406
30175
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
30407
30176
|
*/
|
|
30408
30177
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
|
|
30409
|
-
return (hAsync(Host, { key: '
|
|
30178
|
+
return (hAsync(Host, { key: '144dfa5c49549a74fe516c65b9b8104a477ac789', onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
30410
30179
|
[mode]: true,
|
|
30411
30180
|
'in-item': inItem,
|
|
30412
30181
|
'in-item-color': hostContext('ion-item.ion-color', el),
|
|
@@ -30422,7 +30191,7 @@ class Select {
|
|
|
30422
30191
|
[`select-justify-${justify}`]: justifyEnabled,
|
|
30423
30192
|
[`select-shape-${shape}`]: shape !== undefined,
|
|
30424
30193
|
[`select-label-placement-${labelPlacement}`]: true,
|
|
30425
|
-
}) }, hAsync("label", { key: '
|
|
30194
|
+
}) }, hAsync("label", { key: '0edcfcbac575a9dccc77991531b6980d1caebf42', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), hAsync("div", { key: '348151d90cb093f5d21c7d4a834264ac4a312c40', class: "select-wrapper-inner" }, hAsync("slot", { key: '8b7708c7f81217435c58276da0c08bba766d9500', name: "start" }), hAsync("div", { key: '10c520a335da0a0d1cf40f9365597beb244d3b48', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), hAsync("slot", { key: '0f15c40a5495e98e29d2a21ba21e0bc6f1c0125a', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && hAsync("div", { key: 'c87faad2e5ebf7f9453397d7ede43abd64d21294', class: "select-highlight" }))));
|
|
30426
30195
|
}
|
|
30427
30196
|
get el() { return getElement(this); }
|
|
30428
30197
|
static get watchers() { return {
|
|
@@ -30458,7 +30227,6 @@ class Select {
|
|
|
30458
30227
|
"expandedIcon": [1, "expanded-icon"],
|
|
30459
30228
|
"shape": [1],
|
|
30460
30229
|
"value": [1032],
|
|
30461
|
-
"required": [4],
|
|
30462
30230
|
"isExpanded": [32],
|
|
30463
30231
|
"open": [64]
|
|
30464
30232
|
},
|
|
@@ -30998,10 +30766,6 @@ class Tab {
|
|
|
30998
30766
|
}
|
|
30999
30767
|
changeActive(isActive) {
|
|
31000
30768
|
if (isActive) {
|
|
31001
|
-
// ensure tabindex gets updated before setting focus to the element
|
|
31002
|
-
setTimeout(() => {
|
|
31003
|
-
this.el.focus();
|
|
31004
|
-
}, 50);
|
|
31005
30769
|
this.prepareLazyLoaded();
|
|
31006
30770
|
}
|
|
31007
30771
|
}
|
|
@@ -31019,10 +30783,10 @@ class Tab {
|
|
|
31019
30783
|
}
|
|
31020
30784
|
render() {
|
|
31021
30785
|
const { tab, active, component } = this;
|
|
31022
|
-
return (hAsync(Host, { key: '
|
|
30786
|
+
return (hAsync(Host, { key: 'cb75d0877979b3b8df8f7e1952bfa9677da1eaa5', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
|
|
31023
30787
|
'ion-page': component === undefined,
|
|
31024
30788
|
'tab-hidden': !active,
|
|
31025
|
-
}
|
|
30789
|
+
} }, hAsync("slot", { key: '37fbb7b7a6b03eb93b1dacd2dc1025b78eb2aa6b' })));
|
|
31026
30790
|
}
|
|
31027
30791
|
get el() { return getElement(this); }
|
|
31028
30792
|
static get watchers() { return {
|
|
@@ -31214,7 +30978,7 @@ class TabButton {
|
|
|
31214
30978
|
'ion-activatable': true,
|
|
31215
30979
|
'ion-selectable': true,
|
|
31216
30980
|
'ion-focusable': true,
|
|
31217
|
-
} }, hAsync("a", Object.assign({ key: '
|
|
30981
|
+
} }, hAsync("a", Object.assign({ key: '1db09d861b67ff292018fb4b0dc7b85bd4677eb8' }, attrs, { class: "button-native", part: "native", role: "tab", "aria-selected": selected ? 'true' : null, "aria-disabled": disabled ? 'true' : null, tabindex: disabled ? '-1' : undefined }, inheritedAttributes), hAsync("span", { key: '4381eafcb27e8c7bb0d86d4f115ceb0caf03b9b4', class: "button-inner" }, hAsync("slot", { key: '1981135f6fbb88376c1bd923c55c70fe8b5c5159' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '0509bc7155d055d1ed710600e9cf4df135881491', type: "unbounded" }))));
|
|
31218
30982
|
}
|
|
31219
30983
|
get el() { return getElement(this); }
|
|
31220
30984
|
static get style() { return {
|
|
@@ -32859,7 +32623,6 @@ class Toggle {
|
|
|
32859
32623
|
this.labelPlacement = 'start';
|
|
32860
32624
|
this.justify = undefined;
|
|
32861
32625
|
this.alignment = undefined;
|
|
32862
|
-
this.required = false;
|
|
32863
32626
|
}
|
|
32864
32627
|
disabledChanged() {
|
|
32865
32628
|
if (this.gesture) {
|
|
@@ -32941,12 +32704,12 @@ class Toggle {
|
|
|
32941
32704
|
return this.el.textContent !== '';
|
|
32942
32705
|
}
|
|
32943
32706
|
render() {
|
|
32944
|
-
const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment
|
|
32707
|
+
const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment } = this;
|
|
32945
32708
|
const mode = getIonMode$1(this);
|
|
32946
32709
|
const value = this.getValue();
|
|
32947
32710
|
const rtl = isRTL$1(el) ? 'rtl' : 'ltr';
|
|
32948
32711
|
renderHiddenInput(true, el, name, checked ? value : '', disabled);
|
|
32949
|
-
return (hAsync(Host, { key: '
|
|
32712
|
+
return (hAsync(Host, { key: 'f52195ec3bc14c024647cb41319c32a4cd330e19', onClick: this.onClick, class: createColorClasses$1(color, {
|
|
32950
32713
|
[mode]: true,
|
|
32951
32714
|
'in-item': hostContext('ion-item', el),
|
|
32952
32715
|
'toggle-activated': activated,
|
|
@@ -32956,10 +32719,10 @@ class Toggle {
|
|
|
32956
32719
|
[`toggle-alignment-${alignment}`]: alignment !== undefined,
|
|
32957
32720
|
[`toggle-label-placement-${labelPlacement}`]: true,
|
|
32958
32721
|
[`toggle-${rtl}`]: true,
|
|
32959
|
-
}) }, hAsync("label", { key: '
|
|
32722
|
+
}) }, hAsync("label", { key: 'f8b3a215ad85b2cee611ad63449b584e1640f27f', class: "toggle-wrapper" }, hAsync("input", Object.assign({ key: 'f387b1ea840737a9737917e516834c887be99c09', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl) }, this.inheritedAttributes)), hAsync("div", { key: '936af880db59fe377cd2de9101eb28a1c4fb8914', class: {
|
|
32960
32723
|
'label-text-wrapper': true,
|
|
32961
32724
|
'label-text-wrapper-hidden': !this.hasLabel,
|
|
32962
|
-
}, part: "label" }, hAsync("slot", { key: '
|
|
32725
|
+
}, part: "label" }, hAsync("slot", { key: '80a6672e2e792c15011a9496dcd75363cdba31c6' })), hAsync("div", { key: '2b2b318b38ab27b194c0dab4cecd77d9d780f2ca', class: "native-wrapper" }, this.renderToggleControl()))));
|
|
32963
32726
|
}
|
|
32964
32727
|
get el() { return getElement(this); }
|
|
32965
32728
|
static get watchers() { return {
|
|
@@ -32982,7 +32745,6 @@ class Toggle {
|
|
|
32982
32745
|
"labelPlacement": [1, "label-placement"],
|
|
32983
32746
|
"justify": [1],
|
|
32984
32747
|
"alignment": [1],
|
|
32985
|
-
"required": [4],
|
|
32986
32748
|
"activated": [32]
|
|
32987
32749
|
},
|
|
32988
32750
|
"$listeners$": undefined,
|
|
@@ -33014,10 +32776,6 @@ var IonToolbarMdStyle0 = toolbarMdCss;
|
|
|
33014
32776
|
* @slot secondary - Content is placed to the left of the toolbar text in `ios` mode, and directly to the right in `md` mode.
|
|
33015
32777
|
* @slot primary - Content is placed to the right of the toolbar text in `ios` mode, and to the far right in `md` mode.
|
|
33016
32778
|
* @slot end - Content is placed to the right of the toolbar text in LTR, and to the left in RTL.
|
|
33017
|
-
*
|
|
33018
|
-
* @part background - The background of the toolbar, covering the entire area behind the toolbar content.
|
|
33019
|
-
* @part container - The container that wraps all toolbar content, including the default slot and named slot content.
|
|
33020
|
-
* @part content - The container for the default slot, wrapping content provided without a named slot.
|
|
33021
32779
|
*/
|
|
33022
32780
|
class Toolbar {
|
|
33023
32781
|
constructor(hostRef) {
|
|
@@ -33068,10 +32826,10 @@ class Toolbar {
|
|
|
33068
32826
|
this.childrenStyles.forEach((value) => {
|
|
33069
32827
|
Object.assign(childStyles, value);
|
|
33070
32828
|
});
|
|
33071
|
-
return (hAsync(Host, { key: '
|
|
32829
|
+
return (hAsync(Host, { key: '462538a5ecd01baf3cde116c9f029aeda26c81be', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
|
|
33072
32830
|
[mode]: true,
|
|
33073
32831
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
33074
|
-
})) }, hAsync("div", { key: '
|
|
32832
|
+
})) }, hAsync("div", { key: 'c0b4415d3b2472de643a9be7cb3b13b3b628621b', class: "toolbar-background" }), hAsync("div", { key: '0ccb8a2dbeaa28d8f9bed87629c0c097446690c2', class: "toolbar-container" }, hAsync("slot", { key: '3e726dac359e923df21d80301651f16063a3de20', name: "start" }), hAsync("slot", { key: 'cd799330b56a7f8833bc61bb2807aafb21846f71', name: "secondary" }), hAsync("div", { key: '395282e6ac8c53576922dcdb5f08c25d34638c86', class: "toolbar-content" }, hAsync("slot", { key: 'a437c60e4ba5aae65e55169ae82a6f379868ec1d' })), hAsync("slot", { key: '711af9b9d321a7b31ede924c9bdcad767aa9a1ca', name: "primary" }), hAsync("slot", { key: 'ecc02edeaf80a837890bcb08d5096df1e22a0b9a', name: "end" }))));
|
|
33075
32833
|
}
|
|
33076
32834
|
get el() { return getElement(this); }
|
|
33077
32835
|
static get style() { return {
|