@ionic/core 8.7.19-nightly.20260304 → 8.8.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/index.d.ts +2 -0
- package/components/index.js +1 -114
- package/components/ion-accordion-group.js +1 -268
- package/components/ion-accordion.js +1 -456
- package/components/ion-action-sheet.js +1 -6
- package/components/ion-alert.js +1 -6
- package/components/ion-app.js +1 -132
- package/components/ion-avatar.js +1 -41
- package/components/ion-back-button.js +1 -130
- package/components/ion-backdrop.js +1 -6
- package/components/ion-badge.js +1 -47
- package/components/ion-breadcrumb.js +1 -137
- package/components/ion-breadcrumbs.js +1 -164
- package/components/ion-button.js +1 -6
- package/components/ion-buttons.js +1 -6
- package/components/ion-card-content.js +1 -45
- package/components/ion-card-header.js +1 -56
- package/components/ion-card-subtitle.js +1 -48
- package/components/ion-card-title.js +1 -48
- package/components/ion-card.js +1 -107
- package/components/ion-checkbox.js +1 -6
- package/components/ion-chip.js +1 -66
- package/components/ion-col.js +1 -163
- package/components/ion-content.js +1 -6
- package/components/ion-datetime-button.js +1 -383
- package/components/ion-datetime.js +1 -2047
- package/components/ion-fab-button.js +1 -151
- package/components/ion-fab-list.js +1 -73
- package/components/ion-fab.js +1 -101
- package/components/ion-footer.js +1 -179
- package/components/ion-grid.js +1 -46
- package/components/ion-header.js +1 -6
- package/components/ion-icon.js +1 -6
- package/components/ion-img.js +1 -133
- package/components/ion-infinite-scroll-content.js +1 -69
- package/components/ion-infinite-scroll.js +1 -236
- package/components/ion-input-otp.js +1 -682
- package/components/ion-input-password-toggle.js +1 -128
- package/components/ion-input.js +1 -646
- package/components/ion-item-divider.js +1 -59
- package/components/ion-item-group.js +1 -46
- package/components/ion-item-option.js +1 -91
- package/components/ion-item-options.js +1 -73
- package/components/ion-item-sliding.js +1 -457
- package/components/ion-item.js +1 -6
- package/components/ion-label.js +1 -6
- package/components/ion-list-header.js +1 -6
- package/components/ion-list.js +1 -6
- package/components/ion-loading.js +1 -343
- package/components/ion-menu-button.js +1 -109
- package/components/ion-menu-toggle.js +1 -64
- package/components/ion-menu.js +1 -741
- package/components/ion-modal.js +1 -6
- package/components/ion-nav-link.js +1 -64
- package/components/ion-nav.js +1 -951
- package/components/ion-note.js +1 -47
- package/components/ion-picker-column-option.js +1 -6
- package/components/ion-picker-column.js +1 -6
- package/components/ion-picker-legacy-column.js +1 -6
- package/components/ion-picker-legacy.js +1 -342
- package/components/ion-picker.js +1 -6
- package/components/ion-popover.js +1 -6
- package/components/ion-progress-bar.js +1 -100
- package/components/ion-radio-group.js +1 -6
- package/components/ion-radio.js +1 -6
- package/components/ion-range.js +1 -844
- package/components/ion-refresher-content.js +1 -88
- package/components/ion-refresher.js +1 -750
- package/components/ion-reorder-group.js +1 -322
- package/components/ion-reorder.js +1 -60
- package/components/ion-ripple-effect.js +1 -6
- package/components/ion-route-redirect.js +1 -45
- package/components/ion-route.js +1 -74
- package/components/ion-router-link.js +1 -61
- package/components/ion-router-outlet.js +1 -226
- package/components/ion-router.js +1 -840
- package/components/ion-row.js +1 -36
- package/components/ion-searchbar.js +1 -540
- package/components/ion-segment-button.js +1 -173
- package/components/ion-segment-content.js +1 -35
- package/components/ion-segment-view.js +1 -142
- package/components/ion-segment.js +1 -602
- package/components/ion-select-modal.js +1 -6
- package/components/ion-select-option.js +1 -46
- package/components/ion-select-popover.js +1 -6
- package/components/ion-select.js +1 -1035
- package/components/ion-skeleton-text.js +1 -64
- package/components/ion-spinner.js +1 -6
- package/components/ion-split-pane.js +1 -190
- package/components/ion-tab-bar.js +1 -135
- package/components/ion-tab-button.js +1 -127
- package/components/ion-tab.js +1 -82
- package/components/ion-tabs.js +1 -204
- package/components/ion-text.js +1 -42
- package/components/ion-textarea.js +1 -554
- package/components/ion-thumbnail.js +1 -36
- package/components/ion-title.js +1 -6
- package/components/ion-toast.js +1 -938
- package/components/ion-toggle.js +1 -360
- package/components/ion-toolbar.js +1 -6
- package/components/p-1KVKSLu5.js +4 -0
- package/{dist/ionic/p-DUt5fQmA.js → components/p-9VcRUwdB.js} +1 -1
- package/components/p-ApmKVjaE.js +4 -0
- package/components/p-B-hirT0v.js +1 -35
- package/components/p-B6FQ0cKR.js +4 -0
- package/components/p-B6HaBl3o.js +4 -0
- package/components/p-B8b1Ukl9.js +4 -0
- package/components/p-BFxT89Wl.js +4 -0
- package/components/p-BJoMtgfR.js +4 -0
- package/components/p-BNAG-aVv.js +4 -0
- package/{dist/ionic/p-D-eFFUkA.js → components/p-BR3tZJmu.js} +1 -1
- package/{dist/ionic/p-D0dMcSkw.js → components/p-BS1TtEiJ.js} +1 -1
- package/components/p-BSB38Tek.js +4 -0
- package/components/p-BTEOs1at.js +1 -192
- package/components/p-BTeL5HCK.js +4 -0
- package/{dist/ionic/p-DbQ5QkTP.js → components/p-BUbsoBOV.js} +1 -1
- package/components/p-BVnB3eEn.js +4 -0
- package/components/p-BYDc3hSE.js +4 -0
- package/components/p-BagjAGC0.js +4 -0
- package/components/p-BegtE7nr.js +4 -0
- package/components/p-BgwEQWW6.js +4 -0
- package/components/p-Bk2zuNWT.js +4 -0
- package/components/p-BmVRXR1y.js +1 -72
- package/components/p-Bum_LjMh.js +4 -0
- package/components/p-BxwWvu-b.js +4 -0
- package/components/p-C4jPsTQa.js +4 -0
- package/components/p-C53feagD.js +1 -15
- package/{dist/ionic/p-CwgG81ZD.js → components/p-C59ryAuS.js} +1 -1
- package/components/p-C7AoMl7c.js +4 -0
- package/components/p-CBzELu-H.js +4 -0
- package/components/p-CDfQnFrd.js +4 -0
- package/components/p-CH0NYjKq.js +4 -0
- package/components/p-CIGNaXM1.js +1 -10
- package/components/p-CO7fmmxt.js +1 -29
- package/components/p-CU1SSH8_.js +4 -0
- package/components/p-CVF7ukTk.js +4 -0
- package/components/p-CgfaEEem.js +4 -0
- package/components/p-CgqKJg96.js +4 -0
- package/components/p-Cl0B-RWe.js +1 -452
- package/components/p-CneGxKsZ.js +4 -0
- package/components/p-CoA-aqGF.js +4 -0
- package/{dist/ionic/p-DdR6rpbR.js → components/p-Cq8cQ0NL.js} +1 -1
- package/components/p-Csw8xuz4.js +4 -0
- package/components/p-CtWGkNnJ.js +1 -162
- package/components/p-Cwv-vmkN.js +4 -0
- package/{dist/ionic/p-BYEqWnSg.js → components/p-Cy5XSfIk.js} +1 -1
- package/components/p-Cyxa_4PV.js +4 -0
- package/components/p-Cz5nLPGT.js +4 -0
- package/components/p-D13Eaw-8.js +1 -76
- package/components/p-D6NJwNJN.js +4 -0
- package/components/p-D6Ynv7Xh.js +1 -141
- package/components/p-DHsZWn1l.js +4 -0
- package/components/p-DJMZehmW.js +4 -0
- package/components/p-DJztqcrH.js +1 -14
- package/components/p-DYdpXONG.js +4 -0
- package/components/p-DgbT0exM.js +4 -0
- package/components/p-DiVJyqlX.js +1 -40
- package/components/p-Dtdm8lKC.js +1 -44
- package/components/p-YLXPWgVj.js +4 -0
- package/components/p-ZjP4CjeZ.js +1 -4
- package/{dist/ionic/p-DCv9sLH2.js → components/p-ak_d-z48.js} +1 -1
- package/components/p-cyNmxje6.js +1 -155
- package/components/p-fpbh6w3f.js +4 -0
- package/components/p-hHmYLOfE.js +1 -87
- package/components/p-kvaDs24J.js +4 -0
- package/components/p-vEbVo2hO.js +4 -0
- package/dist/cjs/{animation-Bt3H9L1C.js → animation-Dg4yiuR2.js} +1 -1
- package/dist/cjs/app-globals-CLI8xCmk.js +11 -0
- package/dist/cjs/{button-active-CMc8cD90.js → button-active-FscMI17-.js} +1 -1
- package/dist/cjs/{config-C5fsO43a.js → config-BukYi_pW.js} +1 -1
- package/dist/cjs/{data-JwZKaIQB.js → data-BYlBjkMU.js} +1 -1
- package/dist/cjs/{framework-delegate-DMJRBuDi.js → framework-delegate-CRgp8o_p.js} +1 -1
- package/dist/cjs/{hardware-back-button-VCK4V3mG.js → hardware-back-button-C4rMJ5uI.js} +1 -1
- package/dist/cjs/{helpers-DrTqNghc.js → helpers-CxTYJdbT.js} +1 -1
- package/dist/cjs/{index-094mMFB-.js → index-C845Ti6K.js} +4 -4
- package/dist/cjs/{index-DrMUZJj6.js → index-CFUwM5x_.js} +5 -5
- package/dist/cjs/{index-D6Wc6v08.js → index-CqT-2gKy.js} +503 -382
- package/dist/cjs/{index-CO6eryBo.js → index-MbaBbWXk.js} +2 -2
- package/dist/cjs/{index-C534ULug.js → index-YcSftOMz.js} +2 -2
- package/dist/cjs/index.cjs.js +12 -12
- package/dist/cjs/{input-shims-CuMghsQ-.js → input-shims-Dl5cnc_e.js} +3 -3
- package/dist/cjs/{input.utils-B_QROI2g.js → input.utils-DmeJ8dmo.js} +2 -2
- package/dist/cjs/ion-accordion_2.cjs.entry.js +23 -15
- package/dist/cjs/ion-action-sheet.cjs.entry.js +21 -15
- package/dist/cjs/ion-alert.cjs.entry.js +25 -17
- package/dist/cjs/ion-app_8.cjs.entry.js +48 -43
- package/dist/cjs/ion-avatar_3.cjs.entry.js +12 -12
- package/dist/cjs/ion-back-button.cjs.entry.js +7 -7
- package/dist/cjs/ion-backdrop.cjs.entry.js +6 -6
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +20 -14
- package/dist/cjs/ion-button_2.cjs.entry.js +36 -18
- package/dist/cjs/ion-card_5.cjs.entry.js +23 -23
- package/dist/cjs/ion-checkbox.cjs.entry.js +7 -7
- package/dist/cjs/ion-chip.cjs.entry.js +6 -6
- package/dist/cjs/ion-col_3.cjs.entry.js +8 -8
- package/dist/cjs/ion-datetime-button.cjs.entry.js +8 -8
- package/dist/cjs/ion-datetime_3.cjs.entry.js +75 -46
- package/dist/cjs/ion-fab_3.cjs.entry.js +17 -13
- package/dist/cjs/ion-img.cjs.entry.js +8 -6
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +17 -13
- package/dist/cjs/ion-input-otp.cjs.entry.js +16 -10
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +9 -7
- package/dist/cjs/ion-input.cjs.entry.js +21 -13
- package/dist/cjs/ion-item-option_3.cjs.entry.js +19 -17
- package/dist/cjs/ion-item_8.cjs.entry.js +48 -42
- package/dist/cjs/ion-loading.cjs.entry.js +18 -14
- package/dist/cjs/ion-menu_3.cjs.entry.js +30 -22
- package/dist/cjs/ion-modal.cjs.entry.js +237 -59
- package/dist/cjs/ion-nav_2.cjs.entry.js +14 -10
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +10 -8
- package/dist/cjs/ion-picker-column.cjs.entry.js +11 -7
- package/dist/cjs/ion-picker.cjs.entry.js +6 -6
- package/dist/cjs/ion-popover.cjs.entry.js +21 -15
- package/dist/cjs/ion-progress-bar.cjs.entry.js +7 -7
- package/dist/cjs/ion-radio_2.cjs.entry.js +17 -13
- package/dist/cjs/ion-range.cjs.entry.js +205 -57
- package/dist/cjs/ion-refresher_2.cjs.entry.js +45 -14
- package/dist/cjs/ion-reorder_2.cjs.entry.js +13 -11
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +4 -4
- package/dist/cjs/ion-route_4.cjs.entry.js +20 -10
- package/dist/cjs/ion-searchbar.cjs.entry.js +22 -12
- package/dist/cjs/ion-segment-content.cjs.entry.js +3 -3
- package/dist/cjs/ion-segment-view.cjs.entry.js +13 -8
- package/dist/cjs/ion-segment_2.cjs.entry.js +26 -16
- package/dist/cjs/ion-select-modal.cjs.entry.js +17 -13
- package/dist/cjs/ion-select_3.cjs.entry.js +33 -24
- package/dist/cjs/ion-spinner.cjs.entry.js +4 -4
- package/dist/cjs/ion-split-pane.cjs.entry.js +15 -9
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +14 -12
- package/dist/cjs/ion-tab_2.cjs.entry.js +10 -8
- package/dist/cjs/ion-text.cjs.entry.js +4 -4
- package/dist/cjs/ion-textarea.cjs.entry.js +20 -14
- package/dist/cjs/ion-toast.cjs.entry.js +21 -15
- package/dist/cjs/ion-toggle.cjs.entry.js +10 -8
- package/dist/cjs/{ionic-global-HMVqOFGO.js → ionic-global-Bc3kJi1Z.js} +1 -1
- package/dist/cjs/ionic.cjs.js +5 -5
- package/dist/cjs/{ios.transition-BOt_uW73.js → ios.transition-trBiC95R.js} +4 -4
- package/dist/cjs/loader.cjs.js +4 -4
- package/dist/cjs/{md.transition-Dt968VXB.js → md.transition-CUQECuvD.js} +4 -4
- package/dist/cjs/{notch-controller-Bzqhjm4f.js → notch-controller-sD-lTpdc.js} +1 -1
- package/dist/cjs/{overlays-B2b-TTbl.js → overlays-C2jiBSNQ.js} +5 -5
- package/dist/cjs/{status-tap-g0sWWkXk.js → status-tap-CCJk5VgT.js} +3 -3
- package/dist/cjs/{swipe-back-BIayeNOD.js → swipe-back-BGhTQ1CU.js} +2 -2
- package/dist/collection/collection-manifest.json +2 -2
- package/dist/collection/components/accordion-group/accordion-group.js +4 -2
- package/dist/collection/components/action-sheet/action-sheet.js +20 -10
- package/dist/collection/components/alert/alert.js +24 -12
- package/dist/collection/components/back-button/back-button.js +4 -2
- package/dist/collection/components/badge/badge.js +2 -1
- package/dist/collection/components/breadcrumb/breadcrumb.js +8 -4
- package/dist/collection/components/breadcrumbs/breadcrumbs.js +4 -2
- package/dist/collection/components/button/button.js +6 -3
- package/dist/collection/components/card/card.js +6 -3
- package/dist/collection/components/card-header/card-header.js +2 -1
- package/dist/collection/components/card-subtitle/card-subtitle.js +2 -1
- package/dist/collection/components/card-title/card-title.js +2 -1
- package/dist/collection/components/checkbox/checkbox.js +4 -2
- package/dist/collection/components/chip/chip.js +2 -1
- package/dist/collection/components/content/content.js +12 -7
- package/dist/collection/components/datetime/datetime.js +43 -22
- package/dist/collection/components/datetime-button/datetime-button.js +2 -1
- package/dist/collection/components/fab-button/fab-button.js +6 -3
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +4 -2
- package/dist/collection/components/input/input.js +11 -6
- package/dist/collection/components/input-otp/input-otp.js +8 -4
- package/dist/collection/components/input-password-toggle/input-password-toggle.js +4 -2
- package/dist/collection/components/item/item.js +10 -5
- package/dist/collection/components/item-divider/item-divider.js +7 -3
- package/dist/collection/components/item-option/item-option.js +6 -3
- package/dist/collection/components/item-options/item-options.js +2 -1
- package/dist/collection/components/item-sliding/item-sliding.js +2 -1
- package/dist/collection/components/label/label.js +6 -3
- package/dist/collection/components/list-header/list-header.js +6 -3
- package/dist/collection/components/loading/loading.js +22 -11
- package/dist/collection/components/menu/menu.js +10 -5
- package/dist/collection/components/menu-button/menu-button.js +2 -1
- package/dist/collection/components/modal/gestures/sheet.js +120 -12
- package/dist/collection/components/modal/gestures/swipe-to-close.js +54 -1
- package/dist/collection/components/modal/modal.js +127 -45
- package/dist/collection/components/nav/nav.js +89 -45
- package/dist/collection/components/nav-link/nav-link.js +9 -5
- package/dist/collection/components/note/note.js +2 -1
- package/dist/collection/components/picker/picker.js +2 -1
- package/dist/collection/components/picker-column/picker-column.js +6 -3
- package/dist/collection/components/picker-column-option/picker-column-option.js +2 -1
- package/dist/collection/components/picker-legacy/picker.js +24 -12
- package/dist/collection/components/picker-legacy-column/picker-column.js +4 -2
- package/dist/collection/components/popover/popover.js +33 -17
- package/dist/collection/components/progress-bar/progress-bar.js +2 -1
- package/dist/collection/components/radio/radio.js +2 -1
- package/dist/collection/components/radio-group/radio-group.js +6 -3
- package/dist/collection/components/range/range.js +214 -53
- package/dist/collection/components/refresher/refresher.js +73 -5
- package/dist/collection/components/refresher-content/refresher-content.js +8 -4
- package/dist/collection/components/reorder-group/reorder-group.js +6 -3
- package/dist/collection/components/route/route.js +4 -2
- package/dist/collection/components/router/router.js +10 -5
- package/dist/collection/components/router-link/router-link.js +6 -3
- package/dist/collection/components/router-outlet/router-outlet.js +18 -9
- package/dist/collection/components/searchbar/searchbar.js +11 -6
- package/dist/collection/components/segment/segment.js +10 -5
- package/dist/collection/components/segment-button/segment-button.js +4 -2
- package/dist/collection/components/segment-view/segment-view.ios.css +2 -1
- package/dist/collection/components/segment-view/segment-view.js +30 -4
- package/dist/collection/components/segment-view/segment-view.md.css +2 -1
- package/dist/collection/components/select/select.js +17 -8
- package/dist/collection/components/select-modal/select-modal.js +27 -2
- package/dist/collection/components/select-popover/select-popover.js +2 -1
- package/dist/collection/components/skeleton-text/skeleton-text.js +2 -1
- package/dist/collection/components/spinner/spinner.js +4 -2
- package/dist/collection/components/tab/tab.js +4 -2
- package/dist/collection/components/tab-bar/tab-bar.js +4 -2
- package/dist/collection/components/tab-button/tab-button.js +4 -2
- package/dist/collection/components/tabs/tabs.js +4 -2
- package/dist/collection/components/text/text.js +2 -1
- package/dist/collection/components/textarea/textarea.js +10 -7
- package/dist/collection/components/title/title.js +4 -2
- package/dist/collection/components/toast/toast.js +34 -17
- package/dist/collection/components/toggle/toggle.js +4 -2
- package/dist/collection/components/toolbar/toolbar.js +2 -1
- package/dist/docs.d.ts +37 -0
- package/dist/docs.json +1186 -389
- package/dist/esm/{animation-Dt8bGnA-.js → animation-CnGMT4ji.js} +1 -1
- package/dist/esm/app-globals-DhZjtldk.js +9 -0
- package/dist/esm/{button-active-L570Swow.js → button-active-BBx21brx.js} +1 -1
- package/dist/esm/{config-mCdtaoPe.js → config-TO1rZH52.js} +1 -1
- package/dist/esm/{data-DCORV9FH.js → data-B9iGR5YO.js} +1 -1
- package/dist/esm/{framework-delegate-BYawdMXj.js → framework-delegate-CyxE1S_P.js} +1 -1
- package/dist/esm/{hardware-back-button-CPLxO-Ev.js → hardware-back-button-CTe4XmL7.js} +1 -1
- package/dist/esm/{helpers-DEn3pfjm.js → helpers-Tl8jw6S2.js} +1 -1
- package/dist/esm/{index-r2D9DEro.js → index-B-hkiOUh.js} +4 -4
- package/dist/esm/{index-CvDIirVx.js → index-B2KwgBLx.js} +5 -5
- package/dist/esm/{index-ceb5RaMT.js → index-BtUdxPjv.js} +2 -2
- package/dist/esm/{index-C8IsBmNU.js → index-IGIE5vDm.js} +503 -382
- package/dist/esm/{index-Bs3kT4bc.js → index-hW6eNZ3o.js} +2 -2
- package/dist/esm/index.js +12 -12
- package/dist/esm/{input-shims-D6H3ZaWt.js → input-shims-AaDhOpKN.js} +3 -3
- package/dist/esm/{input.utils-DrvTa8gz.js → input.utils-Bxa_DQ7-.js} +2 -2
- package/dist/esm/ion-accordion_2.entry.js +23 -15
- package/dist/esm/ion-action-sheet.entry.js +21 -15
- package/dist/esm/ion-alert.entry.js +25 -17
- package/dist/esm/ion-app_8.entry.js +48 -43
- package/dist/esm/ion-avatar_3.entry.js +12 -12
- package/dist/esm/ion-back-button.entry.js +7 -7
- package/dist/esm/ion-backdrop.entry.js +6 -6
- package/dist/esm/ion-breadcrumb_2.entry.js +20 -14
- package/dist/esm/ion-button_2.entry.js +36 -18
- package/dist/esm/ion-card_5.entry.js +23 -23
- package/dist/esm/ion-checkbox.entry.js +7 -7
- package/dist/esm/ion-chip.entry.js +6 -6
- package/dist/esm/ion-col_3.entry.js +8 -8
- package/dist/esm/ion-datetime-button.entry.js +8 -8
- package/dist/esm/ion-datetime_3.entry.js +75 -46
- package/dist/esm/ion-fab_3.entry.js +17 -13
- package/dist/esm/ion-img.entry.js +8 -6
- package/dist/esm/ion-infinite-scroll_2.entry.js +17 -13
- package/dist/esm/ion-input-otp.entry.js +16 -10
- package/dist/esm/ion-input-password-toggle.entry.js +9 -7
- package/dist/esm/ion-input.entry.js +21 -13
- package/dist/esm/ion-item-option_3.entry.js +19 -17
- package/dist/esm/ion-item_8.entry.js +48 -42
- package/dist/esm/ion-loading.entry.js +18 -14
- package/dist/esm/ion-menu_3.entry.js +30 -22
- package/dist/esm/ion-modal.entry.js +237 -59
- package/dist/esm/ion-nav_2.entry.js +14 -10
- package/dist/esm/ion-picker-column-option.entry.js +10 -8
- package/dist/esm/ion-picker-column.entry.js +11 -7
- package/dist/esm/ion-picker.entry.js +6 -6
- package/dist/esm/ion-popover.entry.js +21 -15
- package/dist/esm/ion-progress-bar.entry.js +7 -7
- package/dist/esm/ion-radio_2.entry.js +17 -13
- package/dist/esm/ion-range.entry.js +205 -57
- package/dist/esm/ion-refresher_2.entry.js +45 -14
- package/dist/esm/ion-reorder_2.entry.js +13 -11
- package/dist/esm/ion-ripple-effect.entry.js +4 -4
- package/dist/esm/ion-route_4.entry.js +20 -10
- package/dist/esm/ion-searchbar.entry.js +22 -12
- package/dist/esm/ion-segment-content.entry.js +3 -3
- package/dist/esm/ion-segment-view.entry.js +13 -8
- package/dist/esm/ion-segment_2.entry.js +26 -16
- package/dist/esm/ion-select-modal.entry.js +17 -13
- package/dist/esm/ion-select_3.entry.js +33 -24
- package/dist/esm/ion-spinner.entry.js +4 -4
- package/dist/esm/ion-split-pane.entry.js +15 -9
- package/dist/esm/ion-tab-bar_2.entry.js +14 -12
- package/dist/esm/ion-tab_2.entry.js +10 -8
- package/dist/esm/ion-text.entry.js +4 -4
- package/dist/esm/ion-textarea.entry.js +20 -14
- package/dist/esm/ion-toast.entry.js +21 -15
- package/dist/esm/ion-toggle.entry.js +10 -8
- package/dist/esm/{ionic-global-CDrldh-5.js → ionic-global-DfbeLwcV.js} +1 -1
- package/dist/esm/ionic.js +6 -6
- package/dist/esm/{ios.transition-BDzw0_Hm.js → ios.transition--aMF-pDH.js} +4 -4
- package/dist/esm/loader.js +5 -5
- package/dist/esm/{md.transition-BzDYi3qq.js → md.transition-BEVbfm8j.js} +4 -4
- package/dist/esm/{notch-controller-BwelN_JM.js → notch-controller-DAcvKU57.js} +1 -1
- package/dist/esm/{overlays-D5YkFThA.js → overlays-F8GHPo-e.js} +5 -5
- package/dist/esm/{status-tap-5DQ7Fc4V.js → status-tap-BfJqFSLF.js} +3 -3
- package/dist/esm/{swipe-back-BKw2CAHc.js → swipe-back-BZBFwTQV.js} +2 -2
- package/dist/html.html-data.json +117 -109
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-031b76f7.entry.js +4 -0
- package/dist/ionic/p-045a6a42.entry.js +4 -0
- package/dist/ionic/p-07506134.entry.js +4 -0
- package/dist/ionic/p-084c25b2.entry.js +4 -0
- package/dist/ionic/p-0d8b5c38.entry.js +4 -0
- package/dist/ionic/p-16813ce7.entry.js +4 -0
- package/dist/ionic/p-16b65553.entry.js +4 -0
- package/dist/ionic/p-1b02923f.entry.js +4 -0
- package/dist/ionic/{p-5c8f7253.entry.js → p-1b169fb6.entry.js} +1 -1
- package/dist/ionic/{p-915b3e3d.entry.js → p-23fac490.entry.js} +1 -1
- package/dist/ionic/{p-b8551510.entry.js → p-294f4bb5.entry.js} +1 -1
- package/dist/ionic/p-2a68388b.entry.js +4 -0
- package/dist/ionic/p-2f5a8140.entry.js +4 -0
- package/dist/ionic/{p-49d06882.entry.js → p-301c43f8.entry.js} +1 -1
- package/dist/ionic/{p-79bd78f9.entry.js → p-370a60ee.entry.js} +1 -1
- package/dist/ionic/p-3e143d1d.entry.js +4 -0
- package/dist/ionic/p-4819b469.entry.js +4 -0
- package/dist/ionic/p-4dd5e8e0.entry.js +4 -0
- package/dist/ionic/p-51c11c47.entry.js +4 -0
- package/dist/ionic/p-53f750a5.entry.js +4 -0
- package/dist/ionic/{p-7cad388a.entry.js → p-6af16209.entry.js} +1 -1
- package/dist/ionic/{p-7f98e710.entry.js → p-6b701daa.entry.js} +1 -1
- package/dist/ionic/p-6b97f2a3.entry.js +4 -0
- package/dist/ionic/p-71e322f7.entry.js +4 -0
- package/dist/ionic/p-7620be24.entry.js +4 -0
- package/dist/ionic/p-771b27a5.entry.js +4 -0
- package/dist/ionic/{p-906bb44d.entry.js → p-7ca71c83.entry.js} +1 -1
- package/dist/ionic/{p-11aa58d6.entry.js → p-80cac7a2.entry.js} +1 -1
- package/dist/ionic/p-96a2e768.entry.js +4 -0
- package/dist/ionic/{p-582824c5.entry.js → p-9833cf63.entry.js} +1 -1
- package/dist/ionic/p-9cbc6f1f.entry.js +4 -0
- package/dist/ionic/p-9cdbabbb.entry.js +4 -0
- package/dist/ionic/p-9eac4eb1.entry.js +4 -0
- package/dist/ionic/{p-675b1a31.entry.js → p-9fae83d8.entry.js} +1 -1
- package/dist/ionic/p-B8xlpH8p.js +4 -0
- package/dist/ionic/{p-C7hRNDhM.js → p-BAt5H1ac.js} +1 -1
- package/dist/ionic/p-BW_TRJm8.js +4 -0
- package/dist/ionic/{p-DDb5r57F.js → p-Bum7H1fw.js} +1 -1
- package/dist/ionic/p-BvFYtOdE.js +4 -0
- package/dist/ionic/{p-Dc45iWE4.js → p-BxIcPWoV.js} +1 -1
- package/dist/ionic/p-C0JvVFMv.js +4 -0
- package/dist/ionic/{p-CTfR9YZG.js → p-CGmVTdWh.js} +1 -1
- package/dist/ionic/{p-BOVrCkpJ.js → p-CYbRmDdy.js} +1 -1
- package/dist/ionic/{p-MUoJJJwd.js → p-CYvM5g3q.js} +1 -1
- package/dist/ionic/p-CmFz1Mjc.js +4 -0
- package/dist/ionic/p-CtA-yJYy.js +4 -0
- package/dist/ionic/p-D8HJQ1qq.js +4 -0
- package/dist/ionic/{p-B0q1YL7N.js → p-DB_iPQC-.js} +1 -1
- package/dist/ionic/{p-DNcfiJwE.js → p-DLbbmF9h.js} +1 -1
- package/dist/ionic/p-DTPR1Wpn.js +4 -0
- package/dist/ionic/p-DjriolRs.js +4 -0
- package/dist/ionic/p-DtVZDHlS.js +4 -0
- package/dist/ionic/p-IGIE5vDm.js +5 -0
- package/dist/ionic/{p-BFvmZNyx.js → p-NFFyoJ4Q.js} +1 -1
- package/dist/ionic/p-a805674e.entry.js +4 -0
- package/dist/ionic/{p-da7d04cc.entry.js → p-a84f2d21.entry.js} +1 -1
- package/dist/ionic/p-aa47f46e.entry.js +4 -0
- package/dist/ionic/{p-2668188b.entry.js → p-b325a113.entry.js} +1 -1
- package/dist/ionic/{p-d1f54e28.entry.js → p-b440381f.entry.js} +1 -1
- package/dist/ionic/p-b6e0ff03.entry.js +4 -0
- package/dist/ionic/{p-6f37536a.entry.js → p-bcaa827e.entry.js} +1 -1
- package/dist/ionic/{p-fb0271ae.entry.js → p-c3cce9d8.entry.js} +1 -1
- package/dist/ionic/{p-b0a7585c.entry.js → p-ca31010f.entry.js} +1 -1
- package/dist/ionic/p-d4e8b473.entry.js +4 -0
- package/dist/ionic/{p-9575b654.entry.js → p-e663bc5a.entry.js} +1 -1
- package/dist/ionic/p-e6c5f060.entry.js +4 -0
- package/dist/ionic/{p-652318c3.entry.js → p-e6cedcd7.entry.js} +1 -1
- package/dist/ionic/{p-fbb00634.entry.js → p-e863ffe8.entry.js} +1 -1
- package/dist/ionic/{p-0ca0fe9c.entry.js → p-f2deaceb.entry.js} +1 -1
- package/dist/ionic/{p-ac4eb91d.entry.js → p-f5dfb9a3.entry.js} +1 -1
- package/dist/ionic/{p-bce86e56.entry.js → p-f8186550.entry.js} +1 -1
- package/dist/ionic/p-fdbc90d4.entry.js +4 -0
- package/dist/ionic/p-gbVXD275.js +4 -0
- package/dist/ionic/p-hNN3VvaC.js +4 -0
- package/dist/types/components/datetime/datetime.d.ts +10 -0
- package/dist/types/components/header/header.utils.d.ts +2 -1
- package/dist/types/components/item/item.d.ts +2 -0
- package/dist/types/components/item-divider/item-divider.d.ts +3 -0
- package/dist/types/components/item-option/item-option.d.ts +2 -0
- package/dist/types/components/list-header/list-header.d.ts +2 -0
- package/dist/types/components/modal/gestures/sheet.d.ts +2 -2
- package/dist/types/components/modal/gestures/swipe-to-close.d.ts +2 -2
- package/dist/types/components/modal/modal-interface.d.ts +25 -0
- package/dist/types/components/modal/modal.d.ts +22 -1
- package/dist/types/components/range/range-interface.d.ts +1 -0
- package/dist/types/components/range/range.d.ts +44 -4
- package/dist/types/components/refresher/refresher-interface.d.ts +7 -0
- package/dist/types/components/refresher/refresher.d.ts +16 -3
- package/dist/types/components/segment-view/segment-view.d.ts +4 -0
- package/dist/types/components/select/select.d.ts +3 -0
- package/dist/types/components/select-modal/select-modal.d.ts +4 -0
- package/dist/types/components.d.ts +964 -191
- package/dist/types/interface.d.ts +2 -2
- package/dist/types/stencil-public-runtime.d.ts +126 -14
- package/dist/types/utils/gesture/listener.d.ts +2 -1
- package/hydrate/index.d.ts +12 -0
- package/hydrate/index.js +5632 -1421
- package/hydrate/index.mjs +5631 -1422
- package/package.json +2 -2
- package/components/p-B25GjpND.js +0 -71
- package/components/p-BANeLH_G.js +0 -290
- package/components/p-BBFQmhcD.js +0 -59
- package/components/p-BC-awmYt.js +0 -306
- package/components/p-BHbOsu99.js +0 -501
- package/components/p-BTlwXR9e.js +0 -73
- package/components/p-BcazQttQ.js +0 -612
- package/components/p-BdGshsIJ.js +0 -226
- package/components/p-BfS7vSpC.js +0 -147
- package/components/p-BhRFCLuX.js +0 -675
- package/components/p-Bhnhnzjz.js +0 -75
- package/components/p-BmcqD0EN.js +0 -153
- package/components/p-Boi6hecl.js +0 -115
- package/components/p-Bt_moUyl.js +0 -232
- package/components/p-Bxl5etF4.js +0 -146
- package/components/p-ByjmWt3s.js +0 -139
- package/components/p-C04oPyjT.js +0 -54
- package/components/p-C6dkQWq2.js +0 -1626
- package/components/p-CFZWrvIQ.js +0 -194
- package/components/p-CIJwkzL6.js +0 -195
- package/components/p-CL12ApCQ.js +0 -820
- package/components/p-CXJR56Oq.js +0 -564
- package/components/p-Cdm3dKWf.js +0 -108
- package/components/p-CslsoGzv.js +0 -192
- package/components/p-Cyd00tgZ.js +0 -167
- package/components/p-CzAJ3ArC.js +0 -380
- package/components/p-CzW34QBh.js +0 -12
- package/components/p-D0zXRwcr.js +0 -196
- package/components/p-D5hF6rwn.js +0 -339
- package/components/p-D8eD2iBA.js +0 -67
- package/components/p-DGOrLIyS.js +0 -481
- package/components/p-DK2Bn1Mc.js +0 -305
- package/components/p-DKRQWlK2.js +0 -598
- package/components/p-DNDUsygf.js +0 -128
- package/components/p-DTWZF6wg.js +0 -418
- package/components/p-DWoUQeZ3.js +0 -3012
- package/components/p-DX0w75a9.js +0 -420
- package/components/p-Dt8zaCLQ.js +0 -92
- package/components/p-DyFBFrV7.js +0 -264
- package/components/p-DyHPCMyn.js +0 -39
- package/components/p-LgLeKTkH.js +0 -112
- package/components/p-NhiRFRn9.js +0 -50
- package/components/p-OuiHmXO5.js +0 -646
- package/components/p-Wro9IPHE.js +0 -459
- package/components/p-aIWC4ZEV.js +0 -305
- package/components/p-c-XJ9XhZ.js +0 -915
- package/components/p-fVuFT3Wd.js +0 -78
- package/components/p-iyo0Toaz.js +0 -2822
- package/components/p-l_lso3Zl.js +0 -140
- package/components/p-mQp4lwQD.js +0 -1638
- package/dist/cjs/app-globals-Ciccnk9_.js +0 -10
- package/dist/esm/app-globals-BDSf8fOA.js +0 -8
- package/dist/ionic/p-11518b31.entry.js +0 -4
- package/dist/ionic/p-221a3d8c.entry.js +0 -4
- package/dist/ionic/p-2ac254dc.entry.js +0 -4
- package/dist/ionic/p-2bd1ea35.entry.js +0 -4
- package/dist/ionic/p-30333874.entry.js +0 -4
- package/dist/ionic/p-31db96da.entry.js +0 -4
- package/dist/ionic/p-34642fa1.entry.js +0 -4
- package/dist/ionic/p-35696017.entry.js +0 -4
- package/dist/ionic/p-363d1209.entry.js +0 -4
- package/dist/ionic/p-46a38cfd.entry.js +0 -4
- package/dist/ionic/p-4eec1a5e.entry.js +0 -4
- package/dist/ionic/p-530fcd71.entry.js +0 -4
- package/dist/ionic/p-5d6fb6e3.entry.js +0 -4
- package/dist/ionic/p-66fbe052.entry.js +0 -4
- package/dist/ionic/p-7babec72.entry.js +0 -4
- package/dist/ionic/p-82d5bb3d.entry.js +0 -4
- package/dist/ionic/p-97eb0812.entry.js +0 -4
- package/dist/ionic/p-9b6d46f2.entry.js +0 -4
- package/dist/ionic/p-BKc55Xev.js +0 -4
- package/dist/ionic/p-Bmgaetn_.js +0 -4
- package/dist/ionic/p-C8IsBmNU.js +0 -5
- package/dist/ionic/p-CJxh_yLS.js +0 -4
- package/dist/ionic/p-DZRJwG4S.js +0 -4
- package/dist/ionic/p-a4a9f5ae.entry.js +0 -4
- package/dist/ionic/p-b0ebf9f8.entry.js +0 -4
- package/dist/ionic/p-be263062.entry.js +0 -4
- package/dist/ionic/p-c175d792.entry.js +0 -4
- package/dist/ionic/p-cc2a9936.entry.js +0 -4
- package/dist/ionic/p-cc45bcbc.entry.js +0 -4
- package/dist/ionic/p-d0a2a1ab.entry.js +0 -4
- package/dist/ionic/p-e4c57008.entry.js +0 -4
- package/dist/ionic/p-e5d6d0f0.entry.js +0 -4
- package/dist/ionic/p-f1dfee25.entry.js +0 -4
- package/dist/ionic/p-f9f7b9db.entry.js +0 -4
|
@@ -3,23 +3,23 @@
|
|
|
3
3
|
*/
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
|
-
var index = require('./index-
|
|
6
|
+
var index = require('./index-CqT-2gKy.js');
|
|
7
7
|
var cubicBezier = require('./cubic-bezier-DAjy1V-e.js');
|
|
8
|
-
var overlays = require('./overlays-
|
|
8
|
+
var overlays = require('./overlays-C2jiBSNQ.js');
|
|
9
9
|
var gestureController = require('./gesture-controller-dtqlP_q4.js');
|
|
10
|
-
var hardwareBackButton = require('./hardware-back-button-
|
|
11
|
-
var helpers = require('./helpers-
|
|
12
|
-
var index$1 = require('./index-
|
|
13
|
-
var ionicGlobal = require('./ionic-global-
|
|
10
|
+
var hardwareBackButton = require('./hardware-back-button-C4rMJ5uI.js');
|
|
11
|
+
var helpers = require('./helpers-CxTYJdbT.js');
|
|
12
|
+
var index$1 = require('./index-CFUwM5x_.js');
|
|
13
|
+
var ionicGlobal = require('./ionic-global-Bc3kJi1Z.js');
|
|
14
14
|
var theme = require('./theme-CeDs6Hcv.js');
|
|
15
15
|
var index$2 = require('./index-DqmRDbxg.js');
|
|
16
16
|
require('./index-DkNv4J_i.js');
|
|
17
|
-
require('./framework-delegate-
|
|
18
|
-
require('./animation-
|
|
17
|
+
require('./framework-delegate-CRgp8o_p.js');
|
|
18
|
+
require('./animation-Dg4yiuR2.js');
|
|
19
19
|
|
|
20
|
-
const menuIosCss =
|
|
20
|
+
const menuIosCss = () => `:host{--width:304px;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--background:var(--ion-background-color, #fff);left:0;right:0;top:0;bottom:0;display:none;position:absolute;contain:strict}:host(.show-menu){display:block}.menu-inner{-webkit-transform:translateX(-9999px);transform:translateX(-9999px);display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);contain:strict}:host(.menu-side-start) .menu-inner{--ion-safe-area-right:0px;top:0;bottom:0}:host(.menu-side-start) .menu-inner{inset-inline-start:0;inset-inline-end:auto}:host-context([dir=rtl]):host(.menu-side-start) .menu-inner,:host-context([dir=rtl]).menu-side-start .menu-inner{--ion-safe-area-right:unset;--ion-safe-area-left:0px}@supports selector(:dir(rtl)){:host(.menu-side-start:dir(rtl)) .menu-inner{--ion-safe-area-right:unset;--ion-safe-area-left:0px}}:host(.menu-side-end) .menu-inner{--ion-safe-area-left:0px;top:0;bottom:0}:host(.menu-side-end) .menu-inner{inset-inline-start:auto;inset-inline-end:0}:host-context([dir=rtl]):host(.menu-side-end) .menu-inner,:host-context([dir=rtl]).menu-side-end .menu-inner{--ion-safe-area-left:unset;--ion-safe-area-right:0px}@supports selector(:dir(rtl)){:host(.menu-side-end:dir(rtl)) .menu-inner{--ion-safe-area-left:unset;--ion-safe-area-right:0px}}ion-backdrop{display:none;opacity:0.01;z-index:-1}@media (max-width: 340px){.menu-inner{--width:264px}}:host(.menu-type-reveal){z-index:0}:host(.menu-type-reveal.show-menu) .menu-inner{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}:host(.menu-type-overlay){z-index:1000}:host(.menu-type-overlay) .show-backdrop{display:block;cursor:pointer}:host(.menu-pane-visible){-ms-flex:0 1 auto;flex:0 1 auto;width:var(--side-width, var(--width));min-width:var(--side-min-width, var(--min-width));max-width:var(--side-max-width, var(--max-width))}:host(.menu-pane-visible.split-pane-side){left:0;right:0;top:0;bottom:0;position:relative;-webkit-box-shadow:none;box-shadow:none;z-index:0}:host(.menu-pane-visible.split-pane-side.menu-enabled){display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0}:host(.menu-pane-visible.split-pane-side){-ms-flex-order:-1;order:-1}:host(.menu-pane-visible.split-pane-side[side=end]){-ms-flex-order:1;order:1}:host(.menu-pane-visible) .menu-inner{left:0;right:0;width:auto;-webkit-transform:none;transform:none;-webkit-box-shadow:none;box-shadow:none}:host(.menu-pane-visible) ion-backdrop{display:hidden !important}:host(.menu-pane-visible.split-pane-side){-webkit-border-start:0;border-inline-start:0;-webkit-border-end:var(--border);border-inline-end:var(--border);border-top:0;border-bottom:0;min-width:var(--side-min-width);max-width:var(--side-max-width)}:host(.menu-pane-visible.split-pane-side[side=end]){-webkit-border-start:var(--border);border-inline-start:var(--border);-webkit-border-end:0;border-inline-end:0;border-top:0;border-bottom:0;min-width:var(--side-min-width);max-width:var(--side-max-width)}:host(.menu-type-push){z-index:1000}:host(.menu-type-push) .show-backdrop{display:block}`;
|
|
21
21
|
|
|
22
|
-
const menuMdCss =
|
|
22
|
+
const menuMdCss = () => `:host{--width:304px;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--background:var(--ion-background-color, #fff);left:0;right:0;top:0;bottom:0;display:none;position:absolute;contain:strict}:host(.show-menu){display:block}.menu-inner{-webkit-transform:translateX(-9999px);transform:translateX(-9999px);display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);contain:strict}:host(.menu-side-start) .menu-inner{--ion-safe-area-right:0px;top:0;bottom:0}:host(.menu-side-start) .menu-inner{inset-inline-start:0;inset-inline-end:auto}:host-context([dir=rtl]):host(.menu-side-start) .menu-inner,:host-context([dir=rtl]).menu-side-start .menu-inner{--ion-safe-area-right:unset;--ion-safe-area-left:0px}@supports selector(:dir(rtl)){:host(.menu-side-start:dir(rtl)) .menu-inner{--ion-safe-area-right:unset;--ion-safe-area-left:0px}}:host(.menu-side-end) .menu-inner{--ion-safe-area-left:0px;top:0;bottom:0}:host(.menu-side-end) .menu-inner{inset-inline-start:auto;inset-inline-end:0}:host-context([dir=rtl]):host(.menu-side-end) .menu-inner,:host-context([dir=rtl]).menu-side-end .menu-inner{--ion-safe-area-left:unset;--ion-safe-area-right:0px}@supports selector(:dir(rtl)){:host(.menu-side-end:dir(rtl)) .menu-inner{--ion-safe-area-left:unset;--ion-safe-area-right:0px}}ion-backdrop{display:none;opacity:0.01;z-index:-1}@media (max-width: 340px){.menu-inner{--width:264px}}:host(.menu-type-reveal){z-index:0}:host(.menu-type-reveal.show-menu) .menu-inner{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}:host(.menu-type-overlay){z-index:1000}:host(.menu-type-overlay) .show-backdrop{display:block;cursor:pointer}:host(.menu-pane-visible){-ms-flex:0 1 auto;flex:0 1 auto;width:var(--side-width, var(--width));min-width:var(--side-min-width, var(--min-width));max-width:var(--side-max-width, var(--max-width))}:host(.menu-pane-visible.split-pane-side){left:0;right:0;top:0;bottom:0;position:relative;-webkit-box-shadow:none;box-shadow:none;z-index:0}:host(.menu-pane-visible.split-pane-side.menu-enabled){display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0}:host(.menu-pane-visible.split-pane-side){-ms-flex-order:-1;order:-1}:host(.menu-pane-visible.split-pane-side[side=end]){-ms-flex-order:1;order:1}:host(.menu-pane-visible) .menu-inner{left:0;right:0;width:auto;-webkit-transform:none;transform:none;-webkit-box-shadow:none;box-shadow:none}:host(.menu-pane-visible) ion-backdrop{display:hidden !important}:host(.menu-pane-visible.split-pane-side){-webkit-border-start:0;border-inline-start:0;-webkit-border-end:var(--border);border-inline-end:var(--border);border-top:0;border-bottom:0;min-width:var(--side-min-width);max-width:var(--side-max-width)}:host(.menu-pane-visible.split-pane-side[side=end]){-webkit-border-start:var(--border);border-inline-start:var(--border);-webkit-border-end:0;border-inline-end:0;border-top:0;border-bottom:0;min-width:var(--side-min-width);max-width:var(--side-max-width)}:host(.menu-type-overlay) .menu-inner{-webkit-box-shadow:4px 0px 16px rgba(0, 0, 0, 0.18);box-shadow:4px 0px 16px rgba(0, 0, 0, 0.18)}`;
|
|
23
23
|
|
|
24
24
|
const iosEasing = 'cubic-bezier(0.32,0.72,0,1)';
|
|
25
25
|
const mdEasing = 'cubic-bezier(0.0,0.0,0.2,1)';
|
|
@@ -675,10 +675,18 @@ const Menu = class {
|
|
|
675
675
|
}
|
|
676
676
|
get el() { return index.getElement(this); }
|
|
677
677
|
static get watchers() { return {
|
|
678
|
-
"type": [
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
"
|
|
678
|
+
"type": [{
|
|
679
|
+
"typeChanged": 0
|
|
680
|
+
}],
|
|
681
|
+
"disabled": [{
|
|
682
|
+
"disabledChanged": 0
|
|
683
|
+
}],
|
|
684
|
+
"side": [{
|
|
685
|
+
"sideChanged": 0
|
|
686
|
+
}],
|
|
687
|
+
"swipeGesture": [{
|
|
688
|
+
"swipeGestureChanged": 0
|
|
689
|
+
}]
|
|
682
690
|
}; }
|
|
683
691
|
};
|
|
684
692
|
const computeDelta = (deltaX, isOpen, isEndSide) => {
|
|
@@ -696,8 +704,8 @@ const SHOW_MENU = 'show-menu';
|
|
|
696
704
|
const SHOW_BACKDROP = 'show-backdrop';
|
|
697
705
|
const MENU_CONTENT_OPEN = 'menu-content-open';
|
|
698
706
|
Menu.style = {
|
|
699
|
-
ios: menuIosCss,
|
|
700
|
-
md: menuMdCss
|
|
707
|
+
ios: menuIosCss(),
|
|
708
|
+
md: menuMdCss()
|
|
701
709
|
};
|
|
702
710
|
|
|
703
711
|
// Given a menu, return whether or not the menu toggle should be visible
|
|
@@ -706,9 +714,9 @@ const updateVisibility = async (menu) => {
|
|
|
706
714
|
return !!(menuEl && (await menuEl.isActive()));
|
|
707
715
|
};
|
|
708
716
|
|
|
709
|
-
const menuButtonIosCss =
|
|
717
|
+
const menuButtonIosCss = () => `:host{--background:transparent;--color-focused:currentColor;--border-radius:initial;--padding-top:0;--padding-bottom:0;color:var(--color);text-align:center;text-decoration:none;text-overflow:ellipsis;text-transform:none;white-space:nowrap;-webkit-font-kerning:none;font-kerning:none}.button-native{border-radius:var(--border-radius);font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-negative:0;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;min-height:inherit;border:0;outline:none;background:var(--background);line-height:1;cursor:pointer;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.button-inner{display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-negative:0;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;min-height:inherit;z-index:1}ion-icon{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;pointer-events:none}:host(.menu-button-hidden){display:none}:host(.menu-button-disabled){cursor:default;opacity:0.5;pointer-events:none}:host(.ion-focused) .button-native{color:var(--color-focused)}:host(.ion-focused) .button-native::after{background:var(--background-focused);opacity:var(--background-focused-opacity)}.button-native::after{left:0;right:0;top:0;bottom:0;position:absolute;content:"";opacity:0}@media (any-hover: hover){:host(:hover) .button-native{color:var(--color-hover)}:host(:hover) .button-native::after{background:var(--background-hover);opacity:var(--background-hover-opacity, 0)}}:host(.ion-color) .button-native{color:var(--ion-color-base)}:host(.in-toolbar:not(.in-toolbar-color)){color:var(--ion-toolbar-color, var(--color))}:host{--background-focused:currentColor;--background-focused-opacity:.1;--border-radius:4px;--color:var(--ion-color-primary, #0054e9);--padding-start:5px;--padding-end:5px;min-height:32px;font-size:clamp(31px, 1.9375rem, 38.13px)}:host(.ion-activated){opacity:0.4}@media (any-hover: hover){:host(:hover){opacity:0.6}}`;
|
|
710
718
|
|
|
711
|
-
const menuButtonMdCss =
|
|
719
|
+
const menuButtonMdCss = () => `:host{--background:transparent;--color-focused:currentColor;--border-radius:initial;--padding-top:0;--padding-bottom:0;color:var(--color);text-align:center;text-decoration:none;text-overflow:ellipsis;text-transform:none;white-space:nowrap;-webkit-font-kerning:none;font-kerning:none}.button-native{border-radius:var(--border-radius);font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-negative:0;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;min-height:inherit;border:0;outline:none;background:var(--background);line-height:1;cursor:pointer;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.button-inner{display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-negative:0;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;min-height:inherit;z-index:1}ion-icon{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;pointer-events:none}:host(.menu-button-hidden){display:none}:host(.menu-button-disabled){cursor:default;opacity:0.5;pointer-events:none}:host(.ion-focused) .button-native{color:var(--color-focused)}:host(.ion-focused) .button-native::after{background:var(--background-focused);opacity:var(--background-focused-opacity)}.button-native::after{left:0;right:0;top:0;bottom:0;position:absolute;content:"";opacity:0}@media (any-hover: hover){:host(:hover) .button-native{color:var(--color-hover)}:host(:hover) .button-native::after{background:var(--background-hover);opacity:var(--background-hover-opacity, 0)}}:host(.ion-color) .button-native{color:var(--ion-color-base)}:host(.in-toolbar:not(.in-toolbar-color)){color:var(--ion-toolbar-color, var(--color))}:host{--background-focused:currentColor;--background-focused-opacity:.12;--background-hover:currentColor;--background-hover-opacity:.04;--border-radius:50%;--color:initial;--padding-start:8px;--padding-end:8px;width:3rem;height:3rem;font-size:1.5rem}:host(.ion-color.ion-focused)::after{background:var(--ion-color-base)}@media (any-hover: hover){:host(.ion-color:hover) .button-native::after{background:var(--ion-color-base)}}`;
|
|
712
720
|
|
|
713
721
|
const MenuButton = class {
|
|
714
722
|
constructor(hostRef) {
|
|
@@ -763,11 +771,11 @@ const MenuButton = class {
|
|
|
763
771
|
get el() { return index.getElement(this); }
|
|
764
772
|
};
|
|
765
773
|
MenuButton.style = {
|
|
766
|
-
ios: menuButtonIosCss,
|
|
767
|
-
md: menuButtonMdCss
|
|
774
|
+
ios: menuButtonIosCss(),
|
|
775
|
+
md: menuButtonMdCss()
|
|
768
776
|
};
|
|
769
777
|
|
|
770
|
-
const menuToggleCss =
|
|
778
|
+
const menuToggleCss = () => `:host(.menu-toggle-hidden){display:none}`;
|
|
771
779
|
|
|
772
780
|
const MenuToggle = class {
|
|
773
781
|
constructor(hostRef) {
|
|
@@ -799,7 +807,7 @@ const MenuToggle = class {
|
|
|
799
807
|
} }, index.h("slot", { key: 'e8ecb59a6ec075b07e2a1b8fcdf7df3dd9975a03' })));
|
|
800
808
|
}
|
|
801
809
|
};
|
|
802
|
-
MenuToggle.style = menuToggleCss;
|
|
810
|
+
MenuToggle.style = menuToggleCss();
|
|
803
811
|
|
|
804
812
|
exports.ion_menu = Menu;
|
|
805
813
|
exports.ion_menu_button = MenuButton;
|
|
@@ -3,22 +3,22 @@
|
|
|
3
3
|
*/
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
|
-
var index$3 = require('./index-
|
|
7
|
-
var index$2 = require('./index-
|
|
8
|
-
var frameworkDelegate = require('./framework-delegate-
|
|
9
|
-
var helpers = require('./helpers-
|
|
6
|
+
var index$3 = require('./index-CqT-2gKy.js');
|
|
7
|
+
var index$2 = require('./index-MbaBbWXk.js');
|
|
8
|
+
var frameworkDelegate = require('./framework-delegate-CRgp8o_p.js');
|
|
9
|
+
var helpers = require('./helpers-CxTYJdbT.js');
|
|
10
10
|
var lockController = require('./lock-controller-aDB9wrEf.js');
|
|
11
11
|
var capacitor = require('./capacitor-DmA66EwP.js');
|
|
12
|
-
var overlays = require('./overlays-
|
|
12
|
+
var overlays = require('./overlays-C2jiBSNQ.js');
|
|
13
13
|
var theme = require('./theme-CeDs6Hcv.js');
|
|
14
|
-
var index$4 = require('./index-
|
|
15
|
-
var ionicGlobal = require('./ionic-global-
|
|
14
|
+
var index$4 = require('./index-C845Ti6K.js');
|
|
15
|
+
var ionicGlobal = require('./ionic-global-Bc3kJi1Z.js');
|
|
16
16
|
var keyboard = require('./keyboard-hHzlEQpk.js');
|
|
17
|
-
var animation = require('./animation-
|
|
17
|
+
var animation = require('./animation-Dg4yiuR2.js');
|
|
18
18
|
var cubicBezier = require('./cubic-bezier-DAjy1V-e.js');
|
|
19
19
|
var index$1 = require('./index-CAvQ7Tka.js');
|
|
20
20
|
var index = require('./index-DkNv4J_i.js');
|
|
21
|
-
require('./hardware-back-button-
|
|
21
|
+
require('./hardware-back-button-C4rMJ5uI.js');
|
|
22
22
|
require('./gesture-controller-dtqlP_q4.js');
|
|
23
23
|
require('./keyboard-UuAS4D_9.js');
|
|
24
24
|
|
|
@@ -249,7 +249,7 @@ const calculateSpringStep = (t) => {
|
|
|
249
249
|
const SwipeToCloseDefaults = {
|
|
250
250
|
MIN_PRESENTING_SCALE: 0.915,
|
|
251
251
|
};
|
|
252
|
-
const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss) => {
|
|
252
|
+
const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss, onDragStart, onDragMove, onDragEnd) => {
|
|
253
253
|
/**
|
|
254
254
|
* The step value at which a card modal
|
|
255
255
|
* is eligible for dismissing via gesture.
|
|
@@ -359,6 +359,7 @@ const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss) =>
|
|
|
359
359
|
index$2.disableContentScrollY(contentEl);
|
|
360
360
|
}
|
|
361
361
|
animation.progressStart(true, isOpen ? 1 : 0);
|
|
362
|
+
onDragStart();
|
|
362
363
|
};
|
|
363
364
|
const onMove = (detail) => {
|
|
364
365
|
const { deltaY } = detail;
|
|
@@ -426,6 +427,13 @@ const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss) =>
|
|
|
426
427
|
setCardStatusBarDark();
|
|
427
428
|
}
|
|
428
429
|
lastStep = clampedStep;
|
|
430
|
+
const eventDetail = {
|
|
431
|
+
currentY: detail.currentY,
|
|
432
|
+
deltaY: detail.deltaY,
|
|
433
|
+
velocityY: detail.velocityY,
|
|
434
|
+
progress: calculateProgress(el, detail.deltaY),
|
|
435
|
+
};
|
|
436
|
+
onDragMove(eventDetail);
|
|
429
437
|
};
|
|
430
438
|
const onEnd = (detail) => {
|
|
431
439
|
const velocity = detail.velocityY;
|
|
@@ -484,6 +492,13 @@ const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss) =>
|
|
|
484
492
|
else if (shouldComplete) {
|
|
485
493
|
onDismiss();
|
|
486
494
|
}
|
|
495
|
+
const eventDetail = {
|
|
496
|
+
currentY: detail.currentY,
|
|
497
|
+
deltaY: detail.deltaY,
|
|
498
|
+
velocityY: detail.velocityY,
|
|
499
|
+
progress: calculateProgress(el, detail.deltaY),
|
|
500
|
+
};
|
|
501
|
+
onDragEnd(eventDetail);
|
|
487
502
|
};
|
|
488
503
|
const gesture = index$1.createGesture({
|
|
489
504
|
el,
|
|
@@ -501,6 +516,44 @@ const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss) =>
|
|
|
501
516
|
const computeDuration = (remaining, velocity) => {
|
|
502
517
|
return helpers.clamp(400, remaining / Math.abs(velocity * 1.1), 500);
|
|
503
518
|
};
|
|
519
|
+
/**
|
|
520
|
+
* Calculates the progress of the swipe gesture.
|
|
521
|
+
*
|
|
522
|
+
* The progress is a value between 0 and 1 that represents how far
|
|
523
|
+
* the swipe has progressed towards closing the modal.
|
|
524
|
+
*
|
|
525
|
+
* A value closer to 1 means the modal is closer to being opened,
|
|
526
|
+
* while a value closer to 0 means the modal is closer to being closed.
|
|
527
|
+
*
|
|
528
|
+
* @param el The modal
|
|
529
|
+
* @param deltaY The change in Y position (positive when dragging down, negative when dragging up)
|
|
530
|
+
* @returns The progress of the swipe gesture
|
|
531
|
+
*/
|
|
532
|
+
const calculateProgress = (el, deltaY) => {
|
|
533
|
+
const windowHeight = window.innerHeight;
|
|
534
|
+
// Position when fully open
|
|
535
|
+
const modalTop = el.getBoundingClientRect().top;
|
|
536
|
+
/**
|
|
537
|
+
* The distance between the top of the modal and the bottom of the screen
|
|
538
|
+
* is the total distance the modal needs to travel to be fully closed.
|
|
539
|
+
*/
|
|
540
|
+
const totalDistance = windowHeight - modalTop;
|
|
541
|
+
/**
|
|
542
|
+
* The pull percentage is how far the user has swiped compared to the total
|
|
543
|
+
* distance needed to close the modal.
|
|
544
|
+
*/
|
|
545
|
+
const pullPercentage = deltaY / totalDistance;
|
|
546
|
+
/**
|
|
547
|
+
* The progress is the inverse of the pull percentage because
|
|
548
|
+
* when the user starts swiping up, the progress should be close to 1,
|
|
549
|
+
* and when the user has swiped all the way down, the progress should be
|
|
550
|
+
* close to 0.
|
|
551
|
+
*/
|
|
552
|
+
const progress = 1 - pullPercentage;
|
|
553
|
+
// Round to the nearest thousandth to avoid returning very small decimal
|
|
554
|
+
const roundedProgress = Math.round(progress * 1000) / 1000;
|
|
555
|
+
return Math.max(0, Math.min(1, roundedProgress));
|
|
556
|
+
};
|
|
504
557
|
|
|
505
558
|
const createSheetEnterAnimation = (opts) => {
|
|
506
559
|
const { currentBreakpoint, backdropBreakpoint, expandToScroll } = opts;
|
|
@@ -949,7 +1002,7 @@ const mdLeaveAnimation = (baseEl, opts) => {
|
|
|
949
1002
|
return baseAnimation;
|
|
950
1003
|
};
|
|
951
1004
|
|
|
952
|
-
const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], expandToScroll, getCurrentBreakpoint, onDismiss, onBreakpointChange) => {
|
|
1005
|
+
const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], expandToScroll, getCurrentBreakpoint, onDismiss, onBreakpointChange, onDragStart, onDragMove, onDragEnd) => {
|
|
953
1006
|
// Defaults for the sheet swipe animation
|
|
954
1007
|
const defaultBackdrop = [
|
|
955
1008
|
{ offset: 0, opacity: 'var(--backdrop-opacity)' },
|
|
@@ -1212,6 +1265,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1212
1265
|
baseEl.focus();
|
|
1213
1266
|
});
|
|
1214
1267
|
animation.progressStart(true, 1 - currentBreakpoint);
|
|
1268
|
+
onDragStart();
|
|
1215
1269
|
};
|
|
1216
1270
|
const onMove = (detail) => {
|
|
1217
1271
|
/**
|
|
@@ -1280,8 +1334,25 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1280
1334
|
: step;
|
|
1281
1335
|
offset = helpers.clamp(0.0001, processedStep, maxStep);
|
|
1282
1336
|
animation.progressStep(offset);
|
|
1337
|
+
const snapBreakpoint = calculateSnapBreakpoint(detail.deltaY);
|
|
1338
|
+
const eventDetail = {
|
|
1339
|
+
currentY: detail.currentY,
|
|
1340
|
+
deltaY: detail.deltaY,
|
|
1341
|
+
velocityY: detail.velocityY,
|
|
1342
|
+
progress: calculateProgress(detail.currentY),
|
|
1343
|
+
snapBreakpoint: snapBreakpoint,
|
|
1344
|
+
};
|
|
1345
|
+
onDragMove(eventDetail);
|
|
1283
1346
|
};
|
|
1284
1347
|
const onEnd = (detail) => {
|
|
1348
|
+
const snapBreakpoint = calculateSnapBreakpoint(detail.deltaY);
|
|
1349
|
+
const eventDetail = {
|
|
1350
|
+
currentY: detail.currentY,
|
|
1351
|
+
deltaY: detail.deltaY,
|
|
1352
|
+
velocityY: detail.velocityY,
|
|
1353
|
+
progress: calculateProgress(detail.currentY),
|
|
1354
|
+
snapBreakpoint,
|
|
1355
|
+
};
|
|
1285
1356
|
/**
|
|
1286
1357
|
* If expandToScroll is disabled, we should not allow the moveSheetToBreakpoint
|
|
1287
1358
|
* function to be called if the user is trying to swipe content upwards and the content
|
|
@@ -1296,20 +1367,11 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1296
1367
|
* swap to moving on drag and if we don't swap back here then the footer will get stuck.
|
|
1297
1368
|
*/
|
|
1298
1369
|
swapFooterPosition('stationary');
|
|
1370
|
+
onDragEnd(eventDetail);
|
|
1299
1371
|
return;
|
|
1300
1372
|
}
|
|
1301
|
-
/**
|
|
1302
|
-
* When the gesture releases, we need to determine
|
|
1303
|
-
* the closest breakpoint to snap to.
|
|
1304
|
-
*/
|
|
1305
|
-
const velocity = detail.velocityY;
|
|
1306
|
-
const threshold = (detail.deltaY + velocity * 350) / height;
|
|
1307
|
-
const diff = currentBreakpoint - threshold;
|
|
1308
|
-
const closest = breakpoints.reduce((a, b) => {
|
|
1309
|
-
return Math.abs(b - diff) < Math.abs(a - diff) ? b : a;
|
|
1310
|
-
});
|
|
1311
1373
|
moveSheetToBreakpoint({
|
|
1312
|
-
breakpoint:
|
|
1374
|
+
breakpoint: snapBreakpoint,
|
|
1313
1375
|
breakpointOffset: offset,
|
|
1314
1376
|
canDismiss: canDismissBlocksGesture,
|
|
1315
1377
|
/**
|
|
@@ -1318,6 +1380,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1318
1380
|
*/
|
|
1319
1381
|
animated: true,
|
|
1320
1382
|
});
|
|
1383
|
+
onDragEnd(eventDetail);
|
|
1321
1384
|
};
|
|
1322
1385
|
const moveSheetToBreakpoint = (options) => {
|
|
1323
1386
|
const { breakpoint, canDismiss, breakpointOffset, animated } = options;
|
|
@@ -1457,6 +1520,104 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1457
1520
|
.progressEnd(1, 0, animated ? 500 : 0);
|
|
1458
1521
|
});
|
|
1459
1522
|
};
|
|
1523
|
+
/**
|
|
1524
|
+
* Calculates the breakpoint based on the current deltaY.
|
|
1525
|
+
* This determines where the sheet should snap to when the user releases the
|
|
1526
|
+
* gesture.
|
|
1527
|
+
*
|
|
1528
|
+
* @param deltaY The change in Y position since the gesture started.
|
|
1529
|
+
* @returns The snap breakpoint value.
|
|
1530
|
+
*/
|
|
1531
|
+
const calculateSnapBreakpoint = (deltaY) => {
|
|
1532
|
+
/**
|
|
1533
|
+
* Calculates the real-time vertical position of the modal.
|
|
1534
|
+
* We combine the wrapper's current bounding box position with the
|
|
1535
|
+
* gesture's deltaY to account for the physical movement during the drag.
|
|
1536
|
+
*/
|
|
1537
|
+
const currentY = wrapperEl.getBoundingClientRect().top + deltaY;
|
|
1538
|
+
/**
|
|
1539
|
+
* Convert that pixel position back into a 0 to 1 progress value.
|
|
1540
|
+
*/
|
|
1541
|
+
const currentProgress = calculateProgress(currentY);
|
|
1542
|
+
/**
|
|
1543
|
+
* Find and return the defined breakpoint that is closest to the
|
|
1544
|
+
* current progress.
|
|
1545
|
+
*/
|
|
1546
|
+
const snapBreakpoint = breakpoints.reduce((a, b) => {
|
|
1547
|
+
return Math.abs(b - currentProgress) < Math.abs(a - currentProgress) ? b : a;
|
|
1548
|
+
});
|
|
1549
|
+
return snapBreakpoint;
|
|
1550
|
+
};
|
|
1551
|
+
/**
|
|
1552
|
+
* Calculates the progress of the swipe gesture.
|
|
1553
|
+
*
|
|
1554
|
+
* The progress is a value between 0 and 1 that represents how far
|
|
1555
|
+
* the swipe has progressed towards closing the modal.
|
|
1556
|
+
*
|
|
1557
|
+
* A value closer to 1 means the modal is closer to being opened,
|
|
1558
|
+
* while a value closer to 0 means the modal is closer to being closed.
|
|
1559
|
+
*
|
|
1560
|
+
* @param currentY The current Y position of the gesture
|
|
1561
|
+
* @returns The progress of the sheet gesture
|
|
1562
|
+
*/
|
|
1563
|
+
const calculateProgress = (currentY) => {
|
|
1564
|
+
const minBreakpoint = breakpoints[0];
|
|
1565
|
+
const maxBreakpoint = breakpoints[breakpoints.length - 1];
|
|
1566
|
+
/**
|
|
1567
|
+
* The lowest point the sheet can be dragged to aka the point at which
|
|
1568
|
+
* the sheet is fully closed.
|
|
1569
|
+
*/
|
|
1570
|
+
const maxY = convertBreakpointToY(minBreakpoint);
|
|
1571
|
+
/**
|
|
1572
|
+
* The highest point the sheet can be dragged to aka the point at which
|
|
1573
|
+
* the sheet is fully open.
|
|
1574
|
+
*/
|
|
1575
|
+
const minY = convertBreakpointToY(maxBreakpoint);
|
|
1576
|
+
// The total distance between the fully open and fully closed positions.
|
|
1577
|
+
const totalDistance = maxY - minY;
|
|
1578
|
+
// The distance from the current position to the fully closed position.
|
|
1579
|
+
const distanceFromBottom = maxY - currentY;
|
|
1580
|
+
/**
|
|
1581
|
+
* The progress represents how far the sheet is from the bottom relative
|
|
1582
|
+
* to the total distance. When the user starts swiping up, the progress
|
|
1583
|
+
* should be close to 1, and when the user has swiped all the way down,
|
|
1584
|
+
* the progress should be close to 0.
|
|
1585
|
+
*/
|
|
1586
|
+
const progress = distanceFromBottom / totalDistance;
|
|
1587
|
+
// Round to the nearest thousandth to avoid returning very small decimal
|
|
1588
|
+
const roundedProgress = Math.round(progress * 1000) / 1000;
|
|
1589
|
+
return Math.max(0, Math.min(1, roundedProgress));
|
|
1590
|
+
};
|
|
1591
|
+
/**
|
|
1592
|
+
* Converts a breakpoint value (0 to 1) into a pixel Y coordinate
|
|
1593
|
+
* on the screen.
|
|
1594
|
+
*
|
|
1595
|
+
* @param breakpoint The breakpoint value (e.g., 0.5 for half-open)
|
|
1596
|
+
* @returns The pixel Y coordinate on the screen
|
|
1597
|
+
*/
|
|
1598
|
+
const convertBreakpointToY = (breakpoint) => {
|
|
1599
|
+
const rect = baseEl.getBoundingClientRect();
|
|
1600
|
+
const modalHeight = rect.height;
|
|
1601
|
+
// The bottom of the screen.
|
|
1602
|
+
const viewportBottom = window.innerHeight;
|
|
1603
|
+
/**
|
|
1604
|
+
* The active height is how much of the modal is actually showing
|
|
1605
|
+
* on the screen for this specific breakpoint.
|
|
1606
|
+
*/
|
|
1607
|
+
const activeHeight = modalHeight * breakpoint;
|
|
1608
|
+
/**
|
|
1609
|
+
* To find the Y coordinate, start at the bottom of the screen
|
|
1610
|
+
* and move up by the active height of the modal.
|
|
1611
|
+
*
|
|
1612
|
+
* A breakpoint of 1.0 means the active height is the full modal height
|
|
1613
|
+
* (fully open). A breakpoint of 0.0 means the active height is 0
|
|
1614
|
+
* (fully closed).
|
|
1615
|
+
*
|
|
1616
|
+
* Since screen Y coordinates get smaller as you go up, we subtract the
|
|
1617
|
+
* active height from the viewport bottom.
|
|
1618
|
+
*/
|
|
1619
|
+
return viewportBottom - activeHeight;
|
|
1620
|
+
};
|
|
1460
1621
|
const gesture = index$1.createGesture({
|
|
1461
1622
|
el: wrapperEl,
|
|
1462
1623
|
gestureName: 'modalSheet',
|
|
@@ -1635,9 +1796,9 @@ const clearSafeAreaOverrides = (hostEl) => {
|
|
|
1635
1796
|
hostEl.style.removeProperty('--ion-safe-area-right');
|
|
1636
1797
|
};
|
|
1637
1798
|
|
|
1638
|
-
const modalIosCss =
|
|
1799
|
+
const modalIosCss = () => `:host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:""}:host(.modal-sheet){--height:calc(100% - (var(--ion-modal-offset-top, 0px) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.4)}:host(.modal-card),:host(.modal-sheet){--border-radius:10px}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:10px}}.modal-wrapper{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0)}@media screen and (max-width: 767px){@supports (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - max(30px, var(--ion-safe-area-top)) - 10px)}}@supports not (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - 40px)}}:host(.modal-card) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-card){--backdrop-opacity:0;--width:100%;-ms-flex-align:end;align-items:flex-end}:host(.modal-card) .modal-shadow{display:none}:host(.modal-card) ion-backdrop{pointer-events:none}}@media screen and (min-width: 768px){:host(.modal-card){--width:calc(100% - 120px);--height:calc(100% - (120px + var(--ion-safe-area-top) + var(--ion-safe-area-bottom)));--max-width:720px;--max-height:1000px;--backdrop-opacity:0;--box-shadow:0px 0px 30px 10px rgba(0, 0, 0, 0.1);-webkit-transition:all 0.5s ease-in-out;transition:all 0.5s ease-in-out}:host(.modal-card) .modal-wrapper{-webkit-box-shadow:none;box-shadow:none}:host(.modal-card) .modal-shadow{-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}}:host(.modal-sheet) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}`;
|
|
1639
1800
|
|
|
1640
|
-
const modalMdCss =
|
|
1801
|
+
const modalMdCss = () => `:host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:""}:host(.modal-sheet){--height:calc(100% - (var(--ion-modal-offset-top, 0px) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:2px;--box-shadow:0 28px 48px rgba(0, 0, 0, 0.4)}}.modal-wrapper{-webkit-transform:translate3d(0, 40px, 0);transform:translate3d(0, 40px, 0);opacity:0.01}`;
|
|
1641
1802
|
|
|
1642
1803
|
const Modal = class {
|
|
1643
1804
|
constructor(hostRef) {
|
|
@@ -1652,6 +1813,9 @@ const Modal = class {
|
|
|
1652
1813
|
this.willDismissShorthand = index$3.createEvent(this, "willDismiss", 7);
|
|
1653
1814
|
this.didDismissShorthand = index$3.createEvent(this, "didDismiss", 7);
|
|
1654
1815
|
this.ionMount = index$3.createEvent(this, "ionMount", 7);
|
|
1816
|
+
this.ionDragStart = index$3.createEvent(this, "ionDragStart", 7);
|
|
1817
|
+
this.ionDragMove = index$3.createEvent(this, "ionDragMove", 7);
|
|
1818
|
+
this.ionDragEnd = index$3.createEvent(this, "ionDragEnd", 7);
|
|
1655
1819
|
this.lockController = lockController.createLockController();
|
|
1656
1820
|
this.triggerController = overlays.createTriggerController();
|
|
1657
1821
|
this.coreDelegate = frameworkDelegate.CoreDelegate();
|
|
@@ -2143,32 +2307,7 @@ const Modal = class {
|
|
|
2143
2307
|
return;
|
|
2144
2308
|
}
|
|
2145
2309
|
const statusBarStyle = (_a = this.statusBarStyle) !== null && _a !== void 0 ? _a : Style.Default;
|
|
2146
|
-
this.gesture = createSwipeToCloseGesture(el, ani, statusBarStyle, () =>
|
|
2147
|
-
/**
|
|
2148
|
-
* While the gesture animation is finishing
|
|
2149
|
-
* it is possible for a user to tap the backdrop.
|
|
2150
|
-
* This would result in the dismiss animation
|
|
2151
|
-
* being played again. Typically this is avoided
|
|
2152
|
-
* by setting `presented = false` on the overlay
|
|
2153
|
-
* component; however, we cannot do that here as
|
|
2154
|
-
* that would prevent the element from being
|
|
2155
|
-
* removed from the DOM.
|
|
2156
|
-
*/
|
|
2157
|
-
this.gestureAnimationDismissing = true;
|
|
2158
|
-
/**
|
|
2159
|
-
* Reset the status bar style as the dismiss animation
|
|
2160
|
-
* starts otherwise the status bar will be the wrong
|
|
2161
|
-
* color for the duration of the dismiss animation.
|
|
2162
|
-
* The dismiss method does this as well, but
|
|
2163
|
-
* in this case it's only called once the animation
|
|
2164
|
-
* has finished.
|
|
2165
|
-
*/
|
|
2166
|
-
setCardStatusBarDefault(this.statusBarStyle);
|
|
2167
|
-
this.animation.onFinish(async () => {
|
|
2168
|
-
await this.dismiss(undefined, overlays.GESTURE);
|
|
2169
|
-
this.gestureAnimationDismissing = false;
|
|
2170
|
-
});
|
|
2171
|
-
});
|
|
2310
|
+
this.gesture = createSwipeToCloseGesture(el, ani, statusBarStyle, () => this.cardOnDismiss(), () => this.onDragStart(), (detail) => this.onDragMove(detail), (detail) => this.onDragEnd(detail));
|
|
2172
2311
|
this.gesture.enable(true);
|
|
2173
2312
|
}
|
|
2174
2313
|
initSheetGesture() {
|
|
@@ -2189,7 +2328,7 @@ const Modal = class {
|
|
|
2189
2328
|
this.currentBreakpoint = breakpoint;
|
|
2190
2329
|
this.ionBreakpointDidChange.emit({ breakpoint });
|
|
2191
2330
|
}
|
|
2192
|
-
});
|
|
2331
|
+
}, () => this.onDragStart(), (detail) => this.onDragMove(detail), (detail) => this.onDragEnd(detail));
|
|
2193
2332
|
this.gesture = gesture;
|
|
2194
2333
|
this.moveSheetToBreakpoint = moveSheetToBreakpoint;
|
|
2195
2334
|
this.gesture.enable(true);
|
|
@@ -2286,6 +2425,32 @@ const Modal = class {
|
|
|
2286
2425
|
this.gestureAnimationDismissing = false;
|
|
2287
2426
|
});
|
|
2288
2427
|
}
|
|
2428
|
+
cardOnDismiss() {
|
|
2429
|
+
/**
|
|
2430
|
+
* While the gesture animation is finishing
|
|
2431
|
+
* it is possible for a user to tap the backdrop.
|
|
2432
|
+
* This would result in the dismiss animation
|
|
2433
|
+
* being played again. Typically this is avoided
|
|
2434
|
+
* by setting `presented = false` on the overlay
|
|
2435
|
+
* component; however, we cannot do that here as
|
|
2436
|
+
* that would prevent the element from being
|
|
2437
|
+
* removed from the DOM.
|
|
2438
|
+
*/
|
|
2439
|
+
this.gestureAnimationDismissing = true;
|
|
2440
|
+
/**
|
|
2441
|
+
* Reset the status bar style as the dismiss animation
|
|
2442
|
+
* starts otherwise the status bar will be the wrong
|
|
2443
|
+
* color for the duration of the dismiss animation.
|
|
2444
|
+
* The dismiss method does this as well, but
|
|
2445
|
+
* in this case it's only called once the animation
|
|
2446
|
+
* has finished.
|
|
2447
|
+
*/
|
|
2448
|
+
setCardStatusBarDefault(this.statusBarStyle);
|
|
2449
|
+
this.animation.onFinish(async () => {
|
|
2450
|
+
await this.dismiss(undefined, overlays.GESTURE);
|
|
2451
|
+
this.gestureAnimationDismissing = false;
|
|
2452
|
+
});
|
|
2453
|
+
}
|
|
2289
2454
|
/**
|
|
2290
2455
|
* Dismiss the modal overlay after it has been presented.
|
|
2291
2456
|
* This is a no-op if the overlay has not been presented yet. If you want
|
|
@@ -2608,6 +2773,15 @@ const Modal = class {
|
|
|
2608
2773
|
(_a = this.parentRemovalObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
2609
2774
|
this.parentRemovalObserver = undefined;
|
|
2610
2775
|
}
|
|
2776
|
+
onDragStart() {
|
|
2777
|
+
this.ionDragStart.emit();
|
|
2778
|
+
}
|
|
2779
|
+
onDragMove(detail) {
|
|
2780
|
+
this.ionDragMove.emit(detail);
|
|
2781
|
+
}
|
|
2782
|
+
onDragEnd(detail) {
|
|
2783
|
+
this.ionDragEnd.emit(detail);
|
|
2784
|
+
}
|
|
2611
2785
|
/**
|
|
2612
2786
|
* Creates the context object for safe-area utilities.
|
|
2613
2787
|
*/
|
|
@@ -2732,25 +2906,29 @@ const Modal = class {
|
|
|
2732
2906
|
const isCardModal = presentingElement !== undefined && mode === 'ios';
|
|
2733
2907
|
const isHandleCycle = handleBehavior === 'cycle';
|
|
2734
2908
|
const isSheetModalWithHandle = isSheetModal && showHandle;
|
|
2735
|
-
return (index$3.h(index$3.Host, Object.assign({ key: '
|
|
2909
|
+
return (index$3.h(index$3.Host, Object.assign({ key: '1a53e8f87532abccc169ca4b24973a39c5f9ba16', "no-router": true,
|
|
2736
2910
|
// Allow the modal to be navigable when the handle is focusable
|
|
2737
2911
|
tabIndex: isHandleCycle && isSheetModalWithHandle ? 0 : -1 }, htmlAttributes, { style: {
|
|
2738
2912
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
2739
|
-
}, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [overlays.FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, theme.getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), index$3.h("ion-backdrop", { key: '
|
|
2913
|
+
}, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [overlays.FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, theme.getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), index$3.h("ion-backdrop", { key: 'fa8e0a436c0d458331402e1850f87af3dc97b582', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && index$3.h("div", { key: 'f00de6027d3c8b5bc93db3b0f7a50a87628d40bb', class: "modal-shadow" }), index$3.h("div", Object.assign({ key: 'ae5e33bd6c58e541edb2edbca92420ea02dd5175',
|
|
2740
2914
|
/*
|
|
2741
2915
|
role and aria-modal must be used on the
|
|
2742
2916
|
same element. They must also be set inside the
|
|
2743
2917
|
shadow DOM otherwise ion-button will not be highlighted
|
|
2744
2918
|
when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
|
|
2745
2919
|
*/
|
|
2746
|
-
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (index$3.h("button", { key: '
|
|
2920
|
+
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (index$3.h("button", { key: '141cdd8f8522331f4b764e2a4d79ec6596b1eb3a', class: "modal-handle",
|
|
2747
2921
|
// Prevents the handle from receiving keyboard focus when it does not cycle
|
|
2748
|
-
tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle", ref: (el) => (this.dragHandleEl = el) })), index$3.h("slot", { key: '
|
|
2922
|
+
tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle", ref: (el) => (this.dragHandleEl = el) })), index$3.h("slot", { key: '7de20298b61abee67a16d275c9ebd9a25ce7dd26', onSlotchange: this.onSlotChange }))));
|
|
2749
2923
|
}
|
|
2750
2924
|
get el() { return index$3.getElement(this); }
|
|
2751
2925
|
static get watchers() { return {
|
|
2752
|
-
"isOpen": [
|
|
2753
|
-
|
|
2926
|
+
"isOpen": [{
|
|
2927
|
+
"onIsOpenChange": 0
|
|
2928
|
+
}],
|
|
2929
|
+
"trigger": [{
|
|
2930
|
+
"triggerChanged": 0
|
|
2931
|
+
}]
|
|
2754
2932
|
}; }
|
|
2755
2933
|
};
|
|
2756
2934
|
const LIFECYCLE_MAP = {
|
|
@@ -2760,8 +2938,8 @@ const LIFECYCLE_MAP = {
|
|
|
2760
2938
|
ionModalDidDismiss: 'ionViewDidLeave',
|
|
2761
2939
|
};
|
|
2762
2940
|
Modal.style = {
|
|
2763
|
-
ios: modalIosCss,
|
|
2764
|
-
md: modalMdCss
|
|
2941
|
+
ios: modalIosCss(),
|
|
2942
|
+
md: modalMdCss()
|
|
2765
2943
|
};
|
|
2766
2944
|
|
|
2767
2945
|
exports.ion_modal = Modal;
|