@ionic/core 8.7.18 → 8.7.19-dev.11772655618.1af0949f
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.d.ts +2 -0
- package/components/index.js +1 -114
- package/components/ion-accordion-group.js +1 -268
- package/components/ion-accordion.js +1 -456
- package/components/ion-action-sheet.js +1 -6
- package/components/ion-alert.js +1 -6
- package/components/ion-app.js +1 -132
- package/components/ion-avatar.js +1 -41
- package/components/ion-back-button.js +1 -130
- package/components/ion-backdrop.js +1 -6
- package/components/ion-badge.js +1 -47
- package/components/ion-breadcrumb.js +1 -137
- package/components/ion-breadcrumbs.js +1 -164
- package/components/ion-button.js +1 -6
- package/components/ion-buttons.js +1 -6
- package/components/ion-card-content.js +1 -45
- package/components/ion-card-header.js +1 -56
- package/components/ion-card-subtitle.js +1 -48
- package/components/ion-card-title.js +1 -48
- package/components/ion-card.js +1 -107
- package/components/ion-checkbox.js +1 -6
- package/components/ion-chip.js +1 -66
- package/components/ion-col.js +1 -163
- package/components/ion-content.js +1 -6
- package/components/ion-datetime-button.js +1 -383
- package/components/ion-datetime.js +1 -2047
- package/components/ion-fab-button.js +1 -151
- package/components/ion-fab-list.js +1 -73
- package/components/ion-fab.js +1 -101
- package/components/ion-footer.js +1 -179
- package/components/ion-grid.js +1 -46
- package/components/ion-header.js +1 -6
- package/components/ion-icon.js +1 -6
- package/components/ion-img.js +1 -133
- package/components/ion-infinite-scroll-content.js +1 -69
- package/components/ion-infinite-scroll.js +1 -236
- package/components/ion-input-otp.js +1 -682
- package/components/ion-input-password-toggle.js +1 -128
- package/components/ion-input.js +1 -646
- package/components/ion-item-divider.js +1 -59
- package/components/ion-item-group.js +1 -46
- package/components/ion-item-option.js +1 -91
- package/components/ion-item-options.js +1 -73
- package/components/ion-item-sliding.js +1 -457
- package/components/ion-item.js +1 -6
- package/components/ion-label.js +1 -6
- package/components/ion-list-header.js +1 -6
- package/components/ion-list.js +1 -6
- package/components/ion-loading.js +1 -343
- package/components/ion-menu-button.js +1 -109
- package/components/ion-menu-toggle.js +1 -64
- package/components/ion-menu.js +1 -741
- package/components/ion-modal.js +1 -6
- package/components/ion-nav-link.js +1 -64
- package/components/ion-nav.js +1 -951
- package/components/ion-note.js +1 -47
- package/components/ion-picker-column-option.js +1 -6
- package/components/ion-picker-column.js +1 -6
- package/components/ion-picker-legacy-column.js +1 -6
- package/components/ion-picker-legacy.js +1 -342
- package/components/ion-picker.js +1 -6
- package/components/ion-popover.js +1 -6
- package/components/ion-progress-bar.js +1 -100
- package/components/ion-radio-group.js +1 -6
- package/components/ion-radio.js +1 -6
- package/components/ion-range.js +1 -844
- package/components/ion-refresher-content.js +1 -88
- package/components/ion-refresher.js +1 -750
- package/components/ion-reorder-group.js +1 -322
- package/components/ion-reorder.js +1 -60
- package/components/ion-ripple-effect.js +1 -6
- package/components/ion-route-redirect.js +1 -45
- package/components/ion-route.js +1 -74
- package/components/ion-router-link.js +1 -61
- package/components/ion-router-outlet.js +1 -226
- package/components/ion-router.js +1 -840
- package/components/ion-row.js +1 -36
- package/components/ion-searchbar.js +1 -540
- package/components/ion-segment-button.js +1 -173
- package/components/ion-segment-content.js +1 -35
- package/components/ion-segment-view.js +1 -142
- package/components/ion-segment.js +1 -602
- package/components/ion-select-modal.js +1 -6
- package/components/ion-select-option.js +1 -46
- package/components/ion-select-popover.js +1 -6
- package/components/ion-select.js +1 -1035
- package/components/ion-skeleton-text.js +1 -64
- package/components/ion-spinner.js +1 -6
- package/components/ion-split-pane.js +1 -190
- package/components/ion-tab-bar.js +1 -135
- package/components/ion-tab-button.js +1 -127
- package/components/ion-tab.js +1 -82
- package/components/ion-tabs.js +1 -204
- package/components/ion-text.js +1 -42
- package/components/ion-textarea.js +1 -554
- package/components/ion-thumbnail.js +1 -36
- package/components/ion-title.js +1 -6
- package/components/ion-toast.js +1 -938
- package/components/ion-toggle.js +1 -360
- package/components/ion-toolbar.js +1 -6
- package/components/p-1KVKSLu5.js +4 -0
- package/{dist/ionic/p-DUt5fQmA.js → components/p-9VcRUwdB.js} +1 -1
- package/components/p-ApmKVjaE.js +4 -0
- package/components/p-B-hirT0v.js +1 -35
- package/components/p-B6FQ0cKR.js +4 -0
- package/components/p-B6HaBl3o.js +4 -0
- package/components/p-B8b1Ukl9.js +4 -0
- package/components/p-BFxT89Wl.js +4 -0
- package/components/p-BJoMtgfR.js +4 -0
- package/components/p-BNAG-aVv.js +4 -0
- package/{dist/ionic/p-D-eFFUkA.js → components/p-BR3tZJmu.js} +1 -1
- package/{dist/ionic/p-D0dMcSkw.js → components/p-BS1TtEiJ.js} +1 -1
- package/components/p-BSB38Tek.js +4 -0
- package/components/p-BTEOs1at.js +1 -192
- package/components/p-BTeL5HCK.js +4 -0
- package/{dist/ionic/p-DbQ5QkTP.js → components/p-BUbsoBOV.js} +1 -1
- package/components/p-BVnB3eEn.js +4 -0
- package/components/p-BYDc3hSE.js +4 -0
- package/components/p-BagjAGC0.js +4 -0
- package/components/p-BegtE7nr.js +4 -0
- package/components/p-BgwEQWW6.js +4 -0
- package/components/p-Bk2zuNWT.js +4 -0
- package/components/p-BmVRXR1y.js +1 -72
- package/components/p-Bum_LjMh.js +4 -0
- package/components/p-BxwWvu-b.js +4 -0
- package/components/p-C4jPsTQa.js +4 -0
- package/components/p-C53feagD.js +1 -15
- package/{dist/ionic/p-CwgG81ZD.js → components/p-C59ryAuS.js} +1 -1
- package/components/p-C7AoMl7c.js +4 -0
- package/components/p-CBzELu-H.js +4 -0
- package/components/p-CDfQnFrd.js +4 -0
- package/components/p-CH0NYjKq.js +4 -0
- package/components/p-CIGNaXM1.js +1 -10
- package/components/p-CO7fmmxt.js +1 -29
- package/components/p-CU1SSH8_.js +4 -0
- package/components/p-CVF7ukTk.js +4 -0
- package/components/p-CgfaEEem.js +4 -0
- package/components/p-CgqKJg96.js +4 -0
- package/components/p-Cl0B-RWe.js +1 -452
- package/components/p-CneGxKsZ.js +4 -0
- package/components/p-CoA-aqGF.js +4 -0
- package/{dist/ionic/p-DdR6rpbR.js → components/p-Cq8cQ0NL.js} +1 -1
- package/components/p-Csw8xuz4.js +4 -0
- package/components/p-CtWGkNnJ.js +1 -162
- package/components/p-Cwv-vmkN.js +4 -0
- package/{dist/ionic/p-BYEqWnSg.js → components/p-Cy5XSfIk.js} +1 -1
- package/components/p-Cyxa_4PV.js +4 -0
- package/components/p-Cz5nLPGT.js +4 -0
- package/components/p-D13Eaw-8.js +1 -76
- package/components/p-D6NJwNJN.js +4 -0
- package/components/p-D6Ynv7Xh.js +1 -141
- package/components/p-DHsZWn1l.js +4 -0
- package/components/p-DJMZehmW.js +4 -0
- package/components/p-DJztqcrH.js +1 -14
- package/components/p-DYdpXONG.js +4 -0
- package/components/p-DgbT0exM.js +4 -0
- package/components/p-DiVJyqlX.js +1 -40
- package/components/p-Dtdm8lKC.js +1 -44
- package/components/p-YLXPWgVj.js +4 -0
- package/components/p-ZjP4CjeZ.js +1 -4
- package/{dist/ionic/p-DCv9sLH2.js → components/p-ak_d-z48.js} +1 -1
- package/components/p-cyNmxje6.js +1 -155
- package/components/p-fpbh6w3f.js +4 -0
- package/components/p-hHmYLOfE.js +1 -87
- package/components/p-kvaDs24J.js +4 -0
- package/components/p-vEbVo2hO.js +4 -0
- package/dist/cjs/{animation-Bt3H9L1C.js → animation-Dg4yiuR2.js} +1 -1
- package/dist/cjs/app-globals-CLI8xCmk.js +11 -0
- package/dist/cjs/{button-active-CMc8cD90.js → button-active-FscMI17-.js} +1 -1
- package/dist/cjs/{config-C5fsO43a.js → config-BukYi_pW.js} +1 -1
- package/dist/cjs/{data-JwZKaIQB.js → data-BYlBjkMU.js} +1 -1
- package/dist/cjs/{framework-delegate-DMJRBuDi.js → framework-delegate-CRgp8o_p.js} +1 -1
- package/dist/cjs/{hardware-back-button-VCK4V3mG.js → hardware-back-button-C4rMJ5uI.js} +1 -1
- package/dist/cjs/{helpers-DrTqNghc.js → helpers-CxTYJdbT.js} +1 -1
- package/dist/cjs/{index-094mMFB-.js → index-C845Ti6K.js} +4 -4
- package/dist/cjs/{index-DrMUZJj6.js → index-CFUwM5x_.js} +5 -5
- package/dist/cjs/{index-D6Wc6v08.js → index-CqT-2gKy.js} +503 -382
- package/dist/cjs/{index-CO6eryBo.js → index-MbaBbWXk.js} +2 -2
- package/dist/cjs/{index-C534ULug.js → index-YcSftOMz.js} +2 -2
- package/dist/cjs/index.cjs.js +12 -12
- package/dist/cjs/{input-shims-CuMghsQ-.js → input-shims-Dl5cnc_e.js} +3 -3
- package/dist/cjs/{input.utils-B_QROI2g.js → input.utils-DmeJ8dmo.js} +2 -2
- package/dist/cjs/ion-accordion_2.cjs.entry.js +23 -15
- package/dist/cjs/ion-action-sheet.cjs.entry.js +21 -15
- package/dist/cjs/ion-alert.cjs.entry.js +25 -17
- package/dist/cjs/ion-app_8.cjs.entry.js +48 -43
- package/dist/cjs/ion-avatar_3.cjs.entry.js +12 -12
- package/dist/cjs/ion-back-button.cjs.entry.js +7 -7
- package/dist/cjs/ion-backdrop.cjs.entry.js +6 -6
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +20 -14
- package/dist/cjs/ion-button_2.cjs.entry.js +36 -18
- package/dist/cjs/ion-card_5.cjs.entry.js +23 -23
- package/dist/cjs/ion-checkbox.cjs.entry.js +7 -7
- package/dist/cjs/ion-chip.cjs.entry.js +6 -6
- package/dist/cjs/ion-col_3.cjs.entry.js +8 -8
- package/dist/cjs/ion-datetime-button.cjs.entry.js +8 -8
- package/dist/cjs/ion-datetime_3.cjs.entry.js +75 -46
- package/dist/cjs/ion-fab_3.cjs.entry.js +17 -13
- package/dist/cjs/ion-img.cjs.entry.js +8 -6
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +17 -13
- package/dist/cjs/ion-input-otp.cjs.entry.js +16 -10
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +9 -7
- package/dist/cjs/ion-input.cjs.entry.js +21 -13
- package/dist/cjs/ion-item-option_3.cjs.entry.js +19 -17
- package/dist/cjs/ion-item_8.cjs.entry.js +48 -42
- package/dist/cjs/ion-loading.cjs.entry.js +18 -14
- package/dist/cjs/ion-menu_3.cjs.entry.js +30 -22
- package/dist/cjs/ion-modal.cjs.entry.js +237 -59
- package/dist/cjs/ion-nav_2.cjs.entry.js +14 -10
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +10 -8
- package/dist/cjs/ion-picker-column.cjs.entry.js +11 -7
- package/dist/cjs/ion-picker.cjs.entry.js +6 -6
- package/dist/cjs/ion-popover.cjs.entry.js +21 -15
- package/dist/cjs/ion-progress-bar.cjs.entry.js +7 -7
- package/dist/cjs/ion-radio_2.cjs.entry.js +17 -13
- package/dist/cjs/ion-range.cjs.entry.js +205 -57
- package/dist/cjs/ion-refresher_2.cjs.entry.js +45 -14
- package/dist/cjs/ion-reorder_2.cjs.entry.js +13 -11
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +4 -4
- package/dist/cjs/ion-route_4.cjs.entry.js +20 -10
- package/dist/cjs/ion-searchbar.cjs.entry.js +22 -12
- package/dist/cjs/ion-segment-content.cjs.entry.js +3 -3
- package/dist/cjs/ion-segment-view.cjs.entry.js +13 -8
- package/dist/cjs/ion-segment_2.cjs.entry.js +26 -16
- package/dist/cjs/ion-select-modal.cjs.entry.js +17 -13
- package/dist/cjs/ion-select_3.cjs.entry.js +33 -24
- package/dist/cjs/ion-spinner.cjs.entry.js +4 -4
- package/dist/cjs/ion-split-pane.cjs.entry.js +15 -9
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +14 -12
- package/dist/cjs/ion-tab_2.cjs.entry.js +10 -8
- package/dist/cjs/ion-text.cjs.entry.js +4 -4
- package/dist/cjs/ion-textarea.cjs.entry.js +20 -14
- package/dist/cjs/ion-toast.cjs.entry.js +21 -15
- package/dist/cjs/ion-toggle.cjs.entry.js +10 -8
- package/dist/cjs/{ionic-global-HMVqOFGO.js → ionic-global-Bc3kJi1Z.js} +1 -1
- package/dist/cjs/ionic.cjs.js +5 -5
- package/dist/cjs/{ios.transition-BOt_uW73.js → ios.transition-trBiC95R.js} +4 -4
- package/dist/cjs/loader.cjs.js +4 -4
- package/dist/cjs/{md.transition-Dt968VXB.js → md.transition-CUQECuvD.js} +4 -4
- package/dist/cjs/{notch-controller-Bzqhjm4f.js → notch-controller-sD-lTpdc.js} +1 -1
- package/dist/cjs/{overlays-B2b-TTbl.js → overlays-C2jiBSNQ.js} +5 -5
- package/dist/cjs/{status-tap-g0sWWkXk.js → status-tap-CCJk5VgT.js} +3 -3
- package/dist/cjs/{swipe-back-BIayeNOD.js → swipe-back-BGhTQ1CU.js} +2 -2
- package/dist/collection/collection-manifest.json +2 -2
- package/dist/collection/components/accordion-group/accordion-group.js +4 -2
- package/dist/collection/components/action-sheet/action-sheet.js +20 -10
- package/dist/collection/components/alert/alert.js +24 -12
- package/dist/collection/components/back-button/back-button.js +4 -2
- package/dist/collection/components/badge/badge.js +2 -1
- package/dist/collection/components/breadcrumb/breadcrumb.js +8 -4
- package/dist/collection/components/breadcrumbs/breadcrumbs.js +4 -2
- package/dist/collection/components/button/button.js +6 -3
- package/dist/collection/components/card/card.js +6 -3
- package/dist/collection/components/card-header/card-header.js +2 -1
- package/dist/collection/components/card-subtitle/card-subtitle.js +2 -1
- package/dist/collection/components/card-title/card-title.js +2 -1
- package/dist/collection/components/checkbox/checkbox.js +4 -2
- package/dist/collection/components/chip/chip.js +2 -1
- package/dist/collection/components/content/content.js +12 -7
- package/dist/collection/components/datetime/datetime.js +43 -22
- package/dist/collection/components/datetime-button/datetime-button.js +2 -1
- package/dist/collection/components/fab-button/fab-button.js +6 -3
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +4 -2
- package/dist/collection/components/input/input.js +11 -6
- package/dist/collection/components/input-otp/input-otp.js +8 -4
- package/dist/collection/components/input-password-toggle/input-password-toggle.js +4 -2
- package/dist/collection/components/item/item.js +10 -5
- package/dist/collection/components/item-divider/item-divider.js +7 -3
- package/dist/collection/components/item-option/item-option.js +6 -3
- package/dist/collection/components/item-options/item-options.js +2 -1
- package/dist/collection/components/item-sliding/item-sliding.js +2 -1
- package/dist/collection/components/label/label.js +6 -3
- package/dist/collection/components/list-header/list-header.js +6 -3
- package/dist/collection/components/loading/loading.js +22 -11
- package/dist/collection/components/menu/menu.js +10 -5
- package/dist/collection/components/menu-button/menu-button.js +2 -1
- package/dist/collection/components/modal/gestures/sheet.js +120 -12
- package/dist/collection/components/modal/gestures/swipe-to-close.js +54 -1
- package/dist/collection/components/modal/modal.js +127 -45
- package/dist/collection/components/nav/nav.js +89 -45
- package/dist/collection/components/nav-link/nav-link.js +9 -5
- package/dist/collection/components/note/note.js +2 -1
- package/dist/collection/components/picker/picker.js +2 -1
- package/dist/collection/components/picker-column/picker-column.js +6 -3
- package/dist/collection/components/picker-column-option/picker-column-option.js +2 -1
- package/dist/collection/components/picker-legacy/picker.js +24 -12
- package/dist/collection/components/picker-legacy-column/picker-column.js +4 -2
- package/dist/collection/components/popover/popover.js +33 -17
- package/dist/collection/components/progress-bar/progress-bar.js +2 -1
- package/dist/collection/components/radio/radio.js +2 -1
- package/dist/collection/components/radio-group/radio-group.js +6 -3
- package/dist/collection/components/range/range.js +214 -53
- package/dist/collection/components/refresher/refresher.js +73 -5
- package/dist/collection/components/refresher-content/refresher-content.js +8 -4
- package/dist/collection/components/reorder-group/reorder-group.js +6 -3
- package/dist/collection/components/route/route.js +4 -2
- package/dist/collection/components/router/router.js +10 -5
- package/dist/collection/components/router-link/router-link.js +6 -3
- package/dist/collection/components/router-outlet/router-outlet.js +18 -9
- package/dist/collection/components/searchbar/searchbar.js +11 -6
- package/dist/collection/components/segment/segment.js +10 -5
- package/dist/collection/components/segment-button/segment-button.js +4 -2
- package/dist/collection/components/segment-view/segment-view.ios.css +2 -1
- package/dist/collection/components/segment-view/segment-view.js +30 -4
- package/dist/collection/components/segment-view/segment-view.md.css +2 -1
- package/dist/collection/components/select/select.js +17 -8
- package/dist/collection/components/select-modal/select-modal.js +27 -2
- package/dist/collection/components/select-popover/select-popover.js +2 -1
- package/dist/collection/components/skeleton-text/skeleton-text.js +2 -1
- package/dist/collection/components/spinner/spinner.js +4 -2
- package/dist/collection/components/tab/tab.js +4 -2
- package/dist/collection/components/tab-bar/tab-bar.js +4 -2
- package/dist/collection/components/tab-button/tab-button.js +4 -2
- package/dist/collection/components/tabs/tabs.js +4 -2
- package/dist/collection/components/text/text.js +2 -1
- package/dist/collection/components/textarea/textarea.js +10 -7
- package/dist/collection/components/title/title.js +4 -2
- package/dist/collection/components/toast/toast.js +34 -17
- package/dist/collection/components/toggle/toggle.js +4 -2
- package/dist/collection/components/toolbar/toolbar.js +2 -1
- package/dist/docs.d.ts +37 -0
- package/dist/docs.json +1186 -389
- package/dist/esm/{animation-Dt8bGnA-.js → animation-CnGMT4ji.js} +1 -1
- package/dist/esm/app-globals-DhZjtldk.js +9 -0
- package/dist/esm/{button-active-L570Swow.js → button-active-BBx21brx.js} +1 -1
- package/dist/esm/{config-mCdtaoPe.js → config-TO1rZH52.js} +1 -1
- package/dist/esm/{data-DCORV9FH.js → data-B9iGR5YO.js} +1 -1
- package/dist/esm/{framework-delegate-BYawdMXj.js → framework-delegate-CyxE1S_P.js} +1 -1
- package/dist/esm/{hardware-back-button-CPLxO-Ev.js → hardware-back-button-CTe4XmL7.js} +1 -1
- package/dist/esm/{helpers-DEn3pfjm.js → helpers-Tl8jw6S2.js} +1 -1
- package/dist/esm/{index-r2D9DEro.js → index-B-hkiOUh.js} +4 -4
- package/dist/esm/{index-CvDIirVx.js → index-B2KwgBLx.js} +5 -5
- package/dist/esm/{index-ceb5RaMT.js → index-BtUdxPjv.js} +2 -2
- package/dist/esm/{index-C8IsBmNU.js → index-IGIE5vDm.js} +503 -382
- package/dist/esm/{index-Bs3kT4bc.js → index-hW6eNZ3o.js} +2 -2
- package/dist/esm/index.js +12 -12
- package/dist/esm/{input-shims-D6H3ZaWt.js → input-shims-AaDhOpKN.js} +3 -3
- package/dist/esm/{input.utils-DrvTa8gz.js → input.utils-Bxa_DQ7-.js} +2 -2
- package/dist/esm/ion-accordion_2.entry.js +23 -15
- package/dist/esm/ion-action-sheet.entry.js +21 -15
- package/dist/esm/ion-alert.entry.js +25 -17
- package/dist/esm/ion-app_8.entry.js +48 -43
- package/dist/esm/ion-avatar_3.entry.js +12 -12
- package/dist/esm/ion-back-button.entry.js +7 -7
- package/dist/esm/ion-backdrop.entry.js +6 -6
- package/dist/esm/ion-breadcrumb_2.entry.js +20 -14
- package/dist/esm/ion-button_2.entry.js +36 -18
- package/dist/esm/ion-card_5.entry.js +23 -23
- package/dist/esm/ion-checkbox.entry.js +7 -7
- package/dist/esm/ion-chip.entry.js +6 -6
- package/dist/esm/ion-col_3.entry.js +8 -8
- package/dist/esm/ion-datetime-button.entry.js +8 -8
- package/dist/esm/ion-datetime_3.entry.js +75 -46
- package/dist/esm/ion-fab_3.entry.js +17 -13
- package/dist/esm/ion-img.entry.js +8 -6
- package/dist/esm/ion-infinite-scroll_2.entry.js +17 -13
- package/dist/esm/ion-input-otp.entry.js +16 -10
- package/dist/esm/ion-input-password-toggle.entry.js +9 -7
- package/dist/esm/ion-input.entry.js +21 -13
- package/dist/esm/ion-item-option_3.entry.js +19 -17
- package/dist/esm/ion-item_8.entry.js +48 -42
- package/dist/esm/ion-loading.entry.js +18 -14
- package/dist/esm/ion-menu_3.entry.js +30 -22
- package/dist/esm/ion-modal.entry.js +237 -59
- package/dist/esm/ion-nav_2.entry.js +14 -10
- package/dist/esm/ion-picker-column-option.entry.js +10 -8
- package/dist/esm/ion-picker-column.entry.js +11 -7
- package/dist/esm/ion-picker.entry.js +6 -6
- package/dist/esm/ion-popover.entry.js +21 -15
- package/dist/esm/ion-progress-bar.entry.js +7 -7
- package/dist/esm/ion-radio_2.entry.js +17 -13
- package/dist/esm/ion-range.entry.js +205 -57
- package/dist/esm/ion-refresher_2.entry.js +45 -14
- package/dist/esm/ion-reorder_2.entry.js +13 -11
- package/dist/esm/ion-ripple-effect.entry.js +4 -4
- package/dist/esm/ion-route_4.entry.js +20 -10
- package/dist/esm/ion-searchbar.entry.js +22 -12
- package/dist/esm/ion-segment-content.entry.js +3 -3
- package/dist/esm/ion-segment-view.entry.js +13 -8
- package/dist/esm/ion-segment_2.entry.js +26 -16
- package/dist/esm/ion-select-modal.entry.js +17 -13
- package/dist/esm/ion-select_3.entry.js +33 -24
- package/dist/esm/ion-spinner.entry.js +4 -4
- package/dist/esm/ion-split-pane.entry.js +15 -9
- package/dist/esm/ion-tab-bar_2.entry.js +14 -12
- package/dist/esm/ion-tab_2.entry.js +10 -8
- package/dist/esm/ion-text.entry.js +4 -4
- package/dist/esm/ion-textarea.entry.js +20 -14
- package/dist/esm/ion-toast.entry.js +21 -15
- package/dist/esm/ion-toggle.entry.js +10 -8
- package/dist/esm/{ionic-global-CDrldh-5.js → ionic-global-DfbeLwcV.js} +1 -1
- package/dist/esm/ionic.js +6 -6
- package/dist/esm/{ios.transition-BDzw0_Hm.js → ios.transition--aMF-pDH.js} +4 -4
- package/dist/esm/loader.js +5 -5
- package/dist/esm/{md.transition-BzDYi3qq.js → md.transition-BEVbfm8j.js} +4 -4
- package/dist/esm/{notch-controller-BwelN_JM.js → notch-controller-DAcvKU57.js} +1 -1
- package/dist/esm/{overlays-D5YkFThA.js → overlays-F8GHPo-e.js} +5 -5
- package/dist/esm/{status-tap-5DQ7Fc4V.js → status-tap-BfJqFSLF.js} +3 -3
- package/dist/esm/{swipe-back-BKw2CAHc.js → swipe-back-BZBFwTQV.js} +2 -2
- package/dist/html.html-data.json +117 -109
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-031b76f7.entry.js +4 -0
- package/dist/ionic/p-045a6a42.entry.js +4 -0
- package/dist/ionic/p-07506134.entry.js +4 -0
- package/dist/ionic/p-084c25b2.entry.js +4 -0
- package/dist/ionic/p-0d8b5c38.entry.js +4 -0
- package/dist/ionic/p-16813ce7.entry.js +4 -0
- package/dist/ionic/p-16b65553.entry.js +4 -0
- package/dist/ionic/p-1b02923f.entry.js +4 -0
- package/dist/ionic/{p-5c8f7253.entry.js → p-1b169fb6.entry.js} +1 -1
- package/dist/ionic/{p-915b3e3d.entry.js → p-23fac490.entry.js} +1 -1
- package/dist/ionic/{p-b8551510.entry.js → p-294f4bb5.entry.js} +1 -1
- package/dist/ionic/p-2a68388b.entry.js +4 -0
- package/dist/ionic/p-2f5a8140.entry.js +4 -0
- package/dist/ionic/{p-49d06882.entry.js → p-301c43f8.entry.js} +1 -1
- package/dist/ionic/{p-79bd78f9.entry.js → p-370a60ee.entry.js} +1 -1
- package/dist/ionic/p-3e143d1d.entry.js +4 -0
- package/dist/ionic/p-4819b469.entry.js +4 -0
- package/dist/ionic/p-4dd5e8e0.entry.js +4 -0
- package/dist/ionic/p-51c11c47.entry.js +4 -0
- package/dist/ionic/p-53f750a5.entry.js +4 -0
- package/dist/ionic/{p-7cad388a.entry.js → p-6af16209.entry.js} +1 -1
- package/dist/ionic/{p-7f98e710.entry.js → p-6b701daa.entry.js} +1 -1
- package/dist/ionic/p-6b97f2a3.entry.js +4 -0
- package/dist/ionic/p-71e322f7.entry.js +4 -0
- package/dist/ionic/p-7620be24.entry.js +4 -0
- package/dist/ionic/p-771b27a5.entry.js +4 -0
- package/dist/ionic/{p-906bb44d.entry.js → p-7ca71c83.entry.js} +1 -1
- package/dist/ionic/{p-11aa58d6.entry.js → p-80cac7a2.entry.js} +1 -1
- package/dist/ionic/p-96a2e768.entry.js +4 -0
- package/dist/ionic/{p-582824c5.entry.js → p-9833cf63.entry.js} +1 -1
- package/dist/ionic/p-9cbc6f1f.entry.js +4 -0
- package/dist/ionic/p-9cdbabbb.entry.js +4 -0
- package/dist/ionic/p-9eac4eb1.entry.js +4 -0
- package/dist/ionic/{p-675b1a31.entry.js → p-9fae83d8.entry.js} +1 -1
- package/dist/ionic/p-B8xlpH8p.js +4 -0
- package/dist/ionic/{p-C7hRNDhM.js → p-BAt5H1ac.js} +1 -1
- package/dist/ionic/p-BW_TRJm8.js +4 -0
- package/dist/ionic/{p-DDb5r57F.js → p-Bum7H1fw.js} +1 -1
- package/dist/ionic/p-BvFYtOdE.js +4 -0
- package/dist/ionic/{p-Dc45iWE4.js → p-BxIcPWoV.js} +1 -1
- package/dist/ionic/p-C0JvVFMv.js +4 -0
- package/dist/ionic/{p-CTfR9YZG.js → p-CGmVTdWh.js} +1 -1
- package/dist/ionic/{p-BOVrCkpJ.js → p-CYbRmDdy.js} +1 -1
- package/dist/ionic/{p-MUoJJJwd.js → p-CYvM5g3q.js} +1 -1
- package/dist/ionic/p-CmFz1Mjc.js +4 -0
- package/dist/ionic/p-CtA-yJYy.js +4 -0
- package/dist/ionic/p-D8HJQ1qq.js +4 -0
- package/dist/ionic/{p-B0q1YL7N.js → p-DB_iPQC-.js} +1 -1
- package/dist/ionic/{p-DNcfiJwE.js → p-DLbbmF9h.js} +1 -1
- package/dist/ionic/p-DTPR1Wpn.js +4 -0
- package/dist/ionic/p-DjriolRs.js +4 -0
- package/dist/ionic/p-DtVZDHlS.js +4 -0
- package/dist/ionic/p-IGIE5vDm.js +5 -0
- package/dist/ionic/{p-BFvmZNyx.js → p-NFFyoJ4Q.js} +1 -1
- package/dist/ionic/p-a805674e.entry.js +4 -0
- package/dist/ionic/{p-da7d04cc.entry.js → p-a84f2d21.entry.js} +1 -1
- package/dist/ionic/p-aa47f46e.entry.js +4 -0
- package/dist/ionic/{p-2668188b.entry.js → p-b325a113.entry.js} +1 -1
- package/dist/ionic/{p-d1f54e28.entry.js → p-b440381f.entry.js} +1 -1
- package/dist/ionic/p-b6e0ff03.entry.js +4 -0
- package/dist/ionic/{p-6f37536a.entry.js → p-bcaa827e.entry.js} +1 -1
- package/dist/ionic/{p-fb0271ae.entry.js → p-c3cce9d8.entry.js} +1 -1
- package/dist/ionic/{p-b0a7585c.entry.js → p-ca31010f.entry.js} +1 -1
- package/dist/ionic/p-d4e8b473.entry.js +4 -0
- package/dist/ionic/{p-9575b654.entry.js → p-e663bc5a.entry.js} +1 -1
- package/dist/ionic/p-e6c5f060.entry.js +4 -0
- package/dist/ionic/{p-652318c3.entry.js → p-e6cedcd7.entry.js} +1 -1
- package/dist/ionic/{p-fbb00634.entry.js → p-e863ffe8.entry.js} +1 -1
- package/dist/ionic/{p-0ca0fe9c.entry.js → p-f2deaceb.entry.js} +1 -1
- package/dist/ionic/{p-ac4eb91d.entry.js → p-f5dfb9a3.entry.js} +1 -1
- package/dist/ionic/{p-bce86e56.entry.js → p-f8186550.entry.js} +1 -1
- package/dist/ionic/p-fdbc90d4.entry.js +4 -0
- package/dist/ionic/p-gbVXD275.js +4 -0
- package/dist/ionic/p-hNN3VvaC.js +4 -0
- package/dist/types/components/datetime/datetime.d.ts +10 -0
- package/dist/types/components/header/header.utils.d.ts +2 -1
- package/dist/types/components/item/item.d.ts +2 -0
- package/dist/types/components/item-divider/item-divider.d.ts +3 -0
- package/dist/types/components/item-option/item-option.d.ts +2 -0
- package/dist/types/components/list-header/list-header.d.ts +2 -0
- package/dist/types/components/modal/gestures/sheet.d.ts +2 -2
- package/dist/types/components/modal/gestures/swipe-to-close.d.ts +2 -2
- package/dist/types/components/modal/modal-interface.d.ts +25 -0
- package/dist/types/components/modal/modal.d.ts +22 -1
- package/dist/types/components/range/range-interface.d.ts +1 -0
- package/dist/types/components/range/range.d.ts +44 -4
- package/dist/types/components/refresher/refresher-interface.d.ts +7 -0
- package/dist/types/components/refresher/refresher.d.ts +16 -3
- package/dist/types/components/segment-view/segment-view.d.ts +4 -0
- package/dist/types/components/select/select.d.ts +3 -0
- package/dist/types/components/select-modal/select-modal.d.ts +4 -0
- package/dist/types/components.d.ts +964 -191
- package/dist/types/interface.d.ts +2 -2
- package/dist/types/stencil-public-runtime.d.ts +126 -14
- package/dist/types/utils/gesture/listener.d.ts +2 -1
- package/hydrate/index.d.ts +12 -0
- package/hydrate/index.js +5632 -1421
- package/hydrate/index.mjs +5631 -1422
- package/package.json +2 -2
- package/components/p-B25GjpND.js +0 -71
- package/components/p-BANeLH_G.js +0 -290
- package/components/p-BBFQmhcD.js +0 -59
- package/components/p-BC-awmYt.js +0 -306
- package/components/p-BHbOsu99.js +0 -501
- package/components/p-BTlwXR9e.js +0 -73
- package/components/p-BcazQttQ.js +0 -612
- package/components/p-BdGshsIJ.js +0 -226
- package/components/p-BfS7vSpC.js +0 -147
- package/components/p-BhRFCLuX.js +0 -675
- package/components/p-Bhnhnzjz.js +0 -75
- package/components/p-BmcqD0EN.js +0 -153
- package/components/p-Boi6hecl.js +0 -115
- package/components/p-Bt_moUyl.js +0 -232
- package/components/p-Bxl5etF4.js +0 -146
- package/components/p-ByjmWt3s.js +0 -139
- package/components/p-C04oPyjT.js +0 -54
- package/components/p-C6dkQWq2.js +0 -1626
- package/components/p-CFZWrvIQ.js +0 -194
- package/components/p-CIJwkzL6.js +0 -195
- package/components/p-CL12ApCQ.js +0 -820
- package/components/p-CXJR56Oq.js +0 -564
- package/components/p-Cdm3dKWf.js +0 -108
- package/components/p-CslsoGzv.js +0 -192
- package/components/p-Cyd00tgZ.js +0 -167
- package/components/p-CzAJ3ArC.js +0 -380
- package/components/p-CzW34QBh.js +0 -12
- package/components/p-D0zXRwcr.js +0 -196
- package/components/p-D5hF6rwn.js +0 -339
- package/components/p-D8eD2iBA.js +0 -67
- package/components/p-DGOrLIyS.js +0 -481
- package/components/p-DK2Bn1Mc.js +0 -305
- package/components/p-DKRQWlK2.js +0 -598
- package/components/p-DNDUsygf.js +0 -128
- package/components/p-DTWZF6wg.js +0 -418
- package/components/p-DWoUQeZ3.js +0 -3012
- package/components/p-DX0w75a9.js +0 -420
- package/components/p-Dt8zaCLQ.js +0 -92
- package/components/p-DyFBFrV7.js +0 -264
- package/components/p-DyHPCMyn.js +0 -39
- package/components/p-LgLeKTkH.js +0 -112
- package/components/p-NhiRFRn9.js +0 -50
- package/components/p-OuiHmXO5.js +0 -646
- package/components/p-Wro9IPHE.js +0 -459
- package/components/p-aIWC4ZEV.js +0 -305
- package/components/p-c-XJ9XhZ.js +0 -915
- package/components/p-fVuFT3Wd.js +0 -78
- package/components/p-iyo0Toaz.js +0 -2822
- package/components/p-l_lso3Zl.js +0 -140
- package/components/p-mQp4lwQD.js +0 -1638
- package/dist/cjs/app-globals-Ciccnk9_.js +0 -10
- package/dist/esm/app-globals-BDSf8fOA.js +0 -8
- package/dist/ionic/p-11518b31.entry.js +0 -4
- package/dist/ionic/p-221a3d8c.entry.js +0 -4
- package/dist/ionic/p-2ac254dc.entry.js +0 -4
- package/dist/ionic/p-2bd1ea35.entry.js +0 -4
- package/dist/ionic/p-30333874.entry.js +0 -4
- package/dist/ionic/p-31db96da.entry.js +0 -4
- package/dist/ionic/p-34642fa1.entry.js +0 -4
- package/dist/ionic/p-35696017.entry.js +0 -4
- package/dist/ionic/p-363d1209.entry.js +0 -4
- package/dist/ionic/p-46a38cfd.entry.js +0 -4
- package/dist/ionic/p-4eec1a5e.entry.js +0 -4
- package/dist/ionic/p-530fcd71.entry.js +0 -4
- package/dist/ionic/p-5d6fb6e3.entry.js +0 -4
- package/dist/ionic/p-66fbe052.entry.js +0 -4
- package/dist/ionic/p-7babec72.entry.js +0 -4
- package/dist/ionic/p-82d5bb3d.entry.js +0 -4
- package/dist/ionic/p-97eb0812.entry.js +0 -4
- package/dist/ionic/p-9b6d46f2.entry.js +0 -4
- package/dist/ionic/p-BKc55Xev.js +0 -4
- package/dist/ionic/p-Bmgaetn_.js +0 -4
- package/dist/ionic/p-C8IsBmNU.js +0 -5
- package/dist/ionic/p-CJxh_yLS.js +0 -4
- package/dist/ionic/p-DZRJwG4S.js +0 -4
- package/dist/ionic/p-a4a9f5ae.entry.js +0 -4
- package/dist/ionic/p-b0ebf9f8.entry.js +0 -4
- package/dist/ionic/p-be263062.entry.js +0 -4
- package/dist/ionic/p-c175d792.entry.js +0 -4
- package/dist/ionic/p-cc2a9936.entry.js +0 -4
- package/dist/ionic/p-cc45bcbc.entry.js +0 -4
- package/dist/ionic/p-d0a2a1ab.entry.js +0 -4
- package/dist/ionic/p-e4c57008.entry.js +0 -4
- package/dist/ionic/p-e5d6d0f0.entry.js +0 -4
- package/dist/ionic/p-f1dfee25.entry.js +0 -4
- package/dist/ionic/p-f9f7b9db.entry.js +0 -4
package/components/p-Bhnhnzjz.js
DELETED
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
|
-
*/
|
|
4
|
-
import { p as proxyCustomElement, H, e as createEvent, h, d as Host } from './p-DWoUQeZ3.js';
|
|
5
|
-
import { b as getIonMode } from './p-Bxl5etF4.js';
|
|
6
|
-
|
|
7
|
-
const backdropIosCss = ":host{left:0;right:0;top:0;bottom:0;display:block;position:absolute;-webkit-transform:translateZ(0);transform:translateZ(0);contain:strict;cursor:pointer;opacity:0.01;-ms-touch-action:none;touch-action:none;z-index:2}:host(.backdrop-hide){background:transparent}:host(.backdrop-no-tappable){cursor:auto}:host{background-color:var(--ion-backdrop-color, #000)}";
|
|
8
|
-
|
|
9
|
-
const backdropMdCss = ":host{left:0;right:0;top:0;bottom:0;display:block;position:absolute;-webkit-transform:translateZ(0);transform:translateZ(0);contain:strict;cursor:pointer;opacity:0.01;-ms-touch-action:none;touch-action:none;z-index:2}:host(.backdrop-hide){background:transparent}:host(.backdrop-no-tappable){cursor:auto}:host{background-color:var(--ion-backdrop-color, #000)}";
|
|
10
|
-
|
|
11
|
-
const Backdrop = /*@__PURE__*/ proxyCustomElement(class Backdrop extends H {
|
|
12
|
-
constructor(registerHost) {
|
|
13
|
-
super();
|
|
14
|
-
if (registerHost !== false) {
|
|
15
|
-
this.__registerHost();
|
|
16
|
-
}
|
|
17
|
-
this.__attachShadow();
|
|
18
|
-
this.ionBackdropTap = createEvent(this, "ionBackdropTap", 7);
|
|
19
|
-
/**
|
|
20
|
-
* If `true`, the backdrop will be visible.
|
|
21
|
-
*/
|
|
22
|
-
this.visible = true;
|
|
23
|
-
/**
|
|
24
|
-
* If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event.
|
|
25
|
-
*/
|
|
26
|
-
this.tappable = true;
|
|
27
|
-
/**
|
|
28
|
-
* If `true`, the backdrop will stop propagation on tap.
|
|
29
|
-
*/
|
|
30
|
-
this.stopPropagation = true;
|
|
31
|
-
}
|
|
32
|
-
onMouseDown(ev) {
|
|
33
|
-
this.emitTap(ev);
|
|
34
|
-
}
|
|
35
|
-
emitTap(ev) {
|
|
36
|
-
if (this.stopPropagation) {
|
|
37
|
-
ev.preventDefault();
|
|
38
|
-
ev.stopPropagation();
|
|
39
|
-
}
|
|
40
|
-
if (this.tappable) {
|
|
41
|
-
this.ionBackdropTap.emit();
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
render() {
|
|
45
|
-
const mode = getIonMode(this);
|
|
46
|
-
return (h(Host, { key: '7abaf2c310aa399607451b14063265e8a5846938', "aria-hidden": "true", class: {
|
|
47
|
-
[mode]: true,
|
|
48
|
-
'backdrop-hide': !this.visible,
|
|
49
|
-
'backdrop-no-tappable': !this.tappable,
|
|
50
|
-
} }));
|
|
51
|
-
}
|
|
52
|
-
static get style() { return {
|
|
53
|
-
ios: backdropIosCss,
|
|
54
|
-
md: backdropMdCss
|
|
55
|
-
}; }
|
|
56
|
-
}, [289, "ion-backdrop", {
|
|
57
|
-
"visible": [4],
|
|
58
|
-
"tappable": [4],
|
|
59
|
-
"stopPropagation": [4, "stop-propagation"]
|
|
60
|
-
}, [[2, "click", "onMouseDown"]]]);
|
|
61
|
-
function defineCustomElement() {
|
|
62
|
-
if (typeof customElements === "undefined") {
|
|
63
|
-
return;
|
|
64
|
-
}
|
|
65
|
-
const components = ["ion-backdrop"];
|
|
66
|
-
components.forEach(tagName => { switch (tagName) {
|
|
67
|
-
case "ion-backdrop":
|
|
68
|
-
if (!customElements.get(tagName)) {
|
|
69
|
-
customElements.define(tagName, Backdrop);
|
|
70
|
-
}
|
|
71
|
-
break;
|
|
72
|
-
} });
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
export { Backdrop as B, defineCustomElement as d };
|
package/components/p-BmcqD0EN.js
DELETED
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
|
-
*/
|
|
4
|
-
import { w as win } from './p-ZjP4CjeZ.js';
|
|
5
|
-
import { r as raf } from './p-D5hF6rwn.js';
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* A utility to calculate the size of an outline notch
|
|
9
|
-
* width relative to the content passed. This is used in
|
|
10
|
-
* components such as `ion-select` with `fill="outline"`
|
|
11
|
-
* where we need to pass slotted HTML content. This is not
|
|
12
|
-
* needed when rendering plaintext content because we can
|
|
13
|
-
* render the plaintext again hidden with `opacity: 0` inside
|
|
14
|
-
* of the notch. As a result we can rely on the intrinsic size
|
|
15
|
-
* of the element to correctly compute the notch width. We
|
|
16
|
-
* cannot do this with slotted content because we cannot project
|
|
17
|
-
* it into 2 places at once.
|
|
18
|
-
*
|
|
19
|
-
* @internal
|
|
20
|
-
* @param el: The host element
|
|
21
|
-
* @param getNotchSpacerEl: A function that returns a reference to the notch spacer element inside of the component template.
|
|
22
|
-
* @param getLabelSlot: A function that returns a reference to the slotted content.
|
|
23
|
-
*/
|
|
24
|
-
const createNotchController = (el, getNotchSpacerEl, getLabelSlot) => {
|
|
25
|
-
let notchVisibilityIO;
|
|
26
|
-
const needsExplicitNotchWidth = () => {
|
|
27
|
-
const notchSpacerEl = getNotchSpacerEl();
|
|
28
|
-
if (
|
|
29
|
-
/**
|
|
30
|
-
* If the notch is not being used
|
|
31
|
-
* then we do not need to set the notch width.
|
|
32
|
-
*/
|
|
33
|
-
notchSpacerEl === undefined ||
|
|
34
|
-
/**
|
|
35
|
-
* If either the label property is being
|
|
36
|
-
* used or the label slot is not defined,
|
|
37
|
-
* then we do not need to estimate the notch width.
|
|
38
|
-
*/
|
|
39
|
-
el.label !== undefined ||
|
|
40
|
-
getLabelSlot() === null) {
|
|
41
|
-
return false;
|
|
42
|
-
}
|
|
43
|
-
return true;
|
|
44
|
-
};
|
|
45
|
-
const calculateNotchWidth = () => {
|
|
46
|
-
if (needsExplicitNotchWidth()) {
|
|
47
|
-
/**
|
|
48
|
-
* Run this the frame after
|
|
49
|
-
* the browser has re-painted the host element.
|
|
50
|
-
* Otherwise, the label element may have a width
|
|
51
|
-
* of 0 and the IntersectionObserver will be used.
|
|
52
|
-
*/
|
|
53
|
-
raf(() => {
|
|
54
|
-
setNotchWidth();
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
};
|
|
58
|
-
/**
|
|
59
|
-
* When using a label prop we can render
|
|
60
|
-
* the label value inside of the notch and
|
|
61
|
-
* let the browser calculate the size of the notch.
|
|
62
|
-
* However, we cannot render the label slot in multiple
|
|
63
|
-
* places so we need to manually calculate the notch dimension
|
|
64
|
-
* based on the size of the slotted content.
|
|
65
|
-
*
|
|
66
|
-
* This function should only be used to set the notch width
|
|
67
|
-
* on slotted label content. The notch width for label prop
|
|
68
|
-
* content is automatically calculated based on the
|
|
69
|
-
* intrinsic size of the label text.
|
|
70
|
-
*/
|
|
71
|
-
const setNotchWidth = () => {
|
|
72
|
-
const notchSpacerEl = getNotchSpacerEl();
|
|
73
|
-
if (notchSpacerEl === undefined) {
|
|
74
|
-
return;
|
|
75
|
-
}
|
|
76
|
-
if (!needsExplicitNotchWidth()) {
|
|
77
|
-
notchSpacerEl.style.removeProperty('width');
|
|
78
|
-
return;
|
|
79
|
-
}
|
|
80
|
-
const width = getLabelSlot().scrollWidth;
|
|
81
|
-
if (
|
|
82
|
-
/**
|
|
83
|
-
* If the computed width of the label is 0
|
|
84
|
-
* and notchSpacerEl's offsetParent is null
|
|
85
|
-
* then that means the element is hidden.
|
|
86
|
-
* As a result, we need to wait for the element
|
|
87
|
-
* to become visible before setting the notch width.
|
|
88
|
-
*
|
|
89
|
-
* We do not check el.offsetParent because
|
|
90
|
-
* that can be null if the host element has
|
|
91
|
-
* position: fixed applied to it.
|
|
92
|
-
* notchSpacerEl does not have position: fixed.
|
|
93
|
-
*/
|
|
94
|
-
width === 0 &&
|
|
95
|
-
notchSpacerEl.offsetParent === null &&
|
|
96
|
-
win !== undefined &&
|
|
97
|
-
'IntersectionObserver' in win) {
|
|
98
|
-
/**
|
|
99
|
-
* If there is an IO already attached
|
|
100
|
-
* then that will update the notch
|
|
101
|
-
* once the element becomes visible.
|
|
102
|
-
* As a result, there is no need to create
|
|
103
|
-
* another one.
|
|
104
|
-
*/
|
|
105
|
-
if (notchVisibilityIO !== undefined) {
|
|
106
|
-
return;
|
|
107
|
-
}
|
|
108
|
-
const io = (notchVisibilityIO = new IntersectionObserver((ev) => {
|
|
109
|
-
/**
|
|
110
|
-
* If the element is visible then we
|
|
111
|
-
* can try setting the notch width again.
|
|
112
|
-
*/
|
|
113
|
-
if (ev[0].intersectionRatio === 1) {
|
|
114
|
-
setNotchWidth();
|
|
115
|
-
io.disconnect();
|
|
116
|
-
notchVisibilityIO = undefined;
|
|
117
|
-
}
|
|
118
|
-
},
|
|
119
|
-
/**
|
|
120
|
-
* Set the root to be the host element
|
|
121
|
-
* This causes the IO callback
|
|
122
|
-
* to be fired in WebKit as soon as the element
|
|
123
|
-
* is visible. If we used the default root value
|
|
124
|
-
* then WebKit would only fire the IO callback
|
|
125
|
-
* after any animations (such as a modal transition)
|
|
126
|
-
* finished, and there would potentially be a flicker.
|
|
127
|
-
*/
|
|
128
|
-
{ threshold: 0.01, root: el }));
|
|
129
|
-
io.observe(notchSpacerEl);
|
|
130
|
-
return;
|
|
131
|
-
}
|
|
132
|
-
/**
|
|
133
|
-
* If the element is visible then we can set the notch width.
|
|
134
|
-
* The notch is only visible when the label is scaled,
|
|
135
|
-
* which is why we multiply the width by 0.75 as this is
|
|
136
|
-
* the same amount the label element is scaled by in the host CSS.
|
|
137
|
-
* (See $form-control-label-stacked-scale in ionic.globals.scss).
|
|
138
|
-
*/
|
|
139
|
-
notchSpacerEl.style.setProperty('width', `${width * 0.75}px`);
|
|
140
|
-
};
|
|
141
|
-
const destroy = () => {
|
|
142
|
-
if (notchVisibilityIO) {
|
|
143
|
-
notchVisibilityIO.disconnect();
|
|
144
|
-
notchVisibilityIO = undefined;
|
|
145
|
-
}
|
|
146
|
-
};
|
|
147
|
-
return {
|
|
148
|
-
calculateNotchWidth,
|
|
149
|
-
destroy,
|
|
150
|
-
};
|
|
151
|
-
};
|
|
152
|
-
|
|
153
|
-
export { createNotchController as c };
|
package/components/p-Boi6hecl.js
DELETED
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
|
-
*/
|
|
4
|
-
import { w as win } from './p-ZjP4CjeZ.js';
|
|
5
|
-
import { c as config, j as printIonError } from './p-DWoUQeZ3.js';
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* CloseWatcher is a newer API that lets
|
|
9
|
-
* use detect the hardware back button event
|
|
10
|
-
* in a web browser: https://caniuse.com/?search=closewatcher
|
|
11
|
-
* However, not every browser supports it yet.
|
|
12
|
-
*
|
|
13
|
-
* This needs to be a function so that we can
|
|
14
|
-
* check the config once it has been set.
|
|
15
|
-
* Otherwise, this code would be evaluated the
|
|
16
|
-
* moment this file is evaluated which could be
|
|
17
|
-
* before the config is set.
|
|
18
|
-
*/
|
|
19
|
-
const shouldUseCloseWatcher = () => config.get('experimentalCloseWatcher', false) && win !== undefined && 'CloseWatcher' in win;
|
|
20
|
-
/**
|
|
21
|
-
* When hardwareBackButton: false in config,
|
|
22
|
-
* we need to make sure we also block the default
|
|
23
|
-
* webview behavior. If we don't then it will be
|
|
24
|
-
* possible for users to navigate backward while
|
|
25
|
-
* an overlay is still open. Additionally, it will
|
|
26
|
-
* give the appearance that the hardwareBackButton
|
|
27
|
-
* config is not working as the page transition
|
|
28
|
-
* will still happen.
|
|
29
|
-
*/
|
|
30
|
-
const blockHardwareBackButton = () => {
|
|
31
|
-
document.addEventListener('backbutton', () => { }); // eslint-disable-line
|
|
32
|
-
};
|
|
33
|
-
const startHardwareBackButton = () => {
|
|
34
|
-
const doc = document;
|
|
35
|
-
let busy = false;
|
|
36
|
-
const backButtonCallback = () => {
|
|
37
|
-
if (busy) {
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
let index = 0;
|
|
41
|
-
let handlers = [];
|
|
42
|
-
const ev = new CustomEvent('ionBackButton', {
|
|
43
|
-
bubbles: false,
|
|
44
|
-
detail: {
|
|
45
|
-
register(priority, handler) {
|
|
46
|
-
handlers.push({ priority, handler, id: index++ });
|
|
47
|
-
},
|
|
48
|
-
},
|
|
49
|
-
});
|
|
50
|
-
doc.dispatchEvent(ev);
|
|
51
|
-
const executeAction = async (handlerRegister) => {
|
|
52
|
-
try {
|
|
53
|
-
if (handlerRegister === null || handlerRegister === void 0 ? void 0 : handlerRegister.handler) {
|
|
54
|
-
const result = handlerRegister.handler(processHandlers);
|
|
55
|
-
if (result != null) {
|
|
56
|
-
await result;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
catch (e) {
|
|
61
|
-
printIonError('[ion-app] - Exception in startHardwareBackButton:', e);
|
|
62
|
-
}
|
|
63
|
-
};
|
|
64
|
-
const processHandlers = () => {
|
|
65
|
-
if (handlers.length > 0) {
|
|
66
|
-
let selectedHandler = {
|
|
67
|
-
priority: Number.MIN_SAFE_INTEGER,
|
|
68
|
-
handler: () => undefined,
|
|
69
|
-
id: -1,
|
|
70
|
-
};
|
|
71
|
-
handlers.forEach((handler) => {
|
|
72
|
-
if (handler.priority >= selectedHandler.priority) {
|
|
73
|
-
selectedHandler = handler;
|
|
74
|
-
}
|
|
75
|
-
});
|
|
76
|
-
busy = true;
|
|
77
|
-
handlers = handlers.filter((handler) => handler.id !== selectedHandler.id);
|
|
78
|
-
executeAction(selectedHandler).then(() => (busy = false));
|
|
79
|
-
}
|
|
80
|
-
};
|
|
81
|
-
processHandlers();
|
|
82
|
-
};
|
|
83
|
-
/**
|
|
84
|
-
* If the CloseWatcher is defined then
|
|
85
|
-
* we don't want to also listen for the native
|
|
86
|
-
* backbutton event otherwise we may get duplicate
|
|
87
|
-
* events firing.
|
|
88
|
-
*/
|
|
89
|
-
if (shouldUseCloseWatcher()) {
|
|
90
|
-
let watcher;
|
|
91
|
-
const configureWatcher = () => {
|
|
92
|
-
watcher === null || watcher === void 0 ? void 0 : watcher.destroy();
|
|
93
|
-
watcher = new win.CloseWatcher();
|
|
94
|
-
/**
|
|
95
|
-
* Once a close request happens
|
|
96
|
-
* the watcher gets destroyed.
|
|
97
|
-
* As a result, we need to re-configure
|
|
98
|
-
* the watcher so we can respond to other
|
|
99
|
-
* close requests.
|
|
100
|
-
*/
|
|
101
|
-
watcher.onclose = () => {
|
|
102
|
-
backButtonCallback();
|
|
103
|
-
configureWatcher();
|
|
104
|
-
};
|
|
105
|
-
};
|
|
106
|
-
configureWatcher();
|
|
107
|
-
}
|
|
108
|
-
else {
|
|
109
|
-
doc.addEventListener('backbutton', backButtonCallback);
|
|
110
|
-
}
|
|
111
|
-
};
|
|
112
|
-
const OVERLAY_BACK_BUTTON_PRIORITY = 100;
|
|
113
|
-
const MENU_BACK_BUTTON_PRIORITY = 99; // 1 less than overlay priority since menu is displayed behind overlays
|
|
114
|
-
|
|
115
|
-
export { MENU_BACK_BUTTON_PRIORITY, OVERLAY_BACK_BUTTON_PRIORITY, blockHardwareBackButton, shouldUseCloseWatcher, startHardwareBackButton };
|
package/components/p-Bt_moUyl.js
DELETED
|
@@ -1,232 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
|
-
*/
|
|
4
|
-
import { p as proxyCustomElement, H, e as createEvent, h, d as Host } from './p-DWoUQeZ3.js';
|
|
5
|
-
import { a as addEventListener, b as removeEventListener } from './p-D5hF6rwn.js';
|
|
6
|
-
import { h as hostContext, c as createColorClasses } from './p-DiVJyqlX.js';
|
|
7
|
-
import { b as getIonMode } from './p-Bxl5etF4.js';
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Uses the compareWith param to compare two values to determine if they are equal.
|
|
11
|
-
*
|
|
12
|
-
* @param currentValue The current value of the control.
|
|
13
|
-
* @param compareValue The value to compare against.
|
|
14
|
-
* @param compareWith The function or property name to use to compare values.
|
|
15
|
-
*/
|
|
16
|
-
const compareOptions = (currentValue, compareValue, compareWith) => {
|
|
17
|
-
if (typeof compareWith === 'function') {
|
|
18
|
-
return compareWith(currentValue, compareValue);
|
|
19
|
-
}
|
|
20
|
-
else if (typeof compareWith === 'string') {
|
|
21
|
-
return currentValue[compareWith] === compareValue[compareWith];
|
|
22
|
-
}
|
|
23
|
-
else {
|
|
24
|
-
return Array.isArray(compareValue) ? compareValue.includes(currentValue) : currentValue === compareValue;
|
|
25
|
-
}
|
|
26
|
-
};
|
|
27
|
-
/**
|
|
28
|
-
* Compares a value against the current value(s) to determine if it is selected.
|
|
29
|
-
*
|
|
30
|
-
* @param currentValue The current value of the control.
|
|
31
|
-
* @param compareValue The value to compare against.
|
|
32
|
-
* @param compareWith The function or property name to use to compare values.
|
|
33
|
-
*/
|
|
34
|
-
const isOptionSelected = (currentValue, compareValue, compareWith) => {
|
|
35
|
-
if (currentValue === undefined) {
|
|
36
|
-
return false;
|
|
37
|
-
}
|
|
38
|
-
if (Array.isArray(currentValue)) {
|
|
39
|
-
return currentValue.some((val) => compareOptions(val, compareValue, compareWith));
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
return compareOptions(currentValue, compareValue, compareWith);
|
|
43
|
-
}
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
const radioIosCss = ":host{--inner-border-radius:50%;display:inline-block;position:relative;max-width:100%;min-height:inherit;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2;-webkit-box-sizing:border-box;box-sizing:border-box}:host(.radio-disabled){pointer-events:none}.radio-icon{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;contain:layout size style}.radio-icon,.radio-inner{-webkit-box-sizing:border-box;box-sizing:border-box}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}:host(:focus){outline:none}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}.radio-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;min-height:inherit;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.radio-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.radio-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host(.radio-justify-space-between) .radio-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.radio-justify-start) .radio-wrapper{-ms-flex-pack:start;justify-content:start}:host(.radio-justify-end) .radio-wrapper{-ms-flex-pack:end;justify-content:end}:host(.radio-alignment-start) .radio-wrapper{-ms-flex-align:start;align-items:start}:host(.radio-alignment-center) .radio-wrapper{-ms-flex-align:center;align-items:center}:host(.radio-justify-space-between),:host(.radio-justify-start),:host(.radio-justify-end),:host(.radio-alignment-start),:host(.radio-alignment-center){display:block}:host(.radio-label-placement-start) .radio-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.radio-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.radio-label-placement-end) .radio-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.radio-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.radio-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.radio-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px}:host(.radio-label-placement-stacked) .radio-wrapper{-ms-flex-direction:column;flex-direction:column}:host(.radio-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.radio-label-placement-stacked.radio-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.radio-label-placement-stacked.radio-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).radio-label-placement-stacked.radio-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.radio-label-placement-stacked.radio-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.radio-label-placement-stacked.radio-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.radio-label-placement-stacked.radio-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).radio-label-placement-stacked.radio-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.radio-label-placement-stacked.radio-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}:host{--color-checked:var(--ion-color-primary, #0054e9)}:host(.ion-color.radio-checked) .radio-inner{border-color:var(--ion-color-base)}.item-radio.item-ios ion-label{-webkit-margin-start:0;margin-inline-start:0}.radio-inner{width:33%;height:50%}:host(.radio-checked) .radio-inner{-webkit-transform:rotate(45deg);transform:rotate(45deg);border-width:0.125rem;border-top-width:0;border-left-width:0;border-style:solid;border-color:var(--color-checked)}:host(.radio-disabled){opacity:0.3}:host(.ion-focused) .radio-icon::after{border-radius:var(--inner-border-radius);top:-8px;display:block;position:absolute;width:36px;height:36px;background:var(--ion-color-primary-tint, #1a65eb);content:\"\";opacity:0.2}:host(.ion-focused) .radio-icon::after{inset-inline-start:-9px}.native-wrapper .radio-icon{width:0.9375rem;height:1.5rem}";
|
|
47
|
-
|
|
48
|
-
const radioMdCss = ":host{--inner-border-radius:50%;display:inline-block;position:relative;max-width:100%;min-height:inherit;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2;-webkit-box-sizing:border-box;box-sizing:border-box}:host(.radio-disabled){pointer-events:none}.radio-icon{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;contain:layout size style}.radio-icon,.radio-inner{-webkit-box-sizing:border-box;box-sizing:border-box}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}:host(:focus){outline:none}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}.radio-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;min-height:inherit;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.radio-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.radio-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host(.radio-justify-space-between) .radio-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.radio-justify-start) .radio-wrapper{-ms-flex-pack:start;justify-content:start}:host(.radio-justify-end) .radio-wrapper{-ms-flex-pack:end;justify-content:end}:host(.radio-alignment-start) .radio-wrapper{-ms-flex-align:start;align-items:start}:host(.radio-alignment-center) .radio-wrapper{-ms-flex-align:center;align-items:center}:host(.radio-justify-space-between),:host(.radio-justify-start),:host(.radio-justify-end),:host(.radio-alignment-start),:host(.radio-alignment-center){display:block}:host(.radio-label-placement-start) .radio-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.radio-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.radio-label-placement-end) .radio-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.radio-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.radio-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.radio-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px}:host(.radio-label-placement-stacked) .radio-wrapper{-ms-flex-direction:column;flex-direction:column}:host(.radio-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.radio-label-placement-stacked.radio-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.radio-label-placement-stacked.radio-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).radio-label-placement-stacked.radio-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.radio-label-placement-stacked.radio-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.radio-label-placement-stacked.radio-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.radio-label-placement-stacked.radio-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).radio-label-placement-stacked.radio-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.radio-label-placement-stacked.radio-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}:host{--color:rgb(var(--ion-text-color-rgb, 0, 0, 0), 0.6);--color-checked:var(--ion-color-primary, #0054e9);--border-width:0.125rem;--border-style:solid;--border-radius:50%}:host(.ion-color) .radio-inner{background:var(--ion-color-base)}:host(.ion-color.radio-checked) .radio-icon{border-color:var(--ion-color-base)}.radio-icon{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;border-radius:var(--border-radius);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--color)}.radio-inner{border-radius:var(--inner-border-radius);width:calc(50% + var(--border-width));height:calc(50% + var(--border-width));-webkit-transform:scale3d(0, 0, 0);transform:scale3d(0, 0, 0);-webkit-transition:-webkit-transform 280ms cubic-bezier(0.4, 0, 0.2, 1);transition:-webkit-transform 280ms cubic-bezier(0.4, 0, 0.2, 1);transition:transform 280ms cubic-bezier(0.4, 0, 0.2, 1);transition:transform 280ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 280ms cubic-bezier(0.4, 0, 0.2, 1);background:var(--color-checked)}:host(.radio-checked) .radio-icon{border-color:var(--color-checked)}:host(.radio-checked) .radio-inner{-webkit-transform:scale3d(1, 1, 1);transform:scale3d(1, 1, 1)}:host(.radio-disabled) .label-text-wrapper{opacity:0.38}:host(.radio-disabled) .native-wrapper{opacity:0.63}:host(.ion-focused) .radio-icon::after{border-radius:var(--inner-border-radius);display:block;position:absolute;width:36px;height:36px;background:var(--ion-color-primary-tint, #1a65eb);content:\"\";opacity:0.2}.native-wrapper .radio-icon{width:1.25rem;height:1.25rem}";
|
|
49
|
-
|
|
50
|
-
const Radio = /*@__PURE__*/ proxyCustomElement(class Radio extends H {
|
|
51
|
-
constructor(registerHost) {
|
|
52
|
-
super();
|
|
53
|
-
if (registerHost !== false) {
|
|
54
|
-
this.__registerHost();
|
|
55
|
-
}
|
|
56
|
-
this.__attachShadow();
|
|
57
|
-
this.ionFocus = createEvent(this, "ionFocus", 7);
|
|
58
|
-
this.ionBlur = createEvent(this, "ionBlur", 7);
|
|
59
|
-
this.inputId = `ion-rb-${radioButtonIds++}`;
|
|
60
|
-
this.radioGroup = null;
|
|
61
|
-
/**
|
|
62
|
-
* If `true`, the radio is selected.
|
|
63
|
-
*/
|
|
64
|
-
this.checked = false;
|
|
65
|
-
/**
|
|
66
|
-
* The tabindex of the radio button.
|
|
67
|
-
* @internal
|
|
68
|
-
*/
|
|
69
|
-
this.buttonTabindex = -1;
|
|
70
|
-
/**
|
|
71
|
-
* The name of the control, which is submitted with the form data.
|
|
72
|
-
*/
|
|
73
|
-
this.name = this.inputId;
|
|
74
|
-
/**
|
|
75
|
-
* If `true`, the user cannot interact with the radio.
|
|
76
|
-
*/
|
|
77
|
-
this.disabled = false;
|
|
78
|
-
/**
|
|
79
|
-
* Where to place the label relative to the radio.
|
|
80
|
-
* `"start"`: The label will appear to the left of the radio in LTR and to the right in RTL.
|
|
81
|
-
* `"end"`: The label will appear to the right of the radio in LTR and to the left in RTL.
|
|
82
|
-
* `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("...").
|
|
83
|
-
* `"stacked"`: The label will appear above the radio regardless of the direction. The alignment of the label can be controlled with the `alignment` property.
|
|
84
|
-
*/
|
|
85
|
-
this.labelPlacement = 'start';
|
|
86
|
-
this.updateState = () => {
|
|
87
|
-
if (this.radioGroup) {
|
|
88
|
-
const { compareWith, value: radioGroupValue } = this.radioGroup;
|
|
89
|
-
this.checked = isOptionSelected(radioGroupValue, this.value, compareWith);
|
|
90
|
-
}
|
|
91
|
-
};
|
|
92
|
-
this.onClick = () => {
|
|
93
|
-
const { radioGroup, checked, disabled } = this;
|
|
94
|
-
if (disabled) {
|
|
95
|
-
return;
|
|
96
|
-
}
|
|
97
|
-
/**
|
|
98
|
-
* The modern control does not use a native input
|
|
99
|
-
* inside of the radio host, so we cannot rely on the
|
|
100
|
-
* ev.preventDefault() behavior above. If the radio
|
|
101
|
-
* is checked and the parent radio group allows for empty
|
|
102
|
-
* selection, then we can set the checked state to false.
|
|
103
|
-
* Otherwise, the checked state should always be set
|
|
104
|
-
* to true because the checked state cannot be toggled.
|
|
105
|
-
*/
|
|
106
|
-
if (checked && (radioGroup === null || radioGroup === void 0 ? void 0 : radioGroup.allowEmptySelection)) {
|
|
107
|
-
this.checked = false;
|
|
108
|
-
}
|
|
109
|
-
else {
|
|
110
|
-
this.checked = true;
|
|
111
|
-
}
|
|
112
|
-
};
|
|
113
|
-
this.onFocus = () => {
|
|
114
|
-
this.ionFocus.emit();
|
|
115
|
-
};
|
|
116
|
-
this.onBlur = () => {
|
|
117
|
-
this.ionBlur.emit();
|
|
118
|
-
};
|
|
119
|
-
}
|
|
120
|
-
valueChanged() {
|
|
121
|
-
/**
|
|
122
|
-
* The new value of the radio may
|
|
123
|
-
* match the radio group's value,
|
|
124
|
-
* so we see if it should be checked.
|
|
125
|
-
*/
|
|
126
|
-
this.updateState();
|
|
127
|
-
}
|
|
128
|
-
componentDidLoad() {
|
|
129
|
-
/**
|
|
130
|
-
* The value may be `undefined` if it
|
|
131
|
-
* gets set before the radio is
|
|
132
|
-
* rendered. This ensures that the radio
|
|
133
|
-
* is checked if the value matches. This
|
|
134
|
-
* happens most often when Angular is
|
|
135
|
-
* rendering the radio.
|
|
136
|
-
*/
|
|
137
|
-
this.updateState();
|
|
138
|
-
}
|
|
139
|
-
/** @internal */
|
|
140
|
-
async setFocus(ev) {
|
|
141
|
-
if (ev !== undefined) {
|
|
142
|
-
ev.stopPropagation();
|
|
143
|
-
ev.preventDefault();
|
|
144
|
-
}
|
|
145
|
-
this.el.focus();
|
|
146
|
-
}
|
|
147
|
-
/** @internal */
|
|
148
|
-
async setButtonTabindex(value) {
|
|
149
|
-
this.buttonTabindex = value;
|
|
150
|
-
}
|
|
151
|
-
connectedCallback() {
|
|
152
|
-
if (this.value === undefined) {
|
|
153
|
-
this.value = this.inputId;
|
|
154
|
-
}
|
|
155
|
-
const radioGroup = (this.radioGroup = this.el.closest('ion-radio-group'));
|
|
156
|
-
if (radioGroup) {
|
|
157
|
-
this.updateState();
|
|
158
|
-
addEventListener(radioGroup, 'ionValueChange', this.updateState);
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
disconnectedCallback() {
|
|
162
|
-
const radioGroup = this.radioGroup;
|
|
163
|
-
if (radioGroup) {
|
|
164
|
-
removeEventListener(radioGroup, 'ionValueChange', this.updateState);
|
|
165
|
-
this.radioGroup = null;
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
get hasLabel() {
|
|
169
|
-
return this.el.textContent !== '';
|
|
170
|
-
}
|
|
171
|
-
renderRadioControl() {
|
|
172
|
-
return (h("div", { class: "radio-icon", part: "container" }, h("div", { class: "radio-inner", part: "mark" }), h("div", { class: "radio-ripple" })));
|
|
173
|
-
}
|
|
174
|
-
render() {
|
|
175
|
-
const { checked, disabled, color, el, justify, labelPlacement, hasLabel, buttonTabindex, alignment } = this;
|
|
176
|
-
const mode = getIonMode(this);
|
|
177
|
-
const inItem = hostContext('ion-item', el);
|
|
178
|
-
return (h(Host, { key: 'af5dc59ed528150872e907ed1036e3e2decba939', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses(color, {
|
|
179
|
-
[mode]: true,
|
|
180
|
-
'in-item': inItem,
|
|
181
|
-
'radio-checked': checked,
|
|
182
|
-
'radio-disabled': disabled,
|
|
183
|
-
[`radio-justify-${justify}`]: justify !== undefined,
|
|
184
|
-
[`radio-alignment-${alignment}`]: alignment !== undefined,
|
|
185
|
-
[`radio-label-placement-${labelPlacement}`]: true,
|
|
186
|
-
// Focus and active styling should not apply when the radio is in an item
|
|
187
|
-
'ion-activatable': !inItem,
|
|
188
|
-
'ion-focusable': !inItem,
|
|
189
|
-
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, h("label", { key: '1312aba3259a87fe23a6911cdfa477e309469c8b', class: "radio-wrapper" }, h("div", { key: 'b342aa27e240a300836d2a135658d346b95daf09', class: {
|
|
190
|
-
'label-text-wrapper': true,
|
|
191
|
-
'label-text-wrapper-hidden': !hasLabel,
|
|
192
|
-
}, part: "label" }, h("slot", { key: '0a4613d29aa783d1882cf889377f7e4fd4fea51d' })), h("div", { key: '191faea79dc4cd8befc4b873f5bd9f5af8ca2acc', class: "native-wrapper" }, this.renderRadioControl()))));
|
|
193
|
-
}
|
|
194
|
-
get el() { return this; }
|
|
195
|
-
static get watchers() { return {
|
|
196
|
-
"value": ["valueChanged"]
|
|
197
|
-
}; }
|
|
198
|
-
static get style() { return {
|
|
199
|
-
ios: radioIosCss,
|
|
200
|
-
md: radioMdCss
|
|
201
|
-
}; }
|
|
202
|
-
}, [289, "ion-radio", {
|
|
203
|
-
"color": [513],
|
|
204
|
-
"name": [1],
|
|
205
|
-
"disabled": [4],
|
|
206
|
-
"value": [8],
|
|
207
|
-
"labelPlacement": [1, "label-placement"],
|
|
208
|
-
"justify": [1],
|
|
209
|
-
"alignment": [1],
|
|
210
|
-
"checked": [32],
|
|
211
|
-
"buttonTabindex": [32],
|
|
212
|
-
"setFocus": [64],
|
|
213
|
-
"setButtonTabindex": [64]
|
|
214
|
-
}, undefined, {
|
|
215
|
-
"value": ["valueChanged"]
|
|
216
|
-
}]);
|
|
217
|
-
let radioButtonIds = 0;
|
|
218
|
-
function defineCustomElement() {
|
|
219
|
-
if (typeof customElements === "undefined") {
|
|
220
|
-
return;
|
|
221
|
-
}
|
|
222
|
-
const components = ["ion-radio"];
|
|
223
|
-
components.forEach(tagName => { switch (tagName) {
|
|
224
|
-
case "ion-radio":
|
|
225
|
-
if (!customElements.get(tagName)) {
|
|
226
|
-
customElements.define(tagName, Radio);
|
|
227
|
-
}
|
|
228
|
-
break;
|
|
229
|
-
} });
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
export { Radio as R, compareOptions as c, defineCustomElement as d, isOptionSelected as i };
|