@ionic/core 7.6.8-dev.11706715287.1950fa40 → 7.7.0
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/hardware-back-button.js +47 -3
- package/components/helpers.js +1 -1
- package/components/ion-app.js +12 -2
- package/components/ion-menu.js +9 -3
- package/components/ion-modal.js +6 -4
- package/components/ion-split-pane.js +11 -12
- package/components/overlays.js +30 -15
- package/dist/cjs/{animation-9b401d39.js → animation-fdab9de5.js} +1 -1
- package/dist/cjs/{form-controller-7d42a722.js → form-controller-7b90d7b7.js} +1 -1
- package/dist/cjs/{framework-delegate-1c29b14a.js → framework-delegate-a3e6d060.js} +1 -1
- package/dist/cjs/{hardware-back-button-76833cac.js → hardware-back-button-d23873bb.js} +48 -2
- package/dist/cjs/{helpers-76bb7efb.js → helpers-2e1028fa.js} +1 -1
- package/dist/cjs/{index-b4f986cd.js → index-10da82ce.js} +1 -1
- package/dist/cjs/{index-da15e99c.js → index-53d162b2.js} +1 -1
- package/dist/cjs/{index-fc6d268f.js → index-84351d21.js} +3 -3
- package/dist/cjs/{index-8aef188d.js → index-8c679cbf.js} +3 -3
- package/dist/cjs/index.cjs.js +9 -9
- package/dist/cjs/{input-shims-a23bb0f4.js → input-shims-6f804705.js} +2 -2
- package/dist/cjs/{input.utils-3d0166a2.js → input.utils-d693d18a.js} +1 -1
- package/dist/cjs/ion-accordion_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-action-sheet.cjs.entry.js +5 -5
- package/dist/cjs/ion-alert.cjs.entry.js +5 -5
- package/dist/cjs/ion-app_8.cjs.entry.js +31 -22
- package/dist/cjs/ion-back-button.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 +1 -1
- package/dist/cjs/ion-card_5.cjs.entry.js +1 -1
- package/dist/cjs/ion-checkbox.cjs.entry.js +2 -2
- package/dist/cjs/ion-datetime-button.cjs.entry.js +1 -1
- 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 +2 -2
- package/dist/cjs/ion-input.cjs.entry.js +4 -4
- package/dist/cjs/ion-item-option_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-item_8.cjs.entry.js +1 -1
- package/dist/cjs/ion-loading.cjs.entry.js +5 -5
- package/dist/cjs/ion-menu_3.cjs.entry.js +13 -8
- package/dist/cjs/ion-modal.cjs.entry.js +12 -10
- package/dist/cjs/ion-nav_2.cjs.entry.js +4 -4
- package/dist/cjs/ion-picker-column-internal.cjs.entry.js +1 -1
- package/dist/cjs/ion-picker-internal.cjs.entry.js +1 -1
- package/dist/cjs/ion-popover.cjs.entry.js +6 -6
- package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
- package/dist/cjs/ion-radio_2.cjs.entry.js +2 -2
- 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 +2 -2
- 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_3.cjs.entry.js +6 -6
- package/dist/cjs/ion-split-pane.cjs.entry.js +11 -12
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-tab_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-textarea.cjs.entry.js +4 -4
- package/dist/cjs/ion-toast.cjs.entry.js +5 -5
- package/dist/cjs/ion-toggle.cjs.entry.js +2 -2
- package/dist/cjs/ionic.cjs.js +1 -1
- package/dist/cjs/{ios.transition-2d1cf0c0.js → ios.transition-8e40c54e.js} +3 -3
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{md.transition-bb342d2a.js → md.transition-597a2479.js} +3 -3
- package/dist/cjs/{notch-controller-9735e7ac.js → notch-controller-db0127c4.js} +1 -1
- package/dist/cjs/{overlays-62679ec5.js → overlays-c50bf3c1.js} +32 -16
- package/dist/cjs/{status-tap-5fa2bab5.js → status-tap-b0bfea34.js} +2 -2
- package/dist/cjs/{swipe-back-2a858bbd.js → swipe-back-8411f044.js} +1 -1
- package/dist/collection/components/app/app.js +12 -2
- package/dist/collection/components/menu/menu.js +8 -8
- package/dist/collection/components/modal/modal.js +6 -4
- package/dist/collection/components/split-pane/split-pane.js +11 -12
- package/dist/collection/utils/hardware-back-button.js +45 -2
- package/dist/collection/utils/helpers.js +1 -1
- package/dist/collection/utils/overlays.js +29 -13
- package/dist/collection/utils/test/hardware-back-button.spec.js +38 -0
- package/dist/docs.json +1 -6
- package/dist/esm/{animation-dde8cc0d.js → animation-60dbdd13.js} +1 -1
- package/dist/esm/{form-controller-548aa79c.js → form-controller-014aa89f.js} +1 -1
- package/dist/esm/{framework-delegate-bc1fd82a.js → framework-delegate-fed7fe7c.js} +1 -1
- package/dist/esm/{hardware-back-button-b2bc76db.js → hardware-back-button-f42b9c80.js} +48 -3
- package/dist/esm/{helpers-ae653409.js → helpers-c0b9ca37.js} +1 -1
- package/dist/esm/{index-6546f0dd.js → index-48209844.js} +3 -3
- package/dist/esm/{index-8fac11d0.js → index-4b98143d.js} +3 -3
- package/dist/esm/{index-82eeb47f.js → index-d64f34ea.js} +1 -1
- package/dist/esm/{index-b9e742e5.js → index-eb12ef92.js} +1 -1
- package/dist/esm/index.js +9 -9
- package/dist/esm/{input-shims-6539ce13.js → input-shims-b90ca55f.js} +2 -2
- package/dist/esm/{input.utils-a5a2d164.js → input.utils-6e9b0046.js} +1 -1
- package/dist/esm/ion-accordion_2.entry.js +1 -1
- package/dist/esm/ion-action-sheet.entry.js +5 -5
- package/dist/esm/ion-alert.entry.js +5 -5
- package/dist/esm/ion-app_8.entry.js +21 -12
- package/dist/esm/ion-back-button.entry.js +1 -1
- package/dist/esm/ion-breadcrumb_2.entry.js +1 -1
- package/dist/esm/ion-button_2.entry.js +1 -1
- package/dist/esm/ion-card_5.entry.js +1 -1
- package/dist/esm/ion-checkbox.entry.js +2 -2
- package/dist/esm/ion-datetime-button.entry.js +1 -1
- 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 +2 -2
- package/dist/esm/ion-input.entry.js +4 -4
- package/dist/esm/ion-item-option_3.entry.js +2 -2
- package/dist/esm/ion-item_8.entry.js +1 -1
- package/dist/esm/ion-loading.entry.js +5 -5
- package/dist/esm/ion-menu_3.entry.js +13 -8
- package/dist/esm/ion-modal.entry.js +12 -10
- package/dist/esm/ion-nav_2.entry.js +4 -4
- package/dist/esm/ion-picker-column-internal.entry.js +1 -1
- package/dist/esm/ion-picker-internal.entry.js +1 -1
- package/dist/esm/ion-popover.entry.js +6 -6
- package/dist/esm/ion-progress-bar.entry.js +1 -1
- package/dist/esm/ion-radio_2.entry.js +2 -2
- 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 +2 -2
- 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_3.entry.js +6 -6
- package/dist/esm/ion-split-pane.entry.js +11 -12
- package/dist/esm/ion-tab-bar_2.entry.js +1 -1
- package/dist/esm/ion-tab_2.entry.js +2 -2
- package/dist/esm/ion-textarea.entry.js +4 -4
- package/dist/esm/ion-toast.entry.js +5 -5
- package/dist/esm/ion-toggle.entry.js +2 -2
- package/dist/esm/ionic.js +1 -1
- package/dist/esm/{ios.transition-968faaad.js → ios.transition-7ff7381d.js} +3 -3
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{md.transition-498898ac.js → md.transition-28a9a26b.js} +3 -3
- package/dist/esm/{notch-controller-fea7f9c5.js → notch-controller-15d281a4.js} +1 -1
- package/dist/esm/{overlays-4bb86b9c.js → overlays-3311e70e.js} +32 -17
- package/dist/esm/{status-tap-06b37f21.js → status-tap-2b335fb7.js} +2 -2
- package/dist/esm/{swipe-back-a6f386fc.js → swipe-back-c06602f2.js} +1 -1
- package/dist/esm-es5/{animation-dde8cc0d.js → animation-60dbdd13.js} +1 -1
- package/dist/esm-es5/{form-controller-548aa79c.js → form-controller-014aa89f.js} +1 -1
- package/dist/esm-es5/{framework-delegate-bc1fd82a.js → framework-delegate-fed7fe7c.js} +1 -1
- package/dist/esm-es5/hardware-back-button-f42b9c80.js +4 -0
- package/dist/esm-es5/helpers-c0b9ca37.js +4 -0
- package/dist/esm-es5/{index-6546f0dd.js → index-48209844.js} +1 -1
- package/dist/esm-es5/{index-8fac11d0.js → index-4b98143d.js} +1 -1
- package/dist/esm-es5/index-d64f34ea.js +4 -0
- package/dist/esm-es5/{index-b9e742e5.js → index-eb12ef92.js} +1 -1
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/{input-shims-6539ce13.js → input-shims-b90ca55f.js} +1 -1
- package/dist/esm-es5/{input.utils-a5a2d164.js → input.utils-6e9b0046.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-back-button.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-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.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-internal.entry.js +1 -1
- package/dist/esm-es5/ion-picker-internal.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-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_3.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-tab_2.entry.js +1 -1
- package/dist/esm-es5/ion-textarea.entry.js +1 -1
- package/dist/esm-es5/ion-toast.entry.js +1 -1
- package/dist/esm-es5/ion-toggle.entry.js +1 -1
- package/dist/esm-es5/ionic.js +1 -1
- package/dist/esm-es5/{ios.transition-968faaad.js → ios.transition-7ff7381d.js} +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/md.transition-28a9a26b.js +4 -0
- package/dist/esm-es5/{notch-controller-fea7f9c5.js → notch-controller-15d281a4.js} +1 -1
- package/dist/esm-es5/overlays-3311e70e.js +4 -0
- package/dist/esm-es5/{status-tap-06b37f21.js → status-tap-2b335fb7.js} +1 -1
- package/dist/esm-es5/{swipe-back-a6f386fc.js → swipe-back-c06602f2.js} +1 -1
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-001010b6.system.js +4 -0
- package/dist/ionic/{p-f318e213.system.entry.js → p-078fd095.system.entry.js} +1 -1
- package/dist/ionic/{p-42f11f58.system.entry.js → p-0ae25399.system.entry.js} +1 -1
- package/dist/ionic/p-0b955124.system.js +1 -1
- package/dist/ionic/{p-42b4b9a2.system.entry.js → p-0e29919c.system.entry.js} +1 -1
- package/dist/ionic/{p-0274f779.system.entry.js → p-0eef8b34.system.entry.js} +1 -1
- package/dist/ionic/p-0f1f0519.system.entry.js +4 -0
- package/dist/ionic/{p-70684fef.system.entry.js → p-0fd295ef.system.entry.js} +1 -1
- package/dist/ionic/{p-9e09d6d3.entry.js → p-108f730a.entry.js} +1 -1
- package/dist/ionic/p-1172fd73.system.entry.js +4 -0
- package/dist/ionic/{p-b4db67d7.entry.js → p-1c531ca2.entry.js} +1 -1
- package/dist/ionic/{p-8642d042.system.entry.js → p-1d72ecba.system.entry.js} +1 -1
- package/dist/ionic/{p-3e273305.system.entry.js → p-1f6cdf2c.system.entry.js} +1 -1
- package/dist/ionic/{p-99fe3df1.system.entry.js → p-20f7a91e.system.entry.js} +1 -1
- package/dist/ionic/{p-487be9e8.system.js → p-25b08bc4.system.js} +1 -1
- package/dist/ionic/{p-2f7c7dc9.entry.js → p-2da0a76c.entry.js} +1 -1
- package/dist/ionic/{p-ac19cc2f.system.entry.js → p-2e344096.system.entry.js} +1 -1
- package/dist/ionic/{p-42dd5fb5.system.entry.js → p-2f66e177.system.entry.js} +1 -1
- package/dist/ionic/p-30d77a91.system.js +4 -0
- package/dist/ionic/{p-376a6063.js → p-31c495c2.js} +1 -1
- package/dist/ionic/p-324dafd3.entry.js +4 -0
- package/dist/ionic/{p-cabad15b.system.js → p-37c33319.system.js} +1 -1
- package/dist/ionic/{p-c191ba05.system.entry.js → p-389ff4d2.system.entry.js} +1 -1
- package/dist/ionic/{p-5d843dac.system.entry.js → p-3a54c070.system.entry.js} +1 -1
- package/dist/ionic/{p-5d26143c.entry.js → p-3a98f8db.entry.js} +1 -1
- package/dist/ionic/{p-725b4e67.system.js → p-3c6f02cf.system.js} +1 -1
- package/dist/ionic/{p-b60b708c.entry.js → p-3cdbaa49.entry.js} +1 -1
- package/dist/ionic/p-3eb2da31.js +4 -0
- package/dist/ionic/{p-af9ab3f4.entry.js → p-400574bf.entry.js} +1 -1
- package/dist/ionic/{p-a3928153.system.entry.js → p-44638413.system.entry.js} +1 -1
- package/dist/ionic/{p-ca975c93.entry.js → p-4ae1b532.entry.js} +1 -1
- package/dist/ionic/p-4b2d5b9c.js +4 -0
- package/dist/ionic/p-4efac4fd.system.js +4 -0
- package/dist/ionic/{p-88d5fbd3.js → p-4f777b5e.js} +1 -1
- package/dist/ionic/{p-d5824344.system.entry.js → p-50a24d93.system.entry.js} +1 -1
- package/dist/ionic/{p-81b652ad.entry.js → p-51f08a9f.entry.js} +1 -1
- package/dist/ionic/{p-2b0a2dac.system.entry.js → p-5946d7b8.system.entry.js} +1 -1
- package/dist/ionic/{p-0d3e389b.entry.js → p-5a0c301f.entry.js} +1 -1
- package/dist/ionic/{p-dbb9820e.entry.js → p-5a7d5f0d.entry.js} +1 -1
- package/dist/ionic/p-5b6aa59a.entry.js +4 -0
- package/dist/ionic/{p-b853da37.entry.js → p-5e60dbc8.entry.js} +1 -1
- package/dist/ionic/{p-bf7f57a7.system.entry.js → p-5f456b3c.system.entry.js} +1 -1
- package/dist/ionic/p-61ba2137.system.js +4 -0
- package/dist/ionic/{p-408fc801.system.js → p-62a3c609.system.js} +1 -1
- package/dist/ionic/{p-ee463529.system.entry.js → p-680f96e8.system.entry.js} +1 -1
- package/dist/ionic/p-6871553b.system.js +4 -0
- package/dist/ionic/{p-46b0ffa3.system.entry.js → p-6f38d0c5.system.entry.js} +1 -1
- package/dist/ionic/{p-03f18e57.system.entry.js → p-70026e8f.system.entry.js} +1 -1
- package/dist/ionic/p-776b144b.system.js +4 -0
- package/dist/ionic/{p-64520a48.system.entry.js → p-78edc0cd.system.entry.js} +1 -1
- package/dist/ionic/{p-41dc24d3.system.entry.js → p-7c32fb95.system.entry.js} +1 -1
- package/dist/ionic/{p-4d82a816.system.entry.js → p-84879f61.system.entry.js} +1 -1
- package/dist/ionic/{p-57cce147.system.entry.js → p-8569d759.system.entry.js} +1 -1
- package/dist/ionic/{p-7e732640.entry.js → p-8a671f16.entry.js} +1 -1
- package/dist/ionic/p-8dc4a983.entry.js +4 -0
- package/dist/ionic/{p-76d39342.js → p-8ddc00f7.js} +1 -1
- package/dist/ionic/{p-b3bf4958.js → p-8f1ce253.js} +1 -1
- package/dist/ionic/{p-c44eadec.entry.js → p-90860bc4.entry.js} +1 -1
- package/dist/ionic/{p-2f9fe497.system.entry.js → p-92c2178e.system.entry.js} +1 -1
- package/dist/ionic/{p-6aacda17.system.entry.js → p-92c7f47f.system.entry.js} +1 -1
- package/dist/ionic/{p-29d03b3a.js → p-9393a49f.js} +1 -1
- package/dist/ionic/{p-3a75d7fd.js → p-94be3ad7.js} +1 -1
- package/dist/ionic/p-95c44e02.system.js +4 -0
- package/dist/ionic/{p-0f96cac5.entry.js → p-97eca294.entry.js} +1 -1
- package/dist/ionic/{p-195c7203.system.js → p-9c8fb374.system.js} +1 -1
- package/dist/ionic/{p-ba0dc6b0.system.entry.js → p-9f5b40c0.system.entry.js} +1 -1
- package/dist/ionic/{p-0d197ad6.entry.js → p-9f6397ce.entry.js} +1 -1
- package/dist/ionic/{p-4a1eb087.entry.js → p-a02b2d75.entry.js} +1 -1
- package/dist/ionic/{p-432353dc.entry.js → p-a19f5ae1.entry.js} +1 -1
- package/dist/ionic/{p-18d1b47e.system.entry.js → p-a1bfaa5c.system.entry.js} +1 -1
- package/dist/ionic/{p-aad00593.entry.js → p-a2ad515b.entry.js} +1 -1
- package/dist/ionic/{p-4180a747.js → p-a3f572a7.js} +1 -1
- package/dist/ionic/{p-7b8a53a4.system.entry.js → p-aaa4ffb3.system.entry.js} +1 -1
- package/dist/ionic/p-ae40d13d.js +4 -0
- package/dist/ionic/{p-66d633fb.js → p-b253ad7f.js} +1 -1
- package/dist/ionic/p-b37e4ee5.system.entry.js +4 -0
- package/dist/ionic/{p-47bb4958.js → p-b4d8fe47.js} +1 -1
- package/dist/ionic/p-b5839dc2.js +4 -0
- package/dist/ionic/p-b8c685a7.system.js +4 -0
- package/dist/ionic/{p-f57f1a9c.system.entry.js → p-bc2c03d7.system.entry.js} +1 -1
- package/dist/ionic/{p-36d187af.js → p-c2289cd1.js} +1 -1
- package/dist/ionic/{p-b5914ab2.entry.js → p-c3790581.entry.js} +1 -1
- package/dist/ionic/p-c5c3710c.js +4 -0
- package/dist/ionic/{p-6ecc011b.system.js → p-c6fef62b.system.js} +1 -1
- package/dist/ionic/{p-7798c78a.system.js → p-c80c7e90.system.js} +1 -1
- package/dist/ionic/{p-013013a3.js → p-c858f685.js} +1 -1
- package/dist/ionic/{p-68a1c901.system.entry.js → p-cd055d60.system.entry.js} +1 -1
- package/dist/ionic/{p-6a6477b2.js → p-cdc277a6.js} +1 -1
- package/dist/ionic/{p-a6f57a98.entry.js → p-ce2eabd5.entry.js} +1 -1
- package/dist/ionic/{p-805a910b.entry.js → p-ce657bb3.entry.js} +1 -1
- package/dist/ionic/{p-ee20243d.system.entry.js → p-cfdaf024.system.entry.js} +1 -1
- package/dist/ionic/{p-a5954d3d.entry.js → p-d6ca603b.entry.js} +1 -1
- package/dist/ionic/{p-f20da312.entry.js → p-d7260b87.entry.js} +1 -1
- package/dist/ionic/p-d74ca358.entry.js +4 -0
- package/dist/ionic/{p-7288124a.entry.js → p-d95c8e90.entry.js} +1 -1
- package/dist/ionic/{p-4eecabe1.entry.js → p-dbb4c012.entry.js} +1 -1
- package/dist/ionic/{p-c1d4b820.entry.js → p-dce9bc53.entry.js} +1 -1
- package/dist/ionic/{p-0c813cbf.system.entry.js → p-dd60faa5.system.entry.js} +2 -2
- package/dist/ionic/{p-3b2ecb7e.entry.js → p-de5c8a55.entry.js} +1 -1
- package/dist/ionic/{p-1401bd2e.system.entry.js → p-df281664.system.entry.js} +1 -1
- package/dist/ionic/p-df468a8f.entry.js +4 -0
- package/dist/ionic/{p-38f2c6bb.system.js → p-e2bb92ed.system.js} +1 -1
- package/dist/ionic/{p-364a12ca.system.entry.js → p-e68980ff.system.entry.js} +1 -1
- package/dist/ionic/{p-b6e3c96d.system.entry.js → p-e6aaff14.system.entry.js} +1 -1
- package/dist/ionic/{p-82e8d988.entry.js → p-ea8fbf09.entry.js} +1 -1
- package/dist/ionic/p-efe9180b.entry.js +4 -0
- package/dist/ionic/{p-6c938b0d.entry.js → p-f1cc690e.entry.js} +1 -1
- package/dist/ionic/p-f46775e4.entry.js +4 -0
- package/dist/ionic/{p-a072a420.system.entry.js → p-f7b43141.system.entry.js} +1 -1
- package/dist/ionic/p-f85932b8.entry.js +4 -0
- package/dist/ionic/{p-7bb1d7dd.entry.js → p-f88dd429.entry.js} +1 -1
- package/dist/ionic/p-fd36799d.system.js +4 -0
- package/dist/ionic/{p-2a098168.entry.js → p-fd3f475f.entry.js} +1 -1
- package/dist/ionic/p-fd8ced99.system.js +4 -0
- package/dist/types/utils/browser/index.d.ts +22 -1
- package/dist/types/utils/config.d.ts +7 -0
- package/dist/types/utils/hardware-back-button.d.ts +13 -0
- package/hydrate/index.js +61 -36
- package/package.json +2 -2
- package/dist/collection/components/modal/test/animations/modal.e2e.js +0 -36
- package/dist/esm-es5/hardware-back-button-b2bc76db.js +0 -4
- package/dist/esm-es5/helpers-ae653409.js +0 -4
- package/dist/esm-es5/index-82eeb47f.js +0 -4
- package/dist/esm-es5/md.transition-498898ac.js +0 -4
- package/dist/esm-es5/overlays-4bb86b9c.js +0 -4
- package/dist/ionic/p-1902859c.system.js +0 -4
- package/dist/ionic/p-1b3fb9c6.system.entry.js +0 -4
- package/dist/ionic/p-23a9d086.js +0 -4
- package/dist/ionic/p-2afd906c.system.entry.js +0 -4
- package/dist/ionic/p-2b9debd4.entry.js +0 -4
- package/dist/ionic/p-32ad210f.system.js +0 -4
- package/dist/ionic/p-35ce400e.system.js +0 -4
- package/dist/ionic/p-38c337e7.system.js +0 -4
- package/dist/ionic/p-3d9154f0.entry.js +0 -4
- package/dist/ionic/p-40f68333.system.js +0 -4
- package/dist/ionic/p-4b3623da.js +0 -4
- package/dist/ionic/p-562bc465.js +0 -4
- package/dist/ionic/p-5ecb46d2.entry.js +0 -4
- package/dist/ionic/p-7045f570.entry.js +0 -4
- package/dist/ionic/p-70e988e8.js +0 -4
- package/dist/ionic/p-74d32574.entry.js +0 -4
- package/dist/ionic/p-765b4f12.system.entry.js +0 -4
- package/dist/ionic/p-790220fd.system.js +0 -4
- package/dist/ionic/p-888db766.system.js +0 -4
- package/dist/ionic/p-8bd50516.js +0 -4
- package/dist/ionic/p-a9cff22f.entry.js +0 -4
- package/dist/ionic/p-baf4a4a2.entry.js +0 -4
- package/dist/ionic/p-d2827762.system.js +0 -4
- package/dist/ionic/p-de6f8b28.system.js +0 -4
- package/dist/ionic/p-f06a7c31.system.js +0 -4
- package/dist/ionic/p-fac5d418.entry.js +0 -4
|
@@ -1,6 +1,22 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
+
import { w as win } from './index5.js';
|
|
5
|
+
import { c as config } from './ionic-global.js';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* CloseWatcher is a newer API that lets
|
|
9
|
+
* use detect the hardware back button event
|
|
10
|
+
* in a web browser: https://caniuse.com/?search=closewatcher
|
|
11
|
+
* However, not every browser supports it yet.
|
|
12
|
+
*
|
|
13
|
+
* This needs to be a function so that we can
|
|
14
|
+
* check the config once it has been set.
|
|
15
|
+
* Otherwise, this code would be evaluated the
|
|
16
|
+
* moment this file is evaluated which could be
|
|
17
|
+
* before the config is set.
|
|
18
|
+
*/
|
|
19
|
+
const shoudUseCloseWatcher = () => config.get('experimentalCloseWatcher', false) && win !== undefined && 'CloseWatcher' in win;
|
|
4
20
|
/**
|
|
5
21
|
* When hardwareBackButton: false in config,
|
|
6
22
|
* we need to make sure we also block the default
|
|
@@ -17,7 +33,7 @@ const blockHardwareBackButton = () => {
|
|
|
17
33
|
const startHardwareBackButton = () => {
|
|
18
34
|
const doc = document;
|
|
19
35
|
let busy = false;
|
|
20
|
-
|
|
36
|
+
const backButtonCallback = () => {
|
|
21
37
|
if (busy) {
|
|
22
38
|
return;
|
|
23
39
|
}
|
|
@@ -63,9 +79,37 @@ const startHardwareBackButton = () => {
|
|
|
63
79
|
}
|
|
64
80
|
};
|
|
65
81
|
processHandlers();
|
|
66
|
-
}
|
|
82
|
+
};
|
|
83
|
+
/**
|
|
84
|
+
* If the CloseWatcher is defined then
|
|
85
|
+
* we don't want to also listen for the native
|
|
86
|
+
* backbutton event otherwise we may get duplicate
|
|
87
|
+
* events firing.
|
|
88
|
+
*/
|
|
89
|
+
if (shoudUseCloseWatcher()) {
|
|
90
|
+
let watcher;
|
|
91
|
+
const configureWatcher = () => {
|
|
92
|
+
watcher === null || watcher === void 0 ? void 0 : watcher.destroy();
|
|
93
|
+
watcher = new win.CloseWatcher();
|
|
94
|
+
/**
|
|
95
|
+
* Once a close request happens
|
|
96
|
+
* the watcher gets destroyed.
|
|
97
|
+
* As a result, we need to re-configure
|
|
98
|
+
* the watcher so we can respond to other
|
|
99
|
+
* close requests.
|
|
100
|
+
*/
|
|
101
|
+
watcher.onclose = () => {
|
|
102
|
+
backButtonCallback();
|
|
103
|
+
configureWatcher();
|
|
104
|
+
};
|
|
105
|
+
};
|
|
106
|
+
configureWatcher();
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
doc.addEventListener('backbutton', backButtonCallback);
|
|
110
|
+
}
|
|
67
111
|
};
|
|
68
112
|
const OVERLAY_BACK_BUTTON_PRIORITY = 100;
|
|
69
113
|
const MENU_BACK_BUTTON_PRIORITY = 99; // 1 less than overlay priority since menu is displayed behind overlays
|
|
70
114
|
|
|
71
|
-
export { MENU_BACK_BUTTON_PRIORITY, OVERLAY_BACK_BUTTON_PRIORITY, blockHardwareBackButton, startHardwareBackButton };
|
|
115
|
+
export { MENU_BACK_BUTTON_PRIORITY, OVERLAY_BACK_BUTTON_PRIORITY, blockHardwareBackButton, shoudUseCloseWatcher, startHardwareBackButton };
|
package/components/helpers.js
CHANGED
|
@@ -34,7 +34,7 @@ const transitionEnd = (el, expectedDuration = 0, callback) => {
|
|
|
34
34
|
el.addEventListener('transitionend', onTransitionEnd, opts);
|
|
35
35
|
animationTimeout = setTimeout(onTransitionEnd, expectedDuration + ANIMATION_FALLBACK_TIMEOUT);
|
|
36
36
|
unRegTrans = () => {
|
|
37
|
-
if (animationTimeout) {
|
|
37
|
+
if (animationTimeout !== undefined) {
|
|
38
38
|
clearTimeout(animationTimeout);
|
|
39
39
|
animationTimeout = undefined;
|
|
40
40
|
}
|
package/components/ion-app.js
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
4
|
import { proxyCustomElement, HTMLElement, Build, h, Host } from '@stencil/core/internal/client';
|
|
5
|
+
import { shoudUseCloseWatcher } from './hardware-back-button.js';
|
|
6
|
+
import { p as printIonWarning } from './index6.js';
|
|
5
7
|
import { b as getIonMode, c as config, a as isPlatform } from './ionic-global.js';
|
|
6
8
|
|
|
7
9
|
const appCss = "html.plt-mobile ion-app{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}html.plt-mobile ion-app [contenteditable]{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}ion-app.force-statusbar-padding{--ion-safe-area-top:20px}";
|
|
@@ -31,10 +33,18 @@ const App = /*@__PURE__*/ proxyCustomElement(class App extends HTMLElement {
|
|
|
31
33
|
import('./input-shims.js').then((module) => module.startInputShims(config, platform));
|
|
32
34
|
}
|
|
33
35
|
const hardwareBackButtonModule = await import('./hardware-back-button.js');
|
|
34
|
-
|
|
36
|
+
const supportsHardwareBackButtonEvents = isHybrid || shoudUseCloseWatcher();
|
|
37
|
+
if (config.getBoolean('hardwareBackButton', supportsHardwareBackButtonEvents)) {
|
|
35
38
|
hardwareBackButtonModule.startHardwareBackButton();
|
|
36
39
|
}
|
|
37
40
|
else {
|
|
41
|
+
/**
|
|
42
|
+
* If an app sets hardwareBackButton: false and experimentalCloseWatcher: true
|
|
43
|
+
* then the close watcher will not be used.
|
|
44
|
+
*/
|
|
45
|
+
if (shoudUseCloseWatcher()) {
|
|
46
|
+
printIonWarning('experimentalCloseWatcher was set to `true`, but hardwareBackButton was set to `false`. Both config options must be `true` for the Close Watcher API to be used.');
|
|
47
|
+
}
|
|
38
48
|
hardwareBackButtonModule.blockHardwareBackButton();
|
|
39
49
|
}
|
|
40
50
|
if (typeof window !== 'undefined') {
|
|
@@ -61,7 +71,7 @@ const App = /*@__PURE__*/ proxyCustomElement(class App extends HTMLElement {
|
|
|
61
71
|
}
|
|
62
72
|
render() {
|
|
63
73
|
const mode = getIonMode(this);
|
|
64
|
-
return (h(Host, { key: '
|
|
74
|
+
return (h(Host, { key: '3535eb5c0dab78a78011e552524a98599b2b650f', class: {
|
|
65
75
|
[mode]: true,
|
|
66
76
|
'ion-page': true,
|
|
67
77
|
'force-statusbar-padding': config.getBoolean('_forceStatusbarPadding'),
|
package/components/ion-menu.js
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
import { proxyCustomElement, HTMLElement, createEvent, Build, h, Host } from '@stencil/core/internal/client';
|
|
5
5
|
import { g as getTimeGivenProgression } from './cubic-bezier.js';
|
|
6
6
|
import { G as GESTURE_CONTROLLER } from './gesture-controller.js';
|
|
7
|
+
import { shoudUseCloseWatcher } from './hardware-back-button.js';
|
|
7
8
|
import { o as isEndSide, i as inheritAriaAttributes, p as assert, m as clamp } from './helpers.js';
|
|
8
9
|
import { m as menuController } from './index4.js';
|
|
9
10
|
import { o as getPresentedOverlay } from './overlays.js';
|
|
@@ -606,13 +607,18 @@ const Menu = /*@__PURE__*/ proxyCustomElement(class Menu extends HTMLElement {
|
|
|
606
607
|
render() {
|
|
607
608
|
const { type, disabled, isPaneVisible, inheritedAttributes, side } = this;
|
|
608
609
|
const mode = getIonMode(this);
|
|
609
|
-
|
|
610
|
+
/**
|
|
611
|
+
* If the Close Watcher is enabled then
|
|
612
|
+
* the ionBackButton listener in the menu controller
|
|
613
|
+
* will handle closing the menu when Escape is pressed.
|
|
614
|
+
*/
|
|
615
|
+
return (h(Host, { key: 'be7145625a30951e5cc26646f6121ee4fa4c910f', onKeyDown: shoudUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
|
|
610
616
|
[mode]: true,
|
|
611
617
|
[`menu-type-${type}`]: true,
|
|
612
618
|
'menu-enabled': !disabled,
|
|
613
619
|
[`menu-side-${side}`]: true,
|
|
614
620
|
'menu-pane-visible': isPaneVisible,
|
|
615
|
-
} }, h("div", { key: '
|
|
621
|
+
} }, h("div", { key: 'ecd6e0641ed67691db270190801f7be365a2d121', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, h("slot", { key: 'aea3780e259f2b3ea84697a509bb7f13fa9531e9' })), h("ion-backdrop", { key: 'be3253506a34c4c00eb1814621c674196b72db46', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
|
|
616
622
|
}
|
|
617
623
|
get el() { return this; }
|
|
618
624
|
static get watchers() { return {
|
|
@@ -641,7 +647,7 @@ const Menu = /*@__PURE__*/ proxyCustomElement(class Menu extends HTMLElement {
|
|
|
641
647
|
"close": [64],
|
|
642
648
|
"toggle": [64],
|
|
643
649
|
"setOpen": [64]
|
|
644
|
-
}, [[16, "ionSplitPaneVisible", "onSplitPaneChanged"], [2, "click", "onBackdropClick"]
|
|
650
|
+
}, [[16, "ionSplitPaneVisible", "onSplitPaneChanged"], [2, "click", "onBackdropClick"]], {
|
|
645
651
|
"type": ["typeChanged"],
|
|
646
652
|
"disabled": ["disabledChanged"],
|
|
647
653
|
"side": ["sideChanged"],
|
package/components/ion-modal.js
CHANGED
|
@@ -8,7 +8,7 @@ import { g as getElementRoot, m as clamp, r as raf, d as inheritAttributes, l as
|
|
|
8
8
|
import { c as createLockController } from './lock-controller.js';
|
|
9
9
|
import { p as printIonWarning } from './index6.js';
|
|
10
10
|
import { g as getCapacitor } from './capacitor.js';
|
|
11
|
-
import { G as GESTURE, O as OVERLAY_GESTURE_PRIORITY, e as createTriggerController, B as BACKDROP, j as prepareOverlay, k as setOverlayId, f as present, g as dismiss, h as eventMethod } from './overlays.js';
|
|
11
|
+
import { G as GESTURE, O as OVERLAY_GESTURE_PRIORITY, e as createTriggerController, B as BACKDROP, j as prepareOverlay, k as setOverlayId, f as present, q as activeAnimations, g as dismiss, h as eventMethod } from './overlays.js';
|
|
12
12
|
import { g as getClassMap } from './theme.js';
|
|
13
13
|
import { e as deepReady, w as waitForMount } from './index2.js';
|
|
14
14
|
import { b as getIonMode, c as config } from './ionic-global.js';
|
|
@@ -1515,6 +1515,7 @@ const Modal = /*@__PURE__*/ proxyCustomElement(class Modal extends HTMLElement {
|
|
|
1515
1515
|
window.removeEventListener(KEYBOARD_DID_OPEN, this.keyboardOpenCallback);
|
|
1516
1516
|
this.keyboardOpenCallback = undefined;
|
|
1517
1517
|
}
|
|
1518
|
+
const enteringAnimation = activeAnimations.get(this) || [];
|
|
1518
1519
|
const dismissed = await dismiss(this, data, role, 'modalLeave', iosLeaveAnimation, mdLeaveAnimation, {
|
|
1519
1520
|
presentingEl: presentingElement,
|
|
1520
1521
|
currentBreakpoint: (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : this.initialBreakpoint,
|
|
@@ -1530,6 +1531,7 @@ const Modal = /*@__PURE__*/ proxyCustomElement(class Modal extends HTMLElement {
|
|
|
1530
1531
|
if (this.gesture) {
|
|
1531
1532
|
this.gesture.destroy();
|
|
1532
1533
|
}
|
|
1534
|
+
enteringAnimation.forEach((ani) => ani.destroy());
|
|
1533
1535
|
}
|
|
1534
1536
|
this.currentBreakpoint = undefined;
|
|
1535
1537
|
this.animation = undefined;
|
|
@@ -1609,9 +1611,9 @@ const Modal = /*@__PURE__*/ proxyCustomElement(class Modal extends HTMLElement {
|
|
|
1609
1611
|
const mode = getIonMode(this);
|
|
1610
1612
|
const isCardModal = presentingElement !== undefined && mode === 'ios';
|
|
1611
1613
|
const isHandleCycle = handleBehavior === 'cycle';
|
|
1612
|
-
return (h(Host, Object.assign({ key: '
|
|
1614
|
+
return (h(Host, Object.assign({ key: '8c163f4f59429227cab3a1cafb5612994939a629', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
|
|
1613
1615
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
1614
|
-
}, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle }), h("ion-backdrop", { key: '
|
|
1616
|
+
}, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle }), h("ion-backdrop", { key: '6908bdf9462d940eff6607b626a499eedc66dc9c', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && h("div", { class: "modal-shadow" }), h("div", Object.assign({ key: 'ac224394e19b9e8c7dd902f2836fa25787663455',
|
|
1615
1617
|
/*
|
|
1616
1618
|
role and aria-modal must be used on the
|
|
1617
1619
|
same element. They must also be set inside the
|
|
@@ -1620,7 +1622,7 @@ const Modal = /*@__PURE__*/ proxyCustomElement(class Modal extends HTMLElement {
|
|
|
1620
1622
|
*/
|
|
1621
1623
|
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (h("button", { class: "modal-handle",
|
|
1622
1624
|
// Prevents the handle from receiving keyboard focus when it does not cycle
|
|
1623
|
-
tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), h("slot", { key: '
|
|
1625
|
+
tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), h("slot", { key: '9c3c5ec797b6415110a3275c6ff33277291a6e21' }))));
|
|
1624
1626
|
}
|
|
1625
1627
|
get el() { return this; }
|
|
1626
1628
|
static get watchers() { return {
|
|
@@ -77,16 +77,15 @@ const SplitPane = /*@__PURE__*/ proxyCustomElement(class SplitPane extends HTMLE
|
|
|
77
77
|
this.visible = false;
|
|
78
78
|
return;
|
|
79
79
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
}
|
|
80
|
+
// Listen on media query
|
|
81
|
+
const callback = (q) => {
|
|
82
|
+
this.visible = q.matches;
|
|
83
|
+
};
|
|
84
|
+
const mediaList = window.matchMedia(mediaQuery);
|
|
85
|
+
// TODO FW-5869
|
|
86
|
+
mediaList.addListener(callback);
|
|
87
|
+
this.rmL = () => mediaList.removeListener(callback);
|
|
88
|
+
this.visible = mediaList.matches;
|
|
90
89
|
}
|
|
91
90
|
isPane(element) {
|
|
92
91
|
if (!this.visible) {
|
|
@@ -120,12 +119,12 @@ const SplitPane = /*@__PURE__*/ proxyCustomElement(class SplitPane extends HTMLE
|
|
|
120
119
|
}
|
|
121
120
|
render() {
|
|
122
121
|
const mode = getIonMode(this);
|
|
123
|
-
return (h(Host, { key: '
|
|
122
|
+
return (h(Host, { key: '3efe241375d23ae12c47927aa1fc1f3f4b4e5807', class: {
|
|
124
123
|
[mode]: true,
|
|
125
124
|
// Used internally for styling
|
|
126
125
|
[`split-pane-${mode}`]: true,
|
|
127
126
|
'split-pane-visible': this.visible,
|
|
128
|
-
} }, h("slot", { key: '
|
|
127
|
+
} }, h("slot", { key: 'd5c94319658e2291dcc356e6ed7a9abc1a48a8b9' })));
|
|
129
128
|
}
|
|
130
129
|
get el() { return this; }
|
|
131
130
|
static get watchers() { return {
|
package/components/overlays.js
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
4
|
import { d as doc } from './index5.js';
|
|
5
|
+
import { OVERLAY_BACK_BUTTON_PRIORITY, shoudUseCloseWatcher } from './hardware-back-button.js';
|
|
5
6
|
import { b as getIonMode, c as config } from './ionic-global.js';
|
|
6
7
|
import { C as CoreDelegate } from './framework-delegate.js';
|
|
7
|
-
import { OVERLAY_BACK_BUTTON_PRIORITY } from './hardware-back-button.js';
|
|
8
8
|
import { c as componentOnReady, f as focusElement, a as addEventListener, b as removeEventListener, g as getElementRoot } from './helpers.js';
|
|
9
9
|
import { p as printIonWarning } from './index6.js';
|
|
10
10
|
|
|
@@ -296,19 +296,38 @@ const connectListeners = (doc) => {
|
|
|
296
296
|
const lastOverlay = getPresentedOverlay(doc);
|
|
297
297
|
if (lastOverlay === null || lastOverlay === void 0 ? void 0 : lastOverlay.backdropDismiss) {
|
|
298
298
|
ev.detail.register(OVERLAY_BACK_BUTTON_PRIORITY, () => {
|
|
299
|
-
|
|
299
|
+
/**
|
|
300
|
+
* Do not return this promise otherwise
|
|
301
|
+
* the hardware back button utility will
|
|
302
|
+
* be blocked until the overlay dismisses.
|
|
303
|
+
* This is important for a modal with canDismiss.
|
|
304
|
+
* If the application presents a confirmation alert
|
|
305
|
+
* in the "canDismiss" callback, then it will be impossible
|
|
306
|
+
* to use the hardware back button to dismiss the alert
|
|
307
|
+
* dialog because the hardware back button utility
|
|
308
|
+
* is blocked on waiting for the modal to dismiss.
|
|
309
|
+
*/
|
|
310
|
+
lastOverlay.dismiss(undefined, BACKDROP);
|
|
300
311
|
});
|
|
301
312
|
}
|
|
302
313
|
});
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
314
|
+
/**
|
|
315
|
+
* Handle ESC to close overlay.
|
|
316
|
+
* CloseWatcher also handles pressing the Esc
|
|
317
|
+
* key, so if a browser supports CloseWatcher then
|
|
318
|
+
* this behavior will be handled via the ionBackButton
|
|
319
|
+
* event.
|
|
320
|
+
*/
|
|
321
|
+
if (!shoudUseCloseWatcher()) {
|
|
322
|
+
doc.addEventListener('keydown', (ev) => {
|
|
323
|
+
if (ev.key === 'Escape') {
|
|
324
|
+
const lastOverlay = getPresentedOverlay(doc);
|
|
325
|
+
if (lastOverlay === null || lastOverlay === void 0 ? void 0 : lastOverlay.backdropDismiss) {
|
|
326
|
+
lastOverlay.dismiss(undefined, BACKDROP);
|
|
327
|
+
}
|
|
309
328
|
}
|
|
310
|
-
}
|
|
311
|
-
}
|
|
329
|
+
});
|
|
330
|
+
}
|
|
312
331
|
}
|
|
313
332
|
};
|
|
314
333
|
const dismissOverlay = (doc, data, role, overlayTag, id) => {
|
|
@@ -474,10 +493,6 @@ const dismiss = async (overlay, data, role, name, iosLeaveAnimation, mdLeaveAnim
|
|
|
474
493
|
}
|
|
475
494
|
overlay.didDismiss.emit({ data, role });
|
|
476
495
|
(_b = overlay.didDismissShorthand) === null || _b === void 0 ? void 0 : _b.emit({ data, role });
|
|
477
|
-
// Get a reference to all animations currently assigned to this overlay
|
|
478
|
-
// Then tear them down to return the overlay to its initial visual state
|
|
479
|
-
const animations = activeAnimations.get(overlay) || [];
|
|
480
|
-
animations.forEach((ani) => ani.destroy());
|
|
481
496
|
activeAnimations.delete(overlay);
|
|
482
497
|
/**
|
|
483
498
|
* Make overlay hidden again in case it is being reused.
|
|
@@ -694,4 +709,4 @@ const createTriggerController = () => {
|
|
|
694
709
|
};
|
|
695
710
|
};
|
|
696
711
|
|
|
697
|
-
export { BACKDROP as B, GESTURE as G, OVERLAY_GESTURE_PRIORITY as O, alertController as a, actionSheetController as b, popoverController as c, createDelegateController as d, createTriggerController as e, present as f, dismiss as g, eventMethod as h, isCancel as i, prepareOverlay as j, setOverlayId as k, loadingController as l, modalController as m, focusFirstDescendant as n, getPresentedOverlay as o, pickerController as p, safeCall as s, toastController as t };
|
|
712
|
+
export { BACKDROP as B, GESTURE as G, OVERLAY_GESTURE_PRIORITY as O, alertController as a, actionSheetController as b, popoverController as c, createDelegateController as d, createTriggerController as e, present as f, dismiss as g, eventMethod as h, isCancel as i, prepareOverlay as j, setOverlayId as k, loadingController as l, modalController as m, focusFirstDescendant as n, getPresentedOverlay as o, pickerController as p, activeAnimations as q, safeCall as s, toastController as t };
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
|
-
const helpers = require('./helpers-
|
|
6
|
+
const helpers = require('./helpers-2e1028fa.js');
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Creates a controller that tracks whether a form control is using the legacy or modern syntax. This should be removed when the legacy form control syntax is removed.
|
|
@@ -3,6 +3,23 @@
|
|
|
3
3
|
*/
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
|
+
const index = require('./index-c8d52405.js');
|
|
7
|
+
const ionicGlobal = require('./ionic-global-7358c23e.js');
|
|
8
|
+
require('./index-5a471146.js');
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* CloseWatcher is a newer API that lets
|
|
12
|
+
* use detect the hardware back button event
|
|
13
|
+
* in a web browser: https://caniuse.com/?search=closewatcher
|
|
14
|
+
* However, not every browser supports it yet.
|
|
15
|
+
*
|
|
16
|
+
* This needs to be a function so that we can
|
|
17
|
+
* check the config once it has been set.
|
|
18
|
+
* Otherwise, this code would be evaluated the
|
|
19
|
+
* moment this file is evaluated which could be
|
|
20
|
+
* before the config is set.
|
|
21
|
+
*/
|
|
22
|
+
const shoudUseCloseWatcher = () => ionicGlobal.config.get('experimentalCloseWatcher', false) && index.win !== undefined && 'CloseWatcher' in index.win;
|
|
6
23
|
/**
|
|
7
24
|
* When hardwareBackButton: false in config,
|
|
8
25
|
* we need to make sure we also block the default
|
|
@@ -19,7 +36,7 @@ const blockHardwareBackButton = () => {
|
|
|
19
36
|
const startHardwareBackButton = () => {
|
|
20
37
|
const doc = document;
|
|
21
38
|
let busy = false;
|
|
22
|
-
|
|
39
|
+
const backButtonCallback = () => {
|
|
23
40
|
if (busy) {
|
|
24
41
|
return;
|
|
25
42
|
}
|
|
@@ -65,7 +82,35 @@ const startHardwareBackButton = () => {
|
|
|
65
82
|
}
|
|
66
83
|
};
|
|
67
84
|
processHandlers();
|
|
68
|
-
}
|
|
85
|
+
};
|
|
86
|
+
/**
|
|
87
|
+
* If the CloseWatcher is defined then
|
|
88
|
+
* we don't want to also listen for the native
|
|
89
|
+
* backbutton event otherwise we may get duplicate
|
|
90
|
+
* events firing.
|
|
91
|
+
*/
|
|
92
|
+
if (shoudUseCloseWatcher()) {
|
|
93
|
+
let watcher;
|
|
94
|
+
const configureWatcher = () => {
|
|
95
|
+
watcher === null || watcher === void 0 ? void 0 : watcher.destroy();
|
|
96
|
+
watcher = new index.win.CloseWatcher();
|
|
97
|
+
/**
|
|
98
|
+
* Once a close request happens
|
|
99
|
+
* the watcher gets destroyed.
|
|
100
|
+
* As a result, we need to re-configure
|
|
101
|
+
* the watcher so we can respond to other
|
|
102
|
+
* close requests.
|
|
103
|
+
*/
|
|
104
|
+
watcher.onclose = () => {
|
|
105
|
+
backButtonCallback();
|
|
106
|
+
configureWatcher();
|
|
107
|
+
};
|
|
108
|
+
};
|
|
109
|
+
configureWatcher();
|
|
110
|
+
}
|
|
111
|
+
else {
|
|
112
|
+
doc.addEventListener('backbutton', backButtonCallback);
|
|
113
|
+
}
|
|
69
114
|
};
|
|
70
115
|
const OVERLAY_BACK_BUTTON_PRIORITY = 100;
|
|
71
116
|
const MENU_BACK_BUTTON_PRIORITY = 99; // 1 less than overlay priority since menu is displayed behind overlays
|
|
@@ -73,4 +118,5 @@ const MENU_BACK_BUTTON_PRIORITY = 99; // 1 less than overlay priority since menu
|
|
|
73
118
|
exports.MENU_BACK_BUTTON_PRIORITY = MENU_BACK_BUTTON_PRIORITY;
|
|
74
119
|
exports.OVERLAY_BACK_BUTTON_PRIORITY = OVERLAY_BACK_BUTTON_PRIORITY;
|
|
75
120
|
exports.blockHardwareBackButton = blockHardwareBackButton;
|
|
121
|
+
exports.shoudUseCloseWatcher = shoudUseCloseWatcher;
|
|
76
122
|
exports.startHardwareBackButton = startHardwareBackButton;
|
|
@@ -36,7 +36,7 @@ const transitionEnd = (el, expectedDuration = 0, callback) => {
|
|
|
36
36
|
el.addEventListener('transitionend', onTransitionEnd, opts);
|
|
37
37
|
animationTimeout = setTimeout(onTransitionEnd, expectedDuration + ANIMATION_FALLBACK_TIMEOUT);
|
|
38
38
|
unRegTrans = () => {
|
|
39
|
-
if (animationTimeout) {
|
|
39
|
+
if (animationTimeout !== undefined) {
|
|
40
40
|
clearTimeout(animationTimeout);
|
|
41
41
|
animationTimeout = undefined;
|
|
42
42
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
6
|
const index = require('./index-5a471146.js');
|
|
7
|
-
const helpers = require('./helpers-
|
|
7
|
+
const helpers = require('./helpers-2e1028fa.js');
|
|
8
8
|
|
|
9
9
|
const LIFECYCLE_WILL_ENTER = 'ionViewWillEnter';
|
|
10
10
|
const LIFECYCLE_DID_ENTER = 'ionViewDidEnter';
|
|
@@ -12,8 +12,8 @@ const LIFECYCLE_WILL_LEAVE = 'ionViewWillLeave';
|
|
|
12
12
|
const LIFECYCLE_DID_LEAVE = 'ionViewDidLeave';
|
|
13
13
|
const LIFECYCLE_WILL_UNLOAD = 'ionViewWillUnload';
|
|
14
14
|
|
|
15
|
-
const iosTransitionAnimation = () => Promise.resolve().then(function () { return require('./ios.transition-
|
|
16
|
-
const mdTransitionAnimation = () => Promise.resolve().then(function () { return require('./md.transition-
|
|
15
|
+
const iosTransitionAnimation = () => Promise.resolve().then(function () { return require('./ios.transition-8e40c54e.js'); });
|
|
16
|
+
const mdTransitionAnimation = () => Promise.resolve().then(function () { return require('./md.transition-597a2479.js'); });
|
|
17
17
|
// TODO(FW-2832): types
|
|
18
18
|
const transition = (opts) => {
|
|
19
19
|
return new Promise((resolve, reject) => {
|
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
6
|
const index$1 = require('./index-c8d52405.js');
|
|
7
|
-
const hardwareBackButton = require('./hardware-back-button-
|
|
7
|
+
const hardwareBackButton = require('./hardware-back-button-d23873bb.js');
|
|
8
8
|
const index = require('./index-5915f9b3.js');
|
|
9
|
-
const helpers = require('./helpers-
|
|
9
|
+
const helpers = require('./helpers-2e1028fa.js');
|
|
10
10
|
const ionicGlobal = require('./ionic-global-7358c23e.js');
|
|
11
|
-
const animation = require('./animation-
|
|
11
|
+
const animation = require('./animation-fdab9de5.js');
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* baseAnimation
|
package/dist/cjs/index.cjs.js
CHANGED
|
@@ -5,24 +5,24 @@
|
|
|
5
5
|
|
|
6
6
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
7
7
|
|
|
8
|
-
const animation = require('./animation-
|
|
9
|
-
const index = require('./index-
|
|
10
|
-
const ios_transition = require('./ios.transition-
|
|
11
|
-
const md_transition = require('./md.transition-
|
|
8
|
+
const animation = require('./animation-fdab9de5.js');
|
|
9
|
+
const index = require('./index-84351d21.js');
|
|
10
|
+
const ios_transition = require('./ios.transition-8e40c54e.js');
|
|
11
|
+
const md_transition = require('./md.transition-597a2479.js');
|
|
12
12
|
const cubicBezier = require('./cubic-bezier-f2dccc53.js');
|
|
13
13
|
const index$1 = require('./index-d1b59ffa.js');
|
|
14
14
|
const ionicGlobal = require('./ionic-global-7358c23e.js');
|
|
15
|
-
const helpers = require('./helpers-
|
|
15
|
+
const helpers = require('./helpers-2e1028fa.js');
|
|
16
16
|
const config = require('./config-4f60b98a.js');
|
|
17
17
|
const theme = require('./theme-d1c573d2.js');
|
|
18
|
-
const index$2 = require('./index-
|
|
19
|
-
const overlays = require('./overlays-
|
|
18
|
+
const index$2 = require('./index-8c679cbf.js');
|
|
19
|
+
const overlays = require('./overlays-c50bf3c1.js');
|
|
20
20
|
require('./index-c8d52405.js');
|
|
21
21
|
require('./index-5a471146.js');
|
|
22
22
|
require('./gesture-controller-c40c045a.js');
|
|
23
|
-
require('./hardware-back-button-
|
|
23
|
+
require('./hardware-back-button-d23873bb.js');
|
|
24
24
|
require('./index-5915f9b3.js');
|
|
25
|
-
require('./framework-delegate-
|
|
25
|
+
require('./framework-delegate-a3e6d060.js');
|
|
26
26
|
|
|
27
27
|
const IonicSlides = (opts) => {
|
|
28
28
|
const { swiper, extendParams } = opts;
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
6
|
const index = require('./index-c8d52405.js');
|
|
7
|
-
const index$1 = require('./index-
|
|
8
|
-
const helpers = require('./helpers-
|
|
7
|
+
const index$1 = require('./index-53d162b2.js');
|
|
8
|
+
const helpers = require('./helpers-2e1028fa.js');
|
|
9
9
|
const keyboard = require('./keyboard-0272231f.js');
|
|
10
10
|
require('./index-5915f9b3.js');
|
|
11
11
|
require('./capacitor-c04564bf.js');
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
7
7
|
|
|
8
8
|
const index = require('./index-5a471146.js');
|
|
9
|
-
const helpers = require('./helpers-
|
|
9
|
+
const helpers = require('./helpers-2e1028fa.js');
|
|
10
10
|
const index$1 = require('./index-f52c6d38.js');
|
|
11
11
|
const ionicGlobal = require('./ionic-global-7358c23e.js');
|
|
12
12
|
const index$2 = require('./index-5915f9b3.js');
|
|
@@ -7,19 +7,19 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
7
7
|
|
|
8
8
|
const index = require('./index-5a471146.js');
|
|
9
9
|
const buttonActive = require('./button-active-b8c3f603.js');
|
|
10
|
-
const helpers = require('./helpers-
|
|
10
|
+
const helpers = require('./helpers-2e1028fa.js');
|
|
11
11
|
const lockController = require('./lock-controller-6585a42a.js');
|
|
12
|
-
const overlays = require('./overlays-
|
|
12
|
+
const overlays = require('./overlays-c50bf3c1.js');
|
|
13
13
|
const theme = require('./theme-d1c573d2.js');
|
|
14
14
|
const ionicGlobal = require('./ionic-global-7358c23e.js');
|
|
15
|
-
const animation = require('./animation-
|
|
15
|
+
const animation = require('./animation-fdab9de5.js');
|
|
16
16
|
require('./haptic-b882e0bb.js');
|
|
17
17
|
require('./capacitor-c04564bf.js');
|
|
18
18
|
require('./index-c8d52405.js');
|
|
19
19
|
require('./index-d1b59ffa.js');
|
|
20
20
|
require('./gesture-controller-c40c045a.js');
|
|
21
|
-
require('./
|
|
22
|
-
require('./
|
|
21
|
+
require('./hardware-back-button-d23873bb.js');
|
|
22
|
+
require('./framework-delegate-a3e6d060.js');
|
|
23
23
|
require('./index-5915f9b3.js');
|
|
24
24
|
|
|
25
25
|
/**
|
|
@@ -8,19 +8,19 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
8
8
|
const index = require('./index-5a471146.js');
|
|
9
9
|
const config = require('./config-4f60b98a.js');
|
|
10
10
|
const buttonActive = require('./button-active-b8c3f603.js');
|
|
11
|
-
const helpers = require('./helpers-
|
|
11
|
+
const helpers = require('./helpers-2e1028fa.js');
|
|
12
12
|
const lockController = require('./lock-controller-6585a42a.js');
|
|
13
|
-
const overlays = require('./overlays-
|
|
13
|
+
const overlays = require('./overlays-c50bf3c1.js');
|
|
14
14
|
const theme = require('./theme-d1c573d2.js');
|
|
15
15
|
const ionicGlobal = require('./ionic-global-7358c23e.js');
|
|
16
|
-
const animation = require('./animation-
|
|
16
|
+
const animation = require('./animation-fdab9de5.js');
|
|
17
17
|
require('./haptic-b882e0bb.js');
|
|
18
18
|
require('./capacitor-c04564bf.js');
|
|
19
19
|
require('./index-c8d52405.js');
|
|
20
20
|
require('./index-d1b59ffa.js');
|
|
21
21
|
require('./gesture-controller-c40c045a.js');
|
|
22
|
-
require('./
|
|
23
|
-
require('./
|
|
22
|
+
require('./hardware-back-button-d23873bb.js');
|
|
23
|
+
require('./framework-delegate-a3e6d060.js');
|
|
24
24
|
require('./index-5915f9b3.js');
|
|
25
25
|
|
|
26
26
|
/**
|