@ionic/core 8.7.10 → 8.7.11-dev.11763677588.1682e25d
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 +34 -22
- 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 +72 -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 +40 -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 +12 -5
- 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-Bt3H9L1C.js → animation-BYsP2q5j.js} +2 -2
- package/dist/cjs/{app-globals-Ciccnk9_.js → app-globals-CrtAvKxl.js} +1 -1
- package/dist/cjs/{button-active-CMc8cD90.js → button-active-CDa7BeCl.js} +1 -1
- package/dist/cjs/{capacitor-DmA66EwP.js → capacitor-BMhHF0O5.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-JwZKaIQB.js → data-MoL8Ckx5.js} +5 -5
- package/dist/cjs/{focus-visible-CCvKiLh3.js → focus-visible-BIj-I3-C.js} +24 -0
- package/dist/cjs/{framework-delegate-DMJRBuDi.js → framework-delegate-Bwdk9vFS.js} +4 -2
- package/dist/cjs/{haptic-ClPPQ_PS.js → haptic-Cy3moXzO.js} +1 -1
- package/dist/cjs/{helpers-DrTqNghc.js → helpers-DnouLczu.js} +41 -2
- package/dist/cjs/{index-C534ULug.js → index-Bq6U5NAb.js} +8 -7
- package/dist/cjs/{index-094mMFB-.js → index-CWyLwRTs.js} +3 -3
- package/dist/cjs/{index-CO6eryBo.js → index-DUoP_H1L.js} +1 -1
- package/dist/cjs/{index-DrMUZJj6.js → index-XjN3PjKG.js} +15 -15
- package/dist/cjs/index.cjs.js +10 -11
- package/dist/cjs/{input-shims-CW0KUFTQ.js → input-shims-D6DHFHsE.js} +17 -16
- package/dist/cjs/{input.utils-B_QROI2g.js → input.utils-BVyJKWft.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 +249 -150
- 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 +106 -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 +15 -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-DuRUel5m.js +491 -0
- package/dist/cjs/ionic.cjs.js +3 -3
- package/dist/cjs/{ios.transition-BOt_uW73.js → ios.transition-Duxxr-xb.js} +6 -4
- package/dist/cjs/{keyboard-hHzlEQpk.js → keyboard-C1Ds9WQH.js} +4 -3
- package/dist/cjs/{keyboard-UuAS4D_9.js → keyboard-UYQhk8rB.js} +1 -1
- package/dist/cjs/{keyboard-controller-GXBiBRKS.js → keyboard-controller-ts0z4BIe.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-Dt968VXB.js → md.transition-BqUnXqxP.js} +5 -4
- package/dist/cjs/{notch-controller-Bzqhjm4f.js → notch-controller-BX7CnNaL.js} +4 -4
- package/dist/cjs/{overlays-DxIZwUXI.js → overlays-pdcfssMG.js} +8 -9
- package/dist/cjs/{status-tap-g0sWWkXk.js → status-tap-e-hyosXV.js} +3 -2
- package/dist/cjs/{swipe-back-BIayeNOD.js → swipe-back-CR060nOX.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 +636 -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 +50 -19
- package/dist/collection/components/header/header.md.css +23 -8
- package/dist/collection/components/header/header.utils.js +5 -5
- 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 +102 -60
- package/dist/collection/components/input-otp/input-otp.js +7 -5
- package/dist/collection/components/input-otp/input-otp.md.css +102 -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 +508 -0
- package/dist/collection/components/item/item.ios.css +109 -69
- package/dist/collection/components/item/item.js +44 -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 +247 -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 +773 -0
- package/dist/collection/components/select/select.ios.css +315 -176
- package/dist/collection/components/select/select.js +156 -53
- package/dist/collection/components/select/select.md.css +331 -178
- package/dist/collection/components/select-modal/select-modal.ionic.css +130 -0
- package/dist/collection/components/select-modal/select-modal.ios.css +18 -0
- package/dist/collection/components/select-modal/select-modal.js +11 -4
- 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 +201 -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 +337 -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 +881 -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 +26 -3
- package/dist/collection/utils/transition/ios.transition.js +1 -0
- package/dist/docs.json +8168 -372
- package/dist/esm/{animation-Dt8bGnA-.js → animation-DGDOQ6ES.js} +1 -1
- package/dist/esm/{app-globals-BDSf8fOA.js → app-globals-BNKecRVD.js} +1 -1
- package/dist/esm/{button-active-L570Swow.js → button-active-C_l8DIlb.js} +1 -1
- package/dist/esm/{capacitor-CFERIeaU.js → capacitor-CiBLEyrT.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-DCORV9FH.js → data-DFCY8gnk.js} +5 -5
- package/dist/esm/{focus-visible-BmVRXR1y.js → focus-visible-vXpMhGrs.js} +23 -1
- package/dist/esm/{framework-delegate-BYawdMXj.js → framework-delegate-D2mUP0WI.js} +4 -2
- package/dist/esm/{haptic-DzAMWJuk.js → haptic-7RTk38ue.js} +1 -1
- package/dist/esm/{helpers-DEn3pfjm.js → helpers-Bsml3FcE.js} +42 -3
- package/dist/esm/{index-Bs3kT4bc.js → index-BpFi2B8W.js} +1 -1
- package/dist/esm/{index-DV3sJJW8.js → index-COG0_eom.js} +1 -1
- package/dist/esm/{index-r2D9DEro.js → index-Cj1G4iWF.js} +3 -3
- package/dist/esm/{index-CvDIirVx.js → index-DWD4QoaP.js} +10 -10
- package/dist/esm/{index-ceb5RaMT.js → index-rXea6WR_.js} +3 -2
- package/dist/esm/index.js +10 -11
- package/dist/esm/{input-shims-DyOpfTg6.js → input-shims-Bz3HiPwU.js} +6 -5
- package/dist/esm/{input.utils-DrvTa8gz.js → input.utils-BQAE1QTA.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 +250 -151
- 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 +108 -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 +16 -10
- 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-2R0iPB51.js +480 -0
- package/dist/esm/ionic.js +3 -3
- package/dist/esm/{ios.transition-BDzw0_Hm.js → ios.transition-DvzxRGcW.js} +6 -4
- package/dist/esm/{keyboard-ywgs5efA.js → keyboard-DuUgrXrK.js} +4 -3
- package/dist/esm/{keyboard-CUw4ekVy.js → keyboard-WCK1pWfR.js} +1 -1
- package/dist/esm/{keyboard-controller-BaaVITYt.js → keyboard-controller-Bc4alOiF.js} +5 -3
- package/dist/esm/list-Dhi5xtNS.js +6 -0
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{md.transition-BzDYi3qq.js → md.transition-DV0cjDzj.js} +5 -4
- package/dist/esm/{notch-controller-BwelN_JM.js → notch-controller-DO30Bsls.js} +2 -2
- package/dist/esm/{overlays-BymNv-BL.js → overlays-Da_6xSKI.js} +5 -6
- package/dist/esm/{status-tap-5DQ7Fc4V.js → status-tap-DXVlluKS.js} +3 -2
- package/dist/esm/{swipe-back-BKw2CAHc.js → swipe-back-DNhAt9fY.js} +2 -1
- package/dist/esm/x-BDqjX7Z_.js +6 -0
- package/dist/html.html-data.json +2530 -224
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p--8Ga2Cg0.js +4 -0
- package/dist/ionic/p-0a64bb9c.entry.js +4 -0
- package/dist/ionic/p-0f7163d6.entry.js +4 -0
- package/dist/ionic/p-14346334.entry.js +4 -0
- package/dist/ionic/p-1d342a37.entry.js +4 -0
- package/dist/ionic/p-23e4b68a.entry.js +4 -0
- package/dist/ionic/p-2a3ff36f.entry.js +4 -0
- package/dist/ionic/p-2a825e5e.entry.js +4 -0
- package/dist/ionic/p-3622a9ea.entry.js +4 -0
- package/dist/ionic/p-3a481932.entry.js +4 -0
- package/dist/ionic/p-3a4865fd.entry.js +4 -0
- package/dist/ionic/p-418e4330.entry.js +4 -0
- package/dist/ionic/p-46fb5199.entry.js +4 -0
- package/dist/ionic/p-4757e558.entry.js +4 -0
- package/dist/ionic/p-477843a1.entry.js +4 -0
- package/dist/ionic/p-484aeb4c.entry.js +4 -0
- package/dist/ionic/p-4e13d498.entry.js +4 -0
- package/dist/ionic/p-51824ad7.entry.js +4 -0
- package/dist/ionic/p-53211e8a.entry.js +4 -0
- package/dist/ionic/p-55e2352e.entry.js +4 -0
- package/dist/ionic/p-57ef19f7.entry.js +4 -0
- package/dist/ionic/p-5883f08d.entry.js +4 -0
- package/dist/ionic/p-59a79bd9.entry.js +4 -0
- package/dist/ionic/p-66397fac.entry.js +4 -0
- package/dist/ionic/p-665c2df8.entry.js +4 -0
- package/dist/ionic/p-66d094b2.entry.js +4 -0
- package/dist/ionic/p-6fac73e6.entry.js +4 -0
- package/dist/ionic/p-7a18e825.entry.js +4 -0
- package/dist/ionic/p-7d450184.entry.js +4 -0
- package/dist/ionic/p-81770a5c.entry.js +4 -0
- package/dist/ionic/p-844bd58c.entry.js +4 -0
- package/dist/ionic/p-85386f56.entry.js +4 -0
- package/dist/ionic/p-86b82096.entry.js +4 -0
- package/dist/ionic/p-88ef6829.entry.js +4 -0
- package/dist/ionic/p-89743bba.entry.js +4 -0
- package/dist/ionic/p-8a1c5f2b.entry.js +4 -0
- package/dist/ionic/p-91966afa.entry.js +4 -0
- package/dist/ionic/p-921fef6a.entry.js +4 -0
- package/dist/ionic/p-93ed8a1d.entry.js +4 -0
- package/dist/ionic/p-9c3361e4.entry.js +4 -0
- package/dist/ionic/p-B-N4FEiY.js +4 -0
- package/dist/ionic/{p-CwgG81ZD.js → p-B3uz75uZ.js} +1 -1
- package/dist/ionic/p-BDqjX7Z_.js +4 -0
- package/dist/ionic/p-BRd1Ag6P.js +4 -0
- package/dist/ionic/p-BYSs-jZz.js +4 -0
- package/dist/ionic/{p-CJxh_yLS.js → p-BbT4IAlw.js} +1 -1
- package/dist/ionic/p-BiTKUjko.js +4 -0
- package/dist/ionic/p-CGo9Zrhw.js +4 -0
- package/dist/ionic/p-CK1xn1Nt.js +4 -0
- package/dist/ionic/p-CK4YXTyz.js +4 -0
- package/dist/ionic/{p-DV3sJJW8.js → p-COG0_eom.js} +1 -1
- package/dist/ionic/p-CeO9Shc9.js +4 -0
- package/dist/ionic/p-CkzsSTjr.js +4 -0
- package/dist/ionic/p-D1t981Ih.js +4 -0
- package/dist/ionic/{p-Dc45iWE4.js → p-DBaOCAfc.js} +1 -1
- package/dist/ionic/p-DPNSAVjP.js +4 -0
- package/dist/ionic/p-D_8SMvQ3.js +4 -0
- package/dist/ionic/p-DdaOdN_z.js +4 -0
- package/dist/ionic/p-Dhi5xtNS.js +4 -0
- package/dist/ionic/p-Dq8ap6AD.js +4 -0
- package/dist/ionic/p-Dv5UHqHj.js +4 -0
- package/dist/ionic/{p-CKvCXMs9.js → p-DxFexTIr.js} +1 -1
- package/dist/ionic/{p-DUt5fQmA.js → p-DxVdyQoe.js} +1 -1
- package/dist/ionic/p-DyaKZbAH.js +4 -0
- package/dist/ionic/{p-D0dMcSkw.js → p-HpOiAvpC.js} +1 -1
- package/dist/ionic/{p-D13Eaw-8.js → p-Q7JLYEUZ.js} +1 -1
- package/dist/ionic/p-W-2TssC9.js +4 -0
- package/dist/ionic/p-a1128f7f.entry.js +4 -0
- package/dist/ionic/p-a57c0cce.entry.js +4 -0
- package/dist/ionic/p-c289efa5.entry.js +4 -0
- package/dist/ionic/p-c8740f44.entry.js +4 -0
- package/dist/ionic/p-cdd40776.entry.js +4 -0
- package/dist/ionic/p-ce510c06.entry.js +4 -0
- package/dist/ionic/p-db4b3111.entry.js +4 -0
- package/dist/ionic/p-db90b95a.entry.js +4 -0
- package/dist/ionic/p-e2171c27.entry.js +4 -0
- package/dist/ionic/p-ecc8aebb.entry.js +4 -0
- package/dist/ionic/p-f3de58bd.entry.js +4 -0
- package/dist/ionic/p-f8abe85c.entry.js +4 -0
- package/dist/ionic/p-fIOYmaqA.js +4 -0
- package/dist/ionic/p-fa7fe783.entry.js +4 -0
- package/dist/ionic/p-ff69e0c6.entry.js +4 -0
- package/dist/ionic/p-vXpMhGrs.js +4 -0
- package/dist/ionic/p-vpXGWZiy.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/header/header.utils.d.ts +3 -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-modal/select-modal.d.ts +1 -0
- 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 +2851 -942
- package/hydrate/index.mjs +2851 -942
- package/package.json +8 -4
- package/components/hardware-back-button.js +0 -115
- package/components/index9.js +0 -7
- package/dist/cjs/hardware-back-button-VCK4V3mG.js +0 -121
- package/dist/cjs/index-DkNv4J_i.js +0 -10
- package/dist/cjs/ionic-global-HMVqOFGO.js +0 -151
- package/dist/esm/hardware-back-button-CPLxO-Ev.js +0 -115
- package/dist/esm/index-ZjP4CjeZ.js +0 -7
- package/dist/esm/ionic-global-CDrldh-5.js +0 -146
- package/dist/ionic/p-020af078.entry.js +0 -4
- package/dist/ionic/p-074839fc.entry.js +0 -4
- package/dist/ionic/p-0b80d700.entry.js +0 -4
- package/dist/ionic/p-0dfa5a37.entry.js +0 -4
- package/dist/ionic/p-11518b31.entry.js +0 -4
- package/dist/ionic/p-15193d01.entry.js +0 -4
- package/dist/ionic/p-1647c46c.entry.js +0 -4
- package/dist/ionic/p-2a939845.entry.js +0 -4
- package/dist/ionic/p-316c0420.entry.js +0 -4
- package/dist/ionic/p-31f7095f.entry.js +0 -4
- package/dist/ionic/p-370e4237.entry.js +0 -4
- package/dist/ionic/p-3a6caca9.entry.js +0 -4
- package/dist/ionic/p-40c261a3.entry.js +0 -4
- package/dist/ionic/p-43ed1ef5.entry.js +0 -4
- package/dist/ionic/p-46d74291.entry.js +0 -4
- package/dist/ionic/p-49d06882.entry.js +0 -4
- package/dist/ionic/p-4c85d268.entry.js +0 -4
- package/dist/ionic/p-4e41ea20.entry.js +0 -4
- package/dist/ionic/p-4efea47a.entry.js +0 -4
- package/dist/ionic/p-510d86e1.entry.js +0 -4
- package/dist/ionic/p-51a60e0f.entry.js +0 -4
- package/dist/ionic/p-582824c5.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-675b1a31.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-72c38b88.entry.js +0 -4
- package/dist/ionic/p-7380261c.entry.js +0 -4
- package/dist/ionic/p-79bd78f9.entry.js +0 -4
- package/dist/ionic/p-7da39a4d.entry.js +0 -4
- package/dist/ionic/p-83be404e.entry.js +0 -4
- package/dist/ionic/p-86f53961.entry.js +0 -4
- package/dist/ionic/p-94de5cfa.entry.js +0 -4
- package/dist/ionic/p-9575b654.entry.js +0 -4
- package/dist/ionic/p-98fc09eb.entry.js +0 -4
- package/dist/ionic/p-9eeaBrnk.js +0 -4
- package/dist/ionic/p-B0q1YL7N.js +0 -4
- package/dist/ionic/p-BFvmZNyx.js +0 -4
- package/dist/ionic/p-BKc55Xev.js +0 -4
- package/dist/ionic/p-BOVrCkpJ.js +0 -4
- package/dist/ionic/p-BYEqWnSg.js +0 -4
- package/dist/ionic/p-BmVRXR1y.js +0 -4
- package/dist/ionic/p-Bmgaetn_.js +0 -4
- package/dist/ionic/p-C7hRNDhM.js +0 -4
- package/dist/ionic/p-CIGNaXM1.js +0 -4
- package/dist/ionic/p-CTfR9YZG.js +0 -4
- package/dist/ionic/p-CtWGkNnJ.js +0 -4
- package/dist/ionic/p-D-eFFUkA.js +0 -4
- package/dist/ionic/p-D87hU-Ly.js +0 -4
- package/dist/ionic/p-DCv9sLH2.js +0 -4
- package/dist/ionic/p-DDb5r57F.js +0 -4
- package/dist/ionic/p-DNcfiJwE.js +0 -4
- package/dist/ionic/p-DZRJwG4S.js +0 -4
- package/dist/ionic/p-QHYY4sjU.js +0 -4
- package/dist/ionic/p-ZjP4CjeZ.js +0 -4
- package/dist/ionic/p-a127bee2.entry.js +0 -4
- package/dist/ionic/p-a80f1b04.entry.js +0 -4
- package/dist/ionic/p-ac4eb91d.entry.js +0 -4
- package/dist/ionic/p-b0a7585c.entry.js +0 -4
- package/dist/ionic/p-b57c6d3e.entry.js +0 -4
- package/dist/ionic/p-c19f63d0.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-d126e8d3.entry.js +0 -4
- package/dist/ionic/p-d1f54e28.entry.js +0 -4
- package/dist/ionic/p-d3014190.entry.js +0 -4
- package/dist/ionic/p-da7d04cc.entry.js +0 -4
- package/dist/ionic/p-dbbe606a.entry.js +0 -4
- package/dist/ionic/p-e16b69e1.entry.js +0 -4
- package/dist/ionic/p-f8f22cc0.entry.js +0 -4
- /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -0
|
@@ -2,7 +2,11 @@
|
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
4
|
import { Host, h } from "@stencil/core";
|
|
5
|
-
import {
|
|
5
|
+
import { getIonTheme } from "../../global/ionic-global";
|
|
6
|
+
/**
|
|
7
|
+
* @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
|
|
8
|
+
* @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
|
|
9
|
+
*/
|
|
6
10
|
export class FabList {
|
|
7
11
|
constructor() {
|
|
8
12
|
/**
|
|
@@ -23,12 +27,12 @@ export class FabList {
|
|
|
23
27
|
});
|
|
24
28
|
}
|
|
25
29
|
render() {
|
|
26
|
-
const
|
|
27
|
-
return (h(Host, { key: '
|
|
28
|
-
[
|
|
30
|
+
const theme = getIonTheme(this);
|
|
31
|
+
return (h(Host, { key: 'b0e984c110ea8bf4aa0daeca5f66253c9e0666fd', class: {
|
|
32
|
+
[theme]: true,
|
|
29
33
|
'fab-list-active': this.activated,
|
|
30
34
|
[`fab-list-side-${this.side}`]: true,
|
|
31
|
-
} }, h("slot", { key: '
|
|
35
|
+
} }, h("slot", { key: '7bedbb010e89d1304d86c4261f5378e90741611e' })));
|
|
32
36
|
}
|
|
33
37
|
static get is() { return "ion-fab-list"; }
|
|
34
38
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Convert a pixels given value into rem
|
|
3
|
+
*
|
|
4
|
+
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
5
|
+
* @param context (optional) - Baseline value
|
|
6
|
+
*/
|
|
1
7
|
/**
|
|
2
8
|
* Convert a font size to a dynamic font size.
|
|
3
9
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -65,6 +71,12 @@ ion-footer.footer-toolbar-padding ion-toolbar:last-of-type {
|
|
|
65
71
|
padding-bottom: var(--ion-safe-area-bottom, 0);
|
|
66
72
|
}
|
|
67
73
|
|
|
74
|
+
/**
|
|
75
|
+
* Convert a pixels given value into rem
|
|
76
|
+
*
|
|
77
|
+
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
78
|
+
* @param context (optional) - Baseline value
|
|
79
|
+
*/
|
|
68
80
|
/**
|
|
69
81
|
* Convert a font size to a dynamic font size.
|
|
70
82
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -126,15 +138,15 @@ ion-footer.footer-toolbar-padding ion-toolbar:last-of-type {
|
|
|
126
138
|
|
|
127
139
|
@supports (backdrop-filter: blur(0)) {
|
|
128
140
|
.footer-background {
|
|
129
|
-
left: 0;
|
|
130
141
|
right: 0;
|
|
142
|
+
left: 0;
|
|
131
143
|
top: 0;
|
|
132
144
|
bottom: 0;
|
|
133
145
|
position: absolute;
|
|
134
146
|
backdrop-filter: saturate(180%) blur(20px);
|
|
135
147
|
}
|
|
136
148
|
.footer-translucent-ios ion-toolbar {
|
|
137
|
-
--opacity: .8;
|
|
149
|
+
--opacity: 0.8;
|
|
138
150
|
}
|
|
139
151
|
}
|
|
140
152
|
.footer-ios.ion-no-border ion-toolbar:first-of-type {
|
|
@@ -4,10 +4,12 @@
|
|
|
4
4
|
import { Host, h } from "@stencil/core";
|
|
5
5
|
import { findIonContent, getScrollElement, printIonContentErrorMsg } from "../../utils/content/index";
|
|
6
6
|
import { createKeyboardController } from "../../utils/keyboard/keyboard-controller";
|
|
7
|
-
import {
|
|
7
|
+
import { config } from "../../global/config";
|
|
8
|
+
import { getIonTheme } from "../../global/ionic-global";
|
|
8
9
|
import { handleFooterFade } from "./footer.utils";
|
|
9
10
|
/**
|
|
10
|
-
* @virtualProp {"ios" | "md"} mode - The mode determines
|
|
11
|
+
* @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
|
|
12
|
+
* @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
|
|
11
13
|
*/
|
|
12
14
|
export class Footer {
|
|
13
15
|
constructor() {
|
|
@@ -15,7 +17,7 @@ export class Footer {
|
|
|
15
17
|
this.keyboardVisible = false;
|
|
16
18
|
/**
|
|
17
19
|
* If `true`, the footer will be translucent.
|
|
18
|
-
* Only applies when the
|
|
20
|
+
* Only applies when the theme is `"ios"` and the device supports
|
|
19
21
|
* [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
|
|
20
22
|
*
|
|
21
23
|
* Note: In order to scroll content behind the footer, the `fullscreen`
|
|
@@ -23,15 +25,16 @@ export class Footer {
|
|
|
23
25
|
*/
|
|
24
26
|
this.translucent = false;
|
|
25
27
|
this.checkCollapsibleFooter = () => {
|
|
26
|
-
const
|
|
27
|
-
if (
|
|
28
|
+
const theme = getIonTheme(this);
|
|
29
|
+
if (theme !== 'ios') {
|
|
28
30
|
return;
|
|
29
31
|
}
|
|
30
32
|
const { collapse } = this;
|
|
31
33
|
const hasFade = collapse === 'fade';
|
|
32
34
|
this.destroyCollapsibleFooter();
|
|
33
35
|
if (hasFade) {
|
|
34
|
-
const
|
|
36
|
+
const appRootSelector = config.get('appRootSelector', 'ion-app');
|
|
37
|
+
const pageEl = this.el.closest(`${appRootSelector},ion-page,.ion-page,page-inner`);
|
|
35
38
|
const contentEl = pageEl ? findIonContent(pageEl) : null;
|
|
36
39
|
if (!contentEl) {
|
|
37
40
|
printIonContentErrorMsg(this.el);
|
|
@@ -84,30 +87,32 @@ export class Footer {
|
|
|
84
87
|
}
|
|
85
88
|
render() {
|
|
86
89
|
const { translucent, collapse } = this;
|
|
87
|
-
const
|
|
90
|
+
const theme = getIonTheme(this);
|
|
88
91
|
const tabs = this.el.closest('ion-tabs');
|
|
89
92
|
const tabBar = tabs === null || tabs === void 0 ? void 0 : tabs.querySelector(':scope > ion-tab-bar');
|
|
90
|
-
return (h(Host, { key: '
|
|
91
|
-
[
|
|
93
|
+
return (h(Host, { key: 'e70e2616f69a6205a1c2045bf13a792c9a6bc27c', role: "contentinfo", class: {
|
|
94
|
+
[theme]: true,
|
|
92
95
|
// Used internally for styling
|
|
93
|
-
[`footer-${
|
|
96
|
+
[`footer-${theme}`]: true,
|
|
94
97
|
[`footer-translucent`]: translucent,
|
|
95
|
-
[`footer-translucent-${
|
|
98
|
+
[`footer-translucent-${theme}`]: translucent,
|
|
96
99
|
['footer-toolbar-padding']: !this.keyboardVisible && (!tabBar || tabBar.slot !== 'bottom'),
|
|
97
100
|
[`footer-collapse-${collapse}`]: collapse !== undefined,
|
|
98
|
-
} },
|
|
101
|
+
} }, theme === 'ios' && translucent && h("div", { key: '72803059c1d82a766a0ce69e5a8a6a3b7e576700', class: "footer-background" }), h("slot", { key: 'de450e4eb8f5c63b11f548061f29d957ef308539' })));
|
|
99
102
|
}
|
|
100
103
|
static get is() { return "ion-footer"; }
|
|
101
104
|
static get originalStyleUrls() {
|
|
102
105
|
return {
|
|
103
106
|
"ios": ["footer.ios.scss"],
|
|
104
|
-
"md": ["footer.md.scss"]
|
|
107
|
+
"md": ["footer.md.scss"],
|
|
108
|
+
"ionic": ["footer.md.scss"]
|
|
105
109
|
};
|
|
106
110
|
}
|
|
107
111
|
static get styleUrls() {
|
|
108
112
|
return {
|
|
109
113
|
"ios": ["footer.ios.css"],
|
|
110
|
-
"md": ["footer.md.css"]
|
|
114
|
+
"md": ["footer.md.css"],
|
|
115
|
+
"ionic": ["footer.md.css"]
|
|
111
116
|
};
|
|
112
117
|
}
|
|
113
118
|
static get properties() {
|
|
@@ -124,7 +129,7 @@ export class Footer {
|
|
|
124
129
|
"optional": true,
|
|
125
130
|
"docs": {
|
|
126
131
|
"tags": [],
|
|
127
|
-
"text": "Describes the scroll effect that will be applied to the footer.\nOnly applies
|
|
132
|
+
"text": "Describes the scroll effect that will be applied to the footer.\nOnly applies when the theme is `\"ios\"`."
|
|
128
133
|
},
|
|
129
134
|
"getter": false,
|
|
130
135
|
"setter": false,
|
|
@@ -143,7 +148,7 @@ export class Footer {
|
|
|
143
148
|
"optional": false,
|
|
144
149
|
"docs": {
|
|
145
150
|
"tags": [],
|
|
146
|
-
"text": "If `true`, the footer will be translucent.\nOnly applies when the
|
|
151
|
+
"text": "If `true`, the footer will be translucent.\nOnly applies when the theme is `\"ios\"` and the device supports\n[`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).\n\nNote: In order to scroll content behind the footer, the `fullscreen`\nattribute needs to be set on the content."
|
|
147
152
|
},
|
|
148
153
|
"getter": false,
|
|
149
154
|
"setter": false,
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Convert a pixels given value into rem
|
|
3
|
+
*
|
|
4
|
+
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
5
|
+
* @param context (optional) - Baseline value
|
|
6
|
+
*/
|
|
1
7
|
/**
|
|
2
8
|
* Convert a font size to a dynamic font size.
|
|
3
9
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -65,6 +71,12 @@ ion-footer.footer-toolbar-padding ion-toolbar:last-of-type {
|
|
|
65
71
|
padding-bottom: var(--ion-safe-area-bottom, 0);
|
|
66
72
|
}
|
|
67
73
|
|
|
74
|
+
/**
|
|
75
|
+
* Convert a pixels given value into rem
|
|
76
|
+
*
|
|
77
|
+
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
78
|
+
* @param context (optional) - Baseline value
|
|
79
|
+
*/
|
|
68
80
|
/**
|
|
69
81
|
* Convert a font size to a dynamic font size.
|
|
70
82
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Convert a pixels given value into rem
|
|
3
|
+
*
|
|
4
|
+
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
5
|
+
* @param context (optional) - Baseline value
|
|
6
|
+
*/
|
|
1
7
|
/**
|
|
2
8
|
* Convert a font size to a dynamic font size.
|
|
3
9
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -53,6 +59,12 @@
|
|
|
53
59
|
* }
|
|
54
60
|
* }
|
|
55
61
|
*/
|
|
62
|
+
/**
|
|
63
|
+
* Convert a pixels given value into rem
|
|
64
|
+
*
|
|
65
|
+
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
66
|
+
* @param context (optional) - Baseline value
|
|
67
|
+
*/
|
|
56
68
|
/**
|
|
57
69
|
* Convert a font size to a dynamic font size.
|
|
58
70
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -2,7 +2,11 @@
|
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
4
|
import { Host, h } from "@stencil/core";
|
|
5
|
-
import {
|
|
5
|
+
import { getIonTheme } from "../../global/ionic-global";
|
|
6
|
+
/**
|
|
7
|
+
* @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
|
|
8
|
+
* @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
|
|
9
|
+
*/
|
|
6
10
|
export class Grid {
|
|
7
11
|
constructor() {
|
|
8
12
|
/**
|
|
@@ -11,11 +15,11 @@ export class Grid {
|
|
|
11
15
|
this.fixed = false;
|
|
12
16
|
}
|
|
13
17
|
render() {
|
|
14
|
-
const
|
|
15
|
-
return (h(Host, { key: '
|
|
16
|
-
[
|
|
18
|
+
const theme = getIonTheme(this);
|
|
19
|
+
return (h(Host, { key: 'f439594e1c4186e30d5b57bf3ca95c220df954fa', class: {
|
|
20
|
+
[theme]: true,
|
|
17
21
|
'grid-fixed': this.fixed,
|
|
18
|
-
} }, h("slot", { key: '
|
|
22
|
+
} }, h("slot", { key: 'e8e01f0b46a05fb3220837fbfa9f161b086c06ad' })));
|
|
19
23
|
}
|
|
20
24
|
static get is() { return "ion-grid"; }
|
|
21
25
|
static get encapsulation() { return "shadow"; }
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
ion-header {
|
|
2
|
+
display: block;
|
|
3
|
+
position: relative;
|
|
4
|
+
order: -1;
|
|
5
|
+
width: 100%;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
ion-header ion-toolbar:first-of-type {
|
|
9
|
+
padding-top: var(--ion-safe-area-top, 0);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* A heuristic that applies CSS to tablet
|
|
14
|
+
* viewports.
|
|
15
|
+
*
|
|
16
|
+
* Usage:
|
|
17
|
+
* @include tablet-viewport() {
|
|
18
|
+
* :host {
|
|
19
|
+
* background-color: green;
|
|
20
|
+
* }
|
|
21
|
+
* }
|
|
22
|
+
*/
|
|
23
|
+
/**
|
|
24
|
+
* A heuristic that applies CSS to mobile
|
|
25
|
+
* viewports (i.e. phones, not tablets).
|
|
26
|
+
*
|
|
27
|
+
* Usage:
|
|
28
|
+
* @include mobile-viewport() {
|
|
29
|
+
* :host {
|
|
30
|
+
* background-color: blue;
|
|
31
|
+
* }
|
|
32
|
+
* }
|
|
33
|
+
*/
|
|
34
|
+
/**
|
|
35
|
+
* Convert a pixels given value into rem
|
|
36
|
+
*
|
|
37
|
+
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
38
|
+
* @param context (optional) - Baseline value
|
|
39
|
+
*/
|
|
40
|
+
/**
|
|
41
|
+
* Convert a font size to a dynamic font size.
|
|
42
|
+
* Fonts that participate in Dynamic Type should use
|
|
43
|
+
* dynamic font sizes.
|
|
44
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
45
|
+
* @param unit (optional) - The unit to convert to. Use this if you want to
|
|
46
|
+
* convert to a unit other than $baselineUnit.
|
|
47
|
+
*/
|
|
48
|
+
/**
|
|
49
|
+
* Convert a font size to a dynamic font size but impose
|
|
50
|
+
* a maximum font size.
|
|
51
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
52
|
+
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
53
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
54
|
+
* convert to a unit other than $baselineUnit.
|
|
55
|
+
*/
|
|
56
|
+
/**
|
|
57
|
+
* Convert a font size to a dynamic font size but impose
|
|
58
|
+
* a minimum font size.
|
|
59
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
60
|
+
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
61
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
62
|
+
* convert to a unit other than $baselineUnit.
|
|
63
|
+
*/
|
|
64
|
+
/**
|
|
65
|
+
* Convert a font size to a dynamic font size but impose
|
|
66
|
+
* maximum and minimum font sizes.
|
|
67
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
68
|
+
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
69
|
+
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
70
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
71
|
+
* convert to a unit other than $baselineUnit.
|
|
72
|
+
*/
|
|
73
|
+
ion-header {
|
|
74
|
+
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));
|
|
75
|
+
z-index: 10;
|
|
76
|
+
}
|
|
77
|
+
ion-header.header-divider {
|
|
78
|
+
border-bottom: var(--token-border-size-025, var(--token-scale-025, 1px)) var(--token-border-style-solid, solid) var(--token-primitives-neutral-300, #e0e0e0);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
ion-toolbar + ion-toolbar {
|
|
82
|
+
--padding-start: var(--token-space-400, var(--token-scale-400, 16px));
|
|
83
|
+
--padding-end: var(--token-space-400, var(--token-scale-400, 16px));
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
@supports (backdrop-filter: blur(0)) {
|
|
87
|
+
.header-background {
|
|
88
|
+
right: 0;
|
|
89
|
+
left: 0;
|
|
90
|
+
top: 0;
|
|
91
|
+
bottom: 0;
|
|
92
|
+
position: absolute;
|
|
93
|
+
backdrop-filter: saturate(180%) blur(var(--token-scale-100, 4px));
|
|
94
|
+
}
|
|
95
|
+
.header-translucent-ionic ion-toolbar {
|
|
96
|
+
--opacity: 0.7;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
@@ -1,3 +1,20 @@
|
|
|
1
|
+
ion-header {
|
|
2
|
+
display: block;
|
|
3
|
+
position: relative;
|
|
4
|
+
order: -1;
|
|
5
|
+
width: 100%;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
ion-header ion-toolbar:first-of-type {
|
|
9
|
+
padding-top: var(--ion-safe-area-top, 0);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Convert a pixels given value into rem
|
|
14
|
+
*
|
|
15
|
+
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
16
|
+
* @param context (optional) - Baseline value
|
|
17
|
+
*/
|
|
1
18
|
/**
|
|
2
19
|
* Convert a font size to a dynamic font size.
|
|
3
20
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -54,17 +71,15 @@
|
|
|
54
71
|
* }
|
|
55
72
|
*/
|
|
56
73
|
ion-header {
|
|
57
|
-
display: block;
|
|
58
|
-
position: relative;
|
|
59
|
-
order: -1;
|
|
60
|
-
width: 100%;
|
|
61
74
|
z-index: 10;
|
|
62
75
|
}
|
|
63
76
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
77
|
+
/**
|
|
78
|
+
* Convert a pixels given value into rem
|
|
79
|
+
*
|
|
80
|
+
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
81
|
+
* @param context (optional) - Baseline value
|
|
82
|
+
*/
|
|
68
83
|
/**
|
|
69
84
|
* Convert a font size to a dynamic font size.
|
|
70
85
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -126,15 +141,15 @@ ion-header ion-toolbar:first-of-type {
|
|
|
126
141
|
|
|
127
142
|
@supports (backdrop-filter: blur(0)) {
|
|
128
143
|
.header-background {
|
|
129
|
-
left: 0;
|
|
130
144
|
right: 0;
|
|
145
|
+
left: 0;
|
|
131
146
|
top: 0;
|
|
132
147
|
bottom: 0;
|
|
133
148
|
position: absolute;
|
|
134
149
|
backdrop-filter: saturate(180%) blur(20px);
|
|
135
150
|
}
|
|
136
151
|
.header-translucent-ios ion-toolbar {
|
|
137
|
-
--opacity: .8;
|
|
152
|
+
--opacity: 0.8;
|
|
138
153
|
}
|
|
139
154
|
/**
|
|
140
155
|
* Disable the saturation otherwise it distorts the content
|
|
@@ -5,17 +5,24 @@ import { Host, h, writeTask } from "@stencil/core";
|
|
|
5
5
|
import { findIonContent, getScrollElement, printIonContentErrorMsg } from "../../utils/content/index";
|
|
6
6
|
import { inheritAriaAttributes } from "../../utils/helpers";
|
|
7
7
|
import { hostContext } from "../../utils/theme";
|
|
8
|
-
import {
|
|
8
|
+
import { config } from "../../global/config";
|
|
9
|
+
import { getIonTheme } from "../../global/ionic-global";
|
|
9
10
|
import { cloneElement, createHeaderIndex, handleContentScroll, handleHeaderFade, handleToolbarIntersection, setHeaderActive, setToolbarBackgroundOpacity, getRoleType, } from "./header.utils";
|
|
10
11
|
/**
|
|
11
|
-
* @virtualProp {"ios" | "md"} mode - The mode determines
|
|
12
|
+
* @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
|
|
13
|
+
* @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
|
|
12
14
|
*/
|
|
13
15
|
export class Header {
|
|
14
16
|
constructor() {
|
|
15
17
|
this.inheritedAttributes = {};
|
|
18
|
+
/**
|
|
19
|
+
* If `true`, the header will have a line at the bottom.
|
|
20
|
+
* TODO(ROU-10855): add support for this prop on ios/md themes
|
|
21
|
+
*/
|
|
22
|
+
this.divider = false;
|
|
16
23
|
/**
|
|
17
24
|
* If `true`, the header will be translucent.
|
|
18
|
-
* Only applies when the
|
|
25
|
+
* Only applies when the theme is `"ios"` or `"ionic"` and the device supports
|
|
19
26
|
* [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
|
|
20
27
|
*
|
|
21
28
|
* Note: In order to scroll content behind the header, the `fullscreen`
|
|
@@ -47,16 +54,17 @@ export class Header {
|
|
|
47
54
|
this.destroyCollapsibleHeader();
|
|
48
55
|
}
|
|
49
56
|
async checkCollapsibleHeader() {
|
|
50
|
-
const
|
|
51
|
-
if (
|
|
57
|
+
const theme = getIonTheme(this);
|
|
58
|
+
if (theme !== 'ios') {
|
|
52
59
|
return;
|
|
53
60
|
}
|
|
54
61
|
const { collapse } = this;
|
|
55
62
|
const hasCondense = collapse === 'condense';
|
|
56
63
|
const hasFade = collapse === 'fade';
|
|
57
64
|
this.destroyCollapsibleHeader();
|
|
65
|
+
const appRootSelector = config.get('appRootSelector', 'ion-app');
|
|
58
66
|
if (hasCondense) {
|
|
59
|
-
const pageEl = this.el.closest(
|
|
67
|
+
const pageEl = this.el.closest(`${appRootSelector},ion-page,.ion-page,page-inner`);
|
|
60
68
|
const contentEl = pageEl ? findIonContent(pageEl) : null;
|
|
61
69
|
// Cloned elements are always needed in iOS transition
|
|
62
70
|
writeTask(() => {
|
|
@@ -67,7 +75,7 @@ export class Header {
|
|
|
67
75
|
await this.setupCondenseHeader(contentEl, pageEl);
|
|
68
76
|
}
|
|
69
77
|
else if (hasFade) {
|
|
70
|
-
const pageEl = this.el.closest(
|
|
78
|
+
const pageEl = this.el.closest(`${appRootSelector},ion-page,.ion-page,page-inner`);
|
|
71
79
|
const contentEl = pageEl ? findIonContent(pageEl) : null;
|
|
72
80
|
if (!contentEl) {
|
|
73
81
|
printIonContentErrorMsg(this.el);
|
|
@@ -142,32 +150,35 @@ export class Header {
|
|
|
142
150
|
});
|
|
143
151
|
}
|
|
144
152
|
render() {
|
|
145
|
-
const { translucent, inheritedAttributes } = this;
|
|
146
|
-
const
|
|
153
|
+
const { translucent, inheritedAttributes, divider } = this;
|
|
154
|
+
const theme = getIonTheme(this);
|
|
147
155
|
const collapse = this.collapse || 'none';
|
|
148
156
|
const isCondensed = collapse === 'condense';
|
|
149
157
|
// banner role must be at top level, so remove role if inside a menu
|
|
150
|
-
const roleType = getRoleType(hostContext('ion-menu', this.el), isCondensed,
|
|
151
|
-
return (h(Host, Object.assign({ key: '
|
|
152
|
-
[
|
|
158
|
+
const roleType = getRoleType(hostContext('ion-menu', this.el), isCondensed, theme);
|
|
159
|
+
return (h(Host, Object.assign({ key: 'dd5bc73851ffb7850bed6666ba0b87cc7502b6ad', role: roleType, class: {
|
|
160
|
+
[theme]: true,
|
|
153
161
|
// Used internally for styling
|
|
154
|
-
[`header-${
|
|
162
|
+
[`header-${theme}`]: true,
|
|
155
163
|
[`header-translucent`]: this.translucent,
|
|
156
164
|
[`header-collapse-${collapse}`]: true,
|
|
157
|
-
[`header-translucent-${
|
|
158
|
-
|
|
165
|
+
[`header-translucent-${theme}`]: this.translucent,
|
|
166
|
+
['header-divider']: divider,
|
|
167
|
+
} }, inheritedAttributes), theme !== 'md' && translucent && h("div", { key: 'b33dd723c05955bf214e0fd529d62cb977cd10ff', class: "header-background" }), h("slot", { key: '059997b1faef689561af377da348c04316288ff4' })));
|
|
159
168
|
}
|
|
160
169
|
static get is() { return "ion-header"; }
|
|
161
170
|
static get originalStyleUrls() {
|
|
162
171
|
return {
|
|
163
172
|
"ios": ["header.ios.scss"],
|
|
164
|
-
"md": ["header.md.scss"]
|
|
173
|
+
"md": ["header.md.scss"],
|
|
174
|
+
"ionic": ["header.ionic.scss"]
|
|
165
175
|
};
|
|
166
176
|
}
|
|
167
177
|
static get styleUrls() {
|
|
168
178
|
return {
|
|
169
179
|
"ios": ["header.ios.css"],
|
|
170
|
-
"md": ["header.md.css"]
|
|
180
|
+
"md": ["header.md.css"],
|
|
181
|
+
"ionic": ["header.ionic.css"]
|
|
171
182
|
};
|
|
172
183
|
}
|
|
173
184
|
static get properties() {
|
|
@@ -184,13 +195,33 @@ export class Header {
|
|
|
184
195
|
"optional": true,
|
|
185
196
|
"docs": {
|
|
186
197
|
"tags": [],
|
|
187
|
-
"text": "Describes the scroll effect that will be applied to the header.\nOnly applies
|
|
198
|
+
"text": "Describes the scroll effect that will be applied to the header.\nOnly applies when the theme is `\"ios\"`.\n\nTypically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)"
|
|
188
199
|
},
|
|
189
200
|
"getter": false,
|
|
190
201
|
"setter": false,
|
|
191
202
|
"reflect": false,
|
|
192
203
|
"attribute": "collapse"
|
|
193
204
|
},
|
|
205
|
+
"divider": {
|
|
206
|
+
"type": "boolean",
|
|
207
|
+
"mutable": false,
|
|
208
|
+
"complexType": {
|
|
209
|
+
"original": "boolean",
|
|
210
|
+
"resolved": "boolean",
|
|
211
|
+
"references": {}
|
|
212
|
+
},
|
|
213
|
+
"required": false,
|
|
214
|
+
"optional": false,
|
|
215
|
+
"docs": {
|
|
216
|
+
"tags": [],
|
|
217
|
+
"text": "If `true`, the header will have a line at the bottom.\nTODO(ROU-10855): add support for this prop on ios/md themes"
|
|
218
|
+
},
|
|
219
|
+
"getter": false,
|
|
220
|
+
"setter": false,
|
|
221
|
+
"reflect": false,
|
|
222
|
+
"attribute": "divider",
|
|
223
|
+
"defaultValue": "false"
|
|
224
|
+
},
|
|
194
225
|
"translucent": {
|
|
195
226
|
"type": "boolean",
|
|
196
227
|
"mutable": false,
|
|
@@ -203,7 +234,7 @@ export class Header {
|
|
|
203
234
|
"optional": false,
|
|
204
235
|
"docs": {
|
|
205
236
|
"tags": [],
|
|
206
|
-
"text": "If `true`, the header will be translucent.\nOnly applies when the
|
|
237
|
+
"text": "If `true`, the header will be translucent.\nOnly applies when the theme is `\"ios\"` or `\"ionic\"` and the device supports\n[`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).\n\nNote: In order to scroll content behind the header, the `fullscreen`\nattribute needs to be set on the content."
|
|
207
238
|
},
|
|
208
239
|
"getter": false,
|
|
209
240
|
"setter": false,
|
|
@@ -1,3 +1,20 @@
|
|
|
1
|
+
ion-header {
|
|
2
|
+
display: block;
|
|
3
|
+
position: relative;
|
|
4
|
+
order: -1;
|
|
5
|
+
width: 100%;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
ion-header ion-toolbar:first-of-type {
|
|
9
|
+
padding-top: var(--ion-safe-area-top, 0);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Convert a pixels given value into rem
|
|
14
|
+
*
|
|
15
|
+
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
16
|
+
* @param context (optional) - Baseline value
|
|
17
|
+
*/
|
|
1
18
|
/**
|
|
2
19
|
* Convert a font size to a dynamic font size.
|
|
3
20
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -54,17 +71,15 @@
|
|
|
54
71
|
* }
|
|
55
72
|
*/
|
|
56
73
|
ion-header {
|
|
57
|
-
display: block;
|
|
58
|
-
position: relative;
|
|
59
|
-
order: -1;
|
|
60
|
-
width: 100%;
|
|
61
74
|
z-index: 10;
|
|
62
75
|
}
|
|
63
76
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
77
|
+
/**
|
|
78
|
+
* Convert a pixels given value into rem
|
|
79
|
+
*
|
|
80
|
+
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
81
|
+
* @param context (optional) - Baseline value
|
|
82
|
+
*/
|
|
68
83
|
/**
|
|
69
84
|
* Convert a font size to a dynamic font size.
|
|
70
85
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -215,20 +215,20 @@ export const handleHeaderFade = (scrollEl, baseEl, condenseHeader) => {
|
|
|
215
215
|
*
|
|
216
216
|
* @param isInsideMenu If ion-header is inside ion-menu.
|
|
217
217
|
* @param isCondensed If ion-header has collapse="condense".
|
|
218
|
-
* @param
|
|
218
|
+
* @param theme The current theme.
|
|
219
219
|
* @returns 'none' if inside ion-menu or if condensed in md
|
|
220
|
-
*
|
|
220
|
+
* theme, otherwise 'banner'.
|
|
221
221
|
*/
|
|
222
|
-
export const getRoleType = (isInsideMenu, isCondensed,
|
|
222
|
+
export const getRoleType = (isInsideMenu, isCondensed, theme) => {
|
|
223
223
|
// If the header is inside a menu, it should not have the banner role.
|
|
224
224
|
if (isInsideMenu) {
|
|
225
225
|
return ROLE_NONE;
|
|
226
226
|
}
|
|
227
227
|
/**
|
|
228
|
-
* Only apply role="none" to `md`
|
|
228
|
+
* Only apply role="none" to `md` & `ionic` theme condensed headers
|
|
229
229
|
* since the large header is never shown.
|
|
230
230
|
*/
|
|
231
|
-
if (isCondensed &&
|
|
231
|
+
if (isCondensed && theme !== 'ios') {
|
|
232
232
|
return ROLE_NONE;
|
|
233
233
|
}
|
|
234
234
|
// Default to banner role.
|
|
@@ -3,8 +3,11 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Host, h } from "@stencil/core";
|
|
5
5
|
import { inheritAttributes } from "../../utils/helpers";
|
|
6
|
-
import {
|
|
6
|
+
import { getIonTheme } from "../../global/ionic-global";
|
|
7
7
|
/**
|
|
8
|
+
* @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
|
|
9
|
+
* @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
|
|
10
|
+
*
|
|
8
11
|
* @part image - The inner `img` element.
|
|
9
12
|
*/
|
|
10
13
|
export class Img {
|
|
@@ -67,7 +70,10 @@ export class Img {
|
|
|
67
70
|
render() {
|
|
68
71
|
const { loadSrc, alt, onLoad, loadError, inheritedAttributes } = this;
|
|
69
72
|
const { draggable } = inheritedAttributes;
|
|
70
|
-
|
|
73
|
+
const theme = getIonTheme(this);
|
|
74
|
+
return (h(Host, { key: '70377d0128ad109580598f5c0a19cdee1d1f8f2a', class: {
|
|
75
|
+
[theme]: true,
|
|
76
|
+
} }, h("img", { key: '022467667337d04384d19d78378b5cf499e1b6c9', decoding: "async", src: loadSrc, alt: alt, onLoad: onLoad, onError: loadError, part: "image", draggable: isDraggable(draggable) })));
|
|
71
77
|
}
|
|
72
78
|
static get is() { return "ion-img"; }
|
|
73
79
|
static get encapsulation() { return "shadow"; }
|