@ionic/core 8.7.5 → 8.7.6-dev.11758808200.14faa1a0
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 +13 -9
- package/components/alert.js +14 -11
- package/components/animation.js +1 -1
- package/components/backdrop.js +9 -6
- package/components/button.js +41 -10
- package/components/buttons.js +11 -8
- package/components/capacitor.js +1 -1
- package/components/caret-down.js +6 -0
- package/components/caret-left.js +6 -0
- package/components/caret-right.js +6 -0
- package/components/checkbox.js +31 -12
- package/components/content.js +14 -12
- package/components/data.js +5 -5
- package/components/focus-visible.js +23 -1
- package/components/framework-delegate.js +3 -1
- package/components/header.js +28 -16
- package/components/helpers.js +42 -3
- package/components/index5.js +8 -8
- package/components/index6.js +1 -1
- package/components/index7.js +111 -150
- package/components/index8.js +150 -111
- package/components/input-shims.js +2 -2
- package/components/input.utils.js +1 -1
- package/components/ion-accordion-group.js +23 -5
- package/components/ion-accordion.js +32 -21
- package/components/ion-app.js +12 -77
- package/components/ion-avatar.js +58 -5
- package/components/ion-back-button.js +27 -19
- package/components/ion-badge.js +73 -9
- package/components/ion-breadcrumb.js +43 -10
- package/components/ion-breadcrumbs.js +8 -5
- package/components/ion-card-content.js +10 -7
- package/components/ion-card-header.js +9 -6
- package/components/ion-card-subtitle.js +8 -5
- package/components/ion-card-title.js +8 -5
- package/components/ion-card.js +21 -9
- package/components/ion-chip.js +53 -8
- package/components/ion-col.js +51 -50
- package/components/ion-datetime-button.js +8 -5
- package/components/ion-datetime.js +98 -21
- package/components/ion-divider.d.ts +11 -0
- package/components/ion-divider.js +70 -0
- package/components/ion-fab-button.js +31 -15
- package/components/ion-fab-list.js +5 -5
- package/components/ion-fab.js +6 -6
- package/components/ion-footer.js +18 -13
- package/components/ion-grid.js +5 -5
- package/components/ion-img.js +5 -2
- package/components/ion-infinite-scroll-content.js +11 -8
- package/components/ion-infinite-scroll.js +78 -6
- package/components/ion-input-otp.js +9 -6
- package/components/ion-input-password-toggle.js +51 -13
- package/components/ion-input.js +120 -28
- package/components/ion-item-divider.js +8 -5
- package/components/ion-item-group.js +8 -5
- package/components/ion-item-option.js +36 -9
- package/components/ion-item-options.js +10 -7
- package/components/ion-item-sliding.js +5 -5
- package/components/ion-loading.js +12 -9
- package/components/ion-menu-button.js +26 -10
- package/components/ion-menu-toggle.js +5 -5
- package/components/ion-menu.js +10 -8
- package/components/ion-nav-link.js +1 -1
- package/components/ion-nav.js +7 -5
- package/components/ion-note.js +8 -5
- package/components/ion-picker-legacy.js +7 -7
- package/components/ion-progress-bar.js +25 -7
- package/components/ion-range.js +12 -9
- package/components/ion-refresher-content.js +23 -8
- package/components/ion-refresher.js +10 -7
- package/components/ion-reorder-group.js +5 -5
- package/components/ion-reorder.js +30 -5
- package/components/ion-router-link.js +6 -6
- package/components/ion-router-outlet.js +4 -4
- package/components/ion-row.js +6 -3
- package/components/ion-searchbar.js +137 -23
- package/components/ion-segment-button.js +10 -7
- package/components/ion-segment-content.js +1 -1
- package/components/ion-segment-view.js +5 -2
- package/components/ion-segment.js +10 -7
- package/components/ion-select-option.js +5 -2
- package/components/ion-select.js +117 -33
- package/components/ion-skeleton-text.js +5 -5
- package/components/ion-split-pane.js +11 -8
- package/components/ion-tab-bar.js +39 -9
- package/components/ion-tab-button.js +25 -7
- package/components/ion-tab.js +2 -2
- package/components/ion-tabs.js +2 -2
- package/components/ion-text.js +5 -5
- package/components/ion-textarea.js +52 -11
- package/components/ion-thumbnail.js +5 -2
- package/components/ion-toast.js +37 -12
- package/components/ion-toggle.js +74 -17
- package/components/ionic-global.js +349 -15
- package/components/ios.transition.js +1 -0
- package/components/item.js +39 -14
- package/components/keyboard-controller.js +4 -2
- package/components/label.js +8 -5
- package/components/list-header.js +10 -7
- package/components/list.js +27 -6
- package/components/list2.js +6 -0
- package/components/modal.js +48 -20
- package/components/notch-controller.js +1 -1
- package/components/overlays.js +3 -4
- package/components/picker-column-option.js +8 -5
- package/components/picker-column.js +7 -8
- package/components/picker-column2.js +4 -4
- package/components/picker.js +7 -4
- package/components/popover.js +12 -9
- package/components/radio-group.js +10 -5
- package/components/radio.js +11 -8
- package/components/ripple-effect.js +15 -7
- package/components/select-modal.js +4 -4
- package/components/select-popover.js +8 -2
- package/components/spinner.js +31 -8
- package/components/status-tap.js +1 -1
- package/components/title.js +10 -7
- package/components/toolbar.js +153 -9
- package/components/x.js +6 -0
- package/css/core.css +1 -1
- package/css/core.css.map +1 -1
- package/css/display.css +1 -1
- package/css/display.css.map +1 -1
- package/css/flex-utils.css +1 -1
- package/css/flex-utils.css.map +1 -1
- package/css/float-elements.css.map +1 -1
- package/css/global.bundle.css.map +1 -1
- package/css/ionic/bundle.ionic.css +1 -0
- package/css/ionic/bundle.ionic.css.map +1 -0
- package/css/ionic/core.ionic.css +1 -0
- package/css/ionic/core.ionic.css.map +1 -0
- package/css/ionic/global.bundle.ionic.css +1 -0
- package/css/ionic/global.bundle.ionic.css.map +1 -0
- package/css/ionic/ionic-swiper.ionic.css +1 -0
- package/css/ionic/ionic-swiper.ionic.css.map +1 -0
- package/css/ionic/link.ionic.css +1 -0
- package/css/ionic/link.ionic.css.map +1 -0
- package/css/ionic/structure.ionic.css +1 -0
- package/css/ionic/structure.ionic.css.map +1 -0
- package/css/ionic/typography.ionic.css +1 -0
- package/css/ionic/typography.ionic.css.map +1 -0
- package/css/ionic/utils.bundle.ionic.css +1 -0
- package/css/ionic/utils.bundle.ionic.css.map +1 -0
- package/css/ionic-swiper.css +1 -1
- package/css/ionic-swiper.css.map +1 -1
- package/css/ionic.bundle.css +1 -1
- package/css/ionic.bundle.css.map +1 -1
- package/css/normalize.css.map +1 -1
- package/css/padding.css.map +1 -1
- package/css/palettes/dark.always.css.map +1 -1
- package/css/palettes/dark.class.css.map +1 -1
- package/css/palettes/dark.system.css.map +1 -1
- package/css/palettes/high-contrast-dark.always.css.map +1 -1
- package/css/palettes/high-contrast-dark.class.css.map +1 -1
- package/css/palettes/high-contrast-dark.system.css.map +1 -1
- package/css/palettes/high-contrast.always.css.map +1 -1
- package/css/palettes/high-contrast.class.css.map +1 -1
- package/css/palettes/high-contrast.system.css.map +1 -1
- package/css/structure.css.map +1 -1
- package/css/text-alignment.css.map +1 -1
- package/css/text-transformation.css.map +1 -1
- package/css/typography.css.map +1 -1
- package/css/utils.bundle.css +1 -1
- package/css/utils.bundle.css.map +1 -1
- package/dist/cjs/{animation-ZJ1lAkZD.js → animation-BXRtNUgm.js} +2 -2
- package/dist/cjs/{app-globals-77ZfuXXk.js → app-globals-x_8DXqdl.js} +1 -1
- package/dist/cjs/{button-active-BzZenWWH.js → button-active-BcEaeF5Y.js} +1 -1
- package/dist/cjs/{capacitor-DmA66EwP.js → capacitor-CVcQYFDK.js} +3 -3
- package/dist/cjs/caret-down-vtVgfXIs.js +8 -0
- package/dist/cjs/caret-left-CxZXLRv5.js +8 -0
- package/dist/cjs/caret-right-CRCgv98E.js +8 -0
- package/dist/cjs/{data-DW6ofvJ8.js → data-Crxp8jrQ.js} +5 -5
- package/dist/cjs/{focus-visible-CCvKiLh3.js → focus-visible-BIj-I3-C.js} +24 -0
- package/dist/cjs/{framework-delegate-WkyjrnCx.js → framework-delegate-D94PxJL6.js} +4 -2
- package/dist/cjs/{haptic-ClPPQ_PS.js → haptic-r0GBrUII.js} +1 -1
- package/dist/cjs/{helpers-DgwmcYAu.js → helpers-CYFB2_7O.js} +41 -2
- package/dist/cjs/{index-D24wggHR.js → index-DgkpUJvi.js} +15 -15
- package/dist/cjs/{index-BzEyuIww.js → index-DkmXWuZ7.js} +3 -3
- package/dist/cjs/{index-Cc5PNMyz.js → index-DsE1tD-q.js} +1 -1
- package/dist/cjs/{index-bGpoPC4u.js → index-MoROIJ3n.js} +8 -7
- package/dist/cjs/index.cjs.js +10 -11
- package/dist/cjs/{input-shims-CLI_OrmU.js → input-shims-temHXqvt.js} +17 -16
- package/dist/cjs/{input.utils-B2hZ5tX6.js → input.utils-8JmSrYpP.js} +5 -5
- package/dist/cjs/ion-accordion_2.cjs.entry.js +55 -26
- package/dist/cjs/ion-action-sheet.cjs.entry.js +21 -18
- package/dist/cjs/ion-alert.cjs.entry.js +22 -20
- package/dist/cjs/ion-app_8.cjs.entry.js +243 -144
- package/dist/cjs/ion-avatar_3.cjs.entry.js +123 -11
- package/dist/cjs/ion-back-button.cjs.entry.js +28 -19
- package/dist/cjs/ion-backdrop.cjs.entry.js +9 -6
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +51 -15
- package/dist/cjs/ion-button_2.cjs.entry.js +43 -11
- package/dist/cjs/ion-card_5.cjs.entry.js +53 -29
- package/dist/cjs/ion-checkbox.cjs.entry.js +31 -13
- package/dist/cjs/ion-chip.cjs.entry.js +48 -7
- package/dist/cjs/ion-col_3.cjs.entry.js +53 -56
- package/dist/cjs/ion-datetime-button.cjs.entry.js +11 -7
- package/dist/cjs/ion-datetime_3.cjs.entry.js +113 -38
- package/dist/cjs/ion-divider.cjs.entry.js +51 -0
- package/dist/cjs/ion-fab_3.cjs.entry.js +41 -25
- package/dist/cjs/ion-img.cjs.entry.js +7 -3
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +89 -14
- package/dist/cjs/ion-input-otp.cjs.entry.js +11 -7
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +50 -12
- package/dist/cjs/ion-input.cjs.entry.js +120 -30
- package/dist/cjs/ion-item-option_3.cjs.entry.js +48 -19
- package/dist/cjs/ion-item_8.cjs.entry.js +105 -45
- package/dist/cjs/ion-loading.cjs.entry.js +17 -15
- package/dist/cjs/ion-menu_3.cjs.entry.js +44 -26
- package/dist/cjs/ion-modal.cjs.entry.js +96 -69
- package/dist/cjs/ion-nav_2.cjs.entry.js +13 -10
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +10 -6
- package/dist/cjs/ion-picker-column.cjs.entry.js +12 -12
- package/dist/cjs/ion-picker.cjs.entry.js +9 -5
- package/dist/cjs/ion-popover.cjs.entry.js +18 -16
- package/dist/cjs/ion-progress-bar.cjs.entry.js +25 -7
- package/dist/cjs/ion-radio_2.cjs.entry.js +22 -13
- package/dist/cjs/ion-range.cjs.entry.js +14 -10
- package/dist/cjs/ion-refresher_2.cjs.entry.js +36 -18
- package/dist/cjs/ion-reorder_2.cjs.entry.js +36 -12
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +14 -6
- package/dist/cjs/ion-route_4.cjs.entry.js +8 -7
- package/dist/cjs/ion-searchbar.cjs.entry.js +134 -21
- package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
- package/dist/cjs/ion-segment-view.cjs.entry.js +5 -2
- package/dist/cjs/ion-segment_2.cjs.entry.js +21 -14
- package/dist/cjs/ion-select-modal.cjs.entry.js +8 -9
- package/dist/cjs/ion-select_3.cjs.entry.js +129 -38
- package/dist/cjs/ion-spinner.cjs.entry.js +28 -6
- package/dist/cjs/ion-split-pane.cjs.entry.js +11 -8
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +65 -20
- package/dist/cjs/ion-tab_2.cjs.entry.js +7 -6
- package/dist/cjs/ion-text.cjs.entry.js +5 -5
- package/dist/cjs/ion-textarea.cjs.entry.js +55 -15
- package/dist/cjs/ion-toast.cjs.entry.js +66 -43
- package/dist/cjs/ion-toggle.cjs.entry.js +78 -21
- package/dist/cjs/ionic-global-RZLbse4y.js +491 -0
- package/dist/cjs/ionic.cjs.js +3 -3
- package/dist/cjs/{ios.transition-DEitrLlG.js → ios.transition-CWI22viS.js} +6 -4
- package/dist/cjs/{keyboard-UuAS4D_9.js → keyboard-BZdohzZu.js} +1 -1
- package/dist/cjs/{keyboard-hHzlEQpk.js → keyboard-ByZ4Ulg3.js} +4 -3
- package/dist/cjs/{keyboard-controller-GXBiBRKS.js → keyboard-controller-B-dr5t4a.js} +11 -9
- package/dist/cjs/list-a-7GSA6K.js +8 -0
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/cjs/{md.transition-BHtGC-Wg.js → md.transition-BxMmPf_q.js} +5 -4
- package/dist/cjs/{notch-controller-Bf5Rr4R5.js → notch-controller-BmjMp6Co.js} +4 -4
- package/dist/cjs/{overlays-czPyT6xP.js → overlays-DEgXBxFs.js} +8 -9
- package/dist/cjs/{status-tap-D9YPr62n.js → status-tap-D-MulHQM.js} +3 -2
- package/dist/cjs/{swipe-back-C1wRtoww.js → swipe-back-C5W5r-1A.js} +2 -1
- package/dist/cjs/x-BTF99yFH.js +8 -0
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/accordion/accordion.ionic.css +196 -0
- package/dist/collection/components/accordion/accordion.ios.css +73 -58
- package/dist/collection/components/accordion/accordion.js +36 -26
- package/dist/collection/components/accordion/accordion.md.css +67 -59
- package/dist/collection/components/accordion-group/accordion-group.ionic.css +93 -0
- package/dist/collection/components/accordion-group/accordion-group.ios.css +16 -4
- package/dist/collection/components/accordion-group/accordion-group.js +44 -8
- package/dist/collection/components/accordion-group/accordion-group.md.css +22 -4
- package/dist/collection/components/action-sheet/action-sheet.ios.css +18 -6
- package/dist/collection/components/action-sheet/action-sheet.js +15 -11
- package/dist/collection/components/action-sheet/action-sheet.md.css +17 -5
- package/dist/collection/components/alert/alert.ios.css +19 -1
- package/dist/collection/components/alert/alert.js +16 -13
- package/dist/collection/components/alert/alert.md.css +19 -1
- package/dist/collection/components/app/app.js +15 -78
- package/dist/collection/components/avatar/avatar.ionic.css +391 -0
- package/dist/collection/components/avatar/avatar.ios.css +7 -33
- package/dist/collection/components/avatar/avatar.js +120 -4
- package/dist/collection/components/avatar/avatar.md.css +51 -0
- package/dist/collection/components/back-button/back-button.ios.css +60 -48
- package/dist/collection/components/back-button/back-button.js +27 -19
- package/dist/collection/components/back-button/back-button.md.css +60 -48
- package/dist/collection/components/backdrop/backdrop.ionic.css +109 -0
- package/dist/collection/components/backdrop/backdrop.ios.css +56 -19
- package/dist/collection/components/backdrop/backdrop.js +12 -6
- package/dist/collection/components/backdrop/backdrop.md.css +56 -19
- package/dist/collection/components/badge/badge.ionic.css +275 -0
- package/dist/collection/components/badge/badge.ios.css +139 -12
- package/dist/collection/components/badge/badge.js +145 -9
- package/dist/collection/components/badge/badge.md.css +123 -12
- package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
- package/dist/collection/components/breadcrumb/breadcrumb.js +43 -11
- package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
- package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
- package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
- package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
- package/dist/collection/components/button/button.ionic.css +620 -0
- package/dist/collection/components/button/button.ios.css +135 -46
- package/dist/collection/components/button/button.js +48 -17
- package/dist/collection/components/button/button.md.css +126 -50
- package/dist/collection/components/buttons/buttons.ionic.css +97 -0
- package/dist/collection/components/buttons/buttons.ios.css +59 -7
- package/dist/collection/components/buttons/buttons.js +15 -9
- package/dist/collection/components/buttons/buttons.md.css +55 -3
- package/dist/collection/components/card/card.ionic.css +144 -0
- package/dist/collection/components/card/card.ios.css +65 -14
- package/dist/collection/components/card/card.js +41 -10
- package/dist/collection/components/card/card.md.css +65 -14
- package/dist/collection/components/card-content/card-content.ionic.css +92 -0
- package/dist/collection/components/card-content/card-content.ios.css +16 -1
- package/dist/collection/components/card-content/card-content.js +11 -8
- package/dist/collection/components/card-content/card-content.md.css +16 -1
- package/dist/collection/components/card-header/card-header.ionic.css +85 -0
- package/dist/collection/components/card-header/card-header.ios.css +27 -15
- package/dist/collection/components/card-header/card-header.js +13 -10
- package/dist/collection/components/card-header/card-header.md.css +27 -15
- package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +144 -0
- package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
- package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
- package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
- package/dist/collection/components/card-title/card-title.ios.css +73 -0
- package/dist/collection/components/card-title/card-title.js +11 -8
- package/dist/collection/components/card-title/card-title.md.css +73 -0
- package/dist/collection/components/checkbox/checkbox.ionic.css +539 -0
- package/dist/collection/components/checkbox/checkbox.ios.css +161 -101
- package/dist/collection/components/checkbox/checkbox.js +70 -14
- package/dist/collection/components/checkbox/checkbox.md.css +162 -102
- package/dist/collection/components/chip/chip.ionic.css +228 -0
- package/dist/collection/components/chip/chip.ios.css +67 -14
- package/dist/collection/components/chip/chip.js +108 -8
- package/dist/collection/components/chip/chip.md.css +67 -14
- package/dist/collection/components/col/col.css +192 -4
- package/dist/collection/components/col/col.js +210 -61
- package/dist/collection/components/content/content.css +8 -2
- package/dist/collection/components/content/content.js +16 -11
- package/dist/collection/components/datetime/datetime.ionic.css +697 -0
- package/dist/collection/components/datetime/datetime.ios.css +242 -86
- package/dist/collection/components/datetime/datetime.js +98 -20
- package/dist/collection/components/datetime/datetime.md.css +242 -86
- package/dist/collection/components/datetime/utils/data.js +5 -5
- package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
- package/dist/collection/components/datetime-button/datetime-button.js +11 -8
- package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
- package/dist/collection/components/divider/divider.ionic.css +148 -0
- package/dist/collection/components/divider/divider.ios.css +87 -0
- package/dist/collection/components/divider/divider.js +94 -0
- package/dist/collection/components/divider/divider.md.css +87 -0
- package/dist/collection/components/fab/fab.css +25 -1
- package/dist/collection/components/fab/fab.js +9 -5
- package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
- package/dist/collection/components/fab-button/fab-button.js +36 -21
- package/dist/collection/components/fab-button/fab-button.md.css +20 -8
- package/dist/collection/components/fab-list/fab-list.css +12 -0
- package/dist/collection/components/fab-list/fab-list.js +9 -5
- package/dist/collection/components/footer/footer.ios.css +14 -2
- package/dist/collection/components/footer/footer.js +21 -16
- package/dist/collection/components/footer/footer.md.css +12 -0
- package/dist/collection/components/grid/grid.css +12 -0
- package/dist/collection/components/grid/grid.js +9 -5
- package/dist/collection/components/header/header.ionic.css +98 -0
- package/dist/collection/components/header/header.ios.css +25 -10
- package/dist/collection/components/header/header.js +49 -18
- package/dist/collection/components/header/header.md.css +23 -8
- package/dist/collection/components/img/img.js +8 -2
- package/dist/collection/components/infinite-scroll/infinite-scroll.js +100 -5
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
- package/dist/collection/components/input/input.ionic.css +881 -0
- package/dist/collection/components/input/input.ios.css +223 -140
- package/dist/collection/components/input/input.js +149 -38
- package/dist/collection/components/input/input.md.css +193 -212
- package/dist/collection/components/input-otp/input-otp.ionic.css +369 -0
- package/dist/collection/components/input-otp/input-otp.ios.css +106 -60
- package/dist/collection/components/input-otp/input-otp.js +7 -5
- package/dist/collection/components/input-otp/input-otp.md.css +106 -60
- package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +78 -0
- package/dist/collection/components/input-password-toggle/input-password-toggle.js +48 -12
- package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +61 -0
- package/dist/collection/components/item/item.ionic.css +499 -0
- package/dist/collection/components/item/item.ios.css +109 -69
- package/dist/collection/components/item/item.js +43 -19
- package/dist/collection/components/item/item.md.css +120 -68
- package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
- package/dist/collection/components/item-divider/item-divider.js +11 -8
- package/dist/collection/components/item-divider/item-divider.md.css +18 -0
- package/dist/collection/components/item-group/item-group.ios.css +12 -0
- package/dist/collection/components/item-group/item-group.js +13 -7
- package/dist/collection/components/item-group/item-group.md.css +12 -0
- package/dist/collection/components/item-option/item-option.ionic.css +278 -0
- package/dist/collection/components/item-option/item-option.ios.css +136 -29
- package/dist/collection/components/item-option/item-option.js +73 -9
- package/dist/collection/components/item-option/item-option.md.css +136 -29
- package/dist/collection/components/item-options/item-options.ionic.css +221 -0
- package/dist/collection/components/item-options/item-options.ios.css +77 -34
- package/dist/collection/components/item-options/item-options.js +13 -7
- package/dist/collection/components/item-options/item-options.md.css +77 -34
- package/dist/collection/components/item-sliding/item-sliding.css +6 -0
- package/dist/collection/components/item-sliding/item-sliding.js +8 -4
- package/dist/collection/components/label/label.ios.css +18 -0
- package/dist/collection/components/label/label.js +11 -8
- package/dist/collection/components/label/label.md.css +18 -0
- package/dist/collection/components/list/list.ionic.css +212 -0
- package/dist/collection/components/list/list.ios.css +54 -14
- package/dist/collection/components/list/list.js +48 -9
- package/dist/collection/components/list/list.md.css +56 -16
- package/dist/collection/components/list-header/list-header.ionic.css +190 -0
- package/dist/collection/components/list-header/list-header.ios.css +82 -38
- package/dist/collection/components/list-header/list-header.js +11 -8
- package/dist/collection/components/list-header/list-header.md.css +82 -38
- package/dist/collection/components/loading/loading.ios.css +13 -1
- package/dist/collection/components/loading/loading.js +14 -11
- package/dist/collection/components/loading/loading.md.css +13 -1
- package/dist/collection/components/menu/menu.ios.css +15 -3
- package/dist/collection/components/menu/menu.js +12 -7
- package/dist/collection/components/menu/menu.md.css +15 -3
- package/dist/collection/components/menu-button/menu-button.ionic.css +236 -0
- package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
- package/dist/collection/components/menu-button/menu-button.js +26 -10
- package/dist/collection/components/menu-button/menu-button.md.css +49 -15
- package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
- package/dist/collection/components/modal/animations/sheet.js +8 -2
- package/dist/collection/components/modal/gestures/sheet.js +10 -6
- package/dist/collection/components/modal/modal.ionic.css +241 -0
- package/dist/collection/components/modal/modal.ios.css +174 -70
- package/dist/collection/components/modal/modal.js +48 -11
- package/dist/collection/components/modal/modal.md.css +174 -70
- package/dist/collection/components/nav/nav.css +7 -1
- package/dist/collection/components/nav/nav.js +11 -5
- package/dist/collection/components/nav-link/nav-link.js +5 -1
- package/dist/collection/components/note/note.ios.css +12 -0
- package/dist/collection/components/note/note.js +11 -8
- package/dist/collection/components/note/note.md.css +12 -0
- package/dist/collection/components/picker/picker.ios.css +15 -3
- package/dist/collection/components/picker/picker.js +8 -5
- package/dist/collection/components/picker/picker.md.css +15 -3
- package/dist/collection/components/picker-column/picker-column.css +9 -2
- package/dist/collection/components/picker-column/picker-column.js +8 -7
- package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
- package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
- package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
- package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
- package/dist/collection/components/picker-legacy/picker.js +7 -6
- package/dist/collection/components/picker-legacy/picker.md.css +13 -1
- package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
- package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
- package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
- package/dist/collection/components/popover/popover.ios.css +13 -1
- package/dist/collection/components/popover/popover.js +17 -14
- package/dist/collection/components/popover/popover.md.css +13 -1
- package/dist/collection/components/progress-bar/progress-bar.ionic.css +287 -0
- package/dist/collection/components/progress-bar/progress-bar.ios.css +48 -17
- package/dist/collection/components/progress-bar/progress-bar.js +43 -7
- package/dist/collection/components/progress-bar/progress-bar.md.css +48 -17
- package/dist/collection/components/radio/radio.ionic.css +422 -0
- package/dist/collection/components/radio/radio.ios.css +134 -91
- package/dist/collection/components/radio/radio.js +12 -9
- package/dist/collection/components/radio/radio.md.css +134 -91
- package/dist/collection/components/radio-group/radio-group.ionic.css +125 -0
- package/dist/collection/components/radio-group/radio-group.ios.css +42 -18
- package/dist/collection/components/radio-group/radio-group.js +13 -5
- package/dist/collection/components/radio-group/radio-group.md.css +42 -18
- package/dist/collection/components/range/range.ionic.css +563 -0
- package/dist/collection/components/range/range.ios.css +128 -85
- package/dist/collection/components/range/range.js +12 -9
- package/dist/collection/components/range/range.md.css +128 -85
- package/dist/collection/components/refresher/refresher.ios.css +14 -1
- package/dist/collection/components/refresher/refresher.js +11 -8
- package/dist/collection/components/refresher/refresher.md.css +15 -2
- package/dist/collection/components/refresher-content/refresher-content.js +28 -7
- package/dist/collection/components/reorder/reorder.ios.css +6 -0
- package/dist/collection/components/reorder/reorder.js +33 -6
- package/dist/collection/components/reorder/reorder.md.css +6 -0
- package/dist/collection/components/reorder-group/reorder-group.css +6 -0
- package/dist/collection/components/reorder-group/reorder-group.js +8 -4
- package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
- package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +215 -0
- package/dist/collection/components/ripple-effect/ripple-effect.js +14 -6
- package/dist/collection/components/route/route.js +4 -0
- package/dist/collection/components/router/router.js +4 -0
- package/dist/collection/components/router-link/router-link.css +8 -2
- package/dist/collection/components/router-link/router-link.js +9 -5
- package/dist/collection/components/router-outlet/router-outlet.css +7 -1
- package/dist/collection/components/router-outlet/router-outlet.js +6 -3
- package/dist/collection/components/row/row.css +16 -0
- package/dist/collection/components/row/row.js +9 -2
- package/dist/collection/components/searchbar/searchbar.ionic.css +626 -0
- package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
- package/dist/collection/components/searchbar/searchbar.js +181 -34
- package/dist/collection/components/searchbar/searchbar.md.css +56 -18
- package/dist/collection/components/segment/segment.ionic.css +115 -0
- package/dist/collection/components/segment/segment.ios.css +45 -2
- package/dist/collection/components/segment/segment.js +11 -8
- package/dist/collection/components/segment/segment.md.css +45 -2
- package/dist/collection/components/segment-button/segment-button.ionic.css +353 -0
- package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
- package/dist/collection/components/segment-button/segment-button.js +11 -8
- package/dist/collection/components/segment-button/segment-button.md.css +148 -107
- package/dist/collection/components/segment-content/segment-content.js +1 -1
- package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
- package/dist/collection/components/segment-view/segment-view.js +6 -4
- package/dist/collection/components/segment-view/segment-view.md.css +6 -0
- package/dist/collection/components/select/select.ionic.css +763 -0
- package/dist/collection/components/select/select.ios.css +315 -176
- package/dist/collection/components/select/select.js +157 -54
- package/dist/collection/components/select/select.md.css +331 -178
- package/dist/collection/components/select-modal/select-modal.ionic.css +123 -0
- package/dist/collection/components/select-modal/select-modal.ios.css +18 -0
- package/dist/collection/components/select-modal/select-modal.js +3 -3
- package/dist/collection/components/select-modal/select-modal.md.css +7 -3
- package/dist/collection/components/select-option/select-option.js +9 -2
- package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
- package/dist/collection/components/select-popover/select-popover.js +12 -4
- package/dist/collection/components/select-popover/select-popover.md.css +18 -0
- package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
- package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
- package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +77 -10
- package/dist/collection/components/spinner/spinner.js +47 -6
- package/dist/collection/components/spinner/spinner.native.css +198 -0
- package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
- package/dist/collection/components/split-pane/split-pane.js +14 -8
- package/dist/collection/components/split-pane/split-pane.md.css +20 -2
- package/dist/collection/components/tab/tab.js +6 -2
- package/dist/collection/components/tab-bar/tab-bar.ionic.css +186 -0
- package/dist/collection/components/tab-bar/tab-bar.ios.css +71 -43
- package/dist/collection/components/tab-bar/tab-bar.js +78 -11
- package/dist/collection/components/tab-bar/tab-bar.md.css +71 -43
- package/dist/collection/components/tab-button/tab-button.ionic.css +336 -0
- package/dist/collection/components/tab-button/tab-button.ios.css +171 -95
- package/dist/collection/components/tab-button/tab-button.js +44 -8
- package/dist/collection/components/tab-button/tab-button.md.css +137 -93
- package/dist/collection/components/tabs/tabs.css +7 -1
- package/dist/collection/components/tabs/tabs.js +4 -1
- package/dist/collection/components/text/text.css +6 -0
- package/dist/collection/components/text/text.js +7 -6
- package/dist/collection/components/textarea/textarea.ionic.css +828 -0
- package/dist/collection/components/textarea/textarea.ios.css +275 -139
- package/dist/collection/components/textarea/textarea.js +76 -16
- package/dist/collection/components/textarea/textarea.md.css +288 -140
- package/dist/collection/components/thumbnail/thumbnail.css +6 -0
- package/dist/collection/components/thumbnail/thumbnail.js +9 -2
- package/dist/collection/components/title/title.ionic.css +127 -0
- package/dist/collection/components/title/title.ios.css +32 -4
- package/dist/collection/components/title/title.js +13 -7
- package/dist/collection/components/title/title.md.css +32 -4
- package/dist/collection/components/toast/animations/utils.js +1 -1
- package/dist/collection/components/toast/toast.ionic.css +394 -0
- package/dist/collection/components/toast/toast.ios.css +84 -45
- package/dist/collection/components/toast/toast.js +75 -12
- package/dist/collection/components/toast/toast.md.css +84 -45
- package/dist/collection/components/toggle/toggle.ionic.css +509 -0
- package/dist/collection/components/toggle/toggle.ios.css +247 -131
- package/dist/collection/components/toggle/toggle.js +73 -18
- package/dist/collection/components/toggle/toggle.md.css +244 -131
- package/dist/collection/components/toolbar/test/image.svg +1 -0
- package/dist/collection/components/toolbar/toolbar.ionic.css +241 -0
- package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
- package/dist/collection/components/toolbar/toolbar.js +157 -13
- package/dist/collection/components/toolbar/toolbar.md.css +90 -47
- package/dist/collection/global/ionic-global.js +228 -13
- package/dist/collection/utils/focus-visible.js +22 -0
- package/dist/collection/utils/framework-delegate.js +3 -1
- package/dist/collection/utils/helpers.js +42 -2
- package/dist/collection/utils/keyboard/keyboard-controller.js +3 -1
- package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
- package/dist/collection/utils/menu-controller/animations/push.js +2 -1
- package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
- package/dist/collection/utils/overlays.js +2 -1
- package/dist/collection/utils/test/playwright/generator.js +48 -23
- package/dist/collection/utils/test/playwright/page/utils/goto.js +14 -5
- package/dist/collection/utils/test/playwright/page/utils/set-content.js +24 -3
- package/dist/collection/utils/transition/ios.transition.js +1 -0
- package/dist/docs.json +8168 -372
- package/dist/esm/{animation-BvhAtgca.js → animation-DPqVg3gl.js} +1 -1
- package/dist/esm/{app-globals-CvLYUxE9.js → app-globals-dJs8dVUB.js} +1 -1
- package/dist/esm/{button-active-DBUPuLNw.js → button-active-BMINdWv6.js} +1 -1
- package/dist/esm/{capacitor-CFERIeaU.js → capacitor--DL1MVFW.js} +1 -1
- package/dist/esm/caret-down-D1t981Ih.js +6 -0
- package/dist/esm/caret-left-fIOYmaqA.js +6 -0
- package/dist/esm/caret-right-BYSs-jZz.js +6 -0
- package/dist/esm/{data-CKHMWxfe.js → data-slRmoEWk.js} +5 -5
- package/dist/esm/{focus-visible-BmVRXR1y.js → focus-visible-vXpMhGrs.js} +23 -1
- package/dist/esm/{framework-delegate-BLEBgH06.js → framework-delegate-C3AU0AA6.js} +4 -2
- package/dist/esm/{haptic-DzAMWJuk.js → haptic-BWDWI-Xh.js} +1 -1
- package/dist/esm/{helpers-8KSQQGQy.js → helpers-CKng-4WP.js} +42 -3
- package/dist/esm/{index-CXSTcaAW.js → index-BwfAv3fK.js} +10 -10
- package/dist/esm/{index-7UbSlv7N.js → index-C21kdpyw.js} +1 -1
- package/dist/esm/{index-DV3sJJW8.js → index-COG0_eom.js} +1 -1
- package/dist/esm/{index-Dp7GXH1z.js → index-DLYqkEhn.js} +3 -3
- package/dist/esm/{index-C6WeRr09.js → index-jNq9q9I-.js} +3 -2
- package/dist/esm/index.js +10 -11
- package/dist/esm/{input-shims-C4KDnhxb.js → input-shims-Dt4HUCHS.js} +6 -5
- package/dist/esm/{input.utils-be4gBvVY.js → input.utils-D7U0b1bK.js} +2 -2
- package/dist/esm/ion-accordion_2.entry.js +56 -27
- package/dist/esm/ion-action-sheet.entry.js +21 -18
- package/dist/esm/ion-alert.entry.js +22 -20
- package/dist/esm/ion-app_8.entry.js +244 -145
- package/dist/esm/ion-avatar_3.entry.js +125 -13
- package/dist/esm/ion-back-button.entry.js +29 -20
- package/dist/esm/ion-backdrop.entry.js +9 -6
- package/dist/esm/ion-breadcrumb_2.entry.js +53 -17
- package/dist/esm/ion-button_2.entry.js +43 -11
- package/dist/esm/ion-card_5.entry.js +53 -29
- package/dist/esm/ion-checkbox.entry.js +31 -13
- package/dist/esm/ion-chip.entry.js +49 -8
- package/dist/esm/ion-col_3.entry.js +54 -57
- package/dist/esm/ion-datetime-button.entry.js +11 -7
- package/dist/esm/ion-datetime_3.entry.js +115 -40
- package/dist/esm/ion-divider.entry.js +49 -0
- package/dist/esm/ion-fab_3.entry.js +43 -27
- package/dist/esm/ion-img.entry.js +7 -3
- package/dist/esm/ion-infinite-scroll_2.entry.js +89 -14
- package/dist/esm/ion-input-otp.entry.js +11 -7
- package/dist/esm/ion-input-password-toggle.entry.js +52 -14
- package/dist/esm/ion-input.entry.js +122 -32
- package/dist/esm/ion-item-option_3.entry.js +48 -19
- package/dist/esm/ion-item_8.entry.js +107 -47
- package/dist/esm/ion-loading.entry.js +17 -15
- package/dist/esm/ion-menu_3.entry.js +45 -27
- package/dist/esm/ion-modal.entry.js +56 -29
- package/dist/esm/ion-nav_2.entry.js +13 -10
- package/dist/esm/ion-picker-column-option.entry.js +10 -6
- package/dist/esm/ion-picker-column.entry.js +11 -11
- package/dist/esm/ion-picker.entry.js +9 -5
- package/dist/esm/ion-popover.entry.js +18 -16
- package/dist/esm/ion-progress-bar.entry.js +25 -7
- package/dist/esm/ion-radio_2.entry.js +22 -13
- package/dist/esm/ion-range.entry.js +14 -10
- package/dist/esm/ion-refresher_2.entry.js +37 -19
- package/dist/esm/ion-reorder_2.entry.js +38 -14
- package/dist/esm/ion-ripple-effect.entry.js +14 -6
- package/dist/esm/ion-route_4.entry.js +8 -7
- package/dist/esm/ion-searchbar.entry.js +137 -24
- package/dist/esm/ion-segment-content.entry.js +1 -1
- package/dist/esm/ion-segment-view.entry.js +5 -2
- package/dist/esm/ion-segment_2.entry.js +21 -14
- package/dist/esm/ion-select-modal.entry.js +8 -9
- package/dist/esm/ion-select_3.entry.js +131 -40
- package/dist/esm/ion-spinner.entry.js +28 -6
- package/dist/esm/ion-split-pane.entry.js +11 -8
- package/dist/esm/ion-tab-bar_2.entry.js +65 -20
- package/dist/esm/ion-tab_2.entry.js +7 -6
- package/dist/esm/ion-text.entry.js +5 -5
- package/dist/esm/ion-textarea.entry.js +55 -15
- package/dist/esm/ion-toast.entry.js +40 -17
- package/dist/esm/ion-toggle.entry.js +79 -22
- package/dist/esm/ionic-global-Dtd5Ma5B.js +480 -0
- package/dist/esm/ionic.js +3 -3
- package/dist/esm/{ios.transition-eAEkgVAv.js → ios.transition-CJcl_IUo.js} +6 -4
- package/dist/esm/{keyboard-CUw4ekVy.js → keyboard-Ce5NGRb7.js} +1 -1
- package/dist/esm/{keyboard-ywgs5efA.js → keyboard-DP1KnX1o.js} +4 -3
- package/dist/esm/{keyboard-controller-BaaVITYt.js → keyboard-controller-CN0dsogH.js} +5 -3
- package/dist/esm/list-Dhi5xtNS.js +6 -0
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{md.transition-D8TeJ_Pz.js → md.transition-DUO570OK.js} +5 -4
- package/dist/esm/{notch-controller-lb417-kU.js → notch-controller-BZq2fbxL.js} +2 -2
- package/dist/esm/{overlays-BYcYBCrx.js → overlays-D3rE6lyd.js} +5 -6
- package/dist/esm/{status-tap-pATNXEtr.js → status-tap-Bux-fh_w.js} +3 -2
- package/dist/esm/{swipe-back-B2YfOHRM.js → swipe-back-Dp-f6VSv.js} +2 -1
- package/dist/esm/x-BDqjX7Z_.js +6 -0
- package/dist/html.html-data.json +2532 -226
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-04b8cb11.entry.js +4 -0
- package/dist/ionic/p-07317db2.entry.js +4 -0
- package/dist/ionic/p-0b1386bf.entry.js +4 -0
- package/dist/ionic/p-0cfa2478.entry.js +4 -0
- package/dist/ionic/p-123f6dde.entry.js +4 -0
- package/dist/ionic/p-18660f23.entry.js +4 -0
- package/dist/ionic/p-1ac3754e.entry.js +4 -0
- package/dist/ionic/p-1acc1bfe.entry.js +4 -0
- package/dist/ionic/p-1d614d1a.entry.js +4 -0
- package/dist/ionic/p-21bad9c2.entry.js +4 -0
- package/dist/ionic/p-240c6a46.entry.js +4 -0
- package/dist/ionic/p-25cc812f.entry.js +4 -0
- package/dist/ionic/p-3ed15202.entry.js +4 -0
- package/dist/ionic/p-3ee8f3e6.entry.js +4 -0
- package/dist/ionic/p-3f22a9de.entry.js +4 -0
- package/dist/ionic/p-4cc76b1d.entry.js +4 -0
- package/dist/ionic/{p-B1xocg0A.js → p-4ivCEBy1.js} +1 -1
- package/dist/ionic/p-525895e0.entry.js +4 -0
- package/dist/ionic/p-554acf2b.entry.js +4 -0
- package/dist/ionic/p-59c4a194.entry.js +4 -0
- package/dist/ionic/p-5f0c7c62.entry.js +4 -0
- package/dist/ionic/p-69a244b5.entry.js +4 -0
- package/dist/ionic/p-742203d9.entry.js +4 -0
- package/dist/ionic/p-75b29611.entry.js +4 -0
- package/dist/ionic/p-7ead7a67.entry.js +4 -0
- package/dist/ionic/p-7f1c8070.entry.js +4 -0
- package/dist/ionic/p-845e0158.entry.js +4 -0
- package/dist/ionic/p-848ad9ae.entry.js +4 -0
- package/dist/ionic/p-8870c2f9.entry.js +4 -0
- package/dist/ionic/p-8cd4a868.entry.js +4 -0
- package/dist/ionic/p-907ac173.entry.js +4 -0
- package/dist/ionic/p-95621a36.entry.js +4 -0
- package/dist/ionic/p-9V8nrHFC.js +4 -0
- package/dist/ionic/p-9e575e4e.entry.js +4 -0
- package/dist/ionic/p-BDqjX7Z_.js +4 -0
- package/dist/ionic/p-BFFank6B.js +4 -0
- package/dist/ionic/{p-CWvl4RPO.js → p-BISSkhkA.js} +1 -1
- package/dist/ionic/p-BJGh_obi.js +4 -0
- package/dist/ionic/p-BYSs-jZz.js +4 -0
- package/dist/ionic/{p-CKvCXMs9.js → p-BYYLxYDJ.js} +1 -1
- package/dist/ionic/p-Bh0_z73h.js +4 -0
- package/dist/ionic/p-BpaeL4Lk.js +4 -0
- package/dist/ionic/{p-DiZPU8BH.js → p-BqMzjJ9X.js} +1 -1
- package/dist/ionic/{p-DV3sJJW8.js → p-COG0_eom.js} +1 -1
- package/dist/ionic/{p-C87oPMMF.js → p-CVVzZviS.js} +1 -1
- package/dist/ionic/p-CZEwJt85.js +4 -0
- package/dist/ionic/p-Cdv0TJ6-.js +4 -0
- package/dist/ionic/{p-BhNEp2QP.js → p-CjpktT3Z.js} +1 -1
- package/dist/ionic/p-CqYDGaCK.js +4 -0
- package/dist/ionic/p-D-m6MIML.js +4 -0
- package/dist/ionic/p-D1t981Ih.js +4 -0
- package/dist/ionic/{p-DCuOL88l.js → p-D8VpGXAu.js} +1 -1
- package/dist/ionic/p-DBzcL_sL.js +4 -0
- package/dist/ionic/p-DO7doFVM.js +4 -0
- package/dist/ionic/p-Dhi5xtNS.js +4 -0
- package/dist/ionic/p-DpBID_Du.js +4 -0
- package/dist/ionic/p-DuV7rU9I.js +4 -0
- package/dist/ionic/p-EG6i47Uw.js +4 -0
- package/dist/ionic/{p-D13Eaw-8.js → p-EwG_P2X9.js} +1 -1
- package/dist/ionic/p-Ex5J81sy.js +4 -0
- package/dist/ionic/{p-BHGXdud8.js → p-KY_2sl5b.js} +1 -1
- package/dist/ionic/p-a3ea0e64.entry.js +4 -0
- package/dist/ionic/p-a5893690.entry.js +4 -0
- package/dist/ionic/p-b269fb6b.entry.js +4 -0
- package/dist/ionic/p-b2aa3ff0.entry.js +4 -0
- package/dist/ionic/p-bbf5ed24.entry.js +4 -0
- package/dist/ionic/p-bd10b777.entry.js +4 -0
- package/dist/ionic/p-c85fd449.entry.js +4 -0
- package/dist/ionic/p-c9736360.entry.js +4 -0
- package/dist/ionic/p-cdcc3ffe.entry.js +4 -0
- package/dist/ionic/p-cef8eac8.entry.js +4 -0
- package/dist/ionic/p-d04293de.entry.js +4 -0
- package/dist/ionic/p-daf54858.entry.js +4 -0
- package/dist/ionic/p-df97e7d5.entry.js +4 -0
- package/dist/ionic/p-e0a689ea.entry.js +4 -0
- package/dist/ionic/p-e1ee9df4.entry.js +4 -0
- package/dist/ionic/p-e25b2e94.entry.js +4 -0
- package/dist/ionic/p-e53f3a62.entry.js +4 -0
- package/dist/ionic/p-ec96366b.entry.js +4 -0
- package/dist/ionic/p-ed071a41.entry.js +4 -0
- package/dist/ionic/p-f4d11cbb.entry.js +4 -0
- package/dist/ionic/p-fIOYmaqA.js +4 -0
- package/dist/ionic/p-ff5aa778.entry.js +4 -0
- package/dist/ionic/p-vXpMhGrs.js +4 -0
- package/dist/types/components/accordion/accordion.d.ts +5 -3
- package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
- package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
- package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
- package/dist/types/components/alert/alert-interface.d.ts +3 -7
- package/dist/types/components/alert/alert.d.ts +3 -2
- package/dist/types/components/app/app.d.ts +4 -2
- package/dist/types/components/avatar/avatar.d.ts +32 -0
- package/dist/types/components/back-button/back-button.d.ts +2 -1
- package/dist/types/components/backdrop/backdrop.d.ts +4 -0
- package/dist/types/components/badge/badge.d.ts +34 -1
- package/dist/types/components/breadcrumb/breadcrumb.d.ts +4 -1
- package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
- package/dist/types/components/button/button.d.ts +19 -6
- package/dist/types/components/buttons/buttons.d.ts +5 -1
- package/dist/types/components/card/card.d.ts +8 -1
- package/dist/types/components/card-content/card-content.d.ts +2 -1
- package/dist/types/components/card-header/card-header.d.ts +3 -2
- package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
- package/dist/types/components/card-title/card-title.d.ts +2 -1
- package/dist/types/components/checkbox/checkbox.d.ts +14 -4
- package/dist/types/components/chip/chip.d.ts +26 -1
- package/dist/types/components/col/col.d.ts +52 -5
- package/dist/types/components/content/content.d.ts +3 -0
- package/dist/types/components/datetime/datetime.d.ts +26 -1
- package/dist/types/components/datetime/utils/data.d.ts +5 -5
- package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
- package/dist/types/components/divider/divider.d.ts +20 -0
- package/dist/types/components/fab/fab.d.ts +4 -0
- package/dist/types/components/fab-button/fab-button.d.ts +5 -3
- package/dist/types/components/fab-list/fab-list.d.ts +4 -0
- package/dist/types/components/footer/footer.d.ts +4 -3
- package/dist/types/components/grid/grid.d.ts +4 -0
- package/dist/types/components/header/header.d.ts +9 -3
- package/dist/types/components/img/img.d.ts +3 -0
- package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +21 -0
- package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
- package/dist/types/components/input/input.d.ts +31 -5
- package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +2 -0
- package/dist/types/components/item/item.d.ts +11 -4
- package/dist/types/components/item-divider/item-divider.d.ts +2 -1
- package/dist/types/components/item-group/item-group.d.ts +4 -0
- package/dist/types/components/item-option/item-option.d.ts +18 -1
- package/dist/types/components/item-options/item-options.d.ts +4 -0
- package/dist/types/components/item-sliding/item-sliding.d.ts +4 -0
- package/dist/types/components/label/label.d.ts +2 -1
- package/dist/types/components/list/list.d.ts +15 -1
- package/dist/types/components/list-header/list-header.d.ts +2 -1
- package/dist/types/components/loading/loading-interface.d.ts +2 -7
- package/dist/types/components/loading/loading.d.ts +3 -2
- package/dist/types/components/menu/menu.d.ts +3 -0
- package/dist/types/components/menu-button/menu-button.d.ts +3 -1
- package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
- package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
- package/dist/types/components/modal/modal-interface.d.ts +4 -7
- package/dist/types/components/modal/modal.d.ts +11 -1
- package/dist/types/components/nav/nav-interface.d.ts +9 -1
- package/dist/types/components/nav/nav.d.ts +5 -1
- package/dist/types/components/nav-link/nav-link.d.ts +4 -0
- package/dist/types/components/note/note.d.ts +2 -1
- package/dist/types/components/picker/picker.d.ts +2 -1
- package/dist/types/components/picker-column/picker-column.d.ts +2 -1
- package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
- package/dist/types/components/picker-legacy/picker.d.ts +2 -1
- package/dist/types/components/popover/popover-interface.d.ts +3 -6
- package/dist/types/components/popover/popover.d.ts +6 -5
- package/dist/types/components/progress-bar/progress-bar.d.ts +10 -1
- package/dist/types/components/radio/radio.d.ts +2 -1
- package/dist/types/components/radio-group/radio-group.d.ts +4 -0
- package/dist/types/components/range/range.d.ts +2 -1
- package/dist/types/components/refresher/refresher.d.ts +2 -1
- package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
- package/dist/types/components/reorder/reorder.d.ts +9 -0
- package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
- package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
- package/dist/types/components/route/route.d.ts +4 -0
- package/dist/types/components/router/router.d.ts +4 -0
- package/dist/types/components/router-link/router-link.d.ts +4 -0
- package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
- package/dist/types/components/row/row.d.ts +4 -0
- package/dist/types/components/searchbar/searchbar.d.ts +51 -9
- package/dist/types/components/segment/segment.d.ts +2 -1
- package/dist/types/components/segment-button/segment-button.d.ts +2 -1
- package/dist/types/components/select/select.d.ts +41 -13
- package/dist/types/components/select-option/select-option.d.ts +4 -0
- package/dist/types/components/select-popover/select-popover.d.ts +3 -0
- package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
- package/dist/types/components/spinner/spinner.d.ts +15 -0
- package/dist/types/components/split-pane/split-pane.d.ts +4 -0
- package/dist/types/components/tab/tab.d.ts +4 -0
- package/dist/types/components/tab-bar/tab-bar.d.ts +22 -2
- package/dist/types/components/tab-button/tab-button.d.ts +11 -1
- package/dist/types/components/tabs/tabs.d.ts +3 -0
- package/dist/types/components/text/text.d.ts +2 -1
- package/dist/types/components/textarea/textarea.d.ts +17 -4
- package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
- package/dist/types/components/title/title.d.ts +4 -0
- package/dist/types/components/toast/animations/utils.d.ts +2 -2
- package/dist/types/components/toast/toast-interface.d.ts +3 -7
- package/dist/types/components/toast/toast.d.ts +19 -2
- package/dist/types/components/toggle/toggle.d.ts +15 -1
- package/dist/types/components/toolbar/toolbar.d.ts +20 -3
- package/dist/types/components.d.ts +1593 -196
- package/dist/types/global/ionic-global.d.ts +27 -2
- package/dist/types/interface.d.ts +3 -0
- package/dist/types/utils/config.d.ts +106 -2
- package/dist/types/utils/focus-visible.d.ts +13 -0
- package/dist/types/utils/helpers.d.ts +11 -0
- package/dist/types/utils/overlays-interface.d.ts +31 -1
- package/dist/types/utils/test/playwright/generator.d.ts +31 -2
- package/hydrate/index.js +2837 -936
- package/hydrate/index.mjs +2837 -936
- package/package.json +9 -4
- package/components/hardware-back-button.js +0 -115
- package/components/index9.js +0 -7
- package/dist/cjs/hardware-back-button-BxdNu76F.js +0 -121
- package/dist/cjs/index-DkNv4J_i.js +0 -10
- package/dist/cjs/ionic-global-UI5YPSi-.js +0 -151
- package/dist/esm/hardware-back-button-Dhbd-23H.js +0 -115
- package/dist/esm/index-ZjP4CjeZ.js +0 -7
- package/dist/esm/ionic-global-CTSyufhF.js +0 -146
- package/dist/ionic/p-0793aea6.entry.js +0 -4
- package/dist/ionic/p-0e1904a0.entry.js +0 -4
- package/dist/ionic/p-0f396661.entry.js +0 -4
- package/dist/ionic/p-117e7a3f.entry.js +0 -4
- package/dist/ionic/p-1191a2d9.entry.js +0 -4
- package/dist/ionic/p-148bdf18.entry.js +0 -4
- package/dist/ionic/p-16116947.entry.js +0 -4
- package/dist/ionic/p-19f80390.entry.js +0 -4
- package/dist/ionic/p-1a91f317.entry.js +0 -4
- package/dist/ionic/p-1bbd0a23.entry.js +0 -4
- package/dist/ionic/p-1f68cb59.entry.js +0 -4
- package/dist/ionic/p-25e5e5cc.entry.js +0 -4
- package/dist/ionic/p-2cb0f39f.entry.js +0 -4
- package/dist/ionic/p-3392f558.entry.js +0 -4
- package/dist/ionic/p-349fc921.entry.js +0 -4
- package/dist/ionic/p-3624b640.entry.js +0 -4
- package/dist/ionic/p-36a54836.entry.js +0 -4
- package/dist/ionic/p-39ed3212.entry.js +0 -4
- package/dist/ionic/p-40d56a51.entry.js +0 -4
- package/dist/ionic/p-44e3b33a.entry.js +0 -4
- package/dist/ionic/p-4f2c5845.entry.js +0 -4
- package/dist/ionic/p-528af4e6.entry.js +0 -4
- package/dist/ionic/p-54dec9b1.entry.js +0 -4
- package/dist/ionic/p-568efea2.entry.js +0 -4
- package/dist/ionic/p-5c976c00.entry.js +0 -4
- package/dist/ionic/p-6383afc2.entry.js +0 -4
- package/dist/ionic/p-63852736.entry.js +0 -4
- package/dist/ionic/p-6e43c86a.entry.js +0 -4
- package/dist/ionic/p-746cd400.entry.js +0 -4
- package/dist/ionic/p-7a53f04c.entry.js +0 -4
- package/dist/ionic/p-7b12d853.entry.js +0 -4
- package/dist/ionic/p-7da05504.entry.js +0 -4
- package/dist/ionic/p-8888efe4.entry.js +0 -4
- package/dist/ionic/p-8cdb4ff5.entry.js +0 -4
- package/dist/ionic/p-90f4cc71.entry.js +0 -4
- package/dist/ionic/p-9ddf2620.entry.js +0 -4
- package/dist/ionic/p-9eeaBrnk.js +0 -4
- package/dist/ionic/p-B5MDSrGg.js +0 -4
- package/dist/ionic/p-BB-JoKGB.js +0 -4
- package/dist/ionic/p-BmVRXR1y.js +0 -4
- package/dist/ionic/p-Br3vSlYh.js +0 -4
- package/dist/ionic/p-C-Cct-6D.js +0 -4
- package/dist/ionic/p-C4I6B3uV.js +0 -4
- package/dist/ionic/p-C8d2ebIg.js +0 -4
- package/dist/ionic/p-CIGNaXM1.js +0 -4
- package/dist/ionic/p-Cnh7O81W.js +0 -4
- package/dist/ionic/p-CtWGkNnJ.js +0 -4
- package/dist/ionic/p-CvaZMP6T.js +0 -4
- package/dist/ionic/p-D2fQU_qK.js +0 -4
- package/dist/ionic/p-DAfH9Iif.js +0 -4
- package/dist/ionic/p-DJKvq7vb.js +0 -4
- package/dist/ionic/p-Dm_oBkW1.js +0 -4
- package/dist/ionic/p-LaGjiAVo.js +0 -4
- package/dist/ionic/p-ZjP4CjeZ.js +0 -4
- package/dist/ionic/p-a00ad0f2.entry.js +0 -4
- package/dist/ionic/p-a81be128.entry.js +0 -4
- package/dist/ionic/p-afeb9df6.entry.js +0 -4
- package/dist/ionic/p-b292804d.entry.js +0 -4
- package/dist/ionic/p-bc9f9032.entry.js +0 -4
- package/dist/ionic/p-bf81a468.entry.js +0 -4
- package/dist/ionic/p-cde6d39b.entry.js +0 -4
- package/dist/ionic/p-d04d66fc.entry.js +0 -4
- package/dist/ionic/p-d3df6032.entry.js +0 -4
- package/dist/ionic/p-dbba38cf.entry.js +0 -4
- package/dist/ionic/p-e6c3214c.entry.js +0 -4
- package/dist/ionic/p-e6c465ff.entry.js +0 -4
- package/dist/ionic/p-ec76fec4.entry.js +0 -4
- package/dist/ionic/p-ee2e35a6.entry.js +0 -4
- package/dist/ionic/p-f7db572a.entry.js +0 -4
- package/dist/ionic/p-f9eb54ee.entry.js +0 -4
- /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -0
package/components/data.js
CHANGED
|
@@ -1147,20 +1147,20 @@ const hour23 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18
|
|
|
1147
1147
|
// h24 hour system uses 1-24. Midnight starts at 24:00.
|
|
1148
1148
|
const hour24 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 0];
|
|
1149
1149
|
/**
|
|
1150
|
-
* Given a locale and a
|
|
1150
|
+
* Given a locale and a theme,
|
|
1151
1151
|
* return an array with formatted days
|
|
1152
|
-
* of the week. iOS
|
|
1153
|
-
* such as "Mon" or "Tue".
|
|
1152
|
+
* of the week. iOS and Ionic themes should
|
|
1153
|
+
* display days such as "Mon" or "Tue".
|
|
1154
1154
|
* MD should display days such as "M"
|
|
1155
1155
|
* or "T".
|
|
1156
1156
|
*/
|
|
1157
|
-
const getDaysOfWeek = (locale,
|
|
1157
|
+
const getDaysOfWeek = (locale, theme, firstDayOfWeek = 0) => {
|
|
1158
1158
|
/**
|
|
1159
1159
|
* Nov 1st, 2020 starts on a Sunday.
|
|
1160
1160
|
* ion-datetime assumes weeks start on Sunday,
|
|
1161
1161
|
* but is configurable via `firstDayOfWeek`.
|
|
1162
1162
|
*/
|
|
1163
|
-
const weekdayFormat =
|
|
1163
|
+
const weekdayFormat = theme === 'md' ? 'narrow' : 'short';
|
|
1164
1164
|
const intl = new Intl.DateTimeFormat(locale, { weekday: weekdayFormat });
|
|
1165
1165
|
const startDate = new Date('11/01/2020');
|
|
1166
1166
|
const daysOfWeek = [];
|
|
@@ -17,6 +17,28 @@ const FOCUS_KEYS = [
|
|
|
17
17
|
'Home',
|
|
18
18
|
'End',
|
|
19
19
|
];
|
|
20
|
+
let focusVisibleUtility = null;
|
|
21
|
+
const getOrInitFocusVisibleUtility = () => {
|
|
22
|
+
if (!focusVisibleUtility) {
|
|
23
|
+
focusVisibleUtility = startFocusVisible();
|
|
24
|
+
}
|
|
25
|
+
return focusVisibleUtility;
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Used to set focus on an element that uses `ion-focusable`.
|
|
29
|
+
* Do not use this if focusing the element as a result of a keyboard
|
|
30
|
+
* event as the focus utility should handle this for us. This method
|
|
31
|
+
* should be used when we want to programmatically focus an element as
|
|
32
|
+
* a result of another user action. (Ex: We focus the first element
|
|
33
|
+
* inside of a popover when the user presents it, but the popover is not always
|
|
34
|
+
* presented as a result of keyboard action.)
|
|
35
|
+
*
|
|
36
|
+
* @param elements - The elements to set focus on.
|
|
37
|
+
*/
|
|
38
|
+
const focusElements = (elements) => {
|
|
39
|
+
const focusVisible = getOrInitFocusVisibleUtility();
|
|
40
|
+
focusVisible.setFocus(elements);
|
|
41
|
+
};
|
|
20
42
|
const startFocusVisible = (rootEl) => {
|
|
21
43
|
let currentFocus = [];
|
|
22
44
|
let keyboardMode = true;
|
|
@@ -72,4 +94,4 @@ const startFocusVisible = (rootEl) => {
|
|
|
72
94
|
};
|
|
73
95
|
};
|
|
74
96
|
|
|
75
|
-
export { startFocusVisible };
|
|
97
|
+
export { focusElements, getOrInitFocusVisibleUtility, startFocusVisible };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
+
import { c as config } from './index4.js';
|
|
4
5
|
import { c as componentOnReady } from './helpers.js';
|
|
5
6
|
|
|
6
7
|
// TODO(FW-2832): types
|
|
@@ -102,7 +103,8 @@ const CoreDelegate = () => {
|
|
|
102
103
|
* Get the root of the app and
|
|
103
104
|
* add the overlay there.
|
|
104
105
|
*/
|
|
105
|
-
const
|
|
106
|
+
const appRootSelector = config.get('appRootSelector', 'ion-app');
|
|
107
|
+
const app = document.querySelector(appRootSelector) || document.body;
|
|
106
108
|
/**
|
|
107
109
|
* Create a placeholder comment so that
|
|
108
110
|
* we can return this component to where
|
package/components/header.js
CHANGED
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
4
|
import { readTask, writeTask, proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
|
|
5
|
-
import { g as getScrollElement, f as findIonContent, p as printIonContentErrorMsg } from './
|
|
5
|
+
import { g as getScrollElement, f as findIonContent, p as printIonContentErrorMsg } from './index7.js';
|
|
6
6
|
import { f as clamp, i as inheritAriaAttributes } from './helpers.js';
|
|
7
7
|
import { h as hostContext } from './theme.js';
|
|
8
|
-
import {
|
|
8
|
+
import { c as config } from './index4.js';
|
|
9
|
+
import { b as getIonTheme } from './ionic-global.js';
|
|
9
10
|
|
|
10
11
|
const TRANSITION = 'all 0.2s ease-in-out';
|
|
11
12
|
const cloneElement = (tagName) => {
|
|
@@ -202,18 +203,25 @@ const handleHeaderFade = (scrollEl, baseEl, condenseHeader) => {
|
|
|
202
203
|
});
|
|
203
204
|
};
|
|
204
205
|
|
|
205
|
-
const
|
|
206
|
+
const headerIonicCss = "ion-header{display:block;position:relative;-ms-flex-order:-1;order:-1;width:100%}ion-header ion-toolbar:first-of-type{padding-top:var(--ion-safe-area-top, 0)}ion-header{-webkit-box-shadow:var(--token-elevation-2, 0px 1px 5px 0px rgba(0, 0, 0, 0.05), 0px 8px 25px 0px rgba(0, 0, 0, 0.08));box-shadow:var(--token-elevation-2, 0px 1px 5px 0px rgba(0, 0, 0, 0.05), 0px 8px 25px 0px rgba(0, 0, 0, 0.08));z-index:10}ion-header.header-divider{border-bottom:var(--token-border-size-025, var(--token-scale-025, 1px)) var(--token-border-style-solid, solid) var(--token-primitives-neutral-300, #e0e0e0)}ion-toolbar+ion-toolbar{--padding-start:var(--token-space-400, var(--token-scale-400, 16px));--padding-end:var(--token-space-400, var(--token-scale-400, 16px))}@supports ((-webkit-backdrop-filter: blur(0)) or (backdrop-filter: blur(0))){.header-background{right:0;left:0;top:0;bottom:0;position:absolute;-webkit-backdrop-filter:saturate(180%) blur(var(--token-scale-100, 4px));backdrop-filter:saturate(180%) blur(var(--token-scale-100, 4px))}.header-translucent-ionic ion-toolbar{--opacity:0.7}}";
|
|
206
207
|
|
|
207
|
-
const
|
|
208
|
+
const headerIosCss = "ion-header{display:block;position:relative;-ms-flex-order:-1;order:-1;width:100%}ion-header ion-toolbar:first-of-type{padding-top:var(--ion-safe-area-top, 0)}ion-header{z-index:10}.header-ios ion-toolbar:last-of-type{--border-width:0 0 0.55px}@supports ((-webkit-backdrop-filter: blur(0)) or (backdrop-filter: blur(0))){.header-background{right:0;left:0;top:0;bottom:0;position:absolute;-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}.header-translucent-ios ion-toolbar{--opacity:0.8}.header-collapse-condense-inactive .header-background{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}}.header-ios.ion-no-border ion-toolbar:last-of-type{--border-width:0}.header-collapse-fade ion-toolbar{--opacity-scale:inherit}.header-collapse-condense{z-index:9}.header-collapse-condense ion-toolbar{position:-webkit-sticky;position:sticky;top:0}.header-collapse-condense ion-toolbar:first-of-type{padding-top:0px;z-index:1}.header-collapse-condense ion-toolbar{--background:var(--ion-background-color, #fff);z-index:0}.header-collapse-condense ion-toolbar:last-of-type{--border-width:0px}.header-collapse-condense ion-toolbar ion-searchbar{padding-top:0px;padding-bottom:13px}.header-collapse-main{--opacity-scale:1}.header-collapse-main ion-toolbar{--opacity-scale:inherit}.header-collapse-main ion-toolbar.in-toolbar ion-title,.header-collapse-main ion-toolbar.in-toolbar ion-buttons{-webkit-transition:all 0.2s ease-in-out;transition:all 0.2s ease-in-out}.header-collapse-condense-inactive:not(.header-collapse-condense) ion-toolbar.in-toolbar ion-title,.header-collapse-condense-inactive:not(.header-collapse-condense) ion-toolbar.in-toolbar ion-buttons.buttons-collapse{opacity:0;pointer-events:none}.header-collapse-condense-inactive.header-collapse-condense ion-toolbar.in-toolbar ion-title,.header-collapse-condense-inactive.header-collapse-condense ion-toolbar.in-toolbar ion-buttons.buttons-collapse{visibility:hidden}ion-header.header-ios:not(.header-collapse-main):has(~ion-content ion-header.header-ios[collapse=condense],~ion-content ion-header.header-ios.header-collapse-condense){opacity:0}";
|
|
209
|
+
|
|
210
|
+
const headerMdCss = "ion-header{display:block;position:relative;-ms-flex-order:-1;order:-1;width:100%}ion-header ion-toolbar:first-of-type{padding-top:var(--ion-safe-area-top, 0)}ion-header{z-index:10}.header-md{-webkit-box-shadow:0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12);box-shadow:0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12)}.header-collapse-condense{display:none}.header-md.ion-no-border{-webkit-box-shadow:none;box-shadow:none}";
|
|
208
211
|
|
|
209
212
|
const Header = /*@__PURE__*/ proxyCustomElement(class Header extends HTMLElement {
|
|
210
213
|
constructor() {
|
|
211
214
|
super();
|
|
212
215
|
this.__registerHost();
|
|
213
216
|
this.inheritedAttributes = {};
|
|
217
|
+
/**
|
|
218
|
+
* If `true`, the header will have a line at the bottom.
|
|
219
|
+
* TODO(ROU-10855): add support for this prop on ios/md themes
|
|
220
|
+
*/
|
|
221
|
+
this.divider = false;
|
|
214
222
|
/**
|
|
215
223
|
* If `true`, the header will be translucent.
|
|
216
|
-
* Only applies when the
|
|
224
|
+
* Only applies when the theme is `"ios"` or `"ionic"` and the device supports
|
|
217
225
|
* [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
|
|
218
226
|
*
|
|
219
227
|
* Note: In order to scroll content behind the header, the `fullscreen`
|
|
@@ -245,16 +253,17 @@ const Header = /*@__PURE__*/ proxyCustomElement(class Header extends HTMLElement
|
|
|
245
253
|
this.destroyCollapsibleHeader();
|
|
246
254
|
}
|
|
247
255
|
async checkCollapsibleHeader() {
|
|
248
|
-
const
|
|
249
|
-
if (
|
|
256
|
+
const theme = getIonTheme(this);
|
|
257
|
+
if (theme !== 'ios') {
|
|
250
258
|
return;
|
|
251
259
|
}
|
|
252
260
|
const { collapse } = this;
|
|
253
261
|
const hasCondense = collapse === 'condense';
|
|
254
262
|
const hasFade = collapse === 'fade';
|
|
255
263
|
this.destroyCollapsibleHeader();
|
|
264
|
+
const appRootSelector = config.get('appRootSelector', 'ion-app');
|
|
256
265
|
if (hasCondense) {
|
|
257
|
-
const pageEl = this.el.closest(
|
|
266
|
+
const pageEl = this.el.closest(`${appRootSelector},ion-page,.ion-page,page-inner`);
|
|
258
267
|
const contentEl = pageEl ? findIonContent(pageEl) : null;
|
|
259
268
|
// Cloned elements are always needed in iOS transition
|
|
260
269
|
writeTask(() => {
|
|
@@ -265,7 +274,7 @@ const Header = /*@__PURE__*/ proxyCustomElement(class Header extends HTMLElement
|
|
|
265
274
|
await this.setupCondenseHeader(contentEl, pageEl);
|
|
266
275
|
}
|
|
267
276
|
else if (hasFade) {
|
|
268
|
-
const pageEl = this.el.closest(
|
|
277
|
+
const pageEl = this.el.closest(`${appRootSelector},ion-page,.ion-page,page-inner`);
|
|
269
278
|
const contentEl = pageEl ? findIonContent(pageEl) : null;
|
|
270
279
|
if (!contentEl) {
|
|
271
280
|
printIonContentErrorMsg(this.el);
|
|
@@ -340,27 +349,30 @@ const Header = /*@__PURE__*/ proxyCustomElement(class Header extends HTMLElement
|
|
|
340
349
|
});
|
|
341
350
|
}
|
|
342
351
|
render() {
|
|
343
|
-
const { translucent, inheritedAttributes } = this;
|
|
344
|
-
const
|
|
352
|
+
const { translucent, inheritedAttributes, divider } = this;
|
|
353
|
+
const theme = getIonTheme(this);
|
|
345
354
|
const collapse = this.collapse || 'none';
|
|
346
355
|
// banner role must be at top level, so remove role if inside a menu
|
|
347
356
|
const roleType = hostContext('ion-menu', this.el) ? 'none' : 'banner';
|
|
348
|
-
return (h(Host, Object.assign({ key: '
|
|
349
|
-
[
|
|
357
|
+
return (h(Host, Object.assign({ key: 'f5c81cee59b635b407fcad7732c793c651edb91e', role: roleType, class: {
|
|
358
|
+
[theme]: true,
|
|
350
359
|
// Used internally for styling
|
|
351
|
-
[`header-${
|
|
360
|
+
[`header-${theme}`]: true,
|
|
352
361
|
[`header-translucent`]: this.translucent,
|
|
353
362
|
[`header-collapse-${collapse}`]: true,
|
|
354
|
-
[`header-translucent-${
|
|
355
|
-
|
|
363
|
+
[`header-translucent-${theme}`]: this.translucent,
|
|
364
|
+
['header-divider']: divider,
|
|
365
|
+
} }, inheritedAttributes), theme !== 'md' && translucent && h("div", { key: 'd8373a8418756961185de934082142da01b27a26', class: "header-background" }), h("slot", { key: '9fda3dcb16fd09f7f6fa1c345d17cdf130e1e331' })));
|
|
356
366
|
}
|
|
357
367
|
get el() { return this; }
|
|
358
368
|
static get style() { return {
|
|
369
|
+
ionic: headerIonicCss,
|
|
359
370
|
ios: headerIosCss,
|
|
360
371
|
md: headerMdCss
|
|
361
372
|
}; }
|
|
362
373
|
}, [292, "ion-header", {
|
|
363
374
|
"collapse": [1],
|
|
375
|
+
"divider": [4],
|
|
364
376
|
"translucent": [4]
|
|
365
377
|
}]);
|
|
366
378
|
function defineCustomElement() {
|
package/components/helpers.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import { focusElements } from './focus-visible.js';
|
|
5
|
+
import { a as printIonError, c as config } from './index4.js';
|
|
5
6
|
|
|
6
7
|
const transitionEndAsync = (el, expectedDuration = 0) => {
|
|
7
8
|
return new Promise((resolve) => {
|
|
@@ -201,6 +202,17 @@ const raf = (h) => {
|
|
|
201
202
|
const hasShadowDom = (el) => {
|
|
202
203
|
return !!el.shadowRoot && !!el.attachShadow;
|
|
203
204
|
};
|
|
205
|
+
/**
|
|
206
|
+
* Focuses a given element while ensuring proper focus management
|
|
207
|
+
* within the Ionic framework. If the element is marked as `ion-focusable`,
|
|
208
|
+
* this function will delegate focus handling to `ion-app` or manually
|
|
209
|
+
* apply focus when a custom app root is used.
|
|
210
|
+
*
|
|
211
|
+
* This function helps maintain accessibility and expected focus behavior
|
|
212
|
+
* in both standard and custom root environments.
|
|
213
|
+
*
|
|
214
|
+
* @param el - The element to focus.
|
|
215
|
+
*/
|
|
204
216
|
const focusVisibleElement = (el) => {
|
|
205
217
|
el.focus();
|
|
206
218
|
/**
|
|
@@ -212,9 +224,36 @@ const focusVisibleElement = (el) => {
|
|
|
212
224
|
* which will let us explicitly set the elements to focus.
|
|
213
225
|
*/
|
|
214
226
|
if (el.classList.contains('ion-focusable')) {
|
|
215
|
-
const
|
|
227
|
+
const appRootSelector = config.get('appRootSelector', 'ion-app');
|
|
228
|
+
const app = el.closest(appRootSelector);
|
|
216
229
|
if (app) {
|
|
217
|
-
app
|
|
230
|
+
if (appRootSelector === 'ion-app') {
|
|
231
|
+
/**
|
|
232
|
+
* If the app root is the default, then it will be
|
|
233
|
+
* in charge of setting focus. This is because the
|
|
234
|
+
* focus-visible utility is attached to the app root
|
|
235
|
+
* and will handle setting focus on the correct element.
|
|
236
|
+
*/
|
|
237
|
+
app.setFocus([el]);
|
|
238
|
+
}
|
|
239
|
+
else {
|
|
240
|
+
/**
|
|
241
|
+
* When using a custom app root selector, the focus-visible
|
|
242
|
+
* utility is not available to manage focus automatically.
|
|
243
|
+
* If we set focus immediately, the element may not be fully
|
|
244
|
+
* rendered or interactive, especially if it was just added
|
|
245
|
+
* to the DOM. Using requestAnimationFrame ensures that focus
|
|
246
|
+
* is applied on the next frame, allowing the DOM to settle
|
|
247
|
+
* before changing focus.
|
|
248
|
+
*/
|
|
249
|
+
requestAnimationFrame(() => {
|
|
250
|
+
/**
|
|
251
|
+
* The focus-visible utility is used to set focus on an
|
|
252
|
+
* element that uses `ion-focusable`.
|
|
253
|
+
*/
|
|
254
|
+
focusElements([el]);
|
|
255
|
+
});
|
|
256
|
+
}
|
|
218
257
|
}
|
|
219
258
|
}
|
|
220
259
|
};
|
package/components/index5.js
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { d as doc } from './
|
|
5
|
-
import { MENU_BACK_BUTTON_PRIORITY } from './hardware-back-button.js';
|
|
4
|
+
import { c as getIonMode, d as doc, M as MENU_BACK_BUTTON_PRIORITY } from './ionic-global.js';
|
|
6
5
|
import { p as printIonWarning } from './index4.js';
|
|
7
6
|
import { c as componentOnReady } from './helpers.js';
|
|
8
|
-
import { b as getIonMode } from './ionic-global.js';
|
|
9
7
|
import { c as createAnimation } from './animation.js';
|
|
10
8
|
|
|
11
9
|
/**
|
|
@@ -48,10 +46,10 @@ const menuOverlayAnimation = (menu) => {
|
|
|
48
46
|
}
|
|
49
47
|
menuAnimation.addElement(menu.menuInnerEl).fromTo('transform', `translateX(${closedX})`, `translateX(${openedX})`);
|
|
50
48
|
const mode = getIonMode(menu);
|
|
51
|
-
const
|
|
52
|
-
const opacity =
|
|
49
|
+
const isIOS = mode === 'ios';
|
|
50
|
+
const opacity = isIOS ? 0.2 : 0.25;
|
|
53
51
|
backdropAnimation.addElement(menu.backdropEl).fromTo('opacity', 0.01, opacity);
|
|
54
|
-
return baseAnimation(
|
|
52
|
+
return baseAnimation(isIOS).addAnimation([menuAnimation, backdropAnimation]);
|
|
55
53
|
};
|
|
56
54
|
|
|
57
55
|
/**
|
|
@@ -64,6 +62,7 @@ const menuPushAnimation = (menu) => {
|
|
|
64
62
|
let menuClosedX;
|
|
65
63
|
const mode = getIonMode(menu);
|
|
66
64
|
const width = menu.width;
|
|
65
|
+
const isIOS = mode === 'ios';
|
|
67
66
|
if (menu.isEndSide) {
|
|
68
67
|
contentOpenedX = -width + 'px';
|
|
69
68
|
menuClosedX = width + 'px';
|
|
@@ -79,7 +78,7 @@ const menuPushAnimation = (menu) => {
|
|
|
79
78
|
.addElement(menu.contentEl)
|
|
80
79
|
.fromTo('transform', 'translateX(0px)', `translateX(${contentOpenedX})`);
|
|
81
80
|
const backdropAnimation = createAnimation().addElement(menu.backdropEl).fromTo('opacity', 0.01, 0.32);
|
|
82
|
-
return baseAnimation(
|
|
81
|
+
return baseAnimation(isIOS).addAnimation([menuAnimation, contentAnimation, backdropAnimation]);
|
|
83
82
|
};
|
|
84
83
|
|
|
85
84
|
/**
|
|
@@ -89,11 +88,12 @@ const menuPushAnimation = (menu) => {
|
|
|
89
88
|
*/
|
|
90
89
|
const menuRevealAnimation = (menu) => {
|
|
91
90
|
const mode = getIonMode(menu);
|
|
91
|
+
const isIOS = mode === 'ios';
|
|
92
92
|
const openedX = menu.width * (menu.isEndSide ? -1 : 1) + 'px';
|
|
93
93
|
const contentOpen = createAnimation()
|
|
94
94
|
.addElement(menu.contentEl) // REVIEW
|
|
95
95
|
.fromTo('transform', 'translateX(0px)', `translateX(${openedX})`);
|
|
96
|
-
return baseAnimation(
|
|
96
|
+
return baseAnimation(isIOS).addAnimation(contentOpen);
|
|
97
97
|
};
|
|
98
98
|
|
|
99
99
|
const createMenuController = () => {
|
package/components/index6.js
CHANGED
|
@@ -29,4 +29,4 @@ const reorderTwoSharp = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2
|
|
|
29
29
|
const searchOutline = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M221.09 64a157.09 157.09 0 1 0 157.09 157.09A157.1 157.1 0 0 0 221.09 64Z' stroke-miterlimit='10' class='ionicon-fill-none ionicon-stroke-width'/><path d='M338.29 338.29 448 448' stroke-linecap='round' stroke-miterlimit='10' class='ionicon-fill-none ionicon-stroke-width'/></svg>";
|
|
30
30
|
const searchSharp = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M464 428 339.92 303.9a160.48 160.48 0 0 0 30.72-94.58C370.64 120.37 298.27 48 209.32 48S48 120.37 48 209.32s72.37 161.32 161.32 161.32a160.48 160.48 0 0 0 94.58-30.72L428 464ZM209.32 319.69a110.38 110.38 0 1 1 110.37-110.37 110.5 110.5 0 0 1-110.37 110.37'/></svg>";
|
|
31
31
|
|
|
32
|
-
export {
|
|
32
|
+
export { arrowBackSharp as a, chevronBack as b, chevronDown as c, chevronForwardOutline as d, ellipsisHorizontal as e, chevronForward as f, caretDownSharp as g, caretUpSharp as h, close as i, closeSharp as j, closeCircle as k, eyeOff as l, eye as m, menuSharp as n, menuOutline as o, arrowDown as p, caretBackSharp as q, reorderTwoSharp as r, reorderThreeOutline as s, searchSharp as t, searchOutline as u, chevronExpand as v, checkmarkOutline as w, removeOutline as x, ellipseOutline as y };
|
package/components/index7.js
CHANGED
|
@@ -1,167 +1,128 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
4
|
+
import { c as componentOnReady } from './helpers.js';
|
|
5
|
+
import { e as printRequiredElementError } from './index4.js';
|
|
6
6
|
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
const ION_CONTENT_TAG_NAME = 'ION-CONTENT';
|
|
8
|
+
const ION_CONTENT_ELEMENT_SELECTOR = 'ion-content';
|
|
9
|
+
const ION_CONTENT_CLASS_SELECTOR = '.ion-content-scroll-host';
|
|
10
|
+
/**
|
|
11
|
+
* Selector used for implementations reliant on `<ion-content>` for scroll event changes.
|
|
12
|
+
*
|
|
13
|
+
* Developers should use the `.ion-content-scroll-host` selector to target the element emitting
|
|
14
|
+
* scroll events. With virtual scroll implementations this will be the host element for
|
|
15
|
+
* the scroll viewport.
|
|
16
|
+
*/
|
|
17
|
+
const ION_CONTENT_SELECTOR = `${ION_CONTENT_ELEMENT_SELECTOR}, ${ION_CONTENT_CLASS_SELECTOR}`;
|
|
18
|
+
const isIonContent = (el) => el.tagName === ION_CONTENT_TAG_NAME;
|
|
19
|
+
/**
|
|
20
|
+
* Waits for the element host fully initialize before
|
|
21
|
+
* returning the inner scroll element.
|
|
22
|
+
*
|
|
23
|
+
* For `ion-content` the scroll target will be the result
|
|
24
|
+
* of the `getScrollElement` function.
|
|
25
|
+
*
|
|
26
|
+
* For custom implementations it will be the element host
|
|
27
|
+
* or a selector within the host, if supplied through `scrollTarget`.
|
|
28
|
+
*/
|
|
29
|
+
const getScrollElement = async (el) => {
|
|
30
|
+
if (isIonContent(el)) {
|
|
31
|
+
await new Promise((resolve) => componentOnReady(el, resolve));
|
|
32
|
+
return el.getScrollElement();
|
|
10
33
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
if (activeDefer)
|
|
19
|
-
clearTimeout(activeDefer);
|
|
20
|
-
activeDefer = undefined;
|
|
21
|
-
if (activatableEle) {
|
|
22
|
-
removeActivated(false);
|
|
23
|
-
activatableEle = undefined;
|
|
24
|
-
}
|
|
25
|
-
};
|
|
26
|
-
const pointerDown = (ev) => {
|
|
27
|
-
// Ignore right clicks
|
|
28
|
-
if (activatableEle || ev.button === 2) {
|
|
29
|
-
return;
|
|
30
|
-
}
|
|
31
|
-
setActivatedElement(getActivatableTarget(ev), ev);
|
|
32
|
-
};
|
|
33
|
-
const pointerUp = (ev) => {
|
|
34
|
-
setActivatedElement(undefined, ev);
|
|
35
|
-
};
|
|
36
|
-
const setActivatedElement = (el, ev) => {
|
|
37
|
-
// do nothing
|
|
38
|
-
if (el && el === activatableEle) {
|
|
39
|
-
return;
|
|
40
|
-
}
|
|
41
|
-
if (activeDefer)
|
|
42
|
-
clearTimeout(activeDefer);
|
|
43
|
-
activeDefer = undefined;
|
|
44
|
-
const { x, y } = pointerCoord(ev);
|
|
45
|
-
// deactivate selected
|
|
46
|
-
if (activatableEle) {
|
|
47
|
-
if (clearDefers.has(activatableEle)) {
|
|
48
|
-
throw new Error('internal error');
|
|
49
|
-
}
|
|
50
|
-
if (!activatableEle.classList.contains(ACTIVATED)) {
|
|
51
|
-
addActivated(activatableEle, x, y);
|
|
52
|
-
}
|
|
53
|
-
removeActivated(true);
|
|
54
|
-
}
|
|
55
|
-
// activate
|
|
56
|
-
if (el) {
|
|
57
|
-
const deferId = clearDefers.get(el);
|
|
58
|
-
if (deferId) {
|
|
59
|
-
clearTimeout(deferId);
|
|
60
|
-
clearDefers.delete(el);
|
|
61
|
-
}
|
|
62
|
-
el.classList.remove(ACTIVATED);
|
|
63
|
-
const callback = () => {
|
|
64
|
-
addActivated(el, x, y);
|
|
65
|
-
activeDefer = undefined;
|
|
66
|
-
};
|
|
67
|
-
if (isInstant(el)) {
|
|
68
|
-
callback();
|
|
69
|
-
}
|
|
70
|
-
else {
|
|
71
|
-
activeDefer = setTimeout(callback, ADD_ACTIVATED_DEFERS);
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
activatableEle = el;
|
|
75
|
-
};
|
|
76
|
-
const addActivated = (el, x, y) => {
|
|
77
|
-
lastActivated = Date.now();
|
|
78
|
-
el.classList.add(ACTIVATED);
|
|
79
|
-
if (!useRippleEffect)
|
|
80
|
-
return;
|
|
81
|
-
const rippleEffect = getRippleEffect(el);
|
|
82
|
-
if (rippleEffect !== null) {
|
|
83
|
-
removeRipple();
|
|
84
|
-
activeRipple = rippleEffect.addRipple(x, y);
|
|
85
|
-
}
|
|
86
|
-
};
|
|
87
|
-
const removeRipple = () => {
|
|
88
|
-
if (activeRipple !== undefined) {
|
|
89
|
-
activeRipple.then((remove) => remove());
|
|
90
|
-
activeRipple = undefined;
|
|
91
|
-
}
|
|
92
|
-
};
|
|
93
|
-
const removeActivated = (smooth) => {
|
|
94
|
-
removeRipple();
|
|
95
|
-
const active = activatableEle;
|
|
96
|
-
if (!active) {
|
|
97
|
-
return;
|
|
98
|
-
}
|
|
99
|
-
const time = CLEAR_STATE_DEFERS - Date.now() + lastActivated;
|
|
100
|
-
if (smooth && time > 0 && !isInstant(active)) {
|
|
101
|
-
const deferId = setTimeout(() => {
|
|
102
|
-
active.classList.remove(ACTIVATED);
|
|
103
|
-
clearDefers.delete(active);
|
|
104
|
-
}, CLEAR_STATE_DEFERS);
|
|
105
|
-
clearDefers.set(active, deferId);
|
|
106
|
-
}
|
|
107
|
-
else {
|
|
108
|
-
active.classList.remove(ACTIVATED);
|
|
109
|
-
}
|
|
110
|
-
};
|
|
111
|
-
doc.addEventListener('ionGestureCaptured', cancelActive);
|
|
112
|
-
doc.addEventListener('pointerdown', pointerDown, true);
|
|
113
|
-
doc.addEventListener('pointerup', pointerUp, true);
|
|
34
|
+
return el;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* Queries the element matching the selector for IonContent.
|
|
38
|
+
* See ION_CONTENT_SELECTOR for the selector used.
|
|
39
|
+
*/
|
|
40
|
+
const findIonContent = (el) => {
|
|
114
41
|
/**
|
|
115
|
-
*
|
|
116
|
-
*
|
|
117
|
-
*
|
|
118
|
-
* as part of the scroll, the ripple effect should not
|
|
119
|
-
* be dispatched. The ripple effect should only happen
|
|
120
|
-
* if the button is activated and the page is not scrolling.
|
|
121
|
-
*
|
|
122
|
-
* pointercancel is dispatched on a gesture when scrolling
|
|
123
|
-
* starts, so this lets us avoid having to listen for
|
|
124
|
-
* ion-content's scroll events.
|
|
42
|
+
* First we try to query the custom scroll host selector in cases where
|
|
43
|
+
* the implementation is using an outer `ion-content` with an inner custom
|
|
44
|
+
* scroll container.
|
|
125
45
|
*/
|
|
126
|
-
|
|
46
|
+
const customContentHost = el.querySelector(ION_CONTENT_CLASS_SELECTOR);
|
|
47
|
+
if (customContentHost) {
|
|
48
|
+
return customContentHost;
|
|
49
|
+
}
|
|
50
|
+
return el.querySelector(ION_CONTENT_SELECTOR);
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* Queries the closest element matching the selector for IonContent.
|
|
54
|
+
*/
|
|
55
|
+
const findClosestIonContent = (el) => {
|
|
56
|
+
return el.closest(ION_CONTENT_SELECTOR);
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* Scrolls to the top of the element. If an `ion-content` is found, it will scroll
|
|
60
|
+
* using the public API `scrollToTop` with a duration.
|
|
61
|
+
*/
|
|
62
|
+
const scrollToTop = (el, durationMs) => {
|
|
63
|
+
if (isIonContent(el)) {
|
|
64
|
+
const content = el;
|
|
65
|
+
return content.scrollToTop(durationMs);
|
|
66
|
+
}
|
|
67
|
+
return Promise.resolve(el.scrollTo({
|
|
68
|
+
top: 0,
|
|
69
|
+
left: 0,
|
|
70
|
+
behavior: 'smooth' ,
|
|
71
|
+
}));
|
|
127
72
|
};
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
73
|
+
/**
|
|
74
|
+
* Scrolls by a specified X/Y distance in the component. If an `ion-content` is found, it will scroll
|
|
75
|
+
* using the public API `scrollByPoint` with a duration.
|
|
76
|
+
*/
|
|
77
|
+
const scrollByPoint = (el, x, y, durationMs) => {
|
|
78
|
+
if (isIonContent(el)) {
|
|
79
|
+
const content = el;
|
|
80
|
+
return content.scrollByPoint(x, y, durationMs);
|
|
81
|
+
}
|
|
82
|
+
return Promise.resolve(el.scrollBy({
|
|
83
|
+
top: y,
|
|
84
|
+
left: x,
|
|
85
|
+
behavior: durationMs > 0 ? 'smooth' : 'auto',
|
|
86
|
+
}));
|
|
87
|
+
};
|
|
88
|
+
/**
|
|
89
|
+
* Prints an error informing developers that an implementation requires an element to be used
|
|
90
|
+
* within either the `ion-content` selector or the `.ion-content-scroll-host` class.
|
|
91
|
+
*/
|
|
92
|
+
const printIonContentErrorMsg = (el) => {
|
|
93
|
+
return printRequiredElementError(el, ION_CONTENT_ELEMENT_SELECTOR);
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Several components in Ionic need to prevent scrolling
|
|
97
|
+
* during a gesture (card modal, range, item sliding, etc).
|
|
98
|
+
* Use this utility to account for ion-content and custom content hosts.
|
|
99
|
+
*/
|
|
100
|
+
const disableContentScrollY = (contentEl) => {
|
|
101
|
+
if (isIonContent(contentEl)) {
|
|
102
|
+
const ionContent = contentEl;
|
|
103
|
+
const initialScrollY = ionContent.scrollY;
|
|
104
|
+
ionContent.scrollY = false;
|
|
131
105
|
/**
|
|
132
|
-
*
|
|
133
|
-
*
|
|
134
|
-
* For example,
|
|
135
|
-
*
|
|
136
|
-
*
|
|
137
|
-
* or ShadowRoot.
|
|
106
|
+
* This should be passed into resetContentScrollY
|
|
107
|
+
* so that we can revert ion-content's scrollY to the
|
|
108
|
+
* correct state. For example, if scrollY = false
|
|
109
|
+
* initially, we do not want to enable scrolling
|
|
110
|
+
* when we call resetContentScrollY.
|
|
138
111
|
*/
|
|
139
|
-
|
|
140
|
-
for (let i = 0; i < path.length - 2; i++) {
|
|
141
|
-
const el = path[i];
|
|
142
|
-
if (!(el instanceof ShadowRoot) && el.classList.contains('ion-activatable')) {
|
|
143
|
-
return el;
|
|
144
|
-
}
|
|
145
|
-
}
|
|
112
|
+
return initialScrollY;
|
|
146
113
|
}
|
|
147
114
|
else {
|
|
148
|
-
|
|
115
|
+
contentEl.style.setProperty('overflow', 'hidden');
|
|
116
|
+
return true;
|
|
149
117
|
}
|
|
150
118
|
};
|
|
151
|
-
const
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
if (ripple) {
|
|
158
|
-
return ripple;
|
|
159
|
-
}
|
|
119
|
+
const resetContentScrollY = (contentEl, initialScrollY) => {
|
|
120
|
+
if (isIonContent(contentEl)) {
|
|
121
|
+
contentEl.scrollY = initialScrollY;
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
contentEl.style.removeProperty('overflow');
|
|
160
125
|
}
|
|
161
|
-
return el.querySelector('ion-ripple-effect');
|
|
162
126
|
};
|
|
163
|
-
const ACTIVATED = 'ion-activated';
|
|
164
|
-
const ADD_ACTIVATED_DEFERS = 100;
|
|
165
|
-
const CLEAR_STATE_DEFERS = 150;
|
|
166
127
|
|
|
167
|
-
export {
|
|
128
|
+
export { ION_CONTENT_CLASS_SELECTOR as I, findClosestIonContent as a, ION_CONTENT_ELEMENT_SELECTOR as b, scrollByPoint as c, disableContentScrollY as d, findIonContent as f, getScrollElement as g, isIonContent as i, printIonContentErrorMsg as p, resetContentScrollY as r, scrollToTop as s };
|