@ionic/core 8.4.4-dev.11741027468.1f4941f2 → 8.4.4-dev.11741032668.18899f9b
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 +14 -43
- package/components/ion-toggle.js +4 -6
- package/components/ionic-global.js +2 -1
- 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/{app-globals-21afee77.js → app-globals-4283fe37.js} +1 -1
- package/dist/cjs/{data-108e531d.js → data-21dc0f81.js} +1 -1
- package/dist/cjs/{hardware-back-button-9e8a2c4f.js → hardware-back-button-f2cbbdce.js} +1 -1
- package/dist/cjs/{index-2a46a047.js → index-5915f9b3.js} +3 -11
- package/dist/cjs/{index-26bb7e42.js → index-90ec3b6c.js} +4 -4
- package/dist/cjs/{index-0ff61d0b.js → index-9c6c9e9c.js} +3 -3
- package/dist/cjs/{index-6770fc00.js → index-c441c903.js} +1 -1
- package/dist/cjs/index.cjs.js +8 -8
- package/dist/cjs/{input-shims-fd997b01.js → input-shims-e748a364.js} +2 -4
- package/dist/cjs/{input.utils-c15a1814.js → input.utils-74e4ec28.js} +1 -1
- package/dist/cjs/ion-accordion_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-action-sheet.cjs.entry.js +4 -4
- package/dist/cjs/ion-alert.cjs.entry.js +4 -4
- package/dist/cjs/ion-app_8.cjs.entry.js +10 -10
- package/dist/cjs/ion-avatar_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-back-button.cjs.entry.js +1 -1
- package/dist/cjs/ion-backdrop.cjs.entry.js +1 -1
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-button_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-card_5.cjs.entry.js +1 -1
- package/dist/cjs/ion-checkbox.cjs.entry.js +5 -6
- package/dist/cjs/ion-chip.cjs.entry.js +1 -1
- package/dist/cjs/ion-col_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-datetime-button.cjs.entry.js +3 -3
- package/dist/cjs/ion-datetime_3.cjs.entry.js +5 -5
- package/dist/cjs/ion-fab_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-img.cjs.entry.js +1 -1
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +2 -2
- package/dist/cjs/ion-input.cjs.entry.js +3 -3
- package/dist/cjs/ion-item-option_3.cjs.entry.js +3 -3
- package/dist/cjs/ion-item_8.cjs.entry.js +1 -1
- package/dist/cjs/ion-loading.cjs.entry.js +4 -4
- package/dist/cjs/ion-menu_3.cjs.entry.js +5 -5
- package/dist/cjs/ion-modal.cjs.entry.js +41 -264
- package/dist/cjs/ion-nav_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +1 -1
- package/dist/cjs/ion-picker-column.cjs.entry.js +1 -1
- package/dist/cjs/ion-popover.cjs.entry.js +5 -5
- package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
- package/dist/cjs/ion-radio_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-range.cjs.entry.js +3 -3
- package/dist/cjs/ion-refresher_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-reorder_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +1 -1
- package/dist/cjs/ion-route_4.cjs.entry.js +1 -1
- package/dist/cjs/ion-searchbar.cjs.entry.js +1 -1
- package/dist/cjs/ion-segment_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-select-modal.cjs.entry.js +4 -4
- package/dist/cjs/ion-select_3.cjs.entry.js +17 -45
- package/dist/cjs/ion-spinner.cjs.entry.js +1 -1
- package/dist/cjs/ion-split-pane.cjs.entry.js +1 -1
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-text.cjs.entry.js +1 -1
- package/dist/cjs/ion-textarea.cjs.entry.js +3 -3
- package/dist/cjs/ion-toast.cjs.entry.js +4 -4
- package/dist/cjs/ion-toggle.cjs.entry.js +5 -6
- package/dist/cjs/{ionic-global-d9a8bb5b.js → ionic-global-96da1b2e.js} +2 -1
- package/dist/cjs/ionic.cjs.js +3 -3
- package/dist/cjs/{ios.transition-a4f35c55.js → ios.transition-2dae3b92.js} +3 -3
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/cjs/{md.transition-cdf904e6.js → md.transition-ea3260a7.js} +3 -3
- package/dist/cjs/{overlays-86695cf1.js → overlays-3880b5b5.js} +3 -3
- package/dist/cjs/{status-tap-1a2485c1.js → status-tap-fb807fad.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/select/select.js +13 -59
- 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/collection/utils/platform.js +2 -1
- package/dist/collection/utils/test/platform.utils.js +1 -1
- package/dist/docs.json +2 -115
- package/dist/esm/{app-globals-5dbb61a5.js → app-globals-c10a1137.js} +1 -1
- package/dist/esm/{data-b3284b5e.js → data-ae11fd43.js} +1 -1
- package/dist/esm/{hardware-back-button-06ef3c3e.js → hardware-back-button-44195e92.js} +1 -1
- package/dist/esm/{index-dd0f7395.js → index-33f7e3ff.js} +1 -1
- package/dist/esm/{index-6ad967f3.js → index-9b0d46f4.js} +3 -11
- package/dist/esm/{index-6a5baab0.js → index-b019fc18.js} +4 -4
- package/dist/esm/{index-7105cd59.js → index-e1e9a0d3.js} +3 -3
- package/dist/esm/index.js +8 -8
- package/dist/esm/{input-shims-dff819a9.js → input-shims-0e65111b.js} +2 -4
- package/dist/esm/{input.utils-2f1029cf.js → input.utils-1ad8dafc.js} +1 -1
- package/dist/esm/ion-accordion_2.entry.js +2 -2
- package/dist/esm/ion-action-sheet.entry.js +4 -4
- package/dist/esm/ion-alert.entry.js +4 -4
- package/dist/esm/ion-app_8.entry.js +10 -10
- package/dist/esm/ion-avatar_3.entry.js +1 -1
- package/dist/esm/ion-back-button.entry.js +1 -1
- package/dist/esm/ion-backdrop.entry.js +1 -1
- package/dist/esm/ion-breadcrumb_2.entry.js +1 -1
- package/dist/esm/ion-button_2.entry.js +2 -2
- package/dist/esm/ion-card_5.entry.js +1 -1
- package/dist/esm/ion-checkbox.entry.js +5 -6
- package/dist/esm/ion-chip.entry.js +1 -1
- package/dist/esm/ion-col_3.entry.js +1 -1
- package/dist/esm/ion-datetime-button.entry.js +3 -3
- package/dist/esm/ion-datetime_3.entry.js +5 -5
- package/dist/esm/ion-fab_3.entry.js +1 -1
- package/dist/esm/ion-img.entry.js +1 -1
- package/dist/esm/ion-infinite-scroll_2.entry.js +3 -3
- package/dist/esm/ion-input-password-toggle.entry.js +2 -2
- package/dist/esm/ion-input.entry.js +3 -3
- package/dist/esm/ion-item-option_3.entry.js +3 -3
- package/dist/esm/ion-item_8.entry.js +1 -1
- package/dist/esm/ion-loading.entry.js +4 -4
- package/dist/esm/ion-menu_3.entry.js +5 -5
- package/dist/esm/ion-modal.entry.js +41 -264
- package/dist/esm/ion-nav_2.entry.js +3 -3
- package/dist/esm/ion-picker-column-option.entry.js +1 -1
- package/dist/esm/ion-picker-column.entry.js +1 -1
- package/dist/esm/ion-popover.entry.js +5 -5
- package/dist/esm/ion-progress-bar.entry.js +1 -1
- package/dist/esm/ion-radio_2.entry.js +1 -1
- package/dist/esm/ion-range.entry.js +3 -3
- package/dist/esm/ion-refresher_2.entry.js +3 -3
- package/dist/esm/ion-reorder_2.entry.js +3 -3
- package/dist/esm/ion-ripple-effect.entry.js +1 -1
- package/dist/esm/ion-route_4.entry.js +1 -1
- package/dist/esm/ion-searchbar.entry.js +1 -1
- package/dist/esm/ion-segment_2.entry.js +1 -1
- package/dist/esm/ion-select-modal.entry.js +4 -4
- package/dist/esm/ion-select_3.entry.js +18 -46
- package/dist/esm/ion-spinner.entry.js +1 -1
- package/dist/esm/ion-split-pane.entry.js +1 -1
- package/dist/esm/ion-tab-bar_2.entry.js +1 -1
- package/dist/esm/ion-text.entry.js +1 -1
- package/dist/esm/ion-textarea.entry.js +3 -3
- package/dist/esm/ion-toast.entry.js +4 -4
- package/dist/esm/ion-toggle.entry.js +5 -6
- package/dist/esm/{ionic-global-c81d82ab.js → ionic-global-bf78a847.js} +2 -1
- package/dist/esm/ionic.js +3 -3
- package/dist/esm/{ios.transition-314468a2.js → ios.transition-b7103952.js} +3 -3
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{md.transition-a560e0e2.js → md.transition-e4034e0a.js} +3 -3
- package/dist/esm/{overlays-9a81f230.js → overlays-aea27b63.js} +3 -3
- package/dist/esm/{status-tap-d07dbc82.js → status-tap-163e8128.js} +2 -3
- package/dist/esm-es5/app-globals-c10a1137.js +4 -0
- package/dist/esm-es5/{data-b3284b5e.js → data-ae11fd43.js} +1 -1
- package/dist/esm-es5/{hardware-back-button-06ef3c3e.js → hardware-back-button-44195e92.js} +1 -1
- package/dist/esm-es5/{index-dd0f7395.js → index-33f7e3ff.js} +1 -1
- package/dist/esm-es5/index-9b0d46f4.js +4 -0
- package/dist/esm-es5/{index-6a5baab0.js → index-b019fc18.js} +1 -1
- package/dist/esm-es5/{index-7105cd59.js → index-e1e9a0d3.js} +1 -1
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/input-shims-0e65111b.js +4 -0
- package/dist/esm-es5/{input.utils-2f1029cf.js → input.utils-1ad8dafc.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-avatar_3.entry.js +1 -1
- package/dist/esm-es5/ion-back-button.entry.js +1 -1
- package/dist/esm-es5/ion-backdrop.entry.js +1 -1
- package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
- package/dist/esm-es5/ion-button_2.entry.js +1 -1
- package/dist/esm-es5/ion-card_5.entry.js +1 -1
- package/dist/esm-es5/ion-checkbox.entry.js +1 -1
- package/dist/esm-es5/ion-chip.entry.js +1 -1
- package/dist/esm-es5/ion-col_3.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-fab_3.entry.js +1 -1
- package/dist/esm-es5/ion-img.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-item_8.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-picker-column-option.entry.js +1 -1
- package/dist/esm-es5/ion-picker-column.entry.js +1 -1
- package/dist/esm-es5/ion-popover.entry.js +1 -1
- package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
- package/dist/esm-es5/ion-radio_2.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-route_4.entry.js +1 -1
- package/dist/esm-es5/ion-searchbar.entry.js +1 -1
- package/dist/esm-es5/ion-segment_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-spinner.entry.js +1 -1
- package/dist/esm-es5/ion-split-pane.entry.js +1 -1
- package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
- package/dist/esm-es5/ion-text.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-global-c81d82ab.js → ionic-global-bf78a847.js} +1 -1
- package/dist/esm-es5/ionic.js +1 -1
- package/dist/esm-es5/{ios.transition-314468a2.js → ios.transition-b7103952.js} +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/{md.transition-a560e0e2.js → md.transition-e4034e0a.js} +1 -1
- package/dist/esm-es5/{overlays-9a81f230.js → overlays-aea27b63.js} +1 -1
- package/dist/esm-es5/status-tap-163e8128.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/ionic.js +1 -1
- package/dist/ionic/{p-5b932840.entry.js → p-026517fb.entry.js} +1 -1
- package/dist/ionic/{p-e8f34871.entry.js → p-035c0885.entry.js} +1 -1
- package/dist/ionic/p-0440660b.js +4 -0
- package/dist/ionic/p-06fee233.js +4 -0
- package/dist/ionic/p-075a94bd.js +4 -0
- package/dist/ionic/{p-c935cfc9.js → p-0a499487.js} +1 -1
- package/dist/ionic/{p-484d855b.system.entry.js → p-0d0a6fb9.system.entry.js} +2 -2
- package/dist/ionic/{p-d7bb5325.entry.js → p-0dc23518.entry.js} +1 -1
- package/dist/ionic/p-0ee3b5a2.system.js +4 -0
- package/dist/ionic/{p-155c2bb0.entry.js → p-13052792.entry.js} +1 -1
- package/dist/ionic/p-135e5731.js +4 -0
- package/dist/ionic/{p-84d08aae.system.entry.js → p-13892787.system.entry.js} +1 -1
- package/dist/ionic/{p-92365bc1.system.entry.js → p-1543d6b2.system.entry.js} +1 -1
- package/dist/ionic/{p-f301a694.system.entry.js → p-16f1ba65.system.entry.js} +1 -1
- package/dist/ionic/{p-578efda4.system.js → p-1a790eef.system.js} +2 -2
- package/dist/ionic/{p-63c09585.system.entry.js → p-1c2f74e4.system.entry.js} +1 -1
- package/dist/ionic/{p-c32644d7.entry.js → p-200dfb8f.entry.js} +1 -1
- package/dist/ionic/{p-65346408.system.entry.js → p-22e4210e.system.entry.js} +1 -1
- package/dist/ionic/{p-fca17935.entry.js → p-288a2cff.entry.js} +1 -1
- package/dist/ionic/{p-10327ad2.system.entry.js → p-28cb707b.system.entry.js} +1 -1
- package/dist/ionic/{p-bc616455.entry.js → p-2c9abc61.entry.js} +1 -1
- package/dist/ionic/p-30ec5574.entry.js +4 -0
- package/dist/ionic/p-3667bc71.system.js +4 -0
- package/dist/ionic/{p-a9e24ae2.system.entry.js → p-3c6d2c1e.system.entry.js} +1 -1
- package/dist/ionic/p-3c7371c4.system.entry.js +4 -0
- package/dist/ionic/{p-9b3bb24e.entry.js → p-406f9aa1.entry.js} +1 -1
- package/dist/ionic/{p-da8ef548.system.entry.js → p-42585688.system.entry.js} +1 -1
- package/dist/ionic/{p-39dd4f62.js → p-42808996.js} +1 -1
- package/dist/ionic/{p-afecb188.entry.js → p-42a9bb35.entry.js} +1 -1
- package/dist/ionic/{p-f3102647.system.entry.js → p-478dfa8c.system.entry.js} +1 -1
- package/dist/ionic/{p-346b2baf.js → p-47e6c342.js} +1 -1
- package/dist/ionic/{p-af744710.system.entry.js → p-4a465405.system.entry.js} +2 -2
- package/dist/ionic/{p-f89cf011.system.entry.js → p-4c9ccc7f.system.entry.js} +1 -1
- package/dist/ionic/p-4e8946f7.js +4 -0
- package/dist/ionic/{p-2abae1cc.system.entry.js → p-4eed0eb2.system.entry.js} +1 -1
- package/dist/ionic/{p-9962f63f.entry.js → p-4f2f4e3b.entry.js} +1 -1
- package/dist/ionic/{p-d821466d.system.entry.js → p-50c24ade.system.entry.js} +1 -1
- package/dist/ionic/p-51f13ac7.entry.js +4 -0
- package/dist/ionic/{p-95775830.entry.js → p-56a8aa85.entry.js} +1 -1
- package/dist/ionic/{p-f56752be.system.entry.js → p-5976e3b7.system.entry.js} +1 -1
- package/dist/ionic/{p-f78af648.system.entry.js → p-5a8efe64.system.entry.js} +1 -1
- package/dist/ionic/{p-5882bffa.system.entry.js → p-5b03d498.system.entry.js} +1 -1
- package/dist/ionic/{p-36c448fe.entry.js → p-5b867a40.entry.js} +1 -1
- package/dist/ionic/{p-5fe8b767.entry.js → p-5bc12439.entry.js} +1 -1
- package/dist/ionic/{p-70af0afb.entry.js → p-60f1b2fa.entry.js} +1 -1
- package/dist/ionic/p-6167f80e.entry.js +4 -0
- package/dist/ionic/p-627c1f42.entry.js +4 -0
- package/dist/ionic/{p-d99e8644.system.js → p-647b0625.system.js} +1 -1
- package/dist/ionic/{p-02e23f26.entry.js → p-656516a2.entry.js} +1 -1
- package/dist/ionic/p-68dc53a5.js +4 -0
- package/dist/ionic/p-699c97a3.entry.js +4 -0
- package/dist/ionic/{p-7b98cebe.entry.js → p-6b1f082e.entry.js} +1 -1
- package/dist/ionic/p-6bc9998f.entry.js +4 -0
- package/dist/ionic/{p-ecceeb90.js → p-6f3d8334.js} +1 -1
- package/dist/ionic/{p-76446a85.entry.js → p-703d60a2.entry.js} +1 -1
- package/dist/ionic/{p-fca6ef5f.system.entry.js → p-712b57f9.system.entry.js} +1 -1
- package/dist/ionic/{p-955c3eb8.entry.js → p-72b65035.entry.js} +1 -1
- package/dist/ionic/{p-acc8399c.system.entry.js → p-75a0fffe.system.entry.js} +2 -2
- package/dist/ionic/{p-e32557bb.system.entry.js → p-77b1bb00.system.entry.js} +1 -1
- package/dist/ionic/{p-dc146a2a.system.entry.js → p-808c9efc.system.entry.js} +1 -1
- package/dist/ionic/{p-eeb5cb45.system.entry.js → p-8154947f.system.entry.js} +1 -1
- package/dist/ionic/{p-8cfba7e9.system.entry.js → p-830f1a37.system.entry.js} +1 -1
- package/dist/ionic/{p-0bfffa34.system.entry.js → p-842bb3c8.system.entry.js} +1 -1
- package/dist/ionic/{p-41780810.entry.js → p-85632b54.entry.js} +1 -1
- package/dist/ionic/{p-62af944c.entry.js → p-85b1ffae.entry.js} +1 -1
- package/dist/ionic/{p-af452fa4.system.js → p-881d9e52.system.js} +1 -1
- package/dist/ionic/{p-3c8e5c23.system.js → p-8911101b.system.js} +1 -1
- package/dist/ionic/{p-990630ca.js → p-8db44ad3.js} +1 -1
- package/dist/ionic/{p-77e7b7b6.system.entry.js → p-9065e1ed.system.entry.js} +1 -1
- package/dist/ionic/{p-2ef3c7ee.system.entry.js → p-92e4df0c.system.entry.js} +1 -1
- package/dist/ionic/{p-655723eb.system.entry.js → p-9393bfbe.system.entry.js} +1 -1
- package/dist/ionic/{p-a584c79d.system.entry.js → p-944d66b5.system.entry.js} +1 -1
- package/dist/ionic/{p-acb30a5c.system.js → p-97acff20.system.js} +1 -1
- package/dist/ionic/{p-97a65908.entry.js → p-98c08d09.entry.js} +1 -1
- package/dist/ionic/{p-5fce0c0b.system.entry.js → p-9c7efe25.system.entry.js} +1 -1
- package/dist/ionic/{p-d1172fe3.system.entry.js → p-9c82a07c.system.entry.js} +1 -1
- package/dist/ionic/{p-93e3654c.system.entry.js → p-9ce56f65.system.entry.js} +1 -1
- package/dist/ionic/{p-bdad26e3.entry.js → p-9d4a8059.entry.js} +1 -1
- package/dist/ionic/{p-a5b31c0f.entry.js → p-9fe2050a.entry.js} +1 -1
- package/dist/ionic/{p-2515cb4d.system.entry.js → p-a197ff3b.system.entry.js} +1 -1
- package/dist/ionic/{p-9de5c787.entry.js → p-a33837c9.entry.js} +1 -1
- package/dist/ionic/{p-e5849f8d.entry.js → p-a3705e10.entry.js} +1 -1
- package/dist/ionic/{p-2507278c.system.entry.js → p-a873feda.system.entry.js} +1 -1
- package/dist/ionic/{p-73897169.system.js → p-aa63b365.system.js} +1 -1
- package/dist/ionic/{p-fec13c57.entry.js → p-acc78e36.entry.js} +1 -1
- package/dist/ionic/{p-c8d645b3.entry.js → p-b5639a4f.entry.js} +1 -1
- package/dist/ionic/{p-037fc3f3.entry.js → p-b609d03b.entry.js} +1 -1
- package/dist/ionic/{p-70ccc275.system.entry.js → p-b637aa3f.system.entry.js} +1 -1
- package/dist/ionic/{p-bb2a6761.entry.js → p-b7d2ba68.entry.js} +1 -1
- package/dist/ionic/{p-80c6d619.entry.js → p-bed40aa8.entry.js} +1 -1
- package/dist/ionic/{p-155f4d90.entry.js → p-c15a77e2.entry.js} +1 -1
- package/dist/ionic/{p-6d32975a.entry.js → p-c2583512.entry.js} +1 -1
- package/dist/ionic/{p-efbf5af5.system.entry.js → p-c3f4ea6c.system.entry.js} +1 -1
- package/dist/ionic/{p-265939f0.entry.js → p-c3f5dcf9.entry.js} +1 -1
- package/dist/ionic/p-c42a4dad.system.entry.js +4 -0
- package/dist/ionic/{p-33a8a71b.entry.js → p-c66604e4.entry.js} +1 -1
- package/dist/ionic/{p-058e61eb.system.js → p-c6ff3239.system.js} +1 -1
- package/dist/ionic/{p-4d413973.system.entry.js → p-ca908a50.system.entry.js} +1 -1
- package/dist/ionic/{p-fbf86e62.system.js → p-cc964e4f.system.js} +1 -1
- package/dist/ionic/{p-5010643d.system.entry.js → p-d0a7f584.system.entry.js} +1 -1
- package/dist/ionic/{p-7ae680ba.system.entry.js → p-d17f0dca.system.entry.js} +1 -1
- package/dist/ionic/{p-7458862e.system.entry.js → p-d4896d36.system.entry.js} +1 -1
- package/dist/ionic/{p-1a5bc5f7.js → p-d60342e3.js} +1 -1
- package/dist/ionic/{p-ed75fcfb.system.entry.js → p-d7fef52e.system.entry.js} +1 -1
- package/dist/ionic/{p-a69b9fc5.system.js → p-d86d7845.system.js} +1 -1
- package/dist/ionic/{p-dd0c9350.system.entry.js → p-dcc9aaf1.system.entry.js} +1 -1
- package/dist/ionic/{p-6190d0d6.entry.js → p-dd0cad9c.entry.js} +1 -1
- package/dist/ionic/{p-56da53ad.system.entry.js → p-ddc058a7.system.entry.js} +1 -1
- package/dist/ionic/{p-d743e981.js → p-e25cd3c7.js} +1 -1
- package/dist/ionic/{p-df862603.entry.js → p-e3357909.entry.js} +1 -1
- package/dist/ionic/{p-179bf9d1.system.entry.js → p-e78bff37.system.entry.js} +1 -1
- package/dist/ionic/{p-18e101b7.system.entry.js → p-ea7c658c.system.entry.js} +2 -2
- package/dist/ionic/{p-9f3008d4.system.js → p-eb4ac14d.system.js} +1 -1
- package/dist/ionic/{p-4d3a5f86.js → p-eb599bcb.js} +1 -1
- package/dist/ionic/{p-72ec9a26.entry.js → p-eb6f173b.entry.js} +1 -1
- package/dist/ionic/{p-89bf08c7.entry.js → p-ebd0a280.entry.js} +1 -1
- package/dist/ionic/{p-31a6efce.system.entry.js → p-ef144104.system.entry.js} +1 -1
- package/dist/ionic/{p-2cbe5399.entry.js → p-f00ba947.entry.js} +1 -1
- package/dist/ionic/{p-8e407469.system.js → p-f1d1c614.system.js} +1 -1
- package/dist/ionic/p-f4f255cb.system.js +4 -0
- package/dist/ionic/{p-343b6b1d.system.js → p-f687573e.system.js} +1 -1
- package/dist/ionic/{p-f5d6624d.entry.js → p-faa5e2b9.entry.js} +1 -1
- package/dist/ionic/{p-8818edd8.entry.js → p-fd988d29.entry.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/dist/types/utils/test/platform.utils.d.ts +1 -1
- package/hydrate/index.js +63 -329
- package/hydrate/index.mjs +63 -329
- package/package.json +2 -2
- package/dist/esm-es5/app-globals-5dbb61a5.js +0 -4
- package/dist/esm-es5/index-6ad967f3.js +0 -4
- package/dist/esm-es5/input-shims-dff819a9.js +0 -4
- package/dist/esm-es5/status-tap-d07dbc82.js +0 -4
- package/dist/ionic/p-0574e87e.js +0 -4
- package/dist/ionic/p-16bfb979.system.entry.js +0 -4
- package/dist/ionic/p-21227121.js +0 -4
- package/dist/ionic/p-22149a4f.js +0 -4
- package/dist/ionic/p-322c5fb4.system.js +0 -4
- package/dist/ionic/p-34479cfb.entry.js +0 -4
- package/dist/ionic/p-3e99e3e0.entry.js +0 -4
- package/dist/ionic/p-42c9deb1.entry.js +0 -4
- package/dist/ionic/p-49a0e74c.entry.js +0 -4
- package/dist/ionic/p-52245809.js +0 -4
- package/dist/ionic/p-5c9324c6.js +0 -4
- package/dist/ionic/p-67222c16.system.js +0 -4
- package/dist/ionic/p-712fedc9.entry.js +0 -4
- package/dist/ionic/p-860eb968.system.js +0 -4
- package/dist/ionic/p-a18470c6.entry.js +0 -4
- package/dist/ionic/p-c3802319.system.js +0 -4
- package/dist/ionic/p-e8d56122.js +0 -4
- package/dist/ionic/p-f2613334.system.entry.js +0 -4
package/hydrate/index.mjs
CHANGED
|
@@ -2841,7 +2841,8 @@ const isHybrid = (win) => isCordova(win) || isCapacitorNative(win);
|
|
|
2841
2841
|
const isCordova = (win) => !!(win['cordova'] || win['phonegap'] || win['PhoneGap']);
|
|
2842
2842
|
const isCapacitorNative = (win) => {
|
|
2843
2843
|
const capacitor = win['Capacitor'];
|
|
2844
|
-
|
|
2844
|
+
// TODO(ROU-11693): Remove when we no longer support Capacitor 2, which does not have isNativePlatform
|
|
2845
|
+
return !!((capacitor === null || capacitor === void 0 ? void 0 : capacitor.isNative) || ((capacitor === null || capacitor === void 0 ? void 0 : capacitor.isNativePlatform) && !!capacitor.isNativePlatform()));
|
|
2845
2846
|
};
|
|
2846
2847
|
const isElectron = (win) => testUserAgent(win, /electron/i);
|
|
2847
2848
|
const isPWA = (win) => { var _a; return !!(((_a = win.matchMedia) === null || _a === void 0 ? void 0 : _a.call(win, '(display-mode: standalone)').matches) || win.navigator.standalone); };
|
|
@@ -3223,12 +3224,9 @@ let accordionIds = 0;
|
|
|
3223
3224
|
* @param message - The string message to be logged to the console.
|
|
3224
3225
|
*/
|
|
3225
3226
|
const printIonWarning = (message, ...params) => {
|
|
3226
|
-
|
|
3227
|
-
if (["WARN" /* LogLevel.WARN */].includes(logLevel)) {
|
|
3228
|
-
return console.warn(`[Ionic Warning]: ${message}`, ...params);
|
|
3229
|
-
}
|
|
3227
|
+
return console.warn(`[Ionic Warning]: ${message}`, ...params);
|
|
3230
3228
|
};
|
|
3231
|
-
|
|
3229
|
+
/*
|
|
3232
3230
|
* Logs an error to the console with an Ionic prefix
|
|
3233
3231
|
* to indicate the library that is warning the developer.
|
|
3234
3232
|
*
|
|
@@ -3236,10 +3234,7 @@ const printIonWarning = (message, ...params) => {
|
|
|
3236
3234
|
* @param params - Additional arguments to supply to the console.error.
|
|
3237
3235
|
*/
|
|
3238
3236
|
const printIonError = (message, ...params) => {
|
|
3239
|
-
|
|
3240
|
-
if (["ERROR" /* LogLevel.ERROR */, "WARN" /* LogLevel.WARN */].includes(logLevel)) {
|
|
3241
|
-
return console.error(`[Ionic Error]: ${message}`, ...params);
|
|
3242
|
-
}
|
|
3237
|
+
return console.error(`[Ionic Error]: ${message}`, ...params);
|
|
3243
3238
|
};
|
|
3244
3239
|
/**
|
|
3245
3240
|
* Prints an error informing developers that an implementation requires an element to be used
|
|
@@ -8503,7 +8498,6 @@ class Checkbox {
|
|
|
8503
8498
|
this.labelPlacement = 'start';
|
|
8504
8499
|
this.justify = undefined;
|
|
8505
8500
|
this.alignment = undefined;
|
|
8506
|
-
this.required = false;
|
|
8507
8501
|
}
|
|
8508
8502
|
componentWillLoad() {
|
|
8509
8503
|
this.inheritedAttributes = Object.assign({}, inheritAriaAttributes(this.el));
|
|
@@ -8515,11 +8509,11 @@ class Checkbox {
|
|
|
8515
8509
|
}
|
|
8516
8510
|
}
|
|
8517
8511
|
render() {
|
|
8518
|
-
const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment,
|
|
8512
|
+
const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment, } = this;
|
|
8519
8513
|
const mode = getIonMode$1(this);
|
|
8520
8514
|
const path = getSVGPath(mode, indeterminate);
|
|
8521
8515
|
renderHiddenInput(true, el, name, checked ? value : '', disabled);
|
|
8522
|
-
return (hAsync(Host, { key: '
|
|
8516
|
+
return (hAsync(Host, { key: '6dc787e1100521d08c4900104e1a3e2f594e919f', "aria-checked": indeterminate ? 'mixed' : `${checked}`, class: createColorClasses$1(color, {
|
|
8523
8517
|
[mode]: true,
|
|
8524
8518
|
'in-item': hostContext('ion-item', el),
|
|
8525
8519
|
'checkbox-checked': checked,
|
|
@@ -8529,10 +8523,10 @@ class Checkbox {
|
|
|
8529
8523
|
[`checkbox-justify-${justify}`]: justify !== undefined,
|
|
8530
8524
|
[`checkbox-alignment-${alignment}`]: alignment !== undefined,
|
|
8531
8525
|
[`checkbox-label-placement-${labelPlacement}`]: true,
|
|
8532
|
-
}), onClick: this.onClick }, hAsync("label", { key: '
|
|
8526
|
+
}), 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: {
|
|
8533
8527
|
'label-text-wrapper': true,
|
|
8534
8528
|
'label-text-wrapper-hidden': el.textContent === '',
|
|
8535
|
-
}, part: "label" }, hAsync("slot", { key: '
|
|
8529
|
+
}, 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)))));
|
|
8536
8530
|
}
|
|
8537
8531
|
getSVGPath(mode, indeterminate) {
|
|
8538
8532
|
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" }));
|
|
@@ -8559,7 +8553,6 @@ class Checkbox {
|
|
|
8559
8553
|
"labelPlacement": [1, "label-placement"],
|
|
8560
8554
|
"justify": [1],
|
|
8561
8555
|
"alignment": [1],
|
|
8562
|
-
"required": [4],
|
|
8563
8556
|
"setFocus": [64]
|
|
8564
8557
|
},
|
|
8565
8558
|
"$listeners$": undefined,
|
|
@@ -19035,7 +19028,7 @@ const computeDuration = (remaining, velocity) => {
|
|
|
19035
19028
|
};
|
|
19036
19029
|
|
|
19037
19030
|
const createSheetEnterAnimation = (opts) => {
|
|
19038
|
-
const { currentBreakpoint, backdropBreakpoint
|
|
19031
|
+
const { currentBreakpoint, backdropBreakpoint } = opts;
|
|
19039
19032
|
/**
|
|
19040
19033
|
* If the backdropBreakpoint is undefined, then the backdrop
|
|
19041
19034
|
* should always fade in. If the backdropBreakpoint came before the
|
|
@@ -19055,16 +19048,7 @@ const createSheetEnterAnimation = (opts) => {
|
|
|
19055
19048
|
{ offset: 0, opacity: 1, transform: 'translateY(100%)' },
|
|
19056
19049
|
{ offset: 1, opacity: 1, transform: `translateY(${100 - currentBreakpoint * 100}%)` },
|
|
19057
19050
|
]);
|
|
19058
|
-
|
|
19059
|
-
* This allows the content to be scrollable at any breakpoint.
|
|
19060
|
-
*/
|
|
19061
|
-
const contentAnimation = !expandToScroll
|
|
19062
|
-
? createAnimation('contentAnimation').keyframes([
|
|
19063
|
-
{ offset: 0, opacity: 1, maxHeight: `${(1 - currentBreakpoint) * 100}%` },
|
|
19064
|
-
{ offset: 1, opacity: 1, maxHeight: `${currentBreakpoint * 100}%` },
|
|
19065
|
-
])
|
|
19066
|
-
: undefined;
|
|
19067
|
-
return { wrapperAnimation, backdropAnimation, contentAnimation };
|
|
19051
|
+
return { wrapperAnimation, backdropAnimation };
|
|
19068
19052
|
};
|
|
19069
19053
|
const createSheetLeaveAnimation = (opts) => {
|
|
19070
19054
|
const { currentBreakpoint, backdropBreakpoint } = opts;
|
|
@@ -19099,68 +19083,22 @@ const createEnterAnimation$1 = () => {
|
|
|
19099
19083
|
})
|
|
19100
19084
|
.afterClearStyles(['pointer-events']);
|
|
19101
19085
|
const wrapperAnimation = createAnimation().fromTo('transform', 'translateY(100vh)', 'translateY(0vh)');
|
|
19102
|
-
return { backdropAnimation, wrapperAnimation
|
|
19086
|
+
return { backdropAnimation, wrapperAnimation };
|
|
19103
19087
|
};
|
|
19104
19088
|
/**
|
|
19105
19089
|
* iOS Modal Enter Animation for the Card presentation style
|
|
19106
19090
|
*/
|
|
19107
19091
|
const iosEnterAnimation$3 = (baseEl, opts) => {
|
|
19108
|
-
const { presentingEl, currentBreakpoint
|
|
19092
|
+
const { presentingEl, currentBreakpoint } = opts;
|
|
19109
19093
|
const root = getElementRoot(baseEl);
|
|
19110
|
-
const { wrapperAnimation, backdropAnimation
|
|
19094
|
+
const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation$1();
|
|
19111
19095
|
backdropAnimation.addElement(root.querySelector('ion-backdrop'));
|
|
19112
19096
|
wrapperAnimation.addElement(root.querySelectorAll('.modal-wrapper, .modal-shadow')).beforeStyles({ opacity: 1 });
|
|
19113
|
-
// The content animation is only added if scrolling is enabled for
|
|
19114
|
-
// all the breakpoints.
|
|
19115
|
-
!expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
|
|
19116
19097
|
const baseAnimation = createAnimation('entering-base')
|
|
19117
19098
|
.addElement(baseEl)
|
|
19118
19099
|
.easing('cubic-bezier(0.32,0.72,0,1)')
|
|
19119
19100
|
.duration(500)
|
|
19120
|
-
.addAnimation(
|
|
19121
|
-
.beforeAddWrite(() => {
|
|
19122
|
-
if (expandToScroll) {
|
|
19123
|
-
// Scroll can only be done when the modal is fully expanded.
|
|
19124
|
-
return;
|
|
19125
|
-
}
|
|
19126
|
-
/**
|
|
19127
|
-
* There are some browsers that causes flickering when
|
|
19128
|
-
* dragging the content when scroll is enabled at every
|
|
19129
|
-
* breakpoint. This is due to the wrapper element being
|
|
19130
|
-
* transformed off the screen and having a snap animation.
|
|
19131
|
-
*
|
|
19132
|
-
* A workaround is to clone the footer element and append
|
|
19133
|
-
* it outside of the wrapper element. This way, the footer
|
|
19134
|
-
* is still visible and the drag can be done without
|
|
19135
|
-
* flickering. The original footer is hidden until the modal
|
|
19136
|
-
* is dismissed. This maintains the animation of the footer
|
|
19137
|
-
* when the modal is dismissed.
|
|
19138
|
-
*
|
|
19139
|
-
* The workaround needs to be done before the animation starts
|
|
19140
|
-
* so there are no flickering issues.
|
|
19141
|
-
*/
|
|
19142
|
-
const ionFooter = baseEl.querySelector('ion-footer');
|
|
19143
|
-
/**
|
|
19144
|
-
* This check is needed to prevent more than one footer
|
|
19145
|
-
* from being appended to the shadow root.
|
|
19146
|
-
* Otherwise, iOS and MD enter animations would append
|
|
19147
|
-
* the footer twice.
|
|
19148
|
-
*/
|
|
19149
|
-
const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
|
|
19150
|
-
if (ionFooter && !ionFooterAlreadyAppended) {
|
|
19151
|
-
const footerHeight = ionFooter.clientHeight;
|
|
19152
|
-
const clonedFooter = ionFooter.cloneNode(true);
|
|
19153
|
-
baseEl.shadowRoot.appendChild(clonedFooter);
|
|
19154
|
-
ionFooter.style.setProperty('display', 'none');
|
|
19155
|
-
ionFooter.setAttribute('aria-hidden', 'true');
|
|
19156
|
-
// Padding is added to prevent some content from being hidden.
|
|
19157
|
-
const page = baseEl.querySelector('.ion-page');
|
|
19158
|
-
page.style.setProperty('padding-bottom', `${footerHeight}px`);
|
|
19159
|
-
}
|
|
19160
|
-
});
|
|
19161
|
-
if (contentAnimation) {
|
|
19162
|
-
baseAnimation.addAnimation(contentAnimation);
|
|
19163
|
-
}
|
|
19101
|
+
.addAnimation(wrapperAnimation);
|
|
19164
19102
|
if (presentingEl) {
|
|
19165
19103
|
const isMobile = window.innerWidth < 768;
|
|
19166
19104
|
const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
|
|
@@ -19238,7 +19176,7 @@ const createLeaveAnimation$1 = () => {
|
|
|
19238
19176
|
* iOS Modal Leave Animation
|
|
19239
19177
|
*/
|
|
19240
19178
|
const iosLeaveAnimation$3 = (baseEl, opts, duration = 500) => {
|
|
19241
|
-
const { presentingEl, currentBreakpoint
|
|
19179
|
+
const { presentingEl, currentBreakpoint } = opts;
|
|
19242
19180
|
const root = getElementRoot(baseEl);
|
|
19243
19181
|
const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation$1();
|
|
19244
19182
|
backdropAnimation.addElement(root.querySelector('ion-backdrop'));
|
|
@@ -19247,29 +19185,7 @@ const iosLeaveAnimation$3 = (baseEl, opts, duration = 500) => {
|
|
|
19247
19185
|
.addElement(baseEl)
|
|
19248
19186
|
.easing('cubic-bezier(0.32,0.72,0,1)')
|
|
19249
19187
|
.duration(duration)
|
|
19250
|
-
.addAnimation(wrapperAnimation)
|
|
19251
|
-
.beforeAddWrite(() => {
|
|
19252
|
-
if (expandToScroll) {
|
|
19253
|
-
// Scroll can only be done when the modal is fully expanded.
|
|
19254
|
-
return;
|
|
19255
|
-
}
|
|
19256
|
-
/**
|
|
19257
|
-
* If expandToScroll is disabled, we need to swap
|
|
19258
|
-
* the visibility to the original, so the footer
|
|
19259
|
-
* dismisses with the modal and doesn't stay
|
|
19260
|
-
* until the modal is removed from the DOM.
|
|
19261
|
-
*/
|
|
19262
|
-
const ionFooter = baseEl.querySelector('ion-footer');
|
|
19263
|
-
if (ionFooter) {
|
|
19264
|
-
const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
|
|
19265
|
-
ionFooter.style.removeProperty('display');
|
|
19266
|
-
ionFooter.removeAttribute('aria-hidden');
|
|
19267
|
-
clonedFooter.style.setProperty('display', 'none');
|
|
19268
|
-
clonedFooter.setAttribute('aria-hidden', 'true');
|
|
19269
|
-
const page = baseEl.querySelector('.ion-page');
|
|
19270
|
-
page.style.removeProperty('padding-bottom');
|
|
19271
|
-
}
|
|
19272
|
-
});
|
|
19188
|
+
.addAnimation(wrapperAnimation);
|
|
19273
19189
|
if (presentingEl) {
|
|
19274
19190
|
const isMobile = window.innerWidth < 768;
|
|
19275
19191
|
const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
|
|
@@ -19347,69 +19263,22 @@ const createEnterAnimation = () => {
|
|
|
19347
19263
|
{ offset: 0, opacity: 0.01, transform: 'translateY(40px)' },
|
|
19348
19264
|
{ offset: 1, opacity: 1, transform: `translateY(0px)` },
|
|
19349
19265
|
]);
|
|
19350
|
-
return { backdropAnimation, wrapperAnimation
|
|
19266
|
+
return { backdropAnimation, wrapperAnimation };
|
|
19351
19267
|
};
|
|
19352
19268
|
/**
|
|
19353
19269
|
* Md Modal Enter Animation
|
|
19354
19270
|
*/
|
|
19355
19271
|
const mdEnterAnimation$2 = (baseEl, opts) => {
|
|
19356
|
-
const { currentBreakpoint
|
|
19272
|
+
const { currentBreakpoint } = opts;
|
|
19357
19273
|
const root = getElementRoot(baseEl);
|
|
19358
|
-
const { wrapperAnimation, backdropAnimation
|
|
19274
|
+
const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation();
|
|
19359
19275
|
backdropAnimation.addElement(root.querySelector('ion-backdrop'));
|
|
19360
19276
|
wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
|
|
19361
|
-
|
|
19362
|
-
// all the breakpoints.
|
|
19363
|
-
expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
|
|
19364
|
-
const baseAnimation = createAnimation()
|
|
19277
|
+
return createAnimation()
|
|
19365
19278
|
.addElement(baseEl)
|
|
19366
19279
|
.easing('cubic-bezier(0.36,0.66,0.04,1)')
|
|
19367
19280
|
.duration(280)
|
|
19368
|
-
.addAnimation([backdropAnimation, wrapperAnimation])
|
|
19369
|
-
.beforeAddWrite(() => {
|
|
19370
|
-
if (expandToScroll) {
|
|
19371
|
-
// Scroll can only be done when the modal is fully expanded.
|
|
19372
|
-
return;
|
|
19373
|
-
}
|
|
19374
|
-
/**
|
|
19375
|
-
* There are some browsers that causes flickering when
|
|
19376
|
-
* dragging the content when scroll is enabled at every
|
|
19377
|
-
* breakpoint. This is due to the wrapper element being
|
|
19378
|
-
* transformed off the screen and having a snap animation.
|
|
19379
|
-
*
|
|
19380
|
-
* A workaround is to clone the footer element and append
|
|
19381
|
-
* it outside of the wrapper element. This way, the footer
|
|
19382
|
-
* is still visible and the drag can be done without
|
|
19383
|
-
* flickering. The original footer is hidden until the modal
|
|
19384
|
-
* is dismissed. This maintains the animation of the footer
|
|
19385
|
-
* when the modal is dismissed.
|
|
19386
|
-
*
|
|
19387
|
-
* The workaround needs to be done before the animation starts
|
|
19388
|
-
* so there are no flickering issues.
|
|
19389
|
-
*/
|
|
19390
|
-
const ionFooter = baseEl.querySelector('ion-footer');
|
|
19391
|
-
/**
|
|
19392
|
-
* This check is needed to prevent more than one footer
|
|
19393
|
-
* from being appended to the shadow root.
|
|
19394
|
-
* Otherwise, iOS and MD enter animations would append
|
|
19395
|
-
* the footer twice.
|
|
19396
|
-
*/
|
|
19397
|
-
const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
|
|
19398
|
-
if (ionFooter && !ionFooterAlreadyAppended) {
|
|
19399
|
-
const footerHeight = ionFooter.clientHeight;
|
|
19400
|
-
const clonedFooter = ionFooter.cloneNode(true);
|
|
19401
|
-
baseEl.shadowRoot.appendChild(clonedFooter);
|
|
19402
|
-
ionFooter.style.setProperty('display', 'none');
|
|
19403
|
-
ionFooter.setAttribute('aria-hidden', 'true');
|
|
19404
|
-
// Padding is added to prevent some content from being hidden.
|
|
19405
|
-
const page = baseEl.querySelector('.ion-page');
|
|
19406
|
-
page.style.setProperty('padding-bottom', `${footerHeight}px`);
|
|
19407
|
-
}
|
|
19408
|
-
});
|
|
19409
|
-
if (contentAnimation) {
|
|
19410
|
-
baseAnimation.addAnimation(contentAnimation);
|
|
19411
|
-
}
|
|
19412
|
-
return baseAnimation;
|
|
19281
|
+
.addAnimation([backdropAnimation, wrapperAnimation]);
|
|
19413
19282
|
};
|
|
19414
19283
|
|
|
19415
19284
|
const createLeaveAnimation = () => {
|
|
@@ -19424,41 +19293,18 @@ const createLeaveAnimation = () => {
|
|
|
19424
19293
|
* Md Modal Leave Animation
|
|
19425
19294
|
*/
|
|
19426
19295
|
const mdLeaveAnimation$2 = (baseEl, opts) => {
|
|
19427
|
-
const { currentBreakpoint
|
|
19296
|
+
const { currentBreakpoint } = opts;
|
|
19428
19297
|
const root = getElementRoot(baseEl);
|
|
19429
19298
|
const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation();
|
|
19430
19299
|
backdropAnimation.addElement(root.querySelector('ion-backdrop'));
|
|
19431
19300
|
wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
|
|
19432
|
-
|
|
19301
|
+
return createAnimation()
|
|
19433
19302
|
.easing('cubic-bezier(0.47,0,0.745,0.715)')
|
|
19434
19303
|
.duration(200)
|
|
19435
|
-
.addAnimation([backdropAnimation, wrapperAnimation])
|
|
19436
|
-
.beforeAddWrite(() => {
|
|
19437
|
-
if (expandToScroll) {
|
|
19438
|
-
// Scroll can only be done when the modal is fully expanded.
|
|
19439
|
-
return;
|
|
19440
|
-
}
|
|
19441
|
-
/**
|
|
19442
|
-
* If expandToScroll is disabled, we need to swap
|
|
19443
|
-
* the visibility to the original, so the footer
|
|
19444
|
-
* dismisses with the modal and doesn't stay
|
|
19445
|
-
* until the modal is removed from the DOM.
|
|
19446
|
-
*/
|
|
19447
|
-
const ionFooter = baseEl.querySelector('ion-footer');
|
|
19448
|
-
if (ionFooter) {
|
|
19449
|
-
const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
|
|
19450
|
-
ionFooter.style.removeProperty('display');
|
|
19451
|
-
ionFooter.removeAttribute('aria-hidden');
|
|
19452
|
-
clonedFooter.style.setProperty('display', 'none');
|
|
19453
|
-
clonedFooter.setAttribute('aria-hidden', 'true');
|
|
19454
|
-
const page = baseEl.querySelector('.ion-page');
|
|
19455
|
-
page.style.removeProperty('padding-bottom');
|
|
19456
|
-
}
|
|
19457
|
-
});
|
|
19458
|
-
return baseAnimation;
|
|
19304
|
+
.addAnimation([backdropAnimation, wrapperAnimation]);
|
|
19459
19305
|
};
|
|
19460
19306
|
|
|
19461
|
-
const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [],
|
|
19307
|
+
const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], getCurrentBreakpoint, onDismiss, onBreakpointChange) => {
|
|
19462
19308
|
// Defaults for the sheet swipe animation
|
|
19463
19309
|
const defaultBackdrop = [
|
|
19464
19310
|
{ offset: 0, opacity: 'var(--backdrop-opacity)' },
|
|
@@ -19475,10 +19321,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19475
19321
|
{ offset: 1, transform: 'translateY(100%)' },
|
|
19476
19322
|
],
|
|
19477
19323
|
BACKDROP_KEYFRAMES: backdropBreakpoint !== 0 ? customBackdrop : defaultBackdrop,
|
|
19478
|
-
CONTENT_KEYFRAMES: [
|
|
19479
|
-
{ offset: 0, maxHeight: '100%' },
|
|
19480
|
-
{ offset: 1, maxHeight: '0%' },
|
|
19481
|
-
],
|
|
19482
19324
|
};
|
|
19483
19325
|
const contentEl = baseEl.querySelector('ion-content');
|
|
19484
19326
|
const height = wrapperEl.clientHeight;
|
|
@@ -19486,11 +19328,10 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19486
19328
|
let offset = 0;
|
|
19487
19329
|
let canDismissBlocksGesture = false;
|
|
19488
19330
|
const canDismissMaxStep = 0.95;
|
|
19489
|
-
const maxBreakpoint = breakpoints[breakpoints.length - 1];
|
|
19490
|
-
const minBreakpoint = breakpoints[0];
|
|
19491
19331
|
const wrapperAnimation = animation.childAnimations.find((ani) => ani.id === 'wrapperAnimation');
|
|
19492
19332
|
const backdropAnimation = animation.childAnimations.find((ani) => ani.id === 'backdropAnimation');
|
|
19493
|
-
const
|
|
19333
|
+
const maxBreakpoint = breakpoints[breakpoints.length - 1];
|
|
19334
|
+
const minBreakpoint = breakpoints[0];
|
|
19494
19335
|
const enableBackdrop = () => {
|
|
19495
19336
|
baseEl.style.setProperty('pointer-events', 'auto');
|
|
19496
19337
|
backdropEl.style.setProperty('pointer-events', 'auto');
|
|
@@ -19513,31 +19354,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19513
19354
|
*/
|
|
19514
19355
|
baseEl.classList.add(FOCUS_TRAP_DISABLE_CLASS);
|
|
19515
19356
|
};
|
|
19516
|
-
/**
|
|
19517
|
-
* Toggles the visible modal footer when `expandToScroll` is disabled.
|
|
19518
|
-
* @param footer The footer to show.
|
|
19519
|
-
*/
|
|
19520
|
-
const swapFooterVisibility = (footer) => {
|
|
19521
|
-
const originalFooter = baseEl.querySelector('ion-footer');
|
|
19522
|
-
if (!originalFooter) {
|
|
19523
|
-
return;
|
|
19524
|
-
}
|
|
19525
|
-
const clonedFooter = wrapperEl.nextElementSibling;
|
|
19526
|
-
const footerToHide = footer === 'original' ? clonedFooter : originalFooter;
|
|
19527
|
-
const footerToShow = footer === 'original' ? originalFooter : clonedFooter;
|
|
19528
|
-
footerToShow.style.removeProperty('display');
|
|
19529
|
-
footerToShow.removeAttribute('aria-hidden');
|
|
19530
|
-
const page = baseEl.querySelector('.ion-page');
|
|
19531
|
-
if (footer === 'original') {
|
|
19532
|
-
page.style.removeProperty('padding-bottom');
|
|
19533
|
-
}
|
|
19534
|
-
else {
|
|
19535
|
-
const pagePadding = footerToShow.clientHeight;
|
|
19536
|
-
page.style.setProperty('padding-bottom', `${pagePadding}px`);
|
|
19537
|
-
}
|
|
19538
|
-
footerToHide.style.setProperty('display', 'none');
|
|
19539
|
-
footerToHide.setAttribute('aria-hidden', 'true');
|
|
19540
|
-
};
|
|
19541
19357
|
/**
|
|
19542
19358
|
* After the entering animation completes,
|
|
19543
19359
|
* we need to set the animation to go from
|
|
@@ -19549,7 +19365,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19549
19365
|
if (wrapperAnimation && backdropAnimation) {
|
|
19550
19366
|
wrapperAnimation.keyframes([...SheetDefaults.WRAPPER_KEYFRAMES]);
|
|
19551
19367
|
backdropAnimation.keyframes([...SheetDefaults.BACKDROP_KEYFRAMES]);
|
|
19552
|
-
contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.keyframes([...SheetDefaults.CONTENT_KEYFRAMES]);
|
|
19553
19368
|
animation.progressStart(true, 1 - currentBreakpoint);
|
|
19554
19369
|
/**
|
|
19555
19370
|
* If backdrop is not enabled, then content
|
|
@@ -19566,7 +19381,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19566
19381
|
disableBackdrop();
|
|
19567
19382
|
}
|
|
19568
19383
|
}
|
|
19569
|
-
if (contentEl && currentBreakpoint !== maxBreakpoint
|
|
19384
|
+
if (contentEl && currentBreakpoint !== maxBreakpoint) {
|
|
19570
19385
|
contentEl.scrollY = false;
|
|
19571
19386
|
}
|
|
19572
19387
|
const canStart = (detail) => {
|
|
@@ -19580,13 +19395,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19580
19395
|
*/
|
|
19581
19396
|
const contentEl = findClosestIonContent(detail.event.target);
|
|
19582
19397
|
currentBreakpoint = getCurrentBreakpoint();
|
|
19583
|
-
/**
|
|
19584
|
-
* If we have expandToScroll disabled, we should not allow the swipe gesture to start
|
|
19585
|
-
* if the content is being swiped.
|
|
19586
|
-
*/
|
|
19587
|
-
if (!expandToScroll && contentEl) {
|
|
19588
|
-
return false;
|
|
19589
|
-
}
|
|
19590
19398
|
if (currentBreakpoint === 1 && contentEl) {
|
|
19591
19399
|
/**
|
|
19592
19400
|
* The modal should never swipe to close on the content with a refresher.
|
|
@@ -19617,15 +19425,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19617
19425
|
* Remove undefined check
|
|
19618
19426
|
*/
|
|
19619
19427
|
canDismissBlocksGesture = baseEl.canDismiss !== undefined && baseEl.canDismiss !== true && minBreakpoint === 0;
|
|
19620
|
-
/**
|
|
19621
|
-
* If expandToScroll is disabled, we need to swap
|
|
19622
|
-
* the footer visibility to the original, so if the modal
|
|
19623
|
-
* is dismissed, the footer dismisses with the modal
|
|
19624
|
-
* and doesn't stay on the screen after the modal is gone.
|
|
19625
|
-
*/
|
|
19626
|
-
if (!expandToScroll) {
|
|
19627
|
-
swapFooterVisibility('original');
|
|
19628
|
-
}
|
|
19629
19428
|
/**
|
|
19630
19429
|
* If we are pulling down, then it is possible we are pulling on the content.
|
|
19631
19430
|
* We do not want scrolling to happen at the same time as the gesture.
|
|
@@ -19741,19 +19540,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19741
19540
|
opacity: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(snapToBreakpoint, backdropBreakpoint)})`,
|
|
19742
19541
|
},
|
|
19743
19542
|
]);
|
|
19744
|
-
if (contentAnimation) {
|
|
19745
|
-
/**
|
|
19746
|
-
* The modal content should scroll at any breakpoint when expandToScroll
|
|
19747
|
-
* is disabled. In order to do this, the content needs to be completely
|
|
19748
|
-
* viewable so scrolling can access everything. Otherwise, the default
|
|
19749
|
-
* behavior would show the content off the screen and only allow
|
|
19750
|
-
* scrolling when the sheet is fully expanded.
|
|
19751
|
-
*/
|
|
19752
|
-
contentAnimation.keyframes([
|
|
19753
|
-
{ offset: 0, maxHeight: `${(1 - breakpointOffset) * 100}%` },
|
|
19754
|
-
{ offset: 1, maxHeight: `${snapToBreakpoint * 100}%` },
|
|
19755
|
-
]);
|
|
19756
|
-
}
|
|
19757
19543
|
animation.progressStep(0);
|
|
19758
19544
|
}
|
|
19759
19545
|
/**
|
|
@@ -19761,14 +19547,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19761
19547
|
* snapping animation completes.
|
|
19762
19548
|
*/
|
|
19763
19549
|
gesture.enable(false);
|
|
19764
|
-
/**
|
|
19765
|
-
* If expandToScroll is disabled, we need to swap
|
|
19766
|
-
* the footer visibility to the cloned one so the footer
|
|
19767
|
-
* doesn't flicker when the sheet's height is animated.
|
|
19768
|
-
*/
|
|
19769
|
-
if (!expandToScroll && shouldRemainOpen) {
|
|
19770
|
-
swapFooterVisibility('cloned');
|
|
19771
|
-
}
|
|
19772
19550
|
if (shouldPreventDismiss) {
|
|
19773
19551
|
handleCanDismiss(baseEl, animation);
|
|
19774
19552
|
}
|
|
@@ -19776,13 +19554,13 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19776
19554
|
onDismiss();
|
|
19777
19555
|
}
|
|
19778
19556
|
/**
|
|
19779
|
-
*
|
|
19780
|
-
*
|
|
19781
|
-
*
|
|
19782
|
-
*
|
|
19783
|
-
* released, so we align with that
|
|
19557
|
+
* If the sheet is going to be fully expanded then we should enable
|
|
19558
|
+
* scrolling immediately. The sheet modal animation takes ~500ms to finish
|
|
19559
|
+
* so if we wait until then there is a visible delay for when scrolling is
|
|
19560
|
+
* re-enabled. Native iOS allows for scrolling on the sheet modal as soon
|
|
19561
|
+
* as the gesture is released, so we align with that.
|
|
19784
19562
|
*/
|
|
19785
|
-
if (contentEl &&
|
|
19563
|
+
if (contentEl && snapToBreakpoint === breakpoints[breakpoints.length - 1]) {
|
|
19786
19564
|
contentEl.scrollY = true;
|
|
19787
19565
|
}
|
|
19788
19566
|
return new Promise((resolve) => {
|
|
@@ -19800,7 +19578,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19800
19578
|
raf(() => {
|
|
19801
19579
|
wrapperAnimation.keyframes([...SheetDefaults.WRAPPER_KEYFRAMES]);
|
|
19802
19580
|
backdropAnimation.keyframes([...SheetDefaults.BACKDROP_KEYFRAMES]);
|
|
19803
|
-
contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.keyframes([...SheetDefaults.CONTENT_KEYFRAMES]);
|
|
19804
19581
|
animation.progressStart(true, 1 - snapToBreakpoint);
|
|
19805
19582
|
currentBreakpoint = snapToBreakpoint;
|
|
19806
19583
|
onBreakpointChange(currentBreakpoint);
|
|
@@ -19853,10 +19630,10 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19853
19630
|
};
|
|
19854
19631
|
};
|
|
19855
19632
|
|
|
19856
|
-
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
|
|
19633
|
+
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}";
|
|
19857
19634
|
var IonModalIosStyle0 = modalIosCss;
|
|
19858
19635
|
|
|
19859
|
-
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
|
|
19636
|
+
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}";
|
|
19860
19637
|
var IonModalMdStyle0 = modalMdCss;
|
|
19861
19638
|
|
|
19862
19639
|
// TODO(FW-2832): types
|
|
@@ -19935,7 +19712,6 @@ class Modal {
|
|
|
19935
19712
|
this.enterAnimation = undefined;
|
|
19936
19713
|
this.leaveAnimation = undefined;
|
|
19937
19714
|
this.breakpoints = undefined;
|
|
19938
|
-
this.expandToScroll = true;
|
|
19939
19715
|
this.initialBreakpoint = undefined;
|
|
19940
19716
|
this.backdropBreakpoint = 0;
|
|
19941
19717
|
this.handle = undefined;
|
|
@@ -20151,7 +19927,6 @@ class Modal {
|
|
|
20151
19927
|
presentingEl: presentingElement,
|
|
20152
19928
|
currentBreakpoint: this.initialBreakpoint,
|
|
20153
19929
|
backdropBreakpoint: this.backdropBreakpoint,
|
|
20154
|
-
expandToScroll: this.expandToScroll,
|
|
20155
19930
|
});
|
|
20156
19931
|
/* tslint:disable-next-line */
|
|
20157
19932
|
if (typeof window !== 'undefined') {
|
|
@@ -20202,10 +19977,7 @@ class Modal {
|
|
|
20202
19977
|
// should be in the DOM and referenced by now, except
|
|
20203
19978
|
// for the presenting el
|
|
20204
19979
|
const animationBuilder = this.leaveAnimation || config.get('modalLeave', iosLeaveAnimation$3);
|
|
20205
|
-
const ani = (this.animation = animationBuilder(el, {
|
|
20206
|
-
presentingEl: this.presentingElement,
|
|
20207
|
-
expandToScroll: this.expandToScroll,
|
|
20208
|
-
}));
|
|
19980
|
+
const ani = (this.animation = animationBuilder(el, { presentingEl: this.presentingElement }));
|
|
20209
19981
|
const contentEl = findIonContent(el);
|
|
20210
19982
|
if (!contentEl) {
|
|
20211
19983
|
printIonContentErrorMsg(el);
|
|
@@ -20250,10 +20022,9 @@ class Modal {
|
|
|
20250
20022
|
presentingEl: this.presentingElement,
|
|
20251
20023
|
currentBreakpoint: initialBreakpoint,
|
|
20252
20024
|
backdropBreakpoint,
|
|
20253
|
-
expandToScroll: this.expandToScroll,
|
|
20254
20025
|
}));
|
|
20255
20026
|
ani.progressStart(true, 1);
|
|
20256
|
-
const { gesture, moveSheetToBreakpoint } = createSheetGesture(this.el, this.backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, ani, this.sortedBreakpoints,
|
|
20027
|
+
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) => {
|
|
20257
20028
|
if (this.currentBreakpoint !== breakpoint) {
|
|
20258
20029
|
this.currentBreakpoint = breakpoint;
|
|
20259
20030
|
this.ionBreakpointDidChange.emit({ breakpoint });
|
|
@@ -20331,7 +20102,6 @@ class Modal {
|
|
|
20331
20102
|
presentingEl: presentingElement,
|
|
20332
20103
|
currentBreakpoint: (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : this.initialBreakpoint,
|
|
20333
20104
|
backdropBreakpoint: this.backdropBreakpoint,
|
|
20334
|
-
expandToScroll: this.expandToScroll,
|
|
20335
20105
|
});
|
|
20336
20106
|
if (dismissed) {
|
|
20337
20107
|
const { delegate } = this.getDelegate();
|
|
@@ -20417,23 +20187,23 @@ class Modal {
|
|
|
20417
20187
|
return true;
|
|
20418
20188
|
}
|
|
20419
20189
|
render() {
|
|
20420
|
-
const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap
|
|
20190
|
+
const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap } = this;
|
|
20421
20191
|
const showHandle = handle !== false && isSheetModal;
|
|
20422
20192
|
const mode = getIonMode$1(this);
|
|
20423
20193
|
const isCardModal = presentingElement !== undefined && mode === 'ios';
|
|
20424
20194
|
const isHandleCycle = handleBehavior === 'cycle';
|
|
20425
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
20195
|
+
return (hAsync(Host, Object.assign({ key: 'b4da5111fe4719fa450c39b2d4bd884a302a7924', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
|
|
20426
20196
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
20427
|
-
}, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal,
|
|
20197
|
+
}, 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',
|
|
20428
20198
|
/*
|
|
20429
20199
|
role and aria-modal must be used on the
|
|
20430
20200
|
same element. They must also be set inside the
|
|
20431
20201
|
shadow DOM otherwise ion-button will not be highlighted
|
|
20432
20202
|
when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
|
|
20433
20203
|
*/
|
|
20434
|
-
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: '
|
|
20204
|
+
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",
|
|
20435
20205
|
// Prevents the handle from receiving keyboard focus when it does not cycle
|
|
20436
|
-
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: '
|
|
20206
|
+
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' }))));
|
|
20437
20207
|
}
|
|
20438
20208
|
get el() { return getElement(this); }
|
|
20439
20209
|
static get watchers() { return {
|
|
@@ -20455,7 +20225,6 @@ class Modal {
|
|
|
20455
20225
|
"enterAnimation": [16],
|
|
20456
20226
|
"leaveAnimation": [16],
|
|
20457
20227
|
"breakpoints": [16],
|
|
20458
|
-
"expandToScroll": [4, "expand-to-scroll"],
|
|
20459
20228
|
"initialBreakpoint": [2, "initial-breakpoint"],
|
|
20460
20229
|
"backdropBreakpoint": [2, "backdrop-breakpoint"],
|
|
20461
20230
|
"handle": [4],
|
|
@@ -29930,7 +29699,6 @@ class Select {
|
|
|
29930
29699
|
this.expandedIcon = undefined;
|
|
29931
29700
|
this.shape = undefined;
|
|
29932
29701
|
this.value = undefined;
|
|
29933
|
-
this.required = false;
|
|
29934
29702
|
}
|
|
29935
29703
|
styleChanged() {
|
|
29936
29704
|
this.emitStyle();
|
|
@@ -29986,8 +29754,15 @@ class Select {
|
|
|
29986
29754
|
}
|
|
29987
29755
|
this.isExpanded = true;
|
|
29988
29756
|
const overlay = (this.overlay = await this.createOverlay(event));
|
|
29989
|
-
|
|
29990
|
-
|
|
29757
|
+
overlay.onDidDismiss().then(() => {
|
|
29758
|
+
this.overlay = undefined;
|
|
29759
|
+
this.isExpanded = false;
|
|
29760
|
+
this.ionDismiss.emit();
|
|
29761
|
+
this.setFocus();
|
|
29762
|
+
});
|
|
29763
|
+
await overlay.present();
|
|
29764
|
+
// focus selected option for popovers and modals
|
|
29765
|
+
if (this.interface === 'popover' || this.interface === 'modal') {
|
|
29991
29766
|
const indexOfSelected = this.childOpts.findIndex((o) => o.value === this.value);
|
|
29992
29767
|
if (indexOfSelected > -1) {
|
|
29993
29768
|
const selectedItem = overlay.querySelector(`.select-interface-option:nth-child(${indexOfSelected + 1})`);
|
|
@@ -30005,7 +29780,6 @@ class Select {
|
|
|
30005
29780
|
*/
|
|
30006
29781
|
const interactiveEl = selectedItem.querySelector('ion-radio, ion-checkbox');
|
|
30007
29782
|
if (interactiveEl) {
|
|
30008
|
-
selectedItem.scrollIntoView({ block: 'nearest' });
|
|
30009
29783
|
// Needs to be called before `focusVisibleElement` to prevent issue with focus event bubbling
|
|
30010
29784
|
// and removing `ion-focused` style
|
|
30011
29785
|
interactiveEl.setFocus();
|
|
@@ -30029,40 +29803,7 @@ class Select {
|
|
|
30029
29803
|
focusVisibleElement(firstEnabledOption.closest('ion-item'));
|
|
30030
29804
|
}
|
|
30031
29805
|
}
|
|
30032
|
-
};
|
|
30033
|
-
// For modals and popovers, we can scroll before they're visible
|
|
30034
|
-
if (this.interface === 'modal') {
|
|
30035
|
-
overlay.addEventListener('ionModalWillPresent', scrollSelectedIntoView, { once: true });
|
|
30036
29806
|
}
|
|
30037
|
-
else if (this.interface === 'popover') {
|
|
30038
|
-
overlay.addEventListener('ionPopoverWillPresent', scrollSelectedIntoView, { once: true });
|
|
30039
|
-
}
|
|
30040
|
-
else {
|
|
30041
|
-
/**
|
|
30042
|
-
* For alerts and action sheets, we need to wait a frame after willPresent
|
|
30043
|
-
* because these overlays don't have their content in the DOM immediately
|
|
30044
|
-
* when willPresent fires. By waiting a frame, we ensure the content is
|
|
30045
|
-
* rendered and can be properly scrolled into view.
|
|
30046
|
-
*/
|
|
30047
|
-
const scrollAfterRender = () => {
|
|
30048
|
-
requestAnimationFrame(() => {
|
|
30049
|
-
scrollSelectedIntoView();
|
|
30050
|
-
});
|
|
30051
|
-
};
|
|
30052
|
-
if (this.interface === 'alert') {
|
|
30053
|
-
overlay.addEventListener('ionAlertWillPresent', scrollAfterRender, { once: true });
|
|
30054
|
-
}
|
|
30055
|
-
else if (this.interface === 'action-sheet') {
|
|
30056
|
-
overlay.addEventListener('ionActionSheetWillPresent', scrollAfterRender, { once: true });
|
|
30057
|
-
}
|
|
30058
|
-
}
|
|
30059
|
-
overlay.onDidDismiss().then(() => {
|
|
30060
|
-
this.overlay = undefined;
|
|
30061
|
-
this.isExpanded = false;
|
|
30062
|
-
this.ionDismiss.emit();
|
|
30063
|
-
this.setFocus();
|
|
30064
|
-
});
|
|
30065
|
-
await overlay.present();
|
|
30066
29807
|
return overlay;
|
|
30067
29808
|
}
|
|
30068
29809
|
createOverlay(ev) {
|
|
@@ -30442,8 +30183,8 @@ class Select {
|
|
|
30442
30183
|
return renderedLabel;
|
|
30443
30184
|
}
|
|
30444
30185
|
renderListbox() {
|
|
30445
|
-
const { disabled, inputId, isExpanded
|
|
30446
|
-
return (hAsync("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`,
|
|
30186
|
+
const { disabled, inputId, isExpanded } = this;
|
|
30187
|
+
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) }));
|
|
30447
30188
|
}
|
|
30448
30189
|
render() {
|
|
30449
30190
|
const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value } = this;
|
|
@@ -30474,7 +30215,7 @@ class Select {
|
|
|
30474
30215
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
30475
30216
|
*/
|
|
30476
30217
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
|
|
30477
|
-
return (hAsync(Host, { key: '
|
|
30218
|
+
return (hAsync(Host, { key: '144dfa5c49549a74fe516c65b9b8104a477ac789', onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
30478
30219
|
[mode]: true,
|
|
30479
30220
|
'in-item': inItem,
|
|
30480
30221
|
'in-item-color': hostContext('ion-item.ion-color', el),
|
|
@@ -30490,7 +30231,7 @@ class Select {
|
|
|
30490
30231
|
[`select-justify-${justify}`]: justifyEnabled,
|
|
30491
30232
|
[`select-shape-${shape}`]: shape !== undefined,
|
|
30492
30233
|
[`select-label-placement-${labelPlacement}`]: true,
|
|
30493
|
-
}) }, hAsync("label", { key: '
|
|
30234
|
+
}) }, 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" }))));
|
|
30494
30235
|
}
|
|
30495
30236
|
get el() { return getElement(this); }
|
|
30496
30237
|
static get watchers() { return {
|
|
@@ -30526,7 +30267,6 @@ class Select {
|
|
|
30526
30267
|
"expandedIcon": [1, "expanded-icon"],
|
|
30527
30268
|
"shape": [1],
|
|
30528
30269
|
"value": [1032],
|
|
30529
|
-
"required": [4],
|
|
30530
30270
|
"isExpanded": [32],
|
|
30531
30271
|
"open": [64]
|
|
30532
30272
|
},
|
|
@@ -32923,7 +32663,6 @@ class Toggle {
|
|
|
32923
32663
|
this.labelPlacement = 'start';
|
|
32924
32664
|
this.justify = undefined;
|
|
32925
32665
|
this.alignment = undefined;
|
|
32926
|
-
this.required = false;
|
|
32927
32666
|
}
|
|
32928
32667
|
disabledChanged() {
|
|
32929
32668
|
if (this.gesture) {
|
|
@@ -33005,12 +32744,12 @@ class Toggle {
|
|
|
33005
32744
|
return this.el.textContent !== '';
|
|
33006
32745
|
}
|
|
33007
32746
|
render() {
|
|
33008
|
-
const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment
|
|
32747
|
+
const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment } = this;
|
|
33009
32748
|
const mode = getIonMode$1(this);
|
|
33010
32749
|
const value = this.getValue();
|
|
33011
32750
|
const rtl = isRTL$1(el) ? 'rtl' : 'ltr';
|
|
33012
32751
|
renderHiddenInput(true, el, name, checked ? value : '', disabled);
|
|
33013
|
-
return (hAsync(Host, { key: '
|
|
32752
|
+
return (hAsync(Host, { key: 'f52195ec3bc14c024647cb41319c32a4cd330e19', onClick: this.onClick, class: createColorClasses$1(color, {
|
|
33014
32753
|
[mode]: true,
|
|
33015
32754
|
'in-item': hostContext('ion-item', el),
|
|
33016
32755
|
'toggle-activated': activated,
|
|
@@ -33020,10 +32759,10 @@ class Toggle {
|
|
|
33020
32759
|
[`toggle-alignment-${alignment}`]: alignment !== undefined,
|
|
33021
32760
|
[`toggle-label-placement-${labelPlacement}`]: true,
|
|
33022
32761
|
[`toggle-${rtl}`]: true,
|
|
33023
|
-
}) }, hAsync("label", { key: '
|
|
32762
|
+
}) }, 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: {
|
|
33024
32763
|
'label-text-wrapper': true,
|
|
33025
32764
|
'label-text-wrapper-hidden': !this.hasLabel,
|
|
33026
|
-
}, part: "label" }, hAsync("slot", { key: '
|
|
32765
|
+
}, part: "label" }, hAsync("slot", { key: '80a6672e2e792c15011a9496dcd75363cdba31c6' })), hAsync("div", { key: '2b2b318b38ab27b194c0dab4cecd77d9d780f2ca', class: "native-wrapper" }, this.renderToggleControl()))));
|
|
33027
32766
|
}
|
|
33028
32767
|
get el() { return getElement(this); }
|
|
33029
32768
|
static get watchers() { return {
|
|
@@ -33046,7 +32785,6 @@ class Toggle {
|
|
|
33046
32785
|
"labelPlacement": [1, "label-placement"],
|
|
33047
32786
|
"justify": [1],
|
|
33048
32787
|
"alignment": [1],
|
|
33049
|
-
"required": [4],
|
|
33050
32788
|
"activated": [32]
|
|
33051
32789
|
},
|
|
33052
32790
|
"$listeners$": undefined,
|
|
@@ -33078,10 +32816,6 @@ var IonToolbarMdStyle0 = toolbarMdCss;
|
|
|
33078
32816
|
* @slot secondary - Content is placed to the left of the toolbar text in `ios` mode, and directly to the right in `md` mode.
|
|
33079
32817
|
* @slot primary - Content is placed to the right of the toolbar text in `ios` mode, and to the far right in `md` mode.
|
|
33080
32818
|
* @slot end - Content is placed to the right of the toolbar text in LTR, and to the left in RTL.
|
|
33081
|
-
*
|
|
33082
|
-
* @part background - The background of the toolbar, covering the entire area behind the toolbar content.
|
|
33083
|
-
* @part container - The container that wraps all toolbar content, including the default slot and named slot content.
|
|
33084
|
-
* @part content - The container for the default slot, wrapping content provided without a named slot.
|
|
33085
32819
|
*/
|
|
33086
32820
|
class Toolbar {
|
|
33087
32821
|
constructor(hostRef) {
|
|
@@ -33132,10 +32866,10 @@ class Toolbar {
|
|
|
33132
32866
|
this.childrenStyles.forEach((value) => {
|
|
33133
32867
|
Object.assign(childStyles, value);
|
|
33134
32868
|
});
|
|
33135
|
-
return (hAsync(Host, { key: '
|
|
32869
|
+
return (hAsync(Host, { key: '462538a5ecd01baf3cde116c9f029aeda26c81be', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
|
|
33136
32870
|
[mode]: true,
|
|
33137
32871
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
33138
|
-
})) }, hAsync("div", { key: '
|
|
32872
|
+
})) }, 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" }))));
|
|
33139
32873
|
}
|
|
33140
32874
|
get el() { return getElement(this); }
|
|
33141
32875
|
static get style() { return {
|