@ionic/core 9.0.10-dev.11792788258.1f71cfee → 9.0.10-dev.11793383958.19a7d413
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/index.js +1 -1
- package/components/ion-accordion.js +1 -1
- package/components/ion-action-sheet.js +1 -1
- package/components/ion-alert.js +1 -1
- package/components/ion-app.js +1 -1
- package/components/ion-back-button.js +1 -1
- package/components/ion-breadcrumb.js +1 -1
- package/components/ion-button.js +1 -1
- package/components/ion-card.js +1 -1
- package/components/ion-checkbox.js +1 -1
- package/components/ion-col.js +1 -1
- package/components/ion-content.js +1 -1
- package/components/ion-datetime-button.js +1 -1
- package/components/ion-datetime.js +1 -1
- package/components/ion-fab-button.js +1 -1
- package/components/ion-footer.js +1 -1
- package/components/ion-header.js +1 -1
- package/components/ion-img.js +1 -1
- package/components/ion-infinite-scroll.js +1 -1
- package/components/ion-input-otp.js +1 -1
- package/components/ion-input-password-toggle.js +1 -1
- package/components/ion-input.js +1 -1
- package/components/ion-item-options.js +1 -1
- package/components/ion-item-sliding.js +1 -1
- package/components/ion-item.js +1 -1
- package/components/ion-label.js +1 -1
- package/components/ion-loading.js +1 -1
- package/components/ion-menu-button.js +1 -1
- package/components/ion-menu-toggle.js +1 -1
- package/components/ion-menu.js +1 -1
- package/components/ion-modal.js +1 -1
- package/components/ion-nav.js +1 -1
- package/components/ion-picker-column-option.js +1 -1
- package/components/ion-picker-column.js +1 -1
- package/components/ion-picker.js +1 -1
- package/components/ion-popover.js +1 -1
- package/components/ion-progress-bar.js +1 -1
- package/components/ion-radio-group.js +1 -1
- package/components/ion-radio.js +1 -1
- package/components/ion-range.js +1 -1
- package/components/ion-refresher-content.js +1 -1
- package/components/ion-refresher.js +1 -1
- package/components/ion-reorder-group.js +1 -1
- package/components/ion-router-outlet.js +1 -1
- package/components/ion-router.js +1 -1
- package/components/ion-searchbar.js +1 -1
- package/components/ion-segment-button.js +1 -1
- package/components/ion-segment-view.js +1 -1
- package/components/ion-segment.js +1 -1
- package/components/ion-select-modal.js +1 -1
- package/components/ion-select-popover.js +1 -1
- package/components/ion-select.js +1 -1
- package/components/ion-tab-button.js +1 -1
- package/components/ion-tab.js +1 -1
- package/components/ion-textarea.js +1 -1
- package/components/ion-title.js +1 -1
- package/components/ion-toast.js +1 -1
- package/components/ion-toggle.js +1 -1
- package/components/{p-PkD1iLNN.js → p--cshUOAU.js} +1 -1
- package/components/{p-D8FyR2IB.js → p-B02CcbPD.js} +1 -1
- package/components/{p-CUQjkOdi.js → p-B4IBdPVJ.js} +1 -1
- package/components/p-BODcC-C0.js +4 -0
- package/components/p-BVNUhOOf.js +4 -0
- package/components/{p-BZ1k9WL7.js → p-Ba9_OzSY.js} +1 -1
- package/components/p-Bd8hg9FK.js +4 -0
- package/components/{p-3avHDbEF.js → p-BqyLLYLm.js} +1 -1
- package/components/p-C1AxSUnp.js +4 -0
- package/components/{p-DwTzX8Vi.js → p-CKTjkpAq.js} +1 -1
- package/components/{p-Dah8BCNg.js → p-CKiqp4Vl.js} +1 -1
- package/components/p-CONpe3oX.js +4 -0
- package/components/p-CVrOcN5N.js +4 -0
- package/components/p-CYctYy9B.js +4 -0
- package/components/{p-C-SO5kIs.js → p-C_gnmBt2.js} +1 -1
- package/components/{p-DnBabjgY.js → p-CxEV3Vwy.js} +1 -1
- package/components/p-Cyajikho.js +4 -0
- package/components/p-D0nwlsl_.js +4 -0
- package/components/{p-BT2InaHz.js → p-DBtFJlTi.js} +1 -1
- package/components/{p-BBsseItU.js → p-DD92Fw3n.js} +1 -1
- package/components/{p-kKGBuIkf.js → p-DDI6VLW9.js} +1 -1
- package/components/{p-LkEGRiq0.js → p-DfDIY2oP.js} +1 -1
- package/components/{p-Dj4J3LkD.js → p-Dojwmvde.js} +1 -1
- package/components/p-Drpw2dyl.js +4 -0
- package/components/{p-07wRJfkt.js → p-GpqwNbxf.js} +1 -1
- package/components/p-IQN1T5zw.js +4 -0
- package/components/{p-DTGCMApY.js → p-ODGeXc3M.js} +1 -1
- package/components/p-SHHIB5F0.js +4 -0
- package/components/{p-D5_mEbGJ.js → p-V1THdfzs.js} +1 -1
- package/components/p-YNnH1_Hs.js +4 -0
- package/components/{p-C8BAigo3.js → p-ZrYBjOcc.js} +1 -1
- package/components/p-_y7kwBO8.js +4 -0
- package/components/{p-BrrMFd9K.js → p-jsVMT15X.js} +1 -1
- package/components/{p-7NbIvzb4.js → p-r59A3wQk.js} +1 -1
- package/components/{p-Dy7x-KDF.js → p-yGD6MBgf.js} +1 -1
- package/dist/cjs/{animation-UiXhXV49.js → animation-DcgLg_PI.js} +1 -1
- package/dist/cjs/{attribute-controller-0-lwbVEj.js → attribute-controller-BjTE2TOf.js} +1 -1
- package/dist/cjs/{button-active-DzN1aPt-.js → button-active-FdsfRDY_.js} +1 -1
- package/dist/cjs/{capacitor-BTjfXFlK.js → capacitor-C6Pp4Z7A.js} +1 -1
- package/dist/cjs/{dir-Bma_9Lqh.js → dir-zwDPRE5K.js} +1 -1
- package/dist/cjs/{framework-delegate-hNMKEiQC.js → framework-delegate-JbKIVMzR.js} +1 -1
- package/dist/cjs/{haptic-BD5qPgy8.js → haptic--4QteuuM.js} +1 -1
- package/dist/cjs/{helpers-BrETKUUX.js → helpers-Cqr69qxA.js} +3 -2
- package/dist/cjs/{index-bwclzjks.js → index-BQpSekmz.js} +2 -2
- package/dist/cjs/{index-BTc0Jnhx.js → index-BhWiDK25.js} +3 -3
- package/dist/cjs/{index-DMz2Eyis.js → index-CNaZ6SYM.js} +1 -1
- package/dist/cjs/{index-DNBYnlrc.js → index-DCfr5hz-.js} +3 -3
- package/dist/cjs/index.cjs.js +9 -9
- package/dist/cjs/{input-shims-CRmdShL9.js → input-shims-2AsXPZ5m.js} +9 -8
- package/dist/cjs/ion-accordion_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-action-sheet.cjs.entry.js +8 -8
- package/dist/cjs/ion-alert.cjs.entry.js +19 -19
- package/dist/cjs/ion-app_8.cjs.entry.js +18 -18
- package/dist/cjs/ion-back-button.cjs.entry.js +2 -2
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-button_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-card_5.cjs.entry.js +3 -3
- package/dist/cjs/ion-checkbox.cjs.entry.js +2 -2
- package/dist/cjs/ion-col_3.cjs.entry.js +12 -14
- package/dist/cjs/ion-datetime-button.cjs.entry.js +2 -2
- package/dist/cjs/ion-datetime.cjs.entry.js +9 -8
- package/dist/cjs/ion-fab_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-img.cjs.entry.js +2 -2
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-input-otp.cjs.entry.js +128 -12
- package/dist/cjs/ion-input.cjs.entry.js +3 -3
- package/dist/cjs/ion-item-option_3.cjs.entry.js +9 -9
- package/dist/cjs/ion-item_8.cjs.entry.js +10 -10
- package/dist/cjs/ion-loading.cjs.entry.js +5 -5
- package/dist/cjs/ion-menu_3.cjs.entry.js +6 -6
- package/dist/cjs/ion-modal.cjs.entry.js +10 -10
- package/dist/cjs/ion-nav_2.cjs.entry.js +5 -5
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +2 -2
- package/dist/cjs/ion-picker-column.cjs.entry.js +4 -4
- package/dist/cjs/ion-picker.cjs.entry.js +2 -2
- package/dist/cjs/ion-popover.cjs.entry.js +14 -28
- package/dist/cjs/ion-progress-bar.cjs.entry.js +5 -6
- 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 +6 -6
- package/dist/cjs/ion-reorder_2.cjs.entry.js +5 -5
- package/dist/cjs/ion-route_4.cjs.entry.js +124 -19
- package/dist/cjs/ion-searchbar.cjs.entry.js +2 -2
- package/dist/cjs/ion-segment-view.cjs.entry.js +1 -1
- package/dist/cjs/ion-segment_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-select-modal.cjs.entry.js +4 -4
- package/dist/cjs/ion-select_3.cjs.entry.js +5 -5
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +5 -5
- package/dist/cjs/ion-tab_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-textarea.cjs.entry.js +3 -3
- package/dist/cjs/ion-toast.cjs.entry.js +5 -5
- package/dist/cjs/ion-toggle.cjs.entry.js +4 -4
- package/dist/cjs/ionic.cjs.js +1 -1
- package/dist/cjs/{ios.transition-CN092Fh6.js → ios.transition-Ca6XODo9.js} +15 -15
- package/dist/cjs/{keyboard-BMpscicm.js → keyboard-BlHp4a_c.js} +1 -1
- package/dist/cjs/{keyboard-4OBzkjOG.js → keyboard-c2_I35b-.js} +4 -4
- package/dist/cjs/{keyboard-controller-DZE97OtR.js → keyboard-controller-DHS0BgXp.js} +2 -2
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{md.transition-B6961Ny9.js → md.transition-D8SfNYEp.js} +4 -4
- package/dist/cjs/{overlays-BbVQG3UT.js → overlays-CLld3axA.js} +2 -2
- package/dist/cjs/{slot-mutation-controller-CRa_cKOh.js → slot-mutation-controller-B2OfJEBH.js} +2 -2
- package/dist/cjs/{status-tap-hRIvObiJ.js → status-tap-CDA0Y3Ad.js} +3 -3
- package/dist/cjs/{swipe-back-C-aigThB.js → swipe-back-Idb4gqUk.js} +2 -2
- package/dist/collection/components/alert/alert.js +11 -11
- package/dist/collection/components/col/col.js +12 -14
- package/dist/collection/components/datetime/datetime.js +5 -4
- package/dist/collection/components/input-otp/input-otp.ios.css +30 -5
- package/dist/collection/components/input-otp/input-otp.js +191 -12
- package/dist/collection/components/input-otp/input-otp.md.css +30 -5
- package/dist/collection/components/item/item.js +4 -5
- package/dist/collection/components/item-options/item-options.js +2 -2
- package/dist/collection/components/item-sliding/item-sliding.js +4 -5
- package/dist/collection/components/label/label.js +3 -4
- package/dist/collection/components/popover/animations/ios.enter.js +3 -4
- package/dist/collection/components/popover/animations/md.enter.js +3 -4
- package/dist/collection/components/popover/popover.js +2 -17
- package/dist/collection/components/progress-bar/progress-bar.js +3 -5
- package/dist/collection/components/route/route.js +9 -1
- package/dist/collection/components/route-redirect/route-redirect.js +1 -1
- package/dist/collection/components/router/utils/constants.js +2 -0
- package/dist/collection/components/router/utils/matching.js +97 -14
- package/dist/collection/components/router/utils/path.js +17 -3
- package/dist/collection/components/title/title.js +3 -4
- package/dist/collection/utils/helpers.js +2 -1
- package/dist/collection/utils/input-shims/hacks/common.js +4 -4
- package/dist/collection/utils/rtl/dir.js +1 -1
- package/dist/collection/utils/transition/ios.transition.js +11 -12
- package/dist/docs.json +92 -3
- package/dist/esm/{animation-C_V9lXzL.js → animation-DmtJpz89.js} +1 -1
- package/dist/esm/{attribute-controller-ItNOXNp9.js → attribute-controller-DPMIcbef.js} +1 -1
- package/dist/esm/{button-active-rB-Ct9KZ.js → button-active-DVk40Sjl.js} +1 -1
- package/dist/esm/{capacitor-BY7l8HgR.js → capacitor-CHJaJ9aX.js} +1 -1
- package/dist/esm/{dir-Dj4J3LkD.js → dir-Dojwmvde.js} +1 -1
- package/dist/esm/{framework-delegate-CW5_kWfc.js → framework-delegate-CDjM1vRH.js} +1 -1
- package/dist/esm/{haptic-ES_sSPLn.js → haptic-WXfMCob9.js} +1 -1
- package/dist/esm/{helpers-p94IkmEA.js → helpers-BJqKF1pr.js} +3 -2
- package/dist/esm/{index-DLDbwWW7.js → index-Clv8QC5L.js} +2 -2
- package/dist/esm/{index-txcXIB3P.js → index-DIouXecD.js} +3 -3
- package/dist/esm/{index-CBkVO5D0.js → index-TkLga3ma.js} +1 -1
- package/dist/esm/{index-vgPixHgF.js → index-z9vdZN7I.js} +3 -3
- package/dist/esm/index.js +9 -9
- package/dist/esm/{input-shims-KNXj3DAv.js → input-shims-C1iYF5JK.js} +9 -8
- package/dist/esm/ion-accordion_2.entry.js +2 -2
- package/dist/esm/ion-action-sheet.entry.js +8 -8
- package/dist/esm/ion-alert.entry.js +19 -19
- package/dist/esm/ion-app_8.entry.js +18 -18
- package/dist/esm/ion-back-button.entry.js +2 -2
- package/dist/esm/ion-breadcrumb_2.entry.js +2 -2
- package/dist/esm/ion-button_2.entry.js +3 -3
- package/dist/esm/ion-card_5.entry.js +3 -3
- package/dist/esm/ion-checkbox.entry.js +2 -2
- package/dist/esm/ion-col_3.entry.js +13 -15
- package/dist/esm/ion-datetime-button.entry.js +2 -2
- package/dist/esm/ion-datetime.entry.js +9 -8
- package/dist/esm/ion-fab_3.entry.js +2 -2
- package/dist/esm/ion-img.entry.js +2 -2
- package/dist/esm/ion-infinite-scroll_2.entry.js +3 -3
- package/dist/esm/ion-input-otp.entry.js +129 -13
- package/dist/esm/ion-input.entry.js +3 -3
- package/dist/esm/ion-item-option_3.entry.js +9 -9
- package/dist/esm/ion-item_8.entry.js +10 -10
- package/dist/esm/ion-loading.entry.js +5 -5
- package/dist/esm/ion-menu_3.entry.js +6 -6
- package/dist/esm/ion-modal.entry.js +10 -10
- package/dist/esm/ion-nav_2.entry.js +5 -5
- package/dist/esm/ion-picker-column-option.entry.js +2 -2
- package/dist/esm/ion-picker-column.entry.js +4 -4
- package/dist/esm/ion-picker.entry.js +2 -2
- package/dist/esm/ion-popover.entry.js +14 -28
- package/dist/esm/ion-progress-bar.entry.js +6 -7
- 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 +6 -6
- package/dist/esm/ion-reorder_2.entry.js +5 -5
- package/dist/esm/ion-route_4.entry.js +124 -19
- package/dist/esm/ion-searchbar.entry.js +2 -2
- package/dist/esm/ion-segment-view.entry.js +1 -1
- package/dist/esm/ion-segment_2.entry.js +2 -2
- package/dist/esm/ion-select-modal.entry.js +4 -4
- package/dist/esm/ion-select_3.entry.js +5 -5
- package/dist/esm/ion-tab-bar_2.entry.js +5 -5
- package/dist/esm/ion-tab_2.entry.js +3 -3
- package/dist/esm/ion-textarea.entry.js +3 -3
- package/dist/esm/ion-toast.entry.js +5 -5
- package/dist/esm/ion-toggle.entry.js +4 -4
- package/dist/esm/ionic.js +1 -1
- package/dist/esm/{ios.transition-CW92wRDL.js → ios.transition-BkUGiDUz.js} +15 -15
- package/dist/esm/{keyboard-BumguZrM.js → keyboard-B4Y-Gph8.js} +4 -4
- package/dist/esm/{keyboard-CutS8BPd.js → keyboard-Cmqp5iZD.js} +1 -1
- package/dist/esm/{keyboard-controller-DqohyEsZ.js → keyboard-controller-B2NoF7bV.js} +2 -2
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{md.transition-yhfkYX1P.js → md.transition-B6hlrWjR.js} +4 -4
- package/dist/esm/{overlays-BBgMM61s.js → overlays-DmDY-El7.js} +2 -2
- package/dist/esm/{slot-mutation-controller-uKdPbY9K.js → slot-mutation-controller-Btpr9-9O.js} +2 -2
- package/dist/esm/{status-tap-BskkGI4e.js → status-tap-VGRBYwiC.js} +3 -3
- package/dist/esm/{swipe-back-BZdyM2Q-.js → swipe-back-DV3UpWzz.js} +2 -2
- package/dist/html.html-data.json +10 -2
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/{p-013b9aba.entry.js → p-01b7e3f2.entry.js} +1 -1
- package/dist/ionic/{p-9515f840.entry.js → p-095da8ec.entry.js} +1 -1
- package/dist/ionic/{p-ec08a7e6.entry.js → p-0b09c60e.entry.js} +1 -1
- package/dist/ionic/{p-5b47b8d5.entry.js → p-0c32c626.entry.js} +1 -1
- package/dist/ionic/p-0f97175e.entry.js +4 -0
- package/dist/ionic/{p-b0faaae2.entry.js → p-107a81a6.entry.js} +1 -1
- package/dist/ionic/{p-27960f65.entry.js → p-293cb1d5.entry.js} +1 -1
- package/dist/ionic/{p-1ffa5577.entry.js → p-362dcd86.entry.js} +1 -1
- package/dist/ionic/{p-0562139b.entry.js → p-4bd80334.entry.js} +1 -1
- package/dist/ionic/{p-16de8fd9.entry.js → p-4f25b926.entry.js} +1 -1
- package/dist/ionic/{p-0f1613f2.entry.js → p-52a16f94.entry.js} +1 -1
- package/dist/ionic/{p-436d4ac8.entry.js → p-5bb24bce.entry.js} +1 -1
- package/dist/ionic/{p-9d7e5a0b.entry.js → p-60780b88.entry.js} +1 -1
- package/dist/ionic/{p-1f342c2d.entry.js → p-62c87f3d.entry.js} +1 -1
- package/dist/ionic/{p-7868eb92.entry.js → p-64ac3864.entry.js} +1 -1
- package/dist/ionic/{p-f37e6ed2.entry.js → p-67f004eb.entry.js} +1 -1
- package/dist/ionic/p-6c7b5930.entry.js +4 -0
- package/dist/ionic/p-705759fd.entry.js +4 -0
- package/dist/ionic/{p-a45caa30.entry.js → p-7db20410.entry.js} +1 -1
- package/dist/ionic/{p-694f3e78.entry.js → p-7e9c2a97.entry.js} +1 -1
- package/dist/ionic/p-7l6ENjIV.js +4 -0
- package/dist/ionic/{p-77540bcb.entry.js → p-82abf431.entry.js} +1 -1
- package/dist/ionic/p-8d2ccf0c.entry.js +4 -0
- package/dist/ionic/{p-87fb6d59.entry.js → p-8d651adb.entry.js} +1 -1
- package/dist/ionic/{p-51af4728.entry.js → p-8db08782.entry.js} +1 -1
- package/dist/ionic/{p-af15fc5d.entry.js → p-91f3cd8b.entry.js} +1 -1
- package/dist/ionic/{p-c7ea2647.entry.js → p-930c3538.entry.js} +1 -1
- package/dist/ionic/p-94f1f7df.entry.js +4 -0
- package/dist/ionic/p-99c518de.entry.js +4 -0
- package/dist/ionic/{p-014c3633.entry.js → p-9ffccbf1.entry.js} +1 -1
- package/dist/ionic/p-BNXIurCt.js +4 -0
- package/dist/ionic/p-BOLqP2-V.js +4 -0
- package/dist/ionic/{p-5a3UxQAh.js → p-BY4FwwBp.js} +1 -1
- package/dist/ionic/p-BZTgGzGK.js +4 -0
- package/dist/ionic/p-BdHBcCZF.js +4 -0
- package/dist/ionic/{p-8B39TMv-.js → p-BpED_ep_.js} +1 -1
- package/dist/ionic/p-BuLlVedw.js +4 -0
- package/dist/ionic/p-Bx5x5GJV.js +4 -0
- package/dist/ionic/{p-C4SpVvhx.js → p-C1WYZOZj.js} +1 -1
- package/dist/ionic/p-C2LaBx3E.js +4 -0
- package/dist/ionic/{p-BWKtcudz.js → p-CXs4J83x.js} +1 -1
- package/dist/ionic/p-CgcGX08t.js +4 -0
- package/dist/ionic/p-CngfKMRU.js +4 -0
- package/dist/ionic/p-Co7eql8D.js +4 -0
- package/dist/ionic/{p-DArnNWiu.js → p-D13gXhdC.js} +1 -1
- package/dist/ionic/p-D926OmIX.js +4 -0
- package/dist/ionic/{p-BBZQUbCq.js → p-DPNVo1nr.js} +1 -1
- package/dist/ionic/{p-B0afqOUt.js → p-DXXGkPA8.js} +1 -1
- package/dist/ionic/{p-CJmyfI8x.js → p-Dk4Mdaru.js} +1 -1
- package/dist/ionic/{p-Dj4J3LkD.js → p-Dojwmvde.js} +1 -1
- package/dist/ionic/p-a4389f13.entry.js +4 -0
- package/dist/ionic/p-af8fb360.entry.js +4 -0
- package/dist/ionic/{p-f6a1ab48.entry.js → p-b9ed3a52.entry.js} +1 -1
- package/dist/ionic/p-bfdbe24b.entry.js +4 -0
- package/dist/ionic/{p-77e7b612.entry.js → p-c250b6b0.entry.js} +1 -1
- package/dist/ionic/p-c83dbc12.entry.js +4 -0
- package/dist/ionic/{p-1bb1be7e.entry.js → p-d0e374f8.entry.js} +1 -1
- package/dist/ionic/{p-af4b4719.entry.js → p-d2406889.entry.js} +1 -1
- package/dist/ionic/{p-cbc73380.entry.js → p-d72accc4.entry.js} +1 -1
- package/dist/ionic/{p-1252621e.entry.js → p-e7ab4def.entry.js} +1 -1
- package/dist/ionic/{p-5dcddfd5.entry.js → p-e8e69c21.entry.js} +1 -1
- package/dist/ionic/{p-96d040b0.entry.js → p-eb989dc9.entry.js} +1 -1
- package/dist/ionic/{p-59e4b521.entry.js → p-ec259ac5.entry.js} +1 -1
- package/dist/ionic/p-f2116a54.entry.js +4 -0
- package/dist/ionic/{p-B2JD8_LP.js → p-nCAPr1Ah.js} +1 -1
- package/dist/types/components/alert/alert.d.ts +0 -4
- package/dist/types/components/col/col.d.ts +0 -1
- package/dist/types/components/input-otp/input-otp-interface.d.ts +1 -0
- package/dist/types/components/input-otp/input-otp.d.ts +40 -2
- package/dist/types/components/popover/popover.d.ts +0 -1
- package/dist/types/components/progress-bar/progress-bar.d.ts +0 -1
- package/dist/types/components/route/route.d.ts +8 -0
- package/dist/types/components/route-redirect/route-redirect.d.ts +3 -1
- package/dist/types/components/router/utils/constants.d.ts +2 -0
- package/dist/types/components/router/utils/matching.d.ts +10 -0
- package/dist/types/components/router/utils/path.d.ts +5 -1
- package/dist/types/components.d.ts +32 -6
- package/dist/types/utils/helpers.d.ts +3 -2
- package/dist/types/utils/rtl/dir.d.ts +1 -1
- package/hydrate/index.js +301 -109
- package/hydrate/index.mjs +301 -109
- package/package.json +1 -1
- package/components/p-B3dSuofL.js +0 -4
- package/components/p-BWbz71uB.js +0 -4
- package/components/p-C0TdbIVo.js +0 -4
- package/components/p-C6Y0cCH_.js +0 -4
- package/components/p-CCFj0kgH.js +0 -4
- package/components/p-CRb2xRCz.js +0 -4
- package/components/p-DLEJ61lJ.js +0 -4
- package/components/p-DRm4t-by.js +0 -4
- package/components/p-D_U0pDe5.js +0 -4
- package/components/p-DaW9OZ6S.js +0 -4
- package/components/p-DaojW_d_.js +0 -4
- package/components/p-Ds5vN3iu.js +0 -4
- package/components/p-RhI78AKb.js +0 -4
- package/components/p-z-EWo6r-.js +0 -4
- package/dist/ionic/p-129f7b95.entry.js +0 -4
- package/dist/ionic/p-210f906e.entry.js +0 -4
- package/dist/ionic/p-3c6fc2e8.entry.js +0 -4
- package/dist/ionic/p-43729675.entry.js +0 -4
- package/dist/ionic/p-4468e439.entry.js +0 -4
- package/dist/ionic/p-800ce1e0.entry.js +0 -4
- package/dist/ionic/p-84470714.entry.js +0 -4
- package/dist/ionic/p-8af85fa8.entry.js +0 -4
- package/dist/ionic/p-8dQB1sG_.js +0 -4
- package/dist/ionic/p-B2y1T0dN.js +0 -4
- package/dist/ionic/p-BHBb21Hp.js +0 -4
- package/dist/ionic/p-BgkRGRO3.js +0 -4
- package/dist/ionic/p-CNdt1FPc.js +0 -4
- package/dist/ionic/p-Cf6KtUnA.js +0 -4
- package/dist/ionic/p-CfccUand.js +0 -4
- package/dist/ionic/p-DBFcFCH5.js +0 -4
- package/dist/ionic/p-DCmOKz8e.js +0 -4
- package/dist/ionic/p-DFPZa_No.js +0 -4
- package/dist/ionic/p-DYKDWM2f.js +0 -4
- package/dist/ionic/p-DzQk7Lu8.js +0 -4
- package/dist/ionic/p-c56c23b6.entry.js +0 -4
- package/dist/ionic/p-c8c77f7b.entry.js +0 -4
- package/dist/ionic/p-d58e9da3.entry.js +0 -4
|
@@ -4,12 +4,12 @@
|
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
6
|
var index = require('./index-BiQyIvoc.js');
|
|
7
|
-
var helpers = require('./helpers-
|
|
8
|
-
var haptic = require('./haptic
|
|
7
|
+
var helpers = require('./helpers-Cqr69qxA.js');
|
|
8
|
+
var haptic = require('./haptic--4QteuuM.js');
|
|
9
9
|
var ionicGlobal = require('./ionic-global-48ceLiJ6.js');
|
|
10
10
|
var theme = require('./theme-Bw0rpaNN.js');
|
|
11
|
-
require('./dir-
|
|
12
|
-
require('./capacitor-
|
|
11
|
+
require('./dir-zwDPRE5K.js');
|
|
12
|
+
require('./capacitor-C6Pp4Z7A.js');
|
|
13
13
|
|
|
14
14
|
const pickerColumnCss = () => `:host{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;max-width:100%;height:200px;font-size:22px;text-align:center}.assistive-focusable{left:0;right:0;top:0;bottom:0;position:absolute;z-index:1;pointer-events:none}.assistive-focusable:focus{outline:none}.picker-opts{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0px;padding-bottom:0px;min-width:26px;max-height:200px;outline:none;text-align:inherit;-webkit-scroll-snap-type:y mandatory;-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory;overflow-x:hidden;overflow-y:scroll;scrollbar-width:none}.picker-item-empty{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:block;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.picker-opts::-webkit-scrollbar{display:none}::slotted(ion-picker-column-option){display:block;scroll-snap-align:center}.picker-item-empty,:host(:not([disabled])) ::slotted(ion-picker-column-option.option-disabled){scroll-snap-align:none}::slotted([slot=prefix]),::slotted([slot=suffix]){max-width:200px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::slotted([slot=prefix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:end;justify-content:end}::slotted([slot=suffix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:start;justify-content:start}:host(.picker-column-disabled) .picker-opts{overflow-y:hidden}:host(.picker-column-disabled) ::slotted(ion-picker-column-option){cursor:default;opacity:0.4;pointer-events:none}@media (any-hover: hover){:host(:focus) .picker-opts{outline:none;background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2)}:host(.ion-color:focus) .picker-opts{background:rgba(var(--ion-color-base-rgb), 0.2)}}`;
|
|
15
15
|
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
6
|
var index = require('./index-BiQyIvoc.js');
|
|
7
|
-
var helpers = require('./helpers-
|
|
8
|
-
require('./dir-
|
|
7
|
+
var helpers = require('./helpers-Cqr69qxA.js');
|
|
8
|
+
require('./dir-zwDPRE5K.js');
|
|
9
9
|
|
|
10
10
|
const pickerIosCss = () => `:host{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:200px;direction:ltr;z-index:0}:host .picker-before,:host .picker-after{position:absolute;width:100%;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:1;pointer-events:none}:host .picker-before{top:0;height:83px}:host .picker-before{inset-inline-start:0}:host .picker-after{top:116px;height:84px}:host .picker-after{inset-inline-start:0}:host .picker-highlight{border-radius:var(--highlight-border-radius, 8px);left:0;right:0;top:50%;bottom:0;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;position:absolute;width:calc(100% - 16px);height:34px;-webkit-transform:translateY(-50%);transform:translateY(-50%);background:var(--highlight-background);z-index:-1}:host input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}:host ::slotted(ion-picker-column:first-of-type){text-align:start}:host ::slotted(ion-picker-column:last-of-type){text-align:end}:host ::slotted(ion-picker-column:only-child){text-align:center}:host .picker-before{background:-webkit-gradient(linear, left top, left bottom, color-stop(20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), to(rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8)));background:linear-gradient(to bottom, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8) 100%)}:host .picker-after{background:-webkit-gradient(linear, left bottom, left top, color-stop(20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), to(rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8)));background:linear-gradient(to top, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8) 100%)}:host .picker-highlight{background:var(--highlight-background, var(--ion-color-step-150, var(--ion-background-color-step-150, #eeeeef)))}`;
|
|
11
11
|
|
|
@@ -4,16 +4,16 @@
|
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
6
|
var index = require('./index-BiQyIvoc.js');
|
|
7
|
-
var hardwareBackButton = require('./overlays-
|
|
8
|
-
var frameworkDelegate = require('./framework-delegate-
|
|
9
|
-
var helpers = require('./helpers-
|
|
7
|
+
var hardwareBackButton = require('./overlays-CLld3axA.js');
|
|
8
|
+
var frameworkDelegate = require('./framework-delegate-JbKIVMzR.js');
|
|
9
|
+
var helpers = require('./helpers-Cqr69qxA.js');
|
|
10
10
|
var lockController = require('./lock-controller-aDB9wrEf.js');
|
|
11
11
|
var ionicGlobal = require('./ionic-global-48ceLiJ6.js');
|
|
12
|
-
var dir = require('./dir-Bma_9Lqh.js');
|
|
13
12
|
var theme = require('./theme-Bw0rpaNN.js');
|
|
14
|
-
var index$1 = require('./index-
|
|
15
|
-
var animation = require('./animation-
|
|
13
|
+
var index$1 = require('./index-DCfr5hz-.js');
|
|
14
|
+
var animation = require('./animation-DcgLg_PI.js');
|
|
16
15
|
require('./gesture-controller-CeJslptU.js');
|
|
16
|
+
require('./dir-zwDPRE5K.js');
|
|
17
17
|
|
|
18
18
|
/**
|
|
19
19
|
* Shared per-frame cache for safe-area insets. Avoids creating a temporary
|
|
@@ -898,7 +898,7 @@ const POPOVER_IOS_MIN_EDGE_MARGIN = 25;
|
|
|
898
898
|
const iosEnterAnimation = (baseEl, opts) => {
|
|
899
899
|
const { event: ev, size, trigger, reference, side, align } = opts;
|
|
900
900
|
const doc = baseEl.ownerDocument;
|
|
901
|
-
const
|
|
901
|
+
const isRTL = doc.dir === 'rtl';
|
|
902
902
|
const root = helpers.getElementRoot(baseEl);
|
|
903
903
|
const contentEl = root.querySelector('.popover-content');
|
|
904
904
|
const arrowEl = root.querySelector('.popover-arrow');
|
|
@@ -924,10 +924,10 @@ const iosEnterAnimation = (baseEl, opts) => {
|
|
|
924
924
|
const defaultPosition = {
|
|
925
925
|
top: bodyHeight / 2 - contentHeight / 2,
|
|
926
926
|
left: bodyWidth / 2 - contentWidth / 2,
|
|
927
|
-
originX:
|
|
927
|
+
originX: isRTL ? 'right' : 'left',
|
|
928
928
|
originY: 'top',
|
|
929
929
|
};
|
|
930
|
-
const results = getPopoverPosition(
|
|
930
|
+
const results = getPopoverPosition(isRTL, contentWidth, contentHeight, arrowWidth, arrowHeight, reference, side, align, defaultPosition, trigger, ev, zoom);
|
|
931
931
|
const padding = size === 'cover' ? 0 : POPOVER_IOS_BODY_PADDING;
|
|
932
932
|
const rawSafeArea = getSafeAreaInsets(doc);
|
|
933
933
|
const safeArea = size === 'cover'
|
|
@@ -1048,7 +1048,7 @@ const POPOVER_MD_BODY_PADDING = 12;
|
|
|
1048
1048
|
const mdEnterAnimation = (baseEl, opts) => {
|
|
1049
1049
|
const { event: ev, size, trigger, reference, side, align } = opts;
|
|
1050
1050
|
const doc = baseEl.ownerDocument;
|
|
1051
|
-
const
|
|
1051
|
+
const isRTL = doc.dir === 'rtl';
|
|
1052
1052
|
const root = helpers.getElementRoot(baseEl);
|
|
1053
1053
|
const contentEl = root.querySelector('.popover-content');
|
|
1054
1054
|
/**
|
|
@@ -1072,10 +1072,10 @@ const mdEnterAnimation = (baseEl, opts) => {
|
|
|
1072
1072
|
const defaultPosition = {
|
|
1073
1073
|
top: bodyHeight / 2 - contentHeight / 2,
|
|
1074
1074
|
left: bodyWidth / 2 - contentWidth / 2,
|
|
1075
|
-
originX:
|
|
1075
|
+
originX: isRTL ? 'right' : 'left',
|
|
1076
1076
|
originY: 'top',
|
|
1077
1077
|
};
|
|
1078
|
-
const results = getPopoverPosition(
|
|
1078
|
+
const results = getPopoverPosition(isRTL, contentWidth, contentHeight, 0, 0, reference, side, align, defaultPosition, trigger, ev, zoom);
|
|
1079
1079
|
const padding = size === 'cover' ? 0 : POPOVER_MD_BODY_PADDING;
|
|
1080
1080
|
// MD mode now applies safe-area insets (previously passed 0, ignoring all safe areas).
|
|
1081
1081
|
// This is needed for Android edge-to-edge (API 36+) where system bars overlap content.
|
|
@@ -1185,7 +1185,6 @@ const Popover = class {
|
|
|
1185
1185
|
this.lockController = lockController.createLockController();
|
|
1186
1186
|
this.inline = false;
|
|
1187
1187
|
this.focusDescendantOnPresent = false;
|
|
1188
|
-
this.dirSetOnPresent = false;
|
|
1189
1188
|
this.presented = false;
|
|
1190
1189
|
/** @internal */
|
|
1191
1190
|
this.hasController = false;
|
|
@@ -1486,15 +1485,6 @@ const Popover = class {
|
|
|
1486
1485
|
}
|
|
1487
1486
|
const { el } = this;
|
|
1488
1487
|
const { inline, delegate } = this.getDelegate(true);
|
|
1489
|
-
/**
|
|
1490
|
-
* When presented, ion-popover is hoisted from its place in the element
|
|
1491
|
-
* hierarchy. Copy the current direction onto this element so that child
|
|
1492
|
-
* elements can match.
|
|
1493
|
-
*/
|
|
1494
|
-
if (!el.hasAttribute('dir')) {
|
|
1495
|
-
el.setAttribute('dir', dir.isRTL(el) ? 'rtl' : 'ltr');
|
|
1496
|
-
this.dirSetOnPresent = true;
|
|
1497
|
-
}
|
|
1498
1488
|
/**
|
|
1499
1489
|
* Emit ionMount so JS Frameworks have an opportunity
|
|
1500
1490
|
* to add the child component to the DOM. The child
|
|
@@ -1615,10 +1605,6 @@ const Popover = class {
|
|
|
1615
1605
|
*/
|
|
1616
1606
|
const { delegate } = this.getDelegate();
|
|
1617
1607
|
await frameworkDelegate.detachComponent(delegate, this.usersElement);
|
|
1618
|
-
if (this.dirSetOnPresent) {
|
|
1619
|
-
this.el.removeAttribute('dir');
|
|
1620
|
-
this.dirSetOnPresent = false;
|
|
1621
|
-
}
|
|
1622
1608
|
}
|
|
1623
1609
|
unlock();
|
|
1624
1610
|
return shouldDismiss;
|
|
@@ -1646,7 +1632,7 @@ const Popover = class {
|
|
|
1646
1632
|
const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
|
|
1647
1633
|
const desktop = ionicGlobal.isPlatform('desktop');
|
|
1648
1634
|
const enableArrow = arrow && !parentPopover;
|
|
1649
|
-
return (index.h(index.Host, { key: '
|
|
1635
|
+
return (index.h(index.Host, { key: 'b5e9c788f58397203976d5f8302dfb89e916efe1', "aria-modal": "true", "no-router": true, tabindex: "-1", ...htmlAttributes, style: {
|
|
1650
1636
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
1651
1637
|
}, class: {
|
|
1652
1638
|
...theme.getClassMap(this.cssClass),
|
|
@@ -1657,7 +1643,7 @@ const Popover = class {
|
|
|
1657
1643
|
[`popover-side-${side}`]: true,
|
|
1658
1644
|
[hardwareBackButton.FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false,
|
|
1659
1645
|
'popover-nested': !!parentPopover,
|
|
1660
|
-
}, onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }, !parentPopover && index.h("ion-backdrop", { key: '
|
|
1646
|
+
}, onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }, !parentPopover && index.h("ion-backdrop", { key: 'f3977833c5b2c0087c286ee54363b478d69eb115', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), index.h("div", { key: '1059893d6fd2932ca8adcdf8d45a5d66f4794727', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && index.h("div", { key: '24d7988bdd95882ad77fcaa7112aeda55878bee4', class: "popover-arrow", part: "arrow" }), index.h("div", { key: '4d6992e0a9d629f11763045f9199f9a77fa521ab', class: "popover-content", part: "content" }, index.h("slot", { key: 'b29747419620a01a6c34e9e846cd529b0b210145' })))));
|
|
1661
1647
|
}
|
|
1662
1648
|
get el() { return index.getElement(this); }
|
|
1663
1649
|
static get watchers() { return {
|
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
6
|
var index = require('./index-BiQyIvoc.js');
|
|
7
|
-
var helpers = require('./helpers-
|
|
8
|
-
var dir = require('./dir-Bma_9Lqh.js');
|
|
7
|
+
var helpers = require('./helpers-Cqr69qxA.js');
|
|
9
8
|
var theme = require('./theme-Bw0rpaNN.js');
|
|
10
9
|
var ionicGlobal = require('./ionic-global-48ceLiJ6.js');
|
|
10
|
+
require('./dir-zwDPRE5K.js');
|
|
11
11
|
|
|
12
12
|
const progressBarIosCss = () => `:host{--background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.3);--progress-background:var(--ion-color-primary, #0054e9);display:block;position:relative;width:100%;contain:strict;direction:ltr;overflow:hidden}.progress,.progress-indeterminate,.indeterminate-bar-primary,.indeterminate-bar-secondary,.progress-buffer-bar{left:0;right:0;top:0;bottom:0;position:absolute;width:100%;height:100%}.buffer-circles-container,.buffer-circles{left:0;right:0;top:0;bottom:0;position:absolute}.buffer-circles{right:-10px;left:-10px;}.progress,.progress-buffer-bar,.buffer-circles-container{-webkit-transform-origin:left top;transform-origin:left top;-webkit-transition:-webkit-transform 150ms linear;transition:-webkit-transform 150ms linear;transition:transform 150ms linear;transition:transform 150ms linear, -webkit-transform 150ms linear}.progress,.progress-indeterminate{background:var(--progress-background);z-index:2}.progress-buffer-bar{background:var(--background);z-index:1}.buffer-circles-container{overflow:hidden}.indeterminate-bar-primary{top:0;right:0;bottom:0;left:-145.166611%;-webkit-animation:primary-indeterminate-translate 2s infinite linear;animation:primary-indeterminate-translate 2s infinite linear}.indeterminate-bar-primary .progress-indeterminate{-webkit-animation:primary-indeterminate-scale 2s infinite linear;animation:primary-indeterminate-scale 2s infinite linear;-webkit-animation-play-state:inherit;animation-play-state:inherit}.indeterminate-bar-secondary{top:0;right:0;bottom:0;left:-54.888891%;-webkit-animation:secondary-indeterminate-translate 2s infinite linear;animation:secondary-indeterminate-translate 2s infinite linear}.indeterminate-bar-secondary .progress-indeterminate{-webkit-animation:secondary-indeterminate-scale 2s infinite linear;animation:secondary-indeterminate-scale 2s infinite linear;-webkit-animation-play-state:inherit;animation-play-state:inherit}.buffer-circles{background-image:radial-gradient(ellipse at center, var(--background) 0%, var(--background) 30%, transparent 30%);background-repeat:repeat-x;background-position:5px center;background-size:10px 10px;z-index:0;-webkit-animation:buffering 450ms infinite linear;animation:buffering 450ms infinite linear}:host(.progress-bar-reversed){-webkit-transform:scaleX(-1);transform:scaleX(-1)}:host(.progress-paused) .indeterminate-bar-secondary,:host(.progress-paused) .indeterminate-bar-primary,:host(.progress-paused) .buffer-circles{-webkit-animation-play-state:paused;animation-play-state:paused}:host(.ion-color) .buffer-circles{background-image:radial-gradient(ellipse at center, rgba(var(--ion-color-base-rgb), 0.3) 0%, rgba(var(--ion-color-base-rgb), 0.3) 30%, transparent 30%)}:host(.ion-color) .progress,:host(.ion-color) .progress-indeterminate{background:var(--ion-color-base)}@-webkit-keyframes primary-indeterminate-translate{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{-webkit-animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);-webkit-transform:translateX(0);transform:translateX(0)}59.15%{-webkit-animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);-webkit-transform:translateX(83.67142%);transform:translateX(83.67142%)}100%{-webkit-transform:translateX(200.611057%);transform:translateX(200.611057%)}}@keyframes primary-indeterminate-translate{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{-webkit-animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);-webkit-transform:translateX(0);transform:translateX(0)}59.15%{-webkit-animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);-webkit-transform:translateX(83.67142%);transform:translateX(83.67142%)}100%{-webkit-transform:translateX(200.611057%);transform:translateX(200.611057%)}}@-webkit-keyframes primary-indeterminate-scale{0%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}36.65%{-webkit-animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}69.15%{-webkit-animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);-webkit-transform:scaleX(0.661479);transform:scaleX(0.661479)}100%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}}@keyframes primary-indeterminate-scale{0%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}36.65%{-webkit-animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}69.15%{-webkit-animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);-webkit-transform:scaleX(0.661479);transform:scaleX(0.661479)}100%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}}@-webkit-keyframes secondary-indeterminate-translate{0%{-webkit-animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);-webkit-transform:translateX(0);transform:translateX(0)}25%{-webkit-animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);-webkit-transform:translateX(37.651913%);transform:translateX(37.651913%)}48.35%{-webkit-animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);-webkit-transform:translateX(84.386165%);transform:translateX(84.386165%)}100%{-webkit-transform:translateX(160.277782%);transform:translateX(160.277782%)}}@keyframes secondary-indeterminate-translate{0%{-webkit-animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);-webkit-transform:translateX(0);transform:translateX(0)}25%{-webkit-animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);-webkit-transform:translateX(37.651913%);transform:translateX(37.651913%)}48.35%{-webkit-animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);-webkit-transform:translateX(84.386165%);transform:translateX(84.386165%)}100%{-webkit-transform:translateX(160.277782%);transform:translateX(160.277782%)}}@-webkit-keyframes secondary-indeterminate-scale{0%{-webkit-animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}19.15%{-webkit-animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);-webkit-transform:scaleX(0.457104);transform:scaleX(0.457104)}44.15%{-webkit-animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);-webkit-transform:scaleX(0.72796);transform:scaleX(0.72796)}100%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}}@keyframes secondary-indeterminate-scale{0%{-webkit-animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}19.15%{-webkit-animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);-webkit-transform:scaleX(0.457104);transform:scaleX(0.457104)}44.15%{-webkit-animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);-webkit-transform:scaleX(0.72796);transform:scaleX(0.72796)}100%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}}@-webkit-keyframes buffering{to{-webkit-transform:translateX(-10px);transform:translateX(-10px)}}@keyframes buffering{to{-webkit-transform:translateX(-10px);transform:translateX(-10px)}}:host{border-radius:9999px;height:4px}:host(.progress-bar-solid){--background:var(--ion-color-step-100, var(--ion-background-color-step-100, #e6e6e6))}`;
|
|
13
13
|
|
|
@@ -38,20 +38,19 @@ const ProgressBar = class {
|
|
|
38
38
|
this.buffer = 1;
|
|
39
39
|
}
|
|
40
40
|
render() {
|
|
41
|
-
const { color, type, reversed, value, buffer
|
|
41
|
+
const { color, type, reversed, value, buffer } = this;
|
|
42
42
|
const paused = index.config.getBoolean('_testing');
|
|
43
43
|
const mode = ionicGlobal.getIonMode(this);
|
|
44
44
|
// If the progress is displayed as a solid bar.
|
|
45
45
|
const progressSolid = buffer === 1;
|
|
46
|
-
return (index.h(index.Host, { key: '
|
|
46
|
+
return (index.h(index.Host, { key: 'd53d39a3e2c0198164a9face62d3775f357b6914', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: theme.createColorClasses(color, {
|
|
47
47
|
[mode]: true,
|
|
48
48
|
[`progress-bar-${type}`]: true,
|
|
49
49
|
'progress-paused': paused,
|
|
50
|
-
'progress-bar-reversed': dir
|
|
50
|
+
'progress-bar-reversed': document.dir === 'rtl' ? !reversed : reversed,
|
|
51
51
|
'progress-bar-solid': progressSolid,
|
|
52
52
|
}) }, type === 'indeterminate' ? renderIndeterminate() : renderProgress(value, buffer)));
|
|
53
53
|
}
|
|
54
|
-
get el() { return index.getElement(this); }
|
|
55
54
|
};
|
|
56
55
|
const renderIndeterminate = () => {
|
|
57
56
|
return (index.h("div", { part: "track", class: "progress-buffer-bar" }, index.h("div", { class: "indeterminate-bar-primary" }, index.h("span", { part: "progress", class: "progress-indeterminate" })), index.h("div", { class: "indeterminate-bar-secondary" }, index.h("span", { part: "progress", class: "progress-indeterminate" }))));
|
|
@@ -4,13 +4,13 @@
|
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
6
|
var index = require('./index-BiQyIvoc.js');
|
|
7
|
-
var helpers = require('./helpers-
|
|
7
|
+
var helpers = require('./helpers-Cqr69qxA.js');
|
|
8
8
|
var compareWithUtils = require('./compare-with-utils-DSicavqM.js');
|
|
9
9
|
var itemMultipleInputs = require('./item-multiple-inputs-C-hz7xrh.js');
|
|
10
10
|
var theme = require('./theme-Bw0rpaNN.js');
|
|
11
11
|
var ionicGlobal = require('./ionic-global-48ceLiJ6.js');
|
|
12
12
|
var validity = require('./validity-BpS37YFM.js');
|
|
13
|
-
require('./dir-
|
|
13
|
+
require('./dir-zwDPRE5K.js');
|
|
14
14
|
|
|
15
15
|
const radioIosCss = () => `:host{--inner-border-radius:50%;display:inline-block;position:relative;max-width:100%;min-height:inherit;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2;-webkit-box-sizing:border-box;box-sizing:border-box}:host(.radio-disabled){pointer-events:none}.radio-icon{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;contain:layout size style}.radio-icon,.radio-inner{-webkit-box-sizing:border-box;box-sizing:border-box}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}:host(:focus){outline:none}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-focused) .radio-icon::after{border-radius:var(--inner-border-radius);display:block;position:absolute;width:36px;height:36px;background:var(--ion-color-primary-tint, #1a65eb);content:"";opacity:0.2}.radio-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;min-height:inherit;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.radio-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.radio-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host(.radio-justify-space-between) .radio-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.radio-justify-start) .radio-wrapper{-ms-flex-pack:start;justify-content:start}:host(.radio-justify-end) .radio-wrapper{-ms-flex-pack:end;justify-content:end}:host(.radio-alignment-start) .radio-wrapper{-ms-flex-align:start;align-items:start}:host(.radio-alignment-center) .radio-wrapper{-ms-flex-align:center;align-items:center}:host(.radio-justify-space-between),:host(.radio-justify-start),:host(.radio-justify-end),:host(.radio-alignment-start),:host(.radio-alignment-center){display:block}:host(.radio-label-placement-start) .radio-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.radio-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.radio-label-placement-end) .radio-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.radio-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.radio-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.radio-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px}:host(.radio-label-placement-stacked) .radio-wrapper{-ms-flex-direction:column;flex-direction:column}:host(.radio-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.radio-label-placement-stacked.radio-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.radio-label-placement-stacked.radio-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).radio-label-placement-stacked.radio-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.radio-label-placement-stacked.radio-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.radio-label-placement-stacked.radio-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.radio-label-placement-stacked.radio-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).radio-label-placement-stacked.radio-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.radio-label-placement-stacked.radio-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}:host{--color-checked:var(--ion-color-primary, #0054e9)}:host(.ion-color.radio-checked) .radio-inner{border-color:var(--ion-color-base)}.item-radio.item-ios ion-label{-webkit-margin-start:0;margin-inline-start:0}.radio-inner{width:33%;height:50%}:host(.radio-checked) .radio-inner{-webkit-transform:rotate(45deg);transform:rotate(45deg);border-width:0.125rem;border-top-width:0;border-left-width:0;border-style:solid;border-color:var(--color-checked)}:host(.radio-disabled){opacity:0.3}.native-wrapper .radio-icon{width:0.9375rem;height:1.5rem}`;
|
|
16
16
|
|
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
6
|
var index = require('./index-BiQyIvoc.js');
|
|
7
|
-
var index$1 = require('./index-
|
|
8
|
-
var helpers = require('./helpers-
|
|
9
|
-
var dir = require('./dir-
|
|
7
|
+
var index$1 = require('./index-CNaZ6SYM.js');
|
|
8
|
+
var helpers = require('./helpers-Cqr69qxA.js');
|
|
9
|
+
var dir = require('./dir-zwDPRE5K.js');
|
|
10
10
|
var theme = require('./theme-Bw0rpaNN.js');
|
|
11
11
|
var ionicGlobal = require('./ionic-global-48ceLiJ6.js');
|
|
12
12
|
|
|
@@ -5,17 +5,17 @@
|
|
|
5
5
|
|
|
6
6
|
var index = require('./index-BiQyIvoc.js');
|
|
7
7
|
var cubicBezier = require('./cubic-bezier-DAjy1V-e.js');
|
|
8
|
-
var index$1 = require('./index-
|
|
9
|
-
var helpers = require('./helpers-
|
|
10
|
-
var haptic = require('./haptic
|
|
8
|
+
var index$1 = require('./index-CNaZ6SYM.js');
|
|
9
|
+
var helpers = require('./helpers-Cqr69qxA.js');
|
|
10
|
+
var haptic = require('./haptic--4QteuuM.js');
|
|
11
11
|
var ionicGlobal = require('./ionic-global-48ceLiJ6.js');
|
|
12
|
-
var animation = require('./animation-
|
|
12
|
+
var animation = require('./animation-DcgLg_PI.js');
|
|
13
13
|
var config = require('./config-CjUbvdPW.js');
|
|
14
14
|
var index$3 = require('./index-B4ONUQRp.js');
|
|
15
15
|
var index$2 = require('./index-wOmugbdg.js');
|
|
16
16
|
var spinnerConfigs = require('./spinner-configs-DxHKnd3-.js');
|
|
17
|
-
require('./dir-
|
|
18
|
-
require('./capacitor-
|
|
17
|
+
require('./dir-zwDPRE5K.js');
|
|
18
|
+
require('./capacitor-C6Pp4Z7A.js');
|
|
19
19
|
|
|
20
20
|
const getRefresherAnimationType = (contentEl) => {
|
|
21
21
|
const previousSibling = contentEl.previousElementSibling;
|
|
@@ -6,11 +6,11 @@
|
|
|
6
6
|
var index = require('./index-BiQyIvoc.js');
|
|
7
7
|
var index$1 = require('./index-wOmugbdg.js');
|
|
8
8
|
var ionicGlobal = require('./ionic-global-48ceLiJ6.js');
|
|
9
|
-
var index$2 = require('./index-
|
|
10
|
-
var helpers = require('./helpers-
|
|
11
|
-
var haptic = require('./haptic
|
|
12
|
-
require('./dir-
|
|
13
|
-
require('./capacitor-
|
|
9
|
+
var index$2 = require('./index-CNaZ6SYM.js');
|
|
10
|
+
var helpers = require('./helpers-Cqr69qxA.js');
|
|
11
|
+
var haptic = require('./haptic--4QteuuM.js');
|
|
12
|
+
require('./dir-zwDPRE5K.js');
|
|
13
|
+
require('./capacitor-C6Pp4Z7A.js');
|
|
14
14
|
|
|
15
15
|
const reorderIosCss = () => `:host([slot]){display:none;line-height:0;z-index:100}.reorder-icon{display:block}::slotted(ion-icon){font-size:dynamic-font(16px)}.reorder-icon{font-size:2.125rem;opacity:0.4}`;
|
|
16
16
|
|
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
6
|
var index = require('./index-BiQyIvoc.js');
|
|
7
|
-
var helpers = require('./helpers-
|
|
8
|
-
var index$1 = require('./index-
|
|
7
|
+
var helpers = require('./helpers-Cqr69qxA.js');
|
|
8
|
+
var index$1 = require('./index-CNaZ6SYM.js');
|
|
9
9
|
var theme = require('./theme-Bw0rpaNN.js');
|
|
10
10
|
var ionicGlobal = require('./ionic-global-48ceLiJ6.js');
|
|
11
|
-
require('./dir-
|
|
11
|
+
require('./dir-zwDPRE5K.js');
|
|
12
12
|
|
|
13
13
|
const Route = class {
|
|
14
14
|
constructor(hostRef) {
|
|
@@ -19,6 +19,14 @@ const Route = class {
|
|
|
19
19
|
*
|
|
20
20
|
* Accepts paths similar to expressjs so that you can define parameters
|
|
21
21
|
* in the url /foo/:bar where bar would be available in incoming props.
|
|
22
|
+
*
|
|
23
|
+
* A url ending in `*`, such as `*` or `/admin/*`, matches any remaining path,
|
|
24
|
+
* including none, so `/admin/*` also matches `/admin`. It only wins over a
|
|
25
|
+
* route that matches the whole path when it has more fixed segments, so
|
|
26
|
+
* `/admin/*` wins over `/:section/:id` but not over `/admin/:id`. It always
|
|
27
|
+
* wins over a route that matches by ignoring trailing segments, such as
|
|
28
|
+
* `/admin` for `/admin/users`. The matched path is passed in the `pathMatch`
|
|
29
|
+
* prop without a leading `/`. A `*` on a route with child routes is ignored.
|
|
22
30
|
*/
|
|
23
31
|
this.url = '';
|
|
24
32
|
}
|
|
@@ -82,6 +90,8 @@ const RouteRedirect = class {
|
|
|
82
90
|
const ROUTER_INTENT_NONE = 'root';
|
|
83
91
|
const ROUTER_INTENT_FORWARD = 'forward';
|
|
84
92
|
const ROUTER_INTENT_BACK = 'back';
|
|
93
|
+
/** Param that holds the path matched by a trailing `*` in an `ion-route` url. */
|
|
94
|
+
const WILDCARD_PARAM = 'pathMatch';
|
|
85
95
|
|
|
86
96
|
/** Join the non empty segments with "/". */
|
|
87
97
|
const generatePath = (segments) => {
|
|
@@ -115,12 +125,13 @@ const writeSegments = (history, root, useHash, segments, direction, state, query
|
|
|
115
125
|
*
|
|
116
126
|
* Notes:
|
|
117
127
|
* - parameter segments of the form :param are replaced with their value,
|
|
118
|
-
* - null is returned when a value is missing for any parameter segment
|
|
128
|
+
* - null is returned when a value is missing for any parameter segment,
|
|
129
|
+
* - a trailing wildcard is replaced with the path it matched.
|
|
119
130
|
*/
|
|
120
131
|
const chainToSegments = (chain) => {
|
|
121
132
|
const segments = [];
|
|
122
133
|
for (const route of chain) {
|
|
123
|
-
for (const segment of route.segments) {
|
|
134
|
+
for (const segment of withoutWildcard(route.segments)) {
|
|
124
135
|
if (segment[0] === ':') {
|
|
125
136
|
const param = route.params && route.params[segment.slice(1)];
|
|
126
137
|
if (!param) {
|
|
@@ -132,9 +143,22 @@ const chainToSegments = (chain) => {
|
|
|
132
143
|
segments.push(segment);
|
|
133
144
|
}
|
|
134
145
|
}
|
|
146
|
+
segments.push(...wildcardSegments(route));
|
|
135
147
|
}
|
|
136
148
|
return segments;
|
|
137
149
|
};
|
|
150
|
+
/** Only a `*` in the last segment of a route url is a wildcard. Elsewhere it's matched literally. */
|
|
151
|
+
const endsWithWildcard = (segments) => {
|
|
152
|
+
return segments[segments.length - 1] === '*';
|
|
153
|
+
};
|
|
154
|
+
/** Returns the path segments matched by the trailing wildcard of the route. */
|
|
155
|
+
const wildcardSegments = (route) => {
|
|
156
|
+
const pathMatch = endsWithWildcard(route.segments) ? route.params?.[WILDCARD_PARAM] : undefined;
|
|
157
|
+
return pathMatch ? pathMatch.split('/').filter((s) => s.length > 0) : [];
|
|
158
|
+
};
|
|
159
|
+
const withoutWildcard = (segments) => {
|
|
160
|
+
return endsWithWildcard(segments) ? segments.slice(0, -1) : segments;
|
|
161
|
+
};
|
|
138
162
|
/**
|
|
139
163
|
* Removes the prefix segments from the path segments.
|
|
140
164
|
*
|
|
@@ -467,6 +491,10 @@ const matchesIDs = (ids, chain) => {
|
|
|
467
491
|
if (routeId.id.toLowerCase() !== routeChain.id) {
|
|
468
492
|
break;
|
|
469
493
|
}
|
|
494
|
+
// Weight a wildcard route when the outlet reports its `pathMatch`
|
|
495
|
+
if (routeId.params?.[WILDCARD_PARAM] !== undefined && endsWithWildcard(routeChain.segments)) {
|
|
496
|
+
score++;
|
|
497
|
+
}
|
|
470
498
|
if (routeId.params) {
|
|
471
499
|
const routeIdParams = Object.keys(routeId.params);
|
|
472
500
|
// Only compare routes with the chain that have the same number of parameters.
|
|
@@ -522,21 +550,28 @@ const matchesSegments = (segments, chain) => {
|
|
|
522
550
|
matchesDefault = true;
|
|
523
551
|
}
|
|
524
552
|
else {
|
|
525
|
-
|
|
553
|
+
const params = {};
|
|
554
|
+
for (const segment of withoutWildcard(chainSegments)) {
|
|
526
555
|
const data = inputSegments.next();
|
|
527
556
|
// data param
|
|
528
557
|
if (segment[0] === ':') {
|
|
529
558
|
if (data === '') {
|
|
530
559
|
return null;
|
|
531
560
|
}
|
|
532
|
-
allparams = allparams || [];
|
|
533
|
-
const params = allparams[i] || (allparams[i] = {});
|
|
534
561
|
params[segment.slice(1)] = data;
|
|
535
562
|
}
|
|
536
563
|
else if (data !== segment) {
|
|
537
564
|
return null;
|
|
538
565
|
}
|
|
539
566
|
}
|
|
567
|
+
// A trailing `*` on a parent route has no effect. Its children match the rest of the path.
|
|
568
|
+
if (i === chain.length - 1 && endsWithWildcard(chainSegments)) {
|
|
569
|
+
params[WILDCARD_PARAM] = inputSegments.rest().join('/');
|
|
570
|
+
}
|
|
571
|
+
if (Object.keys(params).length > 0) {
|
|
572
|
+
allparams = allparams || [];
|
|
573
|
+
allparams[i] = params;
|
|
574
|
+
}
|
|
540
575
|
matchesDefault = false;
|
|
541
576
|
}
|
|
542
577
|
}
|
|
@@ -568,25 +603,38 @@ const mergeParams = (a, b) => {
|
|
|
568
603
|
* Returns the best match or null when no match is found.
|
|
569
604
|
* When a chain is returned the parameters are updated from the RouteIDs.
|
|
570
605
|
* That is they contain both the componentProps of the <ion-route> and the parameter segment.
|
|
606
|
+
*
|
|
607
|
+
* When a wildcard route ties with other routes, a route without a wildcard that can build a url wins,
|
|
608
|
+
* then the wildcard route. Otherwise the first route declared wins a tie.
|
|
571
609
|
*/
|
|
572
610
|
const findChainForIDs = (ids, chains) => {
|
|
573
|
-
let match = null;
|
|
574
611
|
let maxMatches = 0;
|
|
612
|
+
let tied = [];
|
|
575
613
|
for (const chain of chains) {
|
|
576
614
|
const score = matchesIDs(ids, chain);
|
|
577
615
|
if (score > maxMatches) {
|
|
578
|
-
match = chain;
|
|
579
616
|
maxMatches = score;
|
|
617
|
+
tied = [chain];
|
|
618
|
+
}
|
|
619
|
+
else if (score > 0 && score === maxMatches) {
|
|
620
|
+
tied.push(chain);
|
|
580
621
|
}
|
|
581
622
|
}
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
623
|
+
const matches = tied.map((chain) => chain.map((route, i) => ({
|
|
624
|
+
id: route.id,
|
|
625
|
+
segments: route.segments,
|
|
626
|
+
params: mergeParams(route.params, ids[i]?.params),
|
|
627
|
+
})));
|
|
628
|
+
if (!matches.some(chainEndsWithWildcard)) {
|
|
629
|
+
return matches.length > 0 ? matches[0] : null;
|
|
588
630
|
}
|
|
589
|
-
return
|
|
631
|
+
return matches.reduce((best, chain) => (tieRank(chain) > tieRank(best) ? chain : best));
|
|
632
|
+
};
|
|
633
|
+
const tieRank = (chain) => {
|
|
634
|
+
if (chainEndsWithWildcard(chain)) {
|
|
635
|
+
return 1;
|
|
636
|
+
}
|
|
637
|
+
return chainToSegments(chain) !== null ? 2 : 0;
|
|
590
638
|
};
|
|
591
639
|
/**
|
|
592
640
|
* Finds the best match for the segments in the chains.
|
|
@@ -594,10 +642,17 @@ const findChainForIDs = (ids, chains) => {
|
|
|
594
642
|
* Returns the best match or null when no match is found.
|
|
595
643
|
* When a chain is returned the parameters are updated from the segments.
|
|
596
644
|
* That is they contain both the componentProps of the <ion-route> and the parameter segments.
|
|
645
|
+
*
|
|
646
|
+
* When wildcard routes match, the one with the most fixed segments wins if it has more fixed segments than every
|
|
647
|
+
* route that matched the whole path. Routes that only matched by ignoring trailing segments don't count.
|
|
597
648
|
*/
|
|
598
649
|
const findChainForSegments = (segments, chains) => {
|
|
599
650
|
let match = null;
|
|
600
651
|
let bestScore = 0;
|
|
652
|
+
let fullMatch = null;
|
|
653
|
+
let bestFullScore = 0;
|
|
654
|
+
let maxFullFixed = -1;
|
|
655
|
+
let wildcard = null;
|
|
601
656
|
for (const chain of chains) {
|
|
602
657
|
const matchedChain = matchesSegments(segments, chain);
|
|
603
658
|
if (matchedChain !== null) {
|
|
@@ -606,9 +661,51 @@ const findChainForSegments = (segments, chains) => {
|
|
|
606
661
|
bestScore = score;
|
|
607
662
|
match = matchedChain;
|
|
608
663
|
}
|
|
664
|
+
if (chainEndsWithWildcard(matchedChain)) {
|
|
665
|
+
if (wildcard === null || winsWildcard(matchedChain, wildcard)) {
|
|
666
|
+
wildcard = matchedChain;
|
|
667
|
+
}
|
|
668
|
+
}
|
|
669
|
+
else if (!isPartialMatch(segments, matchedChain)) {
|
|
670
|
+
if (score > bestFullScore) {
|
|
671
|
+
bestFullScore = score;
|
|
672
|
+
fullMatch = matchedChain;
|
|
673
|
+
}
|
|
674
|
+
maxFullFixed = Math.max(maxFullFixed, countFixedSegments(matchedChain));
|
|
675
|
+
}
|
|
676
|
+
}
|
|
677
|
+
}
|
|
678
|
+
// Without a wildcard to match the rest of the path, routes can still ignore trailing segments.
|
|
679
|
+
if (wildcard === null) {
|
|
680
|
+
return match;
|
|
681
|
+
}
|
|
682
|
+
// Compare fixed segments rather than priority, since nesting under default routes raises the priority
|
|
683
|
+
return countFixedSegments(wildcard) > maxFullFixed ? wildcard : fullMatch;
|
|
684
|
+
};
|
|
685
|
+
/** Returns whether the chain matched the path segments only by ignoring some trailing segments. */
|
|
686
|
+
const isPartialMatch = (segments, chain) => {
|
|
687
|
+
const matched = chainToSegments(chain);
|
|
688
|
+
return matched !== null && matched.length < segments.filter((s) => s !== '').length;
|
|
689
|
+
};
|
|
690
|
+
const chainEndsWithWildcard = (chain) => {
|
|
691
|
+
return endsWithWildcard(chain[chain.length - 1].segments);
|
|
692
|
+
};
|
|
693
|
+
/** Returns whether the wildcard chain beats `best` by fixed segments, then by priority. */
|
|
694
|
+
const winsWildcard = (chain, best) => {
|
|
695
|
+
const chainFixed = countFixedSegments(chain);
|
|
696
|
+
const bestFixed = countFixedSegments(best);
|
|
697
|
+
return chainFixed > bestFixed || (chainFixed === bestFixed && computePriority(chain) > computePriority(best));
|
|
698
|
+
};
|
|
699
|
+
const countFixedSegments = (chain) => {
|
|
700
|
+
let count = 0;
|
|
701
|
+
for (const route of chain) {
|
|
702
|
+
for (const segment of withoutWildcard(route.segments)) {
|
|
703
|
+
if (segment !== '' && segment[0] !== ':') {
|
|
704
|
+
count++;
|
|
705
|
+
}
|
|
609
706
|
}
|
|
610
707
|
}
|
|
611
|
-
return
|
|
708
|
+
return count;
|
|
612
709
|
};
|
|
613
710
|
/**
|
|
614
711
|
* Computes the priority of a chain.
|
|
@@ -620,12 +717,14 @@ const findChainForSegments = (segments, chains) => {
|
|
|
620
717
|
* - /path/to/page
|
|
621
718
|
*
|
|
622
719
|
* The second one will be given a higher priority because "page" is a fixed segment (vs ":where", a parameter segment).
|
|
720
|
+
*
|
|
721
|
+
* A trailing wildcard is not counted.
|
|
623
722
|
*/
|
|
624
723
|
const computePriority = (chain) => {
|
|
625
724
|
let score = 1;
|
|
626
725
|
let level = 1;
|
|
627
726
|
for (const route of chain) {
|
|
628
|
-
for (const segment of route.segments) {
|
|
727
|
+
for (const segment of withoutWildcard(route.segments)) {
|
|
629
728
|
if (segment[0] === ':') {
|
|
630
729
|
score += Math.pow(1, level);
|
|
631
730
|
}
|
|
@@ -647,6 +746,12 @@ class RouterSegments {
|
|
|
647
746
|
}
|
|
648
747
|
return '';
|
|
649
748
|
}
|
|
749
|
+
/** Consumes and returns the remaining non empty segments. */
|
|
750
|
+
rest() {
|
|
751
|
+
const rest = this.segments.filter((s) => s !== '');
|
|
752
|
+
this.segments = [];
|
|
753
|
+
return rest;
|
|
754
|
+
}
|
|
650
755
|
}
|
|
651
756
|
|
|
652
757
|
const readProp = (el, prop) => {
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
6
|
var index = require('./index-BiQyIvoc.js');
|
|
7
|
-
var helpers = require('./helpers-
|
|
8
|
-
var dir = require('./dir-
|
|
7
|
+
var helpers = require('./helpers-Cqr69qxA.js');
|
|
8
|
+
var dir = require('./dir-zwDPRE5K.js');
|
|
9
9
|
var theme = require('./theme-Bw0rpaNN.js');
|
|
10
10
|
var index$1 = require('./index-wOmugbdg.js');
|
|
11
11
|
var ionicGlobal = require('./ionic-global-48ceLiJ6.js');
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
6
|
var index = require('./index-BiQyIvoc.js');
|
|
7
|
-
var dir = require('./dir-
|
|
7
|
+
var dir = require('./dir-zwDPRE5K.js');
|
|
8
8
|
|
|
9
9
|
const segmentViewIosCss = () => `:host{display:-ms-flexbox;display:flex;height:100%;overflow-x:scroll;-webkit-scroll-snap-type:x mandatory;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none}:host::-webkit-scrollbar{display:none}:host(.segment-view-disabled),:host(.segment-view-swipe-disabled){-ms-touch-action:none;touch-action:none;overflow-x:hidden}:host(.segment-view-scroll-disabled){pointer-events:none}:host(.segment-view-disabled){opacity:0.3}`;
|
|
10
10
|
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
6
|
var index = require('./index-BiQyIvoc.js');
|
|
7
|
-
var helpers = require('./helpers-
|
|
8
|
-
var dir = require('./dir-
|
|
7
|
+
var helpers = require('./helpers-Cqr69qxA.js');
|
|
8
|
+
var dir = require('./dir-zwDPRE5K.js');
|
|
9
9
|
var theme = require('./theme-Bw0rpaNN.js');
|
|
10
10
|
var ionicGlobal = require('./ionic-global-48ceLiJ6.js');
|
|
11
11
|
|
|
@@ -6,12 +6,12 @@
|
|
|
6
6
|
var index = require('./index-BiQyIvoc.js');
|
|
7
7
|
var ionicGlobal = require('./ionic-global-48ceLiJ6.js');
|
|
8
8
|
var overlayControlLabel = require('./overlay-control-label-D2sdL2O8.js');
|
|
9
|
-
var hardwareBackButton = require('./overlays-
|
|
9
|
+
var hardwareBackButton = require('./overlays-CLld3axA.js');
|
|
10
10
|
var selectOptionRender = require('./select-option-render-CzyhrkOu.js');
|
|
11
11
|
var theme = require('./theme-Bw0rpaNN.js');
|
|
12
|
-
require('./helpers-
|
|
13
|
-
require('./dir-
|
|
14
|
-
require('./framework-delegate-
|
|
12
|
+
require('./helpers-Cqr69qxA.js');
|
|
13
|
+
require('./dir-zwDPRE5K.js');
|
|
14
|
+
require('./framework-delegate-JbKIVMzR.js');
|
|
15
15
|
require('./gesture-controller-CeJslptU.js');
|
|
16
16
|
require('./index-B4ONUQRp.js');
|
|
17
17
|
|