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
package/dist/types/index.d.ts
CHANGED
|
@@ -14,5 +14,5 @@ export { IonicConfig, getMode, setupConfig } from './utils/config';
|
|
|
14
14
|
export { openURL } from './utils/theme';
|
|
15
15
|
export { LIFECYCLE_WILL_ENTER, LIFECYCLE_DID_ENTER, LIFECYCLE_WILL_LEAVE, LIFECYCLE_DID_LEAVE, LIFECYCLE_WILL_UNLOAD, } from './components/nav/constants';
|
|
16
16
|
export { menuController } from './utils/menu-controller';
|
|
17
|
-
export { alertController, actionSheetController, modalController, loadingController,
|
|
17
|
+
export { alertController, actionSheetController, modalController, loadingController, popoverController, toastController, } from './utils/overlays';
|
|
18
18
|
export { IonicSlides } from './components/slides/IonicSlides';
|
|
@@ -19,7 +19,6 @@ export { LoadingOptions } from './components/loading/loading-interface';
|
|
|
19
19
|
export { MenuCustomEvent, MenuI, MenuControllerI } from './components/menu/menu-interface';
|
|
20
20
|
export { ModalOptions, ModalCustomEvent, ModalDragEventDetail } from './components/modal/modal-interface';
|
|
21
21
|
export { NavDirection, NavCustomEvent } from './components/nav/nav-interface';
|
|
22
|
-
export { PickerOptions, PickerColumnOption } from './components/picker-legacy/picker-interface';
|
|
23
22
|
export { PopoverOptions } from './components/popover/popover-interface';
|
|
24
23
|
export { RadioGroupCustomEvent } from './components/radio-group/radio-group-interface';
|
|
25
24
|
export { RangeCustomEvent, PinFormatter } from './components/range/range-interface';
|
|
@@ -1008,6 +1008,7 @@ export declare namespace JSXBase {
|
|
|
1008
1008
|
onClose?: (event: Event) => void;
|
|
1009
1009
|
open?: boolean;
|
|
1010
1010
|
returnValue?: string;
|
|
1011
|
+
closedby?: 'any' | 'closerequest' | 'none';
|
|
1011
1012
|
}
|
|
1012
1013
|
interface EmbedHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
1013
1014
|
height?: number | string;
|
|
@@ -1045,6 +1046,8 @@ export declare namespace JSXBase {
|
|
|
1045
1046
|
allowtransparency?: string | boolean;
|
|
1046
1047
|
frameBorder?: number | string;
|
|
1047
1048
|
frameborder?: number | string;
|
|
1049
|
+
fetchPriority?: 'high' | 'low' | 'auto';
|
|
1050
|
+
fetchpriority?: 'high' | 'low' | 'auto';
|
|
1048
1051
|
importance?: 'low' | 'auto' | 'high';
|
|
1049
1052
|
height?: number | string;
|
|
1050
1053
|
loading?: 'lazy' | 'auto' | 'eager';
|
|
@@ -1067,6 +1070,8 @@ export declare namespace JSXBase {
|
|
|
1067
1070
|
crossOrigin?: string;
|
|
1068
1071
|
crossorigin?: string;
|
|
1069
1072
|
decoding?: 'async' | 'auto' | 'sync';
|
|
1073
|
+
fetchPriority?: 'high' | 'low' | 'auto';
|
|
1074
|
+
fetchpriority?: 'high' | 'low' | 'auto';
|
|
1070
1075
|
importance?: 'low' | 'auto' | 'high';
|
|
1071
1076
|
height?: number | string;
|
|
1072
1077
|
loading?: 'lazy' | 'auto' | 'eager';
|
|
@@ -1166,6 +1171,8 @@ export declare namespace JSXBase {
|
|
|
1166
1171
|
}
|
|
1167
1172
|
interface LinkHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
1168
1173
|
as?: string;
|
|
1174
|
+
fetchPriority?: 'high' | 'low' | 'auto';
|
|
1175
|
+
fetchpriority?: 'high' | 'low' | 'auto';
|
|
1169
1176
|
href?: string;
|
|
1170
1177
|
hrefLang?: string;
|
|
1171
1178
|
hreflang?: string;
|
|
@@ -1289,6 +1296,8 @@ export declare namespace JSXBase {
|
|
|
1289
1296
|
crossOrigin?: string;
|
|
1290
1297
|
crossorigin?: string;
|
|
1291
1298
|
defer?: boolean;
|
|
1299
|
+
fetchPriority?: 'high' | 'low' | 'auto';
|
|
1300
|
+
fetchpriority?: 'high' | 'low' | 'auto';
|
|
1292
1301
|
importance?: 'low' | 'auto' | 'high';
|
|
1293
1302
|
integrity?: string;
|
|
1294
1303
|
nonce?: string;
|
|
@@ -1404,7 +1413,10 @@ export declare namespace JSXBase {
|
|
|
1404
1413
|
tabIndex?: number;
|
|
1405
1414
|
tabindex?: number | string;
|
|
1406
1415
|
title?: string;
|
|
1416
|
+
translate?: 'yes' | 'no' | (string & {});
|
|
1407
1417
|
popover?: string | null;
|
|
1418
|
+
focusgroup?: string;
|
|
1419
|
+
focusgroupstart?: boolean;
|
|
1408
1420
|
inputMode?: string;
|
|
1409
1421
|
inputmode?: string;
|
|
1410
1422
|
enterKeyHint?: string;
|
|
@@ -117,10 +117,6 @@ export interface IonicConfig {
|
|
|
117
117
|
* Provides a custom enter animation for all `ion-toast`, overriding the default "animation".
|
|
118
118
|
*/
|
|
119
119
|
toastEnter?: AnimationBuilder;
|
|
120
|
-
/**
|
|
121
|
-
* Provides a custom enter animation for all `ion-picker-legacy`, overriding the default "animation".
|
|
122
|
-
*/
|
|
123
|
-
pickerEnter?: AnimationBuilder;
|
|
124
120
|
/**
|
|
125
121
|
* Provides a custom leave animation for all `ion-action-sheet`, overriding the default "animation".
|
|
126
122
|
*/
|
|
@@ -145,10 +141,6 @@ export interface IonicConfig {
|
|
|
145
141
|
* Provides a custom leave animation for all `ion-toast`, overriding the default "animation".
|
|
146
142
|
*/
|
|
147
143
|
toastLeave?: AnimationBuilder;
|
|
148
|
-
/**
|
|
149
|
-
* Provides a custom leave animation for all `ion-picker-legacy`, overriding the default "animation".
|
|
150
|
-
*/
|
|
151
|
-
pickerLeave?: AnimationBuilder;
|
|
152
144
|
/**
|
|
153
145
|
* If `true`, Ionic will enable a basic DOM sanitizer on component properties that accept custom HTML.
|
|
154
146
|
*/
|
|
@@ -186,6 +178,7 @@ export interface IonicConfig {
|
|
|
186
178
|
* - `'OFF'`: No errors or warnings are logged.
|
|
187
179
|
* - `'ERROR'`: Logs only errors.
|
|
188
180
|
* - `'WARN'`: Logs errors and warnings.
|
|
181
|
+
* - `'DEBUG'`: Logs errors, warnings, and Ionic's internal diagnostics.
|
|
189
182
|
*/
|
|
190
183
|
logLevel?: LogLevel;
|
|
191
184
|
keyboardHeight?: number;
|
|
@@ -21,6 +21,18 @@ export declare const findIonContent: (el: Element) => HTMLElement | null;
|
|
|
21
21
|
* Queries the closest element matching the selector for IonContent.
|
|
22
22
|
*/
|
|
23
23
|
export declare const findClosestIonContent: (el: Element) => HTMLElement | null;
|
|
24
|
+
/**
|
|
25
|
+
* Queries the custom scroll host an `ion-refresher` scrolls with in the given
|
|
26
|
+
* `ion-content`. A refresher only pairs with the first host.
|
|
27
|
+
*/
|
|
28
|
+
export declare const findRefresherScrollHost: (ionContent: Element) => HTMLElement | null;
|
|
29
|
+
/**
|
|
30
|
+
* Queries the `ion-refresher` that scrolls with the given content element,
|
|
31
|
+
* which may be an `ion-content` or a custom scroll host. A refresher is a
|
|
32
|
+
* `slot="fixed"` child of `ion-content`, so it is a sibling of a scroll host
|
|
33
|
+
* rather than a descendant of it.
|
|
34
|
+
*/
|
|
35
|
+
export declare const findRefresherInContent: (contentEl: Element) => HTMLIonRefresherElement | null;
|
|
24
36
|
/**
|
|
25
37
|
* Scrolls to the top of the element. If an `ion-content` is found, it will scroll
|
|
26
38
|
* using the public API `scrollToTop` with a duration.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Applied to the host while the label is being repositioned. The
|
|
3
|
+
* component stylesheets style this class, so it must stay in sync with
|
|
4
|
+
* the `skip-label-transition` selector in those files. Renaming it here
|
|
5
|
+
* requires renaming it there too.
|
|
6
|
+
*/
|
|
7
|
+
export declare const SKIP_LABEL_TRANSITION_CLASS = "skip-label-transition";
|
|
8
|
+
/**
|
|
9
|
+
* Set on the host as an inline style. The component stylesheets declare
|
|
10
|
+
* this property and read it with `var()`, so it must stay in sync with
|
|
11
|
+
* the `--internal-start-container-adjustment` references in those files.
|
|
12
|
+
* Renaming it here requires renaming it there too.
|
|
13
|
+
*/
|
|
14
|
+
export declare const START_CONTAINER_ADJUSTMENT_VAR = "--internal-start-container-adjustment";
|
|
15
|
+
/**
|
|
16
|
+
* A utility to measure and update the start container width adjustment
|
|
17
|
+
* for form components (input, textarea, select) with `fill="outline"`.
|
|
18
|
+
* This adjustment compensates for the start container width when
|
|
19
|
+
* positioning floating/stacked labels within the outline border.
|
|
20
|
+
*
|
|
21
|
+
* Measurement is deferred with raf() to avoid forcing layout during
|
|
22
|
+
* component updates, and a ResizeObserver watches for dynamic width
|
|
23
|
+
* changes (e.g., when web fonts load or async content changes).
|
|
24
|
+
*
|
|
25
|
+
* @internal
|
|
26
|
+
* @param el - The host element (ion-input, ion-textarea, or ion-select).
|
|
27
|
+
* @param getStartContainer - A callback that returns the start container element.
|
|
28
|
+
* @param shouldApplyAdjustment - A callback that determines whether the adjustment should be applied.
|
|
29
|
+
*/
|
|
30
|
+
export declare const createStartContainerController: (el: HTMLElement, getStartContainer: () => HTMLElement | undefined, shouldApplyAdjustment: () => boolean) => StartContainerController;
|
|
31
|
+
export type StartContainerController = {
|
|
32
|
+
calculateStartContainerWidth: () => void;
|
|
33
|
+
destroy: () => void;
|
|
34
|
+
};
|
|
@@ -83,12 +83,15 @@ export declare const pointerCoord: (ev: any) => {
|
|
|
83
83
|
};
|
|
84
84
|
/**
|
|
85
85
|
* @hidden
|
|
86
|
-
* Given a side,
|
|
87
|
-
*
|
|
88
|
-
*
|
|
89
|
-
* @param
|
|
86
|
+
* Given a side, returns whether it resolves to the end side for the current
|
|
87
|
+
* direction. In RTL `start` is the end side, and in LTR `end` is.
|
|
88
|
+
*
|
|
89
|
+
* @param side The current side before being redefined based on the direction.
|
|
90
|
+
* @param hostEl The component's host element. The direction is resolved from
|
|
91
|
+
* it or its nearest ancestor that declares one. When omitted, the direction
|
|
92
|
+
* is resolved from the document.
|
|
90
93
|
*/
|
|
91
|
-
export declare const isEndSide: (side: Side) => boolean;
|
|
94
|
+
export declare const isEndSide: (side: Side, hostEl?: HTMLElement) => boolean;
|
|
92
95
|
export declare const deferEvent: (event: EventEmitter) => EventEmitter;
|
|
93
96
|
export declare const debounceEvent: (event: EventEmitter, wait: number) => EventEmitter;
|
|
94
97
|
export declare const debounce: (func: (...args: any[]) => void, wait?: number) => (...args: any[]) => any;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { Mode } from '../interface';
|
|
2
|
+
/**
|
|
3
|
+
* Returns the default `labelPlacement` for a radio or checkbox option
|
|
4
|
+
* rendered inside an overlay. Defaults follow each mode's established
|
|
5
|
+
* option-row layout:
|
|
6
|
+
* - `ios`: `"start"` for radio in `alert` and `popover`. The `modal`
|
|
7
|
+
* interface flips iOS radio back to `"end"`. Checkbox is always
|
|
8
|
+
* `"end"` on iOS.
|
|
9
|
+
* - everything else (e.g. `md`): `"end"`.
|
|
10
|
+
*
|
|
11
|
+
* `interfaceType` is optional; only `"modal"` changes the result, so
|
|
12
|
+
* callers that aren't a modal can omit it.
|
|
13
|
+
*
|
|
14
|
+
* Used by `select-popover` and `select-modal` as the fallback when an
|
|
15
|
+
* option doesn't explicitly set `labelPlacement`.
|
|
16
|
+
*/
|
|
17
|
+
export declare const getOverlayLabelPlacement: (mode: Mode, control: "radio" | "checkbox", interfaceType?: "alert" | "popover" | "modal") => "start" | "end";
|
|
18
|
+
/**
|
|
19
|
+
* Returns the default `justify` for a radio or checkbox option rendered
|
|
20
|
+
* inside an overlay. Defaults follow each mode's option-row layout:
|
|
21
|
+
* - `ios`: `"space-between"` for radio in `alert` and `popover`. The
|
|
22
|
+
* `modal` interface falls back to `"start"`. Checkbox is always `"start"`
|
|
23
|
+
* on iOS.
|
|
24
|
+
* - everything else (e.g. `md`): `"start"`.
|
|
25
|
+
*
|
|
26
|
+
* `interfaceType` is optional; only `"modal"` changes the result, so
|
|
27
|
+
* callers that aren't a modal can omit it.
|
|
28
|
+
*
|
|
29
|
+
* Used by `select-popover` and `select-modal` as the fallback when an
|
|
30
|
+
* option doesn't explicitly set `justify`.
|
|
31
|
+
*/
|
|
32
|
+
export declare const getOverlayLabelJustify: (mode: Mode, control: "radio" | "checkbox", interfaceType?: "alert" | "popover" | "modal") => "start" | "end" | "space-between";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ActionSheetOptions, AlertOptions, Animation, AnimationBuilder, FrameworkDelegate, HTMLIonOverlayElement, IonicConfig, LoadingOptions, ModalOptions, OverlayInterface,
|
|
1
|
+
import type { ActionSheetOptions, AlertOptions, Animation, AnimationBuilder, FrameworkDelegate, HTMLIonOverlayElement, IonicConfig, LoadingOptions, ModalOptions, OverlayInterface, PopoverOptions, ToastOptions } from '../interface';
|
|
2
2
|
export declare const activeAnimations: WeakMap<OverlayInterface, Animation[]>;
|
|
3
3
|
export declare const alertController: {
|
|
4
4
|
create(options: AlertOptions): Promise<HTMLIonAlertElement>;
|
|
@@ -20,14 +20,6 @@ export declare const modalController: {
|
|
|
20
20
|
dismiss(data?: any, role?: string, id?: string): Promise<boolean>;
|
|
21
21
|
getTop(): Promise<HTMLIonModalElement | undefined>;
|
|
22
22
|
};
|
|
23
|
-
/**
|
|
24
|
-
* @deprecated Use the inline ion-picker component instead.
|
|
25
|
-
*/
|
|
26
|
-
export declare const pickerController: {
|
|
27
|
-
create(options: PickerOptions): Promise<HTMLIonPickerLegacyElement>;
|
|
28
|
-
dismiss(data?: any, role?: string, id?: string): Promise<boolean>;
|
|
29
|
-
getTop(): Promise<HTMLIonPickerLegacyElement | undefined>;
|
|
30
|
-
};
|
|
31
23
|
export declare const popoverController: {
|
|
32
24
|
create(options: PopoverOptions<import("../interface").ComponentRef>): Promise<HTMLIonPopoverElement>;
|
|
33
25
|
dismiss(data?: any, role?: string, id?: string): Promise<boolean>;
|
|
@@ -86,6 +78,25 @@ export declare const getPresentedOverlay: (doc: Document, overlayTag?: string, i
|
|
|
86
78
|
* for main content.
|
|
87
79
|
*/
|
|
88
80
|
export declare const setRootAriaHidden: (hidden?: boolean) => void;
|
|
81
|
+
/**
|
|
82
|
+
* Cleans up root `aria-hidden` and `backdrop-no-scroll` when
|
|
83
|
+
* an overlay is removed from the DOM without going through
|
|
84
|
+
* the `dismiss()` flow (e.g., when a framework unmounts the
|
|
85
|
+
* overlay during a route change).
|
|
86
|
+
*
|
|
87
|
+
* Should be called from an overlay's `disconnectedCallback`
|
|
88
|
+
* when the overlay was still presented at the time of removal.
|
|
89
|
+
*/
|
|
90
|
+
export declare const cleanupRootFocusTrapAccessibility: () => void;
|
|
91
|
+
/**
|
|
92
|
+
* Re-applies the root lock that `cleanupRootFocusTrapAccessibility()` released.
|
|
93
|
+
* Call from `connectedCallback` when the overlay is still presented.
|
|
94
|
+
*
|
|
95
|
+
* A synchronous move keeps the overlay connected, so the lock survives. A
|
|
96
|
+
* detach with a re-insert in a later task releases it, which is the shape a
|
|
97
|
+
* framework produces when it takes a subtree out and puts it back.
|
|
98
|
+
*/
|
|
99
|
+
export declare const restoreRootFocusTrapAccessibility: (overlayEl: HTMLIonOverlayElement) => void;
|
|
89
100
|
export declare const present: <OverlayPresentOptions>(overlay: OverlayInterface, name: keyof IonicConfig, iosEnterAnimation: AnimationBuilder, mdEnterAnimation: AnimationBuilder, opts?: OverlayPresentOptions) => Promise<void>;
|
|
90
101
|
export declare const dismiss: <OverlayDismissOptions>(overlay: OverlayInterface, data: any | undefined, role: string | undefined, name: keyof IonicConfig, iosLeaveAnimation: AnimationBuilder, mdLeaveAnimation: AnimationBuilder, opts?: OverlayDismissOptions) => Promise<boolean>;
|
|
91
102
|
export declare const eventMethod: <T>(element: HTMLElement, eventName: string) => Promise<T>;
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Returns `true` if the
|
|
3
|
-
*
|
|
4
|
-
*
|
|
2
|
+
* Returns `true` if the direction resolves to `rtl` for the given element.
|
|
3
|
+
*
|
|
4
|
+
* The direction comes from the nearest ancestor that declares one, starting
|
|
5
|
+
* with `hostEl` itself, and falls back to the root document value. Setting
|
|
6
|
+
* `dir="auto"` or setting `dir` to an empty string are skipped rather than
|
|
7
|
+
* treated as `ltr`. When nothing declares a direction, including the document,
|
|
8
|
+
* the direction is `ltr`.
|
|
9
|
+
*
|
|
10
|
+
* @param hostEl the element to resolve the direction for.
|
|
5
11
|
*/
|
|
6
|
-
export declare const isRTL: (hostEl?:
|
|
12
|
+
export declare const isRTL: (hostEl?: Element | null) => boolean;
|
|
@@ -1,8 +1,64 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
2
|
+
* Sanitize an untrusted HTML string.
|
|
3
|
+
*
|
|
4
|
+
* Parses the string into a detached DOM, removes blocked tags, strips
|
|
5
|
+
* attributes outside the narrow `domStringAllowedAttributes` list (refer
|
|
6
|
+
* `sanitizeElement`), and scrubs script-scheme URLs. Returns the sanitized
|
|
7
|
+
* HTML string.
|
|
8
|
+
*
|
|
9
|
+
* Use this when you have an HTML string from an unknown source and need to
|
|
10
|
+
* render it via `innerHTML`. Use `sanitizeDOMTree` instead when you already
|
|
11
|
+
* have a DOM tree and want to sanitize it in place without a string round
|
|
12
|
+
* trip. The two apply the same dangerous-vector scrubbing but different
|
|
13
|
+
* attribute allowlists: this path stays narrow so existing consumers
|
|
14
|
+
* (toast, loading, alert message, etc.) are unaffected, while
|
|
15
|
+
* `sanitizeDOMTree` uses the wider rich-content allowlist.
|
|
16
|
+
*
|
|
17
|
+
* @param untrustedString - The HTML string to sanitize. Pass an
|
|
18
|
+
* `IonicSafeString` to bypass sanitization, or `undefined` to short-circuit.
|
|
19
|
+
* @returns The sanitized HTML string, or `undefined` if the input was
|
|
20
|
+
* `undefined`. Returns `''` if sanitization fails or the input appears to
|
|
21
|
+
* carry an inline `onload` handler.
|
|
4
22
|
*/
|
|
5
23
|
export declare const sanitizeDOMString: (untrustedString: IonicSafeString | string | undefined) => string | undefined;
|
|
24
|
+
/**
|
|
25
|
+
* Sanitize an entire trusted DOM tree in place.
|
|
26
|
+
*
|
|
27
|
+
* Removes blocked tags (`script`, `iframe`, etc.) from the subtree and
|
|
28
|
+
* then sanitizes attributes on every remaining element using the wider
|
|
29
|
+
* `richContentAllowedAttributes` allowlist (refer `sanitizeElement`).
|
|
30
|
+
* Component presentational attributes (`size`, `color`, `shape`, inline
|
|
31
|
+
* SVG, `aria-*`, `data-*`) are preserved; `style`, event handlers (`on*`),
|
|
32
|
+
* form/navigation-hijack attributes, script-scheme URLs, and non-image
|
|
33
|
+
* `data:` URLs are stripped.
|
|
34
|
+
*
|
|
35
|
+
* Use this when you have a DOM tree the developer controls (e.g.
|
|
36
|
+
* cloned slot content from a component) and you need to render it
|
|
37
|
+
* elsewhere safely.
|
|
38
|
+
*
|
|
39
|
+
* @param root - The root element whose subtree will be sanitized in
|
|
40
|
+
* place. No-op when the sanitizer is disabled via `Ionic.config`.
|
|
41
|
+
*/
|
|
42
|
+
export declare const sanitizeDOMTree: (root: HTMLElement) => void;
|
|
43
|
+
/**
|
|
44
|
+
* Mirror known custom-element DOM properties onto attributes so they
|
|
45
|
+
* survive `cloneNode`. Call this on a DOM subtree before cloning it for
|
|
46
|
+
* rendering elsewhere (e.g. cloning slotted option content into an
|
|
47
|
+
* overlay).
|
|
48
|
+
*
|
|
49
|
+
* Only sets the attribute when the property holds a non-empty string
|
|
50
|
+
* and the attribute isn't already present, so existing attributes
|
|
51
|
+
* take precedence.
|
|
52
|
+
*
|
|
53
|
+
* @param root - The root element whose subtree (and itself) will be
|
|
54
|
+
* inspected.
|
|
55
|
+
*/
|
|
56
|
+
export declare const reflectPropertiesToAttributes: (root: Element) => void;
|
|
57
|
+
/**
|
|
58
|
+
* Tags removed entirely (with their subtree) before attribute sanitization.
|
|
59
|
+
* Exported so tests can assert the set without hardcoding it.
|
|
60
|
+
*/
|
|
61
|
+
export declare const blockedTags: string[];
|
|
6
62
|
export declare class IonicSafeString {
|
|
7
63
|
value: string;
|
|
8
64
|
constructor(value: string);
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { VNode } from '../stencil-public-runtime';
|
|
2
|
+
import type { RichContentOption as RichContentOpt } from '../components/select/select-interface';
|
|
3
|
+
interface RichContentOption extends RichContentOpt {
|
|
4
|
+
/** Unique identifier for stable virtual DOM keys across re-renders. */
|
|
5
|
+
id: string;
|
|
6
|
+
/** The main label for the option as a string or an HTMLElement. */
|
|
7
|
+
label?: string | HTMLElement;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Converts a DOM node into a Stencil VNode (or text string) so the
|
|
11
|
+
* resulting tree is rendered through the component's normal render
|
|
12
|
+
* path. Rendering through Stencil ensures that scoped CSS classes
|
|
13
|
+
* (e.g. `sc-ion-action-sheet-ionic`) are applied to every element.
|
|
14
|
+
*
|
|
15
|
+
* Highly recommended to pre-sanitize the source DOM (see
|
|
16
|
+
* `getOptionContent` in select.tsx). This function performs pure
|
|
17
|
+
* structural conversion — no security filtering.
|
|
18
|
+
*
|
|
19
|
+
* Preserves attributes only — properties set imperatively on the source
|
|
20
|
+
* element (e.g. `input.value` after a user types) won't carry through.
|
|
21
|
+
* In practice this isn't a concern: interactive controls shouldn't
|
|
22
|
+
* appear in select-option rich content since they'd nest inside the
|
|
23
|
+
* overlay's button/radio/checkbox wrapper, which is invalid HTML and
|
|
24
|
+
* an accessibility issue.
|
|
25
|
+
*
|
|
26
|
+
* @param node - The DOM node to convert. Text nodes become strings,
|
|
27
|
+
* element nodes become VNodes, and any other node types are skipped.
|
|
28
|
+
* @param keyPrefix - String prefix used to build a stable VNode key,
|
|
29
|
+
* so Stencil's diff can preserve elements across re-renders.
|
|
30
|
+
* @param index - Position of this node among its siblings. Combined
|
|
31
|
+
* with `keyPrefix` to form the final unique key.
|
|
32
|
+
* @returns The converted VNode, a text string, or `null` if the node
|
|
33
|
+
* type isn't supported.
|
|
34
|
+
*
|
|
35
|
+
* @internal Exported only so it can be unit tested; not part of the
|
|
36
|
+
* public API.
|
|
37
|
+
*/
|
|
38
|
+
export declare const cloneToVNode: (node: Node, keyPrefix: string, index: number) => VNode | string | null;
|
|
39
|
+
/**
|
|
40
|
+
* Renders the label content for a select option within an overlay
|
|
41
|
+
* interface based on the presence of rich content.
|
|
42
|
+
*
|
|
43
|
+
* Span elements should be used when this content renders within buttons,
|
|
44
|
+
* depending on the select interface. Buttons can only have phrasing
|
|
45
|
+
* content to prevent accessibility issues.
|
|
46
|
+
*
|
|
47
|
+
* @param option - The content option data containing label, slots,
|
|
48
|
+
* and description.
|
|
49
|
+
* @param className - The base CSS class for the label element.
|
|
50
|
+
* @param useSpan - Whether to use a span element instead of a div for the label.
|
|
51
|
+
*/
|
|
52
|
+
export declare const renderOptionLabel: (option: RichContentOption, className: string, useSpan?: boolean) => HTMLElement | string | undefined;
|
|
53
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Locator } from '@playwright/test';
|
|
2
|
+
/**
|
|
3
|
+
* Detaches an element and puts it back in a later task, the way a framework
|
|
4
|
+
* binding relocates a subtree it owns.
|
|
5
|
+
*
|
|
6
|
+
* A single `appendChild` won't do it. Custom element reactions run at the end
|
|
7
|
+
* of the same task, so `disconnectedCallback` fires with the element already
|
|
8
|
+
* back and nothing tears down. The detach has to survive a task before the
|
|
9
|
+
* disconnect is observable.
|
|
10
|
+
*
|
|
11
|
+
* Pass `containerSelector` to hold the element somewhere other than the body.
|
|
12
|
+
*/
|
|
13
|
+
export declare const detachAndReattach: (locator: Locator, containerSelector?: string) => Promise<void>;
|
|
@@ -13,5 +13,5 @@ type CustomFixtures = {
|
|
|
13
13
|
* @returns The modified playwright page with extended functionality.
|
|
14
14
|
*/
|
|
15
15
|
export declare function extendPageFixture(page: E2EPage, testInfo: TestInfo): Promise<E2EPage>;
|
|
16
|
-
export declare const test: import("
|
|
16
|
+
export declare const test: import("playwright/test").TestType<PlaywrightTestArgs & PlaywrightTestOptions & CustomFixtures, PlaywrightWorkerArgs & PlaywrightWorkerOptions>;
|
|
17
17
|
export {};
|
|
@@ -16,6 +16,6 @@ interface CustomMatchers<R = unknown> {
|
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
declare namespace PlaywrightTest {
|
|
19
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-
|
|
19
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-object-type
|
|
20
20
|
interface Matchers<R> extends CustomMatchers<R> {}
|
|
21
21
|
}
|