@ionic/core 8.8.18-dev.11786361672.19605941 → 8.8.18-dev.11786399582.1d58c37d
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-legacy-column.js +1 -1
- package/components/ion-picker-legacy.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/components/p--JUspHvy.js +4 -0
- package/components/p-A3O24YmY.js +4 -0
- package/components/p-ABkNVeU9.js +4 -0
- package/{dist/ionic/p-Cm20lBQw.js → components/p-B-JJgYSG.js} +1 -1
- package/components/p-B9jFTlwE.js +4 -0
- package/components/p-BLmJ0zRm.js +4 -0
- package/components/p-BMI53wYL.js +4 -0
- package/components/p-BSEgsdFI.js +4 -0
- package/{dist/ionic/p-Cipl19Qe.js → components/p-BkKAANMJ.js} +1 -1
- package/components/p-BlIAuGv2.js +4 -0
- package/components/p-BmVRXR1y.js +4 -0
- package/components/p-Bnsn6KaP.js +4 -0
- package/components/p-BsBCoGa-.js +4 -0
- package/components/p-Bz0dSlXZ.js +4 -0
- package/components/p-CHqRYvYm.js +4 -0
- package/components/p-CIGNaXM1.js +4 -0
- package/components/p-CO7fmmxt.js +4 -0
- package/components/p-CQGnMY3n.js +4 -0
- package/components/p-CSZf8_j0.js +4 -0
- package/components/{p-B_jBop0E.js → p-C_hpsif8.js} +1 -1
- package/components/p-C_xFdyXe.js +4 -0
- package/components/{p-BE21dB_a.js → p-Cf2jSDS8.js} +1 -1
- package/components/p-Cfx4M1Bn.js +4 -0
- package/components/{p-DWoO0801.js → p-ChIZKXUu.js} +1 -1
- package/components/p-CkMSOsFF.js +4 -0
- package/components/p-CmR5uXej.js +4 -0
- package/components/p-Cp4GRDqq.js +4 -0
- package/components/p-CsNJ1ULL.js +4 -0
- package/components/p-CtWGkNnJ.js +4 -0
- package/components/p-CzCbeKys.js +4 -0
- package/components/p-D-aHdMxW.js +4 -0
- package/components/p-D0d8qTwj.js +4 -0
- package/components/{p-D0fnq0lf.js → p-D13Eaw-8.js} +1 -1
- package/components/p-D3xo7hqU.js +4 -0
- package/components/p-D6Ynv7Xh.js +4 -0
- package/components/p-D7uN07a3.js +4 -0
- package/components/p-DCnGU1fF.js +4 -0
- package/components/p-DGvrK8dD.js +4 -0
- package/components/p-DJztqcrH.js +4 -0
- package/components/p-DOFCbuQR.js +4 -0
- package/components/p-DRxvM2Ic.js +4 -0
- package/components/p-DV5mPYQS.js +4 -0
- package/components/p-DWkAgceV.js +4 -0
- package/components/p-DiVJyqlX.js +4 -0
- package/components/{p-BZwQa9ey.js → p-DqLB8yFQ.js} +1 -1
- package/components/p-DqZAXv2t.js +4 -0
- package/components/{p-Bz4JFPmj.js → p-Osve4qkc.js} +1 -1
- package/components/p-R8zmRi4c.js +4 -0
- package/components/p-SLS1rDZM.js +4 -0
- package/components/p-ZjP4CjeZ.js +4 -0
- package/components/p-aJ6PBUvj.js +4 -0
- package/{dist/ionic/p-OkgYzj-7.js → components/p-cyNmxje6.js} +1 -1
- package/components/p-gAg0kXZp.js +4 -0
- package/components/p-gYiraiT_.js +4 -0
- package/components/p-j5IxBIan.js +4 -0
- package/components/p-k_E4tX5Z.js +4 -0
- package/components/p-oD4kcBRX.js +4 -0
- package/components/p-rCa2eL0j.js +4 -0
- package/components/p-vRBNsYbs.js +4 -0
- package/components/p-yEQxMl70.js +4 -0
- package/components/p-yzCsOZE2.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.map +1 -1
- package/css/palettes/dark.class.css.map +1 -1
- package/css/palettes/dark.system.css.map +1 -1
- package/css/palettes/high-contrast-dark.always.css.map +1 -1
- package/css/palettes/high-contrast-dark.class.css.map +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-B3xfVcDO.js → animation-Ch16T-Nb.js} +3 -3
- package/dist/cjs/{app-globals-3ZoCVkn-.js → app-globals-Dd89e0MR.js} +1 -1
- package/dist/cjs/{button-active-3tZKuPbT.js → button-active-COnxOe4X.js} +2 -2
- package/dist/cjs/{capacitor-CQSg1uCo.js → capacitor-DmA66EwP.js} +3 -3
- package/dist/cjs/config-D6C-KlA9.js +201 -0
- package/dist/{esm/focus-visible-vXpMhGrs.js → cjs/focus-visible-CCvKiLh3.js} +3 -23
- package/dist/cjs/{format-BCIkDef_.js → format-BUFWn4Bn.js} +1 -1
- package/dist/cjs/{framework-delegate-DC5nq_NN.js → framework-delegate-BgU6U9Ez.js} +2 -4
- package/dist/cjs/{haptic-eix26ESE.js → haptic-ClPPQ_PS.js} +1 -1
- package/dist/cjs/hardware-back-button-CXmUnTJC.js +121 -0
- package/dist/cjs/{helpers-DiOgV5hw.js → helpers-gntk8bfm.js} +4 -71
- package/dist/cjs/{index-BaJ7_YbC.js → index-BS2uhvhT.js} +4 -4
- package/dist/cjs/{index-GZU9YrFc.js → index-BfaXsATC.js} +241 -43
- package/dist/cjs/{index-bX3nz2vw.js → index-BhhuJ1Yx.js} +8 -9
- package/dist/cjs/{index-BxEZd5IE.js → index-BiRrzGDi.js} +34 -2
- package/dist/cjs/index-DkNv4J_i.js +10 -0
- package/dist/cjs/{index-CxDnX7hd.js → index-DqmRDbxg.js} +1 -3
- package/dist/cjs/{index-DYRcC3bw.js → index-ooS8B4p9.js} +15 -15
- package/dist/cjs/index.cjs.js +16 -16
- package/dist/cjs/{input-shims-BSEBw22J.js → input-shims-Bn1cXfCM.js} +17 -18
- package/dist/cjs/{input.utils-D68wgI2Y.js → input.utils-BwhxZooW.js} +5 -5
- package/dist/cjs/ion-accordion_2.cjs.entry.js +29 -61
- package/dist/cjs/ion-action-sheet.cjs.entry.js +22 -41
- package/dist/cjs/ion-alert.cjs.entry.js +41 -78
- package/dist/cjs/ion-app_8.cjs.entry.js +244 -458
- 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 +24 -61
- package/dist/cjs/ion-card_5.cjs.entry.js +33 -55
- package/dist/cjs/ion-checkbox.cjs.entry.js +17 -34
- package/dist/cjs/ion-chip.cjs.entry.js +9 -50
- package/dist/cjs/ion-col_3.cjs.entry.js +57 -56
- package/dist/cjs/ion-datetime-button.cjs.entry.js +9 -13
- package/dist/cjs/ion-datetime_3.cjs.entry.js +51 -123
- 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 +17 -93
- 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 +35 -146
- package/dist/cjs/ion-item-option_3.cjs.entry.js +52 -467
- package/dist/cjs/ion-item_8.cjs.entry.js +50 -121
- package/dist/cjs/ion-loading.cjs.entry.js +19 -22
- package/dist/cjs/ion-menu_3.cjs.entry.js +29 -47
- package/dist/cjs/ion-modal.cjs.entry.js +215 -309
- 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 +14 -14
- package/dist/cjs/ion-picker.cjs.entry.js +6 -10
- package/dist/cjs/ion-popover.cjs.entry.js +19 -21
- package/dist/cjs/ion-progress-bar.cjs.entry.js +9 -27
- package/dist/cjs/ion-radio_2.cjs.entry.js +18 -36
- package/dist/cjs/ion-range.cjs.entry.js +13 -20
- package/dist/cjs/ion-refresher_2.cjs.entry.js +24 -43
- 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 +10 -11
- package/dist/cjs/ion-searchbar.cjs.entry.js +27 -160
- package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
- package/dist/cjs/ion-segment-view.cjs.entry.js +3 -13
- package/dist/cjs/ion-segment_2.cjs.entry.js +16 -23
- package/dist/cjs/ion-select-modal.cjs.entry.js +38 -114
- package/dist/cjs/ion-select_3.cjs.entry.js +108 -557
- package/dist/cjs/ion-spinner.cjs.entry.js +8 -30
- package/dist/cjs/ion-split-pane.cjs.entry.js +9 -13
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +28 -150
- 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 -70
- package/dist/cjs/ion-toggle.cjs.entry.js +26 -82
- package/dist/cjs/ionic-global-BerQGEpE.js +151 -0
- package/dist/cjs/ionic.cjs.js +4 -4
- package/dist/cjs/{ios.transition-DpFQfFfT.js → ios.transition-IMJRwn29.js} +5 -7
- package/dist/cjs/{item-multiple-inputs-BG9f5_eV.js → item-multiple-inputs-jOJZE_I0.js} +1 -1
- package/dist/cjs/{keyboard-Bn0Ppim6.js → keyboard-UuAS4D_9.js} +1 -1
- package/dist/cjs/keyboard-controller-GXBiBRKS.js +167 -0
- package/dist/cjs/{keyboard-faZBQysj.js → keyboard-hHzlEQpk.js} +3 -4
- package/dist/cjs/loader.cjs.js +4 -4
- package/dist/cjs/{md.transition-ChJcoZUH.js → md.transition-CgQZxcoT.js} +5 -6
- package/dist/cjs/{notch-controller-BO0UGB4F.js → notch-controller-_SwR025y.js} +4 -4
- package/dist/cjs/{overlays-CFGbPUmE.js → overlays-DuSEMhIW.js} +18 -309
- package/dist/cjs/{status-tap-x2qDo5QR.js → status-tap-CSvBT7FV.js} +3 -4
- package/dist/cjs/{swipe-back-CvZt_4YX.js → swipe-back-CuIiziaa.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 +1 -9
- 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 +11 -367
- package/dist/collection/components/action-sheet/action-sheet.js +13 -32
- package/dist/collection/components/action-sheet/action-sheet.md.css +10 -306
- package/dist/collection/components/alert/alert.ios.css +19 -481
- package/dist/collection/components/alert/alert.js +30 -67
- package/dist/collection/components/alert/alert.md.css +29 -464
- 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 -137
- package/dist/collection/components/badge/badge.js +9 -145
- package/dist/collection/components/badge/badge.md.css +12 -122
- 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 +117 -242
- package/dist/collection/components/checkbox/checkbox.js +14 -69
- package/dist/collection/components/checkbox/checkbox.md.css +118 -243
- 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 -211
- package/dist/collection/components/content/content.css +2 -47
- package/dist/collection/components/content/content.js +63 -17
- package/dist/collection/components/datetime/datetime.ios.css +106 -302
- package/dist/collection/components/datetime/datetime.js +26 -100
- 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 +6 -33
- package/dist/collection/components/footer/footer.js +25 -117
- package/dist/collection/components/footer/footer.md.css +0 -40
- 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 +133 -178
- package/dist/collection/components/header/header.js +39 -181
- package/dist/collection/components/header/header.md.css +9 -199
- package/dist/collection/components/header/header.utils.js +13 -6
- 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 +137 -224
- package/dist/collection/components/input/input.js +39 -172
- package/dist/collection/components/input/input.md.css +209 -194
- package/dist/collection/components/input-otp/input-otp.ios.css +60 -105
- package/dist/collection/components/input-otp/input-otp.js +7 -74
- 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 +80 -120
- package/dist/collection/components/item/item.js +21 -56
- package/dist/collection/components/item/item.md.css +79 -131
- 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.native.css → item-sliding.css} +9 -84
- package/dist/collection/components/item-sliding/item-sliding.js +35 -421
- package/dist/collection/components/item-sliding/test/test.utils.js +0 -13
- 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 +11 -14
- 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 +32 -102
- package/dist/collection/components/modal/gestures/swipe-to-close.js +3 -32
- package/dist/collection/components/modal/gestures/utils.js +17 -0
- package/dist/collection/components/modal/modal.ios.css +70 -178
- package/dist/collection/components/modal/modal.js +34 -59
- package/dist/collection/components/modal/modal.md.css +70 -178
- package/dist/collection/components/modal/safe-area-utils.js +35 -0
- 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 +7 -8
- 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/picker-legacy/picker.ios.css +1 -13
- package/dist/collection/components/picker-legacy/picker.js +6 -7
- package/dist/collection/components/picker-legacy/picker.md.css +1 -13
- package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -12
- package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
- package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -12
- package/dist/collection/components/popover/popover.ios.css +1 -29
- package/dist/collection/components/popover/popover.js +15 -18
- package/dist/collection/components/popover/popover.md.css +1 -29
- 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 +102 -207
- package/dist/collection/components/radio/radio.js +9 -14
- package/dist/collection/components/radio/radio.md.css +102 -207
- 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 +10 -13
- 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 +3 -6
- 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 +37 -205
- 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 -13
- package/dist/collection/components/segment-view/segment-view.md.css +0 -6
- package/dist/collection/components/select/select.ios.css +176 -348
- package/dist/collection/components/select/select.js +92 -521
- package/dist/collection/components/select/select.md.css +178 -364
- package/dist/collection/components/select-modal/select-modal.ios.css +0 -466
- package/dist/collection/components/select-modal/select-modal.js +30 -126
- package/dist/collection/components/select-modal/select-modal.md.css +0 -394
- package/dist/collection/components/select-option/select-option.js +4 -72
- package/dist/collection/components/select-popover/select-popover.ios.css +20 -302
- package/dist/collection/components/select-popover/select-popover.js +29 -89
- package/dist/collection/components/select-popover/select-popover.md.css +0 -345
- 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 -15
- 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 -86
- package/dist/collection/components/tab-bar/tab-bar.js +15 -179
- package/dist/collection/components/tab-bar/tab-bar.md.css +43 -86
- 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 -39
- 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 +127 -247
- package/dist/collection/components/toggle/toggle.js +18 -72
- package/dist/collection/components/toggle/toggle.md.css +127 -245
- 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/utils/content/index.js +30 -0
- 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 -70
- package/dist/collection/utils/keyboard/keyboard-controller.js +1 -3
- package/dist/collection/utils/media.js +0 -1
- 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 +8 -290
- package/dist/collection/utils/sanitization/index.js +18 -274
- package/dist/collection/utils/test/playwright/drag-element.js +9 -32
- 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 +287 -9091
- package/dist/esm/{animation-B2qdQ_ou.js → animation-DLJpuoEz.js} +2 -2
- package/dist/esm/{app-globals-DZ-iIjxA.js → app-globals-D0C5S4hU.js} +1 -1
- package/dist/esm/{button-active-BmajAby6.js → button-active-BSpTQmS9.js} +2 -2
- package/dist/esm/{capacitor-CtQSWUU0.js → capacitor-CFERIeaU.js} +1 -1
- package/dist/esm/config-DQCONYYp.js +195 -0
- package/dist/{cjs/focus-visible-BIj-I3-C.js → esm/focus-visible-BmVRXR1y.js} +1 -27
- package/dist/esm/{format-2WlZcMvG.js → format-CAmvpAez.js} +1 -1
- package/dist/esm/{framework-delegate-DO2QXccA.js → framework-delegate-FnPGymXL.js} +2 -4
- package/dist/esm/{haptic-DFgKNCce.js → haptic-DzAMWJuk.js} +1 -1
- package/dist/esm/hardware-back-button-B93Gru0Y.js +115 -0
- package/dist/esm/{helpers-DfF5_wJc.js → helpers-HEqiOzXb.js} +5 -71
- package/dist/esm/{index-BjaaZqVY.js → index-BRHzoo00.js} +3 -4
- package/dist/esm/{index-BIUWGRUl.js → index-B_dQk_WE.js} +4 -4
- package/dist/esm/{index-B4Kq2YNk.js → index-DV3sJJW8.js} +2 -3
- package/dist/esm/{index-KxK0gcRp.js → index-Dw-wN0Ja.js} +33 -3
- package/dist/esm/{index-Di034G4O.js → index-Q6UPU0Ay.js} +11 -11
- package/dist/esm/index-ZjP4CjeZ.js +7 -0
- package/dist/esm/{index-C0EQceqV.js → index-tcQvqkiX.js} +222 -42
- package/dist/esm/index.js +14 -14
- package/dist/esm/{input-shims-DvNNw70a.js → input-shims-LXhI7LEx.js} +6 -7
- package/dist/esm/{input.utils-_LkBfBWt.js → input.utils-Y6NgW8bw.js} +3 -3
- package/dist/esm/ion-accordion_2.entry.js +29 -61
- package/dist/esm/ion-action-sheet.entry.js +22 -41
- package/dist/esm/ion-alert.entry.js +40 -77
- package/dist/esm/ion-app_8.entry.js +243 -457
- 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 +24 -61
- package/dist/esm/ion-card_5.entry.js +33 -55
- package/dist/esm/ion-checkbox.entry.js +17 -34
- package/dist/esm/ion-chip.entry.js +9 -50
- package/dist/esm/ion-col_3.entry.js +57 -56
- package/dist/esm/ion-datetime-button.entry.js +9 -13
- package/dist/esm/ion-datetime_3.entry.js +51 -123
- 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 -92
- 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 +35 -146
- package/dist/esm/ion-item-option_3.entry.js +52 -467
- package/dist/esm/ion-item_8.entry.js +50 -121
- package/dist/esm/ion-loading.entry.js +18 -21
- package/dist/esm/ion-menu_3.entry.js +29 -47
- package/dist/esm/ion-modal.entry.js +181 -275
- 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 +13 -13
- package/dist/esm/ion-picker.entry.js +6 -10
- package/dist/esm/ion-popover.entry.js +19 -21
- package/dist/esm/ion-progress-bar.entry.js +9 -27
- package/dist/esm/ion-radio_2.entry.js +18 -36
- package/dist/esm/ion-range.entry.js +13 -20
- package/dist/esm/ion-refresher_2.entry.js +22 -41
- 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 +10 -11
- package/dist/esm/ion-searchbar.entry.js +27 -160
- package/dist/esm/ion-segment-content.entry.js +2 -2
- package/dist/esm/ion-segment-view.entry.js +3 -13
- package/dist/esm/ion-segment_2.entry.js +16 -23
- package/dist/esm/ion-select-modal.entry.js +38 -114
- package/dist/esm/ion-select_3.entry.js +108 -557
- package/dist/esm/ion-spinner.entry.js +8 -30
- package/dist/esm/ion-split-pane.entry.js +9 -13
- package/dist/esm/ion-tab-bar_2.entry.js +27 -149
- 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 -45
- package/dist/esm/ion-toggle.entry.js +26 -82
- package/dist/esm/ionic-global-Cp_eT4sZ.js +146 -0
- package/dist/esm/ionic.js +5 -5
- package/dist/esm/{ios.transition-CgScDbsb.js → ios.transition-ClFrsIrS.js} +5 -7
- package/dist/esm/{item-multiple-inputs-C6onMFOo.js → item-multiple-inputs-DlNuqNJm.js} +1 -1
- package/dist/esm/{keyboard-CyyguLDw.js → keyboard-CUw4ekVy.js} +1 -1
- package/dist/esm/keyboard-controller-BaaVITYt.js +165 -0
- package/dist/esm/{keyboard-WJix-wcz.js → keyboard-ywgs5efA.js} +3 -4
- package/dist/esm/loader.js +5 -5
- package/dist/esm/{md.transition-DThqYazt.js → md.transition-D0msQmzI.js} +5 -6
- package/dist/esm/{notch-controller-MTblRxjD.js → notch-controller-DKDjU_O7.js} +2 -2
- package/dist/esm/{overlays-tv6nLsmk.js → overlays-Dg0q2_tJ.js} +15 -306
- package/dist/esm/{status-tap-CoPI1M2q.js → status-tap-vO-6s4Yp.js} +3 -4
- package/dist/esm/{swipe-back-qmvTRnSq.js → swipe-back-DQ1q5MgD.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 +161 -2700
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-01f81ea5.entry.js +4 -0
- package/dist/ionic/p-06c232a4.entry.js +4 -0
- package/dist/ionic/p-0caa922c.entry.js +4 -0
- package/dist/ionic/p-0dc33652.entry.js +4 -0
- package/dist/ionic/p-0fa9c382.entry.js +4 -0
- package/dist/ionic/p-10e833ef.entry.js +4 -0
- package/dist/ionic/p-21eb76d5.entry.js +4 -0
- package/dist/ionic/p-27d30585.entry.js +4 -0
- package/dist/ionic/p-2a05aa64.entry.js +4 -0
- package/dist/ionic/p-2b204c59.entry.js +4 -0
- package/dist/ionic/p-2bb2cb18.entry.js +4 -0
- package/dist/ionic/p-2fa58e80.entry.js +4 -0
- package/dist/ionic/p-3353c229.entry.js +4 -0
- package/dist/ionic/p-34586ead.entry.js +4 -0
- package/dist/ionic/p-37e720da.entry.js +4 -0
- package/dist/ionic/p-390ca786.entry.js +4 -0
- package/dist/ionic/p-3ae5f277.entry.js +4 -0
- package/dist/ionic/p-4654ae1c.entry.js +4 -0
- package/dist/ionic/p-4745f534.entry.js +4 -0
- package/dist/ionic/p-4858af1f.entry.js +4 -0
- package/dist/ionic/p-4baa5b82.entry.js +4 -0
- package/dist/ionic/p-4e92a11f.entry.js +4 -0
- package/dist/ionic/p-50e1194a.entry.js +4 -0
- package/dist/ionic/p-5334df12.entry.js +4 -0
- package/dist/ionic/p-5d1da0a2.entry.js +4 -0
- package/dist/ionic/p-5e2f73ee.entry.js +4 -0
- package/dist/ionic/p-5eb8e86d.entry.js +4 -0
- package/dist/ionic/p-65ebdf1b.entry.js +4 -0
- package/dist/ionic/p-746fa988.entry.js +4 -0
- package/dist/ionic/p-75dc25ba.entry.js +4 -0
- package/dist/ionic/p-7c319341.entry.js +4 -0
- package/dist/ionic/p-829367ed.entry.js +4 -0
- package/dist/ionic/p-84d5ce05.entry.js +4 -0
- package/dist/ionic/p-874b4bd8.entry.js +4 -0
- package/dist/ionic/p-8eb8ee76.entry.js +4 -0
- package/dist/ionic/p-9eeaBrnk.js +4 -0
- package/dist/ionic/p-9f9db3a2.entry.js +4 -0
- package/dist/ionic/p-9fa3c405.entry.js +4 -0
- package/dist/ionic/p-BGqMS-oh.js +4 -0
- package/dist/ionic/p-BUFIpxKM.js +4 -0
- package/dist/ionic/p-BmVRXR1y.js +4 -0
- package/dist/ionic/{p-7k7Q1A38.js → p-C0eMdTCW.js} +1 -1
- package/dist/ionic/p-CFlfIb2g.js +4 -0
- package/dist/ionic/p-CIGNaXM1.js +4 -0
- package/{components/p-BPxMDyfV.js → dist/ionic/p-CKvCXMs9.js} +1 -1
- package/dist/ionic/p-CmcFnK-B.js +4 -0
- package/dist/ionic/p-CtWGkNnJ.js +4 -0
- package/dist/ionic/p-Cx3IXROA.js +4 -0
- package/dist/ionic/p-D-3ycHmd.js +4 -0
- package/dist/ionic/{p-DQDmksdT.js → p-D13Eaw-8.js} +1 -1
- package/dist/ionic/p-D4uTWt4-.js +4 -0
- package/dist/ionic/p-DC3RagnA.js +4 -0
- package/dist/ionic/p-DIuEbVLu.js +4 -0
- package/dist/ionic/p-DJztqcrH.js +4 -0
- package/dist/ionic/p-DV3sJJW8.js +4 -0
- package/dist/ionic/p-DiVJyqlX.js +4 -0
- package/dist/ionic/p-DoJvtrbw.js +4 -0
- package/dist/ionic/p-DqN5EA2O.js +4 -0
- package/dist/ionic/p-DzWaWHGc.js +4 -0
- package/dist/ionic/p-KjNvRoEp.js +4 -0
- package/dist/ionic/p-Nqf6uvGh.js +4 -0
- package/dist/ionic/p-SNAkTDfm.js +4 -0
- package/{components/p-PCVpe9Tq.js → dist/ionic/p-VAemlbDS.js} +1 -1
- package/dist/ionic/p-ZjP4CjeZ.js +4 -0
- package/dist/ionic/p-a3bdcae6.entry.js +4 -0
- package/dist/ionic/p-aaeedb6b.entry.js +4 -0
- package/dist/ionic/p-af55a72f.entry.js +4 -0
- package/dist/ionic/p-b2020591.entry.js +4 -0
- package/dist/ionic/p-b9fadbfe.entry.js +4 -0
- package/dist/ionic/p-biz8zWmJ.js +4 -0
- package/dist/ionic/p-c0fb8edd.entry.js +4 -0
- package/dist/ionic/p-c38b648e.entry.js +4 -0
- package/dist/ionic/p-c4d8641b.entry.js +4 -0
- package/dist/ionic/p-c6e49f3f.entry.js +4 -0
- package/dist/ionic/p-ca2ab74d.entry.js +4 -0
- package/dist/ionic/p-d889ff6d.entry.js +4 -0
- package/dist/ionic/p-dfa8d673.entry.js +4 -0
- package/dist/ionic/p-ea56626d.entry.js +4 -0
- package/dist/ionic/p-ef4c3bee.entry.js +4 -0
- package/dist/ionic/p-f386f6ae.entry.js +4 -0
- package/dist/ionic/p-mjKAFv89.js +4 -0
- package/dist/ionic/p-tcQvqkiX.js +5 -0
- package/dist/ionic/p-uWtqTrG8.js +4 -0
- package/dist/ionic/p-viFHDgRs.js +4 -0
- package/dist/ionic/p-xWb6fgfq.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 +12 -3
- package/dist/types/components/datetime/datetime.d.ts +6 -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 -20
- package/dist/types/components/grid/grid.d.ts +0 -4
- package/dist/types/components/header/header.d.ts +3 -26
- package/dist/types/components/header/header.utils.d.ts +5 -4
- 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 -37
- 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 -47
- package/dist/types/components/item-sliding/test/test.utils.d.ts +0 -13
- 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 +2 -1
- package/dist/types/components/modal/gestures/utils.d.ts +11 -0
- package/dist/types/components/modal/modal-interface.d.ts +7 -4
- package/dist/types/components/modal/modal.d.ts +7 -14
- package/dist/types/components/modal/safe-area-utils.d.ts +6 -0
- 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/picker-legacy/picker.d.ts +1 -2
- 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 +1 -4
- package/dist/types/components/row/row.d.ts +0 -4
- package/dist/types/components/searchbar/searchbar.d.ts +10 -59
- 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-interface.d.ts +0 -31
- package/dist/types/components/select/select.d.ts +13 -66
- package/dist/types/components/select-modal/select-modal.d.ts +0 -8
- package/dist/types/components/select-option/select-option.d.ts +1 -45
- 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-interface.d.ts +0 -1
- package/dist/types/components/tab-bar/tab-bar.d.ts +3 -41
- 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 +212 -1883
- package/dist/types/global/ionic-global.d.ts +2 -28
- package/dist/types/interface.d.ts +0 -3
- package/dist/types/utils/config.d.ts +2 -106
- package/dist/types/utils/content/index.d.ts +12 -0
- 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 -22
- package/dist/types/utils/overlays-interface.d.ts +1 -31
- package/dist/types/utils/overlays.d.ts +1 -1
- package/dist/types/utils/sanitization/index.d.ts +2 -58
- package/dist/types/utils/test/playwright/drag-element.d.ts +3 -16
- package/dist/types/utils/test/playwright/generator.d.ts +2 -31
- package/dist/types/utils/theme.d.ts +0 -9
- package/hydrate/index.js +1555 -6458
- package/hydrate/index.mjs +1555 -6458
- package/package.json +7 -10
- package/components/ion-divider.d.ts +0 -11
- package/components/ion-divider.js +0 -4
- package/components/ion-gallery-item.d.ts +0 -11
- package/components/ion-gallery-item.js +0 -4
- package/components/ion-gallery.d.ts +0 -11
- package/components/ion-gallery.js +0 -4
- package/components/p-3VXQGlP7.js +0 -4
- package/components/p-B2SvA6NE.js +0 -4
- package/components/p-B5krYTuW.js +0 -4
- package/components/p-B6a9IJZ0.js +0 -4
- package/components/p-BArGQkuV.js +0 -4
- package/components/p-BDqjX7Z_.js +0 -4
- package/components/p-BG-Q139o.js +0 -4
- package/components/p-BWH3I3Dl.js +0 -4
- package/components/p-BYSs-jZz.js +0 -4
- package/components/p-BbVhJs-a.js +0 -4
- package/components/p-Bc6odfwr.js +0 -4
- package/components/p-BjW8SOqw.js +0 -4
- package/components/p-BkWXBpOv.js +0 -4
- package/components/p-Bt9GDUv-.js +0 -4
- package/components/p-BvNVjXg4.js +0 -4
- package/components/p-BwKpO3Is.js +0 -4
- package/components/p-BwlU9cX_.js +0 -4
- package/components/p-CBxy8OYq.js +0 -4
- package/components/p-CGdeq57o.js +0 -4
- package/components/p-CHPdgLHZ.js +0 -4
- package/components/p-CMZlqiT7.js +0 -4
- package/components/p-CMzkbes2.js +0 -4
- package/components/p-CODBQrPj.js +0 -4
- package/components/p-COPA4jD9.js +0 -4
- package/components/p-CPnW-OVE.js +0 -4
- package/components/p-CRmBpp1v.js +0 -4
- package/components/p-CT3P-wjL.js +0 -4
- package/components/p-CVYFPBs-.js +0 -4
- package/components/p-CVqhQif1.js +0 -4
- package/components/p-Cc3oC60a.js +0 -4
- package/components/p-CjY4Hs1X.js +0 -4
- package/components/p-CrYjk-l3.js +0 -4
- package/components/p-CsUcWJuB.js +0 -4
- package/components/p-D0Iqw6OZ.js +0 -4
- package/components/p-D1kNlmYt.js +0 -4
- package/components/p-D1t981Ih.js +0 -4
- package/components/p-D9C5yWpF.js +0 -4
- package/components/p-DDNG-IsR.js +0 -4
- package/components/p-DJSp7Si8.js +0 -4
- package/components/p-DL5wyRub.js +0 -4
- package/components/p-DXKZXLjV.js +0 -4
- package/components/p-DaJxRxSQ.js +0 -4
- package/components/p-Dhi5xtNS.js +0 -4
- package/components/p-Do8qRv6r.js +0 -4
- package/components/p-Dt--PjSF.js +0 -4
- package/components/p-DylrHLJF.js +0 -4
- package/components/p-FCT_QxQG.js +0 -4
- package/components/p-OCde3AhO.js +0 -4
- package/components/p-OPFCgx0m.js +0 -4
- package/components/p-Rkm2AOZ2.js +0 -4
- package/components/p-WSZErkoI.js +0 -4
- package/components/p-bHSMZulH.js +0 -4
- package/components/p-fIOYmaqA.js +0 -4
- package/components/p-hNcst9K9.js +0 -4
- package/components/p-hW_3y-wm.js +0 -4
- package/components/p-nLMDgmzd.js +0 -4
- package/components/p-oI96rnOD.js +0 -4
- package/components/p-r_CFQBc1.js +0 -4
- package/components/p-vXpMhGrs.js +0 -4
- package/components/p-zBZRdRDd.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/config-DWdFbSNK.js +0 -35
- package/dist/cjs/index-Bj07IRTB.js +0 -429
- package/dist/cjs/ion-divider.cjs.entry.js +0 -51
- package/dist/cjs/ion-gallery-item.cjs.entry.js +0 -59
- package/dist/cjs/ion-gallery.cjs.entry.js +0 -607
- package/dist/cjs/ionic-global-QoUqobrQ.js +0 -519
- package/dist/cjs/list-a-7GSA6K.js +0 -8
- package/dist/cjs/overlay-control-label-DnRLQR1t.js +0 -52
- package/dist/cjs/scroll-hide-controller-G9HOmmhN.js +0 -345
- package/dist/cjs/select-option-render-DqBHEjDn.js +0 -124
- 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/action-sheet/action-sheet.ionic.css +0 -494
- package/dist/collection/components/alert/alert.ionic.css +0 -787
- package/dist/collection/components/avatar/avatar.ionic.css +0 -385
- package/dist/collection/components/backdrop/backdrop.ionic.css +0 -109
- package/dist/collection/components/badge/badge.ionic.css +0 -272
- package/dist/collection/components/button/button.ionic.css +0 -644
- 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 -543
- 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/footer/footer-interface.js +0 -1
- package/dist/collection/components/gallery/gallery-constants.js +0 -12
- package/dist/collection/components/gallery/gallery-interface.js +0 -1
- package/dist/collection/components/gallery/gallery.css +0 -15
- package/dist/collection/components/gallery/gallery.js +0 -679
- package/dist/collection/components/gallery/test/utils.js +0 -100
- package/dist/collection/components/gallery-item/gallery-item.css +0 -49
- package/dist/collection/components/gallery-item/gallery-item.js +0 -99
- package/dist/collection/components/header/header-interface.js +0 -1
- package/dist/collection/components/header/header.ionic.css +0 -250
- package/dist/collection/components/input/input.ionic.css +0 -891
- 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 -496
- package/dist/collection/components/item-option/item-option.ionic.css +0 -277
- package/dist/collection/components/item-options/item-options.ionic.css +0 -221
- package/dist/collection/components/item-sliding/item-sliding.ionic.css +0 -211
- 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 -255
- package/dist/collection/components/popover/popover.ionic.css +0 -290
- 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 -622
- package/dist/collection/components/segment/segment.ionic.css +0 -115
- package/dist/collection/components/segment-button/segment-button.ionic.css +0 -352
- package/dist/collection/components/select/select.ionic.css +0 -809
- package/dist/collection/components/select-modal/select-modal.ionic.css +0 -257
- package/dist/collection/components/select-popover/select-popover.ionic.css +0 -255
- package/dist/collection/components/spinner/spinner.native.css +0 -199
- package/dist/collection/components/tab-bar/tab-bar.ionic.css +0 -249
- package/dist/collection/components/tab-button/tab-button.ionic.css +0 -373
- 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 -512
- package/dist/collection/components/toolbar/test/image.svg +0 -1
- package/dist/collection/components/toolbar/toolbar.ionic.css +0 -249
- package/dist/collection/utils/css-value-validation.js +0 -39
- package/dist/collection/utils/overlay-control-label.js +0 -47
- package/dist/collection/utils/scroll-hide-controller.js +0 -178
- package/dist/collection/utils/select-option-render.js +0 -119
- 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/config-BwKpO3Is.js +0 -31
- package/dist/esm/index-Mq5pCWmZ.js +0 -424
- package/dist/esm/ion-divider.entry.js +0 -49
- package/dist/esm/ion-gallery-item.entry.js +0 -57
- package/dist/esm/ion-gallery.entry.js +0 -605
- package/dist/esm/ionic-global-BpkTponr.js +0 -508
- package/dist/esm/list-Dhi5xtNS.js +0 -6
- package/dist/esm/overlay-control-label-CODBQrPj.js +0 -49
- package/dist/esm/scroll-hide-controller-CUNW7EpD.js +0 -342
- package/dist/esm/select-option-render-BlKZ2H83.js +0 -122
- package/dist/esm/validity-BjW8SOqw.js +0 -48
- package/dist/esm/x-BDqjX7Z_.js +0 -6
- package/dist/ionic/p--sroV-k-.js +0 -4
- package/dist/ionic/p-05ce9821.entry.js +0 -4
- package/dist/ionic/p-085b8cdf.entry.js +0 -4
- package/dist/ionic/p-0ef6bfc4.entry.js +0 -4
- package/dist/ionic/p-176d37f8.entry.js +0 -4
- package/dist/ionic/p-18b7771e.entry.js +0 -4
- package/dist/ionic/p-19f34fe5.entry.js +0 -4
- package/dist/ionic/p-1b6e3914.entry.js +0 -4
- package/dist/ionic/p-2740db6e.entry.js +0 -4
- package/dist/ionic/p-2a1abbb1.entry.js +0 -4
- package/dist/ionic/p-2d9c681b.entry.js +0 -4
- package/dist/ionic/p-2fba8f15.entry.js +0 -4
- package/dist/ionic/p-3886bfbe.entry.js +0 -4
- package/dist/ionic/p-3ab9c35a.entry.js +0 -4
- package/dist/ionic/p-3b4c5cb5.entry.js +0 -4
- package/dist/ionic/p-3cfb4ff2.entry.js +0 -4
- package/dist/ionic/p-41afaf15.entry.js +0 -4
- package/dist/ionic/p-47b9dac0.entry.js +0 -4
- package/dist/ionic/p-54419365.entry.js +0 -4
- package/dist/ionic/p-54b7972e.entry.js +0 -4
- package/dist/ionic/p-602cf876.entry.js +0 -4
- package/dist/ionic/p-678ee14a.entry.js +0 -4
- package/dist/ionic/p-679c1448.entry.js +0 -4
- package/dist/ionic/p-68ea8ed1.entry.js +0 -4
- package/dist/ionic/p-6e1ec775.entry.js +0 -4
- package/dist/ionic/p-745d6b2b.entry.js +0 -4
- package/dist/ionic/p-77254b78.entry.js +0 -4
- package/dist/ionic/p-89fedfda.entry.js +0 -4
- package/dist/ionic/p-8cf82b85.entry.js +0 -4
- package/dist/ionic/p-8d5fd199.entry.js +0 -4
- package/dist/ionic/p-9087119f.entry.js +0 -4
- package/dist/ionic/p-9c508a22.entry.js +0 -4
- package/dist/ionic/p-B4Kq2YNk.js +0 -4
- package/dist/ionic/p-BDSH5ckF.js +0 -4
- package/dist/ionic/p-BDqjX7Z_.js +0 -4
- package/dist/ionic/p-BFy_BK46.js +0 -4
- package/dist/ionic/p-BYSs-jZz.js +0 -4
- package/dist/ionic/p-BjW8SOqw.js +0 -4
- package/dist/ionic/p-BlZo7Gy-.js +0 -4
- package/dist/ionic/p-Bq8S4vhI.js +0 -4
- package/dist/ionic/p-BwKpO3Is.js +0 -4
- package/dist/ionic/p-C0EQceqV.js +0 -5
- package/dist/ionic/p-C1I_d964.js +0 -4
- package/dist/ionic/p-CB91Gr9M.js +0 -4
- package/dist/ionic/p-CEkwLb3L.js +0 -4
- package/dist/ionic/p-CJsJQPQD.js +0 -4
- package/dist/ionic/p-CODBQrPj.js +0 -4
- package/dist/ionic/p-Ch7MBNn_.js +0 -4
- package/dist/ionic/p-CnAWnbNK.js +0 -4
- package/dist/ionic/p-D1t981Ih.js +0 -4
- package/dist/ionic/p-D4MT1z4_.js +0 -4
- package/dist/ionic/p-D4veLKCq.js +0 -4
- package/dist/ionic/p-DF7ubVci.js +0 -4
- package/dist/ionic/p-DMaSfupH.js +0 -4
- package/dist/ionic/p-DTsDGZPd.js +0 -4
- package/dist/ionic/p-DaJxRxSQ.js +0 -4
- package/dist/ionic/p-DdCaKRle.js +0 -4
- package/dist/ionic/p-Dhi5xtNS.js +0 -4
- package/dist/ionic/p-Dy243NXW.js +0 -4
- package/dist/ionic/p-YIsE5bNG.js +0 -4
- package/dist/ionic/p-a4af8e39.entry.js +0 -4
- package/dist/ionic/p-b2368a93.entry.js +0 -4
- package/dist/ionic/p-b275f17e.entry.js +0 -4
- package/dist/ionic/p-c5635175.entry.js +0 -4
- package/dist/ionic/p-c76d57fb.entry.js +0 -4
- package/dist/ionic/p-ca3a07b5.entry.js +0 -4
- package/dist/ionic/p-ced3cda1.entry.js +0 -4
- package/dist/ionic/p-cf22e991.entry.js +0 -4
- package/dist/ionic/p-d0c1d21d.entry.js +0 -4
- package/dist/ionic/p-d0d42da6.entry.js +0 -4
- package/dist/ionic/p-d1de76b8.entry.js +0 -4
- package/dist/ionic/p-d33dfc12.entry.js +0 -4
- package/dist/ionic/p-d34bfb61.entry.js +0 -4
- package/dist/ionic/p-dbc08f67.entry.js +0 -4
- package/dist/ionic/p-dc8e0b91.entry.js +0 -4
- package/dist/ionic/p-df642ef5.entry.js +0 -4
- package/dist/ionic/p-e04d63e1.entry.js +0 -4
- package/dist/ionic/p-e3615478.entry.js +0 -4
- package/dist/ionic/p-f1810d29.entry.js +0 -4
- package/dist/ionic/p-f1a8aead.entry.js +0 -4
- package/dist/ionic/p-f69af9d3.entry.js +0 -4
- package/dist/ionic/p-f8001f8f.entry.js +0 -4
- package/dist/ionic/p-f8b63ebb.entry.js +0 -4
- package/dist/ionic/p-fIOYmaqA.js +0 -4
- package/dist/ionic/p-fc6d26ff.entry.js +0 -4
- package/dist/ionic/p-im8OkZlj.js +0 -4
- package/dist/ionic/p-lMb_45ax.js +0 -4
- package/dist/ionic/p-oUgyLDGL.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/footer/footer-interface.d.ts +0 -1
- package/dist/types/components/gallery/gallery-constants.d.ts +0 -9
- package/dist/types/components/gallery/gallery-interface.d.ts +0 -10
- package/dist/types/components/gallery/gallery.d.ts +0 -218
- package/dist/types/components/gallery/test/utils.d.ts +0 -3
- package/dist/types/components/gallery-item/gallery-item.d.ts +0 -33
- package/dist/types/components/header/header-interface.d.ts +0 -1
- 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/utils/css-value-validation.d.ts +0 -21
- package/dist/types/utils/overlay-control-label.d.ts +0 -34
- package/dist/types/utils/scroll-hide-controller.d.ts +0 -56
- package/dist/types/utils/select-option-render.d.ts +0 -53
- /package/dist/collection/components/{refresher-content/refresher-content.css → input-password-toggle/input-password-toggle.css} +0 -0
|
@@ -3,23 +3,24 @@
|
|
|
3
3
|
*/
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
|
-
var index$
|
|
7
|
-
var index$1 = require('./index-
|
|
8
|
-
var frameworkDelegate = require('./framework-delegate-
|
|
9
|
-
var helpers = require('./helpers-
|
|
6
|
+
var index$3 = require('./index-BfaXsATC.js');
|
|
7
|
+
var index$1 = require('./index-BiRrzGDi.js');
|
|
8
|
+
var frameworkDelegate = require('./framework-delegate-BgU6U9Ez.js');
|
|
9
|
+
var helpers = require('./helpers-gntk8bfm.js');
|
|
10
10
|
var lockController = require('./lock-controller-aDB9wrEf.js');
|
|
11
|
-
var capacitor = require('./capacitor-
|
|
12
|
-
var overlays = require('./overlays-
|
|
13
|
-
var theme = require('./theme-
|
|
14
|
-
var index$
|
|
15
|
-
var ionicGlobal = require('./ionic-global-
|
|
16
|
-
var keyboard = require('./keyboard-
|
|
17
|
-
var animation = require('./animation-
|
|
11
|
+
var capacitor = require('./capacitor-DmA66EwP.js');
|
|
12
|
+
var overlays = require('./overlays-DuSEMhIW.js');
|
|
13
|
+
var theme = require('./theme-CeDs6Hcv.js');
|
|
14
|
+
var index$4 = require('./index-BS2uhvhT.js');
|
|
15
|
+
var ionicGlobal = require('./ionic-global-BerQGEpE.js');
|
|
16
|
+
var keyboard = require('./keyboard-hHzlEQpk.js');
|
|
17
|
+
var animation = require('./animation-Ch16T-Nb.js');
|
|
18
18
|
var cubicBezier = require('./cubic-bezier-DAjy1V-e.js');
|
|
19
|
-
var index = require('./index-CAvQ7Tka.js');
|
|
20
|
-
require('./
|
|
19
|
+
var index$2 = require('./index-CAvQ7Tka.js');
|
|
20
|
+
var index = require('./index-DkNv4J_i.js');
|
|
21
|
+
require('./hardware-back-button-CXmUnTJC.js');
|
|
21
22
|
require('./gesture-controller-dtqlP_q4.js');
|
|
22
|
-
require('./keyboard-
|
|
23
|
+
require('./keyboard-UuAS4D_9.js');
|
|
23
24
|
|
|
24
25
|
var Style;
|
|
25
26
|
(function (Style) {
|
|
@@ -116,116 +117,33 @@ const getBackdropValueForSheet = (x, backdropBreakpoint) => {
|
|
|
116
117
|
*
|
|
117
118
|
*/
|
|
118
119
|
const setCardStatusBarDark = () => {
|
|
119
|
-
if (!
|
|
120
|
+
if (!index.win || index.win.innerWidth >= 768) {
|
|
120
121
|
return;
|
|
121
122
|
}
|
|
122
123
|
StatusBar.setStyle({ style: Style.Dark });
|
|
123
124
|
};
|
|
124
125
|
const setCardStatusBarDefault = (defaultStyle = Style.Default) => {
|
|
125
|
-
if (!
|
|
126
|
+
if (!index.win || index.win.innerWidth >= 768) {
|
|
126
127
|
return;
|
|
127
128
|
}
|
|
128
129
|
StatusBar.setStyle({ style: defaultStyle });
|
|
129
130
|
};
|
|
130
131
|
|
|
131
|
-
const createSheetEnterAnimation = (opts) => {
|
|
132
|
-
const { currentBreakpoint, backdropBreakpoint, expandToScroll, staticBackdropOpacity } = opts;
|
|
133
|
-
/**
|
|
134
|
-
* If the backdropBreakpoint is undefined, then the backdrop
|
|
135
|
-
* should always fade in. If the backdropBreakpoint came before the
|
|
136
|
-
* current breakpoint, then the backdrop should be fading in.
|
|
137
|
-
*/
|
|
138
|
-
const shouldShowBackdrop = backdropBreakpoint === undefined || backdropBreakpoint < currentBreakpoint;
|
|
139
|
-
let initialBackdrop = '0';
|
|
140
|
-
if (staticBackdropOpacity) {
|
|
141
|
-
initialBackdrop = 'calc(var(--backdrop-opacity)';
|
|
142
|
-
}
|
|
143
|
-
else if (shouldShowBackdrop) {
|
|
144
|
-
initialBackdrop = `calc(var(--backdrop-opacity) * ${currentBreakpoint})`;
|
|
145
|
-
}
|
|
146
|
-
const backdropAnimation = animation.createAnimation('backdropAnimation').fromTo('opacity', 0, initialBackdrop);
|
|
147
|
-
if (shouldShowBackdrop) {
|
|
148
|
-
backdropAnimation
|
|
149
|
-
.beforeStyles({
|
|
150
|
-
'pointer-events': 'none',
|
|
151
|
-
})
|
|
152
|
-
.afterClearStyles(['pointer-events']);
|
|
153
|
-
}
|
|
154
|
-
const wrapperAnimation = animation.createAnimation('wrapperAnimation').keyframes([
|
|
155
|
-
{ offset: 0, opacity: 1, transform: 'translateY(100%)' },
|
|
156
|
-
{ offset: 1, opacity: 1, transform: `translateY(${100 - currentBreakpoint * 100}%)` },
|
|
157
|
-
]);
|
|
158
|
-
/**
|
|
159
|
-
* This allows the content to be scrollable at any breakpoint.
|
|
160
|
-
*/
|
|
161
|
-
const contentAnimation = !expandToScroll
|
|
162
|
-
? animation.createAnimation('contentAnimation').keyframes([
|
|
163
|
-
{ offset: 0, opacity: 1, maxHeight: `${(1 - currentBreakpoint) * 100}%` },
|
|
164
|
-
{ offset: 1, opacity: 1, maxHeight: `${currentBreakpoint * 100}%` },
|
|
165
|
-
])
|
|
166
|
-
: undefined;
|
|
167
|
-
return { wrapperAnimation, backdropAnimation, contentAnimation };
|
|
168
|
-
};
|
|
169
|
-
const createSheetLeaveAnimation = (opts) => {
|
|
170
|
-
const { currentBreakpoint, backdropBreakpoint } = opts;
|
|
171
|
-
/**
|
|
172
|
-
* Backdrop does not always fade in from 0 to 1 if backdropBreakpoint
|
|
173
|
-
* is defined, so we need to account for that offset by figuring out
|
|
174
|
-
* what the current backdrop value should be.
|
|
175
|
-
*/
|
|
176
|
-
const backdropValue = `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(currentBreakpoint, backdropBreakpoint)})`;
|
|
177
|
-
const defaultBackdrop = [
|
|
178
|
-
{ offset: 0, opacity: backdropValue },
|
|
179
|
-
{ offset: 1, opacity: 0 },
|
|
180
|
-
];
|
|
181
|
-
const customBackdrop = [
|
|
182
|
-
{ offset: 0, opacity: backdropValue },
|
|
183
|
-
{ offset: backdropBreakpoint, opacity: 0 },
|
|
184
|
-
{ offset: 1, opacity: 0 },
|
|
185
|
-
];
|
|
186
|
-
const backdropAnimation = animation.createAnimation('backdropAnimation').keyframes(backdropBreakpoint !== 0 ? customBackdrop : defaultBackdrop);
|
|
187
|
-
const wrapperAnimation = animation.createAnimation('wrapperAnimation').keyframes([
|
|
188
|
-
{ offset: 0, opacity: 1, transform: `translateY(${100 - currentBreakpoint * 100}%)` },
|
|
189
|
-
{ offset: 1, opacity: 1, transform: `translateY(100%)` },
|
|
190
|
-
]);
|
|
191
|
-
return { wrapperAnimation, backdropAnimation };
|
|
192
|
-
};
|
|
193
|
-
|
|
194
|
-
const createEnterAnimation$2 = () => {
|
|
195
|
-
const backdropAnimation = animation.createAnimation()
|
|
196
|
-
.fromTo('opacity', 0.01, 'var(--backdrop-opacity)')
|
|
197
|
-
.beforeStyles({
|
|
198
|
-
'pointer-events': 'none',
|
|
199
|
-
})
|
|
200
|
-
.afterClearStyles(['pointer-events']);
|
|
201
|
-
const wrapperAnimation = animation.createAnimation().keyframes([
|
|
202
|
-
{ offset: 0, opacity: 0.01, transform: 'translateY(40px)' },
|
|
203
|
-
{ offset: 1, opacity: 1, transform: `translateY(0px)` },
|
|
204
|
-
]);
|
|
205
|
-
return { backdropAnimation, wrapperAnimation, contentAnimation: undefined };
|
|
206
|
-
};
|
|
207
132
|
/**
|
|
208
|
-
*
|
|
133
|
+
* Swiping is only possible when the content is scrolled to the top, so that we
|
|
134
|
+
* do not interfere with scrolling, and never on content with a refresher.
|
|
135
|
+
*
|
|
136
|
+
* Note: We cannot solve the refresher case with gesture priority as the iOS
|
|
137
|
+
* native refresh gesture uses a scroll listener in addition to a gesture.
|
|
138
|
+
*
|
|
139
|
+
* Note: Do not use `getScrollElement` here because we need this to be a
|
|
140
|
+
* synchronous operation, and `getScrollElement` is asynchronous.
|
|
209
141
|
*/
|
|
210
|
-
const
|
|
211
|
-
const
|
|
212
|
-
const
|
|
213
|
-
|
|
214
|
-
backdropAnimation.addElement(root.querySelector('ion-backdrop'));
|
|
215
|
-
wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
|
|
216
|
-
// The content animation is only added if scrolling is enabled for
|
|
217
|
-
// all the breakpoints.
|
|
218
|
-
!expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
|
|
219
|
-
backdropAnimation.duration(300).easing('ease-out');
|
|
220
|
-
wrapperAnimation.duration(400).easing('cubic-bezier(0.32, 0.68, 0, 1)');
|
|
221
|
-
contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.duration(400).easing('cubic-bezier(0.32, 0.68, 0, 1)');
|
|
222
|
-
const baseAnimation = animation.createAnimation().addElement(baseEl).addAnimation([backdropAnimation, wrapperAnimation]);
|
|
223
|
-
if (contentAnimation) {
|
|
224
|
-
baseAnimation.addAnimation(contentAnimation);
|
|
225
|
-
}
|
|
226
|
-
return baseAnimation;
|
|
142
|
+
const canSwipeOnContent = (contentEl) => {
|
|
143
|
+
const scrollEl = index$1.isIonContent(contentEl) ? helpers.getElementRoot(contentEl).querySelector('.inner-scroll') : contentEl;
|
|
144
|
+
const hasRefresherInContent = !!index$1.findRefresherInContent(contentEl);
|
|
145
|
+
return !hasRefresherInContent && scrollEl.scrollTop === 0;
|
|
227
146
|
};
|
|
228
|
-
|
|
229
147
|
const handleCanDismiss = async (el, animation) => {
|
|
230
148
|
/**
|
|
231
149
|
* If canDismiss is not a function
|
|
@@ -356,7 +274,6 @@ const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss, onD
|
|
|
356
274
|
let isOpen = false;
|
|
357
275
|
let canDismissBlocksGesture = false;
|
|
358
276
|
let contentEl = null;
|
|
359
|
-
let scrollEl = null;
|
|
360
277
|
const canDismissMaxStep = 0.2;
|
|
361
278
|
let initialScrollY = true;
|
|
362
279
|
let lastStep = 0;
|
|
@@ -379,12 +296,6 @@ const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss, onD
|
|
|
379
296
|
return true;
|
|
380
297
|
}
|
|
381
298
|
/**
|
|
382
|
-
* If we are swiping on the content,
|
|
383
|
-
* swiping should only be possible if
|
|
384
|
-
* the content is scrolled all the way
|
|
385
|
-
* to the top so that we do not interfere
|
|
386
|
-
* with scrolling.
|
|
387
|
-
*
|
|
388
299
|
* We cannot assume that the `ion-content`
|
|
389
300
|
* target will remain consistent between
|
|
390
301
|
* swipes. For example, when using
|
|
@@ -395,29 +306,7 @@ const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss, onD
|
|
|
395
306
|
*/
|
|
396
307
|
contentEl = index$1.findClosestIonContent(target);
|
|
397
308
|
if (contentEl) {
|
|
398
|
-
|
|
399
|
-
* The card should never swipe to close
|
|
400
|
-
* on the content with a refresher.
|
|
401
|
-
* Note: We cannot solve this by making the
|
|
402
|
-
* swipeToClose gesture have a higher priority
|
|
403
|
-
* than the refresher gesture as the iOS native
|
|
404
|
-
* refresh gesture uses a scroll listener in
|
|
405
|
-
* addition to a gesture.
|
|
406
|
-
*
|
|
407
|
-
* Note: Do not use getScrollElement here
|
|
408
|
-
* because we need this to be a synchronous
|
|
409
|
-
* operation, and getScrollElement is
|
|
410
|
-
* asynchronous.
|
|
411
|
-
*/
|
|
412
|
-
if (index$1.isIonContent(contentEl)) {
|
|
413
|
-
const root = helpers.getElementRoot(contentEl);
|
|
414
|
-
scrollEl = root.querySelector('.inner-scroll');
|
|
415
|
-
}
|
|
416
|
-
else {
|
|
417
|
-
scrollEl = contentEl;
|
|
418
|
-
}
|
|
419
|
-
const hasRefresherInContent = !!contentEl.querySelector('ion-refresher');
|
|
420
|
-
return !hasRefresherInContent && scrollEl.scrollTop === 0;
|
|
309
|
+
return canSwipeOnContent(contentEl);
|
|
421
310
|
}
|
|
422
311
|
/**
|
|
423
312
|
* Card should be swipeable on all
|
|
@@ -604,7 +493,7 @@ const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss, onD
|
|
|
604
493
|
};
|
|
605
494
|
onDragEnd(eventDetail);
|
|
606
495
|
};
|
|
607
|
-
const gesture = index.createGesture({
|
|
496
|
+
const gesture = index$2.createGesture({
|
|
608
497
|
el,
|
|
609
498
|
gestureName: 'modalSwipeToClose',
|
|
610
499
|
gesturePriority: overlays.OVERLAY_GESTURE_PRIORITY,
|
|
@@ -659,6 +548,63 @@ const calculateProgress = (el, deltaY) => {
|
|
|
659
548
|
return Math.max(0, Math.min(1, roundedProgress));
|
|
660
549
|
};
|
|
661
550
|
|
|
551
|
+
const createSheetEnterAnimation = (opts) => {
|
|
552
|
+
const { currentBreakpoint, backdropBreakpoint, expandToScroll } = opts;
|
|
553
|
+
/**
|
|
554
|
+
* If the backdropBreakpoint is undefined, then the backdrop
|
|
555
|
+
* should always fade in. If the backdropBreakpoint came before the
|
|
556
|
+
* current breakpoint, then the backdrop should be fading in.
|
|
557
|
+
*/
|
|
558
|
+
const shouldShowBackdrop = backdropBreakpoint === undefined || backdropBreakpoint < currentBreakpoint;
|
|
559
|
+
const initialBackdrop = shouldShowBackdrop ? `calc(var(--backdrop-opacity) * ${currentBreakpoint})` : '0';
|
|
560
|
+
const backdropAnimation = animation.createAnimation('backdropAnimation').fromTo('opacity', 0, initialBackdrop);
|
|
561
|
+
if (shouldShowBackdrop) {
|
|
562
|
+
backdropAnimation
|
|
563
|
+
.beforeStyles({
|
|
564
|
+
'pointer-events': 'none',
|
|
565
|
+
})
|
|
566
|
+
.afterClearStyles(['pointer-events']);
|
|
567
|
+
}
|
|
568
|
+
const wrapperAnimation = animation.createAnimation('wrapperAnimation').keyframes([
|
|
569
|
+
{ offset: 0, opacity: 1, transform: 'translateY(100%)' },
|
|
570
|
+
{ offset: 1, opacity: 1, transform: `translateY(${100 - currentBreakpoint * 100}%)` },
|
|
571
|
+
]);
|
|
572
|
+
/**
|
|
573
|
+
* This allows the content to be scrollable at any breakpoint.
|
|
574
|
+
*/
|
|
575
|
+
const contentAnimation = !expandToScroll
|
|
576
|
+
? animation.createAnimation('contentAnimation').keyframes([
|
|
577
|
+
{ offset: 0, opacity: 1, maxHeight: `${(1 - currentBreakpoint) * 100}%` },
|
|
578
|
+
{ offset: 1, opacity: 1, maxHeight: `${currentBreakpoint * 100}%` },
|
|
579
|
+
])
|
|
580
|
+
: undefined;
|
|
581
|
+
return { wrapperAnimation, backdropAnimation, contentAnimation };
|
|
582
|
+
};
|
|
583
|
+
const createSheetLeaveAnimation = (opts) => {
|
|
584
|
+
const { currentBreakpoint, backdropBreakpoint } = opts;
|
|
585
|
+
/**
|
|
586
|
+
* Backdrop does not always fade in from 0 to 1 if backdropBreakpoint
|
|
587
|
+
* is defined, so we need to account for that offset by figuring out
|
|
588
|
+
* what the current backdrop value should be.
|
|
589
|
+
*/
|
|
590
|
+
const backdropValue = `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(currentBreakpoint, backdropBreakpoint)})`;
|
|
591
|
+
const defaultBackdrop = [
|
|
592
|
+
{ offset: 0, opacity: backdropValue },
|
|
593
|
+
{ offset: 1, opacity: 0 },
|
|
594
|
+
];
|
|
595
|
+
const customBackdrop = [
|
|
596
|
+
{ offset: 0, opacity: backdropValue },
|
|
597
|
+
{ offset: backdropBreakpoint, opacity: 0 },
|
|
598
|
+
{ offset: 1, opacity: 0 },
|
|
599
|
+
];
|
|
600
|
+
const backdropAnimation = animation.createAnimation('backdropAnimation').keyframes(backdropBreakpoint !== 0 ? customBackdrop : defaultBackdrop);
|
|
601
|
+
const wrapperAnimation = animation.createAnimation('wrapperAnimation').keyframes([
|
|
602
|
+
{ offset: 0, opacity: 1, transform: `translateY(${100 - currentBreakpoint * 100}%)` },
|
|
603
|
+
{ offset: 1, opacity: 1, transform: `translateY(100%)` },
|
|
604
|
+
]);
|
|
605
|
+
return { wrapperAnimation, backdropAnimation };
|
|
606
|
+
};
|
|
607
|
+
|
|
662
608
|
const createEnterAnimation$1 = () => {
|
|
663
609
|
const backdropAnimation = animation.createAnimation()
|
|
664
610
|
.fromTo('opacity', 0.01, 'var(--backdrop-opacity)')
|
|
@@ -1049,16 +995,17 @@ const mdLeaveAnimation = (baseEl, opts) => {
|
|
|
1049
995
|
return baseAnimation;
|
|
1050
996
|
};
|
|
1051
997
|
|
|
1052
|
-
const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], expandToScroll, getCurrentBreakpoint, onDismiss, onBreakpointChange,
|
|
998
|
+
const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], expandToScroll, getCurrentBreakpoint, onDismiss, onBreakpointChange, onDragStart, onDragMove, onDragEnd) => {
|
|
999
|
+
var _a;
|
|
1053
1000
|
// Defaults for the sheet swipe animation
|
|
1054
1001
|
const defaultBackdrop = [
|
|
1055
1002
|
{ offset: 0, opacity: 'var(--backdrop-opacity)' },
|
|
1056
|
-
{ offset: 1, opacity:
|
|
1003
|
+
{ offset: 1, opacity: 0.01 },
|
|
1057
1004
|
];
|
|
1058
1005
|
const customBackdrop = [
|
|
1059
1006
|
{ offset: 0, opacity: 'var(--backdrop-opacity)' },
|
|
1060
|
-
{ offset: 1 - backdropBreakpoint, opacity:
|
|
1061
|
-
{ offset: 1, opacity:
|
|
1007
|
+
{ offset: 1 - backdropBreakpoint, opacity: 0 },
|
|
1008
|
+
{ offset: 1, opacity: 0 },
|
|
1062
1009
|
];
|
|
1063
1010
|
const SheetDefaults = {
|
|
1064
1011
|
WRAPPER_KEYFRAMES: [
|
|
@@ -1072,6 +1019,8 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1072
1019
|
],
|
|
1073
1020
|
};
|
|
1074
1021
|
const contentEl = baseEl.querySelector('ion-content');
|
|
1022
|
+
// Cache the initial value so the gesture restores it instead of forcing scrolling on.
|
|
1023
|
+
const initialContentScrollY = (_a = contentEl === null || contentEl === void 0 ? void 0 : contentEl.scrollY) !== null && _a !== void 0 ? _a : true;
|
|
1075
1024
|
const height = wrapperEl.clientHeight;
|
|
1076
1025
|
let currentBreakpoint = initialBreakpoint;
|
|
1077
1026
|
let offset = 0;
|
|
@@ -1232,9 +1181,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1232
1181
|
}
|
|
1233
1182
|
const canStart = (detail) => {
|
|
1234
1183
|
/**
|
|
1235
|
-
* If we are swiping on the content, swiping should only be possible if the content
|
|
1236
|
-
* is scrolled all the way to the top so that we do not interfere with scrolling.
|
|
1237
|
-
*
|
|
1238
1184
|
* We cannot assume that the `ion-content` target will remain consistent between swipes.
|
|
1239
1185
|
* For example, when using ion-nav within a modal it is possible to swipe, push a view,
|
|
1240
1186
|
* and then swipe again. The target content will not be the same between swipes.
|
|
@@ -1242,26 +1188,11 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1242
1188
|
const contentEl = index$1.findClosestIonContent(detail.event.target);
|
|
1243
1189
|
currentBreakpoint = getCurrentBreakpoint();
|
|
1244
1190
|
/**
|
|
1245
|
-
*
|
|
1246
|
-
*
|
|
1191
|
+
* Upwards swipes on the content cannot move the sheet anyway, so this only
|
|
1192
|
+
* blocks swiping the sheet down from the content.
|
|
1247
1193
|
*/
|
|
1248
|
-
if (!expandToScroll
|
|
1249
|
-
|
|
1250
|
-
return scrollEl.scrollTop === 0;
|
|
1251
|
-
}
|
|
1252
|
-
if (currentBreakpoint === 1 && contentEl) {
|
|
1253
|
-
/**
|
|
1254
|
-
* The modal should never swipe to close on the content with a refresher.
|
|
1255
|
-
* Note 1: We cannot solve this by making this gesture have a higher priority than
|
|
1256
|
-
* the refresher gesture as the iOS native refresh gesture uses a scroll listener in
|
|
1257
|
-
* addition to a gesture.
|
|
1258
|
-
*
|
|
1259
|
-
* Note 2: Do not use getScrollElement here because we need this to be a synchronous
|
|
1260
|
-
* operation, and getScrollElement is asynchronous.
|
|
1261
|
-
*/
|
|
1262
|
-
const scrollEl = index$1.isIonContent(contentEl) ? helpers.getElementRoot(contentEl).querySelector('.inner-scroll') : contentEl;
|
|
1263
|
-
const hasRefresherInContent = !!contentEl.querySelector('ion-refresher');
|
|
1264
|
-
return !hasRefresherInContent && scrollEl.scrollTop === 0;
|
|
1194
|
+
if (contentEl && (!expandToScroll || currentBreakpoint === 1)) {
|
|
1195
|
+
return canSwipeOnContent(contentEl);
|
|
1265
1196
|
}
|
|
1266
1197
|
return true;
|
|
1267
1198
|
};
|
|
@@ -1388,9 +1319,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1388
1319
|
: step;
|
|
1389
1320
|
offset = helpers.clamp(0.0001, processedStep, maxStep);
|
|
1390
1321
|
animation.progressStep(offset);
|
|
1391
|
-
const snapBreakpoint =
|
|
1392
|
-
? calculateVelocitySnapBreakpoint(detail.deltaY, detail.velocityY, detail.currentY)
|
|
1393
|
-
: calculatePositionSnapBreakpoint(detail.deltaY);
|
|
1322
|
+
const snapBreakpoint = calculateSnapBreakpoint(detail.deltaY);
|
|
1394
1323
|
const eventDetail = {
|
|
1395
1324
|
currentY: detail.currentY,
|
|
1396
1325
|
deltaY: detail.deltaY,
|
|
@@ -1401,9 +1330,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1401
1330
|
onDragMove(eventDetail);
|
|
1402
1331
|
};
|
|
1403
1332
|
const onEnd = (detail) => {
|
|
1404
|
-
const snapBreakpoint =
|
|
1405
|
-
? calculateVelocitySnapBreakpoint(detail.deltaY, detail.velocityY, detail.currentY)
|
|
1406
|
-
: calculatePositionSnapBreakpoint(detail.deltaY);
|
|
1333
|
+
const snapBreakpoint = calculateSnapBreakpoint(detail.deltaY);
|
|
1407
1334
|
const eventDetail = {
|
|
1408
1335
|
currentY: detail.currentY,
|
|
1409
1336
|
deltaY: detail.deltaY,
|
|
@@ -1450,14 +1377,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1450
1377
|
*/
|
|
1451
1378
|
const shouldPreventDismiss = canDismiss && breakpoint === 0;
|
|
1452
1379
|
const snapToBreakpoint = shouldPreventDismiss ? currentBreakpoint : breakpoint;
|
|
1453
|
-
/**
|
|
1454
|
-
* Detect snap-back behavior: when the snap target is the same as the current breakpoint,
|
|
1455
|
-
* the user released before crossing the threshold to a new breakpoint.
|
|
1456
|
-
* Apply different timing and easing for snap-back vs. snap-to-new.
|
|
1457
|
-
*/
|
|
1458
|
-
const isSnapBack = snapToBreakpoint === currentBreakpoint;
|
|
1459
|
-
const duration = usePhysicsBasedGesture ? (isSnapBack ? 300 : 400) : 500;
|
|
1460
|
-
const easing = isSnapBack ? 'cubic-bezier(0.34, 1.4, 0.64, 1)' : 'cubic-bezier(0.32, 0.68, 0, 1)';
|
|
1461
1380
|
const shouldRemainOpen = snapToBreakpoint !== 0;
|
|
1462
1381
|
currentBreakpoint = 0;
|
|
1463
1382
|
/**
|
|
@@ -1472,15 +1391,11 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1472
1391
|
backdropAnimation.keyframes([
|
|
1473
1392
|
{
|
|
1474
1393
|
offset: 0,
|
|
1475
|
-
opacity:
|
|
1476
|
-
? 'var(--backdrop-opacity)'
|
|
1477
|
-
: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(1 - breakpointOffset, backdropBreakpoint)})`,
|
|
1394
|
+
opacity: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(1 - breakpointOffset, backdropBreakpoint)})`,
|
|
1478
1395
|
},
|
|
1479
1396
|
{
|
|
1480
1397
|
offset: 1,
|
|
1481
|
-
opacity:
|
|
1482
|
-
? 'var(--backdrop-opacity)'
|
|
1483
|
-
: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(snapToBreakpoint, backdropBreakpoint)})`,
|
|
1398
|
+
opacity: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(snapToBreakpoint, backdropBreakpoint)})`,
|
|
1484
1399
|
},
|
|
1485
1400
|
]);
|
|
1486
1401
|
if (contentAnimation) {
|
|
@@ -1498,12 +1413,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1498
1413
|
}
|
|
1499
1414
|
animation.progressStep(0);
|
|
1500
1415
|
}
|
|
1501
|
-
/**
|
|
1502
|
-
* Apply the appropriate easing curve for this snap behavior.
|
|
1503
|
-
*/
|
|
1504
|
-
if (usePhysicsBasedGesture) {
|
|
1505
|
-
animation.easing(easing);
|
|
1506
|
-
}
|
|
1507
1416
|
/**
|
|
1508
1417
|
* Gesture should remain disabled until the
|
|
1509
1418
|
* snapping animation completes.
|
|
@@ -1516,14 +1425,14 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1516
1425
|
onDismiss();
|
|
1517
1426
|
}
|
|
1518
1427
|
/**
|
|
1519
|
-
*
|
|
1520
|
-
* or if it allows scrolling at any breakpoint. Without this, there would
|
|
1428
|
+
* Restores the content's scroll setting immediately if the sheet is about to
|
|
1429
|
+
* fully expand or if it allows scrolling at any breakpoint. Without this, there would
|
|
1521
1430
|
* be a ~500ms delay while the modal animation completes, causing a
|
|
1522
1431
|
* noticeable lag. Native iOS allows scrolling as soon as the gesture is
|
|
1523
1432
|
* released, so we align with that behavior.
|
|
1524
1433
|
*/
|
|
1525
1434
|
if (contentEl && (snapToBreakpoint === breakpoints[breakpoints.length - 1] || !expandToScroll)) {
|
|
1526
|
-
contentEl.scrollY =
|
|
1435
|
+
contentEl.scrollY = initialContentScrollY;
|
|
1527
1436
|
}
|
|
1528
1437
|
/**
|
|
1529
1438
|
* If expandToScroll is disabled and we're animating
|
|
@@ -1593,7 +1502,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1593
1502
|
* be added every time onEnd runs.
|
|
1594
1503
|
*/
|
|
1595
1504
|
}, { oneTimeCallback: true })
|
|
1596
|
-
.progressEnd(1, 0, animated ?
|
|
1505
|
+
.progressEnd(1, 0, animated ? 500 : 0);
|
|
1597
1506
|
});
|
|
1598
1507
|
};
|
|
1599
1508
|
/**
|
|
@@ -1604,7 +1513,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1604
1513
|
* @param deltaY The change in Y position since the gesture started.
|
|
1605
1514
|
* @returns The snap breakpoint value.
|
|
1606
1515
|
*/
|
|
1607
|
-
const
|
|
1516
|
+
const calculateSnapBreakpoint = (deltaY) => {
|
|
1608
1517
|
/**
|
|
1609
1518
|
* Calculates the real-time vertical position of the modal.
|
|
1610
1519
|
* We combine the wrapper's current bounding box position with the
|
|
@@ -1624,50 +1533,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1624
1533
|
});
|
|
1625
1534
|
return snapBreakpoint;
|
|
1626
1535
|
};
|
|
1627
|
-
/**
|
|
1628
|
-
* Calculates the snap breakpoint using velocity-based logic.
|
|
1629
|
-
* This provides a more intuitive and responsive sheet behavior for the Ionic theme.
|
|
1630
|
-
*
|
|
1631
|
-
* Rules:
|
|
1632
|
-
* 1. Fast downward flick (> 500 px/s) always dismisses, regardless of position
|
|
1633
|
-
* 2. Fast upward flick (> 400 px/s) snaps to the next breakpoint above
|
|
1634
|
-
* 3. If dragged 40% below current snap point without fast upward flick, dismisses
|
|
1635
|
-
* 4. Otherwise, falls back to position-based snap (closest breakpoint)
|
|
1636
|
-
*
|
|
1637
|
-
* @param deltaY The change in Y position since gesture started
|
|
1638
|
-
* @param velocityY The velocity in pixels per millisecond
|
|
1639
|
-
* @param currentY The current Y position of the gesture
|
|
1640
|
-
* @returns The snap breakpoint value
|
|
1641
|
-
*/
|
|
1642
|
-
const calculateVelocitySnapBreakpoint = (deltaY, velocityY, currentY) => {
|
|
1643
|
-
// Convert velocity from px/ms to px/s for easier threshold comparison
|
|
1644
|
-
const velocityYPerSecond = velocityY * 1000;
|
|
1645
|
-
// Calculate current progress (0 = fully closed, 1 = fully expanded)
|
|
1646
|
-
const currentProgress = calculateProgress(currentY);
|
|
1647
|
-
// Rule 1: Fast downward flick always dismisses
|
|
1648
|
-
if (velocityYPerSecond > 500) {
|
|
1649
|
-
return minBreakpoint;
|
|
1650
|
-
}
|
|
1651
|
-
// Rule 2: Fast upward flick moves to next breakpoint above
|
|
1652
|
-
if (velocityYPerSecond < -400) {
|
|
1653
|
-
// Find next breakpoint above current position
|
|
1654
|
-
const nextBreakpoint = breakpoints.find((bp) => bp > currentProgress);
|
|
1655
|
-
// If no breakpoint above, stay at max breakpoint
|
|
1656
|
-
return nextBreakpoint !== null && nextBreakpoint !== void 0 ? nextBreakpoint : maxBreakpoint;
|
|
1657
|
-
}
|
|
1658
|
-
// Rule 3: 40% dismissal rule (only if not flicking up and 0 breakpoint exists)
|
|
1659
|
-
if (minBreakpoint === 0 && currentBreakpoint > 0) {
|
|
1660
|
-
// Calculate how far we've moved below the current snap point
|
|
1661
|
-
const distanceBelowSnap = currentBreakpoint - currentProgress;
|
|
1662
|
-
const percentageBelowSnap = distanceBelowSnap / currentBreakpoint;
|
|
1663
|
-
// If dragged more than 40% below and not flicking up, dismiss
|
|
1664
|
-
if (percentageBelowSnap > 0.4 && velocityYPerSecond <= 400) {
|
|
1665
|
-
return 0;
|
|
1666
|
-
}
|
|
1667
|
-
}
|
|
1668
|
-
// Rule 4: Fallback to position-based snap (existing logic)
|
|
1669
|
-
return calculatePositionSnapBreakpoint(deltaY);
|
|
1670
|
-
};
|
|
1671
1536
|
/**
|
|
1672
1537
|
* Calculates the progress of the swipe gesture.
|
|
1673
1538
|
*
|
|
@@ -1738,7 +1603,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1738
1603
|
*/
|
|
1739
1604
|
return viewportBottom - activeHeight;
|
|
1740
1605
|
};
|
|
1741
|
-
const gesture = index.createGesture({
|
|
1606
|
+
const gesture = index$2.createGesture({
|
|
1742
1607
|
el: wrapperEl,
|
|
1743
1608
|
gestureName: 'modalSheet',
|
|
1744
1609
|
gesturePriority: 40,
|
|
@@ -1749,9 +1614,20 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
1749
1614
|
onMove,
|
|
1750
1615
|
onEnd,
|
|
1751
1616
|
});
|
|
1617
|
+
/**
|
|
1618
|
+
* Puts the content back the way the app declared it. A sheet can dismiss
|
|
1619
|
+
* without going through moveSheetToBreakpoint, and an inline modal reuses
|
|
1620
|
+
* the same element on the next present.
|
|
1621
|
+
*/
|
|
1622
|
+
const resetContentScroll = () => {
|
|
1623
|
+
if (contentEl) {
|
|
1624
|
+
contentEl.scrollY = initialContentScrollY;
|
|
1625
|
+
}
|
|
1626
|
+
};
|
|
1752
1627
|
return {
|
|
1753
1628
|
gesture,
|
|
1754
1629
|
moveSheetToBreakpoint,
|
|
1630
|
+
resetContentScroll,
|
|
1755
1631
|
};
|
|
1756
1632
|
};
|
|
1757
1633
|
|
|
@@ -1784,9 +1660,9 @@ let cacheInvalidationScheduled = false;
|
|
|
1784
1660
|
* Matches: @media (min-width: 768px) and (min-height: 600px)
|
|
1785
1661
|
*/
|
|
1786
1662
|
const isCenteredDialogViewport = () => {
|
|
1787
|
-
if (!
|
|
1663
|
+
if (!index.win)
|
|
1788
1664
|
return false;
|
|
1789
|
-
return
|
|
1665
|
+
return index.win.matchMedia(`(min-width: ${MODAL_INSET_MIN_WIDTH}px) and (min-height: ${MODAL_INSET_MIN_HEIGHT}px)`)
|
|
1790
1666
|
.matches;
|
|
1791
1667
|
};
|
|
1792
1668
|
/**
|
|
@@ -1801,7 +1677,7 @@ const getRootSafeAreaTop = () => {
|
|
|
1801
1677
|
if (cachedRootSafeAreaTop !== null) {
|
|
1802
1678
|
return cachedRootSafeAreaTop;
|
|
1803
1679
|
}
|
|
1804
|
-
const doc =
|
|
1680
|
+
const doc = index.win === null || index.win === void 0 ? void 0 : index.win.document;
|
|
1805
1681
|
if (!(doc === null || doc === void 0 ? void 0 : doc.body)) {
|
|
1806
1682
|
return 0;
|
|
1807
1683
|
}
|
|
@@ -1821,6 +1697,41 @@ const getRootSafeAreaTop = () => {
|
|
|
1821
1697
|
}
|
|
1822
1698
|
return value;
|
|
1823
1699
|
};
|
|
1700
|
+
/**
|
|
1701
|
+
* Calls back when the resolved root `--ion-safe-area-top` changes, which no
|
|
1702
|
+
* event and no window resize covers. The probe's height tracks the variable, so
|
|
1703
|
+
* a change to it becomes a size change the observer can see.
|
|
1704
|
+
*/
|
|
1705
|
+
const onRootSafeAreaTopChange = (callback) => {
|
|
1706
|
+
const doc = index.win === null || index.win === void 0 ? void 0 : index.win.document;
|
|
1707
|
+
if (!(doc === null || doc === void 0 ? void 0 : doc.body) || typeof ResizeObserver === 'undefined') {
|
|
1708
|
+
return () => undefined;
|
|
1709
|
+
}
|
|
1710
|
+
const probe = doc.createElement('div');
|
|
1711
|
+
probe.style.cssText =
|
|
1712
|
+
'position:fixed;visibility:hidden;pointer-events:none;top:0;left:0;width:0;' +
|
|
1713
|
+
'height:var(--ion-safe-area-top,0px);';
|
|
1714
|
+
doc.body.appendChild(probe);
|
|
1715
|
+
/**
|
|
1716
|
+
* Seeded with the value the caller has already applied, so a change that
|
|
1717
|
+
* lands before the observer's first delivery still gets reported. Comparing
|
|
1718
|
+
* against an unset value instead would consume that first delivery and treat
|
|
1719
|
+
* the new inset as the baseline.
|
|
1720
|
+
*/
|
|
1721
|
+
let lastHeight = getRootSafeAreaTop();
|
|
1722
|
+
const observer = new ResizeObserver((entries) => {
|
|
1723
|
+
const { height } = entries[0].contentRect;
|
|
1724
|
+
if (height !== lastHeight) {
|
|
1725
|
+
lastHeight = height;
|
|
1726
|
+
callback(height);
|
|
1727
|
+
}
|
|
1728
|
+
});
|
|
1729
|
+
observer.observe(probe);
|
|
1730
|
+
return () => {
|
|
1731
|
+
observer.disconnect();
|
|
1732
|
+
probe.remove();
|
|
1733
|
+
};
|
|
1734
|
+
};
|
|
1824
1735
|
/**
|
|
1825
1736
|
* True when the modal host declares BOTH a non-fullscreen `--width` AND a
|
|
1826
1737
|
* non-fullscreen `--height` (i.e. a centered-dialog-like modal that doesn't
|
|
@@ -1907,8 +1818,8 @@ const getInitialSafeAreaConfig = (context) => {
|
|
|
1907
1818
|
const getPositionBasedSafeAreaConfig = (wrapperEl) => {
|
|
1908
1819
|
var _a, _b;
|
|
1909
1820
|
const rect = wrapperEl.getBoundingClientRect();
|
|
1910
|
-
const vh = (_a =
|
|
1911
|
-
const vw = (_b =
|
|
1821
|
+
const vh = (_a = index.win === null || index.win === void 0 ? void 0 : index.win.innerHeight) !== null && _a !== void 0 ? _a : 0;
|
|
1822
|
+
const vw = (_b = index.win === null || index.win === void 0 ? void 0 : index.win.innerWidth) !== null && _b !== void 0 ? _b : 0;
|
|
1912
1823
|
// Only apply safe-area to sides where modal overlaps with screen edge
|
|
1913
1824
|
return {
|
|
1914
1825
|
top: rect.top <= EDGE_THRESHOLD ? 'inherit' : '0px',
|
|
@@ -1941,28 +1852,26 @@ const clearSafeAreaOverrides = (hostEl) => {
|
|
|
1941
1852
|
hostEl.style.removeProperty('--ion-safe-area-right');
|
|
1942
1853
|
};
|
|
1943
1854
|
|
|
1944
|
-
const
|
|
1855
|
+
const modalIosCss = () => `:host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-wrapper{outline:none}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:""}:host(.modal-sheet){--height:calc(100% - (var(--ion-modal-offset-top, 0px) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.4)}:host(.modal-card),:host(.modal-sheet){--border-radius:10px}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:10px}}.modal-wrapper{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0)}@media screen and (max-width: 767px){@supports (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - max(30px, var(--ion-safe-area-top)) - 10px)}}@supports not (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - 40px)}}:host(.modal-card) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-card){--backdrop-opacity:0;--width:100%;-ms-flex-align:end;align-items:flex-end}:host(.modal-card) .modal-shadow{display:none}:host(.modal-card) ion-backdrop{pointer-events:none}}@media screen and (min-width: 768px){:host(.modal-card){--width:calc(100% - 120px);--height:calc(100% - (120px + var(--ion-safe-area-top) + var(--ion-safe-area-bottom)));--max-width:720px;--max-height:1000px;--backdrop-opacity:0;--box-shadow:0px 0px 30px 10px rgba(0, 0, 0, 0.1);-webkit-transition:all 0.5s ease-in-out;transition:all 0.5s ease-in-out}:host(.modal-card) .modal-wrapper{-webkit-box-shadow:none;box-shadow:none}:host(.modal-card) .modal-shadow{-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}}:host(.modal-sheet) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}`;
|
|
1945
1856
|
|
|
1946
|
-
const
|
|
1947
|
-
|
|
1948
|
-
const modalMdCss = () => `:host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-width:0;--border-style:none;--border-color:transparent;--box-shadow:none;right:0;left:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-wrapper{outline:none}.modal-shadow{position:absolute;background:transparent}.modal-handle{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;cursor:pointer;z-index:11}.modal-handle::before{position:absolute;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:""}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--background:var(--ion-background-color, #fff);--border-radius:0;--backdrop-opacity:0;color:var(--ion-text-color, #000)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{right:0px;left:0px;top:5px;border-radius:8px;width:36px;height:5px;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be))}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;width:36px;height:5px}:host(.modal-sheet){--height:calc(100% - (var(--ion-modal-offset-top, 0px) + 10px))}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:2px;--box-shadow:0 28px 48px rgba(0, 0, 0, 0.4)}}.modal-wrapper{-webkit-transform:translate3d(0, 40px, 0);transform:translate3d(0, 40px, 0);opacity:0.01}`;
|
|
1857
|
+
const modalMdCss = () => `:host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-wrapper{outline:none}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:""}:host(.modal-sheet){--height:calc(100% - (var(--ion-modal-offset-top, 0px) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:2px;--box-shadow:0 28px 48px rgba(0, 0, 0, 0.4)}}.modal-wrapper{-webkit-transform:translate3d(0, 40px, 0);transform:translate3d(0, 40px, 0);opacity:0.01}`;
|
|
1949
1858
|
|
|
1950
1859
|
const Modal = class {
|
|
1951
1860
|
constructor(hostRef) {
|
|
1952
|
-
index$
|
|
1953
|
-
this.didPresent = index$
|
|
1954
|
-
this.willPresent = index$
|
|
1955
|
-
this.willDismiss = index$
|
|
1956
|
-
this.didDismiss = index$
|
|
1957
|
-
this.ionBreakpointDidChange = index$
|
|
1958
|
-
this.didPresentShorthand = index$
|
|
1959
|
-
this.willPresentShorthand = index$
|
|
1960
|
-
this.willDismissShorthand = index$
|
|
1961
|
-
this.didDismissShorthand = index$
|
|
1962
|
-
this.ionMount = index$
|
|
1963
|
-
this.ionDragStart = index$
|
|
1964
|
-
this.ionDragMove = index$
|
|
1965
|
-
this.ionDragEnd = index$
|
|
1861
|
+
index$3.registerInstance(this, hostRef);
|
|
1862
|
+
this.didPresent = index$3.createEvent(this, "ionModalDidPresent", 7);
|
|
1863
|
+
this.willPresent = index$3.createEvent(this, "ionModalWillPresent", 7);
|
|
1864
|
+
this.willDismiss = index$3.createEvent(this, "ionModalWillDismiss", 7);
|
|
1865
|
+
this.didDismiss = index$3.createEvent(this, "ionModalDidDismiss", 7);
|
|
1866
|
+
this.ionBreakpointDidChange = index$3.createEvent(this, "ionBreakpointDidChange", 7);
|
|
1867
|
+
this.didPresentShorthand = index$3.createEvent(this, "didPresent", 7);
|
|
1868
|
+
this.willPresentShorthand = index$3.createEvent(this, "willPresent", 7);
|
|
1869
|
+
this.willDismissShorthand = index$3.createEvent(this, "willDismiss", 7);
|
|
1870
|
+
this.didDismissShorthand = index$3.createEvent(this, "didDismiss", 7);
|
|
1871
|
+
this.ionMount = index$3.createEvent(this, "ionMount", 7);
|
|
1872
|
+
this.ionDragStart = index$3.createEvent(this, "ionDragStart", 7);
|
|
1873
|
+
this.ionDragMove = index$3.createEvent(this, "ionDragMove", 7);
|
|
1874
|
+
this.ionDragEnd = index$3.createEvent(this, "ionDragEnd", 7);
|
|
1966
1875
|
this.lockController = lockController.createLockController();
|
|
1967
1876
|
this.triggerController = overlays.createTriggerController();
|
|
1968
1877
|
this.coreDelegate = frameworkDelegate.CoreDelegate();
|
|
@@ -2255,7 +2164,7 @@ const Modal = class {
|
|
|
2255
2164
|
this.currentBreakpoint = this.initialBreakpoint;
|
|
2256
2165
|
}
|
|
2257
2166
|
if (breakpoints !== undefined && initialBreakpoint !== undefined && !breakpoints.includes(initialBreakpoint)) {
|
|
2258
|
-
index$
|
|
2167
|
+
index$3.printIonWarning('[ion-modal] - Your breakpoints array must include the initialBreakpoint value.');
|
|
2259
2168
|
}
|
|
2260
2169
|
if (!((_a = this.htmlAttributes) === null || _a === void 0 ? void 0 : _a.id)) {
|
|
2261
2170
|
overlays.setOverlayId(this.el);
|
|
@@ -2355,7 +2264,7 @@ const Modal = class {
|
|
|
2355
2264
|
* get the transition incorrect.
|
|
2356
2265
|
*/
|
|
2357
2266
|
if (helpers.hasLazyBuild(el)) {
|
|
2358
|
-
await index$
|
|
2267
|
+
await index$4.deepReady(this.usersElement);
|
|
2359
2268
|
/**
|
|
2360
2269
|
* If keepContentsMounted="true" then the
|
|
2361
2270
|
* JS Framework has already mounted the inner
|
|
@@ -2366,9 +2275,9 @@ const Modal = class {
|
|
|
2366
2275
|
*/
|
|
2367
2276
|
}
|
|
2368
2277
|
else if (!this.keepContentsMounted) {
|
|
2369
|
-
await index$
|
|
2278
|
+
await index$4.waitForMount();
|
|
2370
2279
|
}
|
|
2371
|
-
index$
|
|
2280
|
+
index$3.writeTask(() => this.el.classList.add('show-modal'));
|
|
2372
2281
|
// Recalculate isSheetModal before safe-area setup because framework
|
|
2373
2282
|
// bindings (e.g., Angular) may not have been applied when componentWillLoad ran.
|
|
2374
2283
|
this.isSheetModal = this.breakpoints !== undefined && this.initialBreakpoint !== undefined;
|
|
@@ -2385,12 +2294,11 @@ const Modal = class {
|
|
|
2385
2294
|
this.statusBarStyle = await StatusBar.getStyle();
|
|
2386
2295
|
setCardStatusBarDark();
|
|
2387
2296
|
}
|
|
2388
|
-
await overlays.present(this, 'modalEnter', iosEnterAnimation, mdEnterAnimation,
|
|
2297
|
+
await overlays.present(this, 'modalEnter', iosEnterAnimation, mdEnterAnimation, {
|
|
2389
2298
|
presentingEl: presentingElement,
|
|
2390
2299
|
currentBreakpoint: this.initialBreakpoint,
|
|
2391
2300
|
backdropBreakpoint: this.backdropBreakpoint,
|
|
2392
2301
|
expandToScroll: this.expandToScroll,
|
|
2393
|
-
staticBackdropOpacity: ionicGlobal.getIonTheme(this) === 'ionic',
|
|
2394
2302
|
});
|
|
2395
2303
|
// Update safe-area based on actual position after animation
|
|
2396
2304
|
this.updateSafeAreaOverrides();
|
|
@@ -2448,7 +2356,7 @@ const Modal = class {
|
|
|
2448
2356
|
// All of the elements needed for the swipe gesture
|
|
2449
2357
|
// should be in the DOM and referenced by now, except
|
|
2450
2358
|
// for the presenting el
|
|
2451
|
-
const animationBuilder = this.leaveAnimation || index$
|
|
2359
|
+
const animationBuilder = this.leaveAnimation || index$3.config.get('modalLeave', iosLeaveAnimation);
|
|
2452
2360
|
const ani = (this.animation = animationBuilder(el, {
|
|
2453
2361
|
presentingEl: this.presentingElement,
|
|
2454
2362
|
expandToScroll: this.expandToScroll,
|
|
@@ -2467,23 +2375,23 @@ const Modal = class {
|
|
|
2467
2375
|
if (!wrapperEl || initialBreakpoint === undefined) {
|
|
2468
2376
|
return;
|
|
2469
2377
|
}
|
|
2470
|
-
const animationBuilder = this.enterAnimation || index$
|
|
2378
|
+
const animationBuilder = this.enterAnimation || index$3.config.get('modalEnter', iosEnterAnimation);
|
|
2471
2379
|
const ani = (this.animation = animationBuilder(this.el, {
|
|
2472
2380
|
presentingEl: this.presentingElement,
|
|
2473
2381
|
currentBreakpoint: initialBreakpoint,
|
|
2474
2382
|
backdropBreakpoint,
|
|
2475
2383
|
expandToScroll: this.expandToScroll,
|
|
2476
|
-
staticBackdropOpacity: ionicGlobal.getIonTheme(this) === 'ionic',
|
|
2477
2384
|
}));
|
|
2478
2385
|
ani.progressStart(true, 1);
|
|
2479
|
-
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) => {
|
|
2386
|
+
const { gesture, moveSheetToBreakpoint, resetContentScroll } = 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) => {
|
|
2480
2387
|
if (this.currentBreakpoint !== breakpoint) {
|
|
2481
2388
|
this.currentBreakpoint = breakpoint;
|
|
2482
2389
|
this.ionBreakpointDidChange.emit({ breakpoint });
|
|
2483
2390
|
}
|
|
2484
|
-
},
|
|
2391
|
+
}, () => this.onDragStart(), (detail) => this.onDragMove(detail), (detail) => this.onDragEnd(detail));
|
|
2485
2392
|
this.gesture = gesture;
|
|
2486
2393
|
this.moveSheetToBreakpoint = moveSheetToBreakpoint;
|
|
2394
|
+
this.resetSheetContentScroll = resetContentScroll;
|
|
2487
2395
|
this.gesture.enable(true);
|
|
2488
2396
|
/**
|
|
2489
2397
|
* When backdrop interaction is allowed, nested router outlets from child routes
|
|
@@ -2615,7 +2523,7 @@ const Modal = class {
|
|
|
2615
2523
|
* For example, `cancel` or `backdrop`.
|
|
2616
2524
|
*/
|
|
2617
2525
|
async dismiss(data, role) {
|
|
2618
|
-
var _a;
|
|
2526
|
+
var _a, _b;
|
|
2619
2527
|
if (this.gestureAnimationDismissing && role !== overlays.GESTURE) {
|
|
2620
2528
|
return false;
|
|
2621
2529
|
}
|
|
@@ -2667,13 +2575,20 @@ const Modal = class {
|
|
|
2667
2575
|
if (dismissed) {
|
|
2668
2576
|
const { delegate } = this.getDelegate();
|
|
2669
2577
|
await frameworkDelegate.detachComponent(delegate, this.usersElement);
|
|
2670
|
-
index$
|
|
2578
|
+
index$3.writeTask(() => this.el.classList.remove('show-modal'));
|
|
2671
2579
|
if (this.animation) {
|
|
2672
2580
|
this.animation.destroy();
|
|
2673
2581
|
}
|
|
2674
2582
|
if (this.gesture) {
|
|
2675
2583
|
this.gesture.destroy();
|
|
2676
2584
|
}
|
|
2585
|
+
/**
|
|
2586
|
+
* The sheet gesture turns content scrolling off while the sheet sits below
|
|
2587
|
+
* the top breakpoint. Inline modals reuse the same content on the next
|
|
2588
|
+
* present, so hand it back before the gesture goes away.
|
|
2589
|
+
*/
|
|
2590
|
+
(_b = this.resetSheetContentScroll) === null || _b === void 0 ? void 0 : _b.call(this);
|
|
2591
|
+
this.resetSheetContentScroll = undefined;
|
|
2677
2592
|
this.cleanupViewTransitionListener();
|
|
2678
2593
|
this.cleanupParentRemovalObserver();
|
|
2679
2594
|
this.cleanupSafeAreaOverrides();
|
|
@@ -2704,11 +2619,11 @@ const Modal = class {
|
|
|
2704
2619
|
*/
|
|
2705
2620
|
async setCurrentBreakpoint(breakpoint) {
|
|
2706
2621
|
if (!this.isSheetModal) {
|
|
2707
|
-
index$
|
|
2622
|
+
index$3.printIonWarning('[ion-modal] - setCurrentBreakpoint is only supported on sheet modals.');
|
|
2708
2623
|
return;
|
|
2709
2624
|
}
|
|
2710
2625
|
if (!this.breakpoints.includes(breakpoint)) {
|
|
2711
|
-
index$
|
|
2626
|
+
index$3.printIonWarning(`[ion-modal] - Attempted to set invalid breakpoint value ${breakpoint}. Please double check that the breakpoint value is part of your defined breakpoints.`);
|
|
2712
2627
|
return;
|
|
2713
2628
|
}
|
|
2714
2629
|
const { currentBreakpoint, moveSheetToBreakpoint, canDismiss, breakpoints, animated } = this;
|
|
@@ -2753,18 +2668,6 @@ const Modal = class {
|
|
|
2753
2668
|
await this.setCurrentBreakpoint(nextBreakpoint);
|
|
2754
2669
|
return true;
|
|
2755
2670
|
}
|
|
2756
|
-
getShape() {
|
|
2757
|
-
const theme = ionicGlobal.getIonTheme(this);
|
|
2758
|
-
const { shape } = this;
|
|
2759
|
-
// TODO(ROU-11167): Remove theme check when shapes are defined for all themes.
|
|
2760
|
-
if (theme !== 'ionic') {
|
|
2761
|
-
return undefined;
|
|
2762
|
-
}
|
|
2763
|
-
if (shape === undefined) {
|
|
2764
|
-
return 'round';
|
|
2765
|
-
}
|
|
2766
|
-
return shape;
|
|
2767
|
-
}
|
|
2768
2671
|
initViewTransitionListener() {
|
|
2769
2672
|
// Only enable for iOS card modals when no custom animations are provided
|
|
2770
2673
|
if (ionicGlobal.getIonMode(this) !== 'ios' || !this.presentingElement || this.enterAnimation || this.leaveAnimation) {
|
|
@@ -2981,16 +2884,18 @@ const Modal = class {
|
|
|
2981
2884
|
// Set the internal offset property with the resolved root safe-area-top value
|
|
2982
2885
|
if (context.isSheetModal) {
|
|
2983
2886
|
this.updateSheetOffsetTop();
|
|
2887
|
+
this.unsubscribeRootSafeAreaTop = onRootSafeAreaTopChange((safeAreaTop) => this.updateSheetOffsetTop(safeAreaTop));
|
|
2984
2888
|
}
|
|
2985
2889
|
}
|
|
2986
2890
|
/**
|
|
2987
|
-
*
|
|
2988
|
-
*
|
|
2989
|
-
* Called on present
|
|
2891
|
+
* Sets the internal --ion-modal-offset-top property on the host element,
|
|
2892
|
+
* resolving the current root --ion-safe-area-top when no value is given.
|
|
2893
|
+
* Called on present, on resize (e.g., device rotation changes safe-area),
|
|
2894
|
+
* and whenever the root safe-area value itself changes.
|
|
2990
2895
|
*/
|
|
2991
|
-
updateSheetOffsetTop() {
|
|
2992
|
-
const
|
|
2993
|
-
this.el.style.setProperty('--ion-modal-offset-top', `${
|
|
2896
|
+
updateSheetOffsetTop(safeAreaTop) {
|
|
2897
|
+
const value = safeAreaTop !== null && safeAreaTop !== void 0 ? safeAreaTop : getRootSafeAreaTop();
|
|
2898
|
+
this.el.style.setProperty('--ion-modal-offset-top', `${value}px`);
|
|
2994
2899
|
}
|
|
2995
2900
|
/**
|
|
2996
2901
|
* Updates safe-area overrides during dynamic state changes.
|
|
@@ -3089,7 +2994,10 @@ const Modal = class {
|
|
|
3089
2994
|
* Clears all safe-area overrides and padding.
|
|
3090
2995
|
*/
|
|
3091
2996
|
cleanupSafeAreaOverrides() {
|
|
2997
|
+
var _a;
|
|
3092
2998
|
clearSafeAreaOverrides(this.el);
|
|
2999
|
+
(_a = this.unsubscribeRootSafeAreaTop) === null || _a === void 0 ? void 0 : _a.call(this);
|
|
3000
|
+
this.unsubscribeRootSafeAreaTop = undefined;
|
|
3093
3001
|
// Remove internal sheet offset property
|
|
3094
3002
|
this.el.style.removeProperty('--ion-modal-offset-top');
|
|
3095
3003
|
const { contentEl } = this.findContentAndFooter();
|
|
@@ -3098,16 +3006,15 @@ const Modal = class {
|
|
|
3098
3006
|
render() {
|
|
3099
3007
|
const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap, expandToScroll, } = this;
|
|
3100
3008
|
const showHandle = handle !== false && isSheetModal;
|
|
3101
|
-
const
|
|
3102
|
-
const isCardModal = presentingElement !== undefined &&
|
|
3009
|
+
const mode = ionicGlobal.getIonMode(this);
|
|
3010
|
+
const isCardModal = presentingElement !== undefined && mode === 'ios';
|
|
3103
3011
|
const isHandleCycle = handleBehavior === 'cycle';
|
|
3104
|
-
const shape = this.getShape();
|
|
3105
3012
|
const isSheetModalWithHandle = isSheetModal && showHandle;
|
|
3106
|
-
return (index$
|
|
3013
|
+
return (index$3.h(index$3.Host, Object.assign({ key: 'c4b2713ebc788ac8672e18fdd5069e4253c4da34', "no-router": true,
|
|
3107
3014
|
// Allow the modal to be navigable when the handle is focusable
|
|
3108
3015
|
tabIndex: isHandleCycle && isSheetModalWithHandle ? 0 : -1 }, htmlAttributes, { style: {
|
|
3109
3016
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
3110
|
-
}, class: Object.assign({ [
|
|
3017
|
+
}, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [overlays.FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, theme.getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), index$3.h("ion-backdrop", { key: '2cc0afff8a815954492138afb0fca042243afddd', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && index$3.h("div", { key: '9844700b9436f9bfa1a69ba436e9ca46d70cf316', class: "modal-shadow" }), index$3.h("div", Object.assign({ key: 'ab1cd56ca956c773c9242fb42ff320bac7627b4b',
|
|
3111
3018
|
/*
|
|
3112
3019
|
role and aria-modal must be used on the
|
|
3113
3020
|
same element. They must also be set inside the
|
|
@@ -3120,11 +3027,11 @@ const Modal = class {
|
|
|
3120
3027
|
without the tabindex focus() would be a no-op and screen readers
|
|
3121
3028
|
may not properly announce the dialog and its content when it opens.
|
|
3122
3029
|
*/
|
|
3123
|
-
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", tabIndex: -1, class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (index$
|
|
3030
|
+
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", tabIndex: -1, class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (index$3.h("button", { key: 'c7706794e04a962178640e9a9a11c56288c45e08', class: "modal-handle",
|
|
3124
3031
|
// Prevents the handle from receiving keyboard focus when it does not cycle
|
|
3125
|
-
tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle",
|
|
3032
|
+
tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle", ref: (el) => (this.dragHandleEl = el) })), index$3.h("slot", { key: 'c44fd9810cdd3286f096af98e5a4072f8f44c193', onSlotchange: this.onSlotChange }))));
|
|
3126
3033
|
}
|
|
3127
|
-
get el() { return index$
|
|
3034
|
+
get el() { return index$3.getElement(this); }
|
|
3128
3035
|
static get watchers() { return {
|
|
3129
3036
|
"isOpen": [{
|
|
3130
3037
|
"onIsOpenChange": 0
|
|
@@ -3144,7 +3051,6 @@ const LIFECYCLE_MAP = {
|
|
|
3144
3051
|
ionModalDidDismiss: 'ionViewDidLeave',
|
|
3145
3052
|
};
|
|
3146
3053
|
Modal.style = {
|
|
3147
|
-
ionic: modalIonicCss(),
|
|
3148
3054
|
ios: modalIosCss(),
|
|
3149
3055
|
md: modalMdCss()
|
|
3150
3056
|
};
|