voyager-ionic-core 8.8.17 → 9.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/index.js +1 -1
- package/components/ion-accordion-group.js +1 -1
- package/components/ion-accordion.js +1 -1
- package/components/ion-action-sheet.js +1 -1
- package/components/ion-alert.js +1 -1
- package/components/ion-app.js +1 -1
- package/components/ion-avatar.js +1 -1
- package/components/ion-back-button.js +1 -1
- package/components/ion-backdrop.js +1 -1
- package/components/ion-badge.js +1 -1
- package/components/ion-breadcrumb.js +1 -1
- package/components/ion-breadcrumbs.js +1 -1
- package/components/ion-button.js +1 -1
- package/components/ion-buttons.js +1 -1
- package/components/ion-card-content.js +1 -1
- package/components/ion-card-header.js +1 -1
- package/components/ion-card-subtitle.js +1 -1
- package/components/ion-card-title.js +1 -1
- package/components/ion-card.js +1 -1
- package/components/ion-checkbox.js +1 -1
- package/components/ion-chip.js +1 -1
- package/components/ion-col.js +1 -1
- package/components/ion-content.js +1 -1
- package/components/ion-datetime-button.js +1 -1
- package/components/ion-datetime.js +1 -1
- package/components/ion-fab-button.js +1 -1
- package/components/ion-fab-list.js +1 -1
- package/components/ion-fab.js +1 -1
- package/components/ion-footer.js +1 -1
- package/components/ion-grid.js +1 -1
- package/components/ion-header.js +1 -1
- package/components/ion-icon.js +1 -1
- package/components/ion-img.js +1 -1
- package/components/ion-infinite-scroll-content.js +1 -1
- package/components/ion-infinite-scroll.js +1 -1
- package/components/ion-input-otp.js +1 -1
- package/components/ion-input-password-toggle.js +1 -1
- package/components/ion-input.js +1 -1
- package/components/ion-item-divider.js +1 -1
- package/components/ion-item-group.js +1 -1
- package/components/ion-item-option.js +1 -1
- package/components/ion-item-options.js +1 -1
- package/components/ion-item-sliding.js +1 -1
- package/components/ion-item.js +1 -1
- package/components/ion-label.js +1 -1
- package/components/ion-list-header.js +1 -1
- package/components/ion-list.js +1 -1
- package/components/ion-loading.js +1 -1
- package/components/ion-menu-button.js +1 -1
- package/components/ion-menu-toggle.js +1 -1
- package/components/ion-menu.js +1 -1
- package/components/ion-modal.js +1 -1
- package/components/ion-nav-link.js +1 -1
- package/components/ion-nav.js +1 -1
- package/components/ion-note.js +1 -1
- package/components/ion-picker-column-option.js +1 -1
- package/components/ion-picker-column.js +1 -1
- package/components/ion-picker.js +1 -1
- package/components/ion-popover.js +1 -1
- package/components/ion-progress-bar.js +1 -1
- package/components/ion-radio-group.js +1 -1
- package/components/ion-radio.js +1 -1
- package/components/ion-range.js +1 -1
- package/components/ion-refresher-content.js +1 -1
- package/components/ion-refresher.js +1 -1
- package/components/ion-reorder-group.js +1 -1
- package/components/ion-reorder.js +1 -1
- package/components/ion-ripple-effect.js +1 -1
- package/components/ion-route-redirect.js +1 -1
- package/components/ion-route.js +1 -1
- package/components/ion-router-link.js +1 -1
- package/components/ion-router-outlet.js +1 -1
- package/components/ion-router.js +1 -1
- package/components/ion-row.js +1 -1
- package/components/ion-searchbar.js +1 -1
- package/components/ion-segment-button.js +1 -1
- package/components/ion-segment-content.js +1 -1
- package/components/ion-segment-view.js +1 -1
- package/components/ion-segment.js +1 -1
- package/components/ion-select-modal.js +1 -1
- package/components/ion-select-option.js +1 -1
- package/components/ion-select-popover.js +1 -1
- package/components/ion-select.js +1 -1
- package/components/ion-skeleton-text.js +1 -1
- package/components/ion-spinner.js +1 -1
- package/components/ion-split-pane.js +1 -1
- package/components/ion-tab-bar.js +1 -1
- package/components/ion-tab-button.js +1 -1
- package/components/ion-tab.js +1 -1
- package/components/ion-tabs.js +1 -1
- package/components/ion-text.js +1 -1
- package/components/ion-textarea.js +1 -1
- package/components/ion-thumbnail.js +1 -1
- package/components/ion-title.js +1 -1
- package/components/ion-toast.js +1 -1
- package/components/ion-toggle.js +1 -1
- package/components/ion-toolbar.js +1 -1
- package/components/p-1sJ0ZDPe.js +4 -0
- package/components/p-5ldEpNdG.js +4 -0
- package/components/p-6ZLn6K5e.js +4 -0
- package/components/p-B1_TL6RQ.js +4 -0
- package/components/p-B4lxwJ8N.js +4 -0
- package/components/{p-rCa2eL0j.js → p-BF48Oc0v.js} +1 -1
- package/components/p-BJr2B5hZ.js +4 -0
- package/components/p-BMPN55of.js +4 -0
- package/components/{p-ChIZKXUu.js → p-BQyuFxYc.js} +1 -1
- package/components/p-BSQPZ79H.js +4 -0
- package/components/p-BT9-hMMz.js +4 -0
- package/components/p-BU8a2IhR.js +4 -0
- package/components/p-BW_SlU2D.js +4 -0
- package/components/p-BWoa-cki.js +4 -0
- package/components/p-BYJRZKHa.js +4 -0
- package/components/p-B_gJaBk0.js +4 -0
- package/components/p-BgkOsq-d.js +4 -0
- package/components/p-BhamHSw3.js +4 -0
- package/components/p-Bi-it1EH.js +4 -0
- package/components/p-C-NbvXu4.js +4 -0
- package/components/p-C09TXohi.js +4 -0
- package/components/p-C4VpVfrJ.js +4 -0
- package/components/p-C8Ck7_Eo.js +4 -0
- package/components/p-CEW4RXZO.js +4 -0
- package/components/p-CG_zZq_I.js +4 -0
- package/components/{p-B9jFTlwE.js → p-CJgnoKcN.js} +1 -1
- package/components/p-CMRYD_yR.js +4 -0
- package/components/{p-BMI53wYL.js → p-CNLioZ3B.js} +1 -1
- package/components/{p--JUspHvy.js → p-COO0eJOA.js} +1 -1
- package/components/p-CWAks_S_.js +4 -0
- package/{dist/ionic/p-KjNvRoEp.js → components/p-Cd1WaN-0.js} +1 -1
- package/components/p-CqbGBmqb.js +4 -0
- package/components/p-CrAKlX71.js +4 -0
- package/components/p-Ctop2IWW.js +4 -0
- package/components/p-Cw6WocLJ.js +4 -0
- package/components/p-D0YpjgON.js +4 -0
- package/components/{p-DJZp0KTQ.js → p-D5w_FlVa.js} +1 -1
- package/components/p-D7-vHX0A.js +4 -0
- package/components/p-D7wDJdFn.js +4 -0
- package/components/p-DFLJvuRK.js +4 -0
- package/components/p-DL13ieTa.js +4 -0
- package/components/{p-DqLB8yFQ.js → p-DM1gJSMP.js} +1 -1
- package/components/p-DMBiAyOR.js +4 -0
- package/components/p-DWCzVL3Y.js +4 -0
- package/components/p-DZRZic9C.js +4 -0
- package/components/{p-C_hpsif8.js → p-DhNuxvJH.js} +1 -1
- package/components/p-DiuOa1vw.js +4 -0
- package/components/p-Djmz-ssp.js +4 -0
- package/components/p-DnBNYc7u.js +4 -0
- package/components/p-Dojwmvde.js +4 -0
- package/components/p-DwSXbQSz.js +4 -0
- package/components/p-DxhHlJln.js +4 -0
- package/components/p-Fl7ZFU74.js +4 -0
- package/components/{p-DqZAXv2t.js → p-GGbIHyEF.js} +1 -1
- package/components/{p-j5IxBIan.js → p-Hp8t4RMX.js} +1 -1
- package/components/p-M34T2gyX.js +4 -0
- package/components/p-TWw4e4sO.js +4 -0
- package/components/{p-Cfx4M1Bn.js → p-YjMkHuvH.js} +1 -1
- package/components/p-byZM6qHV.js +4 -0
- package/components/p-cEN43Ahr.js +4 -0
- package/components/p-qAXsfUff.js +4 -0
- package/dist/cjs/{animation-BJq0kcy2.js → animation-Kd1N7WTN.js} +4 -4
- package/dist/cjs/{app-globals-BlqrqKTN.js → app-globals-b1G4t26O.js} +1 -1
- package/dist/cjs/{button-active-0mPOKmV2.js → button-active-CQCFubJJ.js} +3 -3
- package/dist/cjs/config-CjUbvdPW.js +36 -0
- package/dist/cjs/dir-zwDPRE5K.js +30 -0
- package/dist/cjs/{format-PxvGiOik.js → format-bHU8N1g5.js} +40 -30
- package/dist/cjs/{framework-delegate-BtICZDHr.js → framework-delegate-d-fWfeI6.js} +5 -7
- package/dist/cjs/{gesture-controller-dtqlP_q4.js → gesture-controller-CeJslptU.js} +1 -2
- package/dist/cjs/{haptic-ClPPQ_PS.js → haptic-Ch-X4gRx.js} +2 -3
- package/dist/cjs/{hardware-back-button-iUuF_76h.js → hardware-back-button-Bu4Dzw8l.js} +4 -4
- package/dist/cjs/{helpers-Cv23MFHM.js → helpers-7wzdhdeg.js} +15 -11
- package/dist/cjs/{index-D81eLYUM.js → index-C74Q3t6a.js} +3 -2
- package/dist/cjs/{index-BERfRao3.js → index-CQfEIyLK.js} +5 -5
- package/dist/cjs/{index-aC4x3Fk3.js → index-DFNrCX7M.js} +6 -7
- package/dist/cjs/{index-CAvQ7Tka.js → index-DRPqwSvU.js} +13 -30
- package/dist/cjs/{index-Ct7gcRif.js → index-DXoo08JC.js} +321 -26
- package/dist/cjs/{index-CIrkNXqJ.js → index-DtvKGwdh.js} +34 -2
- package/dist/cjs/index-KiSZqhYS.js +431 -0
- package/dist/cjs/{index-DqmRDbxg.js → index-wOmugbdg.js} +1 -1
- package/dist/cjs/index.cjs.js +19 -18
- package/dist/cjs/{input-shims-CFLg7uzj.js → input-shims-VJIiKBKv.js} +10 -11
- package/dist/cjs/input.utils-EHVE2RK_.js +35 -0
- package/dist/cjs/ion-accordion_2.cjs.entry.js +12 -12
- package/dist/cjs/ion-action-sheet.cjs.entry.js +92 -44
- package/dist/cjs/ion-alert.cjs.entry.js +144 -65
- package/dist/cjs/ion-app_8.cjs.entry.js +112 -40
- package/dist/cjs/ion-avatar_3.cjs.entry.js +4 -4
- package/dist/cjs/ion-back-button.cjs.entry.js +6 -5
- package/dist/cjs/ion-backdrop.cjs.entry.js +2 -2
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +8 -7
- package/dist/cjs/ion-button_2.cjs.entry.js +12 -8
- package/dist/cjs/ion-card_5.cjs.entry.js +6 -5
- package/dist/cjs/ion-checkbox.cjs.entry.js +10 -7
- package/dist/cjs/ion-chip.cjs.entry.js +3 -3
- package/dist/cjs/ion-col_3.cjs.entry.js +10 -6
- package/dist/cjs/ion-datetime-button.cjs.entry.js +22 -25
- package/dist/cjs/{ion-datetime_3.cjs.entry.js → ion-datetime.cjs.entry.js} +182 -746
- package/dist/cjs/ion-fab_3.cjs.entry.js +7 -6
- package/dist/cjs/ion-img.cjs.entry.js +7 -4
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +8 -6
- package/dist/cjs/ion-input-otp.cjs.entry.js +20 -29
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +9 -10
- package/dist/cjs/ion-input.cjs.entry.js +58 -70
- package/dist/cjs/ion-item-option_3.cjs.entry.js +21 -24
- package/dist/cjs/ion-item_8.cjs.entry.js +38 -34
- package/dist/cjs/ion-loading.cjs.entry.js +29 -15
- package/dist/cjs/ion-menu_3.cjs.entry.js +23 -24
- package/dist/cjs/ion-modal.cjs.entry.js +283 -161
- package/dist/cjs/ion-nav_2.cjs.entry.js +30 -138
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +8 -13
- package/dist/cjs/ion-picker-column.cjs.entry.js +218 -62
- package/dist/cjs/ion-picker.cjs.entry.js +4 -4
- package/dist/cjs/ion-popover.cjs.entry.js +50 -30
- package/dist/cjs/ion-progress-bar.cjs.entry.js +6 -5
- package/dist/cjs/ion-radio_2.cjs.entry.js +12 -11
- package/dist/cjs/ion-range.cjs.entry.js +30 -25
- package/dist/cjs/ion-refresher_2.cjs.entry.js +34 -26
- package/dist/cjs/ion-reorder_2.cjs.entry.js +10 -9
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +3 -3
- package/dist/cjs/ion-route_4.cjs.entry.js +36 -30
- package/dist/cjs/ion-searchbar.cjs.entry.js +27 -22
- package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
- package/dist/cjs/ion-segment-view.cjs.entry.js +5 -6
- package/dist/cjs/ion-segment_2.cjs.entry.js +30 -26
- package/dist/cjs/ion-select-modal.cjs.entry.js +93 -38
- package/dist/cjs/ion-select_3.cjs.entry.js +495 -126
- package/dist/cjs/ion-spinner.cjs.entry.js +5 -6
- package/dist/cjs/ion-split-pane.cjs.entry.js +4 -4
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +15 -12
- package/dist/cjs/ion-tab_2.cjs.entry.js +8 -8
- package/dist/cjs/ion-text.cjs.entry.js +5 -5
- package/dist/cjs/ion-textarea.cjs.entry.js +56 -65
- package/dist/cjs/ion-toast.cjs.entry.js +26 -21
- package/dist/cjs/ion-toggle.cjs.entry.js +15 -13
- package/dist/cjs/{ionic-global-B-cA6LkY.js → ionic-global-CYJNT-2P.js} +13 -8
- package/dist/cjs/ionic.cjs.js +5 -5
- package/dist/cjs/{ios.transition-BOSWOaiK.js → ios.transition-DYGiD6gM.js} +14 -17
- package/dist/cjs/{item-multiple-inputs-D-gyg57c.js → item-multiple-inputs-Dv6qrMhm.js} +1 -1
- package/dist/cjs/{keyboard-hHzlEQpk.js → keyboard-Cix5TVkD.js} +2 -2
- package/dist/cjs/{keyboard-UuAS4D_9.js → keyboard-cHxZlTyz.js} +2 -2
- package/dist/cjs/{keyboard-controller-GXBiBRKS.js → keyboard-controller-PtZoN2GS.js} +6 -6
- package/dist/cjs/loader.cjs.js +4 -4
- package/dist/cjs/{md.transition-B8-wBZqt.js → md.transition-CrSkaoz6.js} +8 -8
- package/dist/cjs/overlay-control-label-D2sdL2O8.js +50 -0
- package/dist/cjs/{overlays-DdtIYQUH.js → overlays-BR21NUIG.js} +98 -58
- package/dist/cjs/select-option-render-D8ZEjYji.js +123 -0
- package/dist/cjs/slot-mutation-controller-D6IjSEIh.js +397 -0
- package/dist/cjs/{status-tap-BXX8H8_Y.js → status-tap-CNP5eD1R.js} +4 -3
- package/dist/cjs/{swipe-back-CCMaNiP2.js → swipe-back-CSIJQfu5.js} +5 -5
- package/dist/cjs/{theme-CeDs6Hcv.js → theme-Bw0rpaNN.js} +6 -1
- package/dist/collection/collection-manifest.json +7 -11
- package/dist/collection/components/accordion/accordion.js +5 -6
- package/dist/collection/components/accordion-group/accordion-group.js +2 -2
- package/dist/collection/components/action-sheet/action-sheet.ios.css +228 -2
- package/dist/collection/components/action-sheet/action-sheet.js +77 -31
- package/dist/collection/components/action-sheet/action-sheet.md.css +174 -2
- package/dist/collection/components/alert/alert.ios.css +279 -10
- package/dist/collection/components/alert/alert.js +127 -50
- package/dist/collection/components/alert/alert.md.css +268 -20
- package/dist/collection/components/breadcrumb/breadcrumb.js +1 -1
- package/dist/collection/components/breadcrumbs/breadcrumbs.js +1 -1
- package/dist/collection/components/button/button.js +5 -2
- package/dist/collection/components/card/card.js +1 -1
- package/dist/collection/components/checkbox/checkbox.js +4 -2
- package/dist/collection/components/col/col.js +7 -3
- package/dist/collection/components/content/content.js +56 -6
- package/dist/collection/components/datetime/datetime.ios.css +42 -2
- package/dist/collection/components/datetime/datetime.js +146 -77
- package/dist/collection/components/datetime/datetime.md.css +42 -1
- package/dist/collection/components/datetime/utils/data.js +13 -14
- package/dist/collection/components/datetime/utils/format.js +21 -11
- package/dist/collection/components/datetime/utils/manipulation.js +8 -8
- package/dist/collection/components/datetime/utils/parse.js +10 -10
- package/dist/collection/components/datetime/utils/state.js +8 -2
- package/dist/collection/components/datetime/utils/validate.js +4 -5
- package/dist/collection/components/datetime-button/datetime-button.ios.css +5 -0
- package/dist/collection/components/datetime-button/datetime-button.js +15 -20
- package/dist/collection/components/datetime-button/datetime-button.md.css +5 -0
- package/dist/collection/components/fab-button/fab-button.js +1 -1
- package/dist/collection/components/footer/footer.js +1 -1
- package/dist/collection/components/header/header.js +2 -2
- package/dist/collection/components/img/img.js +6 -1
- package/dist/collection/components/input/input.ios.css +57 -26
- package/dist/collection/components/input/input.js +51 -64
- package/dist/collection/components/input/input.md.css +79 -43
- package/dist/collection/components/input-otp/input-otp.js +15 -24
- package/dist/collection/components/input-password-toggle/input-password-toggle.js +5 -6
- package/dist/collection/components/item/item.js +19 -16
- package/dist/collection/components/item-divider/item-divider.js +2 -2
- package/dist/collection/components/item-group/item-group.js +1 -1
- package/dist/collection/components/item-option/item-option.js +2 -2
- package/dist/collection/components/item-options/item-options.js +1 -1
- package/dist/collection/components/item-sliding/item-sliding.js +12 -16
- package/dist/collection/components/label/label.js +2 -2
- package/dist/collection/components/list/list.js +2 -2
- package/dist/collection/components/list-header/list-header.js +2 -2
- package/dist/collection/components/loading/loading.js +17 -5
- package/dist/collection/components/menu/menu.js +6 -8
- package/dist/collection/components/menu-button/menu-button.js +2 -2
- package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
- package/dist/collection/components/modal/animations/ios.enter.js +1 -1
- package/dist/collection/components/modal/animations/md.enter.js +1 -1
- package/dist/collection/components/modal/gestures/sheet.js +42 -34
- package/dist/collection/components/modal/gestures/swipe-to-close.js +18 -35
- package/dist/collection/components/modal/gestures/utils.js +17 -0
- package/dist/collection/components/modal/modal.js +146 -65
- package/dist/collection/components/modal/safe-area-utils.js +39 -5
- package/dist/collection/components/nav/nav.js +24 -235
- package/dist/collection/components/nav-link/nav-link.js +1 -1
- package/dist/collection/components/note/note.js +2 -2
- package/dist/collection/components/picker/picker.js +1 -2
- package/dist/collection/components/picker-column/picker-column.css +3 -0
- package/dist/collection/components/picker-column/picker-column.js +212 -58
- package/dist/collection/components/picker-column-option/picker-column-option.js +3 -10
- package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -1
- package/dist/collection/components/popover/animations/ios.enter.js +1 -2
- package/dist/collection/components/popover/animations/md.enter.js +1 -2
- package/dist/collection/components/popover/popover.ios.css +15 -0
- package/dist/collection/components/popover/popover.js +32 -9
- package/dist/collection/components/popover/popover.md.css +15 -0
- package/dist/collection/components/popover/utils.js +4 -6
- package/dist/collection/components/progress-bar/progress-bar.js +1 -1
- package/dist/collection/components/radio/radio.js +5 -5
- package/dist/collection/components/radio-group/radio-group.js +2 -2
- package/dist/collection/components/range/range.js +24 -19
- package/dist/collection/components/refresher/refresher.js +19 -13
- package/dist/collection/components/refresher-content/refresher-content.js +1 -1
- package/dist/collection/components/reorder/reorder.js +1 -1
- package/dist/collection/components/reorder-group/reorder-group.js +1 -1
- package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
- package/dist/collection/components/route/route.js +1 -1
- package/dist/collection/components/router/router.js +2 -6
- package/dist/collection/components/router/utils/dom.js +25 -7
- package/dist/collection/components/router/utils/matching.js +6 -9
- package/dist/collection/components/router/utils/parser.js +1 -1
- package/dist/collection/components/router/utils/path.js +0 -1
- package/dist/collection/components/router-link/router-link.js +2 -2
- package/dist/collection/components/router-outlet/router-outlet.js +49 -10
- package/dist/collection/components/row/row.js +1 -1
- package/dist/collection/components/searchbar/searchbar.js +25 -20
- package/dist/collection/components/segment/segment.js +9 -11
- package/dist/collection/components/segment-button/segment-button.js +15 -9
- package/dist/collection/components/segment-content/segment-content.js +1 -1
- package/dist/collection/components/segment-view/segment-view.js +3 -4
- package/dist/collection/components/select/select.ios.css +96 -69
- package/dist/collection/components/select/select.js +405 -92
- package/dist/collection/components/select/select.md.css +118 -85
- package/dist/collection/components/select-modal/select-modal.ios.css +218 -0
- package/dist/collection/components/select-modal/select-modal.js +80 -27
- package/dist/collection/components/select-modal/select-modal.md.css +164 -0
- package/dist/collection/components/select-option/select-option.js +67 -3
- package/dist/collection/components/select-popover/select-popover.ios.css +218 -0
- package/dist/collection/components/select-popover/select-popover.js +78 -26
- package/dist/collection/components/select-popover/select-popover.md.css +164 -0
- package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
- package/dist/collection/components/spinner/spinner.js +2 -3
- package/dist/collection/components/split-pane/split-pane.js +2 -2
- package/dist/collection/components/tab/tab.js +2 -2
- package/dist/collection/components/tab-bar/tab-bar.js +2 -2
- package/dist/collection/components/tab-button/tab-button.js +6 -4
- package/dist/collection/components/tabs/tabs.js +2 -3
- package/dist/collection/components/text/text.js +2 -2
- package/dist/collection/components/textarea/textarea.ios.css +94 -62
- package/dist/collection/components/textarea/textarea.js +47 -57
- package/dist/collection/components/textarea/textarea.md.css +103 -77
- package/dist/collection/components/thumbnail/thumbnail.js +1 -1
- package/dist/collection/components/title/title.js +2 -2
- package/dist/collection/components/toast/toast.js +12 -9
- package/dist/collection/components/toggle/toggle.js +6 -4
- package/dist/collection/components/toolbar/toolbar.js +7 -4
- package/dist/collection/global/config.js +3 -3
- package/dist/collection/global/ionic-global.js +8 -2
- package/dist/collection/index.js +1 -1
- package/dist/collection/utils/animation/animation.js +3 -3
- package/dist/collection/utils/config.js +5 -4
- package/dist/collection/utils/content/index.js +30 -0
- package/dist/collection/utils/focus-controller/index.js +1 -1
- package/dist/collection/utils/focus-trap.js +3 -3
- package/dist/collection/utils/forms/index.js +1 -0
- package/dist/collection/utils/forms/start-container-controller.js +132 -0
- package/dist/collection/utils/framework-delegate.js +4 -6
- package/dist/collection/utils/gesture/gesture-controller.js +1 -2
- package/dist/collection/utils/gesture/index.js +10 -2
- package/dist/collection/utils/gesture/listener.js +4 -27
- package/dist/collection/utils/hardware-back-button.js +3 -3
- package/dist/collection/utils/helpers.js +14 -10
- package/dist/collection/utils/input-shims/hacks/scroll-assist.js +4 -5
- package/dist/collection/utils/input-shims/hacks/scroll-data.js +1 -2
- package/dist/collection/utils/keyboard/keyboard-controller.js +5 -5
- package/dist/collection/utils/keyboard/keyboard.js +1 -1
- package/dist/collection/utils/logging/index.js +23 -4
- package/dist/collection/utils/menu-controller/index.js +1 -2
- package/dist/collection/utils/native/haptic.js +2 -3
- package/dist/collection/utils/native/keyboard.js +2 -2
- package/dist/collection/utils/native/status-bar.js +1 -1
- package/dist/collection/utils/overlay-control-label.js +45 -0
- package/dist/collection/utils/overlays.js +87 -48
- package/dist/collection/utils/platform.js +4 -5
- package/dist/collection/utils/rtl/dir.js +17 -7
- package/dist/collection/utils/sanitization/index.js +283 -26
- package/dist/collection/utils/select-option-render.js +118 -0
- package/dist/collection/utils/slot-mutation-controller.js +1 -2
- package/dist/collection/utils/test/late-props/late-props.js +69 -0
- package/dist/collection/utils/test/playwright/apply-keyboard-focus.js +1 -1
- package/dist/collection/utils/test/playwright/detach-reattach.js +23 -0
- package/dist/collection/utils/test/playwright/drag-element.js +2 -3
- package/dist/collection/utils/test/playwright/generator.js +3 -4
- package/dist/collection/utils/test/playwright/index.js +1 -0
- package/dist/collection/utils/test/playwright/page/event-spy.js +2 -4
- package/dist/collection/utils/test/playwright/page/utils/goto.js +4 -5
- package/dist/collection/utils/test/playwright/page/utils/set-content.js +1 -1
- package/dist/collection/utils/test/playwright/page/utils/set-ion-viewport.js +2 -3
- package/dist/collection/utils/test/press-keys.js +6 -16
- package/dist/collection/utils/theme.js +6 -1
- package/dist/collection/utils/transition/ios.transition.js +9 -13
- package/dist/collection/utils/transition/md.transition.js +3 -4
- package/dist/docs.json +933 -1402
- package/dist/esm/{animation-DLJpuoEz.js → animation-BFNVlYum.js} +4 -4
- package/dist/esm/{app-globals-D0C5S4hU.js → app-globals-BgX0BGL1.js} +1 -1
- package/dist/esm/{button-active-BSpTQmS9.js → button-active-BfOvDr3b.js} +3 -3
- package/dist/esm/config-DWCzVL3Y.js +32 -0
- package/dist/esm/dir-Dojwmvde.js +28 -0
- package/dist/esm/{format-CAmvpAez.js → format-DDFE9jM5.js} +41 -31
- package/dist/esm/{framework-delegate-FnPGymXL.js → framework-delegate-BwNhx9NR.js} +5 -7
- package/dist/esm/{gesture-controller-BTEOs1at.js → gesture-controller-B_gJaBk0.js} +1 -2
- package/dist/esm/{haptic-DzAMWJuk.js → haptic-Cq4UAeka.js} +2 -3
- package/dist/esm/{hardware-back-button-B93Gru0Y.js → hardware-back-button-DmkiRgOT.js} +4 -4
- package/dist/esm/{helpers-HEqiOzXb.js → helpers-BSmc0nst.js} +15 -11
- package/dist/esm/{index-CfgBF1SE.js → index-BmLuEdV7.js} +13 -30
- package/dist/esm/{index-Q6UPU0Ay.js → index-BuPaALjU.js} +6 -7
- package/dist/esm/{index-DV3sJJW8.js → index-BvabGprD.js} +2 -2
- package/dist/esm/{index-MEDq2S8l.js → index-C1b9CLFg.js} +33 -3
- package/dist/esm/{index-tcQvqkiX.js → index-C23AVPx9.js} +303 -26
- package/dist/esm/{index-BRHzoo00.js → index-CJln0gS3.js} +3 -2
- package/dist/esm/index-D76bbuoi.js +425 -0
- package/dist/esm/{index-B_dQk_WE.js → index-DnA_7Bnx.js} +5 -5
- package/dist/esm/index.js +17 -15
- package/dist/esm/{input-shims-D10mwcw1.js → input-shims-Dqk-Ou25.js} +10 -11
- package/dist/esm/input.utils-rqoH22pW.js +33 -0
- package/dist/esm/ion-accordion_2.entry.js +12 -12
- package/dist/esm/ion-action-sheet.entry.js +92 -44
- package/dist/esm/ion-alert.entry.js +143 -64
- package/dist/esm/ion-app_8.entry.js +112 -40
- package/dist/esm/ion-avatar_3.entry.js +4 -4
- package/dist/esm/ion-back-button.entry.js +6 -5
- package/dist/esm/ion-backdrop.entry.js +2 -2
- package/dist/esm/ion-breadcrumb_2.entry.js +8 -7
- package/dist/esm/ion-button_2.entry.js +12 -8
- package/dist/esm/ion-card_5.entry.js +6 -5
- package/dist/esm/ion-checkbox.entry.js +10 -7
- package/dist/esm/ion-chip.entry.js +3 -3
- package/dist/esm/ion-col_3.entry.js +10 -6
- package/dist/esm/ion-datetime-button.entry.js +22 -25
- package/dist/esm/{ion-datetime_3.entry.js → ion-datetime.entry.js} +183 -745
- package/dist/esm/ion-fab_3.entry.js +7 -6
- package/dist/esm/ion-img.entry.js +7 -4
- package/dist/esm/ion-infinite-scroll_2.entry.js +7 -5
- package/dist/esm/ion-input-otp.entry.js +20 -29
- package/dist/esm/ion-input-password-toggle.entry.js +9 -10
- package/dist/esm/ion-input.entry.js +56 -68
- package/dist/esm/ion-item-option_3.entry.js +21 -24
- package/dist/esm/ion-item_8.entry.js +38 -34
- package/dist/esm/ion-loading.entry.js +28 -14
- package/dist/esm/ion-menu_3.entry.js +23 -24
- package/dist/esm/ion-modal.entry.js +271 -149
- package/dist/esm/ion-nav_2.entry.js +30 -138
- package/dist/esm/ion-picker-column-option.entry.js +8 -13
- package/dist/esm/ion-picker-column.entry.js +218 -62
- package/dist/esm/ion-picker.entry.js +4 -4
- package/dist/esm/ion-popover.entry.js +50 -30
- package/dist/esm/ion-progress-bar.entry.js +6 -5
- package/dist/esm/ion-radio_2.entry.js +12 -11
- package/dist/esm/ion-range.entry.js +30 -25
- package/dist/esm/ion-refresher_2.entry.js +32 -24
- package/dist/esm/ion-reorder_2.entry.js +10 -9
- package/dist/esm/ion-ripple-effect.entry.js +3 -3
- package/dist/esm/ion-route_4.entry.js +36 -30
- package/dist/esm/ion-searchbar.entry.js +27 -22
- package/dist/esm/ion-segment-content.entry.js +2 -2
- package/dist/esm/ion-segment-view.entry.js +5 -6
- package/dist/esm/ion-segment_2.entry.js +30 -26
- package/dist/esm/ion-select-modal.entry.js +93 -38
- package/dist/esm/ion-select_3.entry.js +495 -126
- package/dist/esm/ion-spinner.entry.js +5 -6
- package/dist/esm/ion-split-pane.entry.js +4 -4
- package/dist/esm/ion-tab-bar_2.entry.js +15 -12
- package/dist/esm/ion-tab_2.entry.js +8 -8
- package/dist/esm/ion-text.entry.js +5 -5
- package/dist/esm/ion-textarea.entry.js +55 -64
- package/dist/esm/ion-toast.entry.js +25 -20
- package/dist/esm/ion-toggle.entry.js +15 -13
- package/dist/esm/{ionic-global-Cp_eT4sZ.js → ionic-global-ZXjCXKH0.js} +13 -8
- package/dist/esm/ionic.js +6 -6
- package/dist/esm/{ios.transition-ClFrsIrS.js → ios.transition-CWAgfQ1r.js} +14 -17
- package/dist/esm/{item-multiple-inputs-DlNuqNJm.js → item-multiple-inputs-DZnIiOO_.js} +1 -1
- package/dist/esm/{keyboard-ywgs5efA.js → keyboard-Cj8mLJeq.js} +2 -2
- package/dist/esm/{keyboard-CUw4ekVy.js → keyboard-DAF8GNJ9.js} +2 -2
- package/dist/esm/{keyboard-controller-BaaVITYt.js → keyboard-controller-DEwoa1ev.js} +6 -6
- package/dist/esm/loader.js +5 -5
- package/dist/esm/{md.transition-D0msQmzI.js → md.transition-ZuqDDdDW.js} +8 -8
- package/dist/esm/overlay-control-label-BSQPZ79H.js +47 -0
- package/dist/esm/{overlays-Dg0q2_tJ.js → overlays-DKE0DgvE.js} +97 -58
- package/dist/esm/select-option-render-CRP_teb1.js +121 -0
- package/dist/esm/slot-mutation-controller-B5NpUZ-N.js +393 -0
- package/dist/esm/{status-tap-Kan2W7sh.js → status-tap-Cv9gb3ja.js} +4 -3
- package/dist/esm/{swipe-back-ZUWwA-KF.js → swipe-back-De5HlmeM.js} +5 -5
- package/dist/esm/{theme-DiVJyqlX.js → theme-byZM6qHV.js} +6 -1
- package/dist/html.html-data.json +54 -82
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-099b7f9f.entry.js +4 -0
- package/dist/ionic/p-0dcb7bb6.entry.js +4 -0
- package/dist/ionic/p-1347880c.entry.js +4 -0
- package/dist/ionic/p-191a651e.entry.js +4 -0
- package/dist/ionic/p-1f24cb24.entry.js +4 -0
- package/dist/ionic/p-271c3640.entry.js +4 -0
- package/dist/ionic/p-2ea4bb36.entry.js +4 -0
- package/dist/ionic/p-338a02e0.entry.js +4 -0
- package/dist/ionic/p-38b9375b.entry.js +4 -0
- package/dist/ionic/p-3bba83ee.entry.js +4 -0
- package/dist/ionic/p-3e01c744.entry.js +4 -0
- package/dist/ionic/p-458715a9.entry.js +4 -0
- package/dist/ionic/p-4712a8a9.entry.js +4 -0
- package/dist/ionic/p-4c3e50f8.entry.js +4 -0
- package/dist/ionic/p-54cbb0a7.entry.js +4 -0
- package/dist/ionic/{p-2bb2cb18.entry.js → p-561af487.entry.js} +1 -1
- package/dist/ionic/p-5906ea6f.entry.js +4 -0
- package/dist/ionic/p-5cc09b40.entry.js +4 -0
- package/dist/ionic/p-5d9094ac.entry.js +4 -0
- package/dist/ionic/p-612ea3b1.entry.js +4 -0
- package/dist/ionic/p-68cc89a6.entry.js +4 -0
- package/dist/ionic/{p-dfa8d673.entry.js → p-6e386853.entry.js} +1 -1
- package/dist/ionic/p-77c96e08.entry.js +4 -0
- package/dist/ionic/p-7bfeccb3.entry.js +4 -0
- package/dist/ionic/p-7e394cc3.entry.js +4 -0
- package/dist/ionic/{p-0fa9c382.entry.js → p-7fbb3319.entry.js} +1 -1
- package/dist/ionic/p-803059b6.entry.js +4 -0
- package/dist/ionic/p-837db1b9.entry.js +4 -0
- package/dist/ionic/p-85599fe3.entry.js +4 -0
- package/dist/ionic/p-8b80d9f9.entry.js +4 -0
- package/dist/ionic/p-90f50a65.entry.js +4 -0
- package/dist/ionic/p-9595e305.entry.js +4 -0
- package/dist/ionic/p-9c5f2691.entry.js +4 -0
- package/dist/ionic/p-9ee9c5b6.entry.js +4 -0
- package/dist/ionic/p-BMPN55of.js +4 -0
- package/dist/ionic/p-BMiZX1LT.js +4 -0
- package/dist/ionic/p-BSQPZ79H.js +4 -0
- package/dist/ionic/p-BY6BzzPF.js +4 -0
- package/dist/ionic/p-B_gJaBk0.js +4 -0
- package/dist/ionic/p-BaeKWZ-a.js +4 -0
- package/dist/ionic/p-Bd72UYI2.js +4 -0
- package/dist/ionic/p-BgOvhHy_.js +4 -0
- package/dist/ionic/p-BhamHSw3.js +4 -0
- package/dist/ionic/p-BijjLYjT.js +4 -0
- package/dist/ionic/{p-DV3sJJW8.js → p-BvabGprD.js} +1 -1
- package/dist/ionic/p-C23AVPx9.js +6 -0
- package/dist/ionic/p-C8XilMh0.js +4 -0
- package/dist/ionic/p-CER8qW8Y.js +4 -0
- package/dist/ionic/p-CFuOr1Tu.js +4 -0
- package/dist/ionic/p-CM5OBjTW.js +4 -0
- package/dist/ionic/p-CMZYmFb4.js +4 -0
- package/dist/ionic/p-CkxVYPtX.js +4 -0
- package/dist/ionic/p-CmXuiRT6.js +4 -0
- package/dist/ionic/p-D0YpjgON.js +4 -0
- package/dist/ionic/p-D5t_-oMk.js +4 -0
- package/dist/ionic/p-D6rHcCvc.js +4 -0
- package/dist/ionic/p-D7jHfs0Y.js +4 -0
- package/dist/ionic/p-DLM95R4x.js +4 -0
- package/dist/ionic/p-DTxBioUO.js +4 -0
- package/dist/ionic/p-DWCzVL3Y.js +4 -0
- package/dist/ionic/p-DYUjHcuH.js +4 -0
- package/{components/p-BkKAANMJ.js → dist/ionic/p-DZ6Hmc-8.js} +1 -1
- package/dist/ionic/p-D_gb-kdd.js +4 -0
- package/dist/ionic/p-DajLgJ4d.js +4 -0
- package/dist/ionic/p-Do3zTvCA.js +4 -0
- package/dist/ionic/p-Dojwmvde.js +4 -0
- package/dist/ionic/p-T71k3C35.js +4 -0
- package/dist/ionic/p-a8df96c8.entry.js +4 -0
- package/dist/ionic/p-a8ff2489.entry.js +4 -0
- package/dist/ionic/p-aff52029.entry.js +4 -0
- package/dist/ionic/p-b3532b8d.entry.js +4 -0
- package/dist/ionic/p-b9b4e85d.entry.js +4 -0
- package/dist/ionic/p-byZM6qHV.js +4 -0
- package/dist/ionic/{p-c6e49f3f.entry.js → p-ca1b8865.entry.js} +1 -1
- package/dist/ionic/p-cc4320d3.entry.js +4 -0
- package/dist/ionic/p-d526798a.entry.js +4 -0
- package/dist/ionic/p-d6755739.entry.js +4 -0
- package/dist/ionic/p-d8c138d9.entry.js +4 -0
- package/dist/ionic/p-db449915.entry.js +4 -0
- package/dist/ionic/p-dd01be0a.entry.js +4 -0
- package/dist/ionic/p-ec00fd0d.entry.js +4 -0
- package/dist/ionic/p-ee09ac9d.entry.js +4 -0
- package/dist/ionic/{p-37e720da.entry.js → p-efc0cf82.entry.js} +1 -1
- package/dist/ionic/p-f0fb23c1.entry.js +4 -0
- package/dist/ionic/p-f83b3e0c.entry.js +4 -0
- package/dist/ionic/p-fa50d493.entry.js +4 -0
- package/dist/ionic/p-zWf7R2xV.js +4 -0
- package/dist/types/components/action-sheet/action-sheet.d.ts +10 -0
- package/dist/types/components/alert/alert.d.ts +7 -0
- package/dist/types/components/content/content.d.ts +12 -0
- package/dist/types/components/datetime/datetime.d.ts +5 -1
- package/dist/types/components/img/img.d.ts +2 -0
- package/dist/types/components/input/input.d.ts +12 -6
- package/dist/types/components/modal/gestures/sheet.d.ts +1 -0
- package/dist/types/components/modal/gestures/utils.d.ts +11 -0
- package/dist/types/components/modal/modal-interface.d.ts +9 -0
- package/dist/types/components/modal/modal.d.ts +25 -7
- package/dist/types/components/modal/safe-area-utils.d.ts +6 -0
- package/dist/types/components/nav/nav-interface.d.ts +0 -1
- package/dist/types/components/nav/nav.d.ts +2 -22
- package/dist/types/components/picker-column/picker-column.d.ts +42 -0
- package/dist/types/components/range/range.d.ts +4 -1
- package/dist/types/components/refresher/refresher.d.ts +7 -0
- package/dist/types/components/route/route.d.ts +1 -1
- package/dist/types/components/router-outlet/router-outlet.d.ts +7 -0
- package/dist/types/components/searchbar/searchbar.d.ts +1 -1
- package/dist/types/components/select/select-interface.d.ts +31 -0
- package/dist/types/components/select/select.d.ts +30 -6
- package/dist/types/components/select-option/select-option.d.ts +42 -1
- package/dist/types/components/textarea/textarea.d.ts +12 -5
- package/dist/types/components.d.ts +79 -316
- package/dist/types/index.d.ts +1 -1
- package/dist/types/interface.d.ts +0 -1
- package/dist/types/stencil-public-runtime.d.ts +12 -0
- package/dist/types/utils/config.d.ts +1 -8
- package/dist/types/utils/content/index.d.ts +12 -0
- package/dist/types/utils/forms/index.d.ts +1 -0
- package/dist/types/utils/forms/start-container-controller.d.ts +34 -0
- package/dist/types/utils/helpers.d.ts +8 -5
- package/dist/types/utils/logging/index.d.ts +2 -1
- package/dist/types/utils/overlay-control-label.d.ts +32 -0
- package/dist/types/utils/overlays.d.ts +20 -9
- package/dist/types/utils/rtl/dir.d.ts +10 -4
- package/dist/types/utils/sanitization/index.d.ts +58 -2
- package/dist/types/utils/select-option-render.d.ts +53 -0
- package/dist/types/utils/test/playwright/detach-reattach.d.ts +13 -0
- package/dist/types/utils/test/playwright/index.d.ts +1 -0
- package/dist/types/utils/test/playwright/playwright-page.d.ts +1 -1
- package/dist/types/utils/test/playwright/testExpect.d.ts +1 -1
- package/hydrate/index.js +2998 -2155
- package/hydrate/index.mjs +2998 -2155
- package/loader/index.d.ts +1 -1
- package/package.json +58 -14
- package/components/ion-picker-legacy-column.d.ts +0 -11
- package/components/ion-picker-legacy-column.js +0 -4
- package/components/ion-picker-legacy.d.ts +0 -11
- package/components/ion-picker-legacy.js +0 -4
- package/components/p-A3O24YmY.js +0 -4
- package/components/p-ABkNVeU9.js +0 -4
- package/components/p-B-JJgYSG.js +0 -4
- package/components/p-BB42Mlnr.js +0 -4
- package/components/p-BLmJ0zRm.js +0 -4
- package/components/p-BSEgsdFI.js +0 -4
- package/components/p-BTEOs1at.js +0 -4
- package/components/p-BlIAuGv2.js +0 -4
- package/components/p-Bnsn6KaP.js +0 -4
- package/components/p-BsBCoGa-.js +0 -4
- package/components/p-Bz0dSlXZ.js +0 -4
- package/components/p-C53feagD.js +0 -4
- package/components/p-CHqRYvYm.js +0 -4
- package/components/p-CQGnMY3n.js +0 -4
- package/components/p-CSZf8_j0.js +0 -4
- package/components/p-C_xFdyXe.js +0 -4
- package/components/p-Cf2jSDS8.js +0 -4
- package/components/p-CkMSOsFF.js +0 -4
- package/components/p-Cl0B-RWe.js +0 -4
- package/components/p-CmR5uXej.js +0 -4
- package/components/p-CsNJ1ULL.js +0 -4
- package/components/p-CtWGkNnJ.js +0 -4
- package/components/p-CzCbeKys.js +0 -4
- package/components/p-D-aHdMxW.js +0 -4
- package/components/p-D0d8qTwj.js +0 -4
- package/components/p-D13Eaw-8.js +0 -4
- package/components/p-D3xo7hqU.js +0 -4
- package/components/p-D6Ynv7Xh.js +0 -4
- package/components/p-DCnGU1fF.js +0 -4
- package/components/p-DGZpx6KJ.js +0 -4
- package/components/p-DGvrK8dD.js +0 -4
- package/components/p-DHTSTb52.js +0 -4
- package/components/p-DOFCbuQR.js +0 -4
- package/components/p-DRugphUN.js +0 -4
- package/components/p-DV5mPYQS.js +0 -4
- package/components/p-DWkAgceV.js +0 -4
- package/components/p-DiVJyqlX.js +0 -4
- package/components/p-KEFO0w3i.js +0 -4
- package/components/p-Osve4qkc.js +0 -4
- package/components/p-SLS1rDZM.js +0 -4
- package/components/p-VWbRkLT7.js +0 -4
- package/components/p-aJ6PBUvj.js +0 -4
- package/components/p-cyNmxje6.js +0 -4
- package/components/p-k_E4tX5Z.js +0 -4
- package/components/p-oD4kcBRX.js +0 -4
- package/components/p-scxfI1Dd.js +0 -4
- package/components/p-yzCsOZE2.js +0 -4
- package/dist/cjs/config-xninhj0J.js +0 -201
- package/dist/cjs/dir-Cn0z1rJH.js +0 -20
- package/dist/cjs/input.utils-DetjmtH2.js +0 -150
- package/dist/cjs/notch-controller-18PzRGXd.js +0 -155
- package/dist/collection/components/picker-legacy/animations/ios.enter.js +0 -27
- package/dist/collection/components/picker-legacy/animations/ios.leave.js +0 -23
- package/dist/collection/components/picker-legacy/picker-interface.js +0 -1
- package/dist/collection/components/picker-legacy/picker.ios.css +0 -300
- package/dist/collection/components/picker-legacy/picker.js +0 -890
- package/dist/collection/components/picker-legacy/picker.md.css +0 -287
- package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -231
- package/dist/collection/components/picker-legacy-column/picker-column.js +0 -422
- package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -222
- package/dist/collection/components/picker-legacy-column/test/test.utils.js +0 -43
- package/dist/esm/config-DQCONYYp.js +0 -195
- package/dist/esm/dir-C53feagD.js +0 -18
- package/dist/esm/input.utils-Y6NgW8bw.js +0 -147
- package/dist/esm/notch-controller-DKDjU_O7.js +0 -153
- package/dist/ionic/p-01f81ea5.entry.js +0 -4
- package/dist/ionic/p-06c232a4.entry.js +0 -4
- package/dist/ionic/p-0dc33652.entry.js +0 -4
- package/dist/ionic/p-10e833ef.entry.js +0 -4
- package/dist/ionic/p-20b1a044.entry.js +0 -4
- package/dist/ionic/p-21eb76d5.entry.js +0 -4
- package/dist/ionic/p-2394a9a6.entry.js +0 -4
- package/dist/ionic/p-27d30585.entry.js +0 -4
- package/dist/ionic/p-2a05aa64.entry.js +0 -4
- package/dist/ionic/p-2b204c59.entry.js +0 -4
- package/dist/ionic/p-2fa58e80.entry.js +0 -4
- package/dist/ionic/p-3353c229.entry.js +0 -4
- package/dist/ionic/p-33704f20.entry.js +0 -4
- package/dist/ionic/p-34586ead.entry.js +0 -4
- package/dist/ionic/p-390ca786.entry.js +0 -4
- package/dist/ionic/p-3ae5f277.entry.js +0 -4
- package/dist/ionic/p-4654ae1c.entry.js +0 -4
- package/dist/ionic/p-4745f534.entry.js +0 -4
- package/dist/ionic/p-4858af1f.entry.js +0 -4
- package/dist/ionic/p-4ac4f3d6.entry.js +0 -4
- package/dist/ionic/p-4baa5b82.entry.js +0 -4
- package/dist/ionic/p-4e92a11f.entry.js +0 -4
- package/dist/ionic/p-5018dfc8.entry.js +0 -4
- package/dist/ionic/p-50e1194a.entry.js +0 -4
- package/dist/ionic/p-5d1da0a2.entry.js +0 -4
- package/dist/ionic/p-5eb8e86d.entry.js +0 -4
- package/dist/ionic/p-65ebdf1b.entry.js +0 -4
- package/dist/ionic/p-75dc25ba.entry.js +0 -4
- package/dist/ionic/p-7c319341.entry.js +0 -4
- package/dist/ionic/p-829367ed.entry.js +0 -4
- package/dist/ionic/p-84d5ce05.entry.js +0 -4
- package/dist/ionic/p-874b4bd8.entry.js +0 -4
- package/dist/ionic/p-8eb8ee76.entry.js +0 -4
- package/dist/ionic/p-8fce95d5.entry.js +0 -4
- package/dist/ionic/p-9eeaBrnk.js +0 -4
- package/dist/ionic/p-9f1103ce.entry.js +0 -4
- package/dist/ionic/p-9f9db3a2.entry.js +0 -4
- package/dist/ionic/p-BGqMS-oh.js +0 -4
- package/dist/ionic/p-BTEOs1at.js +0 -4
- package/dist/ionic/p-BUFIpxKM.js +0 -4
- package/dist/ionic/p-C0eMdTCW.js +0 -4
- package/dist/ionic/p-C53feagD.js +0 -4
- package/dist/ionic/p-CFlfIb2g.js +0 -4
- package/dist/ionic/p-CKvCXMs9.js +0 -4
- package/dist/ionic/p-Cl0B-RWe.js +0 -4
- package/dist/ionic/p-CtWGkNnJ.js +0 -4
- package/dist/ionic/p-CwdymDLH.js +0 -4
- package/dist/ionic/p-Cx3IXROA.js +0 -4
- package/dist/ionic/p-D-3ycHmd.js +0 -4
- package/dist/ionic/p-D13Eaw-8.js +0 -4
- package/dist/ionic/p-DC3RagnA.js +0 -4
- package/dist/ionic/p-DIuEbVLu.js +0 -4
- package/dist/ionic/p-DSG2s2Eb.js +0 -4
- package/dist/ionic/p-Dfbt-q2k.js +0 -4
- package/dist/ionic/p-DiVJyqlX.js +0 -4
- package/dist/ionic/p-DoJvtrbw.js +0 -4
- package/dist/ionic/p-DqN5EA2O.js +0 -4
- package/dist/ionic/p-DzWaWHGc.js +0 -4
- package/dist/ionic/p-Nqf6uvGh.js +0 -4
- package/dist/ionic/p-SNAkTDfm.js +0 -4
- package/dist/ionic/p-VAemlbDS.js +0 -4
- package/dist/ionic/p-Wk5HzclC.js +0 -4
- package/dist/ionic/p-a3bdcae6.entry.js +0 -4
- package/dist/ionic/p-aaeedb6b.entry.js +0 -4
- package/dist/ionic/p-bfc9bb0f.entry.js +0 -4
- package/dist/ionic/p-c0fb8edd.entry.js +0 -4
- package/dist/ionic/p-c38b648e.entry.js +0 -4
- package/dist/ionic/p-c4d8641b.entry.js +0 -4
- package/dist/ionic/p-ca2ab74d.entry.js +0 -4
- package/dist/ionic/p-d889ff6d.entry.js +0 -4
- package/dist/ionic/p-e0be05c5.entry.js +0 -4
- package/dist/ionic/p-ef4c3bee.entry.js +0 -4
- package/dist/ionic/p-fd7eebc4.entry.js +0 -4
- package/dist/ionic/p-mjKAFv89.js +0 -4
- package/dist/ionic/p-tcQvqkiX.js +0 -5
- package/dist/ionic/p-viFHDgRs.js +0 -4
- package/dist/ionic/p-xWb6fgfq.js +0 -4
- package/dist/types/components/picker-legacy/animations/ios.enter.d.ts +0 -5
- package/dist/types/components/picker-legacy/animations/ios.leave.d.ts +0 -5
- package/dist/types/components/picker-legacy/picker-interface.d.ts +0 -52
- package/dist/types/components/picker-legacy/picker.d.ts +0 -158
- package/dist/types/components/picker-legacy-column/picker-column.d.ts +0 -46
- package/dist/types/components/picker-legacy-column/test/test.utils.d.ts +0 -9
- /package/components/{p-CO7fmmxt.js → p-LpMHEu3v.js} +0 -0
|
@@ -75,7 +75,6 @@ export class InputOTP {
|
|
|
75
75
|
* Emits the `ionFocus` event when the input group gains focus.
|
|
76
76
|
*/
|
|
77
77
|
this.onFocus = (index) => (event) => {
|
|
78
|
-
var _a;
|
|
79
78
|
const { inputRefs } = this;
|
|
80
79
|
// Only emit ionFocus and set the focusedValue when the
|
|
81
80
|
// component first gains focus
|
|
@@ -91,7 +90,7 @@ export class InputOTP {
|
|
|
91
90
|
const targetIndex = this.inputValues[index] ? index : this.getFirstEmptyIndex();
|
|
92
91
|
finalIndex = targetIndex === -1 ? this.length - 1 : targetIndex;
|
|
93
92
|
// Focus the target box
|
|
94
|
-
|
|
93
|
+
this.inputRefs[finalIndex]?.focus();
|
|
95
94
|
}
|
|
96
95
|
// Update tabIndexes to match the focused box
|
|
97
96
|
inputRefs.forEach((input, i) => {
|
|
@@ -203,7 +202,6 @@ export class InputOTP {
|
|
|
203
202
|
* 5. Single character replacement
|
|
204
203
|
*/
|
|
205
204
|
this.onInput = (index) => (event) => {
|
|
206
|
-
var _a, _b;
|
|
207
205
|
const { disabled, length, readonly, validKeyPattern } = this;
|
|
208
206
|
const input = event.target;
|
|
209
207
|
const value = input.value;
|
|
@@ -242,9 +240,8 @@ export class InputOTP {
|
|
|
242
240
|
// are filled after a small delay to ensure the input boxes have been
|
|
243
241
|
// updated before moving the focus
|
|
244
242
|
setTimeout(() => {
|
|
245
|
-
var _a;
|
|
246
243
|
const nextIndex = validChars.length < length ? validChars.length : length - 1;
|
|
247
|
-
|
|
244
|
+
this.inputRefs[nextIndex]?.focus();
|
|
248
245
|
}, 20);
|
|
249
246
|
this.previousInputValues = [...this.inputValues];
|
|
250
247
|
return;
|
|
@@ -306,9 +303,9 @@ export class InputOTP {
|
|
|
306
303
|
// in an input box with the cursor at the beginning of the value of "6",
|
|
307
304
|
// the value will be "26", but we want to grab the "2" as the last character
|
|
308
305
|
// typed.
|
|
309
|
-
const cursorPos =
|
|
306
|
+
const cursorPos = input.selectionStart ?? value.length;
|
|
310
307
|
const newCharIndex = cursorPos - 1;
|
|
311
|
-
const newChar =
|
|
308
|
+
const newChar = value[newCharIndex] ?? value[0];
|
|
312
309
|
// Check if the new character is valid before updating the value
|
|
313
310
|
if (!validKeyPattern.test(newChar)) {
|
|
314
311
|
input.value = this.inputValues[index] || '';
|
|
@@ -328,13 +325,12 @@ export class InputOTP {
|
|
|
328
325
|
* the next empty input after pasting.
|
|
329
326
|
*/
|
|
330
327
|
this.onPaste = (event) => {
|
|
331
|
-
var _a, _b;
|
|
332
328
|
const { disabled, inputRefs, length, readonly, validKeyPattern } = this;
|
|
333
329
|
event.preventDefault();
|
|
334
330
|
if (disabled || readonly) {
|
|
335
331
|
return;
|
|
336
332
|
}
|
|
337
|
-
const pastedText =
|
|
333
|
+
const pastedText = event.clipboardData?.getData('text');
|
|
338
334
|
// If there is no pasted text, still emit the input change event
|
|
339
335
|
// because this is how the native input element behaves
|
|
340
336
|
// but return early because there is nothing to paste.
|
|
@@ -359,7 +355,7 @@ export class InputOTP {
|
|
|
359
355
|
// Focus the next empty input after pasting
|
|
360
356
|
// If all boxes are filled, focus the last input
|
|
361
357
|
const nextEmptyIndex = validChars.length < length ? validChars.length : length - 1;
|
|
362
|
-
|
|
358
|
+
inputRefs[nextEmptyIndex]?.focus();
|
|
363
359
|
};
|
|
364
360
|
}
|
|
365
361
|
/**
|
|
@@ -369,14 +365,13 @@ export class InputOTP {
|
|
|
369
365
|
* Otherwise, the first empty input box or the last input if all are filled will be focused.
|
|
370
366
|
*/
|
|
371
367
|
async setFocus(index) {
|
|
372
|
-
var _a, _b;
|
|
373
368
|
if (typeof index === 'number') {
|
|
374
369
|
const validIndex = Math.max(0, Math.min(index, this.length - 1));
|
|
375
|
-
|
|
370
|
+
this.inputRefs[validIndex]?.focus();
|
|
376
371
|
}
|
|
377
372
|
else {
|
|
378
373
|
const tabbableIndex = this.getTabbableIndex();
|
|
379
|
-
|
|
374
|
+
this.inputRefs[tabbableIndex]?.focus();
|
|
380
375
|
}
|
|
381
376
|
}
|
|
382
377
|
valueChanged() {
|
|
@@ -540,20 +535,18 @@ export class InputOTP {
|
|
|
540
535
|
* Focuses the next input box.
|
|
541
536
|
*/
|
|
542
537
|
focusNext(currentIndex) {
|
|
543
|
-
var _a;
|
|
544
538
|
const { inputRefs, length } = this;
|
|
545
539
|
if (currentIndex < length - 1) {
|
|
546
|
-
|
|
540
|
+
inputRefs[currentIndex + 1]?.focus();
|
|
547
541
|
}
|
|
548
542
|
}
|
|
549
543
|
/**
|
|
550
544
|
* Focuses the previous input box.
|
|
551
545
|
*/
|
|
552
546
|
focusPrevious(currentIndex) {
|
|
553
|
-
var _a;
|
|
554
547
|
const { inputRefs } = this;
|
|
555
548
|
if (currentIndex > 0) {
|
|
556
|
-
|
|
549
|
+
inputRefs[currentIndex - 1]?.focus();
|
|
557
550
|
}
|
|
558
551
|
}
|
|
559
552
|
/**
|
|
@@ -562,12 +555,11 @@ export class InputOTP {
|
|
|
562
555
|
* Returns -1 if all inputs are filled.
|
|
563
556
|
*/
|
|
564
557
|
getFirstEmptyIndex() {
|
|
565
|
-
var _a;
|
|
566
558
|
const { inputValues, length } = this;
|
|
567
559
|
// Create an array of the same length as the input OTP
|
|
568
560
|
// and fill it with the input values
|
|
569
561
|
const values = Array.from({ length }, (_, i) => inputValues[i] || '');
|
|
570
|
-
return
|
|
562
|
+
return values.findIndex((value) => !value || value === '') ?? -1;
|
|
571
563
|
}
|
|
572
564
|
/**
|
|
573
565
|
* Returns the index of the input that should be tabbed to.
|
|
@@ -613,14 +605,13 @@ export class InputOTP {
|
|
|
613
605
|
return this.parsedSeparators.includes(index + 1) && index < length - 1;
|
|
614
606
|
}
|
|
615
607
|
render() {
|
|
616
|
-
var _a, _b;
|
|
617
608
|
const { autocapitalize, color, disabled, el, fill, hasFocus, inheritedAttributes, inputId, inputRefs, inputValues, length, readonly, shape, size, } = this;
|
|
618
609
|
const mode = getIonMode(this);
|
|
619
610
|
const inputmode = this.getInputmode();
|
|
620
611
|
const tabbableIndex = this.getTabbableIndex();
|
|
621
612
|
const pattern = this.getPattern();
|
|
622
|
-
const hasDescription =
|
|
623
|
-
return (h(Host, { key: '
|
|
613
|
+
const hasDescription = el.querySelector('.input-otp-description')?.textContent?.trim() !== '';
|
|
614
|
+
return (h(Host, { key: 'bd37661e13cde21feff30c663e6813ce3fff0d9a', class: createColorClasses(color, {
|
|
624
615
|
[mode]: true,
|
|
625
616
|
'has-focus': hasFocus,
|
|
626
617
|
[`input-otp-size-${size}`]: true,
|
|
@@ -628,10 +619,10 @@ export class InputOTP {
|
|
|
628
619
|
[`input-otp-fill-${fill}`]: true,
|
|
629
620
|
'input-otp-disabled': disabled,
|
|
630
621
|
'input-otp-readonly': readonly,
|
|
631
|
-
}) }, h("div",
|
|
622
|
+
}) }, h("div", { key: '5e206f870024f1ecfebda999ff31e6e815774deb', role: "group", "aria-label": "One-time password input", class: "input-otp-group", ...inheritedAttributes }, Array.from({ length }).map((_, index) => (h(Fragment, null, h("div", { class: "native-wrapper" }, h("input", { class: "native-input", id: `${inputId}-${index}`, "aria-label": `Input ${index + 1} of ${length}`, type: "text", autoCapitalize: autocapitalize, inputmode: inputmode, pattern: pattern, disabled: disabled, readOnly: readonly, tabIndex: index === tabbableIndex ? 0 : -1, value: inputValues[index] || '', autocomplete: "one-time-code", ref: (el) => (inputRefs[index] = el), onInput: this.onInput(index), onBlur: this.onBlur, onFocus: this.onFocus(index), onKeyDown: this.onKeyDown(index), onPaste: this.onPaste })), this.showSeparator(index) && h("div", { class: "input-otp-separator" }))))), h("div", { key: 'c268f838ddab2c8d6a612a11c7d38e6ca076436d', class: {
|
|
632
623
|
'input-otp-description': true,
|
|
633
624
|
'input-otp-description-hidden': !hasDescription,
|
|
634
|
-
} }, h("slot", { key: '
|
|
625
|
+
} }, h("slot", { key: 'c0736359b26f609b795e399fc1ad9b540632af18' }))));
|
|
635
626
|
}
|
|
636
627
|
static get is() { return "ion-input-otp"; }
|
|
637
628
|
static get encapsulation() { return "scoped"; }
|
|
@@ -54,22 +54,21 @@ export class InputPasswordToggle {
|
|
|
54
54
|
this.inputElRef = null;
|
|
55
55
|
}
|
|
56
56
|
render() {
|
|
57
|
-
var _a, _b;
|
|
58
57
|
const { color, type } = this;
|
|
59
58
|
const mode = getIonMode(this);
|
|
60
|
-
const showPasswordIcon =
|
|
61
|
-
const hidePasswordIcon =
|
|
59
|
+
const showPasswordIcon = this.showIcon ?? eye;
|
|
60
|
+
const hidePasswordIcon = this.hideIcon ?? eyeOff;
|
|
62
61
|
const isPasswordVisible = type === 'text';
|
|
63
|
-
return (h(Host, { key: '
|
|
62
|
+
return (h(Host, { key: '15a29e51abc236cc21943225ed377f5edca7d103', class: createColorClasses(color, {
|
|
64
63
|
[mode]: true,
|
|
65
|
-
}) }, h("ion-button", { key: '
|
|
64
|
+
}) }, h("ion-button", { key: 'cc9c290e809db66c14aaf63eb496ccf94d3f6414', mode: mode, color: color, fill: "clear", shape: "round", "aria-label": isPasswordVisible ? 'Hide password' : 'Show password', "aria-pressed": isPasswordVisible ? 'true' : 'false', type: "button", onPointerDown: (ev) => {
|
|
66
65
|
/**
|
|
67
66
|
* This prevents mobile browsers from
|
|
68
67
|
* blurring the input when the password toggle
|
|
69
68
|
* button is activated.
|
|
70
69
|
*/
|
|
71
70
|
ev.preventDefault();
|
|
72
|
-
}, onClick: this.togglePasswordVisibility }, h("ion-icon", { key: '
|
|
71
|
+
}, onClick: this.togglePasswordVisibility }, h("ion-icon", { key: '8d1f5143bedabcff2a8792f35ef07fdac1236fd5', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? hidePasswordIcon : showPasswordIcon }))));
|
|
73
72
|
}
|
|
74
73
|
static get is() { return "ion-input-password-toggle"; }
|
|
75
74
|
static get encapsulation() { return "shadow"; }
|
|
@@ -170,13 +170,12 @@ export class Item {
|
|
|
170
170
|
* in Android WebView. Worth revisiting when FW-6106 closes.
|
|
171
171
|
*/
|
|
172
172
|
watchForIndicatorControls() {
|
|
173
|
-
var _a;
|
|
174
173
|
if (!Build.isBrowser || typeof MutationObserver === 'undefined') {
|
|
175
174
|
return;
|
|
176
175
|
}
|
|
177
176
|
// `Node.moveBefore` relocates the item without either callback firing, so
|
|
178
177
|
// never leave a previous observer behind
|
|
179
|
-
|
|
178
|
+
this.indicatorControlObserver?.disconnect();
|
|
180
179
|
this.indicatorControlObserver = new MutationObserver((records) => {
|
|
181
180
|
// The subtree observer also fires for text and hidden input churn, so only
|
|
182
181
|
// re-read the DOM when a control was added or removed
|
|
@@ -307,20 +306,24 @@ export class Item {
|
|
|
307
306
|
* multi-input item, and in a clickable item, which is a second tab stop.
|
|
308
307
|
*/
|
|
309
308
|
const slottedIndicatorNeedsRoom = this.hasSlottedIndicatorControl && (multipleInputs || this.isClickable());
|
|
310
|
-
return (h(Host, { key: '0dc161ad7ac2fdedc5005015fceb34ed176010a6', "aria-disabled": ariaDisabled, class:
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
309
|
+
return (h(Host, { key: '0dc161ad7ac2fdedc5005015fceb34ed176010a6', "aria-disabled": ariaDisabled, class: {
|
|
310
|
+
...childStyles,
|
|
311
|
+
...labelColorStyles,
|
|
312
|
+
...createColorClasses(this.color, {
|
|
313
|
+
item: true,
|
|
314
|
+
[mode]: true,
|
|
315
|
+
'item-lines-default': lines === undefined,
|
|
316
|
+
[`item-lines-${lines}`]: lines !== undefined,
|
|
317
|
+
'item-control-needs-pointer-cursor': firstInteractiveNeedsPointerCursor,
|
|
318
|
+
'item-disabled': disabled,
|
|
319
|
+
'in-list': inList,
|
|
320
|
+
'item-multiple-inputs': this.multipleInputs,
|
|
321
|
+
'item-focus-indicator-room': slottedIndicatorNeedsRoom,
|
|
322
|
+
'ion-activatable': canActivate,
|
|
323
|
+
'ion-focusable': this.focusable,
|
|
324
|
+
'item-rtl': document.dir === 'rtl',
|
|
325
|
+
}),
|
|
326
|
+
}, role: inList ? 'listitem' : null }, h(TagType, { key: 'd42583cf62133b2553de2e7a5357168640bb1834', ...attrs, ...inheritedAriaAttributes, class: "item-native", part: "native", disabled: disabled, ...clickFn }, h("slot", { key: 'bd805ce49946cd52280d1c4b370104ee2472f1e2', name: "start", onSlotchange: this.updateInteractivityOnSlotChange }), h("div", { key: '0de589f9c5c13c31b6c8838566a7ad6f78f81028', class: "item-inner", part: "inner" }, h("div", { key: 'faaf6a39e072fb352753c645736ab1f47c2d7d25', class: "input-wrapper", part: "container" }, h("slot", { key: '70a34c31de29a0786a14b4a7d3156ba8d4d92eb4', onSlotchange: this.updateInteractivityOnSlotChange })), h("slot", { key: 'c8e764b62c5c30f67750896741ca266b741d5999', name: "end", onSlotchange: this.updateInteractivityOnSlotChange }), showDetail && (h("ion-icon", { key: 'af006856d8c4ed69174534261344215957cc751a', icon: detailIcon, lazy: false, class: "item-detail-icon", part: "detail-icon", "aria-hidden": "true", "flip-rtl": detailIcon === chevronForward }))), canActivate && mode === 'md' && h("ion-ripple-effect", { key: 'e5e151bafedd38feb8f71a387a0059aa1e9e90de' }))));
|
|
324
327
|
}
|
|
325
328
|
static get is() { return "ion-item"; }
|
|
326
329
|
static get encapsulation() { return "shadow"; }
|
|
@@ -27,11 +27,11 @@ export class ItemDivider {
|
|
|
27
27
|
}
|
|
28
28
|
render() {
|
|
29
29
|
const mode = getIonMode(this);
|
|
30
|
-
return (h(Host, { key: '
|
|
30
|
+
return (h(Host, { key: 'b191727cc26c600287fd856e49216bf1ae1d5aad', class: createColorClasses(this.color, {
|
|
31
31
|
[mode]: true,
|
|
32
32
|
'item-divider-sticky': this.sticky,
|
|
33
33
|
item: true,
|
|
34
|
-
}) }, h("slot", { key: '
|
|
34
|
+
}) }, h("slot", { key: 'a8e2eb48ca858b64da8ad018fa8d1667030b7143', name: "start" }), h("div", { key: '3219e0b76ac4a96db50a67f1f2794a235111c613', class: "item-divider-inner", part: "inner" }, h("div", { key: '31a64775153cd8704458e0e2a4a512096585deb4', class: "item-divider-wrapper", part: "container" }, h("slot", { key: 'd46dfb578028790eb6ccaac5e6009a5d96aa831a' })), h("slot", { key: 'a5fc7ac27e418ea82d9dcc913a8dae7e35493760', name: "end" }))));
|
|
35
35
|
}
|
|
36
36
|
static get is() { return "ion-item-divider"; }
|
|
37
37
|
static get encapsulation() { return "shadow"; }
|
|
@@ -6,7 +6,7 @@ import { getIonMode } from "../../global/ionic-global";
|
|
|
6
6
|
export class ItemGroup {
|
|
7
7
|
render() {
|
|
8
8
|
const mode = getIonMode(this);
|
|
9
|
-
return (h(Host, { key: '
|
|
9
|
+
return (h(Host, { key: 'd24ee9c70a99d11b7d95dfb4a8066670bdfcbc1d', role: "group", class: {
|
|
10
10
|
[mode]: true,
|
|
11
11
|
// Used internally for styling
|
|
12
12
|
[`item-group-${mode}`]: true,
|
|
@@ -50,12 +50,12 @@ export class ItemOption {
|
|
|
50
50
|
href: this.href,
|
|
51
51
|
target: this.target,
|
|
52
52
|
};
|
|
53
|
-
return (h(Host, { key: '
|
|
53
|
+
return (h(Host, { key: 'a10d36e60d61865141c57c03a114e4845b400a55', onClick: this.onClick, class: createColorClasses(this.color, {
|
|
54
54
|
[mode]: true,
|
|
55
55
|
'item-option-disabled': disabled,
|
|
56
56
|
'item-option-expandable': expandable,
|
|
57
57
|
'ion-activatable': true,
|
|
58
|
-
}) }, h(TagType,
|
|
58
|
+
}) }, h(TagType, { key: '5cc49ef73318213f6202d1d0f460f629ea65f17f', ...attrs, class: "button-native", part: "native", disabled: disabled }, h("span", { key: '0643b16660b4ca00b0f3b4dbe2739e9ce076abea', class: "button-inner", part: "inner" }, h("slot", { key: '8778d6d09aa9e0db278ce00c5456a1acfe82c15f', name: "top" }), h("div", { key: '4fc849494c8cb2380015161e096b5c61cf517d90', class: "horizontal-wrapper", part: "container" }, h("slot", { key: '9d0c0a5a63d8ec636df9c85d48bbdb39fb63af5e', name: "start" }), h("slot", { key: 'a40561497c7e7d73173edd24ed335230e6eebb2b', name: "icon-only" }), h("slot", { key: 'b94f2a4aa5bf4a1104497ced1920d6ee43d33659' }), h("slot", { key: '91713dbb3e6a617c00f950857f2ed5e5ffceaa9a', name: "end" })), h("slot", { key: 'f5af33c3bfb50fc629a06e1120bba55da07b2afb', name: "bottom" })), mode === 'md' && h("ion-ripple-effect", { key: 'fc56e1644ef9c5b2e1e66683465a7fd09c05215c' }))));
|
|
59
59
|
}
|
|
60
60
|
static get is() { return "ion-item-option"; }
|
|
61
61
|
static get encapsulation() { return "shadow"; }
|
|
@@ -21,7 +21,7 @@ export class ItemOptions {
|
|
|
21
21
|
render() {
|
|
22
22
|
const mode = getIonMode(this);
|
|
23
23
|
const isEnd = isEndSide(this.side);
|
|
24
|
-
return (h(Host, { key: '
|
|
24
|
+
return (h(Host, { key: '6e60ff004d48bf7701711e518ec0b21264496ae8', class: {
|
|
25
25
|
[mode]: true,
|
|
26
26
|
// Used internally for styling
|
|
27
27
|
[`item-options-${mode}`]: true,
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Host, h } from "@stencil/core";
|
|
5
5
|
import { findClosestIonContent, disableContentScrollY, resetContentScrollY } from "../../utils/content/index";
|
|
6
|
-
import { isEndSide } from "../../utils/helpers";
|
|
6
|
+
import { componentOnReady, isEndSide } from "../../utils/helpers";
|
|
7
7
|
import { printIonWarning } from "../../utils/logging/index";
|
|
8
8
|
import { watchForOptions } from "../../utils/watch-options";
|
|
9
9
|
import { getIonMode } from "../../global/ionic-global";
|
|
@@ -96,7 +96,6 @@ export class ItemSliding {
|
|
|
96
96
|
* @param side The side of the options to open. If a side is not provided, it will open the first set of options it finds within the item.
|
|
97
97
|
*/
|
|
98
98
|
async open(side) {
|
|
99
|
-
var _a;
|
|
100
99
|
/**
|
|
101
100
|
* It is possible for the item to be added to the DOM
|
|
102
101
|
* after the item-sliding component was created. As a result,
|
|
@@ -105,7 +104,7 @@ export class ItemSliding {
|
|
|
105
104
|
* However, if the item is already defined then
|
|
106
105
|
* we do not query for it again.
|
|
107
106
|
*/
|
|
108
|
-
const item = (this.item =
|
|
107
|
+
const item = (this.item = this.item ?? this.el.querySelector('ion-item'));
|
|
109
108
|
if (item === null) {
|
|
110
109
|
return;
|
|
111
110
|
}
|
|
@@ -179,21 +178,18 @@ export class ItemSliding {
|
|
|
179
178
|
}
|
|
180
179
|
}
|
|
181
180
|
async updateOptions() {
|
|
182
|
-
|
|
183
|
-
|
|
181
|
+
const options = Array.from(this.el.querySelectorAll('ion-item-options'));
|
|
182
|
+
/**
|
|
183
|
+
* Frameworks that assign element props after inserting the element haven't set
|
|
184
|
+
* `side` while `connectedCallback` runs, so reading it any earlier reports every
|
|
185
|
+
* option as `end`.
|
|
186
|
+
*/
|
|
187
|
+
await Promise.all(options.map((option) => new Promise((resolve) => componentOnReady(option, resolve))));
|
|
184
188
|
let sides = 0;
|
|
185
189
|
// Reset left and right options in case they were removed
|
|
186
190
|
this.leftOptions = this.rightOptions = undefined;
|
|
187
|
-
for (
|
|
188
|
-
const
|
|
189
|
-
/**
|
|
190
|
-
* We cannot use the componentOnReady helper
|
|
191
|
-
* util here since we need to wait for all of these items
|
|
192
|
-
* to be ready before we set `this.sides` and `this.optsDirty`.
|
|
193
|
-
*/
|
|
194
|
-
// eslint-disable-next-line custom-rules/no-component-on-ready-method
|
|
195
|
-
const option = item.componentOnReady !== undefined ? await item.componentOnReady() : item;
|
|
196
|
-
const side = isEndSide((_a = option.side) !== null && _a !== void 0 ? _a : option.getAttribute('side')) ? 'end' : 'start';
|
|
191
|
+
for (const option of options) {
|
|
192
|
+
const side = isEndSide(option.side ?? option.getAttribute('side')) ? 'end' : 'start';
|
|
197
193
|
if (side === 'start') {
|
|
198
194
|
this.leftOptions = option;
|
|
199
195
|
sides |= 1 /* ItemSide.Start */;
|
|
@@ -393,7 +389,7 @@ export class ItemSliding {
|
|
|
393
389
|
}
|
|
394
390
|
render() {
|
|
395
391
|
const mode = getIonMode(this);
|
|
396
|
-
return (h(Host, { key: '
|
|
392
|
+
return (h(Host, { key: '2b00049c5ae2efaa3b81a28892543d733fa6a5d0', class: {
|
|
397
393
|
[mode]: true,
|
|
398
394
|
'item-sliding-active-slide': this.state !== 2 /* SlidingState.Disabled */,
|
|
399
395
|
'item-sliding-active-options-end': (this.state & 8 /* SlidingState.End */) !== 0,
|
|
@@ -58,13 +58,13 @@ export class Label {
|
|
|
58
58
|
render() {
|
|
59
59
|
const position = this.position;
|
|
60
60
|
const mode = getIonMode(this);
|
|
61
|
-
return (h(Host, { key: '
|
|
61
|
+
return (h(Host, { key: '461604c1887f322dc13d7df3d5cdbb7ee1361117', class: createColorClasses(this.color, {
|
|
62
62
|
[mode]: true,
|
|
63
63
|
'in-item-color': hostContext('ion-item.ion-color', this.el),
|
|
64
64
|
[`label-${position}`]: position !== undefined,
|
|
65
65
|
[`label-no-animate`]: this.noAnimate,
|
|
66
66
|
'label-rtl': document.dir === 'rtl',
|
|
67
|
-
}) }, h("slot", { key: '
|
|
67
|
+
}) }, h("slot", { key: 'a7005d0a217641278aa8e95144e8e4b9ae87a1c5' })));
|
|
68
68
|
}
|
|
69
69
|
static get is() { return "ion-label"; }
|
|
70
70
|
static get encapsulation() { return "scoped"; }
|
|
@@ -21,7 +21,7 @@ export class List {
|
|
|
21
21
|
*/
|
|
22
22
|
async closeSlidingItems() {
|
|
23
23
|
const item = this.el.querySelector('ion-item-sliding');
|
|
24
|
-
if (item
|
|
24
|
+
if (item?.closeOpened) {
|
|
25
25
|
return item.closeOpened();
|
|
26
26
|
}
|
|
27
27
|
return false;
|
|
@@ -29,7 +29,7 @@ export class List {
|
|
|
29
29
|
render() {
|
|
30
30
|
const mode = getIonMode(this);
|
|
31
31
|
const { lines, inset } = this;
|
|
32
|
-
return (h(Host, { key: '
|
|
32
|
+
return (h(Host, { key: 'b21e063d568b07331ea9443647b3faf33265256a', role: "list", class: {
|
|
33
33
|
[mode]: true,
|
|
34
34
|
// Used internally for styling
|
|
35
35
|
[`list-${mode}`]: true,
|
|
@@ -13,10 +13,10 @@ export class ListHeader {
|
|
|
13
13
|
render() {
|
|
14
14
|
const { lines } = this;
|
|
15
15
|
const mode = getIonMode(this);
|
|
16
|
-
return (h(Host, { key: '
|
|
16
|
+
return (h(Host, { key: '92ab17533e169b1a1c990285449e0546aac98021', class: createColorClasses(this.color, {
|
|
17
17
|
[mode]: true,
|
|
18
18
|
[`list-header-lines-${lines}`]: lines !== undefined,
|
|
19
|
-
}) }, h("div", { key: '
|
|
19
|
+
}) }, h("div", { key: '26639255577380a8e70b61f753aa9ed57590694f', class: "list-header-inner", part: "inner" }, h("slot", { key: 'f69055e7a7a47ae8dcbbe289e18b6630f0792714' }))));
|
|
20
20
|
}
|
|
21
21
|
static get is() { return "ion-list-header"; }
|
|
22
22
|
static get encapsulation() { return "shadow"; }
|
|
@@ -5,7 +5,7 @@ import { Host, h } from "@stencil/core";
|
|
|
5
5
|
import { ENABLE_HTML_CONTENT_DEFAULT } from "../../utils/config";
|
|
6
6
|
import { raf } from "../../utils/helpers";
|
|
7
7
|
import { createLockController } from "../../utils/lock-controller";
|
|
8
|
-
import { BACKDROP, dismiss, eventMethod, prepareOverlay, present,
|
|
8
|
+
import { BACKDROP, cleanupRootFocusTrapAccessibility, createDelegateController, createTriggerController, dismiss, eventMethod, prepareOverlay, present, restoreRootFocusTrapAccessibility, setOverlayId, } from "../../utils/overlays";
|
|
9
9
|
import { sanitizeDOMString } from "../../utils/sanitization/index";
|
|
10
10
|
import { getClassMap } from "../../utils/theme";
|
|
11
11
|
import { config } from "../../global/config";
|
|
@@ -82,14 +82,17 @@ export class Loading {
|
|
|
82
82
|
connectedCallback() {
|
|
83
83
|
prepareOverlay(this.el);
|
|
84
84
|
this.triggerChanged();
|
|
85
|
+
// Re-apply the root lock if moved without dismiss() being called
|
|
86
|
+
if (this.presented) {
|
|
87
|
+
restoreRootFocusTrapAccessibility(this.el);
|
|
88
|
+
}
|
|
85
89
|
}
|
|
86
90
|
componentWillLoad() {
|
|
87
|
-
var _a;
|
|
88
91
|
if (this.spinner === undefined) {
|
|
89
92
|
const mode = getIonMode(this);
|
|
90
93
|
this.spinner = config.get('loadingSpinner', config.get('spinner', mode === 'ios' ? 'lines' : 'crescent'));
|
|
91
94
|
}
|
|
92
|
-
if (!
|
|
95
|
+
if (!this.htmlAttributes?.id) {
|
|
93
96
|
setOverlayId(this.el);
|
|
94
97
|
}
|
|
95
98
|
}
|
|
@@ -114,6 +117,10 @@ export class Loading {
|
|
|
114
117
|
}
|
|
115
118
|
disconnectedCallback() {
|
|
116
119
|
this.triggerController.removeClickListener();
|
|
120
|
+
// Clean up aria-hidden if removed without dismiss() being called
|
|
121
|
+
if (this.presented) {
|
|
122
|
+
cleanupRootFocusTrapAccessibility();
|
|
123
|
+
}
|
|
117
124
|
}
|
|
118
125
|
/**
|
|
119
126
|
* Present the loading overlay after it has been created.
|
|
@@ -179,9 +186,14 @@ export class Loading {
|
|
|
179
186
|
* Otherwise, don't set aria-labelledby.
|
|
180
187
|
*/
|
|
181
188
|
const ariaLabelledBy = message !== undefined ? msgId : null;
|
|
182
|
-
return (h(Host,
|
|
189
|
+
return (h(Host, { key: 'b4430bc66aedeca19d5645667cba73c169c4bd76', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1", ...htmlAttributes, style: {
|
|
183
190
|
zIndex: `${40000 + this.overlayIndex}`,
|
|
184
|
-
}, onIonBackdropTap: this.onBackdropTap, class:
|
|
191
|
+
}, onIonBackdropTap: this.onBackdropTap, class: {
|
|
192
|
+
...getClassMap(this.cssClass),
|
|
193
|
+
[mode]: true,
|
|
194
|
+
'overlay-hidden': true,
|
|
195
|
+
'loading-translucent': this.translucent,
|
|
196
|
+
} }, h("ion-backdrop", { key: 'dec0df942ae778c99ebd4dbf08d6c2a0a992639d', visible: this.showBackdrop, tappable: this.backdropDismiss }), h("div", { key: '71b2d5fc259666225047fc901648ada1efcd5d4b', tabindex: "0", "aria-hidden": "true" }), h("div", { key: '1d83dc3b57ee70c9e8c0f006c6fa576bd96ecded', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (h("div", { key: 'd1cd127e044b8831e396b53122322c1db7e89904', class: "loading-spinner" }, h("ion-spinner", { key: '38c2580cf5659da612872f01801a5fbdc2c023ba', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), h("div", { key: '90e5e32ffe0df2c691f364149f43374e676bfaa3', tabindex: "0", "aria-hidden": "true" })));
|
|
185
197
|
}
|
|
186
198
|
static get is() { return "ion-loading"; }
|
|
187
199
|
static get encapsulation() { return "scoped"; }
|
|
@@ -103,7 +103,7 @@ export class Menu {
|
|
|
103
103
|
});
|
|
104
104
|
}
|
|
105
105
|
sideChanged() {
|
|
106
|
-
this.isEndSide = isEnd(this.side);
|
|
106
|
+
this.isEndSide = isEnd(this.side, this.el);
|
|
107
107
|
/**
|
|
108
108
|
* Menu direction animation is calculated based on the document direction.
|
|
109
109
|
* If the document direction changes, we need to create a new animation.
|
|
@@ -293,9 +293,8 @@ export class Menu {
|
|
|
293
293
|
* @param role The role of the element that is closing the menu.
|
|
294
294
|
*/
|
|
295
295
|
setOpen(shouldOpen, animated = true, role) {
|
|
296
|
-
var _a;
|
|
297
296
|
// Blur the active element to prevent it from being kept focused inside an element that will be set with aria-hidden="true"
|
|
298
|
-
|
|
297
|
+
document.activeElement?.blur();
|
|
299
298
|
return menuController._setOpen(this, shouldOpen, animated, role);
|
|
300
299
|
}
|
|
301
300
|
trapKeyboardFocus(ev, doc) {
|
|
@@ -362,7 +361,7 @@ export class Menu {
|
|
|
362
361
|
* Menu direction animation is calculated based on the document direction.
|
|
363
362
|
* If the document direction changes, we need to create a new animation.
|
|
364
363
|
*/
|
|
365
|
-
const isEndSide = isEnd(this.side);
|
|
364
|
+
const isEndSide = isEnd(this.side, this.el);
|
|
366
365
|
if (width === this.width && this.animation !== undefined && isEndSide === this.isEndSide) {
|
|
367
366
|
return;
|
|
368
367
|
}
|
|
@@ -555,7 +554,6 @@ export class Menu {
|
|
|
555
554
|
}
|
|
556
555
|
}
|
|
557
556
|
afterAnimation(isOpen, role) {
|
|
558
|
-
var _a;
|
|
559
557
|
// keep opening/closing the menu disabled for a touch more yet
|
|
560
558
|
// only add listeners/css if it's enabled and isOpen
|
|
561
559
|
// and only remove listeners/css if it's not open
|
|
@@ -583,7 +581,7 @@ export class Menu {
|
|
|
583
581
|
* it isn't already focused. Use the host element instead of the
|
|
584
582
|
* first descendant to avoid the scroll position jumping around.
|
|
585
583
|
*/
|
|
586
|
-
const focusedMenu =
|
|
584
|
+
const focusedMenu = document.activeElement?.closest('ion-menu');
|
|
587
585
|
if (focusedMenu !== this.el) {
|
|
588
586
|
this.el.focus();
|
|
589
587
|
}
|
|
@@ -658,14 +656,14 @@ export class Menu {
|
|
|
658
656
|
* the ionBackButton listener in the menu controller
|
|
659
657
|
* will handle closing the menu when Escape is pressed.
|
|
660
658
|
*/
|
|
661
|
-
return (h(Host, { key: '
|
|
659
|
+
return (h(Host, { key: '1208ba437fa58680325408d3d4c8580950da1d68', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
|
|
662
660
|
[mode]: true,
|
|
663
661
|
[`menu-type-${type}`]: true,
|
|
664
662
|
'menu-enabled': !disabled,
|
|
665
663
|
[`menu-side-${side}`]: true,
|
|
666
664
|
'menu-pane-visible': isPaneVisible,
|
|
667
665
|
'split-pane-side': hostContext('ion-split-pane', el),
|
|
668
|
-
} }, h("div", { key: '
|
|
666
|
+
} }, h("div", { key: 'c0ddc957b7a7956b41901d77ae02d91e73071c55', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, h("slot", { key: '6e44c56116431a024f114ab85ded1b822c942fac' })), h("ion-backdrop", { key: '5f4bbcf84444d96ec6b02bf567e1aaf95f59078d', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
|
|
669
667
|
}
|
|
670
668
|
static get is() { return "ion-menu"; }
|
|
671
669
|
static get encapsulation() { return "shadow"; }
|
|
@@ -53,7 +53,7 @@ export class MenuButton {
|
|
|
53
53
|
type: this.type,
|
|
54
54
|
};
|
|
55
55
|
const ariaLabel = inheritedAttributes['aria-label'] || 'menu';
|
|
56
|
-
return (h(Host, { key: '
|
|
56
|
+
return (h(Host, { key: 'b8869377822b082c6c4d3f16135b50b733eabf65', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses(color, {
|
|
57
57
|
[mode]: true,
|
|
58
58
|
button: true, // ion-buttons target .button
|
|
59
59
|
'menu-button-hidden': hidden,
|
|
@@ -62,7 +62,7 @@ export class MenuButton {
|
|
|
62
62
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
63
63
|
'ion-activatable': true,
|
|
64
64
|
'ion-focusable': true,
|
|
65
|
-
}) }, h("button",
|
|
65
|
+
}) }, h("button", { key: '48fc0a7011414b60dd7d5136f247e937ae4bb8c8', ...attrs, disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }, h("span", { key: '8c712f28c5afd345e403a9afc525931112852708', class: "button-inner" }, h("slot", { key: 'dd872325e42baf435188478c8d1cfc416075089d' }, h("ion-icon", { key: 'a4f02bdb715b07792c17e12c7837873d70171f88', part: "icon", icon: menuIcon, mode: mode, lazy: false, "aria-hidden": "true" }))), mode === 'md' && h("ion-ripple-effect", { key: '564e2a8a804e14d1135502f7b17d8b7b9862e81b', type: "unbounded" }))));
|
|
66
66
|
}
|
|
67
67
|
static get is() { return "ion-menu-button"; }
|
|
68
68
|
static get encapsulation() { return "shadow"; }
|
|
@@ -31,10 +31,10 @@ export class MenuToggle {
|
|
|
31
31
|
render() {
|
|
32
32
|
const mode = getIonMode(this);
|
|
33
33
|
const hidden = this.autoHide && !this.visible;
|
|
34
|
-
return (h(Host, { key: '
|
|
34
|
+
return (h(Host, { key: '76d21ea6493b8161860c941e3754fef1e20395cc', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
|
|
35
35
|
[mode]: true,
|
|
36
36
|
'menu-toggle-hidden': hidden,
|
|
37
|
-
} }, h("slot", { key: '
|
|
37
|
+
} }, h("slot", { key: '9383610fd3105e1928a38788eb596e313e2b07f8' })));
|
|
38
38
|
}
|
|
39
39
|
static get is() { return "ion-menu-toggle"; }
|
|
40
40
|
static get encapsulation() { return "shadow"; }
|
|
@@ -26,7 +26,7 @@ export const iosEnterAnimation = (baseEl, opts) => {
|
|
|
26
26
|
wrapperAnimation.addElement(root.querySelectorAll('.modal-wrapper, .modal-shadow')).beforeStyles({ opacity: 1 });
|
|
27
27
|
// The content animation is only added if scrolling is enabled for
|
|
28
28
|
// all the breakpoints.
|
|
29
|
-
!expandToScroll &&
|
|
29
|
+
!expandToScroll && contentAnimation?.addElement(baseEl.querySelector('.ion-page'));
|
|
30
30
|
const baseAnimation = createAnimation('entering-base')
|
|
31
31
|
.addElement(baseEl)
|
|
32
32
|
.easing('cubic-bezier(0.32,0.72,0,1)')
|
|
@@ -28,7 +28,7 @@ export const mdEnterAnimation = (baseEl, opts) => {
|
|
|
28
28
|
wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
|
|
29
29
|
// The content animation is only added if scrolling is enabled for
|
|
30
30
|
// all the breakpoints.
|
|
31
|
-
!expandToScroll &&
|
|
31
|
+
!expandToScroll && contentAnimation?.addElement(baseEl.querySelector('.ion-page'));
|
|
32
32
|
const baseAnimation = createAnimation()
|
|
33
33
|
.addElement(baseEl)
|
|
34
34
|
.easing('cubic-bezier(0.36,0.66,0.04,1)')
|