@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.js
CHANGED
|
@@ -2845,7 +2845,8 @@ const isHybrid = (win) => isCordova(win) || isCapacitorNative(win);
|
|
|
2845
2845
|
const isCordova = (win) => !!(win['cordova'] || win['phonegap'] || win['PhoneGap']);
|
|
2846
2846
|
const isCapacitorNative = (win) => {
|
|
2847
2847
|
const capacitor = win['Capacitor'];
|
|
2848
|
-
|
|
2848
|
+
// TODO(ROU-11693): Remove when we no longer support Capacitor 2, which does not have isNativePlatform
|
|
2849
|
+
return !!((capacitor === null || capacitor === void 0 ? void 0 : capacitor.isNative) || ((capacitor === null || capacitor === void 0 ? void 0 : capacitor.isNativePlatform) && !!capacitor.isNativePlatform()));
|
|
2849
2850
|
};
|
|
2850
2851
|
const isElectron = (win) => testUserAgent(win, /electron/i);
|
|
2851
2852
|
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); };
|
|
@@ -3227,12 +3228,9 @@ let accordionIds = 0;
|
|
|
3227
3228
|
* @param message - The string message to be logged to the console.
|
|
3228
3229
|
*/
|
|
3229
3230
|
const printIonWarning = (message, ...params) => {
|
|
3230
|
-
|
|
3231
|
-
if (["WARN" /* LogLevel.WARN */].includes(logLevel)) {
|
|
3232
|
-
return console.warn(`[Ionic Warning]: ${message}`, ...params);
|
|
3233
|
-
}
|
|
3231
|
+
return console.warn(`[Ionic Warning]: ${message}`, ...params);
|
|
3234
3232
|
};
|
|
3235
|
-
|
|
3233
|
+
/*
|
|
3236
3234
|
* Logs an error to the console with an Ionic prefix
|
|
3237
3235
|
* to indicate the library that is warning the developer.
|
|
3238
3236
|
*
|
|
@@ -3240,10 +3238,7 @@ const printIonWarning = (message, ...params) => {
|
|
|
3240
3238
|
* @param params - Additional arguments to supply to the console.error.
|
|
3241
3239
|
*/
|
|
3242
3240
|
const printIonError = (message, ...params) => {
|
|
3243
|
-
|
|
3244
|
-
if (["ERROR" /* LogLevel.ERROR */, "WARN" /* LogLevel.WARN */].includes(logLevel)) {
|
|
3245
|
-
return console.error(`[Ionic Error]: ${message}`, ...params);
|
|
3246
|
-
}
|
|
3241
|
+
return console.error(`[Ionic Error]: ${message}`, ...params);
|
|
3247
3242
|
};
|
|
3248
3243
|
/**
|
|
3249
3244
|
* Prints an error informing developers that an implementation requires an element to be used
|
|
@@ -8507,7 +8502,6 @@ class Checkbox {
|
|
|
8507
8502
|
this.labelPlacement = 'start';
|
|
8508
8503
|
this.justify = undefined;
|
|
8509
8504
|
this.alignment = undefined;
|
|
8510
|
-
this.required = false;
|
|
8511
8505
|
}
|
|
8512
8506
|
componentWillLoad() {
|
|
8513
8507
|
this.inheritedAttributes = Object.assign({}, inheritAriaAttributes(this.el));
|
|
@@ -8519,11 +8513,11 @@ class Checkbox {
|
|
|
8519
8513
|
}
|
|
8520
8514
|
}
|
|
8521
8515
|
render() {
|
|
8522
|
-
const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment,
|
|
8516
|
+
const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment, } = this;
|
|
8523
8517
|
const mode = getIonMode$1(this);
|
|
8524
8518
|
const path = getSVGPath(mode, indeterminate);
|
|
8525
8519
|
renderHiddenInput(true, el, name, checked ? value : '', disabled);
|
|
8526
|
-
return (hAsync(Host, { key: '
|
|
8520
|
+
return (hAsync(Host, { key: '6dc787e1100521d08c4900104e1a3e2f594e919f', "aria-checked": indeterminate ? 'mixed' : `${checked}`, class: createColorClasses$1(color, {
|
|
8527
8521
|
[mode]: true,
|
|
8528
8522
|
'in-item': hostContext('ion-item', el),
|
|
8529
8523
|
'checkbox-checked': checked,
|
|
@@ -8533,10 +8527,10 @@ class Checkbox {
|
|
|
8533
8527
|
[`checkbox-justify-${justify}`]: justify !== undefined,
|
|
8534
8528
|
[`checkbox-alignment-${alignment}`]: alignment !== undefined,
|
|
8535
8529
|
[`checkbox-label-placement-${labelPlacement}`]: true,
|
|
8536
|
-
}), onClick: this.onClick }, hAsync("label", { key: '
|
|
8530
|
+
}), 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: {
|
|
8537
8531
|
'label-text-wrapper': true,
|
|
8538
8532
|
'label-text-wrapper-hidden': el.textContent === '',
|
|
8539
|
-
}, part: "label" }, hAsync("slot", { key: '
|
|
8533
|
+
}, 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)))));
|
|
8540
8534
|
}
|
|
8541
8535
|
getSVGPath(mode, indeterminate) {
|
|
8542
8536
|
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" }));
|
|
@@ -8563,7 +8557,6 @@ class Checkbox {
|
|
|
8563
8557
|
"labelPlacement": [1, "label-placement"],
|
|
8564
8558
|
"justify": [1],
|
|
8565
8559
|
"alignment": [1],
|
|
8566
|
-
"required": [4],
|
|
8567
8560
|
"setFocus": [64]
|
|
8568
8561
|
},
|
|
8569
8562
|
"$listeners$": undefined,
|
|
@@ -19039,7 +19032,7 @@ const computeDuration = (remaining, velocity) => {
|
|
|
19039
19032
|
};
|
|
19040
19033
|
|
|
19041
19034
|
const createSheetEnterAnimation = (opts) => {
|
|
19042
|
-
const { currentBreakpoint, backdropBreakpoint
|
|
19035
|
+
const { currentBreakpoint, backdropBreakpoint } = opts;
|
|
19043
19036
|
/**
|
|
19044
19037
|
* If the backdropBreakpoint is undefined, then the backdrop
|
|
19045
19038
|
* should always fade in. If the backdropBreakpoint came before the
|
|
@@ -19059,16 +19052,7 @@ const createSheetEnterAnimation = (opts) => {
|
|
|
19059
19052
|
{ offset: 0, opacity: 1, transform: 'translateY(100%)' },
|
|
19060
19053
|
{ offset: 1, opacity: 1, transform: `translateY(${100 - currentBreakpoint * 100}%)` },
|
|
19061
19054
|
]);
|
|
19062
|
-
|
|
19063
|
-
* This allows the content to be scrollable at any breakpoint.
|
|
19064
|
-
*/
|
|
19065
|
-
const contentAnimation = !expandToScroll
|
|
19066
|
-
? createAnimation('contentAnimation').keyframes([
|
|
19067
|
-
{ offset: 0, opacity: 1, maxHeight: `${(1 - currentBreakpoint) * 100}%` },
|
|
19068
|
-
{ offset: 1, opacity: 1, maxHeight: `${currentBreakpoint * 100}%` },
|
|
19069
|
-
])
|
|
19070
|
-
: undefined;
|
|
19071
|
-
return { wrapperAnimation, backdropAnimation, contentAnimation };
|
|
19055
|
+
return { wrapperAnimation, backdropAnimation };
|
|
19072
19056
|
};
|
|
19073
19057
|
const createSheetLeaveAnimation = (opts) => {
|
|
19074
19058
|
const { currentBreakpoint, backdropBreakpoint } = opts;
|
|
@@ -19103,68 +19087,22 @@ const createEnterAnimation$1 = () => {
|
|
|
19103
19087
|
})
|
|
19104
19088
|
.afterClearStyles(['pointer-events']);
|
|
19105
19089
|
const wrapperAnimation = createAnimation().fromTo('transform', 'translateY(100vh)', 'translateY(0vh)');
|
|
19106
|
-
return { backdropAnimation, wrapperAnimation
|
|
19090
|
+
return { backdropAnimation, wrapperAnimation };
|
|
19107
19091
|
};
|
|
19108
19092
|
/**
|
|
19109
19093
|
* iOS Modal Enter Animation for the Card presentation style
|
|
19110
19094
|
*/
|
|
19111
19095
|
const iosEnterAnimation$3 = (baseEl, opts) => {
|
|
19112
|
-
const { presentingEl, currentBreakpoint
|
|
19096
|
+
const { presentingEl, currentBreakpoint } = opts;
|
|
19113
19097
|
const root = getElementRoot(baseEl);
|
|
19114
|
-
const { wrapperAnimation, backdropAnimation
|
|
19098
|
+
const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation$1();
|
|
19115
19099
|
backdropAnimation.addElement(root.querySelector('ion-backdrop'));
|
|
19116
19100
|
wrapperAnimation.addElement(root.querySelectorAll('.modal-wrapper, .modal-shadow')).beforeStyles({ opacity: 1 });
|
|
19117
|
-
// The content animation is only added if scrolling is enabled for
|
|
19118
|
-
// all the breakpoints.
|
|
19119
|
-
!expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
|
|
19120
19101
|
const baseAnimation = createAnimation('entering-base')
|
|
19121
19102
|
.addElement(baseEl)
|
|
19122
19103
|
.easing('cubic-bezier(0.32,0.72,0,1)')
|
|
19123
19104
|
.duration(500)
|
|
19124
|
-
.addAnimation(
|
|
19125
|
-
.beforeAddWrite(() => {
|
|
19126
|
-
if (expandToScroll) {
|
|
19127
|
-
// Scroll can only be done when the modal is fully expanded.
|
|
19128
|
-
return;
|
|
19129
|
-
}
|
|
19130
|
-
/**
|
|
19131
|
-
* There are some browsers that causes flickering when
|
|
19132
|
-
* dragging the content when scroll is enabled at every
|
|
19133
|
-
* breakpoint. This is due to the wrapper element being
|
|
19134
|
-
* transformed off the screen and having a snap animation.
|
|
19135
|
-
*
|
|
19136
|
-
* A workaround is to clone the footer element and append
|
|
19137
|
-
* it outside of the wrapper element. This way, the footer
|
|
19138
|
-
* is still visible and the drag can be done without
|
|
19139
|
-
* flickering. The original footer is hidden until the modal
|
|
19140
|
-
* is dismissed. This maintains the animation of the footer
|
|
19141
|
-
* when the modal is dismissed.
|
|
19142
|
-
*
|
|
19143
|
-
* The workaround needs to be done before the animation starts
|
|
19144
|
-
* so there are no flickering issues.
|
|
19145
|
-
*/
|
|
19146
|
-
const ionFooter = baseEl.querySelector('ion-footer');
|
|
19147
|
-
/**
|
|
19148
|
-
* This check is needed to prevent more than one footer
|
|
19149
|
-
* from being appended to the shadow root.
|
|
19150
|
-
* Otherwise, iOS and MD enter animations would append
|
|
19151
|
-
* the footer twice.
|
|
19152
|
-
*/
|
|
19153
|
-
const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
|
|
19154
|
-
if (ionFooter && !ionFooterAlreadyAppended) {
|
|
19155
|
-
const footerHeight = ionFooter.clientHeight;
|
|
19156
|
-
const clonedFooter = ionFooter.cloneNode(true);
|
|
19157
|
-
baseEl.shadowRoot.appendChild(clonedFooter);
|
|
19158
|
-
ionFooter.style.setProperty('display', 'none');
|
|
19159
|
-
ionFooter.setAttribute('aria-hidden', 'true');
|
|
19160
|
-
// Padding is added to prevent some content from being hidden.
|
|
19161
|
-
const page = baseEl.querySelector('.ion-page');
|
|
19162
|
-
page.style.setProperty('padding-bottom', `${footerHeight}px`);
|
|
19163
|
-
}
|
|
19164
|
-
});
|
|
19165
|
-
if (contentAnimation) {
|
|
19166
|
-
baseAnimation.addAnimation(contentAnimation);
|
|
19167
|
-
}
|
|
19105
|
+
.addAnimation(wrapperAnimation);
|
|
19168
19106
|
if (presentingEl) {
|
|
19169
19107
|
const isMobile = window.innerWidth < 768;
|
|
19170
19108
|
const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
|
|
@@ -19242,7 +19180,7 @@ const createLeaveAnimation$1 = () => {
|
|
|
19242
19180
|
* iOS Modal Leave Animation
|
|
19243
19181
|
*/
|
|
19244
19182
|
const iosLeaveAnimation$3 = (baseEl, opts, duration = 500) => {
|
|
19245
|
-
const { presentingEl, currentBreakpoint
|
|
19183
|
+
const { presentingEl, currentBreakpoint } = opts;
|
|
19246
19184
|
const root = getElementRoot(baseEl);
|
|
19247
19185
|
const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation$1();
|
|
19248
19186
|
backdropAnimation.addElement(root.querySelector('ion-backdrop'));
|
|
@@ -19251,29 +19189,7 @@ const iosLeaveAnimation$3 = (baseEl, opts, duration = 500) => {
|
|
|
19251
19189
|
.addElement(baseEl)
|
|
19252
19190
|
.easing('cubic-bezier(0.32,0.72,0,1)')
|
|
19253
19191
|
.duration(duration)
|
|
19254
|
-
.addAnimation(wrapperAnimation)
|
|
19255
|
-
.beforeAddWrite(() => {
|
|
19256
|
-
if (expandToScroll) {
|
|
19257
|
-
// Scroll can only be done when the modal is fully expanded.
|
|
19258
|
-
return;
|
|
19259
|
-
}
|
|
19260
|
-
/**
|
|
19261
|
-
* If expandToScroll is disabled, we need to swap
|
|
19262
|
-
* the visibility to the original, so the footer
|
|
19263
|
-
* dismisses with the modal and doesn't stay
|
|
19264
|
-
* until the modal is removed from the DOM.
|
|
19265
|
-
*/
|
|
19266
|
-
const ionFooter = baseEl.querySelector('ion-footer');
|
|
19267
|
-
if (ionFooter) {
|
|
19268
|
-
const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
|
|
19269
|
-
ionFooter.style.removeProperty('display');
|
|
19270
|
-
ionFooter.removeAttribute('aria-hidden');
|
|
19271
|
-
clonedFooter.style.setProperty('display', 'none');
|
|
19272
|
-
clonedFooter.setAttribute('aria-hidden', 'true');
|
|
19273
|
-
const page = baseEl.querySelector('.ion-page');
|
|
19274
|
-
page.style.removeProperty('padding-bottom');
|
|
19275
|
-
}
|
|
19276
|
-
});
|
|
19192
|
+
.addAnimation(wrapperAnimation);
|
|
19277
19193
|
if (presentingEl) {
|
|
19278
19194
|
const isMobile = window.innerWidth < 768;
|
|
19279
19195
|
const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
|
|
@@ -19351,69 +19267,22 @@ const createEnterAnimation = () => {
|
|
|
19351
19267
|
{ offset: 0, opacity: 0.01, transform: 'translateY(40px)' },
|
|
19352
19268
|
{ offset: 1, opacity: 1, transform: `translateY(0px)` },
|
|
19353
19269
|
]);
|
|
19354
|
-
return { backdropAnimation, wrapperAnimation
|
|
19270
|
+
return { backdropAnimation, wrapperAnimation };
|
|
19355
19271
|
};
|
|
19356
19272
|
/**
|
|
19357
19273
|
* Md Modal Enter Animation
|
|
19358
19274
|
*/
|
|
19359
19275
|
const mdEnterAnimation$2 = (baseEl, opts) => {
|
|
19360
|
-
const { currentBreakpoint
|
|
19276
|
+
const { currentBreakpoint } = opts;
|
|
19361
19277
|
const root = getElementRoot(baseEl);
|
|
19362
|
-
const { wrapperAnimation, backdropAnimation
|
|
19278
|
+
const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation();
|
|
19363
19279
|
backdropAnimation.addElement(root.querySelector('ion-backdrop'));
|
|
19364
19280
|
wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
|
|
19365
|
-
|
|
19366
|
-
// all the breakpoints.
|
|
19367
|
-
expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
|
|
19368
|
-
const baseAnimation = createAnimation()
|
|
19281
|
+
return createAnimation()
|
|
19369
19282
|
.addElement(baseEl)
|
|
19370
19283
|
.easing('cubic-bezier(0.36,0.66,0.04,1)')
|
|
19371
19284
|
.duration(280)
|
|
19372
|
-
.addAnimation([backdropAnimation, wrapperAnimation])
|
|
19373
|
-
.beforeAddWrite(() => {
|
|
19374
|
-
if (expandToScroll) {
|
|
19375
|
-
// Scroll can only be done when the modal is fully expanded.
|
|
19376
|
-
return;
|
|
19377
|
-
}
|
|
19378
|
-
/**
|
|
19379
|
-
* There are some browsers that causes flickering when
|
|
19380
|
-
* dragging the content when scroll is enabled at every
|
|
19381
|
-
* breakpoint. This is due to the wrapper element being
|
|
19382
|
-
* transformed off the screen and having a snap animation.
|
|
19383
|
-
*
|
|
19384
|
-
* A workaround is to clone the footer element and append
|
|
19385
|
-
* it outside of the wrapper element. This way, the footer
|
|
19386
|
-
* is still visible and the drag can be done without
|
|
19387
|
-
* flickering. The original footer is hidden until the modal
|
|
19388
|
-
* is dismissed. This maintains the animation of the footer
|
|
19389
|
-
* when the modal is dismissed.
|
|
19390
|
-
*
|
|
19391
|
-
* The workaround needs to be done before the animation starts
|
|
19392
|
-
* so there are no flickering issues.
|
|
19393
|
-
*/
|
|
19394
|
-
const ionFooter = baseEl.querySelector('ion-footer');
|
|
19395
|
-
/**
|
|
19396
|
-
* This check is needed to prevent more than one footer
|
|
19397
|
-
* from being appended to the shadow root.
|
|
19398
|
-
* Otherwise, iOS and MD enter animations would append
|
|
19399
|
-
* the footer twice.
|
|
19400
|
-
*/
|
|
19401
|
-
const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
|
|
19402
|
-
if (ionFooter && !ionFooterAlreadyAppended) {
|
|
19403
|
-
const footerHeight = ionFooter.clientHeight;
|
|
19404
|
-
const clonedFooter = ionFooter.cloneNode(true);
|
|
19405
|
-
baseEl.shadowRoot.appendChild(clonedFooter);
|
|
19406
|
-
ionFooter.style.setProperty('display', 'none');
|
|
19407
|
-
ionFooter.setAttribute('aria-hidden', 'true');
|
|
19408
|
-
// Padding is added to prevent some content from being hidden.
|
|
19409
|
-
const page = baseEl.querySelector('.ion-page');
|
|
19410
|
-
page.style.setProperty('padding-bottom', `${footerHeight}px`);
|
|
19411
|
-
}
|
|
19412
|
-
});
|
|
19413
|
-
if (contentAnimation) {
|
|
19414
|
-
baseAnimation.addAnimation(contentAnimation);
|
|
19415
|
-
}
|
|
19416
|
-
return baseAnimation;
|
|
19285
|
+
.addAnimation([backdropAnimation, wrapperAnimation]);
|
|
19417
19286
|
};
|
|
19418
19287
|
|
|
19419
19288
|
const createLeaveAnimation = () => {
|
|
@@ -19428,41 +19297,18 @@ const createLeaveAnimation = () => {
|
|
|
19428
19297
|
* Md Modal Leave Animation
|
|
19429
19298
|
*/
|
|
19430
19299
|
const mdLeaveAnimation$2 = (baseEl, opts) => {
|
|
19431
|
-
const { currentBreakpoint
|
|
19300
|
+
const { currentBreakpoint } = opts;
|
|
19432
19301
|
const root = getElementRoot(baseEl);
|
|
19433
19302
|
const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation();
|
|
19434
19303
|
backdropAnimation.addElement(root.querySelector('ion-backdrop'));
|
|
19435
19304
|
wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
|
|
19436
|
-
|
|
19305
|
+
return createAnimation()
|
|
19437
19306
|
.easing('cubic-bezier(0.47,0,0.745,0.715)')
|
|
19438
19307
|
.duration(200)
|
|
19439
|
-
.addAnimation([backdropAnimation, wrapperAnimation])
|
|
19440
|
-
.beforeAddWrite(() => {
|
|
19441
|
-
if (expandToScroll) {
|
|
19442
|
-
// Scroll can only be done when the modal is fully expanded.
|
|
19443
|
-
return;
|
|
19444
|
-
}
|
|
19445
|
-
/**
|
|
19446
|
-
* If expandToScroll is disabled, we need to swap
|
|
19447
|
-
* the visibility to the original, so the footer
|
|
19448
|
-
* dismisses with the modal and doesn't stay
|
|
19449
|
-
* until the modal is removed from the DOM.
|
|
19450
|
-
*/
|
|
19451
|
-
const ionFooter = baseEl.querySelector('ion-footer');
|
|
19452
|
-
if (ionFooter) {
|
|
19453
|
-
const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
|
|
19454
|
-
ionFooter.style.removeProperty('display');
|
|
19455
|
-
ionFooter.removeAttribute('aria-hidden');
|
|
19456
|
-
clonedFooter.style.setProperty('display', 'none');
|
|
19457
|
-
clonedFooter.setAttribute('aria-hidden', 'true');
|
|
19458
|
-
const page = baseEl.querySelector('.ion-page');
|
|
19459
|
-
page.style.removeProperty('padding-bottom');
|
|
19460
|
-
}
|
|
19461
|
-
});
|
|
19462
|
-
return baseAnimation;
|
|
19308
|
+
.addAnimation([backdropAnimation, wrapperAnimation]);
|
|
19463
19309
|
};
|
|
19464
19310
|
|
|
19465
|
-
const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [],
|
|
19311
|
+
const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], getCurrentBreakpoint, onDismiss, onBreakpointChange) => {
|
|
19466
19312
|
// Defaults for the sheet swipe animation
|
|
19467
19313
|
const defaultBackdrop = [
|
|
19468
19314
|
{ offset: 0, opacity: 'var(--backdrop-opacity)' },
|
|
@@ -19479,10 +19325,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19479
19325
|
{ offset: 1, transform: 'translateY(100%)' },
|
|
19480
19326
|
],
|
|
19481
19327
|
BACKDROP_KEYFRAMES: backdropBreakpoint !== 0 ? customBackdrop : defaultBackdrop,
|
|
19482
|
-
CONTENT_KEYFRAMES: [
|
|
19483
|
-
{ offset: 0, maxHeight: '100%' },
|
|
19484
|
-
{ offset: 1, maxHeight: '0%' },
|
|
19485
|
-
],
|
|
19486
19328
|
};
|
|
19487
19329
|
const contentEl = baseEl.querySelector('ion-content');
|
|
19488
19330
|
const height = wrapperEl.clientHeight;
|
|
@@ -19490,11 +19332,10 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19490
19332
|
let offset = 0;
|
|
19491
19333
|
let canDismissBlocksGesture = false;
|
|
19492
19334
|
const canDismissMaxStep = 0.95;
|
|
19493
|
-
const maxBreakpoint = breakpoints[breakpoints.length - 1];
|
|
19494
|
-
const minBreakpoint = breakpoints[0];
|
|
19495
19335
|
const wrapperAnimation = animation.childAnimations.find((ani) => ani.id === 'wrapperAnimation');
|
|
19496
19336
|
const backdropAnimation = animation.childAnimations.find((ani) => ani.id === 'backdropAnimation');
|
|
19497
|
-
const
|
|
19337
|
+
const maxBreakpoint = breakpoints[breakpoints.length - 1];
|
|
19338
|
+
const minBreakpoint = breakpoints[0];
|
|
19498
19339
|
const enableBackdrop = () => {
|
|
19499
19340
|
baseEl.style.setProperty('pointer-events', 'auto');
|
|
19500
19341
|
backdropEl.style.setProperty('pointer-events', 'auto');
|
|
@@ -19517,31 +19358,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19517
19358
|
*/
|
|
19518
19359
|
baseEl.classList.add(FOCUS_TRAP_DISABLE_CLASS);
|
|
19519
19360
|
};
|
|
19520
|
-
/**
|
|
19521
|
-
* Toggles the visible modal footer when `expandToScroll` is disabled.
|
|
19522
|
-
* @param footer The footer to show.
|
|
19523
|
-
*/
|
|
19524
|
-
const swapFooterVisibility = (footer) => {
|
|
19525
|
-
const originalFooter = baseEl.querySelector('ion-footer');
|
|
19526
|
-
if (!originalFooter) {
|
|
19527
|
-
return;
|
|
19528
|
-
}
|
|
19529
|
-
const clonedFooter = wrapperEl.nextElementSibling;
|
|
19530
|
-
const footerToHide = footer === 'original' ? clonedFooter : originalFooter;
|
|
19531
|
-
const footerToShow = footer === 'original' ? originalFooter : clonedFooter;
|
|
19532
|
-
footerToShow.style.removeProperty('display');
|
|
19533
|
-
footerToShow.removeAttribute('aria-hidden');
|
|
19534
|
-
const page = baseEl.querySelector('.ion-page');
|
|
19535
|
-
if (footer === 'original') {
|
|
19536
|
-
page.style.removeProperty('padding-bottom');
|
|
19537
|
-
}
|
|
19538
|
-
else {
|
|
19539
|
-
const pagePadding = footerToShow.clientHeight;
|
|
19540
|
-
page.style.setProperty('padding-bottom', `${pagePadding}px`);
|
|
19541
|
-
}
|
|
19542
|
-
footerToHide.style.setProperty('display', 'none');
|
|
19543
|
-
footerToHide.setAttribute('aria-hidden', 'true');
|
|
19544
|
-
};
|
|
19545
19361
|
/**
|
|
19546
19362
|
* After the entering animation completes,
|
|
19547
19363
|
* we need to set the animation to go from
|
|
@@ -19553,7 +19369,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19553
19369
|
if (wrapperAnimation && backdropAnimation) {
|
|
19554
19370
|
wrapperAnimation.keyframes([...SheetDefaults.WRAPPER_KEYFRAMES]);
|
|
19555
19371
|
backdropAnimation.keyframes([...SheetDefaults.BACKDROP_KEYFRAMES]);
|
|
19556
|
-
contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.keyframes([...SheetDefaults.CONTENT_KEYFRAMES]);
|
|
19557
19372
|
animation.progressStart(true, 1 - currentBreakpoint);
|
|
19558
19373
|
/**
|
|
19559
19374
|
* If backdrop is not enabled, then content
|
|
@@ -19570,7 +19385,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19570
19385
|
disableBackdrop();
|
|
19571
19386
|
}
|
|
19572
19387
|
}
|
|
19573
|
-
if (contentEl && currentBreakpoint !== maxBreakpoint
|
|
19388
|
+
if (contentEl && currentBreakpoint !== maxBreakpoint) {
|
|
19574
19389
|
contentEl.scrollY = false;
|
|
19575
19390
|
}
|
|
19576
19391
|
const canStart = (detail) => {
|
|
@@ -19584,13 +19399,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19584
19399
|
*/
|
|
19585
19400
|
const contentEl = findClosestIonContent(detail.event.target);
|
|
19586
19401
|
currentBreakpoint = getCurrentBreakpoint();
|
|
19587
|
-
/**
|
|
19588
|
-
* If we have expandToScroll disabled, we should not allow the swipe gesture to start
|
|
19589
|
-
* if the content is being swiped.
|
|
19590
|
-
*/
|
|
19591
|
-
if (!expandToScroll && contentEl) {
|
|
19592
|
-
return false;
|
|
19593
|
-
}
|
|
19594
19402
|
if (currentBreakpoint === 1 && contentEl) {
|
|
19595
19403
|
/**
|
|
19596
19404
|
* The modal should never swipe to close on the content with a refresher.
|
|
@@ -19621,15 +19429,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19621
19429
|
* Remove undefined check
|
|
19622
19430
|
*/
|
|
19623
19431
|
canDismissBlocksGesture = baseEl.canDismiss !== undefined && baseEl.canDismiss !== true && minBreakpoint === 0;
|
|
19624
|
-
/**
|
|
19625
|
-
* If expandToScroll is disabled, we need to swap
|
|
19626
|
-
* the footer visibility to the original, so if the modal
|
|
19627
|
-
* is dismissed, the footer dismisses with the modal
|
|
19628
|
-
* and doesn't stay on the screen after the modal is gone.
|
|
19629
|
-
*/
|
|
19630
|
-
if (!expandToScroll) {
|
|
19631
|
-
swapFooterVisibility('original');
|
|
19632
|
-
}
|
|
19633
19432
|
/**
|
|
19634
19433
|
* If we are pulling down, then it is possible we are pulling on the content.
|
|
19635
19434
|
* We do not want scrolling to happen at the same time as the gesture.
|
|
@@ -19745,19 +19544,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19745
19544
|
opacity: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(snapToBreakpoint, backdropBreakpoint)})`,
|
|
19746
19545
|
},
|
|
19747
19546
|
]);
|
|
19748
|
-
if (contentAnimation) {
|
|
19749
|
-
/**
|
|
19750
|
-
* The modal content should scroll at any breakpoint when expandToScroll
|
|
19751
|
-
* is disabled. In order to do this, the content needs to be completely
|
|
19752
|
-
* viewable so scrolling can access everything. Otherwise, the default
|
|
19753
|
-
* behavior would show the content off the screen and only allow
|
|
19754
|
-
* scrolling when the sheet is fully expanded.
|
|
19755
|
-
*/
|
|
19756
|
-
contentAnimation.keyframes([
|
|
19757
|
-
{ offset: 0, maxHeight: `${(1 - breakpointOffset) * 100}%` },
|
|
19758
|
-
{ offset: 1, maxHeight: `${snapToBreakpoint * 100}%` },
|
|
19759
|
-
]);
|
|
19760
|
-
}
|
|
19761
19547
|
animation.progressStep(0);
|
|
19762
19548
|
}
|
|
19763
19549
|
/**
|
|
@@ -19765,14 +19551,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19765
19551
|
* snapping animation completes.
|
|
19766
19552
|
*/
|
|
19767
19553
|
gesture.enable(false);
|
|
19768
|
-
/**
|
|
19769
|
-
* If expandToScroll is disabled, we need to swap
|
|
19770
|
-
* the footer visibility to the cloned one so the footer
|
|
19771
|
-
* doesn't flicker when the sheet's height is animated.
|
|
19772
|
-
*/
|
|
19773
|
-
if (!expandToScroll && shouldRemainOpen) {
|
|
19774
|
-
swapFooterVisibility('cloned');
|
|
19775
|
-
}
|
|
19776
19554
|
if (shouldPreventDismiss) {
|
|
19777
19555
|
handleCanDismiss(baseEl, animation);
|
|
19778
19556
|
}
|
|
@@ -19780,13 +19558,13 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19780
19558
|
onDismiss();
|
|
19781
19559
|
}
|
|
19782
19560
|
/**
|
|
19783
|
-
*
|
|
19784
|
-
*
|
|
19785
|
-
*
|
|
19786
|
-
*
|
|
19787
|
-
* released, so we align with that
|
|
19561
|
+
* If the sheet is going to be fully expanded then we should enable
|
|
19562
|
+
* scrolling immediately. The sheet modal animation takes ~500ms to finish
|
|
19563
|
+
* so if we wait until then there is a visible delay for when scrolling is
|
|
19564
|
+
* re-enabled. Native iOS allows for scrolling on the sheet modal as soon
|
|
19565
|
+
* as the gesture is released, so we align with that.
|
|
19788
19566
|
*/
|
|
19789
|
-
if (contentEl &&
|
|
19567
|
+
if (contentEl && snapToBreakpoint === breakpoints[breakpoints.length - 1]) {
|
|
19790
19568
|
contentEl.scrollY = true;
|
|
19791
19569
|
}
|
|
19792
19570
|
return new Promise((resolve) => {
|
|
@@ -19804,7 +19582,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19804
19582
|
raf(() => {
|
|
19805
19583
|
wrapperAnimation.keyframes([...SheetDefaults.WRAPPER_KEYFRAMES]);
|
|
19806
19584
|
backdropAnimation.keyframes([...SheetDefaults.BACKDROP_KEYFRAMES]);
|
|
19807
|
-
contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.keyframes([...SheetDefaults.CONTENT_KEYFRAMES]);
|
|
19808
19585
|
animation.progressStart(true, 1 - snapToBreakpoint);
|
|
19809
19586
|
currentBreakpoint = snapToBreakpoint;
|
|
19810
19587
|
onBreakpointChange(currentBreakpoint);
|
|
@@ -19857,10 +19634,10 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
19857
19634
|
};
|
|
19858
19635
|
};
|
|
19859
19636
|
|
|
19860
|
-
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
|
|
19637
|
+
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}";
|
|
19861
19638
|
var IonModalIosStyle0 = modalIosCss;
|
|
19862
19639
|
|
|
19863
|
-
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
|
|
19640
|
+
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}";
|
|
19864
19641
|
var IonModalMdStyle0 = modalMdCss;
|
|
19865
19642
|
|
|
19866
19643
|
// TODO(FW-2832): types
|
|
@@ -19939,7 +19716,6 @@ class Modal {
|
|
|
19939
19716
|
this.enterAnimation = undefined;
|
|
19940
19717
|
this.leaveAnimation = undefined;
|
|
19941
19718
|
this.breakpoints = undefined;
|
|
19942
|
-
this.expandToScroll = true;
|
|
19943
19719
|
this.initialBreakpoint = undefined;
|
|
19944
19720
|
this.backdropBreakpoint = 0;
|
|
19945
19721
|
this.handle = undefined;
|
|
@@ -20155,7 +19931,6 @@ class Modal {
|
|
|
20155
19931
|
presentingEl: presentingElement,
|
|
20156
19932
|
currentBreakpoint: this.initialBreakpoint,
|
|
20157
19933
|
backdropBreakpoint: this.backdropBreakpoint,
|
|
20158
|
-
expandToScroll: this.expandToScroll,
|
|
20159
19934
|
});
|
|
20160
19935
|
/* tslint:disable-next-line */
|
|
20161
19936
|
if (typeof window !== 'undefined') {
|
|
@@ -20206,10 +19981,7 @@ class Modal {
|
|
|
20206
19981
|
// should be in the DOM and referenced by now, except
|
|
20207
19982
|
// for the presenting el
|
|
20208
19983
|
const animationBuilder = this.leaveAnimation || config.get('modalLeave', iosLeaveAnimation$3);
|
|
20209
|
-
const ani = (this.animation = animationBuilder(el, {
|
|
20210
|
-
presentingEl: this.presentingElement,
|
|
20211
|
-
expandToScroll: this.expandToScroll,
|
|
20212
|
-
}));
|
|
19984
|
+
const ani = (this.animation = animationBuilder(el, { presentingEl: this.presentingElement }));
|
|
20213
19985
|
const contentEl = findIonContent(el);
|
|
20214
19986
|
if (!contentEl) {
|
|
20215
19987
|
printIonContentErrorMsg(el);
|
|
@@ -20254,10 +20026,9 @@ class Modal {
|
|
|
20254
20026
|
presentingEl: this.presentingElement,
|
|
20255
20027
|
currentBreakpoint: initialBreakpoint,
|
|
20256
20028
|
backdropBreakpoint,
|
|
20257
|
-
expandToScroll: this.expandToScroll,
|
|
20258
20029
|
}));
|
|
20259
20030
|
ani.progressStart(true, 1);
|
|
20260
|
-
const { gesture, moveSheetToBreakpoint } = createSheetGesture(this.el, this.backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, ani, this.sortedBreakpoints,
|
|
20031
|
+
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) => {
|
|
20261
20032
|
if (this.currentBreakpoint !== breakpoint) {
|
|
20262
20033
|
this.currentBreakpoint = breakpoint;
|
|
20263
20034
|
this.ionBreakpointDidChange.emit({ breakpoint });
|
|
@@ -20335,7 +20106,6 @@ class Modal {
|
|
|
20335
20106
|
presentingEl: presentingElement,
|
|
20336
20107
|
currentBreakpoint: (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : this.initialBreakpoint,
|
|
20337
20108
|
backdropBreakpoint: this.backdropBreakpoint,
|
|
20338
|
-
expandToScroll: this.expandToScroll,
|
|
20339
20109
|
});
|
|
20340
20110
|
if (dismissed) {
|
|
20341
20111
|
const { delegate } = this.getDelegate();
|
|
@@ -20421,23 +20191,23 @@ class Modal {
|
|
|
20421
20191
|
return true;
|
|
20422
20192
|
}
|
|
20423
20193
|
render() {
|
|
20424
|
-
const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap
|
|
20194
|
+
const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap } = this;
|
|
20425
20195
|
const showHandle = handle !== false && isSheetModal;
|
|
20426
20196
|
const mode = getIonMode$1(this);
|
|
20427
20197
|
const isCardModal = presentingElement !== undefined && mode === 'ios';
|
|
20428
20198
|
const isHandleCycle = handleBehavior === 'cycle';
|
|
20429
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
20199
|
+
return (hAsync(Host, Object.assign({ key: 'b4da5111fe4719fa450c39b2d4bd884a302a7924', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
|
|
20430
20200
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
20431
|
-
}, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal,
|
|
20201
|
+
}, 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',
|
|
20432
20202
|
/*
|
|
20433
20203
|
role and aria-modal must be used on the
|
|
20434
20204
|
same element. They must also be set inside the
|
|
20435
20205
|
shadow DOM otherwise ion-button will not be highlighted
|
|
20436
20206
|
when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
|
|
20437
20207
|
*/
|
|
20438
|
-
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: '
|
|
20208
|
+
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",
|
|
20439
20209
|
// Prevents the handle from receiving keyboard focus when it does not cycle
|
|
20440
|
-
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: '
|
|
20210
|
+
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' }))));
|
|
20441
20211
|
}
|
|
20442
20212
|
get el() { return getElement(this); }
|
|
20443
20213
|
static get watchers() { return {
|
|
@@ -20459,7 +20229,6 @@ class Modal {
|
|
|
20459
20229
|
"enterAnimation": [16],
|
|
20460
20230
|
"leaveAnimation": [16],
|
|
20461
20231
|
"breakpoints": [16],
|
|
20462
|
-
"expandToScroll": [4, "expand-to-scroll"],
|
|
20463
20232
|
"initialBreakpoint": [2, "initial-breakpoint"],
|
|
20464
20233
|
"backdropBreakpoint": [2, "backdrop-breakpoint"],
|
|
20465
20234
|
"handle": [4],
|
|
@@ -29934,7 +29703,6 @@ class Select {
|
|
|
29934
29703
|
this.expandedIcon = undefined;
|
|
29935
29704
|
this.shape = undefined;
|
|
29936
29705
|
this.value = undefined;
|
|
29937
|
-
this.required = false;
|
|
29938
29706
|
}
|
|
29939
29707
|
styleChanged() {
|
|
29940
29708
|
this.emitStyle();
|
|
@@ -29990,8 +29758,15 @@ class Select {
|
|
|
29990
29758
|
}
|
|
29991
29759
|
this.isExpanded = true;
|
|
29992
29760
|
const overlay = (this.overlay = await this.createOverlay(event));
|
|
29993
|
-
|
|
29994
|
-
|
|
29761
|
+
overlay.onDidDismiss().then(() => {
|
|
29762
|
+
this.overlay = undefined;
|
|
29763
|
+
this.isExpanded = false;
|
|
29764
|
+
this.ionDismiss.emit();
|
|
29765
|
+
this.setFocus();
|
|
29766
|
+
});
|
|
29767
|
+
await overlay.present();
|
|
29768
|
+
// focus selected option for popovers and modals
|
|
29769
|
+
if (this.interface === 'popover' || this.interface === 'modal') {
|
|
29995
29770
|
const indexOfSelected = this.childOpts.findIndex((o) => o.value === this.value);
|
|
29996
29771
|
if (indexOfSelected > -1) {
|
|
29997
29772
|
const selectedItem = overlay.querySelector(`.select-interface-option:nth-child(${indexOfSelected + 1})`);
|
|
@@ -30009,7 +29784,6 @@ class Select {
|
|
|
30009
29784
|
*/
|
|
30010
29785
|
const interactiveEl = selectedItem.querySelector('ion-radio, ion-checkbox');
|
|
30011
29786
|
if (interactiveEl) {
|
|
30012
|
-
selectedItem.scrollIntoView({ block: 'nearest' });
|
|
30013
29787
|
// Needs to be called before `focusVisibleElement` to prevent issue with focus event bubbling
|
|
30014
29788
|
// and removing `ion-focused` style
|
|
30015
29789
|
interactiveEl.setFocus();
|
|
@@ -30033,40 +29807,7 @@ class Select {
|
|
|
30033
29807
|
focusVisibleElement(firstEnabledOption.closest('ion-item'));
|
|
30034
29808
|
}
|
|
30035
29809
|
}
|
|
30036
|
-
};
|
|
30037
|
-
// For modals and popovers, we can scroll before they're visible
|
|
30038
|
-
if (this.interface === 'modal') {
|
|
30039
|
-
overlay.addEventListener('ionModalWillPresent', scrollSelectedIntoView, { once: true });
|
|
30040
29810
|
}
|
|
30041
|
-
else if (this.interface === 'popover') {
|
|
30042
|
-
overlay.addEventListener('ionPopoverWillPresent', scrollSelectedIntoView, { once: true });
|
|
30043
|
-
}
|
|
30044
|
-
else {
|
|
30045
|
-
/**
|
|
30046
|
-
* For alerts and action sheets, we need to wait a frame after willPresent
|
|
30047
|
-
* because these overlays don't have their content in the DOM immediately
|
|
30048
|
-
* when willPresent fires. By waiting a frame, we ensure the content is
|
|
30049
|
-
* rendered and can be properly scrolled into view.
|
|
30050
|
-
*/
|
|
30051
|
-
const scrollAfterRender = () => {
|
|
30052
|
-
requestAnimationFrame(() => {
|
|
30053
|
-
scrollSelectedIntoView();
|
|
30054
|
-
});
|
|
30055
|
-
};
|
|
30056
|
-
if (this.interface === 'alert') {
|
|
30057
|
-
overlay.addEventListener('ionAlertWillPresent', scrollAfterRender, { once: true });
|
|
30058
|
-
}
|
|
30059
|
-
else if (this.interface === 'action-sheet') {
|
|
30060
|
-
overlay.addEventListener('ionActionSheetWillPresent', scrollAfterRender, { once: true });
|
|
30061
|
-
}
|
|
30062
|
-
}
|
|
30063
|
-
overlay.onDidDismiss().then(() => {
|
|
30064
|
-
this.overlay = undefined;
|
|
30065
|
-
this.isExpanded = false;
|
|
30066
|
-
this.ionDismiss.emit();
|
|
30067
|
-
this.setFocus();
|
|
30068
|
-
});
|
|
30069
|
-
await overlay.present();
|
|
30070
29811
|
return overlay;
|
|
30071
29812
|
}
|
|
30072
29813
|
createOverlay(ev) {
|
|
@@ -30446,8 +30187,8 @@ class Select {
|
|
|
30446
30187
|
return renderedLabel;
|
|
30447
30188
|
}
|
|
30448
30189
|
renderListbox() {
|
|
30449
|
-
const { disabled, inputId, isExpanded
|
|
30450
|
-
return (hAsync("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`,
|
|
30190
|
+
const { disabled, inputId, isExpanded } = this;
|
|
30191
|
+
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) }));
|
|
30451
30192
|
}
|
|
30452
30193
|
render() {
|
|
30453
30194
|
const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value } = this;
|
|
@@ -30478,7 +30219,7 @@ class Select {
|
|
|
30478
30219
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
30479
30220
|
*/
|
|
30480
30221
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
|
|
30481
|
-
return (hAsync(Host, { key: '
|
|
30222
|
+
return (hAsync(Host, { key: '144dfa5c49549a74fe516c65b9b8104a477ac789', onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
30482
30223
|
[mode]: true,
|
|
30483
30224
|
'in-item': inItem,
|
|
30484
30225
|
'in-item-color': hostContext('ion-item.ion-color', el),
|
|
@@ -30494,7 +30235,7 @@ class Select {
|
|
|
30494
30235
|
[`select-justify-${justify}`]: justifyEnabled,
|
|
30495
30236
|
[`select-shape-${shape}`]: shape !== undefined,
|
|
30496
30237
|
[`select-label-placement-${labelPlacement}`]: true,
|
|
30497
|
-
}) }, hAsync("label", { key: '
|
|
30238
|
+
}) }, 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" }))));
|
|
30498
30239
|
}
|
|
30499
30240
|
get el() { return getElement(this); }
|
|
30500
30241
|
static get watchers() { return {
|
|
@@ -30530,7 +30271,6 @@ class Select {
|
|
|
30530
30271
|
"expandedIcon": [1, "expanded-icon"],
|
|
30531
30272
|
"shape": [1],
|
|
30532
30273
|
"value": [1032],
|
|
30533
|
-
"required": [4],
|
|
30534
30274
|
"isExpanded": [32],
|
|
30535
30275
|
"open": [64]
|
|
30536
30276
|
},
|
|
@@ -32927,7 +32667,6 @@ class Toggle {
|
|
|
32927
32667
|
this.labelPlacement = 'start';
|
|
32928
32668
|
this.justify = undefined;
|
|
32929
32669
|
this.alignment = undefined;
|
|
32930
|
-
this.required = false;
|
|
32931
32670
|
}
|
|
32932
32671
|
disabledChanged() {
|
|
32933
32672
|
if (this.gesture) {
|
|
@@ -33009,12 +32748,12 @@ class Toggle {
|
|
|
33009
32748
|
return this.el.textContent !== '';
|
|
33010
32749
|
}
|
|
33011
32750
|
render() {
|
|
33012
|
-
const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment
|
|
32751
|
+
const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment } = this;
|
|
33013
32752
|
const mode = getIonMode$1(this);
|
|
33014
32753
|
const value = this.getValue();
|
|
33015
32754
|
const rtl = isRTL$1(el) ? 'rtl' : 'ltr';
|
|
33016
32755
|
renderHiddenInput(true, el, name, checked ? value : '', disabled);
|
|
33017
|
-
return (hAsync(Host, { key: '
|
|
32756
|
+
return (hAsync(Host, { key: 'f52195ec3bc14c024647cb41319c32a4cd330e19', onClick: this.onClick, class: createColorClasses$1(color, {
|
|
33018
32757
|
[mode]: true,
|
|
33019
32758
|
'in-item': hostContext('ion-item', el),
|
|
33020
32759
|
'toggle-activated': activated,
|
|
@@ -33024,10 +32763,10 @@ class Toggle {
|
|
|
33024
32763
|
[`toggle-alignment-${alignment}`]: alignment !== undefined,
|
|
33025
32764
|
[`toggle-label-placement-${labelPlacement}`]: true,
|
|
33026
32765
|
[`toggle-${rtl}`]: true,
|
|
33027
|
-
}) }, hAsync("label", { key: '
|
|
32766
|
+
}) }, 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: {
|
|
33028
32767
|
'label-text-wrapper': true,
|
|
33029
32768
|
'label-text-wrapper-hidden': !this.hasLabel,
|
|
33030
|
-
}, part: "label" }, hAsync("slot", { key: '
|
|
32769
|
+
}, part: "label" }, hAsync("slot", { key: '80a6672e2e792c15011a9496dcd75363cdba31c6' })), hAsync("div", { key: '2b2b318b38ab27b194c0dab4cecd77d9d780f2ca', class: "native-wrapper" }, this.renderToggleControl()))));
|
|
33031
32770
|
}
|
|
33032
32771
|
get el() { return getElement(this); }
|
|
33033
32772
|
static get watchers() { return {
|
|
@@ -33050,7 +32789,6 @@ class Toggle {
|
|
|
33050
32789
|
"labelPlacement": [1, "label-placement"],
|
|
33051
32790
|
"justify": [1],
|
|
33052
32791
|
"alignment": [1],
|
|
33053
|
-
"required": [4],
|
|
33054
32792
|
"activated": [32]
|
|
33055
32793
|
},
|
|
33056
32794
|
"$listeners$": undefined,
|
|
@@ -33082,10 +32820,6 @@ var IonToolbarMdStyle0 = toolbarMdCss;
|
|
|
33082
32820
|
* @slot secondary - Content is placed to the left of the toolbar text in `ios` mode, and directly to the right in `md` mode.
|
|
33083
32821
|
* @slot primary - Content is placed to the right of the toolbar text in `ios` mode, and to the far right in `md` mode.
|
|
33084
32822
|
* @slot end - Content is placed to the right of the toolbar text in LTR, and to the left in RTL.
|
|
33085
|
-
*
|
|
33086
|
-
* @part background - The background of the toolbar, covering the entire area behind the toolbar content.
|
|
33087
|
-
* @part container - The container that wraps all toolbar content, including the default slot and named slot content.
|
|
33088
|
-
* @part content - The container for the default slot, wrapping content provided without a named slot.
|
|
33089
32823
|
*/
|
|
33090
32824
|
class Toolbar {
|
|
33091
32825
|
constructor(hostRef) {
|
|
@@ -33136,10 +32870,10 @@ class Toolbar {
|
|
|
33136
32870
|
this.childrenStyles.forEach((value) => {
|
|
33137
32871
|
Object.assign(childStyles, value);
|
|
33138
32872
|
});
|
|
33139
|
-
return (hAsync(Host, { key: '
|
|
32873
|
+
return (hAsync(Host, { key: '462538a5ecd01baf3cde116c9f029aeda26c81be', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
|
|
33140
32874
|
[mode]: true,
|
|
33141
32875
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
33142
|
-
})) }, hAsync("div", { key: '
|
|
32876
|
+
})) }, 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" }))));
|
|
33143
32877
|
}
|
|
33144
32878
|
get el() { return getElement(this); }
|
|
33145
32879
|
static get style() { return {
|