@ionic/core 8.7.17-dev.11772118942.181221d4 → 8.7.17-dev.11772568074.1d7a4aea
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/action-sheet.js +1 -561
- package/components/alert.js +1 -610
- package/components/animation.js +1 -817
- package/components/backdrop.js +1 -72
- package/components/button-active.js +1 -64
- package/components/button.js +1 -303
- package/components/buttons.js +1 -56
- package/components/capacitor.js +1 -10
- package/components/checkbox.js +1 -261
- package/components/config.js +1 -192
- package/components/content.js +1 -475
- package/components/cubic-bezier.js +1 -87
- package/components/data.js +1 -1635
- package/components/dir.js +1 -15
- package/components/focus-visible.js +1 -72
- package/components/framework-delegate.js +1 -137
- package/components/gesture-controller.js +1 -192
- package/components/haptic.js +1 -155
- package/components/hardware-back-button.js +1 -112
- package/components/header.js +1 -417
- package/components/helpers.js +1 -336
- package/components/icon.js +1 -456
- package/components/index.d.ts +2 -0
- package/components/index.js +1 -115
- package/components/index2.js +1 -416
- package/components/index3.js +1 -452
- package/components/index4.js +1 -118
- package/components/index5.js +1 -303
- package/components/index6.js +1 -29
- package/components/index7.js +1 -164
- package/components/index8.js +1 -125
- package/components/index9.js +1 -4
- package/components/input-shims.js +1 -624
- package/components/input.utils.js +1 -144
- package/components/ion-accordion-group.js +1 -269
- package/components/ion-accordion.js +1 -457
- package/components/ion-action-sheet.js +1 -6
- package/components/ion-alert.js +1 -6
- package/components/ion-app.js +1 -128
- package/components/ion-avatar.js +1 -41
- package/components/ion-back-button.js +1 -131
- 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 -384
- package/components/ion-datetime.js +1 -2046
- package/components/ion-fab-button.js +1 -151
- package/components/ion-fab-list.js +1 -66
- package/components/ion-fab.js +1 -101
- package/components/ion-footer.js +1 -159
- 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 -124
- package/components/ion-infinite-scroll-content.js +1 -70
- package/components/ion-infinite-scroll.js +1 -236
- package/components/ion-input-otp.js +1 -683
- package/components/ion-input-password-toggle.js +1 -129
- package/components/ion-input.js +1 -617
- 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 -458
- 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 -344
- package/components/ion-menu-button.js +1 -110
- package/components/ion-menu-toggle.js +1 -64
- package/components/ion-menu.js +1 -745
- package/components/ion-modal.js +1 -6
- package/components/ion-nav-link.js +1 -64
- package/components/ion-nav.js +1 -956
- 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 -343
- package/components/ion-picker.js +1 -6
- package/components/ion-popover.js +1 -6
- package/components/ion-progress-bar.js +1 -101
- package/components/ion-radio-group.js +1 -6
- package/components/ion-radio.js +1 -6
- package/components/ion-range.js +1 -853
- package/components/ion-refresher-content.js +1 -89
- package/components/ion-refresher.js +1 -751
- 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 -227
- package/components/ion-router.js +1 -841
- package/components/ion-row.js +1 -36
- package/components/ion-searchbar.js +1 -530
- package/components/ion-segment-button.js +1 -174
- package/components/ion-segment-content.js +1 -35
- package/components/ion-segment-view.js +1 -148
- 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 -1037
- package/components/ion-skeleton-text.js +1 -65
- package/components/ion-spinner.js +1 -6
- package/components/ion-split-pane.js +1 -197
- package/components/ion-tab-bar.js +1 -115
- package/components/ion-tab-button.js +1 -128
- package/components/ion-tab.js +1 -91
- package/components/ion-tabs.js +1 -205
- 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 -941
- package/components/ion-toggle.js +1 -361
- package/components/ion-toolbar.js +1 -6
- package/components/ionic-global.js +1 -144
- package/components/ios.transition.js +1 -672
- package/components/item.js +1 -302
- package/components/keyboard-controller.js +1 -162
- package/components/keyboard.js +1 -141
- package/components/keyboard2.js +1 -76
- package/components/label.js +1 -100
- package/components/list-header.js +1 -47
- package/components/list.js +1 -68
- package/components/lock-controller.js +1 -35
- package/components/md.transition.js +1 -51
- package/components/menu-toggle-util.js +1 -9
- package/components/modal.js +1 -2674
- package/components/notch-controller.js +1 -150
- package/components/overlays.js +1 -912
- package/components/picker-column-option.js +1 -136
- package/components/picker-column.js +1 -595
- package/components/picker-column2.js +1 -377
- package/components/picker.js +1 -498
- package/components/popover.js +1 -1502
- package/components/radio-group.js +1 -287
- package/components/radio.js +1 -229
- package/components/refresher.utils.js +1 -193
- package/components/ripple-effect.js +1 -109
- package/components/select-modal.js +1 -196
- package/components/select-popover.js +1 -189
- package/components/spinner.js +1 -224
- package/components/status-tap.js +1 -36
- package/components/swipe-back.js +1 -75
- package/components/theme.js +1 -40
- package/components/title.js +1 -70
- package/components/toolbar.js +1 -89
- package/components/validity.js +1 -14
- package/components/watch-options.js +1 -44
- 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-CW0KUFTQ.js → input-shims-DlFhYYTs.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 +44 -40
- 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 +67 -39
- 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 +17 -15
- package/dist/cjs/ion-item_8.cjs.entry.js +42 -36
- 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 +55 -40
- 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 +29 -15
- 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 +5 -5
- package/dist/cjs/ion-segment_2.cjs.entry.js +26 -16
- package/dist/cjs/ion-select-modal.cjs.entry.js +12 -12
- package/dist/cjs/ion-select_3.cjs.entry.js +29 -21
- 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 +18 -12
- 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 +8 -4
- package/dist/collection/components/datetime/datetime.js +34 -15
- 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 +6 -3
- package/dist/collection/components/item-divider/item-divider.js +2 -1
- package/dist/collection/components/item-option/item-option.js +2 -1
- 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 +2 -1
- 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 +32 -21
- package/dist/collection/components/modal/modal.js +35 -20
- 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 +14 -7
- 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.js +2 -1
- package/dist/collection/components/select/select.js +10 -5
- package/dist/collection/components/select-modal/select-modal.js +2 -1
- 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 +6 -3
- 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 +835 -381
- 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-DyOpfTg6.js → input-shims-C1hAaHcP.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 +44 -40
- 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 +67 -39
- 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 +17 -15
- package/dist/esm/ion-item_8.entry.js +42 -36
- 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 +55 -40
- 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 +29 -15
- 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 +5 -5
- package/dist/esm/ion-segment_2.entry.js +26 -16
- package/dist/esm/ion-select-modal.entry.js +12 -12
- package/dist/esm/ion-select_3.entry.js +29 -21
- 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 +18 -12
- 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 +109 -109
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/{p-316c0420.entry.js → p-025d2d32.entry.js} +1 -1
- package/dist/ionic/p-02acdef4.entry.js +4 -0
- package/dist/ionic/p-04e2c388.entry.js +4 -0
- package/dist/ionic/{p-370e4237.entry.js → p-074344b8.entry.js} +1 -1
- package/dist/ionic/p-0761b4d3.entry.js +4 -0
- package/dist/ionic/p-13ade5c8.entry.js +4 -0
- package/dist/ionic/p-1b02923f.entry.js +4 -0
- package/dist/ionic/p-1bd477a9.entry.js +4 -0
- package/dist/ionic/{p-d2489bf2.entry.js → p-1fa1406c.entry.js} +1 -1
- package/dist/ionic/{p-46d74291.entry.js → p-1fd588a7.entry.js} +1 -1
- package/dist/ionic/p-239a27a4.entry.js +4 -0
- package/dist/ionic/{p-94de5cfa.entry.js → p-277abec1.entry.js} +1 -1
- package/dist/ionic/{p-dd1aef77.entry.js → p-28d7852f.entry.js} +1 -1
- 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-4431ef7e.entry.js +4 -0
- package/dist/ionic/p-463767ce.entry.js +4 -0
- package/dist/ionic/p-4f888343.entry.js +4 -0
- package/dist/ionic/p-51c11c47.entry.js +4 -0
- package/dist/ionic/p-56050077.entry.js +4 -0
- package/dist/ionic/p-6a3a5aae.entry.js +4 -0
- package/dist/ionic/p-6b97f2a3.entry.js +4 -0
- package/dist/ionic/{p-51a60e0f.entry.js → p-7c72d482.entry.js} +1 -1
- package/dist/ionic/p-7d20f4f8.entry.js +4 -0
- package/dist/ionic/{p-11aa58d6.entry.js → p-80cac7a2.entry.js} +1 -1
- package/dist/ionic/p-91fc7352.entry.js +4 -0
- package/dist/ionic/p-93845421.entry.js +4 -0
- package/dist/ionic/{p-3a6caca9.entry.js → p-964090ef.entry.js} +1 -1
- package/dist/ionic/p-96a2e768.entry.js +4 -0
- package/dist/ionic/{p-d126e8d3.entry.js → p-9745651b.entry.js} +1 -1
- package/dist/ionic/{p-f9061316.entry.js → p-9802c88e.entry.js} +1 -1
- package/dist/ionic/{p-582824c5.entry.js → p-9833cf63.entry.js} +1 -1
- package/dist/ionic/{p-675b1a31.entry.js → p-9fae83d8.entry.js} +1 -1
- package/dist/ionic/{p-CwgG81ZD.js → p-B8xlpH8p.js} +1 -1
- 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-D0dMcSkw.js → p-BvFYtOdE.js} +1 -1
- package/dist/ionic/{p-Dc45iWE4.js → p-BxIcPWoV.js} +1 -1
- package/dist/ionic/{p-BYEqWnSg.js → p-C0JvVFMv.js} +1 -1
- 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-D-eFFUkA.js → p-CmFz1Mjc.js} +1 -1
- 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-DdR6rpbR.js → p-DTPR1Wpn.js} +1 -1
- package/dist/ionic/{p-DCv9sLH2.js → p-DjriolRs.js} +1 -1
- package/dist/ionic/p-DtVZDHlS.js +4 -0
- package/dist/ionic/{p-QHYY4sjU.js → p-GWUGgWx6.js} +1 -1
- package/dist/ionic/p-IGIE5vDm.js +5 -0
- package/dist/ionic/{p-BFvmZNyx.js → p-NFFyoJ4Q.js} +1 -1
- package/dist/ionic/{p-86f53961.entry.js → p-a287e18e.entry.js} +1 -1
- package/dist/ionic/p-a805674e.entry.js +4 -0
- package/dist/ionic/p-a81ae2cd.entry.js +4 -0
- package/dist/ionic/{p-da7d04cc.entry.js → p-a84f2d21.entry.js} +1 -1
- package/dist/ionic/{p-dbbe606a.entry.js → p-b2d5238b.entry.js} +1 -1
- package/dist/ionic/{p-d1f54e28.entry.js → p-b440381f.entry.js} +1 -1
- package/dist/ionic/{p-72c38b88.entry.js → p-b4d52b58.entry.js} +1 -1
- package/dist/ionic/{p-2a939845.entry.js → p-b67a2114.entry.js} +1 -1
- package/dist/ionic/{p-c73627c8.entry.js → p-bced1f3e.entry.js} +1 -1
- package/dist/ionic/{p-9a2d390d.entry.js → p-c1c9b2bb.entry.js} +1 -1
- package/dist/ionic/{p-f8f22cc0.entry.js → p-c3e65e45.entry.js} +1 -1
- package/dist/ionic/p-c76cc21d.entry.js +4 -0
- package/dist/ionic/{p-b0a7585c.entry.js → p-ca31010f.entry.js} +1 -1
- package/dist/ionic/p-cbf245b5.entry.js +4 -0
- package/dist/ionic/p-d68b665a.entry.js +4 -0
- package/dist/ionic/{p-9575b654.entry.js → p-e663bc5a.entry.js} +1 -1
- package/dist/ionic/p-efe86ed9.entry.js +4 -0
- package/dist/ionic/{p-ac4eb91d.entry.js → p-f5dfb9a3.entry.js} +1 -1
- package/dist/ionic/{p-DbQ5QkTP.js → p-gbVXD275.js} +1 -1
- package/dist/ionic/p-hNN3VvaC.js +4 -0
- package/dist/types/components/datetime/datetime.d.ts +9 -0
- package/dist/types/components/header/header.utils.d.ts +2 -1
- package/dist/types/components/modal/modal-interface.d.ts +5 -1
- package/dist/types/components/modal/modal.d.ts +5 -0
- 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.d.ts +927 -189
- package/dist/types/interface.d.ts +1 -1
- 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 +5202 -1327
- package/hydrate/index.mjs +5201 -1328
- package/package.json +2 -2
- package/dist/cjs/app-globals-Ciccnk9_.js +0 -10
- package/dist/esm/app-globals-BDSf8fOA.js +0 -8
- package/dist/ionic/p-012212e4.entry.js +0 -4
- package/dist/ionic/p-074839fc.entry.js +0 -4
- package/dist/ionic/p-0dfa5a37.entry.js +0 -4
- package/dist/ionic/p-0f418a37.entry.js +0 -4
- package/dist/ionic/p-11518b31.entry.js +0 -4
- package/dist/ionic/p-1838bed5.entry.js +0 -4
- package/dist/ionic/p-29721c43.entry.js +0 -4
- package/dist/ionic/p-31f7095f.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-40c261a3.entry.js +0 -4
- package/dist/ionic/p-4e41ea20.entry.js +0 -4
- package/dist/ionic/p-6241ce47.entry.js +0 -4
- package/dist/ionic/p-639dd543.entry.js +0 -4
- package/dist/ionic/p-6444c606.entry.js +0 -4
- package/dist/ionic/p-6d070558.entry.js +0 -4
- package/dist/ionic/p-7268efa5.entry.js +0 -4
- package/dist/ionic/p-7babec72.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-DUt5fQmA.js +0 -4
- package/dist/ionic/p-DZRJwG4S.js +0 -4
- package/dist/ionic/p-a127bee2.entry.js +0 -4
- package/dist/ionic/p-b3d44509.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-d3014190.entry.js +0 -4
- package/dist/ionic/p-db82892c.entry.js +0 -4
- package/dist/ionic/p-e1d1f3cc.entry.js +0 -4
|
@@ -1,460 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
5
|
-
import { g as getElementRoot, r as raf, a as addEventListener, b as removeEventListener, t as transitionEndAsync } from './helpers.js';
|
|
6
|
-
import { c as chevronDown } from './index6.js';
|
|
7
|
-
import { c as config } from './index4.js';
|
|
8
|
-
import { b as getIonMode } from './ionic-global.js';
|
|
9
|
-
import { d as defineCustomElement$2 } from './icon.js';
|
|
10
|
-
|
|
11
|
-
const accordionIosCss = ":host{display:block;position:relative;width:100%;background-color:var(--ion-background-color, #ffffff);overflow:hidden;z-index:0}:host(.accordion-expanding) ::slotted(ion-item[slot=header]),:host(.accordion-expanded) ::slotted(ion-item[slot=header]){--border-width:0px}:host(.accordion-animated){-webkit-transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}:host(.accordion-animated) #content{-webkit-transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}#content{overflow:hidden;will-change:max-height}:host(.accordion-collapsing) #content{max-height:0 !important}:host(.accordion-collapsed) #content{display:none}:host(.accordion-expanding) #content{max-height:0}:host(.accordion-expanding) #content-wrapper{overflow:auto}:host(.accordion-disabled) #header,:host(.accordion-readonly) #header,:host(.accordion-disabled) #content,:host(.accordion-readonly) #content{pointer-events:none}:host(.accordion-disabled) #header,:host(.accordion-disabled) #content{opacity:0.4}@media (prefers-reduced-motion: reduce){:host,#content{-webkit-transition:none !important;transition:none !important}}:host(.accordion-next) ::slotted(ion-item[slot=header]){--border-width:0.55px 0px 0.55px 0px}";
|
|
12
|
-
|
|
13
|
-
const accordionMdCss = ":host{display:block;position:relative;width:100%;background-color:var(--ion-background-color, #ffffff);overflow:hidden;z-index:0}:host(.accordion-expanding) ::slotted(ion-item[slot=header]),:host(.accordion-expanded) ::slotted(ion-item[slot=header]){--border-width:0px}:host(.accordion-animated){-webkit-transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}:host(.accordion-animated) #content{-webkit-transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}#content{overflow:hidden;will-change:max-height}:host(.accordion-collapsing) #content{max-height:0 !important}:host(.accordion-collapsed) #content{display:none}:host(.accordion-expanding) #content{max-height:0}:host(.accordion-expanding) #content-wrapper{overflow:auto}:host(.accordion-disabled) #header,:host(.accordion-readonly) #header,:host(.accordion-disabled) #content,:host(.accordion-readonly) #content{pointer-events:none}:host(.accordion-disabled) #header,:host(.accordion-disabled) #content{opacity:0.4}@media (prefers-reduced-motion: reduce){:host,#content{-webkit-transition:none !important;transition:none !important}}";
|
|
14
|
-
|
|
15
|
-
const Accordion = /*@__PURE__*/ proxyCustomElement(class Accordion extends HTMLElement {
|
|
16
|
-
constructor(registerHost) {
|
|
17
|
-
super();
|
|
18
|
-
if (registerHost !== false) {
|
|
19
|
-
this.__registerHost();
|
|
20
|
-
}
|
|
21
|
-
this.__attachShadow();
|
|
22
|
-
this.accordionGroupUpdateHandler = () => {
|
|
23
|
-
/**
|
|
24
|
-
* Determine if this update will cause an actual state change.
|
|
25
|
-
* We only want to mark as "interacted" if the state is changing.
|
|
26
|
-
*/
|
|
27
|
-
const accordionGroup = this.accordionGroupEl;
|
|
28
|
-
if (accordionGroup) {
|
|
29
|
-
const value = accordionGroup.value;
|
|
30
|
-
const accordionValue = this.value;
|
|
31
|
-
const shouldExpand = Array.isArray(value) ? value.includes(accordionValue) : value === accordionValue;
|
|
32
|
-
const isExpanded = this.state === 4 /* AccordionState.Expanded */ || this.state === 8 /* AccordionState.Expanding */;
|
|
33
|
-
const stateWillChange = shouldExpand !== isExpanded;
|
|
34
|
-
/**
|
|
35
|
-
* Only mark as interacted if:
|
|
36
|
-
* 1. This is not the first update we've received with a defined value
|
|
37
|
-
* 2. The state is actually changing (prevents redundant updates from enabling animations)
|
|
38
|
-
*/
|
|
39
|
-
if (this.hasReceivedFirstUpdate && stateWillChange) {
|
|
40
|
-
this.hasInteracted = true;
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Only count this as the first update if the group value is defined.
|
|
44
|
-
* This prevents the initial undefined value from the group's componentDidLoad
|
|
45
|
-
* from being treated as the first real update.
|
|
46
|
-
*/
|
|
47
|
-
if (value !== undefined) {
|
|
48
|
-
this.hasReceivedFirstUpdate = true;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
this.updateState();
|
|
52
|
-
};
|
|
53
|
-
this.state = 1 /* AccordionState.Collapsed */;
|
|
54
|
-
this.isNext = false;
|
|
55
|
-
this.isPrevious = false;
|
|
56
|
-
/**
|
|
57
|
-
* Tracks whether a user-initiated interaction has occurred.
|
|
58
|
-
* Animations are disabled until the first interaction happens.
|
|
59
|
-
* This prevents the accordion from animating when it's programmatically
|
|
60
|
-
* set to an expanded or collapsed state on initial load.
|
|
61
|
-
*/
|
|
62
|
-
this.hasInteracted = false;
|
|
63
|
-
/**
|
|
64
|
-
* Tracks if this accordion has ever been expanded.
|
|
65
|
-
* Used to prevent the first expansion from animating.
|
|
66
|
-
*/
|
|
67
|
-
this.hasEverBeenExpanded = false;
|
|
68
|
-
/**
|
|
69
|
-
* Tracks if this accordion has received its first update from the group.
|
|
70
|
-
* Used to distinguish initial programmatic sets from user interactions.
|
|
71
|
-
*/
|
|
72
|
-
this.hasReceivedFirstUpdate = false;
|
|
73
|
-
/**
|
|
74
|
-
* The value of the accordion. Defaults to an autogenerated
|
|
75
|
-
* value.
|
|
76
|
-
*/
|
|
77
|
-
this.value = `ion-accordion-${accordionIds++}`;
|
|
78
|
-
/**
|
|
79
|
-
* If `true`, the accordion cannot be interacted with.
|
|
80
|
-
*/
|
|
81
|
-
this.disabled = false;
|
|
82
|
-
/**
|
|
83
|
-
* If `true`, the accordion cannot be interacted with,
|
|
84
|
-
* but does not alter the opacity.
|
|
85
|
-
*/
|
|
86
|
-
this.readonly = false;
|
|
87
|
-
/**
|
|
88
|
-
* The toggle icon to use. This icon will be
|
|
89
|
-
* rotated when the accordion is expanded
|
|
90
|
-
* or collapsed.
|
|
91
|
-
*/
|
|
92
|
-
this.toggleIcon = chevronDown;
|
|
93
|
-
/**
|
|
94
|
-
* The slot inside of `ion-item` to
|
|
95
|
-
* place the toggle icon. Defaults to `"end"`.
|
|
96
|
-
*/
|
|
97
|
-
this.toggleIconSlot = 'end';
|
|
98
|
-
this.setItemDefaults = () => {
|
|
99
|
-
const ionItem = this.getSlottedHeaderIonItem();
|
|
100
|
-
if (!ionItem) {
|
|
101
|
-
return;
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* For a11y purposes, we make
|
|
105
|
-
* the ion-item a button so users
|
|
106
|
-
* can tab to it and use keyboard
|
|
107
|
-
* navigation to get around.
|
|
108
|
-
*/
|
|
109
|
-
ionItem.button = true;
|
|
110
|
-
ionItem.detail = false;
|
|
111
|
-
/**
|
|
112
|
-
* By default, the lines in an
|
|
113
|
-
* item should be full here, but
|
|
114
|
-
* only do that if a user has
|
|
115
|
-
* not explicitly overridden them
|
|
116
|
-
*/
|
|
117
|
-
if (ionItem.lines === undefined) {
|
|
118
|
-
ionItem.lines = 'full';
|
|
119
|
-
}
|
|
120
|
-
};
|
|
121
|
-
this.getSlottedHeaderIonItem = () => {
|
|
122
|
-
const { headerEl } = this;
|
|
123
|
-
if (!headerEl) {
|
|
124
|
-
return;
|
|
125
|
-
}
|
|
126
|
-
/**
|
|
127
|
-
* Get the first ion-item
|
|
128
|
-
* slotted in the header slot
|
|
129
|
-
*/
|
|
130
|
-
const slot = headerEl.querySelector('slot');
|
|
131
|
-
if (!slot) {
|
|
132
|
-
return;
|
|
133
|
-
}
|
|
134
|
-
// This is not defined in unit tests
|
|
135
|
-
if (slot.assignedElements === undefined)
|
|
136
|
-
return;
|
|
137
|
-
return slot.assignedElements().find((el) => el.tagName === 'ION-ITEM');
|
|
138
|
-
};
|
|
139
|
-
this.setAria = (expanded = false) => {
|
|
140
|
-
const ionItem = this.getSlottedHeaderIonItem();
|
|
141
|
-
if (!ionItem) {
|
|
142
|
-
return;
|
|
143
|
-
}
|
|
144
|
-
/**
|
|
145
|
-
* Get the native <button> element inside of
|
|
146
|
-
* ion-item because that is what will be focused
|
|
147
|
-
*/
|
|
148
|
-
const root = getElementRoot(ionItem);
|
|
149
|
-
const button = root.querySelector('button');
|
|
150
|
-
if (!button) {
|
|
151
|
-
return;
|
|
152
|
-
}
|
|
153
|
-
button.setAttribute('aria-expanded', `${expanded}`);
|
|
154
|
-
};
|
|
155
|
-
this.slotToggleIcon = () => {
|
|
156
|
-
const ionItem = this.getSlottedHeaderIonItem();
|
|
157
|
-
if (!ionItem) {
|
|
158
|
-
return;
|
|
159
|
-
}
|
|
160
|
-
const { toggleIconSlot, toggleIcon } = this;
|
|
161
|
-
/**
|
|
162
|
-
* Check if there already is a toggle icon.
|
|
163
|
-
* If so, do not add another one.
|
|
164
|
-
*/
|
|
165
|
-
const existingToggleIcon = ionItem.querySelector('.ion-accordion-toggle-icon');
|
|
166
|
-
if (existingToggleIcon) {
|
|
167
|
-
return;
|
|
168
|
-
}
|
|
169
|
-
const iconEl = document.createElement('ion-icon');
|
|
170
|
-
iconEl.slot = toggleIconSlot;
|
|
171
|
-
iconEl.lazy = false;
|
|
172
|
-
iconEl.classList.add('ion-accordion-toggle-icon');
|
|
173
|
-
iconEl.icon = toggleIcon;
|
|
174
|
-
iconEl.setAttribute('aria-hidden', 'true');
|
|
175
|
-
ionItem.appendChild(iconEl);
|
|
176
|
-
};
|
|
177
|
-
this.expandAccordion = () => {
|
|
178
|
-
const { contentEl, contentElWrapper } = this;
|
|
179
|
-
/**
|
|
180
|
-
* If the content elements aren't available yet, just set the state.
|
|
181
|
-
* This happens on initial render before the DOM is ready.
|
|
182
|
-
*/
|
|
183
|
-
if (contentEl === undefined || contentElWrapper === undefined) {
|
|
184
|
-
this.state = 4 /* AccordionState.Expanded */;
|
|
185
|
-
this.hasEverBeenExpanded = true;
|
|
186
|
-
return;
|
|
187
|
-
}
|
|
188
|
-
if (this.state === 4 /* AccordionState.Expanded */) {
|
|
189
|
-
return;
|
|
190
|
-
}
|
|
191
|
-
if (this.currentRaf !== undefined) {
|
|
192
|
-
cancelAnimationFrame(this.currentRaf);
|
|
193
|
-
}
|
|
194
|
-
/**
|
|
195
|
-
* Mark that this accordion has been expanded at least once.
|
|
196
|
-
* This allows subsequent expansions to animate.
|
|
197
|
-
*/
|
|
198
|
-
this.hasEverBeenExpanded = true;
|
|
199
|
-
if (this.shouldAnimate()) {
|
|
200
|
-
raf(() => {
|
|
201
|
-
this.state = 8 /* AccordionState.Expanding */;
|
|
202
|
-
this.currentRaf = raf(async () => {
|
|
203
|
-
const contentHeight = contentElWrapper.offsetHeight;
|
|
204
|
-
const waitForTransition = transitionEndAsync(contentEl, 2000);
|
|
205
|
-
contentEl.style.setProperty('max-height', `${contentHeight}px`);
|
|
206
|
-
await waitForTransition;
|
|
207
|
-
this.state = 4 /* AccordionState.Expanded */;
|
|
208
|
-
contentEl.style.removeProperty('max-height');
|
|
209
|
-
});
|
|
210
|
-
});
|
|
211
|
-
}
|
|
212
|
-
else {
|
|
213
|
-
this.state = 4 /* AccordionState.Expanded */;
|
|
214
|
-
}
|
|
215
|
-
};
|
|
216
|
-
this.collapseAccordion = () => {
|
|
217
|
-
const { contentEl } = this;
|
|
218
|
-
/**
|
|
219
|
-
* If the content element isn't available yet, just set the state.
|
|
220
|
-
* This happens on initial render before the DOM is ready.
|
|
221
|
-
*/
|
|
222
|
-
if (contentEl === undefined) {
|
|
223
|
-
this.state = 1 /* AccordionState.Collapsed */;
|
|
224
|
-
return;
|
|
225
|
-
}
|
|
226
|
-
if (this.state === 1 /* AccordionState.Collapsed */) {
|
|
227
|
-
return;
|
|
228
|
-
}
|
|
229
|
-
if (this.currentRaf !== undefined) {
|
|
230
|
-
cancelAnimationFrame(this.currentRaf);
|
|
231
|
-
}
|
|
232
|
-
if (this.shouldAnimate()) {
|
|
233
|
-
this.currentRaf = raf(async () => {
|
|
234
|
-
const contentHeight = contentEl.offsetHeight;
|
|
235
|
-
contentEl.style.setProperty('max-height', `${contentHeight}px`);
|
|
236
|
-
raf(async () => {
|
|
237
|
-
const waitForTransition = transitionEndAsync(contentEl, 2000);
|
|
238
|
-
this.state = 2 /* AccordionState.Collapsing */;
|
|
239
|
-
await waitForTransition;
|
|
240
|
-
this.state = 1 /* AccordionState.Collapsed */;
|
|
241
|
-
contentEl.style.removeProperty('max-height');
|
|
242
|
-
});
|
|
243
|
-
});
|
|
244
|
-
}
|
|
245
|
-
else {
|
|
246
|
-
this.state = 1 /* AccordionState.Collapsed */;
|
|
247
|
-
}
|
|
248
|
-
};
|
|
249
|
-
/**
|
|
250
|
-
* Helper function to determine if
|
|
251
|
-
* something should animate.
|
|
252
|
-
* If prefers-reduced-motion is set
|
|
253
|
-
* then we should not animate, regardless
|
|
254
|
-
* of what is set in the config.
|
|
255
|
-
*/
|
|
256
|
-
this.shouldAnimate = () => {
|
|
257
|
-
/**
|
|
258
|
-
* Don't animate until after the first user interaction.
|
|
259
|
-
* This prevents animations on initial load when accordions
|
|
260
|
-
* start in an expanded or collapsed state programmatically.
|
|
261
|
-
*
|
|
262
|
-
* Additionally, don't animate the very first expansion even if
|
|
263
|
-
* hasInteracted is true. This handles edge cases like React StrictMode
|
|
264
|
-
* where effects run twice and might incorrectly mark as interacted.
|
|
265
|
-
*/
|
|
266
|
-
if (!this.hasInteracted || !this.hasEverBeenExpanded) {
|
|
267
|
-
return false;
|
|
268
|
-
}
|
|
269
|
-
if (typeof window === 'undefined') {
|
|
270
|
-
return false;
|
|
271
|
-
}
|
|
272
|
-
const prefersReducedMotion = matchMedia('(prefers-reduced-motion: reduce)').matches;
|
|
273
|
-
if (prefersReducedMotion) {
|
|
274
|
-
return false;
|
|
275
|
-
}
|
|
276
|
-
const animated = config.get('animated', true);
|
|
277
|
-
if (!animated) {
|
|
278
|
-
return false;
|
|
279
|
-
}
|
|
280
|
-
if (this.accordionGroupEl && !this.accordionGroupEl.animated) {
|
|
281
|
-
return false;
|
|
282
|
-
}
|
|
283
|
-
return true;
|
|
284
|
-
};
|
|
285
|
-
this.updateState = async () => {
|
|
286
|
-
const accordionGroup = this.accordionGroupEl;
|
|
287
|
-
const accordionValue = this.value;
|
|
288
|
-
if (!accordionGroup) {
|
|
289
|
-
return;
|
|
290
|
-
}
|
|
291
|
-
const value = accordionGroup.value;
|
|
292
|
-
const shouldExpand = Array.isArray(value) ? value.includes(accordionValue) : value === accordionValue;
|
|
293
|
-
if (shouldExpand) {
|
|
294
|
-
this.expandAccordion();
|
|
295
|
-
this.isNext = this.isPrevious = false;
|
|
296
|
-
}
|
|
297
|
-
else {
|
|
298
|
-
this.collapseAccordion();
|
|
299
|
-
/**
|
|
300
|
-
* When using popout or inset,
|
|
301
|
-
* the collapsed accordion items
|
|
302
|
-
* may need additional border radius
|
|
303
|
-
* applied. Check to see if the
|
|
304
|
-
* next or previous accordion is selected.
|
|
305
|
-
*/
|
|
306
|
-
const nextAccordion = this.getNextSibling();
|
|
307
|
-
const nextAccordionValue = nextAccordion === null || nextAccordion === void 0 ? void 0 : nextAccordion.value;
|
|
308
|
-
if (nextAccordionValue !== undefined) {
|
|
309
|
-
this.isPrevious = Array.isArray(value) ? value.includes(nextAccordionValue) : value === nextAccordionValue;
|
|
310
|
-
}
|
|
311
|
-
const previousAccordion = this.getPreviousSibling();
|
|
312
|
-
const previousAccordionValue = previousAccordion === null || previousAccordion === void 0 ? void 0 : previousAccordion.value;
|
|
313
|
-
if (previousAccordionValue !== undefined) {
|
|
314
|
-
this.isNext = Array.isArray(value) ? value.includes(previousAccordionValue) : value === previousAccordionValue;
|
|
315
|
-
}
|
|
316
|
-
}
|
|
317
|
-
};
|
|
318
|
-
this.getNextSibling = () => {
|
|
319
|
-
if (!this.el) {
|
|
320
|
-
return;
|
|
321
|
-
}
|
|
322
|
-
const nextSibling = this.el.nextElementSibling;
|
|
323
|
-
if ((nextSibling === null || nextSibling === void 0 ? void 0 : nextSibling.tagName) !== 'ION-ACCORDION') {
|
|
324
|
-
return;
|
|
325
|
-
}
|
|
326
|
-
return nextSibling;
|
|
327
|
-
};
|
|
328
|
-
this.getPreviousSibling = () => {
|
|
329
|
-
if (!this.el) {
|
|
330
|
-
return;
|
|
331
|
-
}
|
|
332
|
-
const previousSibling = this.el.previousElementSibling;
|
|
333
|
-
if ((previousSibling === null || previousSibling === void 0 ? void 0 : previousSibling.tagName) !== 'ION-ACCORDION') {
|
|
334
|
-
return;
|
|
335
|
-
}
|
|
336
|
-
return previousSibling;
|
|
337
|
-
};
|
|
338
|
-
}
|
|
339
|
-
valueChanged() {
|
|
340
|
-
this.updateState();
|
|
341
|
-
}
|
|
342
|
-
connectedCallback() {
|
|
343
|
-
var _a;
|
|
344
|
-
const accordionGroupEl = (this.accordionGroupEl = (_a = this.el) === null || _a === void 0 ? void 0 : _a.closest('ion-accordion-group'));
|
|
345
|
-
if (accordionGroupEl) {
|
|
346
|
-
this.updateState();
|
|
347
|
-
addEventListener(accordionGroupEl, 'ionValueChange', this.accordionGroupUpdateHandler);
|
|
348
|
-
}
|
|
349
|
-
}
|
|
350
|
-
disconnectedCallback() {
|
|
351
|
-
const accordionGroupEl = this.accordionGroupEl;
|
|
352
|
-
if (accordionGroupEl) {
|
|
353
|
-
removeEventListener(accordionGroupEl, 'ionValueChange', this.accordionGroupUpdateHandler);
|
|
354
|
-
}
|
|
355
|
-
}
|
|
356
|
-
componentDidLoad() {
|
|
357
|
-
this.setItemDefaults();
|
|
358
|
-
this.slotToggleIcon();
|
|
359
|
-
/**
|
|
360
|
-
* We need to wait a tick because we
|
|
361
|
-
* just set ionItem.button = true and
|
|
362
|
-
* the button has not have been rendered yet.
|
|
363
|
-
*/
|
|
364
|
-
raf(() => {
|
|
365
|
-
/**
|
|
366
|
-
* Set aria label on button inside of ion-item
|
|
367
|
-
* once the inner content has been rendered.
|
|
368
|
-
*/
|
|
369
|
-
const expanded = this.state === 4 /* AccordionState.Expanded */ || this.state === 8 /* AccordionState.Expanding */;
|
|
370
|
-
this.setAria(expanded);
|
|
371
|
-
});
|
|
372
|
-
}
|
|
373
|
-
toggleExpanded() {
|
|
374
|
-
const { accordionGroupEl, disabled, readonly, value, state } = this;
|
|
375
|
-
if (disabled || readonly)
|
|
376
|
-
return;
|
|
377
|
-
/**
|
|
378
|
-
* Mark that the user has interacted with the accordion.
|
|
379
|
-
* This enables animations for all future state changes.
|
|
380
|
-
*/
|
|
381
|
-
this.hasInteracted = true;
|
|
382
|
-
if (accordionGroupEl) {
|
|
383
|
-
/**
|
|
384
|
-
* Because the accordion group may or may
|
|
385
|
-
* not allow multiple accordions open, we
|
|
386
|
-
* need to request the toggling of this
|
|
387
|
-
* accordion and the accordion group will
|
|
388
|
-
* make the decision on whether or not
|
|
389
|
-
* to allow it.
|
|
390
|
-
*/
|
|
391
|
-
const expand = state === 1 /* AccordionState.Collapsed */ || state === 2 /* AccordionState.Collapsing */;
|
|
392
|
-
accordionGroupEl.requestAccordionToggle(value, expand);
|
|
393
|
-
}
|
|
394
|
-
}
|
|
395
|
-
render() {
|
|
396
|
-
const { disabled, readonly } = this;
|
|
397
|
-
const mode = getIonMode(this);
|
|
398
|
-
const expanded = this.state === 4 /* AccordionState.Expanded */ || this.state === 8 /* AccordionState.Expanding */;
|
|
399
|
-
const headerPart = expanded ? 'header expanded' : 'header';
|
|
400
|
-
const contentPart = expanded ? 'content expanded' : 'content';
|
|
401
|
-
this.setAria(expanded);
|
|
402
|
-
return (h(Host, { key: '9c90bce01eff7e5774a19f69c872f3761d66cf3c', class: {
|
|
403
|
-
[mode]: true,
|
|
404
|
-
'accordion-expanding': this.state === 8 /* AccordionState.Expanding */,
|
|
405
|
-
'accordion-expanded': this.state === 4 /* AccordionState.Expanded */,
|
|
406
|
-
'accordion-collapsing': this.state === 2 /* AccordionState.Collapsing */,
|
|
407
|
-
'accordion-collapsed': this.state === 1 /* AccordionState.Collapsed */,
|
|
408
|
-
'accordion-next': this.isNext,
|
|
409
|
-
'accordion-previous': this.isPrevious,
|
|
410
|
-
'accordion-disabled': disabled,
|
|
411
|
-
'accordion-readonly': readonly,
|
|
412
|
-
'accordion-animated': this.shouldAnimate(),
|
|
413
|
-
} }, h("div", { key: 'cab40d5bcf3c93fd78e70b6d3906a541e725837d', onClick: () => this.toggleExpanded(), id: "header", part: headerPart, "aria-controls": "content", ref: (headerEl) => (this.headerEl = headerEl) }, h("slot", { key: '672bc7fb3f9e18076b41e20fc9eaeab7cafcf3a2', name: "header" })), h("div", { key: 'fd777ca5b4ab04aa4f44c339d58c8cd987c52bcb', id: "content", part: contentPart, role: "region", "aria-labelledby": "header", ref: (contentEl) => (this.contentEl = contentEl) }, h("div", { key: '0aad70a71e2cd2c16b2e98fa0bdd40421d95fe16', id: "content-wrapper", ref: (contentElWrapper) => (this.contentElWrapper = contentElWrapper) }, h("slot", { key: 'd630e10ac7c56b4dbf943b523f26759b83aead55', name: "content" })))));
|
|
414
|
-
}
|
|
415
|
-
static get delegatesFocus() { return true; }
|
|
416
|
-
get el() { return this; }
|
|
417
|
-
static get watchers() { return {
|
|
418
|
-
"value": ["valueChanged"]
|
|
419
|
-
}; }
|
|
420
|
-
static get style() { return {
|
|
421
|
-
ios: accordionIosCss,
|
|
422
|
-
md: accordionMdCss
|
|
423
|
-
}; }
|
|
424
|
-
}, [305, "ion-accordion", {
|
|
425
|
-
"value": [1],
|
|
426
|
-
"disabled": [4],
|
|
427
|
-
"readonly": [4],
|
|
428
|
-
"toggleIcon": [1, "toggle-icon"],
|
|
429
|
-
"toggleIconSlot": [1, "toggle-icon-slot"],
|
|
430
|
-
"state": [32],
|
|
431
|
-
"isNext": [32],
|
|
432
|
-
"isPrevious": [32],
|
|
433
|
-
"hasInteracted": [32]
|
|
434
|
-
}, undefined, {
|
|
435
|
-
"value": ["valueChanged"]
|
|
436
|
-
}]);
|
|
437
|
-
let accordionIds = 0;
|
|
438
|
-
function defineCustomElement$1() {
|
|
439
|
-
if (typeof customElements === "undefined") {
|
|
440
|
-
return;
|
|
441
|
-
}
|
|
442
|
-
const components = ["ion-accordion", "ion-icon"];
|
|
443
|
-
components.forEach(tagName => { switch (tagName) {
|
|
444
|
-
case "ion-accordion":
|
|
445
|
-
if (!customElements.get(tagName)) {
|
|
446
|
-
customElements.define(tagName, Accordion);
|
|
447
|
-
}
|
|
448
|
-
break;
|
|
449
|
-
case "ion-icon":
|
|
450
|
-
if (!customElements.get(tagName)) {
|
|
451
|
-
defineCustomElement$2();
|
|
452
|
-
}
|
|
453
|
-
break;
|
|
454
|
-
} });
|
|
455
|
-
}
|
|
456
|
-
|
|
457
|
-
const IonAccordion = Accordion;
|
|
458
|
-
const defineCustomElement = defineCustomElement$1;
|
|
459
|
-
|
|
460
|
-
export { IonAccordion, defineCustomElement };
|
|
4
|
+
import{proxyCustomElement as t,HTMLElement as i,h as o,Host as e,transformTag as n}from"@stencil/core/internal/client";import{g as s,r as a,a as c,b as d,t as r}from"./helpers.js";import{c as h}from"./index6.js";import{c as l}from"./index4.js";import{b as m}from"./ionic-global.js";import{d as p}from"./icon.js";const b=t(class extends i{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.accordionGroupUpdateHandler=()=>{const t=this.accordionGroupEl;if(t){const i=t.value,o=this.value,e=Array.isArray(i)?i.includes(o):i===o;this.hasReceivedFirstUpdate&&e!==(4===this.state||8===this.state)&&(this.hasInteracted=!0),void 0!==i&&(this.hasReceivedFirstUpdate=!0)}this.updateState()},this.state=1,this.isNext=!1,this.isPrevious=!1,this.hasInteracted=!1,this.hasEverBeenExpanded=!1,this.hasReceivedFirstUpdate=!1,this.value="ion-accordion-"+u++,this.disabled=!1,this.readonly=!1,this.toggleIcon=h,this.toggleIconSlot="end",this.setItemDefaults=()=>{const t=this.getSlottedHeaderIonItem();t&&(t.button=!0,t.detail=!1,void 0===t.lines&&(t.lines="full"))},this.getSlottedHeaderIonItem=()=>{const{headerEl:t}=this;if(!t)return;const i=t.querySelector("slot");return i&&void 0!==i.assignedElements?i.assignedElements().find((t=>"ION-ITEM"===t.tagName)):void 0},this.setAria=(t=!1)=>{const i=this.getSlottedHeaderIonItem();if(!i)return;const o=s(i).querySelector("button");o&&o.setAttribute("aria-expanded",""+t)},this.slotToggleIcon=()=>{const t=this.getSlottedHeaderIonItem();if(!t)return;const{toggleIconSlot:i,toggleIcon:o}=this;if(t.querySelector(".ion-accordion-toggle-icon"))return;const e=document.createElement("ion-icon");e.slot=i,e.lazy=!1,e.classList.add("ion-accordion-toggle-icon"),e.icon=o,e.setAttribute("aria-hidden","true"),t.appendChild(e)},this.expandAccordion=()=>{const{contentEl:t,contentElWrapper:i}=this;if(void 0===t||void 0===i)return this.state=4,void(this.hasEverBeenExpanded=!0);4!==this.state&&(void 0!==this.currentRaf&&cancelAnimationFrame(this.currentRaf),this.hasEverBeenExpanded=!0,this.shouldAnimate()?a((()=>{this.state=8,this.currentRaf=a((async()=>{const o=i.offsetHeight,e=r(t,2e3);t.style.setProperty("max-height",o+"px"),await e,this.state=4,t.style.removeProperty("max-height")}))})):this.state=4)},this.collapseAccordion=()=>{const{contentEl:t}=this;void 0!==t?1!==this.state&&(void 0!==this.currentRaf&&cancelAnimationFrame(this.currentRaf),this.shouldAnimate()?this.currentRaf=a((async()=>{t.style.setProperty("max-height",t.offsetHeight+"px"),a((async()=>{const i=r(t,2e3);this.state=2,await i,this.state=1,t.style.removeProperty("max-height")}))})):this.state=1):this.state=1},this.shouldAnimate=()=>!(!this.hasInteracted||!this.hasEverBeenExpanded)&&("undefined"!=typeof window&&(!matchMedia("(prefers-reduced-motion: reduce)").matches&&!(!l.get("animated",!0)||this.accordionGroupEl&&!this.accordionGroupEl.animated))),this.updateState=async()=>{const t=this.accordionGroupEl,i=this.value;if(!t)return;const o=t.value;if(Array.isArray(o)?o.includes(i):o===i)this.expandAccordion(),this.isNext=this.isPrevious=!1;else{this.collapseAccordion();const t=this.getNextSibling(),i=null==t?void 0:t.value;void 0!==i&&(this.isPrevious=Array.isArray(o)?o.includes(i):o===i);const e=this.getPreviousSibling(),n=null==e?void 0:e.value;void 0!==n&&(this.isNext=Array.isArray(o)?o.includes(n):o===n)}},this.getNextSibling=()=>{if(!this.el)return;const t=this.el.nextElementSibling;return"ION-ACCORDION"===(null==t?void 0:t.tagName)?t:void 0},this.getPreviousSibling=()=>{if(!this.el)return;const t=this.el.previousElementSibling;return"ION-ACCORDION"===(null==t?void 0:t.tagName)?t:void 0}}valueChanged(){this.updateState()}connectedCallback(){var t;const i=this.accordionGroupEl=null===(t=this.el)||void 0===t?void 0:t.closest("ion-accordion-group");i&&(this.updateState(),c(i,"ionValueChange",this.accordionGroupUpdateHandler))}disconnectedCallback(){const t=this.accordionGroupEl;t&&d(t,"ionValueChange",this.accordionGroupUpdateHandler)}componentDidLoad(){this.setItemDefaults(),this.slotToggleIcon(),a((()=>{this.setAria(4===this.state||8===this.state)}))}toggleExpanded(){const{accordionGroupEl:t,disabled:i,readonly:o,value:e,state:n}=this;i||o||(this.hasInteracted=!0,!t)||t.requestAccordionToggle(e,1===n||2===n)}render(){const{disabled:t,readonly:i}=this,n=m(this),s=4===this.state||8===this.state,a=s?"header expanded":"header",c=s?"content expanded":"content";return this.setAria(s),o(e,{key:"9c90bce01eff7e5774a19f69c872f3761d66cf3c",class:{[n]:!0,"accordion-expanding":8===this.state,"accordion-expanded":4===this.state,"accordion-collapsing":2===this.state,"accordion-collapsed":1===this.state,"accordion-next":this.isNext,"accordion-previous":this.isPrevious,"accordion-disabled":t,"accordion-readonly":i,"accordion-animated":this.shouldAnimate()}},o("div",{key:"cab40d5bcf3c93fd78e70b6d3906a541e725837d",onClick:()=>this.toggleExpanded(),id:"header",part:a,"aria-controls":"content",ref:t=>this.headerEl=t},o("slot",{key:"672bc7fb3f9e18076b41e20fc9eaeab7cafcf3a2",name:"header"})),o("div",{key:"fd777ca5b4ab04aa4f44c339d58c8cd987c52bcb",id:"content",part:c,role:"region","aria-labelledby":"header",ref:t=>this.contentEl=t},o("div",{key:"0aad70a71e2cd2c16b2e98fa0bdd40421d95fe16",id:"content-wrapper",ref:t=>this.contentElWrapper=t},o("slot",{key:"d630e10ac7c56b4dbf943b523f26759b83aead55",name:"content"}))))}static get delegatesFocus(){return!0}get el(){return this}static get watchers(){return{value:[{valueChanged:0}]}}static get style(){return{ios:":host{display:block;position:relative;width:100%;background-color:var(--ion-background-color, #ffffff);overflow:hidden;z-index:0}:host(.accordion-expanding) ::slotted(ion-item[slot=header]),:host(.accordion-expanded) ::slotted(ion-item[slot=header]){--border-width:0px}:host(.accordion-animated){-webkit-transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}:host(.accordion-animated) #content{-webkit-transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}#content{overflow:hidden;will-change:max-height}:host(.accordion-collapsing) #content{max-height:0 !important}:host(.accordion-collapsed) #content{display:none}:host(.accordion-expanding) #content{max-height:0}:host(.accordion-expanding) #content-wrapper{overflow:auto}:host(.accordion-disabled) #header,:host(.accordion-readonly) #header,:host(.accordion-disabled) #content,:host(.accordion-readonly) #content{pointer-events:none}:host(.accordion-disabled) #header,:host(.accordion-disabled) #content{opacity:0.4}@media (prefers-reduced-motion: reduce){:host,#content{-webkit-transition:none !important;transition:none !important}}:host(.accordion-next) ::slotted(ion-item[slot=header]){--border-width:0.55px 0px 0.55px 0px}",md:":host{display:block;position:relative;width:100%;background-color:var(--ion-background-color, #ffffff);overflow:hidden;z-index:0}:host(.accordion-expanding) ::slotted(ion-item[slot=header]),:host(.accordion-expanded) ::slotted(ion-item[slot=header]){--border-width:0px}:host(.accordion-animated){-webkit-transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}:host(.accordion-animated) #content{-webkit-transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}#content{overflow:hidden;will-change:max-height}:host(.accordion-collapsing) #content{max-height:0 !important}:host(.accordion-collapsed) #content{display:none}:host(.accordion-expanding) #content{max-height:0}:host(.accordion-expanding) #content-wrapper{overflow:auto}:host(.accordion-disabled) #header,:host(.accordion-readonly) #header,:host(.accordion-disabled) #content,:host(.accordion-readonly) #content{pointer-events:none}:host(.accordion-disabled) #header,:host(.accordion-disabled) #content{opacity:0.4}@media (prefers-reduced-motion: reduce){:host,#content{-webkit-transition:none !important;transition:none !important}}"}}},[305,"ion-accordion",{value:[1],disabled:[4],readonly:[4],toggleIcon:[1,"toggle-icon"],toggleIconSlot:[1,"toggle-icon-slot"],state:[32],isNext:[32],isPrevious:[32],hasInteracted:[32]},void 0,{value:[{valueChanged:0}]}]);let u=0;const f=b,g=function(){"undefined"!=typeof customElements&&["ion-accordion","ion-icon"].forEach((t=>{switch(t){case"ion-accordion":customElements.get(n(t))||customElements.define(n(t),b);break;case"ion-icon":customElements.get(n(t))||p()}}))};export{f as IonAccordion,g as defineCustomElement}
|
|
@@ -1,9 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
const IonActionSheet = ActionSheet;
|
|
7
|
-
const defineCustomElement = defineCustomElement$1;
|
|
8
|
-
|
|
9
|
-
export { IonActionSheet, defineCustomElement };
|
|
4
|
+
import{A as o,d as s}from"./action-sheet.js";const t=o,a=s;export{t as IonActionSheet,a as defineCustomElement}
|
package/components/ion-alert.js
CHANGED
|
@@ -1,9 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
const IonAlert = Alert;
|
|
7
|
-
const defineCustomElement = defineCustomElement$1;
|
|
8
|
-
|
|
9
|
-
export { IonAlert, defineCustomElement };
|
|
4
|
+
import{A as o,d as r}from"./alert.js";const s=o,t=r;export{s as IonAlert,t as defineCustomElement}
|
package/components/ion-app.js
CHANGED
|
@@ -1,131 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
5
|
-
import { shouldUseCloseWatcher } from './hardware-back-button.js';
|
|
6
|
-
import { c as config, p as printIonWarning } from './index4.js';
|
|
7
|
-
import { b as getIonMode, a as isPlatform } from './ionic-global.js';
|
|
8
|
-
|
|
9
|
-
const appCss = "html.plt-mobile ion-app{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}html.plt-mobile ion-app [contenteditable]{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}ion-app.force-statusbar-padding{--ion-safe-area-top:20px}";
|
|
10
|
-
|
|
11
|
-
const App = /*@__PURE__*/ proxyCustomElement(class App extends HTMLElement {
|
|
12
|
-
constructor(registerHost) {
|
|
13
|
-
super();
|
|
14
|
-
if (registerHost !== false) {
|
|
15
|
-
this.__registerHost();
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
componentDidLoad() {
|
|
19
|
-
if (Build.isBrowser) {
|
|
20
|
-
rIC(async () => {
|
|
21
|
-
const isHybrid = isPlatform(window, 'hybrid');
|
|
22
|
-
if (!config.getBoolean('_testing')) {
|
|
23
|
-
import('./index7.js').then((module) => module.startTapClick(config));
|
|
24
|
-
}
|
|
25
|
-
if (config.getBoolean('statusTap', isHybrid)) {
|
|
26
|
-
import('./status-tap.js').then((module) => module.startStatusTap());
|
|
27
|
-
}
|
|
28
|
-
if (config.getBoolean('inputShims', needInputShims())) {
|
|
29
|
-
/**
|
|
30
|
-
* needInputShims() ensures that only iOS and Android
|
|
31
|
-
* platforms proceed into this block.
|
|
32
|
-
*/
|
|
33
|
-
const platform = isPlatform(window, 'ios') ? 'ios' : 'android';
|
|
34
|
-
import('./input-shims.js').then((module) => module.startInputShims(config, platform));
|
|
35
|
-
}
|
|
36
|
-
const hardwareBackButtonModule = await import('./hardware-back-button.js');
|
|
37
|
-
const supportsHardwareBackButtonEvents = isHybrid || shouldUseCloseWatcher();
|
|
38
|
-
if (config.getBoolean('hardwareBackButton', supportsHardwareBackButtonEvents)) {
|
|
39
|
-
hardwareBackButtonModule.startHardwareBackButton();
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
/**
|
|
43
|
-
* If an app sets hardwareBackButton: false and experimentalCloseWatcher: true
|
|
44
|
-
* then the close watcher will not be used.
|
|
45
|
-
*/
|
|
46
|
-
if (shouldUseCloseWatcher()) {
|
|
47
|
-
printIonWarning('[ion-app] - experimentalCloseWatcher was set to `true`, but hardwareBackButton was set to `false`. Both config options must be `true` for the Close Watcher API to be used.');
|
|
48
|
-
}
|
|
49
|
-
hardwareBackButtonModule.blockHardwareBackButton();
|
|
50
|
-
}
|
|
51
|
-
if (typeof window !== 'undefined') {
|
|
52
|
-
import('./keyboard.js').then((module) => module.startKeyboardAssist(window));
|
|
53
|
-
}
|
|
54
|
-
import('./focus-visible.js').then((module) => (this.focusVisible = module.startFocusVisible()));
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Used to set focus on an element that uses `ion-focusable`.
|
|
60
|
-
* Do not use this if focusing the element as a result of a keyboard
|
|
61
|
-
* event as the focus utility should handle this for us. This method
|
|
62
|
-
* should be used when we want to programmatically focus an element as
|
|
63
|
-
* a result of another user action. (Ex: We focus the first element
|
|
64
|
-
* inside of a popover when the user presents it, but the popover is not always
|
|
65
|
-
* presented as a result of keyboard action.)
|
|
66
|
-
*
|
|
67
|
-
* @param elements An array of HTML elements to set focus on.
|
|
68
|
-
*/
|
|
69
|
-
async setFocus(elements) {
|
|
70
|
-
if (this.focusVisible) {
|
|
71
|
-
this.focusVisible.setFocus(elements);
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
render() {
|
|
75
|
-
const mode = getIonMode(this);
|
|
76
|
-
return (h(Host, { key: '9be440c65819e4fa67c2c3c6477ab40b3ad3eed3', class: {
|
|
77
|
-
[mode]: true,
|
|
78
|
-
'ion-page': true,
|
|
79
|
-
'force-statusbar-padding': config.getBoolean('_forceStatusbarPadding'),
|
|
80
|
-
} }));
|
|
81
|
-
}
|
|
82
|
-
get el() { return this; }
|
|
83
|
-
static get style() { return appCss; }
|
|
84
|
-
}, [256, "ion-app", {
|
|
85
|
-
"setFocus": [64]
|
|
86
|
-
}]);
|
|
87
|
-
const needInputShims = () => {
|
|
88
|
-
/**
|
|
89
|
-
* iOS always needs input shims
|
|
90
|
-
*/
|
|
91
|
-
const needsShimsIOS = isPlatform(window, 'ios') && isPlatform(window, 'mobile');
|
|
92
|
-
if (needsShimsIOS) {
|
|
93
|
-
return true;
|
|
94
|
-
}
|
|
95
|
-
/**
|
|
96
|
-
* Android only needs input shims when running
|
|
97
|
-
* in the browser and only if the browser is using the
|
|
98
|
-
* new Chrome 108+ resize behavior: https://developer.chrome.com/blog/viewport-resize-behavior/
|
|
99
|
-
*/
|
|
100
|
-
const isAndroidMobileWeb = isPlatform(window, 'android') && isPlatform(window, 'mobileweb');
|
|
101
|
-
if (isAndroidMobileWeb) {
|
|
102
|
-
return true;
|
|
103
|
-
}
|
|
104
|
-
return false;
|
|
105
|
-
};
|
|
106
|
-
const rIC = (callback) => {
|
|
107
|
-
if ('requestIdleCallback' in window) {
|
|
108
|
-
window.requestIdleCallback(callback);
|
|
109
|
-
}
|
|
110
|
-
else {
|
|
111
|
-
setTimeout(callback, 32);
|
|
112
|
-
}
|
|
113
|
-
};
|
|
114
|
-
function defineCustomElement$1() {
|
|
115
|
-
if (typeof customElements === "undefined") {
|
|
116
|
-
return;
|
|
117
|
-
}
|
|
118
|
-
const components = ["ion-app"];
|
|
119
|
-
components.forEach(tagName => { switch (tagName) {
|
|
120
|
-
case "ion-app":
|
|
121
|
-
if (!customElements.get(tagName)) {
|
|
122
|
-
customElements.define(tagName, App);
|
|
123
|
-
}
|
|
124
|
-
break;
|
|
125
|
-
} });
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
const IonApp = App;
|
|
129
|
-
const defineCustomElement = defineCustomElement$1;
|
|
130
|
-
|
|
131
|
-
export { IonApp, defineCustomElement };
|
|
4
|
+
import{proxyCustomElement as t,HTMLElement as e,Build as s,h as o,Host as i,transformTag as n}from"@stencil/core/internal/client";import{shouldUseCloseWatcher as a}from"./hardware-back-button.js";import{c as r,p as c}from"./index4.js";import{b as p,a as d}from"./ionic-global.js";const u=t(class extends e{constructor(t){super(),!1!==t&&this.__registerHost()}componentDidLoad(){s.isBrowser&&m((async()=>{const t=d(window,"hybrid");if(r.getBoolean("_testing")||import("./index7.js").then((t=>t.startTapClick(r))),r.getBoolean("statusTap",t)&&import("./status-tap.js").then((t=>t.startStatusTap())),r.getBoolean("inputShims",l())){const t=d(window,"ios")?"ios":"android";import("./input-shims.js").then((e=>e.startInputShims(r,t)))}const e=await import("./hardware-back-button.js"),s=t||a();r.getBoolean("hardwareBackButton",s)?e.startHardwareBackButton():(a()&&c("[ion-app] - experimentalCloseWatcher was set to `true`, but hardwareBackButton was set to `false`. Both config options must be `true` for the Close Watcher API to be used."),e.blockHardwareBackButton()),"undefined"!=typeof window&&import("./keyboard.js").then((t=>t.startKeyboardAssist(window))),import("./focus-visible.js").then((t=>this.focusVisible=t.startFocusVisible()))}))}async setFocus(t){this.focusVisible&&this.focusVisible.setFocus(t)}render(){const t=p(this);return o(i,{key:"9be440c65819e4fa67c2c3c6477ab40b3ad3eed3",class:{[t]:!0,"ion-page":!0,"force-statusbar-padding":r.getBoolean("_forceStatusbarPadding")}})}get el(){return this}static get style(){return"html.plt-mobile ion-app{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}html.plt-mobile ion-app [contenteditable]{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}ion-app.force-statusbar-padding{--ion-safe-area-top:20px}"}},[0,"ion-app",{setFocus:[64]}]),l=()=>!(!d(window,"ios")||!d(window,"mobile"))||!(!d(window,"android")||!d(window,"mobileweb")),m=t=>{"requestIdleCallback"in window?window.requestIdleCallback(t):setTimeout(t,32)},w=u,b=function(){"undefined"!=typeof customElements&&["ion-app"].forEach((t=>{"ion-app"===t&&(customElements.get(n(t))||customElements.define(n(t),u))}))};export{w as IonApp,b as defineCustomElement}
|