@ionic/core 8.8.4-dev.11777064748.1e6da1cd → 8.8.4-dev.11777318673.18d001f6
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-group.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-avatar.js +1 -1
- package/components/ion-back-button.js +1 -1
- package/components/ion-backdrop.js +1 -1
- package/components/ion-badge.js +1 -1
- package/components/ion-breadcrumb.js +1 -1
- package/components/ion-breadcrumbs.js +1 -1
- package/components/ion-button.js +1 -1
- package/components/ion-buttons.js +1 -1
- package/components/ion-card-content.js +1 -1
- package/components/ion-card-header.js +1 -1
- package/components/ion-card-subtitle.js +1 -1
- package/components/ion-card-title.js +1 -1
- package/components/ion-card.js +1 -1
- package/components/ion-checkbox.js +1 -1
- package/components/ion-chip.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-fab-list.js +1 -1
- package/components/ion-fab.js +1 -1
- package/components/ion-footer.js +1 -1
- package/components/ion-grid.js +1 -1
- package/components/ion-header.js +1 -1
- package/components/ion-icon.js +1 -1
- package/components/ion-img.js +1 -1
- package/components/ion-infinite-scroll-content.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-divider.js +1 -1
- package/components/ion-item-group.js +1 -1
- package/components/ion-item-option.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-list-header.js +1 -1
- package/components/ion-list.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-link.js +1 -1
- package/components/ion-nav.js +1 -1
- package/components/ion-note.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-reorder.js +1 -1
- package/components/ion-ripple-effect.js +1 -1
- package/components/ion-route-redirect.js +1 -1
- package/components/ion-route.js +1 -1
- package/components/ion-router-link.js +1 -1
- package/components/ion-router-outlet.js +1 -1
- package/components/ion-router.js +1 -1
- package/components/ion-row.js +1 -1
- package/components/ion-searchbar.js +1 -1
- package/components/ion-segment-button.js +1 -1
- package/components/ion-segment-content.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-option.js +1 -1
- package/components/ion-select-popover.js +1 -1
- package/components/ion-select.js +1 -1
- package/components/ion-skeleton-text.js +1 -1
- package/components/ion-spinner.js +1 -1
- package/components/ion-split-pane.js +1 -1
- package/components/ion-tab-bar.js +1 -1
- package/components/ion-tab-button.js +1 -1
- package/components/ion-tab.js +1 -1
- package/components/ion-tabs.js +1 -1
- package/components/ion-text.js +1 -1
- package/components/ion-textarea.js +1 -1
- package/components/ion-thumbnail.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/ion-toolbar.js +1 -1
- package/{dist/ionic/p-BsfuYVMP.js → components/p-9VcRUwdB.js} +1 -1
- package/components/p-ApmKVjaE.js +4 -0
- package/components/p-B6FQ0cKR.js +4 -0
- package/components/p-B6HaBl3o.js +4 -0
- package/components/p-B8b1Ukl9.js +4 -0
- package/components/p-BHlzkIpO.js +4 -0
- package/components/p-BJoMtgfR.js +4 -0
- package/components/p-BNAG-aVv.js +4 -0
- package/components/p-BR3tZJmu.js +4 -0
- package/{dist/ionic/p-C8IHbcuP.js → components/p-BS1TtEiJ.js} +1 -1
- package/components/{p-CHgKFg32.js → p-BUbsoBOV.js} +1 -1
- package/components/p-BYDc3hSE.js +4 -0
- package/components/p-BagjAGC0.js +4 -0
- package/components/p-BeL7B3Bb.js +4 -0
- package/components/p-Bg7NsGS9.js +4 -0
- package/components/p-BgwEQWW6.js +4 -0
- package/components/p-Bk2zuNWT.js +4 -0
- package/components/p-BmVRXR1y.js +4 -0
- package/components/p-BxwWvu-b.js +4 -0
- package/components/p-C4jPsTQa.js +4 -0
- package/components/p-C59ryAuS.js +4 -0
- package/components/p-C7AoMl7c.js +4 -0
- package/components/p-CBzELu-H.js +4 -0
- package/components/p-CDXBV7oG.js +4 -0
- package/components/p-CDfQnFrd.js +4 -0
- package/components/p-CIGNaXM1.js +4 -0
- package/components/p-CO7fmmxt.js +4 -0
- package/components/p-CU1SSH8_.js +4 -0
- package/components/p-CWpbvhwY.js +4 -0
- package/components/p-CeGEptO5.js +4 -0
- package/components/p-CgqKJg96.js +4 -0
- package/components/p-CneGxKsZ.js +4 -0
- package/components/p-CoA-aqGF.js +4 -0
- package/components/p-ConfEMkh.js +4 -0
- package/components/p-Csw8xuz4.js +4 -0
- package/components/p-CtWGkNnJ.js +4 -0
- package/components/{p-CjSx8W-k.js → p-Cwv-vmkN.js} +1 -1
- package/components/p-Cy5XSfIk.js +4 -0
- package/components/p-Cz5nLPGT.js +4 -0
- package/{dist/ionic/p-SJmaFQ0H.js → components/p-D13Eaw-8.js} +1 -1
- package/components/p-D6NJwNJN.js +4 -0
- package/components/p-D6Ynv7Xh.js +4 -0
- package/components/p-DJztqcrH.js +4 -0
- package/components/p-DL2W2mt3.js +4 -0
- package/components/p-DPdqO7R6.js +4 -0
- package/components/p-DYdpXONG.js +4 -0
- package/components/p-DbISMmiI.js +4 -0
- package/components/p-DgbT0exM.js +4 -0
- package/components/p-DiVJyqlX.js +4 -0
- package/components/p-DoeApPDj.js +4 -0
- package/components/p-DrIm1s9R.js +4 -0
- package/components/p-DxXmSp9Y.js +4 -0
- package/components/{p-zWP0sUV_.js → p-YLXPWgVj.js} +1 -1
- package/components/p-ZjP4CjeZ.js +4 -0
- package/{dist/ionic/p-ZqkJDyhe.js → components/p-ak_d-z48.js} +1 -1
- package/components/p-cvHphHJA.js +4 -0
- package/{dist/ionic/p-CbkICFBN.js → components/p-cyNmxje6.js} +1 -1
- package/components/p-nPoOPlPt.js +4 -0
- package/components/p-vEbVo2hO.js +4 -0
- package/css/core.css +1 -1
- package/css/core.css.map +1 -1
- package/css/display.css +1 -1
- package/css/display.css.map +1 -1
- package/css/flex-utils.css +1 -1
- package/css/flex-utils.css.map +1 -1
- package/css/float-elements.css.map +1 -1
- package/css/global.bundle.css.map +1 -1
- package/css/ionic-swiper.css +1 -1
- package/css/ionic-swiper.css.map +1 -1
- package/css/ionic.bundle.css +1 -1
- package/css/ionic.bundle.css.map +1 -1
- package/css/normalize.css.map +1 -1
- package/css/padding.css.map +1 -1
- package/css/palettes/dark.always.css +1 -1
- package/css/palettes/dark.always.css.map +1 -1
- package/css/palettes/dark.class.css +1 -1
- package/css/palettes/dark.class.css.map +1 -1
- package/css/palettes/dark.system.css +1 -1
- package/css/palettes/dark.system.css.map +1 -1
- package/css/palettes/high-contrast-dark.always.css +1 -1
- package/css/palettes/high-contrast-dark.always.css.map +1 -1
- package/css/palettes/high-contrast-dark.class.css +1 -1
- package/css/palettes/high-contrast-dark.class.css.map +1 -1
- package/css/palettes/high-contrast-dark.system.css +1 -1
- package/css/palettes/high-contrast-dark.system.css.map +1 -1
- package/css/palettes/high-contrast.always.css.map +1 -1
- package/css/palettes/high-contrast.class.css.map +1 -1
- package/css/palettes/high-contrast.system.css.map +1 -1
- package/css/structure.css.map +1 -1
- package/css/text-alignment.css.map +1 -1
- package/css/text-transformation.css.map +1 -1
- package/css/typography.css.map +1 -1
- package/css/utils.bundle.css +1 -1
- package/css/utils.bundle.css.map +1 -1
- package/dist/cjs/{animation-DknMeJ3x.js → animation-Dg4yiuR2.js} +3 -3
- package/dist/cjs/{app-globals-DtAeky3x.js → app-globals-CLI8xCmk.js} +1 -1
- package/dist/cjs/{button-active-JoIWyYri.js → button-active-FscMI17-.js} +2 -2
- package/dist/cjs/{capacitor-BnRBm_ys.js → capacitor-DmA66EwP.js} +3 -3
- package/dist/cjs/{config-B0utyWaD.js → config-BukYi_pW.js} +1 -1
- package/dist/cjs/{data-DuOuKG7I.js → data-BYlBjkMU.js} +6 -6
- package/dist/{esm/focus-visible-vXpMhGrs.js → cjs/focus-visible-CCvKiLh3.js} +3 -23
- package/dist/cjs/{framework-delegate-Dx9FrqAC.js → framework-delegate-CRgp8o_p.js} +2 -4
- package/dist/cjs/{haptic-D3Ay9mmg.js → haptic-ClPPQ_PS.js} +1 -1
- package/dist/cjs/hardware-back-button-C4rMJ5uI.js +121 -0
- package/dist/cjs/{helpers-DJYxKN5U.js → helpers-CxTYJdbT.js} +4 -57
- package/dist/cjs/{index-D_mPAIqF.js → index-C845Ti6K.js} +4 -4
- package/dist/cjs/{index-Cer2Qy4I.js → index-CFUwM5x_.js} +15 -15
- package/dist/cjs/{index-CzcLEdQ5.js → index-CqT-2gKy.js} +4 -41
- package/dist/cjs/index-DkNv4J_i.js +10 -0
- package/dist/cjs/{index-CgAbCW6L.js → index-DqmRDbxg.js} +0 -2
- package/dist/cjs/{index-BJrpF9T3.js → index-MbaBbWXk.js} +2 -2
- package/dist/cjs/{index-DMJjUhXH.js → index-YcSftOMz.js} +8 -9
- package/dist/cjs/index.cjs.js +14 -14
- package/dist/cjs/{input-shims-Dn33gFln.js → input-shims-Dl5cnc_e.js} +17 -18
- package/dist/cjs/{input.utils-DnVnhWEF.js → input.utils-DmeJ8dmo.js} +5 -5
- package/dist/cjs/ion-accordion_2.cjs.entry.js +29 -61
- package/dist/cjs/ion-action-sheet.cjs.entry.js +26 -25
- package/dist/cjs/ion-alert.cjs.entry.js +27 -25
- package/dist/cjs/ion-app_8.cjs.entry.js +175 -296
- package/dist/cjs/ion-avatar_3.cjs.entry.js +13 -125
- package/dist/cjs/ion-back-button.cjs.entry.js +22 -31
- package/dist/cjs/ion-backdrop.cjs.entry.js +7 -10
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +18 -54
- package/dist/cjs/ion-button_2.cjs.entry.js +22 -59
- package/dist/cjs/ion-card_5.cjs.entry.js +33 -55
- package/dist/cjs/ion-checkbox.cjs.entry.js +16 -34
- package/dist/cjs/ion-chip.cjs.entry.js +9 -50
- package/dist/cjs/ion-col_3.cjs.entry.js +57 -54
- package/dist/cjs/ion-datetime-button.cjs.entry.js +9 -13
- package/dist/cjs/{ion-datetime_3.cjs.entry.js → ion-datetime.cjs.entry.js} +32 -755
- package/dist/cjs/ion-fab_3.cjs.entry.js +28 -44
- package/dist/cjs/ion-img.cjs.entry.js +4 -8
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +16 -91
- package/dist/cjs/ion-input-otp.cjs.entry.js +9 -74
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +15 -53
- package/dist/cjs/ion-input.cjs.entry.js +34 -124
- package/dist/cjs/ion-item-option_3.cjs.entry.js +21 -186
- package/dist/cjs/ion-item_8.cjs.entry.js +49 -116
- package/dist/cjs/ion-loading.cjs.entry.js +22 -20
- package/dist/cjs/ion-menu_3.cjs.entry.js +29 -47
- package/dist/cjs/ion-modal.cjs.entry.js +142 -262
- package/dist/cjs/ion-nav_2.cjs.entry.js +11 -14
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +8 -12
- package/dist/cjs/ion-picker-column.cjs.entry.js +15 -15
- package/dist/cjs/ion-picker.cjs.entry.js +6 -10
- package/dist/cjs/ion-popover.cjs.entry.js +23 -21
- package/dist/cjs/ion-progress-bar.cjs.entry.js +9 -27
- package/dist/cjs/ion-radio_2.cjs.entry.js +17 -35
- package/dist/cjs/ion-range.cjs.entry.js +13 -20
- package/dist/cjs/ion-refresher_2.cjs.entry.js +21 -39
- package/dist/cjs/ion-reorder_2.cjs.entry.js +14 -38
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +7 -15
- package/dist/cjs/ion-route_4.cjs.entry.js +9 -10
- package/dist/cjs/ion-searchbar.cjs.entry.js +24 -137
- package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
- package/dist/cjs/ion-segment-view.cjs.entry.js +3 -6
- package/dist/cjs/ion-segment_2.cjs.entry.js +16 -23
- package/dist/cjs/ion-select-modal.cjs.entry.js +11 -34
- package/dist/cjs/ion-select_3.cjs.entry.js +42 -142
- package/dist/cjs/ion-spinner.cjs.entry.js +8 -30
- package/dist/cjs/ion-split-pane.cjs.entry.js +9 -12
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +23 -147
- package/dist/cjs/ion-tab_2.cjs.entry.js +7 -8
- package/dist/cjs/ion-text.cjs.entry.js +7 -7
- package/dist/cjs/ion-textarea.cjs.entry.js +23 -137
- package/dist/cjs/ion-toast.cjs.entry.js +46 -69
- package/dist/cjs/ion-toggle.cjs.entry.js +27 -20727
- package/dist/cjs/ionic-global-Bc3kJi1Z.js +151 -0
- package/dist/cjs/ionic.cjs.js +4 -4
- package/dist/cjs/{ios.transition-UCjoxA3D.js → ios.transition-trBiC95R.js} +5 -7
- package/dist/cjs/{keyboard-Dsczf-iT.js → keyboard-UuAS4D_9.js} +1 -1
- package/dist/cjs/{keyboard-controller-tqGDP9SU.js → keyboard-controller-GXBiBRKS.js} +9 -11
- package/dist/cjs/{keyboard-Bhav6x-R.js → keyboard-hHzlEQpk.js} +3 -4
- package/dist/cjs/loader.cjs.js +4 -4
- package/dist/cjs/{md.transition-CNwlchQn.js → md.transition-CUQECuvD.js} +5 -6
- package/dist/cjs/{notch-controller-CgtkBzy0.js → notch-controller-sD-lTpdc.js} +4 -4
- package/dist/cjs/{overlays-Hci_7vw_.js → overlays-DIfHxkst.js} +42 -117
- package/dist/cjs/{status-tap-CTY2dMsZ.js → status-tap-CCJk5VgT.js} +3 -4
- package/dist/cjs/{swipe-back-jJFi5KCB.js → swipe-back-BGhTQ1CU.js} +2 -3
- package/dist/cjs/{theme-IlOsGAz7.js → theme-CeDs6Hcv.js} +1 -25
- package/dist/cjs/validity-BpS37YFM.js +19 -0
- package/dist/collection/collection-manifest.json +5 -10
- package/dist/collection/components/accordion/accordion.ios.css +58 -73
- package/dist/collection/components/accordion/accordion.js +27 -41
- package/dist/collection/components/accordion/accordion.md.css +59 -67
- package/dist/collection/components/accordion-group/accordion-group.ios.css +4 -16
- package/dist/collection/components/accordion-group/accordion-group.js +8 -44
- package/dist/collection/components/accordion-group/accordion-group.md.css +4 -22
- package/dist/collection/components/action-sheet/action-sheet.ios.css +6 -18
- package/dist/collection/components/action-sheet/action-sheet.js +18 -18
- package/dist/collection/components/action-sheet/action-sheet.md.css +5 -17
- package/dist/collection/components/alert/alert.ios.css +1 -19
- package/dist/collection/components/alert/alert.js +18 -17
- package/dist/collection/components/alert/alert.md.css +1 -19
- package/dist/collection/components/app/app.js +83 -15
- package/dist/collection/components/avatar/avatar.ios.css +33 -7
- package/dist/collection/components/avatar/avatar.js +4 -120
- package/dist/collection/components/avatar/avatar.md.css +0 -51
- package/dist/collection/components/back-button/back-button.ios.css +48 -60
- package/dist/collection/components/back-button/back-button.js +19 -27
- package/dist/collection/components/back-button/back-button.md.css +48 -60
- package/dist/collection/components/backdrop/backdrop.ios.css +19 -56
- package/dist/collection/components/backdrop/backdrop.js +6 -12
- package/dist/collection/components/backdrop/backdrop.md.css +19 -56
- package/dist/collection/components/badge/badge.ios.css +12 -139
- package/dist/collection/components/badge/badge.js +9 -145
- package/dist/collection/components/badge/badge.md.css +12 -123
- package/dist/collection/components/breadcrumb/breadcrumb.ios.css +8 -20
- package/dist/collection/components/breadcrumb/breadcrumb.js +11 -43
- package/dist/collection/components/breadcrumb/breadcrumb.md.css +8 -20
- package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +0 -6
- package/dist/collection/components/breadcrumbs/breadcrumbs.js +9 -11
- package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +0 -6
- package/dist/collection/components/button/button.ios.css +46 -154
- package/dist/collection/components/button/button.js +27 -63
- package/dist/collection/components/button/button.md.css +50 -150
- package/dist/collection/components/buttons/buttons.ios.css +7 -59
- package/dist/collection/components/buttons/buttons.js +9 -15
- package/dist/collection/components/buttons/buttons.md.css +3 -55
- package/dist/collection/components/card/card.ios.css +14 -65
- package/dist/collection/components/card/card.js +10 -41
- package/dist/collection/components/card/card.md.css +14 -65
- package/dist/collection/components/card-content/card-content.ios.css +35 -20
- package/dist/collection/components/card-content/card-content.js +10 -12
- package/dist/collection/components/card-content/card-content.md.css +35 -20
- package/dist/collection/components/card-header/card-header.ios.css +15 -27
- package/dist/collection/components/card-header/card-header.js +10 -13
- package/dist/collection/components/card-header/card-header.md.css +15 -27
- package/dist/collection/components/card-subtitle/card-subtitle.ios.css +0 -12
- package/dist/collection/components/card-subtitle/card-subtitle.js +8 -11
- package/dist/collection/components/card-subtitle/card-subtitle.md.css +0 -12
- package/dist/collection/components/card-title/card-title.ios.css +0 -73
- package/dist/collection/components/card-title/card-title.js +8 -11
- package/dist/collection/components/card-title/card-title.md.css +0 -73
- package/dist/collection/components/checkbox/checkbox.ios.css +101 -161
- package/dist/collection/components/checkbox/checkbox.js +14 -70
- package/dist/collection/components/checkbox/checkbox.md.css +102 -162
- package/dist/collection/components/chip/chip.ios.css +14 -67
- package/dist/collection/components/chip/chip.js +8 -108
- package/dist/collection/components/chip/chip.md.css +14 -67
- package/dist/collection/components/col/col.css +4 -192
- package/dist/collection/components/col/col.js +61 -210
- package/dist/collection/components/content/content.css +2 -8
- package/dist/collection/components/content/content.js +11 -16
- package/dist/collection/components/datetime/datetime.ios.css +106 -302
- package/dist/collection/components/datetime/datetime.js +23 -111
- package/dist/collection/components/datetime/datetime.md.css +96 -293
- package/dist/collection/components/datetime/utils/data.js +5 -5
- package/dist/collection/components/datetime-button/datetime-button.ios.css +0 -6
- package/dist/collection/components/datetime-button/datetime-button.js +8 -11
- package/dist/collection/components/datetime-button/datetime-button.md.css +0 -6
- package/dist/collection/components/fab/fab.css +1 -25
- package/dist/collection/components/fab/fab.js +5 -9
- package/dist/collection/components/fab-button/fab-button.ios.css +6 -18
- package/dist/collection/components/fab-button/fab-button.js +21 -36
- package/dist/collection/components/fab-button/fab-button.md.css +8 -20
- package/dist/collection/components/fab-list/fab-list.css +0 -12
- package/dist/collection/components/fab-list/fab-list.js +5 -9
- package/dist/collection/components/footer/footer.ios.css +2 -14
- package/dist/collection/components/footer/footer.js +16 -21
- package/dist/collection/components/footer/footer.md.css +0 -12
- package/dist/collection/components/grid/grid.css +0 -12
- package/dist/collection/components/grid/grid.js +5 -9
- package/dist/collection/components/header/header.ios.css +10 -25
- package/dist/collection/components/header/header.js +19 -50
- package/dist/collection/components/header/header.md.css +8 -23
- package/dist/collection/components/header/header.utils.js +5 -5
- package/dist/collection/components/img/img.js +2 -8
- package/dist/collection/components/infinite-scroll/infinite-scroll.js +5 -100
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +0 -12
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +10 -16
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +0 -12
- package/dist/collection/components/input/input.ios.css +135 -223
- package/dist/collection/components/input/input.js +37 -148
- package/dist/collection/components/input/input.md.css +207 -193
- package/dist/collection/components/input-otp/input-otp.ios.css +60 -105
- package/dist/collection/components/input-otp/input-otp.js +6 -73
- package/dist/collection/components/input-otp/input-otp.md.css +60 -105
- package/dist/collection/components/input-password-toggle/input-password-toggle.js +12 -48
- package/dist/collection/components/item/item.ios.css +69 -109
- package/dist/collection/components/item/item.js +20 -51
- package/dist/collection/components/item/item.md.css +68 -120
- package/dist/collection/components/item-divider/item-divider.ios.css +0 -18
- package/dist/collection/components/item-divider/item-divider.js +8 -11
- package/dist/collection/components/item-divider/item-divider.md.css +0 -18
- package/dist/collection/components/item-group/item-group.ios.css +0 -12
- package/dist/collection/components/item-group/item-group.js +7 -13
- package/dist/collection/components/item-group/item-group.md.css +0 -12
- package/dist/collection/components/item-option/item-option.ios.css +29 -136
- package/dist/collection/components/item-option/item-option.js +9 -73
- package/dist/collection/components/item-option/item-option.md.css +29 -136
- package/dist/collection/components/item-options/item-options.ios.css +34 -77
- package/dist/collection/components/item-options/item-options.js +7 -13
- package/dist/collection/components/item-options/item-options.md.css +34 -77
- package/dist/collection/components/item-sliding/item-sliding.css +0 -6
- package/dist/collection/components/item-sliding/item-sliding.js +4 -144
- package/dist/collection/components/label/label.ios.css +0 -18
- package/dist/collection/components/label/label.js +8 -11
- package/dist/collection/components/label/label.md.css +0 -18
- package/dist/collection/components/list/list.ios.css +14 -54
- package/dist/collection/components/list/list.js +9 -48
- package/dist/collection/components/list/list.md.css +16 -56
- package/dist/collection/components/list-header/list-header.ios.css +38 -82
- package/dist/collection/components/list-header/list-header.js +8 -11
- package/dist/collection/components/list-header/list-header.md.css +38 -82
- package/dist/collection/components/loading/loading.ios.css +1 -13
- package/dist/collection/components/loading/loading.js +16 -15
- package/dist/collection/components/loading/loading.md.css +1 -13
- package/dist/collection/components/menu/menu.ios.css +3 -15
- package/dist/collection/components/menu/menu.js +7 -12
- package/dist/collection/components/menu/menu.md.css +3 -15
- package/dist/collection/components/menu-button/menu-button.ios.css +14 -48
- package/dist/collection/components/menu-button/menu-button.js +10 -26
- package/dist/collection/components/menu-button/menu-button.md.css +15 -49
- package/dist/collection/components/menu-toggle/menu-toggle.js +5 -8
- package/dist/collection/components/modal/animations/sheet.js +2 -8
- package/dist/collection/components/modal/gestures/sheet.js +10 -76
- package/dist/collection/components/modal/modal.ios.css +70 -178
- package/dist/collection/components/modal/modal.js +17 -51
- package/dist/collection/components/modal/modal.md.css +70 -178
- package/dist/collection/components/nav/nav.css +1 -7
- package/dist/collection/components/nav/nav.js +5 -11
- package/dist/collection/components/nav-link/nav-link.js +1 -5
- package/dist/collection/components/note/note.ios.css +0 -12
- package/dist/collection/components/note/note.js +8 -11
- package/dist/collection/components/note/note.md.css +0 -12
- package/dist/collection/components/picker/picker.ios.css +3 -15
- package/dist/collection/components/picker/picker.js +5 -8
- package/dist/collection/components/picker/picker.md.css +3 -15
- package/dist/collection/components/picker-column/picker-column.css +2 -9
- package/dist/collection/components/picker-column/picker-column.js +9 -10
- package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -6
- package/dist/collection/components/picker-column-option/picker-column-option.js +7 -13
- package/dist/collection/components/picker-column-option/picker-column-option.md.css +0 -6
- package/dist/collection/components/popover/popover.ios.css +1 -13
- package/dist/collection/components/popover/popover.js +20 -19
- package/dist/collection/components/popover/popover.md.css +1 -13
- package/dist/collection/components/progress-bar/progress-bar.ios.css +17 -48
- package/dist/collection/components/progress-bar/progress-bar.js +7 -43
- package/dist/collection/components/progress-bar/progress-bar.md.css +17 -48
- package/dist/collection/components/radio/radio.ios.css +91 -134
- package/dist/collection/components/radio/radio.js +10 -15
- package/dist/collection/components/radio/radio.md.css +91 -134
- package/dist/collection/components/radio-group/radio-group.ios.css +19 -43
- package/dist/collection/components/radio-group/radio-group.js +7 -48
- package/dist/collection/components/radio-group/radio-group.md.css +19 -43
- package/dist/collection/components/range/range.ios.css +85 -128
- package/dist/collection/components/range/range.js +10 -16
- package/dist/collection/components/range/range.md.css +85 -128
- package/dist/collection/components/refresher/refresher.ios.css +1 -14
- package/dist/collection/components/refresher/refresher.js +8 -11
- package/dist/collection/components/refresher/refresher.md.css +2 -15
- package/dist/collection/components/refresher-content/refresher-content.js +7 -28
- package/dist/collection/components/reorder/reorder.ios.css +0 -6
- package/dist/collection/components/reorder/reorder.js +6 -33
- package/dist/collection/components/reorder/reorder.md.css +0 -6
- package/dist/collection/components/reorder-group/reorder-group.css +0 -6
- package/dist/collection/components/reorder-group/reorder-group.js +4 -8
- package/dist/collection/components/ripple-effect/{ripple-effect.common.css → ripple-effect.css} +1 -7
- package/dist/collection/components/ripple-effect/ripple-effect.js +6 -14
- package/dist/collection/components/route/route.js +0 -4
- package/dist/collection/components/router/router.js +0 -4
- package/dist/collection/components/router-link/router-link.css +2 -8
- package/dist/collection/components/router-link/router-link.js +5 -9
- package/dist/collection/components/router-outlet/router-outlet.css +1 -7
- package/dist/collection/components/router-outlet/router-outlet.js +40 -10
- package/dist/collection/components/row/row.css +0 -16
- package/dist/collection/components/row/row.js +2 -9
- package/dist/collection/components/searchbar/searchbar.ios.css +18 -56
- package/dist/collection/components/searchbar/searchbar.js +33 -180
- package/dist/collection/components/searchbar/searchbar.md.css +18 -56
- package/dist/collection/components/segment/segment.ios.css +2 -45
- package/dist/collection/components/segment/segment.js +8 -11
- package/dist/collection/components/segment/segment.md.css +2 -45
- package/dist/collection/components/segment-button/segment-button.ios.css +105 -146
- package/dist/collection/components/segment-button/segment-button.js +8 -11
- package/dist/collection/components/segment-button/segment-button.md.css +107 -148
- package/dist/collection/components/segment-content/segment-content.js +1 -1
- package/dist/collection/components/segment-view/segment-view.ios.css +0 -6
- package/dist/collection/components/segment-view/segment-view.js +4 -6
- package/dist/collection/components/segment-view/segment-view.md.css +0 -6
- package/dist/collection/components/select/select.ios.css +176 -315
- package/dist/collection/components/select/select.js +53 -185
- package/dist/collection/components/select/select.md.css +178 -331
- package/dist/collection/components/select-modal/select-modal.ios.css +0 -18
- package/dist/collection/components/select-modal/select-modal.js +5 -49
- package/dist/collection/components/select-modal/select-modal.md.css +3 -7
- package/dist/collection/components/select-option/select-option.js +2 -9
- package/dist/collection/components/select-popover/select-popover.ios.css +0 -18
- package/dist/collection/components/select-popover/select-popover.js +4 -12
- package/dist/collection/components/select-popover/select-popover.md.css +0 -18
- package/dist/collection/components/skeleton-text/skeleton-text.css +0 -6
- package/dist/collection/components/skeleton-text/skeleton-text.js +5 -9
- package/dist/collection/components/spinner/{spinner.ionic.css → spinner.css} +10 -78
- package/dist/collection/components/spinner/spinner.js +6 -47
- package/dist/collection/components/split-pane/split-pane.ios.css +2 -20
- package/dist/collection/components/split-pane/split-pane.js +8 -14
- package/dist/collection/components/split-pane/split-pane.md.css +2 -20
- package/dist/collection/components/tab/tab.js +2 -6
- package/dist/collection/components/tab-bar/tab-bar.ios.css +43 -71
- package/dist/collection/components/tab-bar/tab-bar.js +13 -171
- package/dist/collection/components/tab-bar/tab-bar.md.css +43 -71
- package/dist/collection/components/tab-button/tab-button.ios.css +95 -171
- package/dist/collection/components/tab-button/tab-button.js +9 -54
- package/dist/collection/components/tab-button/tab-button.md.css +93 -137
- package/dist/collection/components/tabs/tabs.css +1 -7
- package/dist/collection/components/tabs/tabs.js +1 -4
- package/dist/collection/components/text/text.css +0 -6
- package/dist/collection/components/text/text.js +6 -7
- package/dist/collection/components/textarea/textarea.ios.css +158 -298
- package/dist/collection/components/textarea/textarea.js +24 -162
- package/dist/collection/components/textarea/textarea.md.css +159 -312
- package/dist/collection/components/thumbnail/thumbnail.css +0 -6
- package/dist/collection/components/thumbnail/thumbnail.js +2 -9
- package/dist/collection/components/title/title.ios.css +4 -32
- package/dist/collection/components/title/title.js +7 -13
- package/dist/collection/components/title/title.md.css +4 -32
- package/dist/collection/components/toast/animations/utils.js +1 -1
- package/dist/collection/components/toast/toast.ios.css +45 -84
- package/dist/collection/components/toast/toast.js +13 -76
- package/dist/collection/components/toast/toast.md.css +45 -84
- package/dist/collection/components/toggle/toggle.ios.css +131 -247
- package/dist/collection/components/toggle/toggle.js +20 -87
- package/dist/collection/components/toggle/toggle.md.css +131 -244
- package/dist/collection/components/toolbar/toolbar.ios.css +47 -90
- package/dist/collection/components/toolbar/toolbar.js +13 -218
- package/dist/collection/components/toolbar/toolbar.md.css +47 -90
- package/dist/collection/global/ionic-global.js +13 -241
- package/dist/collection/index.js +1 -1
- package/dist/collection/utils/focus-trap.js +2 -13
- package/dist/collection/utils/focus-visible.js +0 -22
- package/dist/collection/utils/forms/validity.js +0 -31
- package/dist/collection/utils/framework-delegate.js +1 -3
- package/dist/collection/utils/hardware-back-button.js +0 -15
- package/dist/collection/utils/helpers.js +3 -57
- package/dist/collection/utils/keyboard/keyboard-controller.js +1 -3
- package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
- package/dist/collection/utils/menu-controller/animations/push.js +1 -2
- package/dist/collection/utils/menu-controller/animations/reveal.js +1 -2
- package/dist/collection/utils/overlays.js +31 -97
- package/dist/collection/utils/test/playwright/drag-element.js +4 -3
- package/dist/collection/utils/test/playwright/generator.js +23 -48
- package/dist/collection/utils/test/playwright/page/utils/goto.js +5 -14
- package/dist/collection/utils/test/playwright/page/utils/set-content.js +3 -26
- package/dist/collection/utils/theme.js +1 -25
- package/dist/collection/utils/transition/ios.transition.js +0 -1
- package/dist/docs.json +705 -9722
- package/dist/esm/{animation-Cqe2x-Pt.js → animation-CnGMT4ji.js} +2 -2
- package/dist/esm/{app-globals-Dk1rB3aE.js → app-globals-DhZjtldk.js} +1 -1
- package/dist/esm/{button-active-g6ZnZzDZ.js → button-active-BBx21brx.js} +2 -2
- package/dist/esm/{capacitor-C4lYa1nV.js → capacitor-CFERIeaU.js} +1 -1
- package/dist/esm/{config-BvDxfLa-.js → config-TO1rZH52.js} +1 -1
- package/dist/esm/{data-BNKYavC3.js → data-B9iGR5YO.js} +6 -6
- package/dist/{cjs/focus-visible-BIj-I3-C.js → esm/focus-visible-BmVRXR1y.js} +1 -27
- package/dist/esm/{framework-delegate-CjVwn_KZ.js → framework-delegate-CyxE1S_P.js} +2 -4
- package/dist/esm/{haptic-_88k1V5U.js → haptic-DzAMWJuk.js} +1 -1
- package/dist/esm/hardware-back-button-CTe4XmL7.js +115 -0
- package/dist/esm/{helpers-Do7zwvM1.js → helpers-Tl8jw6S2.js} +5 -58
- package/dist/esm/{index-D2tu5BUg.js → index-AlrZKoWR.js} +1 -2
- package/dist/esm/{index-CGthURny.js → index-B-hkiOUh.js} +4 -4
- package/dist/esm/{index-hpH08p5s.js → index-B2KwgBLx.js} +11 -11
- package/dist/esm/{index-C5t9-ciC.js → index-BtUdxPjv.js} +3 -4
- package/dist/esm/{index-Omi_TcwW.js → index-IGIE5vDm.js} +4 -41
- package/dist/esm/index-ZjP4CjeZ.js +7 -0
- package/dist/esm/{index-BmkLokUL.js → index-hW6eNZ3o.js} +2 -2
- package/dist/esm/index.js +14 -13
- package/dist/esm/{input-shims-vDjCsx95.js → input-shims-AaDhOpKN.js} +6 -7
- package/dist/esm/{input.utils-B9Q5xHp6.js → input.utils-Bxa_DQ7-.js} +3 -3
- package/dist/esm/ion-accordion_2.entry.js +29 -61
- package/dist/esm/ion-action-sheet.entry.js +26 -25
- package/dist/esm/ion-alert.entry.js +27 -25
- package/dist/esm/ion-app_8.entry.js +175 -296
- package/dist/esm/ion-avatar_3.entry.js +13 -125
- package/dist/esm/ion-back-button.entry.js +22 -31
- package/dist/esm/ion-backdrop.entry.js +7 -10
- package/dist/esm/ion-breadcrumb_2.entry.js +18 -54
- package/dist/esm/ion-button_2.entry.js +22 -59
- package/dist/esm/ion-card_5.entry.js +33 -55
- package/dist/esm/ion-checkbox.entry.js +16 -34
- package/dist/esm/ion-chip.entry.js +9 -50
- package/dist/esm/ion-col_3.entry.js +57 -54
- package/dist/esm/ion-datetime-button.entry.js +9 -13
- package/dist/esm/{ion-datetime_3.entry.js → ion-datetime.entry.js} +33 -754
- package/dist/esm/ion-fab_3.entry.js +28 -44
- package/dist/esm/ion-img.entry.js +4 -8
- package/dist/esm/ion-infinite-scroll_2.entry.js +16 -91
- package/dist/esm/ion-input-otp.entry.js +9 -74
- package/dist/esm/ion-input-password-toggle.entry.js +15 -53
- package/dist/esm/ion-input.entry.js +34 -124
- package/dist/esm/ion-item-option_3.entry.js +21 -186
- package/dist/esm/ion-item_8.entry.js +49 -116
- package/dist/esm/ion-loading.entry.js +22 -20
- package/dist/esm/ion-menu_3.entry.js +29 -47
- package/dist/esm/ion-modal.entry.js +95 -215
- package/dist/esm/ion-nav_2.entry.js +11 -14
- package/dist/esm/ion-picker-column-option.entry.js +8 -12
- package/dist/esm/ion-picker-column.entry.js +14 -14
- package/dist/esm/ion-picker.entry.js +6 -10
- package/dist/esm/ion-popover.entry.js +23 -21
- package/dist/esm/ion-progress-bar.entry.js +9 -27
- package/dist/esm/ion-radio_2.entry.js +17 -35
- package/dist/esm/ion-range.entry.js +13 -20
- package/dist/esm/ion-refresher_2.entry.js +21 -39
- package/dist/esm/ion-reorder_2.entry.js +14 -38
- package/dist/esm/ion-ripple-effect.entry.js +7 -15
- package/dist/esm/ion-route_4.entry.js +9 -10
- package/dist/esm/ion-searchbar.entry.js +24 -137
- package/dist/esm/ion-segment-content.entry.js +2 -2
- package/dist/esm/ion-segment-view.entry.js +3 -6
- package/dist/esm/ion-segment_2.entry.js +16 -23
- package/dist/esm/ion-select-modal.entry.js +11 -34
- package/dist/esm/ion-select_3.entry.js +42 -142
- package/dist/esm/ion-spinner.entry.js +8 -30
- package/dist/esm/ion-split-pane.entry.js +9 -12
- package/dist/esm/ion-tab-bar_2.entry.js +23 -147
- package/dist/esm/ion-tab_2.entry.js +7 -8
- package/dist/esm/ion-text.entry.js +7 -7
- package/dist/esm/ion-textarea.entry.js +23 -137
- package/dist/esm/ion-toast.entry.js +21 -44
- package/dist/esm/ion-toggle.entry.js +27 -20727
- package/dist/esm/ionic-global-DfbeLwcV.js +146 -0
- package/dist/esm/ionic.js +5 -5
- package/dist/esm/{ios.transition-CzSncKQg.js → ios.transition--aMF-pDH.js} +5 -7
- package/dist/esm/{keyboard-Cpw6xVLJ.js → keyboard-CUw4ekVy.js} +1 -1
- package/dist/esm/{keyboard-controller-CAc33ylR.js → keyboard-controller-BaaVITYt.js} +3 -5
- package/dist/esm/{keyboard-DJpS2IGK.js → keyboard-ywgs5efA.js} +3 -4
- package/dist/esm/loader.js +5 -5
- package/dist/esm/{md.transition-DIsWqYBZ.js → md.transition-BEVbfm8j.js} +5 -6
- package/dist/esm/{notch-controller-DiBq57w8.js → notch-controller-DAcvKU57.js} +2 -2
- package/dist/esm/{overlays-rwDDzEs4.js → overlays-BDGzTP3L.js} +39 -114
- package/dist/esm/{status-tap-fYFdZg6z.js → status-tap-BfJqFSLF.js} +3 -4
- package/dist/esm/{swipe-back-BzGqTrrq.js → swipe-back-BZBFwTQV.js} +2 -3
- package/dist/esm/{theme-DaJxRxSQ.js → theme-DiVJyqlX.js} +1 -25
- package/dist/esm/validity-DJztqcrH.js +17 -0
- package/dist/html.html-data.json +142 -2557
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-04535ede.entry.js +4 -0
- package/dist/ionic/p-045a6a42.entry.js +4 -0
- package/dist/ionic/p-18b5d5ff.entry.js +4 -0
- package/dist/ionic/p-19adf785.entry.js +4 -0
- package/dist/ionic/p-1d2163ad.entry.js +4 -0
- package/dist/ionic/p-30f5ad9e.entry.js +4 -0
- package/dist/ionic/p-34b3a309.entry.js +4 -0
- package/dist/ionic/p-370a60ee.entry.js +4 -0
- package/dist/ionic/p-3b58996c.entry.js +4 -0
- package/dist/ionic/p-460fbe5b.entry.js +4 -0
- package/dist/ionic/p-4c8d8c55.entry.js +4 -0
- package/dist/ionic/p-4ea520a4.entry.js +4 -0
- package/dist/ionic/p-4ed63122.entry.js +4 -0
- package/dist/ionic/p-4f3a8ccf.entry.js +4 -0
- package/dist/ionic/p-528d4c1d.entry.js +4 -0
- package/dist/ionic/p-5430ae94.entry.js +4 -0
- package/dist/ionic/p-66494f9b.entry.js +4 -0
- package/dist/ionic/p-6af16209.entry.js +4 -0
- package/dist/ionic/p-6b97f2a3.entry.js +4 -0
- package/dist/ionic/p-6da572e7.entry.js +4 -0
- package/dist/ionic/p-6e99ae8d.entry.js +4 -0
- package/dist/ionic/p-7f269aff.entry.js +4 -0
- package/dist/ionic/p-7f9db51b.entry.js +4 -0
- package/dist/ionic/p-87125490.entry.js +4 -0
- package/dist/ionic/p-898f9d11.entry.js +4 -0
- package/dist/ionic/p-8a3a936b.entry.js +4 -0
- package/dist/ionic/p-9833cf63.entry.js +4 -0
- package/dist/ionic/p-9eeaBrnk.js +4 -0
- package/dist/ionic/p-9fae83d8.entry.js +4 -0
- package/dist/ionic/p-AlrZKoWR.js +4 -0
- package/dist/ionic/{p-DKWXAwlR.js → p-B8xlpH8p.js} +1 -1
- package/dist/ionic/p-BAt5H1ac.js +4 -0
- package/dist/ionic/p-BW_TRJm8.js +4 -0
- package/dist/ionic/p-BmVRXR1y.js +4 -0
- package/dist/ionic/p-Bum7H1fw.js +4 -0
- package/{components/p-oF-CwZ0b.js → dist/ionic/p-BvFYtOdE.js} +1 -1
- package/dist/ionic/p-BxIcPWoV.js +4 -0
- package/dist/ionic/p-C0JvVFMv.js +4 -0
- package/dist/ionic/p-CGmVTdWh.js +4 -0
- package/dist/ionic/p-CIGNaXM1.js +4 -0
- package/{components/p-BLysWQA1.js → dist/ionic/p-CKvCXMs9.js} +1 -1
- package/dist/ionic/p-CYbRmDdy.js +4 -0
- package/dist/ionic/p-CYvM5g3q.js +4 -0
- package/dist/ionic/p-CmFz1Mjc.js +4 -0
- package/dist/ionic/p-Csx_Ej2k.js +4 -0
- package/dist/ionic/p-CtA-yJYy.js +4 -0
- package/dist/ionic/p-CtWGkNnJ.js +4 -0
- package/{components/p-9gxM3tAr.js → dist/ionic/p-D13Eaw-8.js} +1 -1
- package/dist/ionic/p-D8HJQ1qq.js +4 -0
- package/dist/ionic/p-DB_iPQC-.js +4 -0
- package/dist/ionic/p-DJztqcrH.js +4 -0
- package/dist/ionic/p-DLbbmF9h.js +4 -0
- package/dist/ionic/p-DiVJyqlX.js +4 -0
- package/{components/p-B636tzQ7.js → dist/ionic/p-DjriolRs.js} +1 -1
- package/dist/ionic/p-DtVZDHlS.js +4 -0
- package/dist/ionic/p-IGIE5vDm.js +5 -0
- package/dist/ionic/p-NFFyoJ4Q.js +4 -0
- package/dist/ionic/p-ZjP4CjeZ.js +4 -0
- package/dist/ionic/p-a39db980.entry.js +4 -0
- package/dist/ionic/p-a805674e.entry.js +4 -0
- package/dist/ionic/p-abca709f.entry.js +4 -0
- package/dist/ionic/p-b553828c.entry.js +4 -0
- package/dist/ionic/p-b5e3e1f7.entry.js +4 -0
- package/dist/ionic/p-b6e0ff03.entry.js +4 -0
- package/dist/ionic/p-b6f16f18.entry.js +4 -0
- package/dist/ionic/p-c4c39b36.entry.js +4 -0
- package/dist/ionic/p-c744307d.entry.js +4 -0
- package/dist/ionic/p-c8f15bd8.entry.js +4 -0
- package/dist/ionic/p-ca31010f.entry.js +4 -0
- package/dist/ionic/p-cce0cd26.entry.js +4 -0
- package/dist/ionic/p-cdd9bb6c.entry.js +4 -0
- package/dist/ionic/p-d92ba088.entry.js +4 -0
- package/dist/ionic/p-dc198c3a.entry.js +4 -0
- package/dist/ionic/p-dead316d.entry.js +4 -0
- package/dist/ionic/p-e663bc5a.entry.js +4 -0
- package/dist/ionic/p-e6cedcd7.entry.js +4 -0
- package/dist/ionic/p-e9dd191b.entry.js +4 -0
- package/dist/ionic/p-ede28b71.entry.js +4 -0
- package/dist/ionic/p-f17d05e3.entry.js +4 -0
- package/dist/ionic/p-f5dfb9a3.entry.js +4 -0
- package/dist/ionic/p-f7762013.entry.js +4 -0
- package/dist/ionic/p-fed27c64.entry.js +4 -0
- package/dist/ionic/{p-qYp06FUk.js → p-gbVXD275.js} +1 -1
- package/dist/ionic/p-hNN3VvaC.js +4 -0
- package/dist/types/components/accordion/accordion.d.ts +3 -6
- package/dist/types/components/accordion-group/accordion-group.d.ts +1 -12
- package/dist/types/components/action-sheet/action-sheet-interface.d.ts +7 -3
- package/dist/types/components/action-sheet/action-sheet.d.ts +2 -3
- package/dist/types/components/alert/alert-interface.d.ts +7 -3
- package/dist/types/components/alert/alert.d.ts +2 -3
- package/dist/types/components/app/app.d.ts +5 -4
- package/dist/types/components/avatar/avatar.d.ts +0 -32
- package/dist/types/components/back-button/back-button.d.ts +1 -2
- package/dist/types/components/backdrop/backdrop.d.ts +0 -4
- package/dist/types/components/badge/badge.d.ts +1 -34
- package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -4
- package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
- package/dist/types/components/button/button.d.ts +8 -23
- package/dist/types/components/buttons/buttons.d.ts +1 -5
- package/dist/types/components/card/card.d.ts +1 -8
- package/dist/types/components/card-content/card-content.d.ts +1 -2
- package/dist/types/components/card-header/card-header.d.ts +2 -3
- package/dist/types/components/card-subtitle/card-subtitle.d.ts +1 -2
- package/dist/types/components/card-title/card-title.d.ts +1 -2
- package/dist/types/components/checkbox/checkbox.d.ts +4 -14
- package/dist/types/components/chip/chip.d.ts +1 -26
- package/dist/types/components/col/col.d.ts +5 -52
- package/dist/types/components/content/content.d.ts +0 -3
- package/dist/types/components/datetime/datetime.d.ts +1 -27
- package/dist/types/components/datetime/utils/data.d.ts +5 -5
- package/dist/types/components/datetime-button/datetime-button.d.ts +1 -2
- package/dist/types/components/fab/fab.d.ts +0 -4
- package/dist/types/components/fab-button/fab-button.d.ts +3 -5
- package/dist/types/components/fab-list/fab-list.d.ts +0 -4
- package/dist/types/components/footer/footer.d.ts +3 -4
- package/dist/types/components/grid/grid.d.ts +0 -4
- package/dist/types/components/header/header.d.ts +3 -9
- package/dist/types/components/header/header.utils.d.ts +3 -3
- package/dist/types/components/img/img.d.ts +0 -3
- package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +0 -21
- package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +0 -4
- package/dist/types/components/input/input.d.ts +5 -31
- package/dist/types/components/input-otp/input-otp.d.ts +0 -37
- package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +0 -2
- package/dist/types/components/item/item.d.ts +4 -11
- package/dist/types/components/item-divider/item-divider.d.ts +1 -2
- package/dist/types/components/item-group/item-group.d.ts +0 -4
- package/dist/types/components/item-option/item-option.d.ts +1 -18
- package/dist/types/components/item-options/item-options.d.ts +0 -4
- package/dist/types/components/item-sliding/item-sliding.d.ts +1 -32
- package/dist/types/components/label/label.d.ts +1 -2
- package/dist/types/components/list/list.d.ts +1 -15
- package/dist/types/components/list-header/list-header.d.ts +1 -2
- package/dist/types/components/loading/loading-interface.d.ts +7 -2
- package/dist/types/components/loading/loading.d.ts +2 -3
- package/dist/types/components/menu/menu.d.ts +0 -3
- package/dist/types/components/menu-button/menu-button.d.ts +1 -3
- package/dist/types/components/menu-toggle/menu-toggle.d.ts +0 -3
- package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
- package/dist/types/components/modal/modal-interface.d.ts +7 -4
- package/dist/types/components/modal/modal.d.ts +1 -11
- package/dist/types/components/nav/nav-interface.d.ts +1 -9
- package/dist/types/components/nav/nav.d.ts +1 -5
- package/dist/types/components/nav-link/nav-link.d.ts +0 -4
- package/dist/types/components/note/note.d.ts +1 -2
- package/dist/types/components/picker/picker.d.ts +1 -2
- package/dist/types/components/picker-column/picker-column.d.ts +1 -2
- package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -4
- package/dist/types/components/popover/popover-interface.d.ts +6 -3
- package/dist/types/components/popover/popover.d.ts +5 -6
- package/dist/types/components/progress-bar/progress-bar.d.ts +1 -10
- package/dist/types/components/radio/radio.d.ts +1 -2
- package/dist/types/components/radio-group/radio-group.d.ts +0 -12
- package/dist/types/components/range/range.d.ts +1 -2
- package/dist/types/components/refresher/refresher.d.ts +1 -2
- package/dist/types/components/refresher-content/refresher-content.d.ts +0 -4
- package/dist/types/components/reorder/reorder.d.ts +0 -9
- package/dist/types/components/reorder-group/reorder-group.d.ts +0 -4
- package/dist/types/components/ripple-effect/ripple-effect.d.ts +0 -4
- package/dist/types/components/route/route.d.ts +0 -4
- package/dist/types/components/router/router.d.ts +0 -4
- package/dist/types/components/router-link/router-link.d.ts +0 -4
- package/dist/types/components/router-outlet/router-outlet.d.ts +8 -4
- package/dist/types/components/row/row.d.ts +0 -4
- package/dist/types/components/searchbar/searchbar.d.ts +9 -51
- package/dist/types/components/segment/segment.d.ts +1 -2
- package/dist/types/components/segment-button/segment-button.d.ts +1 -2
- package/dist/types/components/select/select.d.ts +13 -49
- package/dist/types/components/select-modal/select-modal.d.ts +0 -8
- package/dist/types/components/select-option/select-option.d.ts +0 -4
- package/dist/types/components/select-popover/select-popover.d.ts +0 -3
- package/dist/types/components/skeleton-text/skeleton-text.d.ts +0 -4
- package/dist/types/components/spinner/spinner.d.ts +0 -15
- package/dist/types/components/split-pane/split-pane.d.ts +0 -4
- package/dist/types/components/tab/tab.d.ts +0 -4
- package/dist/types/components/tab-bar/tab-bar.d.ts +2 -37
- package/dist/types/components/tab-button/tab-button.d.ts +1 -12
- package/dist/types/components/tabs/tabs.d.ts +0 -3
- package/dist/types/components/text/text.d.ts +1 -2
- package/dist/types/components/textarea/textarea.d.ts +4 -53
- package/dist/types/components/thumbnail/thumbnail.d.ts +0 -4
- package/dist/types/components/title/title.d.ts +0 -4
- package/dist/types/components/toast/animations/utils.d.ts +2 -2
- package/dist/types/components/toast/toast-interface.d.ts +7 -3
- package/dist/types/components/toast/toast.d.ts +2 -19
- package/dist/types/components/toggle/toggle.d.ts +1 -15
- package/dist/types/components/toolbar/toolbar.d.ts +3 -43
- package/dist/types/components.d.ts +256 -2031
- package/dist/types/global/ionic-global.d.ts +2 -28
- package/dist/types/index.d.ts +1 -1
- package/dist/types/interface.d.ts +0 -4
- package/dist/types/utils/config.d.ts +2 -114
- package/dist/types/utils/focus-trap.d.ts +1 -1
- package/dist/types/utils/focus-visible.d.ts +0 -13
- package/dist/types/utils/forms/validity.d.ts +0 -7
- package/dist/types/utils/helpers.d.ts +0 -11
- package/dist/types/utils/overlays-interface.d.ts +1 -31
- package/dist/types/utils/overlays.d.ts +12 -10
- package/dist/types/utils/test/playwright/drag-element.d.ts +1 -1
- package/dist/types/utils/test/playwright/generator.d.ts +2 -31
- package/dist/types/utils/theme.d.ts +0 -9
- package/hydrate/index.js +1146 -25055
- package/hydrate/index.mjs +1146 -25055
- package/package.json +5 -10
- package/components/ion-divider.d.ts +0 -11
- package/components/ion-divider.js +0 -4
- package/components/ion-picker-legacy-column.d.ts +0 -11
- package/components/ion-picker-legacy-column.js +0 -4
- package/components/ion-picker-legacy.d.ts +0 -11
- package/components/ion-picker-legacy.js +0 -4
- package/components/p-0sa2JgYA.js +0 -4
- package/components/p-3Ni1Z654.js +0 -4
- package/components/p-BAJR2rtd.js +0 -4
- package/components/p-BCDEEm9n.js +0 -4
- package/components/p-BDndEqui.js +0 -4
- package/components/p-BDqjX7Z_.js +0 -4
- package/components/p-BErKjY03.js +0 -4
- package/components/p-BFCM_1oE.js +0 -4
- package/components/p-BO4aickU.js +0 -4
- package/components/p-BU8N7ZrK.js +0 -4
- package/components/p-BYSs-jZz.js +0 -4
- package/components/p-BaPtaYEC.js +0 -4
- package/components/p-BcbmT6b3.js +0 -4
- package/components/p-BeVlsaLA.js +0 -4
- package/components/p-BfHB6wX_.js +0 -4
- package/components/p-BhfW3d9j.js +0 -4
- package/components/p-BjW8SOqw.js +0 -4
- package/components/p-Bp__mr16.js +0 -4
- package/components/p-BqDiJgC_.js +0 -4
- package/components/p-Br3pqTOz.js +0 -4
- package/components/p-BtAlyZ0b.js +0 -4
- package/components/p-C-_EGKki.js +0 -4
- package/components/p-C00Y_WJv.js +0 -4
- package/components/p-C2cZvGcF.js +0 -4
- package/components/p-CKfNwyAb.js +0 -4
- package/components/p-CVBkx7m1.js +0 -4
- package/components/p-Cb9imMZh.js +0 -4
- package/components/p-CdYTq34D.js +0 -4
- package/components/p-CeYwuysM.js +0 -4
- package/components/p-Cf9-xP7P.js +0 -4
- package/components/p-CnwZE7CW.js +0 -4
- package/components/p-CoarhFWH.js +0 -4
- package/components/p-CtiqM786.js +0 -4
- package/components/p-D1bKIW7n.js +0 -4
- package/components/p-D1t981Ih.js +0 -4
- package/components/p-D5lMX0xt.js +0 -4
- package/components/p-D8NAdIPC.js +0 -4
- package/components/p-DAeMHNER.js +0 -4
- package/components/p-DDw-NYxz.js +0 -4
- package/components/p-DVcs-2q3.js +0 -4
- package/components/p-DWhesBL8.js +0 -4
- package/components/p-DaJxRxSQ.js +0 -4
- package/components/p-DbmwH3zj.js +0 -4
- package/components/p-Dhi5xtNS.js +0 -4
- package/components/p-DlHXJAF8.js +0 -4
- package/components/p-DrhTPUzN.js +0 -4
- package/components/p-GnGGIfCd.js +0 -4
- package/components/p-XegQjlzJ.js +0 -4
- package/components/p-fIOYmaqA.js +0 -4
- package/components/p-lIOqnNXn.js +0 -4
- package/components/p-qx-oKGQ-.js +0 -4
- package/components/p-sK-FK9CT.js +0 -4
- package/components/p-t98_NeNv.js +0 -4
- package/components/p-vCpF32Z7.js +0 -4
- package/components/p-vXpMhGrs.js +0 -4
- package/components/p-wCDzv5Q8.js +0 -4
- package/css/ionic/bundle.ionic.css +0 -1
- package/css/ionic/bundle.ionic.css.map +0 -1
- package/css/ionic/core.ionic.css +0 -1
- package/css/ionic/core.ionic.css.map +0 -1
- package/css/ionic/global.bundle.ionic.css +0 -1
- package/css/ionic/global.bundle.ionic.css.map +0 -1
- package/css/ionic/ionic-swiper.ionic.css +0 -1
- package/css/ionic/ionic-swiper.ionic.css.map +0 -1
- package/css/ionic/link.ionic.css +0 -1
- package/css/ionic/link.ionic.css.map +0 -1
- package/css/ionic/structure.ionic.css +0 -1
- package/css/ionic/structure.ionic.css.map +0 -1
- package/css/ionic/typography.ionic.css +0 -1
- package/css/ionic/typography.ionic.css.map +0 -1
- package/css/ionic/utils.bundle.ionic.css +0 -1
- package/css/ionic/utils.bundle.ionic.css.map +0 -1
- package/dist/cjs/caret-down-vtVgfXIs.js +0 -8
- package/dist/cjs/caret-left-CxZXLRv5.js +0 -8
- package/dist/cjs/caret-right-CRCgv98E.js +0 -8
- package/dist/cjs/ion-divider.cjs.entry.js +0 -51
- package/dist/cjs/ionic-global-CSEbHD_F.js +0 -519
- package/dist/cjs/list-a-7GSA6K.js +0 -8
- package/dist/cjs/validity-QmuwEptc.js +0 -51
- package/dist/cjs/x-BTF99yFH.js +0 -8
- package/dist/collection/components/accordion/accordion.ionic.css +0 -201
- package/dist/collection/components/accordion-group/accordion-group.ionic.css +0 -93
- package/dist/collection/components/avatar/avatar.ionic.css +0 -391
- package/dist/collection/components/backdrop/backdrop.ionic.css +0 -109
- package/dist/collection/components/badge/badge.ionic.css +0 -275
- package/dist/collection/components/button/button.ionic.css +0 -646
- package/dist/collection/components/buttons/buttons.ionic.css +0 -97
- package/dist/collection/components/card/card.ionic.css +0 -144
- package/dist/collection/components/card-content/card-content.ionic.css +0 -89
- package/dist/collection/components/card-header/card-header.ionic.css +0 -85
- package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +0 -144
- package/dist/collection/components/checkbox/checkbox.ionic.css +0 -539
- package/dist/collection/components/chip/chip.ionic.css +0 -217
- package/dist/collection/components/datetime/datetime.ionic.css +0 -703
- package/dist/collection/components/divider/divider.ionic.css +0 -148
- package/dist/collection/components/divider/divider.ios.css +0 -87
- package/dist/collection/components/divider/divider.js +0 -94
- package/dist/collection/components/divider/divider.md.css +0 -87
- package/dist/collection/components/header/header.ionic.css +0 -97
- package/dist/collection/components/input/input.ionic.css +0 -889
- package/dist/collection/components/input-otp/input-otp.ionic.css +0 -371
- package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +0 -78
- package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +0 -61
- package/dist/collection/components/item/item.ionic.css +0 -508
- package/dist/collection/components/item-option/item-option.ionic.css +0 -278
- package/dist/collection/components/item-options/item-options.ionic.css +0 -221
- package/dist/collection/components/list/list.ionic.css +0 -212
- package/dist/collection/components/list-header/list-header.ionic.css +0 -190
- package/dist/collection/components/menu-button/menu-button.ionic.css +0 -236
- package/dist/collection/components/modal/animations/ionic.enter.js +0 -40
- package/dist/collection/components/modal/animations/ionic.leave.js +0 -28
- package/dist/collection/components/modal/modal.ionic.css +0 -247
- package/dist/collection/components/picker-legacy/animations/ios.enter.js +0 -27
- package/dist/collection/components/picker-legacy/animations/ios.leave.js +0 -23
- package/dist/collection/components/picker-legacy/picker-interface.js +0 -1
- package/dist/collection/components/picker-legacy/picker.ios.css +0 -312
- package/dist/collection/components/picker-legacy/picker.js +0 -891
- package/dist/collection/components/picker-legacy/picker.md.css +0 -299
- package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -243
- package/dist/collection/components/picker-legacy-column/picker-column.js +0 -422
- package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -234
- package/dist/collection/components/picker-legacy-column/test/test.utils.js +0 -43
- package/dist/collection/components/popover/popover.ionic.css +0 -274
- package/dist/collection/components/progress-bar/progress-bar.ionic.css +0 -287
- package/dist/collection/components/radio/radio.ionic.css +0 -422
- package/dist/collection/components/radio-group/radio-group.ionic.css +0 -119
- package/dist/collection/components/range/range.ionic.css +0 -567
- package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +0 -215
- package/dist/collection/components/searchbar/searchbar.ionic.css +0 -626
- package/dist/collection/components/segment/segment.ionic.css +0 -115
- package/dist/collection/components/segment-button/segment-button.ionic.css +0 -353
- package/dist/collection/components/select/select.ionic.css +0 -777
- package/dist/collection/components/select-modal/select-modal.ionic.css +0 -130
- package/dist/collection/components/spinner/spinner.native.css +0 -199
- package/dist/collection/components/tab-bar/tab-bar.ionic.css +0 -227
- package/dist/collection/components/tab-button/tab-button.ionic.css +0 -348
- package/dist/collection/components/textarea/textarea.ionic.css +0 -898
- package/dist/collection/components/title/title.ionic.css +0 -127
- package/dist/collection/components/toast/toast.ionic.css +0 -394
- package/dist/collection/components/toggle/toggle.ionic.css +0 -508
- package/dist/collection/components/toolbar/test/image.svg +0 -1
- package/dist/collection/components/toolbar/toolbar.ionic.css +0 -249
- package/dist/collection/utils/icon.js +0 -45
- package/dist/esm/caret-down-D1t981Ih.js +0 -6
- package/dist/esm/caret-left-fIOYmaqA.js +0 -6
- package/dist/esm/caret-right-BYSs-jZz.js +0 -6
- package/dist/esm/ion-divider.entry.js +0 -49
- package/dist/esm/ionic-global-CAZb-5i-.js +0 -508
- package/dist/esm/list-Dhi5xtNS.js +0 -6
- package/dist/esm/validity-BjW8SOqw.js +0 -48
- package/dist/esm/x-BDqjX7Z_.js +0 -6
- package/dist/ionic/p-07d3388f.entry.js +0 -4
- package/dist/ionic/p-092e92b0.entry.js +0 -4
- package/dist/ionic/p-09338ca0.entry.js +0 -4
- package/dist/ionic/p-11nqcMM3.js +0 -4
- package/dist/ionic/p-139d02eb.entry.js +0 -4
- package/dist/ionic/p-1855fcb6.entry.js +0 -4
- package/dist/ionic/p-228b6a9c.entry.js +0 -4
- package/dist/ionic/p-2311e660.entry.js +0 -4
- package/dist/ionic/p-2aa44c65.entry.js +0 -4
- package/dist/ionic/p-2bf931ae.entry.js +0 -4
- package/dist/ionic/p-2effd05d.entry.js +0 -4
- package/dist/ionic/p-3093958a.entry.js +0 -4
- package/dist/ionic/p-37ccbee4.entry.js +0 -4
- package/dist/ionic/p-3aba19e2.entry.js +0 -4
- package/dist/ionic/p-3bf01c2c.entry.js +0 -4
- package/dist/ionic/p-4091ad21.entry.js +0 -4
- package/dist/ionic/p-41914dc2.entry.js +0 -4
- package/dist/ionic/p-45825c2c.entry.js +0 -4
- package/dist/ionic/p-4610e447.entry.js +0 -4
- package/dist/ionic/p-488992b6.entry.js +0 -4
- package/dist/ionic/p-49c92227.entry.js +0 -4
- package/dist/ionic/p-4c864eb2.entry.js +0 -4
- package/dist/ionic/p-4ce731be.entry.js +0 -4
- package/dist/ionic/p-4e46439d.entry.js +0 -4
- package/dist/ionic/p-50d90690.entry.js +0 -4
- package/dist/ionic/p-5239fc93.entry.js +0 -4
- package/dist/ionic/p-575d972f.entry.js +0 -4
- package/dist/ionic/p-5ac21be2.entry.js +0 -4
- package/dist/ionic/p-5b7eaf60.entry.js +0 -4
- package/dist/ionic/p-64341e32.entry.js +0 -4
- package/dist/ionic/p-68c21b2a.entry.js +0 -4
- package/dist/ionic/p-6c8c37c2.entry.js +0 -4
- package/dist/ionic/p-6fbead83.entry.js +0 -4
- package/dist/ionic/p-7194f6fa.entry.js +0 -4
- package/dist/ionic/p-76d0e7ef.entry.js +0 -4
- package/dist/ionic/p-79ae0425.entry.js +0 -4
- package/dist/ionic/p-7d267dc6.entry.js +0 -4
- package/dist/ionic/p-7fd3311f.entry.js +0 -4
- package/dist/ionic/p-8516eb69.entry.js +0 -4
- package/dist/ionic/p-8uDL7fql.js +0 -4
- package/dist/ionic/p-91e242e4.entry.js +0 -4
- package/dist/ionic/p-98c34fd7.entry.js +0 -4
- package/dist/ionic/p-9b9b1450.entry.js +0 -4
- package/dist/ionic/p-BDqjX7Z_.js +0 -4
- package/dist/ionic/p-BYSs-jZz.js +0 -4
- package/dist/ionic/p-BjW8SOqw.js +0 -4
- package/dist/ionic/p-Bx0bt2Ar.js +0 -4
- package/dist/ionic/p-C2mpVKI1.js +0 -4
- package/dist/ionic/p-C4uUM9DM.js +0 -4
- package/dist/ionic/p-C5zxLmJ_.js +0 -4
- package/dist/ionic/p-CBV-BGvD.js +0 -4
- package/dist/ionic/p-CDn0uNJA.js +0 -4
- package/dist/ionic/p-CHE1xWbg.js +0 -4
- package/dist/ionic/p-CIk5QtPm.js +0 -4
- package/dist/ionic/p-CQKe4n56.js +0 -4
- package/dist/ionic/p-CVp2D--1.js +0 -4
- package/dist/ionic/p-CXqdKf1K.js +0 -4
- package/dist/ionic/p-Cb-0O4h8.js +0 -4
- package/dist/ionic/p-D1t981Ih.js +0 -4
- package/dist/ionic/p-D2tu5BUg.js +0 -4
- package/dist/ionic/p-DaJxRxSQ.js +0 -4
- package/dist/ionic/p-Dhi5xtNS.js +0 -4
- package/dist/ionic/p-DoyDJ2X5.js +0 -4
- package/dist/ionic/p-FvDKM4Ax.js +0 -4
- package/dist/ionic/p-Omi_TcwW.js +0 -5
- package/dist/ionic/p-SOASChNu.js +0 -4
- package/dist/ionic/p-a53a3ecc.entry.js +0 -4
- package/dist/ionic/p-acdc21a6.entry.js +0 -4
- package/dist/ionic/p-b00bbeb7.entry.js +0 -4
- package/dist/ionic/p-b0c54b4c.entry.js +0 -4
- package/dist/ionic/p-b8b20b7e.entry.js +0 -4
- package/dist/ionic/p-bc5713f7.entry.js +0 -4
- package/dist/ionic/p-caa1ce72.entry.js +0 -4
- package/dist/ionic/p-d54a76c6.entry.js +0 -4
- package/dist/ionic/p-d954cd19.entry.js +0 -4
- package/dist/ionic/p-e45be51f.entry.js +0 -4
- package/dist/ionic/p-edb0b0c8.entry.js +0 -4
- package/dist/ionic/p-f740c359.entry.js +0 -4
- package/dist/ionic/p-fIOYmaqA.js +0 -4
- package/dist/ionic/p-qETiT38a.js +0 -4
- package/dist/ionic/p-vXpMhGrs.js +0 -4
- package/dist/types/components/divider/divider.d.ts +0 -20
- package/dist/types/components/modal/animations/ionic.enter.d.ts +0 -6
- package/dist/types/components/modal/animations/ionic.leave.d.ts +0 -6
- package/dist/types/components/picker-legacy/animations/ios.enter.d.ts +0 -5
- package/dist/types/components/picker-legacy/animations/ios.leave.d.ts +0 -5
- package/dist/types/components/picker-legacy/picker-interface.d.ts +0 -52
- package/dist/types/components/picker-legacy/picker.d.ts +0 -159
- package/dist/types/components/picker-legacy-column/picker-column.d.ts +0 -46
- package/dist/types/components/picker-legacy-column/test/test.utils.d.ts +0 -9
- package/dist/types/utils/icon.d.ts +0 -26
- /package/dist/collection/components/{refresher-content/refresher-content.css → input-password-toggle/input-password-toggle.css} +0 -0
|
@@ -7,16 +7,16 @@ import { clamp, getElementRoot, raf } from "../../../utils/helpers";
|
|
|
7
7
|
import { FOCUS_TRAP_DISABLE_CLASS } from "../../../utils/overlays";
|
|
8
8
|
import { getBackdropValueForSheet } from "../utils";
|
|
9
9
|
import { calculateSpringStep, handleCanDismiss } from "./utils";
|
|
10
|
-
export const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], expandToScroll, getCurrentBreakpoint, onDismiss, onBreakpointChange,
|
|
10
|
+
export const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], expandToScroll, getCurrentBreakpoint, onDismiss, onBreakpointChange, onDragStart, onDragMove, onDragEnd) => {
|
|
11
11
|
// Defaults for the sheet swipe animation
|
|
12
12
|
const defaultBackdrop = [
|
|
13
13
|
{ offset: 0, opacity: 'var(--backdrop-opacity)' },
|
|
14
|
-
{ offset: 1, opacity:
|
|
14
|
+
{ offset: 1, opacity: 0.01 },
|
|
15
15
|
];
|
|
16
16
|
const customBackdrop = [
|
|
17
17
|
{ offset: 0, opacity: 'var(--backdrop-opacity)' },
|
|
18
|
-
{ offset: 1 - backdropBreakpoint, opacity:
|
|
19
|
-
{ offset: 1, opacity:
|
|
18
|
+
{ offset: 1 - backdropBreakpoint, opacity: 0 },
|
|
19
|
+
{ offset: 1, opacity: 0 },
|
|
20
20
|
];
|
|
21
21
|
const SheetDefaults = {
|
|
22
22
|
WRAPPER_KEYFRAMES: [
|
|
@@ -339,9 +339,7 @@ export const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpo
|
|
|
339
339
|
: step;
|
|
340
340
|
offset = clamp(0.0001, processedStep, maxStep);
|
|
341
341
|
animation.progressStep(offset);
|
|
342
|
-
const snapBreakpoint =
|
|
343
|
-
? calculateVelocitySnapBreakpoint(detail.deltaY, detail.velocityY, detail.currentY)
|
|
344
|
-
: calculatePositionSnapBreakpoint(detail.deltaY);
|
|
342
|
+
const snapBreakpoint = calculateSnapBreakpoint(detail.deltaY);
|
|
345
343
|
const eventDetail = {
|
|
346
344
|
currentY: detail.currentY,
|
|
347
345
|
deltaY: detail.deltaY,
|
|
@@ -352,9 +350,7 @@ export const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpo
|
|
|
352
350
|
onDragMove(eventDetail);
|
|
353
351
|
};
|
|
354
352
|
const onEnd = (detail) => {
|
|
355
|
-
const snapBreakpoint =
|
|
356
|
-
? calculateVelocitySnapBreakpoint(detail.deltaY, detail.velocityY, detail.currentY)
|
|
357
|
-
: calculatePositionSnapBreakpoint(detail.deltaY);
|
|
353
|
+
const snapBreakpoint = calculateSnapBreakpoint(detail.deltaY);
|
|
358
354
|
const eventDetail = {
|
|
359
355
|
currentY: detail.currentY,
|
|
360
356
|
deltaY: detail.deltaY,
|
|
@@ -401,14 +397,6 @@ export const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpo
|
|
|
401
397
|
*/
|
|
402
398
|
const shouldPreventDismiss = canDismiss && breakpoint === 0;
|
|
403
399
|
const snapToBreakpoint = shouldPreventDismiss ? currentBreakpoint : breakpoint;
|
|
404
|
-
/**
|
|
405
|
-
* Detect snap-back behavior: when the snap target is the same as the current breakpoint,
|
|
406
|
-
* the user released before crossing the threshold to a new breakpoint.
|
|
407
|
-
* Apply different timing and easing for snap-back vs. snap-to-new.
|
|
408
|
-
*/
|
|
409
|
-
const isSnapBack = snapToBreakpoint === currentBreakpoint;
|
|
410
|
-
const duration = usePhysicsBasedGesture ? (isSnapBack ? 300 : 400) : 500;
|
|
411
|
-
const easing = isSnapBack ? 'cubic-bezier(0.34, 1.4, 0.64, 1)' : 'cubic-bezier(0.32, 0.68, 0, 1)';
|
|
412
400
|
const shouldRemainOpen = snapToBreakpoint !== 0;
|
|
413
401
|
currentBreakpoint = 0;
|
|
414
402
|
/**
|
|
@@ -423,15 +411,11 @@ export const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpo
|
|
|
423
411
|
backdropAnimation.keyframes([
|
|
424
412
|
{
|
|
425
413
|
offset: 0,
|
|
426
|
-
opacity:
|
|
427
|
-
? 'var(--backdrop-opacity)'
|
|
428
|
-
: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(1 - breakpointOffset, backdropBreakpoint)})`,
|
|
414
|
+
opacity: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(1 - breakpointOffset, backdropBreakpoint)})`,
|
|
429
415
|
},
|
|
430
416
|
{
|
|
431
417
|
offset: 1,
|
|
432
|
-
opacity:
|
|
433
|
-
? 'var(--backdrop-opacity)'
|
|
434
|
-
: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(snapToBreakpoint, backdropBreakpoint)})`,
|
|
418
|
+
opacity: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(snapToBreakpoint, backdropBreakpoint)})`,
|
|
435
419
|
},
|
|
436
420
|
]);
|
|
437
421
|
if (contentAnimation) {
|
|
@@ -449,12 +433,6 @@ export const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpo
|
|
|
449
433
|
}
|
|
450
434
|
animation.progressStep(0);
|
|
451
435
|
}
|
|
452
|
-
/**
|
|
453
|
-
* Apply the appropriate easing curve for this snap behavior.
|
|
454
|
-
*/
|
|
455
|
-
if (usePhysicsBasedGesture) {
|
|
456
|
-
animation.easing(easing);
|
|
457
|
-
}
|
|
458
436
|
/**
|
|
459
437
|
* Gesture should remain disabled until the
|
|
460
438
|
* snapping animation completes.
|
|
@@ -544,7 +522,7 @@ export const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpo
|
|
|
544
522
|
* be added every time onEnd runs.
|
|
545
523
|
*/
|
|
546
524
|
}, { oneTimeCallback: true })
|
|
547
|
-
.progressEnd(1, 0, animated ?
|
|
525
|
+
.progressEnd(1, 0, animated ? 500 : 0);
|
|
548
526
|
});
|
|
549
527
|
};
|
|
550
528
|
/**
|
|
@@ -555,7 +533,7 @@ export const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpo
|
|
|
555
533
|
* @param deltaY The change in Y position since the gesture started.
|
|
556
534
|
* @returns The snap breakpoint value.
|
|
557
535
|
*/
|
|
558
|
-
const
|
|
536
|
+
const calculateSnapBreakpoint = (deltaY) => {
|
|
559
537
|
/**
|
|
560
538
|
* Calculates the real-time vertical position of the modal.
|
|
561
539
|
* We combine the wrapper's current bounding box position with the
|
|
@@ -575,50 +553,6 @@ export const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpo
|
|
|
575
553
|
});
|
|
576
554
|
return snapBreakpoint;
|
|
577
555
|
};
|
|
578
|
-
/**
|
|
579
|
-
* Calculates the snap breakpoint using velocity-based logic.
|
|
580
|
-
* This provides a more intuitive and responsive sheet behavior for the Ionic theme.
|
|
581
|
-
*
|
|
582
|
-
* Rules:
|
|
583
|
-
* 1. Fast downward flick (> 500 px/s) always dismisses, regardless of position
|
|
584
|
-
* 2. Fast upward flick (> 400 px/s) snaps to the next breakpoint above
|
|
585
|
-
* 3. If dragged 40% below current snap point without fast upward flick, dismisses
|
|
586
|
-
* 4. Otherwise, falls back to position-based snap (closest breakpoint)
|
|
587
|
-
*
|
|
588
|
-
* @param deltaY The change in Y position since gesture started
|
|
589
|
-
* @param velocityY The velocity in pixels per millisecond
|
|
590
|
-
* @param currentY The current Y position of the gesture
|
|
591
|
-
* @returns The snap breakpoint value
|
|
592
|
-
*/
|
|
593
|
-
const calculateVelocitySnapBreakpoint = (deltaY, velocityY, currentY) => {
|
|
594
|
-
// Convert velocity from px/ms to px/s for easier threshold comparison
|
|
595
|
-
const velocityYPerSecond = velocityY * 1000;
|
|
596
|
-
// Calculate current progress (0 = fully closed, 1 = fully expanded)
|
|
597
|
-
const currentProgress = calculateProgress(currentY);
|
|
598
|
-
// Rule 1: Fast downward flick always dismisses
|
|
599
|
-
if (velocityYPerSecond > 500) {
|
|
600
|
-
return minBreakpoint;
|
|
601
|
-
}
|
|
602
|
-
// Rule 2: Fast upward flick moves to next breakpoint above
|
|
603
|
-
if (velocityYPerSecond < -400) {
|
|
604
|
-
// Find next breakpoint above current position
|
|
605
|
-
const nextBreakpoint = breakpoints.find((bp) => bp > currentProgress);
|
|
606
|
-
// If no breakpoint above, stay at max breakpoint
|
|
607
|
-
return nextBreakpoint !== null && nextBreakpoint !== void 0 ? nextBreakpoint : maxBreakpoint;
|
|
608
|
-
}
|
|
609
|
-
// Rule 3: 40% dismissal rule (only if not flicking up and 0 breakpoint exists)
|
|
610
|
-
if (minBreakpoint === 0 && currentBreakpoint > 0) {
|
|
611
|
-
// Calculate how far we've moved below the current snap point
|
|
612
|
-
const distanceBelowSnap = currentBreakpoint - currentProgress;
|
|
613
|
-
const percentageBelowSnap = distanceBelowSnap / currentBreakpoint;
|
|
614
|
-
// If dragged more than 40% below and not flicking up, dismiss
|
|
615
|
-
if (percentageBelowSnap > 0.4 && velocityYPerSecond <= 400) {
|
|
616
|
-
return 0;
|
|
617
|
-
}
|
|
618
|
-
}
|
|
619
|
-
// Rule 4: Fallback to position-based snap (existing logic)
|
|
620
|
-
return calculatePositionSnapBreakpoint(deltaY);
|
|
621
|
-
};
|
|
622
556
|
/**
|
|
623
557
|
* Calculates the progress of the swipe gesture.
|
|
624
558
|
*
|
|
@@ -1,3 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Convert a font size to a dynamic font size.
|
|
3
|
+
* Fonts that participate in Dynamic Type should use
|
|
4
|
+
* dynamic font sizes.
|
|
5
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
6
|
+
* @param unit (optional) - The unit to convert to. Use this if you want to
|
|
7
|
+
* convert to a unit other than $baselineUnit.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Convert a font size to a dynamic font size but impose
|
|
11
|
+
* a maximum font size.
|
|
12
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
13
|
+
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
14
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
15
|
+
* convert to a unit other than $baselineUnit.
|
|
16
|
+
*/
|
|
17
|
+
/**
|
|
18
|
+
* Convert a font size to a dynamic font size but impose
|
|
19
|
+
* a minimum font size.
|
|
20
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
21
|
+
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
22
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
23
|
+
* convert to a unit other than $baselineUnit.
|
|
24
|
+
*/
|
|
25
|
+
/**
|
|
26
|
+
* Convert a font size to a dynamic font size but impose
|
|
27
|
+
* maximum and minimum font sizes.
|
|
28
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
29
|
+
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
30
|
+
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
31
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
32
|
+
* convert to a unit other than $baselineUnit.
|
|
33
|
+
*/
|
|
1
34
|
/**
|
|
2
35
|
* A heuristic that applies CSS to tablet
|
|
3
36
|
* viewports.
|
|
@@ -46,12 +79,15 @@
|
|
|
46
79
|
--min-height: auto;
|
|
47
80
|
--max-height: auto;
|
|
48
81
|
--overflow: hidden;
|
|
82
|
+
--border-radius: 0;
|
|
49
83
|
--border-width: 0;
|
|
50
84
|
--border-style: none;
|
|
51
85
|
--border-color: transparent;
|
|
86
|
+
--background: var(--ion-background-color, #fff);
|
|
52
87
|
--box-shadow: none;
|
|
53
|
-
|
|
88
|
+
--backdrop-opacity: 0;
|
|
54
89
|
left: 0;
|
|
90
|
+
right: 0;
|
|
55
91
|
top: 0;
|
|
56
92
|
bottom: 0;
|
|
57
93
|
display: flex;
|
|
@@ -59,6 +95,7 @@
|
|
|
59
95
|
align-items: center;
|
|
60
96
|
justify-content: center;
|
|
61
97
|
outline: none;
|
|
98
|
+
color: var(--ion-text-color, #000);
|
|
62
99
|
contain: strict;
|
|
63
100
|
}
|
|
64
101
|
|
|
@@ -94,177 +131,10 @@ ion-backdrop {
|
|
|
94
131
|
background: transparent;
|
|
95
132
|
}
|
|
96
133
|
|
|
97
|
-
.modal-handle {
|
|
98
|
-
-webkit-margin-start: auto;
|
|
99
|
-
margin-inline-start: auto;
|
|
100
|
-
-webkit-margin-end: auto;
|
|
101
|
-
margin-inline-end: auto;
|
|
102
|
-
position: absolute;
|
|
103
|
-
/**
|
|
104
|
-
* This allows the handle to appear
|
|
105
|
-
* on top of user content in WebKit.
|
|
106
|
-
*/
|
|
107
|
-
transform: translateZ(0);
|
|
108
|
-
border: 0;
|
|
109
|
-
cursor: pointer;
|
|
110
|
-
z-index: 11;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
.modal-handle::before {
|
|
114
|
-
position: absolute;
|
|
115
|
-
transform: translate(-50%, -50%);
|
|
116
|
-
content: "";
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
:host(.modal-sheet) .modal-wrapper,
|
|
120
|
-
:host(.modal-sheet) .modal-shadow {
|
|
121
|
-
position: absolute;
|
|
122
|
-
bottom: 0;
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
:host(.modal-sheet.modal-no-expand-scroll) ion-footer {
|
|
126
|
-
position: absolute;
|
|
127
|
-
bottom: 0;
|
|
128
|
-
width: var(--width);
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
/**
|
|
132
|
-
* Convert a pixels given value into rem
|
|
133
|
-
*
|
|
134
|
-
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
135
|
-
* @param context (optional) - Baseline value
|
|
136
|
-
*/
|
|
137
|
-
/**
|
|
138
|
-
* Convert a font size to a dynamic font size.
|
|
139
|
-
* Fonts that participate in Dynamic Type should use
|
|
140
|
-
* dynamic font sizes.
|
|
141
|
-
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
142
|
-
* @param unit (optional) - The unit to convert to. Use this if you want to
|
|
143
|
-
* convert to a unit other than $baselineUnit.
|
|
144
|
-
*/
|
|
145
|
-
/**
|
|
146
|
-
* Convert a font size to a dynamic font size but impose
|
|
147
|
-
* a maximum font size.
|
|
148
|
-
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
149
|
-
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
150
|
-
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
151
|
-
* convert to a unit other than $baselineUnit.
|
|
152
|
-
*/
|
|
153
|
-
/**
|
|
154
|
-
* Convert a font size to a dynamic font size but impose
|
|
155
|
-
* a minimum font size.
|
|
156
|
-
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
157
|
-
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
158
|
-
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
159
|
-
* convert to a unit other than $baselineUnit.
|
|
160
|
-
*/
|
|
161
|
-
/**
|
|
162
|
-
* Convert a font size to a dynamic font size but impose
|
|
163
|
-
* maximum and minimum font sizes.
|
|
164
|
-
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
165
|
-
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
166
|
-
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
167
|
-
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
168
|
-
* convert to a unit other than $baselineUnit.
|
|
169
|
-
*/
|
|
170
|
-
/**
|
|
171
|
-
* A heuristic that applies CSS to tablet
|
|
172
|
-
* viewports.
|
|
173
|
-
*
|
|
174
|
-
* Usage:
|
|
175
|
-
* @include tablet-viewport() {
|
|
176
|
-
* :host {
|
|
177
|
-
* background-color: green;
|
|
178
|
-
* }
|
|
179
|
-
* }
|
|
180
|
-
*/
|
|
181
|
-
/**
|
|
182
|
-
* A heuristic that applies CSS to mobile
|
|
183
|
-
* viewports (i.e. phones, not tablets).
|
|
184
|
-
*
|
|
185
|
-
* Usage:
|
|
186
|
-
* @include mobile-viewport() {
|
|
187
|
-
* :host {
|
|
188
|
-
* background-color: blue;
|
|
189
|
-
* }
|
|
190
|
-
* }
|
|
191
|
-
*/
|
|
192
|
-
/**
|
|
193
|
-
* Convert a pixels given value into rem
|
|
194
|
-
*
|
|
195
|
-
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
196
|
-
* @param context (optional) - Baseline value
|
|
197
|
-
*/
|
|
198
|
-
/**
|
|
199
|
-
* Convert a font size to a dynamic font size.
|
|
200
|
-
* Fonts that participate in Dynamic Type should use
|
|
201
|
-
* dynamic font sizes.
|
|
202
|
-
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
203
|
-
* @param unit (optional) - The unit to convert to. Use this if you want to
|
|
204
|
-
* convert to a unit other than $baselineUnit.
|
|
205
|
-
*/
|
|
206
|
-
/**
|
|
207
|
-
* Convert a font size to a dynamic font size but impose
|
|
208
|
-
* a maximum font size.
|
|
209
|
-
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
210
|
-
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
211
|
-
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
212
|
-
* convert to a unit other than $baselineUnit.
|
|
213
|
-
*/
|
|
214
|
-
/**
|
|
215
|
-
* Convert a font size to a dynamic font size but impose
|
|
216
|
-
* a minimum font size.
|
|
217
|
-
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
218
|
-
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
219
|
-
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
220
|
-
* convert to a unit other than $baselineUnit.
|
|
221
|
-
*/
|
|
222
|
-
/**
|
|
223
|
-
* Convert a font size to a dynamic font size but impose
|
|
224
|
-
* maximum and minimum font sizes.
|
|
225
|
-
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
226
|
-
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
227
|
-
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
228
|
-
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
229
|
-
* convert to a unit other than $baselineUnit.
|
|
230
|
-
*/
|
|
231
|
-
/**
|
|
232
|
-
* A heuristic that applies CSS to tablet
|
|
233
|
-
* viewports.
|
|
234
|
-
*
|
|
235
|
-
* Usage:
|
|
236
|
-
* @include tablet-viewport() {
|
|
237
|
-
* :host {
|
|
238
|
-
* background-color: green;
|
|
239
|
-
* }
|
|
240
|
-
* }
|
|
241
|
-
*/
|
|
242
|
-
/**
|
|
243
|
-
* A heuristic that applies CSS to mobile
|
|
244
|
-
* viewports (i.e. phones, not tablets).
|
|
245
|
-
*
|
|
246
|
-
* Usage:
|
|
247
|
-
* @include mobile-viewport() {
|
|
248
|
-
* :host {
|
|
249
|
-
* background-color: blue;
|
|
250
|
-
* }
|
|
251
|
-
* }
|
|
252
|
-
*/
|
|
253
|
-
:host {
|
|
254
|
-
--background: var(--ion-background-color, #fff);
|
|
255
|
-
--border-radius: 0;
|
|
256
|
-
--backdrop-opacity: 0;
|
|
257
|
-
color: var(--ion-text-color, #000);
|
|
258
|
-
}
|
|
259
|
-
|
|
260
134
|
@media only screen and (min-width: 768px) and (min-height: 600px) {
|
|
261
135
|
:host {
|
|
262
136
|
--width: 600px;
|
|
263
137
|
--height: 500px;
|
|
264
|
-
--ion-safe-area-top: 0px;
|
|
265
|
-
--ion-safe-area-bottom: 0px;
|
|
266
|
-
--ion-safe-area-right: 0px;
|
|
267
|
-
--ion-safe-area-left: 0px;
|
|
268
138
|
}
|
|
269
139
|
}
|
|
270
140
|
@media only screen and (min-width: 768px) and (min-height: 768px) {
|
|
@@ -274,27 +144,43 @@ ion-backdrop {
|
|
|
274
144
|
}
|
|
275
145
|
}
|
|
276
146
|
.modal-handle {
|
|
277
|
-
right: 0px;
|
|
278
147
|
left: 0px;
|
|
148
|
+
right: 0px;
|
|
279
149
|
top: 5px;
|
|
280
150
|
border-radius: 8px;
|
|
151
|
+
-webkit-margin-start: auto;
|
|
152
|
+
margin-inline-start: auto;
|
|
153
|
+
-webkit-margin-end: auto;
|
|
154
|
+
margin-inline-end: auto;
|
|
155
|
+
position: absolute;
|
|
281
156
|
width: 36px;
|
|
282
157
|
height: 5px;
|
|
158
|
+
/**
|
|
159
|
+
* This allows the handle to appear
|
|
160
|
+
* on top of user content in WebKit.
|
|
161
|
+
*/
|
|
162
|
+
transform: translateZ(0);
|
|
163
|
+
border: 0;
|
|
283
164
|
background: var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));
|
|
165
|
+
cursor: pointer;
|
|
166
|
+
z-index: 11;
|
|
284
167
|
}
|
|
285
168
|
.modal-handle::before {
|
|
286
169
|
/**
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
170
|
+
* Adds a 4px tap area to the perimeter
|
|
171
|
+
* of the handle.
|
|
172
|
+
*/
|
|
290
173
|
-webkit-padding-start: 4px;
|
|
291
174
|
padding-inline-start: 4px;
|
|
292
175
|
-webkit-padding-end: 4px;
|
|
293
176
|
padding-inline-end: 4px;
|
|
294
177
|
padding-top: 4px;
|
|
295
178
|
padding-bottom: 4px;
|
|
179
|
+
position: absolute;
|
|
296
180
|
width: 36px;
|
|
297
181
|
height: 5px;
|
|
182
|
+
transform: translate(-50%, -50%);
|
|
183
|
+
content: "";
|
|
298
184
|
}
|
|
299
185
|
|
|
300
186
|
/**
|
|
@@ -310,12 +196,18 @@ ion-backdrop {
|
|
|
310
196
|
--height: calc(100% - (var(--ion-modal-offset-top, 0px) + 10px));
|
|
311
197
|
}
|
|
312
198
|
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
199
|
+
:host(.modal-sheet) .modal-wrapper,
|
|
200
|
+
:host(.modal-sheet) .modal-shadow {
|
|
201
|
+
position: absolute;
|
|
202
|
+
bottom: 0;
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
:host(.modal-sheet.modal-no-expand-scroll) ion-footer {
|
|
206
|
+
position: absolute;
|
|
207
|
+
bottom: 0;
|
|
208
|
+
width: var(--width);
|
|
209
|
+
}
|
|
210
|
+
|
|
319
211
|
/**
|
|
320
212
|
* Convert a font size to a dynamic font size.
|
|
321
213
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -8,13 +8,12 @@ import { raf, inheritAttributes, hasLazyBuild, getElementRoot } from "../../util
|
|
|
8
8
|
import { createLockController } from "../../utils/lock-controller";
|
|
9
9
|
import { printIonWarning } from "../../utils/logging/index";
|
|
10
10
|
import { Style as StatusBarStyle, StatusBar } from "../../utils/native/status-bar";
|
|
11
|
-
import {
|
|
11
|
+
import { BACKDROP, cleanupRootFocusTrapAccessibility, createTriggerController, dismiss, eventMethod, FOCUS_TRAP_DISABLE_CLASS, GESTURE, prepareOverlay, present, setOverlayId, } from "../../utils/overlays";
|
|
12
12
|
import { getClassMap } from "../../utils/theme";
|
|
13
13
|
import { deepReady, waitForMount } from "../../utils/transition/index";
|
|
14
14
|
import { config } from "../../global/config";
|
|
15
|
-
import { getIonMode
|
|
15
|
+
import { getIonMode } from "../../global/ionic-global";
|
|
16
16
|
import { KEYBOARD_DID_OPEN } from "../../utils/keyboard/keyboard";
|
|
17
|
-
import { ionicEnterAnimation } from "./animations/ionic.enter";
|
|
18
17
|
import { iosEnterAnimation } from "./animations/ios.enter";
|
|
19
18
|
import { iosLeaveAnimation } from "./animations/ios.leave";
|
|
20
19
|
import { portraitToLandscapeTransition, landscapeToPortraitTransition } from "./animations/ios.transition";
|
|
@@ -26,8 +25,7 @@ import { getInitialSafeAreaConfig, getPositionBasedSafeAreaConfig, applySafeArea
|
|
|
26
25
|
import { setCardStatusBarDark, setCardStatusBarDefault } from "./utils";
|
|
27
26
|
// TODO(FW-2832): types
|
|
28
27
|
/**
|
|
29
|
-
* @virtualProp {"ios" | "md"} mode - The mode determines
|
|
30
|
-
* @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
|
|
28
|
+
* @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
|
|
31
29
|
*
|
|
32
30
|
* @slot - Content is placed inside of the `.modal-content` element.
|
|
33
31
|
*
|
|
@@ -279,6 +277,10 @@ export class Modal {
|
|
|
279
277
|
// Also called in dismiss() — intentional dual cleanup covers both
|
|
280
278
|
// dismiss-then-remove and direct DOM removal without dismiss.
|
|
281
279
|
this.cleanupSafeAreaOverrides();
|
|
280
|
+
// Clean up aria-hidden if removed without dismiss() being called
|
|
281
|
+
if (this.presented) {
|
|
282
|
+
cleanupRootFocusTrapAccessibility();
|
|
283
|
+
}
|
|
282
284
|
}
|
|
283
285
|
componentWillLoad() {
|
|
284
286
|
var _a;
|
|
@@ -455,12 +457,11 @@ export class Modal {
|
|
|
455
457
|
this.statusBarStyle = await StatusBar.getStyle();
|
|
456
458
|
setCardStatusBarDark();
|
|
457
459
|
}
|
|
458
|
-
await present(this, 'modalEnter', iosEnterAnimation, mdEnterAnimation,
|
|
460
|
+
await present(this, 'modalEnter', iosEnterAnimation, mdEnterAnimation, {
|
|
459
461
|
presentingEl: presentingElement,
|
|
460
462
|
currentBreakpoint: this.initialBreakpoint,
|
|
461
463
|
backdropBreakpoint: this.backdropBreakpoint,
|
|
462
464
|
expandToScroll: this.expandToScroll,
|
|
463
|
-
staticBackdropOpacity: getIonTheme(this) === 'ionic',
|
|
464
465
|
});
|
|
465
466
|
// Update safe-area based on actual position after animation
|
|
466
467
|
this.updateSafeAreaOverrides();
|
|
@@ -543,7 +544,6 @@ export class Modal {
|
|
|
543
544
|
currentBreakpoint: initialBreakpoint,
|
|
544
545
|
backdropBreakpoint,
|
|
545
546
|
expandToScroll: this.expandToScroll,
|
|
546
|
-
staticBackdropOpacity: getIonTheme(this) === 'ionic',
|
|
547
547
|
}));
|
|
548
548
|
ani.progressStart(true, 1);
|
|
549
549
|
const { gesture, moveSheetToBreakpoint } = createSheetGesture(this.el, this.backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, ani, this.sortedBreakpoints, this.expandToScroll, () => { var _a; return (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : 0; }, () => this.sheetOnDismiss(), (breakpoint) => {
|
|
@@ -551,7 +551,7 @@ export class Modal {
|
|
|
551
551
|
this.currentBreakpoint = breakpoint;
|
|
552
552
|
this.ionBreakpointDidChange.emit({ breakpoint });
|
|
553
553
|
}
|
|
554
|
-
},
|
|
554
|
+
}, () => this.onDragStart(), (detail) => this.onDragMove(detail), (detail) => this.onDragEnd(detail));
|
|
555
555
|
this.gesture = gesture;
|
|
556
556
|
this.moveSheetToBreakpoint = moveSheetToBreakpoint;
|
|
557
557
|
this.gesture.enable(true);
|
|
@@ -823,18 +823,6 @@ export class Modal {
|
|
|
823
823
|
await this.setCurrentBreakpoint(nextBreakpoint);
|
|
824
824
|
return true;
|
|
825
825
|
}
|
|
826
|
-
getShape() {
|
|
827
|
-
const theme = getIonTheme(this);
|
|
828
|
-
const { shape } = this;
|
|
829
|
-
// TODO(ROU-11167): Remove theme check when shapes are defined for all themes.
|
|
830
|
-
if (theme !== 'ionic') {
|
|
831
|
-
return undefined;
|
|
832
|
-
}
|
|
833
|
-
if (shape === undefined) {
|
|
834
|
-
return 'round';
|
|
835
|
-
}
|
|
836
|
-
return shape;
|
|
837
|
-
}
|
|
838
826
|
initViewTransitionListener() {
|
|
839
827
|
// Only enable for iOS card modals when no custom animations are provided
|
|
840
828
|
if (getIonMode(this) !== 'ios' || !this.presentingElement || this.enterAnimation || this.leaveAnimation) {
|
|
@@ -1145,40 +1133,37 @@ export class Modal {
|
|
|
1145
1133
|
render() {
|
|
1146
1134
|
const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap, expandToScroll, } = this;
|
|
1147
1135
|
const showHandle = handle !== false && isSheetModal;
|
|
1148
|
-
const
|
|
1149
|
-
const isCardModal = presentingElement !== undefined &&
|
|
1136
|
+
const mode = getIonMode(this);
|
|
1137
|
+
const isCardModal = presentingElement !== undefined && mode === 'ios';
|
|
1150
1138
|
const isHandleCycle = handleBehavior === 'cycle';
|
|
1151
|
-
const shape = this.getShape();
|
|
1152
1139
|
const isSheetModalWithHandle = isSheetModal && showHandle;
|
|
1153
|
-
return (h(Host, Object.assign({ key: '
|
|
1140
|
+
return (h(Host, Object.assign({ key: 'e6df0917ac03a8d6bf67cc9bebf075d2b804ba22', "no-router": true,
|
|
1154
1141
|
// Allow the modal to be navigable when the handle is focusable
|
|
1155
1142
|
tabIndex: isHandleCycle && isSheetModalWithHandle ? 0 : -1 }, htmlAttributes, { style: {
|
|
1156
1143
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
1157
|
-
}, class: Object.assign({ [
|
|
1144
|
+
}, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), h("ion-backdrop", { key: '710ed1cbb6ae9c1a1fa7ae774fd44aa3bbee8381', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && h("div", { key: 'c9051fcd099e9b73e17f015dea6e16fbd73e4df4', class: "modal-shadow" }), h("div", Object.assign({ key: '21e42d40099a569d95a4e04aa6d314c7d45c6192',
|
|
1158
1145
|
/*
|
|
1159
1146
|
role and aria-modal must be used on the
|
|
1160
1147
|
same element. They must also be set inside the
|
|
1161
1148
|
shadow DOM otherwise ion-button will not be highlighted
|
|
1162
1149
|
when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
|
|
1163
1150
|
*/
|
|
1164
|
-
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (h("button", { key: '
|
|
1151
|
+
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (h("button", { key: 'b48a6c32c9a7ebe5e070e8d9f3510d55d4bd1f9f', class: "modal-handle",
|
|
1165
1152
|
// Prevents the handle from receiving keyboard focus when it does not cycle
|
|
1166
|
-
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) })), h("slot", { key: '
|
|
1153
|
+
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) })), h("slot", { key: '2a20160f66629c14e3414bbe01e5ee89101d02be', onSlotchange: this.onSlotChange }))));
|
|
1167
1154
|
}
|
|
1168
1155
|
static get is() { return "ion-modal"; }
|
|
1169
1156
|
static get encapsulation() { return "shadow"; }
|
|
1170
1157
|
static get originalStyleUrls() {
|
|
1171
1158
|
return {
|
|
1172
1159
|
"ios": ["modal.ios.scss"],
|
|
1173
|
-
"md": ["modal.md.scss"]
|
|
1174
|
-
"ionic": ["modal.ionic.scss"]
|
|
1160
|
+
"md": ["modal.md.scss"]
|
|
1175
1161
|
};
|
|
1176
1162
|
}
|
|
1177
1163
|
static get styleUrls() {
|
|
1178
1164
|
return {
|
|
1179
1165
|
"ios": ["modal.ios.css"],
|
|
1180
|
-
"md": ["modal.md.css"]
|
|
1181
|
-
"ionic": ["modal.ionic.css"]
|
|
1166
|
+
"md": ["modal.md.css"]
|
|
1182
1167
|
};
|
|
1183
1168
|
}
|
|
1184
1169
|
static get properties() {
|
|
@@ -1725,25 +1710,6 @@ export class Modal {
|
|
|
1725
1710
|
"reflect": false,
|
|
1726
1711
|
"attribute": "can-dismiss",
|
|
1727
1712
|
"defaultValue": "true"
|
|
1728
|
-
},
|
|
1729
|
-
"shape": {
|
|
1730
|
-
"type": "string",
|
|
1731
|
-
"mutable": false,
|
|
1732
|
-
"complexType": {
|
|
1733
|
-
"original": "'soft' | 'round' | 'rectangular'",
|
|
1734
|
-
"resolved": "\"rectangular\" | \"round\" | \"soft\" | undefined",
|
|
1735
|
-
"references": {}
|
|
1736
|
-
},
|
|
1737
|
-
"required": false,
|
|
1738
|
-
"optional": true,
|
|
1739
|
-
"docs": {
|
|
1740
|
-
"tags": [],
|
|
1741
|
-
"text": "Set to `\"soft\"` for a modal with slightly rounded corners,\n`\"round\"` for a modal with fully rounded corners, or `\"rectangular\"`\nfor a modal without rounded corners.\n\nDefaults to `\"round\"` for the `ionic` theme, undefined for all other themes."
|
|
1742
|
-
},
|
|
1743
|
-
"getter": false,
|
|
1744
|
-
"setter": false,
|
|
1745
|
-
"reflect": false,
|
|
1746
|
-
"attribute": "shape"
|
|
1747
1713
|
}
|
|
1748
1714
|
};
|
|
1749
1715
|
}
|