@ionic/core 8.8.18-dev.11786355346.19605941 → 8.8.18-dev.11786385944.17aca7e5
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-BMaKgJFV.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-BvmB20aD.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-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-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-scxfI1Dd.js +4 -0
- package/components/p-vRBNsYbs.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-BJq0kcy2.js} +3 -3
- package/dist/cjs/{app-globals-3ZoCVkn-.js → app-globals-BlqrqKTN.js} +1 -1
- package/dist/cjs/{button-active-3tZKuPbT.js → button-active-0mPOKmV2.js} +2 -2
- package/dist/cjs/{capacitor-CQSg1uCo.js → capacitor-DmA66EwP.js} +3 -3
- package/dist/cjs/config-xninhj0J.js +201 -0
- package/dist/{esm/focus-visible-vXpMhGrs.js → cjs/focus-visible-CCvKiLh3.js} +3 -23
- package/dist/cjs/{format-BCIkDef_.js → format-PxvGiOik.js} +1 -1
- package/dist/cjs/{framework-delegate-DC5nq_NN.js → framework-delegate-BtICZDHr.js} +2 -4
- package/dist/cjs/{haptic-eix26ESE.js → haptic-ClPPQ_PS.js} +1 -1
- package/dist/cjs/hardware-back-button-iUuF_76h.js +121 -0
- package/dist/cjs/{helpers-DiOgV5hw.js → helpers-Cv23MFHM.js} +4 -71
- package/dist/cjs/{index-BaJ7_YbC.js → index-BERfRao3.js} +4 -4
- package/dist/cjs/{index-GZU9YrFc.js → index-Ct7gcRif.js} +4 -41
- package/dist/cjs/{index-bX3nz2vw.js → index-D81eLYUM.js} +8 -9
- package/dist/cjs/index-DkNv4J_i.js +10 -0
- package/dist/cjs/{index-CxDnX7hd.js → index-DqmRDbxg.js} +1 -3
- package/dist/cjs/{index-BxEZd5IE.js → index-Dqpns5vP.js} +34 -2
- package/dist/cjs/{index-DYRcC3bw.js → index-aC4x3Fk3.js} +15 -15
- package/dist/cjs/index.cjs.js +16 -16
- package/dist/cjs/{input-shims-BSEBw22J.js → input-shims-DpA1zUN9.js} +17 -18
- package/dist/cjs/{input.utils-D68wgI2Y.js → input.utils-DetjmtH2.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 +194 -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 +46 -121
- 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 +169 -303
- 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-B-cA6LkY.js +151 -0
- package/dist/cjs/ionic.cjs.js +4 -4
- package/dist/cjs/{ios.transition-DpFQfFfT.js → ios.transition-BOSWOaiK.js} +5 -7
- package/dist/cjs/{item-multiple-inputs-BG9f5_eV.js → item-multiple-inputs-D-gyg57c.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-B8-wBZqt.js} +5 -6
- package/dist/cjs/{notch-controller-BO0UGB4F.js → notch-controller-18PzRGXd.js} +4 -4
- package/dist/cjs/{overlays-CFGbPUmE.js → overlays-DdtIYQUH.js} +18 -309
- package/dist/cjs/{status-tap-x2qDo5QR.js → status-tap-N1kaBbuk.js} +3 -4
- package/dist/cjs/{swipe-back-CvZt_4YX.js → swipe-back-C0GCB18x.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 +11 -16
- package/dist/collection/components/datetime/datetime.ios.css +106 -302
- package/dist/collection/components/datetime/datetime.js +20 -97
- 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 +22 -52
- package/dist/collection/components/modal/modal.md.css +70 -178
- package/dist/collection/components/nav/nav.css +1 -7
- package/dist/collection/components/nav/nav.js +5 -11
- package/dist/collection/components/nav-link/nav-link.js +1 -5
- package/dist/collection/components/note/note.ios.css +0 -12
- package/dist/collection/components/note/note.js +8 -11
- package/dist/collection/components/note/note.md.css +0 -12
- package/dist/collection/components/picker/picker.ios.css +3 -15
- package/dist/collection/components/picker/picker.js +5 -8
- package/dist/collection/components/picker/picker.md.css +3 -15
- package/dist/collection/components/picker-column/picker-column.css +2 -9
- package/dist/collection/components/picker-column/picker-column.js +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 +286 -9090
- 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} +4 -41
- 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 +193 -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 +46 -121
- 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 +135 -269
- 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 +160 -2699
- 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-15c9319c.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-5018dfc8.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-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-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-d1aac015.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-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 +0 -3
- package/dist/types/components/datetime/datetime.d.ts +1 -26
- 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 +2 -11
- package/dist/types/components/nav/nav-interface.d.ts +1 -9
- package/dist/types/components/nav/nav.d.ts +1 -5
- package/dist/types/components/nav-link/nav-link.d.ts +0 -4
- package/dist/types/components/note/note.d.ts +1 -2
- package/dist/types/components/picker/picker.d.ts +1 -2
- package/dist/types/components/picker-column/picker-column.d.ts +1 -2
- package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -4
- package/dist/types/components/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 +211 -1882
- 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 +1471 -6450
- package/hydrate/index.mjs +1471 -6450
- package/package.json +5 -9
- 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-Ct7gcRif.js');
|
|
7
|
+
var index$1 = require('./index-Dqpns5vP.js');
|
|
8
|
+
var frameworkDelegate = require('./framework-delegate-BtICZDHr.js');
|
|
9
|
+
var helpers = require('./helpers-Cv23MFHM.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-DdtIYQUH.js');
|
|
13
|
+
var theme = require('./theme-CeDs6Hcv.js');
|
|
14
|
+
var index$4 = require('./index-BERfRao3.js');
|
|
15
|
+
var ionicGlobal = require('./ionic-global-B-cA6LkY.js');
|
|
16
|
+
var keyboard = require('./keyboard-hHzlEQpk.js');
|
|
17
|
+
var animation = require('./animation-BJq0kcy2.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-iUuF_76h.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
|
}
|
|
@@ -1907,8 +1783,8 @@ const getInitialSafeAreaConfig = (context) => {
|
|
|
1907
1783
|
const getPositionBasedSafeAreaConfig = (wrapperEl) => {
|
|
1908
1784
|
var _a, _b;
|
|
1909
1785
|
const rect = wrapperEl.getBoundingClientRect();
|
|
1910
|
-
const vh = (_a =
|
|
1911
|
-
const vw = (_b =
|
|
1786
|
+
const vh = (_a = index.win === null || index.win === void 0 ? void 0 : index.win.innerHeight) !== null && _a !== void 0 ? _a : 0;
|
|
1787
|
+
const vw = (_b = index.win === null || index.win === void 0 ? void 0 : index.win.innerWidth) !== null && _b !== void 0 ? _b : 0;
|
|
1912
1788
|
// Only apply safe-area to sides where modal overlaps with screen edge
|
|
1913
1789
|
return {
|
|
1914
1790
|
top: rect.top <= EDGE_THRESHOLD ? 'inherit' : '0px',
|
|
@@ -1941,28 +1817,26 @@ const clearSafeAreaOverrides = (hostEl) => {
|
|
|
1941
1817
|
hostEl.style.removeProperty('--ion-safe-area-right');
|
|
1942
1818
|
};
|
|
1943
1819
|
|
|
1944
|
-
const
|
|
1820
|
+
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
1821
|
|
|
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}`;
|
|
1822
|
+
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
1823
|
|
|
1950
1824
|
const Modal = class {
|
|
1951
1825
|
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$
|
|
1826
|
+
index$3.registerInstance(this, hostRef);
|
|
1827
|
+
this.didPresent = index$3.createEvent(this, "ionModalDidPresent", 7);
|
|
1828
|
+
this.willPresent = index$3.createEvent(this, "ionModalWillPresent", 7);
|
|
1829
|
+
this.willDismiss = index$3.createEvent(this, "ionModalWillDismiss", 7);
|
|
1830
|
+
this.didDismiss = index$3.createEvent(this, "ionModalDidDismiss", 7);
|
|
1831
|
+
this.ionBreakpointDidChange = index$3.createEvent(this, "ionBreakpointDidChange", 7);
|
|
1832
|
+
this.didPresentShorthand = index$3.createEvent(this, "didPresent", 7);
|
|
1833
|
+
this.willPresentShorthand = index$3.createEvent(this, "willPresent", 7);
|
|
1834
|
+
this.willDismissShorthand = index$3.createEvent(this, "willDismiss", 7);
|
|
1835
|
+
this.didDismissShorthand = index$3.createEvent(this, "didDismiss", 7);
|
|
1836
|
+
this.ionMount = index$3.createEvent(this, "ionMount", 7);
|
|
1837
|
+
this.ionDragStart = index$3.createEvent(this, "ionDragStart", 7);
|
|
1838
|
+
this.ionDragMove = index$3.createEvent(this, "ionDragMove", 7);
|
|
1839
|
+
this.ionDragEnd = index$3.createEvent(this, "ionDragEnd", 7);
|
|
1966
1840
|
this.lockController = lockController.createLockController();
|
|
1967
1841
|
this.triggerController = overlays.createTriggerController();
|
|
1968
1842
|
this.coreDelegate = frameworkDelegate.CoreDelegate();
|
|
@@ -2255,7 +2129,7 @@ const Modal = class {
|
|
|
2255
2129
|
this.currentBreakpoint = this.initialBreakpoint;
|
|
2256
2130
|
}
|
|
2257
2131
|
if (breakpoints !== undefined && initialBreakpoint !== undefined && !breakpoints.includes(initialBreakpoint)) {
|
|
2258
|
-
index$
|
|
2132
|
+
index$3.printIonWarning('[ion-modal] - Your breakpoints array must include the initialBreakpoint value.');
|
|
2259
2133
|
}
|
|
2260
2134
|
if (!((_a = this.htmlAttributes) === null || _a === void 0 ? void 0 : _a.id)) {
|
|
2261
2135
|
overlays.setOverlayId(this.el);
|
|
@@ -2355,7 +2229,7 @@ const Modal = class {
|
|
|
2355
2229
|
* get the transition incorrect.
|
|
2356
2230
|
*/
|
|
2357
2231
|
if (helpers.hasLazyBuild(el)) {
|
|
2358
|
-
await index$
|
|
2232
|
+
await index$4.deepReady(this.usersElement);
|
|
2359
2233
|
/**
|
|
2360
2234
|
* If keepContentsMounted="true" then the
|
|
2361
2235
|
* JS Framework has already mounted the inner
|
|
@@ -2366,9 +2240,9 @@ const Modal = class {
|
|
|
2366
2240
|
*/
|
|
2367
2241
|
}
|
|
2368
2242
|
else if (!this.keepContentsMounted) {
|
|
2369
|
-
await index$
|
|
2243
|
+
await index$4.waitForMount();
|
|
2370
2244
|
}
|
|
2371
|
-
index$
|
|
2245
|
+
index$3.writeTask(() => this.el.classList.add('show-modal'));
|
|
2372
2246
|
// Recalculate isSheetModal before safe-area setup because framework
|
|
2373
2247
|
// bindings (e.g., Angular) may not have been applied when componentWillLoad ran.
|
|
2374
2248
|
this.isSheetModal = this.breakpoints !== undefined && this.initialBreakpoint !== undefined;
|
|
@@ -2385,12 +2259,11 @@ const Modal = class {
|
|
|
2385
2259
|
this.statusBarStyle = await StatusBar.getStyle();
|
|
2386
2260
|
setCardStatusBarDark();
|
|
2387
2261
|
}
|
|
2388
|
-
await overlays.present(this, 'modalEnter', iosEnterAnimation, mdEnterAnimation,
|
|
2262
|
+
await overlays.present(this, 'modalEnter', iosEnterAnimation, mdEnterAnimation, {
|
|
2389
2263
|
presentingEl: presentingElement,
|
|
2390
2264
|
currentBreakpoint: this.initialBreakpoint,
|
|
2391
2265
|
backdropBreakpoint: this.backdropBreakpoint,
|
|
2392
2266
|
expandToScroll: this.expandToScroll,
|
|
2393
|
-
staticBackdropOpacity: ionicGlobal.getIonTheme(this) === 'ionic',
|
|
2394
2267
|
});
|
|
2395
2268
|
// Update safe-area based on actual position after animation
|
|
2396
2269
|
this.updateSafeAreaOverrides();
|
|
@@ -2448,7 +2321,7 @@ const Modal = class {
|
|
|
2448
2321
|
// All of the elements needed for the swipe gesture
|
|
2449
2322
|
// should be in the DOM and referenced by now, except
|
|
2450
2323
|
// for the presenting el
|
|
2451
|
-
const animationBuilder = this.leaveAnimation || index$
|
|
2324
|
+
const animationBuilder = this.leaveAnimation || index$3.config.get('modalLeave', iosLeaveAnimation);
|
|
2452
2325
|
const ani = (this.animation = animationBuilder(el, {
|
|
2453
2326
|
presentingEl: this.presentingElement,
|
|
2454
2327
|
expandToScroll: this.expandToScroll,
|
|
@@ -2467,23 +2340,23 @@ const Modal = class {
|
|
|
2467
2340
|
if (!wrapperEl || initialBreakpoint === undefined) {
|
|
2468
2341
|
return;
|
|
2469
2342
|
}
|
|
2470
|
-
const animationBuilder = this.enterAnimation || index$
|
|
2343
|
+
const animationBuilder = this.enterAnimation || index$3.config.get('modalEnter', iosEnterAnimation);
|
|
2471
2344
|
const ani = (this.animation = animationBuilder(this.el, {
|
|
2472
2345
|
presentingEl: this.presentingElement,
|
|
2473
2346
|
currentBreakpoint: initialBreakpoint,
|
|
2474
2347
|
backdropBreakpoint,
|
|
2475
2348
|
expandToScroll: this.expandToScroll,
|
|
2476
|
-
staticBackdropOpacity: ionicGlobal.getIonTheme(this) === 'ionic',
|
|
2477
2349
|
}));
|
|
2478
2350
|
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) => {
|
|
2351
|
+
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
2352
|
if (this.currentBreakpoint !== breakpoint) {
|
|
2481
2353
|
this.currentBreakpoint = breakpoint;
|
|
2482
2354
|
this.ionBreakpointDidChange.emit({ breakpoint });
|
|
2483
2355
|
}
|
|
2484
|
-
},
|
|
2356
|
+
}, () => this.onDragStart(), (detail) => this.onDragMove(detail), (detail) => this.onDragEnd(detail));
|
|
2485
2357
|
this.gesture = gesture;
|
|
2486
2358
|
this.moveSheetToBreakpoint = moveSheetToBreakpoint;
|
|
2359
|
+
this.resetSheetContentScroll = resetContentScroll;
|
|
2487
2360
|
this.gesture.enable(true);
|
|
2488
2361
|
/**
|
|
2489
2362
|
* When backdrop interaction is allowed, nested router outlets from child routes
|
|
@@ -2615,7 +2488,7 @@ const Modal = class {
|
|
|
2615
2488
|
* For example, `cancel` or `backdrop`.
|
|
2616
2489
|
*/
|
|
2617
2490
|
async dismiss(data, role) {
|
|
2618
|
-
var _a;
|
|
2491
|
+
var _a, _b;
|
|
2619
2492
|
if (this.gestureAnimationDismissing && role !== overlays.GESTURE) {
|
|
2620
2493
|
return false;
|
|
2621
2494
|
}
|
|
@@ -2667,13 +2540,20 @@ const Modal = class {
|
|
|
2667
2540
|
if (dismissed) {
|
|
2668
2541
|
const { delegate } = this.getDelegate();
|
|
2669
2542
|
await frameworkDelegate.detachComponent(delegate, this.usersElement);
|
|
2670
|
-
index$
|
|
2543
|
+
index$3.writeTask(() => this.el.classList.remove('show-modal'));
|
|
2671
2544
|
if (this.animation) {
|
|
2672
2545
|
this.animation.destroy();
|
|
2673
2546
|
}
|
|
2674
2547
|
if (this.gesture) {
|
|
2675
2548
|
this.gesture.destroy();
|
|
2676
2549
|
}
|
|
2550
|
+
/**
|
|
2551
|
+
* The sheet gesture turns content scrolling off while the sheet sits below
|
|
2552
|
+
* the top breakpoint. Inline modals reuse the same content on the next
|
|
2553
|
+
* present, so hand it back before the gesture goes away.
|
|
2554
|
+
*/
|
|
2555
|
+
(_b = this.resetSheetContentScroll) === null || _b === void 0 ? void 0 : _b.call(this);
|
|
2556
|
+
this.resetSheetContentScroll = undefined;
|
|
2677
2557
|
this.cleanupViewTransitionListener();
|
|
2678
2558
|
this.cleanupParentRemovalObserver();
|
|
2679
2559
|
this.cleanupSafeAreaOverrides();
|
|
@@ -2704,11 +2584,11 @@ const Modal = class {
|
|
|
2704
2584
|
*/
|
|
2705
2585
|
async setCurrentBreakpoint(breakpoint) {
|
|
2706
2586
|
if (!this.isSheetModal) {
|
|
2707
|
-
index$
|
|
2587
|
+
index$3.printIonWarning('[ion-modal] - setCurrentBreakpoint is only supported on sheet modals.');
|
|
2708
2588
|
return;
|
|
2709
2589
|
}
|
|
2710
2590
|
if (!this.breakpoints.includes(breakpoint)) {
|
|
2711
|
-
index$
|
|
2591
|
+
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
2592
|
return;
|
|
2713
2593
|
}
|
|
2714
2594
|
const { currentBreakpoint, moveSheetToBreakpoint, canDismiss, breakpoints, animated } = this;
|
|
@@ -2753,18 +2633,6 @@ const Modal = class {
|
|
|
2753
2633
|
await this.setCurrentBreakpoint(nextBreakpoint);
|
|
2754
2634
|
return true;
|
|
2755
2635
|
}
|
|
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
2636
|
initViewTransitionListener() {
|
|
2769
2637
|
// Only enable for iOS card modals when no custom animations are provided
|
|
2770
2638
|
if (ionicGlobal.getIonMode(this) !== 'ios' || !this.presentingElement || this.enterAnimation || this.leaveAnimation) {
|
|
@@ -3098,16 +2966,15 @@ const Modal = class {
|
|
|
3098
2966
|
render() {
|
|
3099
2967
|
const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap, expandToScroll, } = this;
|
|
3100
2968
|
const showHandle = handle !== false && isSheetModal;
|
|
3101
|
-
const
|
|
3102
|
-
const isCardModal = presentingElement !== undefined &&
|
|
2969
|
+
const mode = ionicGlobal.getIonMode(this);
|
|
2970
|
+
const isCardModal = presentingElement !== undefined && mode === 'ios';
|
|
3103
2971
|
const isHandleCycle = handleBehavior === 'cycle';
|
|
3104
|
-
const shape = this.getShape();
|
|
3105
2972
|
const isSheetModalWithHandle = isSheetModal && showHandle;
|
|
3106
|
-
return (index$
|
|
2973
|
+
return (index$3.h(index$3.Host, Object.assign({ key: '09f09a10d858e976bc2a989f30db925348a7784c', "no-router": true,
|
|
3107
2974
|
// Allow the modal to be navigable when the handle is focusable
|
|
3108
2975
|
tabIndex: isHandleCycle && isSheetModalWithHandle ? 0 : -1 }, htmlAttributes, { style: {
|
|
3109
2976
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
3110
|
-
}, class: Object.assign({ [
|
|
2977
|
+
}, 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: 'b197319bdddf0b979ccacdb63dbceccfd9bf2560', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && index$3.h("div", { key: 'c848ff6a10e9092cdb10a6f21c9a299a72b17ca9', class: "modal-shadow" }), index$3.h("div", Object.assign({ key: 'e7c8e67807d49098aba63dce69a1bbf9647bbab6',
|
|
3111
2978
|
/*
|
|
3112
2979
|
role and aria-modal must be used on the
|
|
3113
2980
|
same element. They must also be set inside the
|
|
@@ -3120,11 +2987,11 @@ const Modal = class {
|
|
|
3120
2987
|
without the tabindex focus() would be a no-op and screen readers
|
|
3121
2988
|
may not properly announce the dialog and its content when it opens.
|
|
3122
2989
|
*/
|
|
3123
|
-
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", tabIndex: -1, class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (index$
|
|
2990
|
+
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: '0851cc75ee7367e13d1993a9c4d8b1b4de1d3bf0', class: "modal-handle",
|
|
3124
2991
|
// 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",
|
|
2992
|
+
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: 'b4d9bc13dc0867e858db8e1c7277bd09b7fce44c', onSlotchange: this.onSlotChange }))));
|
|
3126
2993
|
}
|
|
3127
|
-
get el() { return index$
|
|
2994
|
+
get el() { return index$3.getElement(this); }
|
|
3128
2995
|
static get watchers() { return {
|
|
3129
2996
|
"isOpen": [{
|
|
3130
2997
|
"onIsOpenChange": 0
|
|
@@ -3144,7 +3011,6 @@ const LIFECYCLE_MAP = {
|
|
|
3144
3011
|
ionModalDidDismiss: 'ionViewDidLeave',
|
|
3145
3012
|
};
|
|
3146
3013
|
Modal.style = {
|
|
3147
|
-
ionic: modalIonicCss(),
|
|
3148
3014
|
ios: modalIosCss(),
|
|
3149
3015
|
md: modalMdCss()
|
|
3150
3016
|
};
|