@ionic/core 8.4.4-dev.11738863153.1dafb0b9 → 8.4.4-nightly.20250131
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/content.js +4 -4
- 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 -2
- package/components/ion-tabs.js +1 -2
- package/components/ion-toggle.js +4 -6
- package/components/modal.js +35 -259
- 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 +11 -11
- 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-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 +3 -4
- 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/content/content.js +4 -4
- 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/select/select.js +4 -23
- package/dist/collection/components/tab/tab.js +2 -2
- package/dist/collection/components/tab-button/tab-button.js +1 -1
- package/dist/collection/components/tabs/tabs.js +1 -2
- 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 +11 -11
- 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-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 +3 -4
- 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-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-19a5be0a.entry.js +4 -0
- package/dist/ionic/{p-fceec762.entry.js → p-19ec4f42.entry.js} +1 -1
- 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-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-ddaa748a.system.entry.js +4 -0
- 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 +60 -301
- package/hydrate/index.mjs +60 -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-0430c2e0.entry.js +0 -4
- package/dist/ionic/p-126be614.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-722ec9c7.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-98e41e4f.system.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-d57a57d6.entry.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,
|
|
@@ -9109,20 +9101,20 @@ class Content {
|
|
|
9109
9101
|
const forceOverscroll = this.shouldForceOverscroll();
|
|
9110
9102
|
const transitionShadow = mode === 'ios';
|
|
9111
9103
|
this.resize();
|
|
9112
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
9104
|
+
return (hAsync(Host, Object.assign({ key: 'f2a24aa66dbf5c76f9d4b06f708eb73cadc239df', role: isMainContent ? 'main' : undefined, class: createColorClasses$1(this.color, {
|
|
9113
9105
|
[mode]: true,
|
|
9114
9106
|
'content-sizing': hostContext('ion-popover', this.el),
|
|
9115
9107
|
overscroll: forceOverscroll,
|
|
9116
9108
|
[`content-${rtl}`]: true,
|
|
9117
|
-
}),
|
|
9109
|
+
}), style: {
|
|
9118
9110
|
'--offset-top': `${this.cTop}px`,
|
|
9119
9111
|
'--offset-bottom': `${this.cBottom}px`,
|
|
9120
|
-
} }, inheritedAttributes), hAsync("div", { key: '
|
|
9112
|
+
} }, inheritedAttributes), hAsync("div", { key: '6480ca7648b278abb36477b3838bccbcd4995e2a', ref: (el) => (this.backgroundContentEl = el), id: "background-content", part: "background" }), fixedSlotPlacement === 'before' ? hAsync("slot", { name: "fixed" }) : null, hAsync("div", { key: '29a23b663f5f0215bb000820c01e1814c0d55985', class: {
|
|
9121
9113
|
'inner-scroll': true,
|
|
9122
9114
|
'scroll-x': scrollX,
|
|
9123
9115
|
'scroll-y': scrollY,
|
|
9124
9116
|
overscroll: (scrollX || scrollY) && forceOverscroll,
|
|
9125
|
-
}, ref: (scrollEl) => (this.scrollEl = scrollEl), onScroll: this.scrollEvents ? (ev) => this.onScroll(ev) : undefined, part: "scroll" }, hAsync("slot", { key: '
|
|
9117
|
+
}, ref: (scrollEl) => (this.scrollEl = scrollEl), onScroll: this.scrollEvents ? (ev) => this.onScroll(ev) : undefined, part: "scroll" }, hAsync("slot", { key: '0fe1bd05609a4b88ae2ce9addf5d5dc5dc1806f0' })), transitionShadow ? (hAsync("div", { class: "transition-effect" }, hAsync("div", { class: "transition-cover" }), hAsync("div", { class: "transition-shadow" }))) : null, fixedSlotPlacement === 'after' ? hAsync("slot", { name: "fixed" }) : null));
|
|
9126
9118
|
}
|
|
9127
9119
|
get el() { return getElement(this); }
|
|
9128
9120
|
static get style() { return IonContentStyle0; }
|
|
@@ -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],
|
|
@@ -29889,7 +29657,6 @@ class Select {
|
|
|
29889
29657
|
this.expandedIcon = undefined;
|
|
29890
29658
|
this.shape = undefined;
|
|
29891
29659
|
this.value = undefined;
|
|
29892
|
-
this.required = false;
|
|
29893
29660
|
}
|
|
29894
29661
|
styleChanged() {
|
|
29895
29662
|
this.emitStyle();
|
|
@@ -30374,8 +30141,8 @@ class Select {
|
|
|
30374
30141
|
return renderedLabel;
|
|
30375
30142
|
}
|
|
30376
30143
|
renderListbox() {
|
|
30377
|
-
const { disabled, inputId, isExpanded
|
|
30378
|
-
return (hAsync("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`,
|
|
30144
|
+
const { disabled, inputId, isExpanded } = this;
|
|
30145
|
+
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
30146
|
}
|
|
30380
30147
|
render() {
|
|
30381
30148
|
const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value } = this;
|
|
@@ -30406,7 +30173,7 @@ class Select {
|
|
|
30406
30173
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
30407
30174
|
*/
|
|
30408
30175
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
|
|
30409
|
-
return (hAsync(Host, { key: '
|
|
30176
|
+
return (hAsync(Host, { key: '144dfa5c49549a74fe516c65b9b8104a477ac789', onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
30410
30177
|
[mode]: true,
|
|
30411
30178
|
'in-item': inItem,
|
|
30412
30179
|
'in-item-color': hostContext('ion-item.ion-color', el),
|
|
@@ -30422,7 +30189,7 @@ class Select {
|
|
|
30422
30189
|
[`select-justify-${justify}`]: justifyEnabled,
|
|
30423
30190
|
[`select-shape-${shape}`]: shape !== undefined,
|
|
30424
30191
|
[`select-label-placement-${labelPlacement}`]: true,
|
|
30425
|
-
}) }, hAsync("label", { key: '
|
|
30192
|
+
}) }, 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
30193
|
}
|
|
30427
30194
|
get el() { return getElement(this); }
|
|
30428
30195
|
static get watchers() { return {
|
|
@@ -30458,7 +30225,6 @@ class Select {
|
|
|
30458
30225
|
"expandedIcon": [1, "expanded-icon"],
|
|
30459
30226
|
"shape": [1],
|
|
30460
30227
|
"value": [1032],
|
|
30461
|
-
"required": [4],
|
|
30462
30228
|
"isExpanded": [32],
|
|
30463
30229
|
"open": [64]
|
|
30464
30230
|
},
|
|
@@ -31015,10 +30781,10 @@ class Tab {
|
|
|
31015
30781
|
}
|
|
31016
30782
|
render() {
|
|
31017
30783
|
const { tab, active, component } = this;
|
|
31018
|
-
return (hAsync(Host, { key: '
|
|
30784
|
+
return (hAsync(Host, { key: 'cb75d0877979b3b8df8f7e1952bfa9677da1eaa5', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
|
|
31019
30785
|
'ion-page': component === undefined,
|
|
31020
30786
|
'tab-hidden': !active,
|
|
31021
|
-
} }, hAsync("slot", { key: '
|
|
30787
|
+
} }, hAsync("slot", { key: '37fbb7b7a6b03eb93b1dacd2dc1025b78eb2aa6b' })));
|
|
31022
30788
|
}
|
|
31023
30789
|
get el() { return getElement(this); }
|
|
31024
30790
|
static get watchers() { return {
|
|
@@ -31210,7 +30976,7 @@ class TabButton {
|
|
|
31210
30976
|
'ion-activatable': true,
|
|
31211
30977
|
'ion-selectable': true,
|
|
31212
30978
|
'ion-focusable': true,
|
|
31213
|
-
} }, hAsync("a", Object.assign({ key: '
|
|
30979
|
+
} }, 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" }))));
|
|
31214
30980
|
}
|
|
31215
30981
|
get el() { return getElement(this); }
|
|
31216
30982
|
static get style() { return {
|
|
@@ -31252,7 +31018,6 @@ class Tabs {
|
|
|
31252
31018
|
this.ionTabsDidChange = createEvent(this, "ionTabsDidChange", 3);
|
|
31253
31019
|
this.transitioning = false;
|
|
31254
31020
|
this.onTabClicked = (ev) => {
|
|
31255
|
-
console.log("onTabClicked");
|
|
31256
31021
|
const { href, tab } = ev.detail;
|
|
31257
31022
|
if (this.useRouter && href !== undefined) {
|
|
31258
31023
|
const router = document.querySelector('ion-router');
|
|
@@ -31387,7 +31152,7 @@ class Tabs {
|
|
|
31387
31152
|
return Array.from(this.el.querySelectorAll('ion-tab'));
|
|
31388
31153
|
}
|
|
31389
31154
|
render() {
|
|
31390
|
-
return (hAsync(Host, { key: '
|
|
31155
|
+
return (hAsync(Host, { key: 'e01ccf6bfaccad094515be50e407399c733fc226', onIonTabButtonClick: this.onTabClicked }, hAsync("slot", { key: '38d2d01dbfd8a08f01e6f0e27274b21d75424e37', name: "top" }), hAsync("div", { key: '7e894f0f423e2d43e1c68daff5f9f6c442fad237', class: "tabs-inner" }, hAsync("slot", { key: 'df16be529a0370a26d0adf850530b31607507c23' })), hAsync("slot", { key: '44642e1cb24c3281c43db75fd69a32fe0defe40a', name: "bottom" })));
|
|
31391
31156
|
}
|
|
31392
31157
|
get el() { return getElement(this); }
|
|
31393
31158
|
static get style() { return IonTabsStyle0; }
|
|
@@ -32856,7 +32621,6 @@ class Toggle {
|
|
|
32856
32621
|
this.labelPlacement = 'start';
|
|
32857
32622
|
this.justify = undefined;
|
|
32858
32623
|
this.alignment = undefined;
|
|
32859
|
-
this.required = false;
|
|
32860
32624
|
}
|
|
32861
32625
|
disabledChanged() {
|
|
32862
32626
|
if (this.gesture) {
|
|
@@ -32938,12 +32702,12 @@ class Toggle {
|
|
|
32938
32702
|
return this.el.textContent !== '';
|
|
32939
32703
|
}
|
|
32940
32704
|
render() {
|
|
32941
|
-
const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment
|
|
32705
|
+
const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment } = this;
|
|
32942
32706
|
const mode = getIonMode$1(this);
|
|
32943
32707
|
const value = this.getValue();
|
|
32944
32708
|
const rtl = isRTL$1(el) ? 'rtl' : 'ltr';
|
|
32945
32709
|
renderHiddenInput(true, el, name, checked ? value : '', disabled);
|
|
32946
|
-
return (hAsync(Host, { key: '
|
|
32710
|
+
return (hAsync(Host, { key: 'f52195ec3bc14c024647cb41319c32a4cd330e19', onClick: this.onClick, class: createColorClasses$1(color, {
|
|
32947
32711
|
[mode]: true,
|
|
32948
32712
|
'in-item': hostContext('ion-item', el),
|
|
32949
32713
|
'toggle-activated': activated,
|
|
@@ -32953,10 +32717,10 @@ class Toggle {
|
|
|
32953
32717
|
[`toggle-alignment-${alignment}`]: alignment !== undefined,
|
|
32954
32718
|
[`toggle-label-placement-${labelPlacement}`]: true,
|
|
32955
32719
|
[`toggle-${rtl}`]: true,
|
|
32956
|
-
}) }, hAsync("label", { key: '
|
|
32720
|
+
}) }, 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: {
|
|
32957
32721
|
'label-text-wrapper': true,
|
|
32958
32722
|
'label-text-wrapper-hidden': !this.hasLabel,
|
|
32959
|
-
}, part: "label" }, hAsync("slot", { key: '
|
|
32723
|
+
}, part: "label" }, hAsync("slot", { key: '80a6672e2e792c15011a9496dcd75363cdba31c6' })), hAsync("div", { key: '2b2b318b38ab27b194c0dab4cecd77d9d780f2ca', class: "native-wrapper" }, this.renderToggleControl()))));
|
|
32960
32724
|
}
|
|
32961
32725
|
get el() { return getElement(this); }
|
|
32962
32726
|
static get watchers() { return {
|
|
@@ -32979,7 +32743,6 @@ class Toggle {
|
|
|
32979
32743
|
"labelPlacement": [1, "label-placement"],
|
|
32980
32744
|
"justify": [1],
|
|
32981
32745
|
"alignment": [1],
|
|
32982
|
-
"required": [4],
|
|
32983
32746
|
"activated": [32]
|
|
32984
32747
|
},
|
|
32985
32748
|
"$listeners$": undefined,
|
|
@@ -33011,10 +32774,6 @@ var IonToolbarMdStyle0 = toolbarMdCss;
|
|
|
33011
32774
|
* @slot secondary - Content is placed to the left of the toolbar text in `ios` mode, and directly to the right in `md` mode.
|
|
33012
32775
|
* @slot primary - Content is placed to the right of the toolbar text in `ios` mode, and to the far right in `md` mode.
|
|
33013
32776
|
* @slot end - Content is placed to the right of the toolbar text in LTR, and to the left in RTL.
|
|
33014
|
-
*
|
|
33015
|
-
* @part background - The background of the toolbar, covering the entire area behind the toolbar content.
|
|
33016
|
-
* @part container - The container that wraps all toolbar content, including the default slot and named slot content.
|
|
33017
|
-
* @part content - The container for the default slot, wrapping content provided without a named slot.
|
|
33018
32777
|
*/
|
|
33019
32778
|
class Toolbar {
|
|
33020
32779
|
constructor(hostRef) {
|
|
@@ -33065,10 +32824,10 @@ class Toolbar {
|
|
|
33065
32824
|
this.childrenStyles.forEach((value) => {
|
|
33066
32825
|
Object.assign(childStyles, value);
|
|
33067
32826
|
});
|
|
33068
|
-
return (hAsync(Host, { key: '
|
|
32827
|
+
return (hAsync(Host, { key: '462538a5ecd01baf3cde116c9f029aeda26c81be', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
|
|
33069
32828
|
[mode]: true,
|
|
33070
32829
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
33071
|
-
})) }, hAsync("div", { key: '
|
|
32830
|
+
})) }, 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" }))));
|
|
33072
32831
|
}
|
|
33073
32832
|
get el() { return getElement(this); }
|
|
33074
32833
|
static get style() { return {
|