@ionic/core 8.8.19-dev.11787007863.1976a30e → 8.8.19-dev.11787083540.1511caf2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/index.js +1 -1
- package/components/ion-accordion-group.js +1 -1
- package/components/ion-accordion.js +1 -1
- package/components/ion-action-sheet.js +1 -1
- package/components/ion-alert.js +1 -1
- package/components/ion-app.js +1 -1
- package/components/ion-avatar.js +1 -1
- package/components/ion-back-button.js +1 -1
- package/components/ion-backdrop.js +1 -1
- package/components/ion-badge.js +1 -1
- package/components/ion-breadcrumb.js +1 -1
- package/components/ion-breadcrumbs.js +1 -1
- package/components/ion-button.js +1 -1
- package/components/ion-buttons.js +1 -1
- package/components/ion-card-content.js +1 -1
- package/components/ion-card-header.js +1 -1
- package/components/ion-card-subtitle.js +1 -1
- package/components/ion-card-title.js +1 -1
- package/components/ion-card.js +1 -1
- package/components/ion-checkbox.js +1 -1
- package/components/ion-chip.js +1 -1
- package/components/ion-col.js +1 -1
- package/components/ion-content.js +1 -1
- package/components/ion-datetime-button.js +1 -1
- package/components/ion-datetime.js +1 -1
- package/components/ion-fab-button.js +1 -1
- package/components/ion-fab-list.js +1 -1
- package/components/ion-fab.js +1 -1
- package/components/ion-footer.js +1 -1
- package/components/ion-grid.js +1 -1
- package/components/ion-header.js +1 -1
- package/components/ion-icon.js +1 -1
- package/components/ion-img.js +1 -1
- package/components/ion-infinite-scroll-content.js +1 -1
- package/components/ion-infinite-scroll.js +1 -1
- package/components/ion-input-otp.js +1 -1
- package/components/ion-input-password-toggle.js +1 -1
- package/components/ion-input.js +1 -1
- package/components/ion-item-divider.js +1 -1
- package/components/ion-item-group.js +1 -1
- package/components/ion-item-option.js +1 -1
- package/components/ion-item-options.js +1 -1
- package/components/ion-item-sliding.js +1 -1
- package/components/ion-item.js +1 -1
- package/components/ion-label.js +1 -1
- package/components/ion-list-header.js +1 -1
- package/components/ion-list.js +1 -1
- package/components/ion-loading.js +1 -1
- package/components/ion-menu-button.js +1 -1
- package/components/ion-menu-toggle.js +1 -1
- package/components/ion-menu.js +1 -1
- package/components/ion-modal.js +1 -1
- package/components/ion-nav-link.js +1 -1
- package/components/ion-nav.js +1 -1
- package/components/ion-note.js +1 -1
- package/components/ion-picker-column-option.js +1 -1
- package/components/ion-picker-column.js +1 -1
- package/components/ion-picker-legacy-column.d.ts +11 -0
- package/components/ion-picker-legacy-column.js +4 -0
- package/components/ion-picker-legacy.d.ts +11 -0
- package/components/ion-picker-legacy.js +4 -0
- 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-DV85C0e0.js → p--JUspHvy.js} +1 -1
- package/components/p-0LM2oPMC.js +4 -0
- package/components/{p-_0JhwClE.js → p-6J0vc7Z8.js} +1 -1
- package/components/p-9GFIh9p1.js +4 -0
- package/components/p-B21528L5.js +4 -0
- package/components/p-B2nSfLHH.js +4 -0
- package/components/p-B3qf4bEn.js +4 -0
- package/components/p-B9jFTlwE.js +4 -0
- package/components/p-BDd9Zrb9.js +4 -0
- package/components/p-BLmJ0zRm.js +4 -0
- package/components/p-BMYNBJgf.js +4 -0
- package/components/p-BRYd8D-I.js +4 -0
- package/components/p-BSEgsdFI.js +4 -0
- package/components/p-BTEOs1at.js +4 -0
- package/components/p-BTJrYwxN.js +4 -0
- package/components/p-BV-zKay-.js +4 -0
- package/components/p-BYRVyMu9.js +4 -0
- package/components/{p-DwpKZ6rl.js → p-BkKAANMJ.js} +1 -1
- package/components/p-Bmq8qlkW.js +4 -0
- package/components/p-BuxQcfHK.js +4 -0
- package/components/p-Bz0dSlXZ.js +4 -0
- package/components/p-C7II1iDj.js +4 -0
- package/components/p-CHqRYvYm.js +4 -0
- package/components/p-CSZf8_j0.js +4 -0
- package/components/p-CTdRooFV.js +4 -0
- package/components/p-Cf2jSDS8.js +4 -0
- package/components/p-Cfx4M1Bn.js +4 -0
- package/components/p-CgkrslTX.js +4 -0
- package/components/p-CiCzYG2V.js +4 -0
- package/{dist/ionic/p-BkfAWuv6.js → components/p-Ck0lEczL.js} +1 -1
- package/components/p-CmR5uXej.js +4 -0
- package/components/p-CniZht3v.js +4 -0
- package/components/p-CsaojgEs.js +4 -0
- package/components/p-CtWGkNnJ.js +4 -0
- package/components/p-D13Eaw-8.js +4 -0
- package/components/p-D4FYu-4R.js +4 -0
- package/components/p-D6Ynv7Xh.js +4 -0
- package/components/p-DARjq3GM.js +4 -0
- package/components/p-DEZ2myA3.js +4 -0
- package/components/p-DOFCbuQR.js +4 -0
- package/components/p-DVe41iHI.js +4 -0
- package/components/p-DX5m9g56.js +4 -0
- package/components/p-DboHi2CL.js +4 -0
- package/components/p-DiVJyqlX.js +4 -0
- package/components/p-DmzFY5IC.js +4 -0
- package/components/{p-ryyf_ItD.js → p-DqLB8yFQ.js} +1 -1
- package/components/p-DqZAXv2t.js +4 -0
- package/components/p-Dv8w0kqz.js +4 -0
- package/components/p-Dw7GNDKq.js +4 -0
- package/components/p-Dww01PNs.js +4 -0
- package/components/p-Gy276IJk.js +4 -0
- package/components/p-ZzLXTvyt.js +4 -0
- package/components/p-cyNmxje6.js +4 -0
- package/components/p-j5IxBIan.js +4 -0
- package/components/p-k_E4tX5Z.js +4 -0
- package/components/p-lVAbdiAu.js +4 -0
- package/components/p-o8OKV5aD.js +4 -0
- package/components/{p-30_sZS2V.js → p-qMmFisyx.js} +1 -1
- package/components/p-rCa2eL0j.js +4 -0
- package/dist/cjs/{animation-C0mOHzej.js → animation-Ch16T-Nb.js} +4 -4
- package/dist/cjs/{app-globals-BREG4twP.js → app-globals-Dd89e0MR.js} +1 -1
- package/dist/cjs/{button-active-BKj1rdFx.js → button-active-AWp_ygDP.js} +3 -3
- package/dist/cjs/config-D6C-KlA9.js +201 -0
- package/dist/cjs/dir-DD0jPVH3.js +31 -0
- package/dist/cjs/{format-pp0Du3K-.js → format-BUFWn4Bn.js} +30 -40
- package/dist/cjs/{framework-delegate-NTLQ5YzV.js → framework-delegate-CEzl4MEA.js} +7 -5
- package/dist/cjs/{gesture-controller-BDUH7687.js → gesture-controller-dtqlP_q4.js} +8 -15
- package/dist/cjs/{haptic-Ch-X4gRx.js → haptic-ClPPQ_PS.js} +3 -2
- package/dist/cjs/{hardware-back-button-fqpYh-kd.js → hardware-back-button-CXmUnTJC.js} +4 -4
- package/dist/cjs/{helpers-CaLhEmTE.js → helpers-DdZyl6WL.js} +15 -11
- package/dist/cjs/{index-P1nQxrpZ.js → index-BJ2-LydH.js} +7 -36
- package/dist/cjs/{index-uvry__L4.js → index-BfaXsATC.js} +14 -31
- package/dist/cjs/{index-D48vawBq.js → index-CD92bI7B.js} +2 -2
- package/dist/cjs/{index-Ck9advCT.js → index-CukZnH1U.js} +5 -5
- package/dist/cjs/{index-D2X6b92x.js → index-DOiZqxWZ.js} +7 -6
- package/dist/cjs/{index-wOmugbdg.js → index-DqmRDbxg.js} +1 -1
- package/dist/cjs/{index-BlshL9ib.js → index-MWAIyVLl.js} +3 -2
- package/dist/cjs/index.cjs.js +19 -18
- package/dist/cjs/{input-shims-DvHAFqiP.js → input-shims-CPKgrIe3.js} +12 -9
- package/dist/cjs/input.utils-DQaUGGed.js +150 -0
- package/dist/cjs/ion-accordion_2.cjs.entry.js +341 -368
- package/dist/cjs/ion-action-sheet.cjs.entry.js +77 -187
- package/dist/cjs/ion-alert.cjs.entry.js +112 -273
- package/dist/cjs/ion-app_8.cjs.entry.js +190 -307
- package/dist/cjs/ion-avatar_3.cjs.entry.js +4 -10
- package/dist/cjs/ion-back-button.cjs.entry.js +24 -47
- package/dist/cjs/ion-backdrop.cjs.entry.js +14 -18
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +122 -199
- package/dist/cjs/ion-button_2.cjs.entry.js +67 -138
- package/dist/cjs/ion-card_5.cjs.entry.js +31 -82
- package/dist/cjs/ion-checkbox.cjs.entry.js +102 -152
- package/dist/cjs/ion-chip.cjs.entry.js +11 -17
- package/dist/cjs/ion-col_3.cjs.entry.js +10 -134
- package/dist/cjs/ion-datetime-button.cjs.entry.js +242 -253
- package/dist/cjs/ion-datetime_3.cjs.entry.js +3167 -0
- package/dist/cjs/ion-fab_3.cjs.entry.js +82 -139
- package/dist/cjs/ion-img.cjs.entry.js +13 -34
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +73 -100
- package/dist/cjs/ion-input-otp.cjs.entry.js +372 -435
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +22 -36
- package/dist/cjs/ion-input.cjs.entry.js +212 -343
- package/dist/cjs/ion-item-option_3.cjs.entry.js +55 -94
- package/dist/cjs/ion-item_8.cjs.entry.js +93 -191
- package/dist/cjs/ion-loading.cjs.entry.js +61 -146
- package/dist/cjs/ion-menu_3.cjs.entry.js +109 -170
- package/dist/cjs/ion-modal.cjs.entry.js +262 -455
- package/dist/cjs/ion-nav_2.cjs.entry.js +159 -101
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +34 -37
- package/dist/cjs/ion-picker-column.cjs.entry.js +406 -417
- package/dist/cjs/ion-picker.cjs.entry.js +393 -401
- package/dist/cjs/ion-popover.cjs.entry.js +206 -319
- package/dist/cjs/ion-progress-bar.cjs.entry.js +26 -31
- package/dist/cjs/ion-radio_2.cjs.entry.js +135 -207
- package/dist/cjs/ion-range.cjs.entry.js +237 -302
- package/dist/cjs/ion-refresher_2.cjs.entry.js +94 -165
- package/dist/cjs/ion-reorder_2.cjs.entry.js +24 -53
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +14 -14
- package/dist/cjs/ion-route_4.cjs.entry.js +72 -175
- package/dist/cjs/ion-searchbar.cjs.entry.js +200 -291
- package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
- package/dist/cjs/ion-segment-view.cjs.entry.js +17 -28
- package/dist/cjs/ion-segment_2.cjs.entry.js +126 -169
- package/dist/cjs/ion-select-modal.cjs.entry.js +49 -104
- package/dist/cjs/ion-select_3.cjs.entry.js +260 -787
- package/dist/cjs/ion-spinner.cjs.entry.js +10 -24
- package/dist/cjs/ion-split-pane.cjs.entry.js +16 -29
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +42 -100
- package/dist/cjs/ion-tab_2.cjs.entry.js +28 -53
- package/dist/cjs/ion-text.cjs.entry.js +5 -11
- package/dist/cjs/ion-textarea.cjs.entry.js +189 -296
- package/dist/cjs/ion-toast.cjs.entry.js +118 -236
- package/dist/cjs/ion-toggle.cjs.entry.js +122 -175
- package/dist/cjs/{ionic-global-k6hOWWpn.js → ionic-global-BerQGEpE.js} +8 -13
- package/dist/cjs/ionic.cjs.js +4 -4
- package/dist/cjs/{ios.transition-KvuRAe2W.js → ios.transition-CTiTDh3m.js} +18 -13
- package/dist/cjs/{item-multiple-inputs-BdYSbfKN.js → item-multiple-inputs-jOJZE_I0.js} +1 -1
- package/dist/cjs/{keyboard-cHxZlTyz.js → keyboard-UuAS4D_9.js} +2 -2
- package/dist/cjs/{keyboard-controller-PtZoN2GS.js → keyboard-controller-GXBiBRKS.js} +6 -6
- package/dist/cjs/{keyboard-Cix5TVkD.js → keyboard-hHzlEQpk.js} +2 -2
- package/dist/cjs/loader.cjs.js +4 -4
- package/dist/cjs/{md.transition-Bjl5Ozph.js → md.transition-BpiTAaqF.js} +9 -7
- package/dist/cjs/notch-controller-aiy8aQb-.js +155 -0
- package/dist/cjs/{overlays-IlP4H2Gn.js → overlays-CQ_c1fko.js} +33 -48
- package/dist/cjs/{status-tap-BR_ujYHg.js → status-tap-7FzRlXNr.js} +4 -3
- package/dist/cjs/{swipe-back-DzQKEl5g.js → swipe-back-DwTZiAc9.js} +5 -5
- package/dist/cjs/{theme-Bw0rpaNN.js → theme-CeDs6Hcv.js} +1 -6
- package/dist/collection/collection-manifest.json +10 -6
- package/dist/collection/components/accordion/accordion.js +312 -315
- package/dist/collection/components/accordion-group/accordion-group.js +25 -48
- package/dist/collection/components/action-sheet/action-sheet.ios.css +2 -228
- package/dist/collection/components/action-sheet/action-sheet.js +64 -173
- package/dist/collection/components/action-sheet/action-sheet.md.css +2 -174
- package/dist/collection/components/action-sheet/test/basic/fixture.js +0 -3
- package/dist/collection/components/alert/alert.ios.css +10 -279
- package/dist/collection/components/alert/alert.js +97 -257
- package/dist/collection/components/alert/alert.md.css +20 -268
- package/dist/collection/components/app/app.js +0 -3
- package/dist/collection/components/back-button/back-button.js +19 -42
- package/dist/collection/components/backdrop/backdrop.js +14 -16
- package/dist/collection/components/badge/badge.js +0 -6
- package/dist/collection/components/breadcrumb/breadcrumb.js +30 -91
- package/dist/collection/components/breadcrumbs/breadcrumbs.js +88 -103
- package/dist/collection/components/button/button.js +61 -132
- package/dist/collection/components/buttons/buttons.js +15 -13
- package/dist/collection/components/card/card.js +21 -54
- package/dist/collection/components/card-header/card-header.js +8 -12
- package/dist/collection/components/card-subtitle/card-subtitle.js +0 -6
- package/dist/collection/components/card-title/card-title.js +0 -6
- package/dist/collection/components/checkbox/checkbox.js +97 -147
- package/dist/collection/components/chip/chip.js +10 -14
- package/dist/collection/components/col/col.js +3 -127
- package/dist/collection/components/content/content.js +64 -93
- package/dist/collection/components/datetime/datetime.ios.css +2 -42
- package/dist/collection/components/datetime/datetime.js +816 -1051
- package/dist/collection/components/datetime/datetime.md.css +1 -42
- package/dist/collection/components/datetime/utils/data.js +14 -13
- package/dist/collection/components/datetime/utils/format.js +11 -21
- 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 +2 -8
- package/dist/collection/components/datetime/utils/validate.js +5 -4
- package/dist/collection/components/datetime-button/datetime-button.ios.css +0 -5
- package/dist/collection/components/datetime-button/datetime-button.js +237 -247
- package/dist/collection/components/datetime-button/datetime-button.md.css +0 -5
- package/dist/collection/components/fab/fab.js +13 -20
- package/dist/collection/components/fab-button/fab-button.js +55 -104
- package/dist/collection/components/fab-list/fab-list.js +11 -10
- package/dist/collection/components/footer/footer.js +44 -50
- package/dist/collection/components/grid/grid.js +6 -4
- package/dist/collection/components/header/header.js +25 -35
- package/dist/collection/components/img/img.js +10 -34
- package/dist/collection/components/infinite-scroll/infinite-scroll.js +66 -73
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +3 -20
- package/dist/collection/components/input/input.ios.css +26 -57
- package/dist/collection/components/input/input.js +206 -336
- package/dist/collection/components/input/input.md.css +43 -79
- package/dist/collection/components/input-otp/input-otp.js +368 -430
- package/dist/collection/components/input-password-toggle/input-password-toggle.js +19 -32
- package/dist/collection/components/item/item.js +53 -99
- package/dist/collection/components/item-divider/item-divider.js +12 -17
- package/dist/collection/components/item-group/item-group.js +1 -1
- package/dist/collection/components/item-option/item-option.js +22 -50
- package/dist/collection/components/item-options/item-options.js +8 -11
- package/dist/collection/components/item-sliding/item-sliding.js +21 -27
- package/dist/collection/components/label/label.js +6 -26
- package/dist/collection/components/list/list.js +8 -11
- package/dist/collection/components/list-header/list-header.js +2 -12
- package/dist/collection/components/loading/loading.js +51 -135
- package/dist/collection/components/menu/menu.js +63 -105
- package/dist/collection/components/menu-button/menu-button.js +21 -30
- package/dist/collection/components/menu-toggle/menu-toggle.js +15 -22
- 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 +10 -22
- package/dist/collection/components/modal/gestures/swipe-to-close.js +3 -15
- package/dist/collection/components/modal/modal.js +228 -398
- package/dist/collection/components/modal/safe-area-utils.js +7 -6
- package/dist/collection/components/modal/test/fixtures.js +0 -3
- package/dist/collection/components/nav/nav.js +247 -69
- package/dist/collection/components/nav/view-controller.js +1 -7
- package/dist/collection/components/nav-link/nav-link.js +10 -21
- package/dist/collection/components/note/note.js +2 -8
- package/dist/collection/components/picker/picker.js +390 -398
- package/dist/collection/components/picker-column/picker-column.css +0 -3
- package/dist/collection/components/picker-column/picker-column.js +404 -414
- package/dist/collection/components/picker-column-option/picker-column-option.js +31 -33
- package/dist/collection/components/picker-column-option/picker-column-option.md.css +1 -6
- package/dist/collection/components/picker-legacy/animations/ios.enter.js +27 -0
- package/dist/collection/components/picker-legacy/animations/ios.leave.js +23 -0
- package/dist/collection/components/picker-legacy/picker-interface.js +1 -0
- package/dist/collection/components/picker-legacy/picker.ios.css +300 -0
- package/dist/collection/components/picker-legacy/picker.js +890 -0
- package/dist/collection/components/picker-legacy/picker.md.css +287 -0
- package/dist/collection/components/picker-legacy-column/picker-column.ios.css +231 -0
- package/dist/collection/components/picker-legacy-column/picker-column.js +422 -0
- package/dist/collection/components/picker-legacy-column/picker-column.md.css +222 -0
- package/dist/collection/components/picker-legacy-column/test/test.utils.js +43 -0
- package/dist/collection/components/popover/animations/ios.enter.js +2 -1
- package/dist/collection/components/popover/animations/md.enter.js +2 -1
- package/dist/collection/components/popover/popover.ios.css +0 -15
- package/dist/collection/components/popover/popover.js +185 -302
- package/dist/collection/components/popover/popover.md.css +0 -15
- package/dist/collection/components/popover/test/fixture.js +0 -1
- package/dist/collection/components/popover/utils.js +6 -4
- package/dist/collection/components/progress-bar/progress-bar.js +23 -27
- package/dist/collection/components/radio/radio.js +66 -102
- package/dist/collection/components/radio-group/radio-group.js +66 -101
- package/dist/collection/components/radio-group/test/fixtures.js +0 -2
- package/dist/collection/components/range/range.js +232 -296
- package/dist/collection/components/refresher/refresher.js +78 -110
- package/dist/collection/components/refresher-content/refresher-content.js +4 -41
- package/dist/collection/components/reorder/reorder.js +1 -2
- package/dist/collection/components/reorder-group/reorder-group.js +15 -44
- package/dist/collection/components/ripple-effect/ripple-effect.js +13 -12
- package/dist/collection/components/route/route.js +10 -39
- package/dist/collection/components/route-redirect/route-redirect.js +0 -31
- package/dist/collection/components/router/router.js +33 -37
- package/dist/collection/components/router/utils/dom.js +7 -25
- package/dist/collection/components/router/utils/matching.js +9 -7
- package/dist/collection/components/router/utils/parser.js +1 -1
- package/dist/collection/components/router/utils/path.js +1 -0
- package/dist/collection/components/router-link/router-link.js +12 -37
- package/dist/collection/components/router-outlet/router-outlet.js +21 -82
- package/dist/collection/components/row/row.js +1 -1
- package/dist/collection/components/searchbar/searchbar.js +199 -289
- package/dist/collection/components/segment/segment.js +85 -120
- package/dist/collection/components/segment-button/segment-button.js +37 -43
- package/dist/collection/components/segment-content/segment-content.js +1 -1
- package/dist/collection/components/segment-view/segment-view.js +16 -26
- package/dist/collection/components/select/select.ios.css +69 -96
- package/dist/collection/components/select/select.js +213 -629
- package/dist/collection/components/select/select.md.css +85 -118
- package/dist/collection/components/select-modal/select-modal.ios.css +0 -218
- package/dist/collection/components/select-modal/select-modal.js +38 -92
- package/dist/collection/components/select-modal/select-modal.md.css +0 -164
- package/dist/collection/components/select-modal/test/fixtures.js +1 -8
- package/dist/collection/components/select-option/select-option.js +9 -110
- package/dist/collection/components/select-popover/select-popover.ios.css +0 -218
- package/dist/collection/components/select-popover/select-popover.js +36 -103
- package/dist/collection/components/select-popover/select-popover.md.css +0 -164
- package/dist/collection/components/select-popover/test/fixtures.js +1 -8
- package/dist/collection/components/skeleton-text/skeleton-text.js +8 -12
- package/dist/collection/components/spinner/spinner.js +9 -21
- package/dist/collection/components/split-pane/split-pane.js +15 -27
- package/dist/collection/components/tab/tab.js +6 -17
- package/dist/collection/components/tab-bar/tab-bar.js +14 -32
- package/dist/collection/components/tab-button/tab-button.js +23 -62
- package/dist/collection/components/tabs/tabs.js +20 -33
- package/dist/collection/components/text/text.js +2 -8
- package/dist/collection/components/textarea/textarea.ios.css +62 -94
- package/dist/collection/components/textarea/textarea.js +181 -287
- package/dist/collection/components/textarea/textarea.md.css +77 -103
- package/dist/collection/components/thumbnail/thumbnail.js +1 -1
- package/dist/collection/components/title/title.js +2 -18
- package/dist/collection/components/toast/toast.js +106 -223
- package/dist/collection/components/toggle/toggle.js +115 -167
- package/dist/collection/components/toolbar/toolbar.js +7 -15
- package/dist/collection/global/config.js +6 -4
- package/dist/collection/global/ionic-global.js +2 -8
- package/dist/collection/index.js +1 -1
- package/dist/collection/utils/animation/animation.js +3 -3
- package/dist/collection/utils/config.js +4 -5
- 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 +0 -1
- package/dist/collection/utils/framework-delegate.js +6 -4
- package/dist/collection/utils/gesture/gesture-controller.js +8 -15
- package/dist/collection/utils/gesture/index.js +2 -10
- 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 +5 -4
- package/dist/collection/utils/input-shims/hacks/scroll-data.js +2 -1
- 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 +4 -23
- package/dist/collection/utils/menu-controller/index.js +2 -1
- package/dist/collection/utils/native/haptic.js +3 -2
- package/dist/collection/utils/native/keyboard.js +2 -2
- package/dist/collection/utils/native/status-bar.js +1 -1
- package/dist/collection/utils/overlays.js +23 -38
- package/dist/collection/utils/platform.js +5 -4
- package/dist/collection/utils/rtl/dir.js +18 -7
- package/dist/collection/utils/sanitization/index.js +20 -276
- package/dist/collection/utils/slot-mutation-controller.js +2 -1
- package/dist/collection/utils/test/playwright/apply-keyboard-focus.js +1 -1
- package/dist/collection/utils/test/playwright/drag-element.js +3 -2
- package/dist/collection/utils/test/playwright/generator.js +4 -3
- package/dist/collection/utils/test/playwright/page/event-spy.js +12 -11
- package/dist/collection/utils/test/playwright/page/utils/goto.js +5 -4
- 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 +3 -2
- package/dist/collection/utils/test/press-keys.js +17 -10
- package/dist/collection/utils/theme.js +1 -6
- package/dist/collection/utils/transition/ios.transition.js +13 -9
- package/dist/collection/utils/transition/md.transition.js +4 -3
- package/dist/docs.json +1256 -556
- package/dist/esm/{animation-CGFdmGk9.js → animation-DLJpuoEz.js} +4 -4
- package/dist/esm/{app-globals-CYmMeGdU.js → app-globals-D0C5S4hU.js} +1 -1
- package/dist/esm/{button-active--80YqSHA.js → button-active-CXXy0FIE.js} +3 -3
- package/dist/esm/config-DQCONYYp.js +195 -0
- package/dist/esm/dir-o8OKV5aD.js +29 -0
- package/dist/esm/{format-Dcwga61t.js → format-CAmvpAez.js} +31 -41
- package/dist/esm/{framework-delegate--ajhSeKH.js → framework-delegate-B9yvYzqV.js} +7 -5
- package/dist/esm/{gesture-controller-TXPDHL13.js → gesture-controller-BTEOs1at.js} +8 -15
- package/dist/esm/{haptic-Cq4UAeka.js → haptic-DzAMWJuk.js} +3 -2
- package/dist/esm/{hardware-back-button-gLJHMX_F.js → hardware-back-button-B93Gru0Y.js} +4 -4
- package/dist/esm/{helpers-DexiPLIC.js → helpers-DkCLSLI9.js} +15 -11
- package/dist/esm/{index-_Za5VB9w.js → index-B_8X7INq.js} +2 -2
- package/dist/esm/{index-DppOcPFQ.js → index-Bck1OwMs.js} +7 -36
- package/dist/esm/{index-BvabGprD.js → index-DV3sJJW8.js} +2 -2
- package/dist/esm/{index-CumkqGQF.js → index-DdeElWma.js} +7 -6
- package/dist/esm/{index-8s8kZKJ7.js → index-Dsz7OTeL.js} +5 -5
- package/dist/esm/{index-BCgUwrV0.js → index-DwNKJodj.js} +3 -2
- package/dist/esm/{index-ChhhtsGZ.js → index-tcQvqkiX.js} +15 -32
- package/dist/esm/index.js +16 -16
- package/dist/esm/{input-shims-BB0AKb_k.js → input-shims-d-hDv86G.js} +12 -9
- package/dist/esm/input.utils-Cd23Gdd1.js +147 -0
- package/dist/esm/ion-accordion_2.entry.js +341 -368
- package/dist/esm/ion-action-sheet.entry.js +77 -187
- package/dist/esm/ion-alert.entry.js +111 -272
- package/dist/esm/ion-app_8.entry.js +190 -307
- package/dist/esm/ion-avatar_3.entry.js +4 -10
- package/dist/esm/ion-back-button.entry.js +24 -47
- package/dist/esm/ion-backdrop.entry.js +14 -18
- package/dist/esm/ion-breadcrumb_2.entry.js +122 -199
- package/dist/esm/ion-button_2.entry.js +67 -138
- package/dist/esm/ion-card_5.entry.js +31 -82
- package/dist/esm/ion-checkbox.entry.js +102 -152
- package/dist/esm/ion-chip.entry.js +11 -17
- package/dist/esm/ion-col_3.entry.js +10 -134
- package/dist/esm/ion-datetime-button.entry.js +242 -253
- package/dist/esm/ion-datetime_3.entry.js +3163 -0
- package/dist/esm/ion-fab_3.entry.js +82 -139
- package/dist/esm/ion-img.entry.js +13 -34
- package/dist/esm/ion-infinite-scroll_2.entry.js +72 -99
- package/dist/esm/ion-input-otp.entry.js +372 -435
- package/dist/esm/ion-input-password-toggle.entry.js +22 -36
- package/dist/esm/ion-input.entry.js +210 -341
- package/dist/esm/ion-item-option_3.entry.js +55 -94
- package/dist/esm/ion-item_8.entry.js +93 -191
- package/dist/esm/ion-loading.entry.js +60 -145
- package/dist/esm/ion-menu_3.entry.js +109 -170
- package/dist/esm/ion-modal.entry.js +262 -455
- package/dist/esm/ion-nav_2.entry.js +159 -101
- package/dist/esm/ion-picker-column-option.entry.js +34 -37
- package/dist/esm/ion-picker-column.entry.js +406 -417
- package/dist/esm/ion-picker.entry.js +393 -401
- package/dist/esm/ion-popover.entry.js +206 -319
- package/dist/esm/ion-progress-bar.entry.js +26 -31
- package/dist/esm/ion-radio_2.entry.js +135 -207
- package/dist/esm/ion-range.entry.js +237 -302
- package/dist/esm/ion-refresher_2.entry.js +92 -163
- package/dist/esm/ion-reorder_2.entry.js +24 -53
- package/dist/esm/ion-ripple-effect.entry.js +14 -14
- package/dist/esm/ion-route_4.entry.js +72 -175
- package/dist/esm/ion-searchbar.entry.js +200 -291
- package/dist/esm/ion-segment-content.entry.js +2 -2
- package/dist/esm/ion-segment-view.entry.js +17 -28
- package/dist/esm/ion-segment_2.entry.js +126 -169
- package/dist/esm/ion-select-modal.entry.js +49 -104
- package/dist/esm/ion-select_3.entry.js +260 -787
- package/dist/esm/ion-spinner.entry.js +10 -24
- package/dist/esm/ion-split-pane.entry.js +16 -29
- package/dist/esm/ion-tab-bar_2.entry.js +42 -100
- package/dist/esm/ion-tab_2.entry.js +28 -53
- package/dist/esm/ion-text.entry.js +5 -11
- package/dist/esm/ion-textarea.entry.js +188 -295
- package/dist/esm/ion-toast.entry.js +117 -235
- package/dist/esm/ion-toggle.entry.js +122 -175
- package/dist/esm/{ionic-global-BVB7BrLT.js → ionic-global-Cp_eT4sZ.js} +8 -13
- package/dist/esm/ionic.js +5 -5
- package/dist/esm/{ios.transition-BdhybwLl.js → ios.transition-CxNhMt4a.js} +18 -13
- package/dist/esm/{item-multiple-inputs-rU8VaNNg.js → item-multiple-inputs-DlNuqNJm.js} +1 -1
- package/dist/esm/{keyboard-DAF8GNJ9.js → keyboard-CUw4ekVy.js} +2 -2
- package/dist/esm/{keyboard-controller-DEwoa1ev.js → keyboard-controller-BaaVITYt.js} +6 -6
- package/dist/esm/{keyboard-Cj8mLJeq.js → keyboard-ywgs5efA.js} +2 -2
- package/dist/esm/loader.js +5 -5
- package/dist/esm/{md.transition-B5lqKGCs.js → md.transition-IE4mC3kp.js} +9 -7
- package/dist/esm/notch-controller-Doqis1td.js +153 -0
- package/dist/esm/{overlays-CjWwtvf1.js → overlays-COCl_nm9.js} +33 -48
- package/dist/esm/{status-tap-DpLhkDWs.js → status-tap-HhO5eQI9.js} +4 -3
- package/dist/esm/{swipe-back-cz4-lyG3.js → swipe-back-DK6afpuO.js} +5 -5
- package/dist/esm/{theme-byZM6qHV.js → theme-DiVJyqlX.js} +1 -6
- package/dist/html.html-data.json +80 -52
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-01f81ea5.entry.js +4 -0
- package/dist/ionic/p-0283ea73.entry.js +4 -0
- package/dist/ionic/p-02ecae65.entry.js +4 -0
- package/dist/ionic/p-0672f677.entry.js +4 -0
- package/dist/ionic/p-0c06fe60.entry.js +4 -0
- package/dist/ionic/p-0fa9c382.entry.js +4 -0
- package/dist/ionic/p-1af4d74c.entry.js +4 -0
- package/dist/ionic/p-1d7ef0d2.entry.js +4 -0
- package/dist/ionic/p-26f05d3a.entry.js +4 -0
- package/dist/ionic/p-27d30585.entry.js +4 -0
- package/dist/ionic/p-2bb2cb18.entry.js +4 -0
- package/dist/ionic/p-31e7bd05.entry.js +4 -0
- package/dist/ionic/p-32f53010.entry.js +4 -0
- package/dist/ionic/p-35eb8b5c.entry.js +4 -0
- package/dist/ionic/p-37e720da.entry.js +4 -0
- package/dist/ionic/p-3efa137b.entry.js +4 -0
- package/dist/ionic/p-432bd72c.entry.js +4 -0
- package/dist/ionic/p-47214c72.entry.js +4 -0
- package/dist/ionic/p-4e172429.entry.js +4 -0
- package/dist/ionic/p-5c3da84e.entry.js +4 -0
- package/dist/ionic/p-5d1da0a2.entry.js +4 -0
- package/dist/ionic/p-5d8082fe.entry.js +4 -0
- package/dist/ionic/p-613d3c43.entry.js +4 -0
- package/dist/ionic/p-616e4d4f.entry.js +4 -0
- package/dist/ionic/p-65d611b2.entry.js +4 -0
- package/dist/ionic/p-67806e3f.entry.js +4 -0
- package/dist/ionic/p-68307fbf.entry.js +4 -0
- package/dist/ionic/p-68cbb2fc.entry.js +4 -0
- package/dist/ionic/p-737ae9eb.entry.js +4 -0
- package/dist/ionic/p-7b0d6248.entry.js +4 -0
- package/dist/ionic/p-7e71e470.entry.js +4 -0
- package/dist/ionic/p-84d5ce05.entry.js +4 -0
- package/dist/ionic/p-85d49987.entry.js +4 -0
- package/dist/ionic/p-8945088b.entry.js +4 -0
- package/dist/ionic/p-8b155568.entry.js +4 -0
- package/dist/ionic/p-90267c4b.entry.js +4 -0
- package/dist/ionic/p-92ad8a67.entry.js +4 -0
- package/dist/ionic/p-9a97d4e0.entry.js +4 -0
- package/dist/ionic/p-9e4b0894.entry.js +4 -0
- package/dist/ionic/p-9eeaBrnk.js +4 -0
- package/dist/ionic/p-B2kaj8sx.js +4 -0
- package/dist/ionic/p-B4y7nxsg.js +4 -0
- package/dist/ionic/p-B8t9Ro6f.js +4 -0
- package/dist/ionic/p-BEOxsxBw.js +4 -0
- package/dist/ionic/p-BJ2NxSHp.js +4 -0
- package/dist/ionic/p-BLiL8g0v.js +4 -0
- package/dist/ionic/p-BTEOs1at.js +4 -0
- package/dist/ionic/p-BUFIpxKM.js +4 -0
- package/dist/ionic/p-BYRVyMu9.js +4 -0
- package/dist/ionic/p-C0eMdTCW.js +4 -0
- package/dist/ionic/p-CKvCXMs9.js +4 -0
- package/dist/ionic/p-CPTv7G9B.js +4 -0
- package/dist/ionic/{p-CQ_4TirR.js → p-Cd4H8ft-.js} +1 -1
- package/dist/ionic/{p-I3In7hMC.js → p-ClM02LPk.js} +1 -1
- package/dist/ionic/p-CtWGkNnJ.js +4 -0
- package/dist/ionic/p-CxMyXUtt.js +4 -0
- package/dist/ionic/p-D13Eaw-8.js +4 -0
- package/dist/ionic/p-DCoy2elM.js +4 -0
- package/dist/ionic/{p-BvabGprD.js → p-DV3sJJW8.js} +1 -1
- package/dist/ionic/p-DZaO33Mw.js +4 -0
- package/dist/ionic/p-DiVJyqlX.js +4 -0
- package/dist/ionic/p-DipZFfzN.js +4 -0
- package/dist/ionic/p-DqN5EA2O.js +4 -0
- package/dist/ionic/p-Dr9fTCb1.js +4 -0
- package/dist/ionic/p-DzWaWHGc.js +4 -0
- package/dist/ionic/p-EkpneKVM.js +4 -0
- package/dist/ionic/p-Nqf6uvGh.js +4 -0
- package/dist/ionic/p-SNAkTDfm.js +4 -0
- package/dist/ionic/p-ab00b0d8.entry.js +4 -0
- package/dist/ionic/p-c2175309.entry.js +4 -0
- package/dist/ionic/p-c4b69d9b.entry.js +4 -0
- package/dist/ionic/p-c4d8641b.entry.js +4 -0
- package/dist/ionic/{p-40424a88.entry.js → p-c6e49f3f.entry.js} +1 -1
- package/dist/ionic/p-ce637936.entry.js +4 -0
- package/dist/ionic/{p-08443c08.entry.js → p-da85e958.entry.js} +1 -1
- package/dist/ionic/p-dfa8d673.entry.js +4 -0
- package/dist/ionic/p-e139357c.entry.js +4 -0
- package/dist/ionic/p-f37ca594.entry.js +4 -0
- package/dist/ionic/p-f8dd336e.entry.js +4 -0
- package/dist/ionic/p-f9de757b.entry.js +4 -0
- package/dist/ionic/p-fe11cf51.entry.js +4 -0
- package/dist/ionic/p-mjKAFv89.js +4 -0
- package/dist/ionic/p-o8OKV5aD.js +4 -0
- package/dist/ionic/p-tcQvqkiX.js +5 -0
- package/dist/types/components/img/img.d.ts +0 -2
- package/dist/types/components/input/input.d.ts +6 -12
- package/dist/types/components/modal/modal-interface.d.ts +0 -9
- package/dist/types/components/modal/modal.d.ts +4 -11
- package/dist/types/components/nav/nav-interface.d.ts +1 -0
- package/dist/types/components/nav/nav.d.ts +22 -2
- package/dist/types/components/picker-legacy/animations/ios.enter.d.ts +5 -0
- package/dist/types/components/picker-legacy/animations/ios.leave.d.ts +5 -0
- package/dist/types/components/picker-legacy/picker-interface.d.ts +52 -0
- package/dist/types/components/picker-legacy/picker.d.ts +158 -0
- package/dist/types/components/picker-legacy-column/picker-column.d.ts +46 -0
- package/dist/types/components/picker-legacy-column/test/test.utils.d.ts +9 -0
- package/dist/types/components/route/route.d.ts +1 -1
- package/dist/types/components/router-outlet/router-outlet.d.ts +0 -7
- package/dist/types/components/searchbar/searchbar.d.ts +1 -1
- package/dist/types/components/select/select-interface.d.ts +0 -31
- package/dist/types/components/select/select.d.ts +6 -30
- package/dist/types/components/select-option/select-option.d.ts +1 -42
- package/dist/types/components/textarea/textarea.d.ts +5 -12
- package/dist/types/components.d.ts +311 -74
- package/dist/types/index.d.ts +1 -1
- package/dist/types/interface.d.ts +1 -0
- package/dist/types/utils/config.d.ts +8 -1
- package/dist/types/utils/forms/index.d.ts +0 -1
- package/dist/types/utils/helpers.d.ts +8 -5
- package/dist/types/utils/logging/index.d.ts +1 -2
- package/dist/types/utils/overlays.d.ts +9 -11
- package/dist/types/utils/rtl/dir.d.ts +10 -4
- package/dist/types/utils/sanitization/index.d.ts +2 -58
- 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 +7265 -10630
- package/hydrate/index.mjs +7265 -10630
- package/package.json +12 -55
- package/components/p--m5cCjbK.js +0 -4
- package/components/p-8FN7p701.js +0 -4
- package/components/p-B-FxiyeI.js +0 -4
- package/components/p-B4uHHhPK.js +0 -4
- package/components/p-BMPN55of.js +0 -4
- package/components/p-BMS4t-kJ.js +0 -4
- package/components/p-BOvLNVKq.js +0 -4
- package/components/p-BSQPZ79H.js +0 -4
- package/components/p-BWBigMsI.js +0 -4
- package/components/p-BZ4-QTes.js +0 -4
- package/components/p-BhamHSw3.js +0 -4
- package/components/p-BjluhQMI.js +0 -4
- package/components/p-BlsIikdZ.js +0 -4
- package/components/p-Blug1Vxu.js +0 -4
- package/components/p-BpG8kBfD.js +0 -4
- package/components/p-BqPNzJf6.js +0 -4
- package/components/p-C5KYjZWD.js +0 -4
- package/components/p-C91npEel.js +0 -4
- package/components/p-C9BGR5fy.js +0 -4
- package/components/p-CD4fmpem.js +0 -4
- package/components/p-CEW4RXZO.js +0 -4
- package/components/p-CKhiNOEg.js +0 -4
- package/components/p-CO2zzh3W.js +0 -4
- package/components/p-CVb3x_r3.js +0 -4
- package/components/p-CWLrHG8Y.js +0 -4
- package/components/p-CbhUdtjf.js +0 -4
- package/components/p-CejmQs3h.js +0 -4
- package/components/p-CfnNZz_d.js +0 -4
- package/components/p-CmKf4pgI.js +0 -4
- package/components/p-Cs5f-uOS.js +0 -4
- package/components/p-D7-vHX0A.js +0 -4
- package/components/p-DKrhJJV0.js +0 -4
- package/components/p-DRfgH82D.js +0 -4
- package/components/p-DSzSbVP2.js +0 -4
- package/components/p-DVKS-ovH.js +0 -4
- package/components/p-DWCzVL3Y.js +0 -4
- package/components/p-Dd8ajo9a.js +0 -4
- package/components/p-DdnhY_oj.js +0 -4
- package/components/p-DgZOZQjJ.js +0 -4
- package/components/p-Dmd2xqCe.js +0 -4
- package/components/p-G0TxqHfe.js +0 -4
- package/components/p-GG5GhznE.js +0 -4
- package/components/p-J-p0EtHR.js +0 -4
- package/components/p-LXu5-6Ti.js +0 -4
- package/components/p-TXPDHL13.js +0 -4
- package/components/p-UQSiXX2Z.js +0 -4
- package/components/p-UuPYCOZE.js +0 -4
- package/components/p-WeeS7GvC.js +0 -4
- package/components/p-_IKFD3ID.js +0 -4
- package/components/p-byZM6qHV.js +0 -4
- package/components/p-hh7qIC-X.js +0 -4
- package/components/p-idq4JFo2.js +0 -4
- package/components/p-qT1szVjw.js +0 -4
- package/components/p-wzAhIh03.js +0 -4
- package/components/p-ypuYdSDB.js +0 -4
- package/components/p-yuj4Nkm_.js +0 -4
- package/dist/cjs/config-CjUbvdPW.js +0 -36
- package/dist/cjs/dir-Brx7VkvP.js +0 -20
- package/dist/cjs/index-B7zJsYWS.js +0 -429
- package/dist/cjs/input.utils-BZdMWVrt.js +0 -35
- package/dist/cjs/ion-datetime.cjs.entry.js +0 -2770
- package/dist/cjs/overlay-control-label-D2sdL2O8.js +0 -50
- package/dist/cjs/select-option-render-pULCGldr.js +0 -123
- package/dist/cjs/slot-mutation-controller-CgTGFqlW.js +0 -397
- package/dist/collection/utils/forms/start-container-controller.js +0 -132
- package/dist/collection/utils/overlay-control-label.js +0 -45
- package/dist/collection/utils/select-option-render.js +0 -118
- package/dist/esm/config-DWCzVL3Y.js +0 -32
- package/dist/esm/dir-B-FxiyeI.js +0 -18
- package/dist/esm/index-CKM1DdGm.js +0 -424
- package/dist/esm/input.utils-B1ValN_N.js +0 -33
- package/dist/esm/ion-datetime.entry.js +0 -2768
- package/dist/esm/overlay-control-label-BSQPZ79H.js +0 -47
- package/dist/esm/select-option-render-C4m76VGH.js +0 -121
- package/dist/esm/slot-mutation-controller-u741eD3Z.js +0 -393
- package/dist/ionic/p-06533d51.entry.js +0 -4
- package/dist/ionic/p-0FNc80PN.js +0 -4
- package/dist/ionic/p-141f5b47.entry.js +0 -4
- package/dist/ionic/p-14a5e8f5.entry.js +0 -4
- package/dist/ionic/p-19269e04.entry.js +0 -4
- package/dist/ionic/p-19abbc33.entry.js +0 -4
- package/dist/ionic/p-1edf0573.entry.js +0 -4
- package/dist/ionic/p-4204184c.entry.js +0 -4
- package/dist/ionic/p-4bc3ecdb.entry.js +0 -4
- package/dist/ionic/p-4eOQC00Z.js +0 -4
- package/dist/ionic/p-4eed9ca1.entry.js +0 -4
- package/dist/ionic/p-53bac1c9.entry.js +0 -4
- package/dist/ionic/p-5506caeb.entry.js +0 -4
- package/dist/ionic/p-5521dc1f.entry.js +0 -4
- package/dist/ionic/p-5993a77f.entry.js +0 -4
- package/dist/ionic/p-5c3626de.entry.js +0 -4
- package/dist/ionic/p-5d3b411c.entry.js +0 -4
- package/dist/ionic/p-60576951.entry.js +0 -4
- package/dist/ionic/p-7116e558.entry.js +0 -4
- package/dist/ionic/p-711a8319.entry.js +0 -4
- package/dist/ionic/p-71419a55.entry.js +0 -4
- package/dist/ionic/p-79325ffe.entry.js +0 -4
- package/dist/ionic/p-7bb3e957.entry.js +0 -4
- package/dist/ionic/p-82525fb0.entry.js +0 -4
- package/dist/ionic/p-84a38904.entry.js +0 -4
- package/dist/ionic/p-865fa114.entry.js +0 -4
- package/dist/ionic/p-8e1d9e3a.entry.js +0 -4
- package/dist/ionic/p-8f204f1e.entry.js +0 -4
- package/dist/ionic/p-9055e897.entry.js +0 -4
- package/dist/ionic/p-9658e083.entry.js +0 -4
- package/dist/ionic/p-988baee1.entry.js +0 -4
- package/dist/ionic/p-9nmHvEvw.js +0 -4
- package/dist/ionic/p-B-FxiyeI.js +0 -4
- package/dist/ionic/p-BB0LlG4y.js +0 -4
- package/dist/ionic/p-BMPN55of.js +0 -4
- package/dist/ionic/p-BQ8oNV0v.js +0 -4
- package/dist/ionic/p-BSQPZ79H.js +0 -4
- package/dist/ionic/p-BhamHSw3.js +0 -4
- package/dist/ionic/p-BjvtSsVI.js +0 -4
- package/dist/ionic/p-BwIp10KV.js +0 -4
- package/dist/ionic/p-C-94tAim.js +0 -4
- package/dist/ionic/p-C6eME8Ey.js +0 -4
- package/dist/ionic/p-CKUuSnDR.js +0 -4
- package/dist/ionic/p-CMRtMbJc.js +0 -4
- package/dist/ionic/p-CPcPmkGv.js +0 -4
- package/dist/ionic/p-CaRuIadB.js +0 -4
- package/dist/ionic/p-Cdjxf_yg.js +0 -4
- package/dist/ionic/p-ChhhtsGZ.js +0 -5
- package/dist/ionic/p-CmKf4pgI.js +0 -4
- package/dist/ionic/p-D5t_-oMk.js +0 -4
- package/dist/ionic/p-D94b61er.js +0 -4
- package/dist/ionic/p-DAztxQR0.js +0 -4
- package/dist/ionic/p-DCI3rXQo.js +0 -4
- package/dist/ionic/p-DDhtUaaA.js +0 -4
- package/dist/ionic/p-DWCzVL3Y.js +0 -4
- package/dist/ionic/p-DkUB-ROc.js +0 -4
- package/dist/ionic/p-Dn0mqQ_R.js +0 -4
- package/dist/ionic/p-T71k3C35.js +0 -4
- package/dist/ionic/p-TXPDHL13.js +0 -4
- package/dist/ionic/p-a71232d6.entry.js +0 -4
- package/dist/ionic/p-a73d8742.entry.js +0 -4
- package/dist/ionic/p-a8421d18.entry.js +0 -4
- package/dist/ionic/p-a8c2c343.entry.js +0 -4
- package/dist/ionic/p-acf0a6af.entry.js +0 -4
- package/dist/ionic/p-ad98e3ff.entry.js +0 -4
- package/dist/ionic/p-af5166f5.entry.js +0 -4
- package/dist/ionic/p-bc2bad5f.entry.js +0 -4
- package/dist/ionic/p-be08d500.entry.js +0 -4
- package/dist/ionic/p-be9a4f51.entry.js +0 -4
- package/dist/ionic/p-byZM6qHV.js +0 -4
- package/dist/ionic/p-ccc5044d.entry.js +0 -4
- package/dist/ionic/p-ce32912b.entry.js +0 -4
- package/dist/ionic/p-ded69ceb.entry.js +0 -4
- package/dist/ionic/p-e0c6e31e.entry.js +0 -4
- package/dist/ionic/p-e1e5b507.entry.js +0 -4
- package/dist/ionic/p-e8c3e08a.entry.js +0 -4
- package/dist/ionic/p-ed5d540d.entry.js +0 -4
- package/dist/ionic/p-f046aa37.entry.js +0 -4
- package/dist/ionic/p-f2802440.entry.js +0 -4
- package/dist/ionic/p-f402f5a4.entry.js +0 -4
- package/dist/ionic/p-fe1bfbcf.entry.js +0 -4
- package/dist/types/utils/forms/start-container-controller.d.ts +0 -34
- package/dist/types/utils/overlay-control-label.d.ts +0 -32
- package/dist/types/utils/select-option-render.d.ts +0 -53
- /package/components/{p-LpMHEu3v.js → p-CO7fmmxt.js} +0 -0
|
@@ -314,9 +314,10 @@ const focusItem = (item) => {
|
|
|
314
314
|
export const isTriggerElement = (el) => el.hasAttribute('data-ion-popover-trigger');
|
|
315
315
|
export const configureKeyboardInteraction = (popoverEl) => {
|
|
316
316
|
const callback = async (ev) => {
|
|
317
|
+
var _a;
|
|
317
318
|
const activeElement = document.activeElement;
|
|
318
319
|
let items = [];
|
|
319
|
-
const targetTagName = ev.target
|
|
320
|
+
const targetTagName = (_a = ev.target) === null || _a === void 0 ? void 0 : _a.tagName;
|
|
320
321
|
/**
|
|
321
322
|
* Only handle custom keyboard interactions for the host popover element
|
|
322
323
|
* and children ion-item elements.
|
|
@@ -337,7 +338,7 @@ export const configureKeyboardInteraction = (popoverEl) => {
|
|
|
337
338
|
items = Array.from(popoverEl.querySelectorAll('ion-item:not(ion-popover ion-popover *):not([disabled])'));
|
|
338
339
|
/* eslint-disable-next-line */
|
|
339
340
|
}
|
|
340
|
-
catch { }
|
|
341
|
+
catch (_b) { }
|
|
341
342
|
switch (ev.key) {
|
|
342
343
|
/**
|
|
343
344
|
* If we are in a child popover
|
|
@@ -420,6 +421,7 @@ export const configureKeyboardInteraction = (popoverEl) => {
|
|
|
420
421
|
* and viewport dimensions.
|
|
421
422
|
*/
|
|
422
423
|
export const getPopoverPosition = (isRTL, contentWidth, contentHeight, arrowWidth, arrowHeight, reference, side, align, defaultPosition, triggerEl, event) => {
|
|
424
|
+
var _a;
|
|
423
425
|
let referenceCoordinates = {
|
|
424
426
|
top: 0,
|
|
425
427
|
left: 0,
|
|
@@ -464,8 +466,8 @@ export const getPopoverPosition = (isRTL, contentWidth, contentHeight, arrowWidt
|
|
|
464
466
|
* as a whole.
|
|
465
467
|
*/
|
|
466
468
|
const actualTriggerEl = (triggerEl ||
|
|
467
|
-
customEv
|
|
468
|
-
customEv
|
|
469
|
+
((_a = customEv === null || customEv === void 0 ? void 0 : customEv.detail) === null || _a === void 0 ? void 0 : _a.ionShadowTarget) ||
|
|
470
|
+
(customEv === null || customEv === void 0 ? void 0 : customEv.target));
|
|
469
471
|
if (!actualTriggerEl) {
|
|
470
472
|
return defaultPosition;
|
|
471
473
|
}
|
|
@@ -15,39 +15,35 @@ import { getIonMode } from "../../global/ionic-global";
|
|
|
15
15
|
* width of the `buffer` value.
|
|
16
16
|
*/
|
|
17
17
|
export class ProgressBar {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
* Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
|
|
41
|
-
* For more information on colors, see [theming](/docs/theming/basics).
|
|
42
|
-
*/
|
|
43
|
-
color;
|
|
18
|
+
constructor() {
|
|
19
|
+
/**
|
|
20
|
+
* The state of the progress bar, based on if the time the process takes is known or not.
|
|
21
|
+
* Default options are: `"determinate"` (no animation), `"indeterminate"` (animate from left to right).
|
|
22
|
+
*/
|
|
23
|
+
this.type = 'determinate';
|
|
24
|
+
/**
|
|
25
|
+
* If true, reverse the progress bar direction.
|
|
26
|
+
*/
|
|
27
|
+
this.reversed = false;
|
|
28
|
+
/**
|
|
29
|
+
* The value determines how much of the active bar should display when the
|
|
30
|
+
* `type` is `"determinate"`.
|
|
31
|
+
* The value should be between [0, 1].
|
|
32
|
+
*/
|
|
33
|
+
this.value = 0;
|
|
34
|
+
/**
|
|
35
|
+
* If the buffer and value are smaller than 1, the buffer circles will show.
|
|
36
|
+
* The buffer should be between [0, 1].
|
|
37
|
+
*/
|
|
38
|
+
this.buffer = 1;
|
|
39
|
+
}
|
|
44
40
|
render() {
|
|
45
41
|
const { color, type, reversed, value, buffer } = this;
|
|
46
42
|
const paused = config.getBoolean('_testing');
|
|
47
43
|
const mode = getIonMode(this);
|
|
48
44
|
// If the progress is displayed as a solid bar.
|
|
49
45
|
const progressSolid = buffer === 1;
|
|
50
|
-
return (h(Host, { key: '
|
|
46
|
+
return (h(Host, { key: 'c859e48f3d24a458239e36d925e5dc003ed07c6b', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: createColorClasses(color, {
|
|
51
47
|
[mode]: true,
|
|
52
48
|
[`progress-bar-${type}`]: true,
|
|
53
49
|
'progress-paused': paused,
|
|
@@ -16,37 +16,68 @@ import { getIonMode } from "../../global/ionic-global";
|
|
|
16
16
|
* @part mark - The checkmark or dot used to indicate the checked state.
|
|
17
17
|
*/
|
|
18
18
|
export class Radio {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
19
|
+
constructor() {
|
|
20
|
+
this.inputId = `ion-rb-${radioButtonIds++}`;
|
|
21
|
+
this.radioGroup = null;
|
|
22
|
+
/**
|
|
23
|
+
* If `true`, the radio is selected.
|
|
24
|
+
*/
|
|
25
|
+
this.checked = false;
|
|
26
|
+
/**
|
|
27
|
+
* The tabindex of the radio button.
|
|
28
|
+
* @internal
|
|
29
|
+
*/
|
|
30
|
+
this.buttonTabindex = -1;
|
|
31
|
+
/**
|
|
32
|
+
* The name of the control, which is submitted with the form data.
|
|
33
|
+
*/
|
|
34
|
+
this.name = this.inputId;
|
|
35
|
+
/**
|
|
36
|
+
* If `true`, the user cannot interact with the radio.
|
|
37
|
+
*/
|
|
38
|
+
this.disabled = false;
|
|
39
|
+
/**
|
|
40
|
+
* Where to place the label relative to the radio.
|
|
41
|
+
* `"start"`: The label will appear to the left of the radio in LTR and to the right in RTL.
|
|
42
|
+
* `"end"`: The label will appear to the right of the radio in LTR and to the left in RTL.
|
|
43
|
+
* `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("...").
|
|
44
|
+
* `"stacked"`: The label will appear above the radio regardless of the direction. The alignment of the label can be controlled with the `alignment` property.
|
|
45
|
+
*/
|
|
46
|
+
this.labelPlacement = 'start';
|
|
47
|
+
this.updateState = () => {
|
|
48
|
+
if (this.radioGroup) {
|
|
49
|
+
const { compareWith, value: radioGroupValue } = this.radioGroup;
|
|
50
|
+
this.checked = isOptionSelected(radioGroupValue, this.value, compareWith);
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
this.onClick = () => {
|
|
54
|
+
const { radioGroup, checked, disabled } = this;
|
|
55
|
+
if (disabled) {
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* The modern control does not use a native input
|
|
60
|
+
* inside of the radio host, so we cannot rely on the
|
|
61
|
+
* ev.preventDefault() behavior above. If the radio
|
|
62
|
+
* is checked and the parent radio group allows for empty
|
|
63
|
+
* selection, then we can set the checked state to false.
|
|
64
|
+
* Otherwise, the checked state should always be set
|
|
65
|
+
* to true because the checked state cannot be toggled.
|
|
66
|
+
*/
|
|
67
|
+
if (checked && (radioGroup === null || radioGroup === void 0 ? void 0 : radioGroup.allowEmptySelection)) {
|
|
68
|
+
this.checked = false;
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
this.checked = true;
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
this.onFocus = () => {
|
|
75
|
+
this.ionFocus.emit();
|
|
76
|
+
};
|
|
77
|
+
this.onBlur = () => {
|
|
78
|
+
this.ionBlur.emit();
|
|
79
|
+
};
|
|
80
|
+
}
|
|
50
81
|
valueChanged() {
|
|
51
82
|
/**
|
|
52
83
|
* The new value of the radio may
|
|
@@ -55,40 +86,6 @@ export class Radio {
|
|
|
55
86
|
*/
|
|
56
87
|
this.updateState();
|
|
57
88
|
}
|
|
58
|
-
/**
|
|
59
|
-
* Where to place the label relative to the radio.
|
|
60
|
-
* `"start"`: The label will appear to the left of the radio in LTR and to the right in RTL.
|
|
61
|
-
* `"end"`: The label will appear to the right of the radio in LTR and to the left in RTL.
|
|
62
|
-
* `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("...").
|
|
63
|
-
* `"stacked"`: The label will appear above the radio regardless of the direction. The alignment of the label can be controlled with the `alignment` property.
|
|
64
|
-
*/
|
|
65
|
-
labelPlacement = 'start';
|
|
66
|
-
/**
|
|
67
|
-
* How to pack the label and radio within a line.
|
|
68
|
-
* `"start"`: The label and radio will appear on the left in LTR and
|
|
69
|
-
* on the right in RTL.
|
|
70
|
-
* `"end"`: The label and radio will appear on the right in LTR and
|
|
71
|
-
* on the left in RTL.
|
|
72
|
-
* `"space-between"`: The label and radio will appear on opposite
|
|
73
|
-
* ends of the line with space between the two elements.
|
|
74
|
-
* Setting this property will change the radio `display` to `block`.
|
|
75
|
-
*/
|
|
76
|
-
justify;
|
|
77
|
-
/**
|
|
78
|
-
* How to control the alignment of the radio and label on the cross axis.
|
|
79
|
-
* `"start"`: The label and control will appear on the left of the cross axis in LTR, and on the right side in RTL.
|
|
80
|
-
* `"center"`: The label and control will appear at the center of the cross axis in both LTR and RTL.
|
|
81
|
-
* Setting this property will change the radio `display` to `block`.
|
|
82
|
-
*/
|
|
83
|
-
alignment;
|
|
84
|
-
/**
|
|
85
|
-
* Emitted when the radio button has focus.
|
|
86
|
-
*/
|
|
87
|
-
ionFocus;
|
|
88
|
-
/**
|
|
89
|
-
* Emitted when the radio button loses focus.
|
|
90
|
-
*/
|
|
91
|
-
ionBlur;
|
|
92
89
|
componentDidLoad() {
|
|
93
90
|
/**
|
|
94
91
|
* The value may be `undefined` if it
|
|
@@ -134,39 +131,6 @@ export class Radio {
|
|
|
134
131
|
this.itemFocusObserver = undefined;
|
|
135
132
|
}
|
|
136
133
|
}
|
|
137
|
-
updateState = () => {
|
|
138
|
-
if (this.radioGroup) {
|
|
139
|
-
const { compareWith, value: radioGroupValue } = this.radioGroup;
|
|
140
|
-
this.checked = isOptionSelected(radioGroupValue, this.value, compareWith);
|
|
141
|
-
}
|
|
142
|
-
};
|
|
143
|
-
onClick = () => {
|
|
144
|
-
const { radioGroup, checked, disabled } = this;
|
|
145
|
-
if (disabled) {
|
|
146
|
-
return;
|
|
147
|
-
}
|
|
148
|
-
/**
|
|
149
|
-
* The modern control does not use a native input
|
|
150
|
-
* inside of the radio host, so we cannot rely on the
|
|
151
|
-
* ev.preventDefault() behavior above. If the radio
|
|
152
|
-
* is checked and the parent radio group allows for empty
|
|
153
|
-
* selection, then we can set the checked state to false.
|
|
154
|
-
* Otherwise, the checked state should always be set
|
|
155
|
-
* to true because the checked state cannot be toggled.
|
|
156
|
-
*/
|
|
157
|
-
if (checked && radioGroup?.allowEmptySelection) {
|
|
158
|
-
this.checked = false;
|
|
159
|
-
}
|
|
160
|
-
else {
|
|
161
|
-
this.checked = true;
|
|
162
|
-
}
|
|
163
|
-
};
|
|
164
|
-
onFocus = () => {
|
|
165
|
-
this.ionFocus.emit();
|
|
166
|
-
};
|
|
167
|
-
onBlur = () => {
|
|
168
|
-
this.ionBlur.emit();
|
|
169
|
-
};
|
|
170
134
|
get hasLabel() {
|
|
171
135
|
return this.el.textContent !== '';
|
|
172
136
|
}
|
|
@@ -178,7 +142,7 @@ export class Radio {
|
|
|
178
142
|
const mode = getIonMode(this);
|
|
179
143
|
const inItem = hostContext('ion-item', el);
|
|
180
144
|
const inMultipleInputsItem = hostContext('ion-item.item-multiple-inputs', el);
|
|
181
|
-
return (h(Host, { key: '
|
|
145
|
+
return (h(Host, { key: '8622be22eb4f0bab791b479c813c490e21fd9ad8', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses(color, {
|
|
182
146
|
[mode]: true,
|
|
183
147
|
'in-item': inItem,
|
|
184
148
|
'radio-checked': checked,
|
|
@@ -191,10 +155,10 @@ export class Radio {
|
|
|
191
155
|
// styling stays suppressed either way.
|
|
192
156
|
'ion-activatable': !inItem,
|
|
193
157
|
'ion-focusable': !inItem || inMultipleInputsItem,
|
|
194
|
-
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, h("label", { key: '
|
|
158
|
+
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, h("label", { key: 'fb358e14faf37142ccad169adb729f3129371406', class: "radio-wrapper" }, h("div", { key: '844ab615aadf6eef46368ad060afaca9c4222cc1', class: {
|
|
195
159
|
'label-text-wrapper': true,
|
|
196
160
|
'label-text-wrapper-hidden': !hasLabel,
|
|
197
|
-
}, part: "label" }, h("slot", { key: '
|
|
161
|
+
}, part: "label" }, h("slot", { key: 'a57e53d65afda0f2082071c911343a0eb02a00a6' })), h("div", { key: '206ff11e9c2c1946a389f96a3e642335e9c3add6', class: "native-wrapper" }, this.renderRadioControl()))));
|
|
198
162
|
}
|
|
199
163
|
static get is() { return "ion-radio"; }
|
|
200
164
|
static get encapsulation() { return "shadow"; }
|
|
@@ -294,7 +258,7 @@ export class Radio {
|
|
|
294
258
|
},
|
|
295
259
|
"getter": false,
|
|
296
260
|
"setter": false,
|
|
297
|
-
"reflect":
|
|
261
|
+
"reflect": false,
|
|
298
262
|
"attribute": "value"
|
|
299
263
|
},
|
|
300
264
|
"labelPlacement": {
|
|
@@ -6,63 +6,74 @@ import { checkInvalidState } from "../../utils/forms/index";
|
|
|
6
6
|
import { renderHiddenInput } from "../../utils/helpers";
|
|
7
7
|
import { getIonMode } from "../../global/ionic-global";
|
|
8
8
|
export class RadioGroup {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
9
|
+
constructor() {
|
|
10
|
+
this.inputId = `ion-rg-${radioGroupIds++}`;
|
|
11
|
+
this.helperTextId = `${this.inputId}-helper-text`;
|
|
12
|
+
this.errorTextId = `${this.inputId}-error-text`;
|
|
13
|
+
this.labelId = `${this.inputId}-lbl`;
|
|
14
|
+
/**
|
|
15
|
+
* Track validation state for proper aria-live announcements.
|
|
16
|
+
*/
|
|
17
|
+
this.isInvalid = false;
|
|
18
|
+
/**
|
|
19
|
+
* If `true`, the radios can be deselected.
|
|
20
|
+
*/
|
|
21
|
+
this.allowEmptySelection = false;
|
|
22
|
+
/**
|
|
23
|
+
* The name of the control, which is submitted with the form data.
|
|
24
|
+
*/
|
|
25
|
+
this.name = this.inputId;
|
|
26
|
+
this.setRadioTabindex = (value) => {
|
|
27
|
+
const radios = this.getRadios();
|
|
28
|
+
// Get the first radio that is not disabled and the checked one
|
|
29
|
+
const first = radios.find((radio) => !radio.disabled);
|
|
30
|
+
const checked = radios.find((radio) => radio.value === value && !radio.disabled);
|
|
31
|
+
if (!first && !checked) {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
// If an enabled checked radio exists, set it to be the focusable radio
|
|
35
|
+
// otherwise we default to focus the first radio
|
|
36
|
+
const focusable = checked || first;
|
|
37
|
+
for (const radio of radios) {
|
|
38
|
+
const tabindex = radio === focusable ? 0 : -1;
|
|
39
|
+
radio.setButtonTabindex(tabindex);
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
this.onClick = (ev) => {
|
|
43
|
+
ev.preventDefault();
|
|
44
|
+
/**
|
|
45
|
+
* The Radio Group component mandates that only one radio button
|
|
46
|
+
* within the group can be selected at any given time. Since `ion-radio`
|
|
47
|
+
* is a shadow DOM component, it cannot natively perform this behavior
|
|
48
|
+
* using the `name` attribute.
|
|
49
|
+
*/
|
|
50
|
+
const selectedRadio = ev.target && ev.target.closest('ion-radio');
|
|
51
|
+
/**
|
|
52
|
+
* Our current disabled prop definition causes Stencil to mark it
|
|
53
|
+
* as optional. While this is not desired, fixing this behavior
|
|
54
|
+
* in Stencil is a significant breaking change, so this effort is
|
|
55
|
+
* being de-risked in STENCIL-917. Until then, we compromise
|
|
56
|
+
* here by checking for falsy `disabled` values instead of strictly
|
|
57
|
+
* checking `disabled === false`.
|
|
58
|
+
*/
|
|
59
|
+
if (selectedRadio && !selectedRadio.disabled) {
|
|
60
|
+
const currentValue = this.value;
|
|
61
|
+
const newValue = selectedRadio.value;
|
|
62
|
+
if (newValue !== currentValue) {
|
|
63
|
+
this.value = newValue;
|
|
64
|
+
this.emitValueChange(ev);
|
|
65
|
+
}
|
|
66
|
+
else if (this.allowEmptySelection) {
|
|
67
|
+
this.value = undefined;
|
|
68
|
+
this.emitValueChange(ev);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
}
|
|
48
73
|
valueChanged(value) {
|
|
49
74
|
this.setRadioTabindex(value);
|
|
50
75
|
this.ionValueChange.emit({ value });
|
|
51
76
|
}
|
|
52
|
-
/**
|
|
53
|
-
* Emitted when the value has changed.
|
|
54
|
-
*
|
|
55
|
-
* This event will not emit when programmatically setting the `value` property.
|
|
56
|
-
*/
|
|
57
|
-
ionChange;
|
|
58
|
-
/**
|
|
59
|
-
* Emitted when the `value` property has changed.
|
|
60
|
-
* This is used to ensure that `ion-radio` can respond
|
|
61
|
-
* to any value property changes from the group.
|
|
62
|
-
*
|
|
63
|
-
* @internal
|
|
64
|
-
*/
|
|
65
|
-
ionValueChange;
|
|
66
77
|
componentDidLoad() {
|
|
67
78
|
/**
|
|
68
79
|
* There's an issue when assigning a value to the radio group
|
|
@@ -75,22 +86,6 @@ export class RadioGroup {
|
|
|
75
86
|
*/
|
|
76
87
|
this.valueChanged(this.value);
|
|
77
88
|
}
|
|
78
|
-
setRadioTabindex = (value) => {
|
|
79
|
-
const radios = this.getRadios();
|
|
80
|
-
// Get the first radio that is not disabled and the checked one
|
|
81
|
-
const first = radios.find((radio) => !radio.disabled);
|
|
82
|
-
const checked = radios.find((radio) => radio.value === value && !radio.disabled);
|
|
83
|
-
if (!first && !checked) {
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
// If an enabled checked radio exists, set it to be the focusable radio
|
|
87
|
-
// otherwise we default to focus the first radio
|
|
88
|
-
const focusable = checked || first;
|
|
89
|
-
for (const radio of radios) {
|
|
90
|
-
const tabindex = radio === focusable ? 0 : -1;
|
|
91
|
-
radio.setButtonTabindex(tabindex);
|
|
92
|
-
}
|
|
93
|
-
};
|
|
94
89
|
async connectedCallback() {
|
|
95
90
|
// Get the list header if it exists and set the id
|
|
96
91
|
// this is used to set aria-labelledby
|
|
@@ -161,36 +156,6 @@ export class RadioGroup {
|
|
|
161
156
|
const { value } = this;
|
|
162
157
|
this.ionChange.emit({ value, event });
|
|
163
158
|
}
|
|
164
|
-
onClick = (ev) => {
|
|
165
|
-
ev.preventDefault();
|
|
166
|
-
/**
|
|
167
|
-
* The Radio Group component mandates that only one radio button
|
|
168
|
-
* within the group can be selected at any given time. Since `ion-radio`
|
|
169
|
-
* is a shadow DOM component, it cannot natively perform this behavior
|
|
170
|
-
* using the `name` attribute.
|
|
171
|
-
*/
|
|
172
|
-
const selectedRadio = ev.target && ev.target.closest('ion-radio');
|
|
173
|
-
/**
|
|
174
|
-
* Our current disabled prop definition causes Stencil to mark it
|
|
175
|
-
* as optional. While this is not desired, fixing this behavior
|
|
176
|
-
* in Stencil is a significant breaking change, so this effort is
|
|
177
|
-
* being de-risked in STENCIL-917. Until then, we compromise
|
|
178
|
-
* here by checking for falsy `disabled` values instead of strictly
|
|
179
|
-
* checking `disabled === false`.
|
|
180
|
-
*/
|
|
181
|
-
if (selectedRadio && !selectedRadio.disabled) {
|
|
182
|
-
const currentValue = this.value;
|
|
183
|
-
const newValue = selectedRadio.value;
|
|
184
|
-
if (newValue !== currentValue) {
|
|
185
|
-
this.value = newValue;
|
|
186
|
-
this.emitValueChange(ev);
|
|
187
|
-
}
|
|
188
|
-
else if (this.allowEmptySelection) {
|
|
189
|
-
this.value = undefined;
|
|
190
|
-
this.emitValueChange(ev);
|
|
191
|
-
}
|
|
192
|
-
}
|
|
193
|
-
};
|
|
194
159
|
onKeydown(ev) {
|
|
195
160
|
// We don't want the value to automatically change/emit when the radio group is part of a select interface
|
|
196
161
|
// as this will cause the interface to close when navigating through the radio group options
|
|
@@ -258,7 +223,7 @@ export class RadioGroup {
|
|
|
258
223
|
/** @internal */
|
|
259
224
|
async setFocus() {
|
|
260
225
|
const radioToFocus = this.getRadios().find((r) => r.tabIndex !== -1);
|
|
261
|
-
radioToFocus
|
|
226
|
+
radioToFocus === null || radioToFocus === void 0 ? void 0 : radioToFocus.setFocus();
|
|
262
227
|
}
|
|
263
228
|
/**
|
|
264
229
|
* Renders the helper text or error text values
|
|
@@ -285,7 +250,7 @@ export class RadioGroup {
|
|
|
285
250
|
const { label, labelId, el, name, value } = this;
|
|
286
251
|
const mode = getIonMode(this);
|
|
287
252
|
renderHiddenInput(true, el, name, value, false);
|
|
288
|
-
return (h(Host, { key: '
|
|
253
|
+
return (h(Host, { key: '377e4aa3a656cc84b742f9d7a7d4be65d20c69f5', role: "radiogroup", "aria-labelledby": label ? labelId : null, "aria-describedby": this.hintTextId, "aria-invalid": this.isInvalid ? 'true' : undefined, onClick: this.onClick, class: mode }, this.renderHintText(), h("slot", { key: 'c3187a2497773b4f15cea3b413b036502bcec8c0' })));
|
|
289
254
|
}
|
|
290
255
|
static get is() { return "ion-radio-group"; }
|
|
291
256
|
static get originalStyleUrls() {
|