@ionic/core 8.8.9-dev.11780493937.17fe092d → 8.8.9-dev.11780683233.1c5e9d9b
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/ion-action-sheet.js +1 -1
- package/components/ion-alert.js +1 -1
- package/components/ion-back-button.js +1 -1
- package/components/ion-button.js +1 -1
- package/components/ion-card.js +1 -1
- package/components/ion-chip.js +1 -1
- package/components/ion-content.js +1 -1
- package/components/ion-datetime-button.js +1 -1
- package/components/ion-datetime.js +1 -1
- package/components/ion-fab-button.js +1 -1
- package/components/ion-footer.js +1 -1
- package/components/ion-gallery-item.d.ts +11 -0
- package/components/ion-gallery-item.js +4 -0
- package/components/ion-gallery.js +1 -1
- package/components/ion-grid.js +1 -1
- package/components/ion-header.js +1 -1
- package/components/ion-img.js +1 -1
- package/components/ion-infinite-scroll-content.js +1 -1
- package/components/ion-infinite-scroll.js +1 -1
- package/components/ion-input-otp.js +1 -1
- package/components/ion-input-password-toggle.js +1 -1
- package/components/ion-input.js +1 -1
- package/components/ion-item-divider.js +1 -1
- package/components/ion-item-group.js +1 -1
- package/components/ion-item-option.js +1 -1
- package/components/ion-item-options.js +1 -1
- package/components/ion-item-sliding.js +1 -1
- package/components/ion-item.js +1 -1
- package/components/ion-label.js +1 -1
- package/components/ion-list-header.js +1 -1
- package/components/ion-list.js +1 -1
- package/components/ion-loading.js +1 -1
- package/components/ion-menu-button.js +1 -1
- package/components/ion-menu-toggle.js +1 -1
- package/components/ion-menu.js +1 -1
- package/components/ion-modal.js +1 -1
- package/components/ion-nav-link.js +1 -1
- package/components/ion-nav.js +1 -1
- package/components/ion-note.js +1 -1
- package/components/ion-picker-column-option.js +1 -1
- package/components/ion-picker-legacy-column.js +1 -1
- package/components/ion-picker-legacy.js +1 -1
- package/components/ion-popover.js +1 -1
- package/components/ion-progress-bar.js +1 -1
- package/components/ion-radio-group.js +1 -1
- package/components/ion-radio.js +1 -1
- package/components/ion-range.js +1 -1
- package/components/ion-refresher-content.js +1 -1
- package/components/ion-refresher.js +1 -1
- package/components/ion-reorder-group.js +1 -1
- package/components/ion-reorder.js +1 -1
- package/components/ion-ripple-effect.js +1 -1
- package/components/ion-router-link.js +1 -1
- package/components/ion-router-outlet.js +1 -1
- package/components/ion-row.js +1 -1
- package/components/ion-searchbar.js +1 -1
- package/components/ion-segment-button.js +1 -1
- package/components/ion-segment-content.js +1 -1
- package/components/ion-segment-view.js +1 -1
- package/components/ion-segment.js +1 -1
- package/components/ion-select-modal.js +1 -1
- package/components/ion-select-option.js +1 -1
- package/components/ion-select-popover.js +1 -1
- package/components/ion-select.js +1 -1
- package/components/ion-skeleton-text.js +1 -1
- package/components/ion-spinner.js +1 -1
- package/components/ion-split-pane.js +1 -1
- package/components/ion-tab-bar.js +1 -1
- package/components/ion-tab-button.js +1 -1
- package/components/ion-tab.js +1 -1
- package/components/ion-tabs.js +1 -1
- package/components/ion-text.js +1 -1
- package/components/ion-textarea.js +1 -1
- package/components/ion-thumbnail.js +1 -1
- package/components/ion-title.js +1 -1
- package/components/ion-toast.js +1 -1
- package/components/ion-toggle.js +1 -1
- package/components/ion-toolbar.js +1 -1
- package/components/p-7kL3tltU.js +4 -0
- package/components/{p-CPm7KgOP.js → p-BFZBl0TS.js} +1 -1
- package/components/{p-pvh0bjpw.js → p-BVi3gqm6.js} +1 -1
- package/components/{p-D6g8ud1e.js → p-BVk7LVs0.js} +1 -1
- package/components/{p-B9MABkWm.js → p-BdUtZxku.js} +1 -1
- package/components/{p-CzC_ZSgb.js → p-Be8tHurp.js} +1 -1
- package/components/{p-C8kBejTT.js → p-CG3ZV6ON.js} +1 -1
- package/components/{p-CBS0sBAa.js → p-CaqTORfV.js} +1 -1
- package/components/{p-D2mReIu8.js → p-CkA0SI9d.js} +1 -1
- package/components/{p-DAXhdEp5.js → p-CsakePQg.js} +1 -1
- package/components/{p-CgSn4J7d.js → p-D1gEOh9B.js} +1 -1
- package/components/{p-IYdTEyGb.js → p-D3qBmaqi.js} +1 -1
- package/components/{p-Do7NMUwR.js → p-DGn-jQpr.js} +1 -1
- package/components/p-DH4JHV73.js +4 -0
- package/components/{p-DCS3n7Uq.js → p-DYK0qX7x.js} +1 -1
- package/components/{p-Dp2x0MpA.js → p-DfV7pOtM.js} +1 -1
- package/components/{p-BhkGOA7t.js → p-F3N54OKJ.js} +1 -1
- package/components/{p-CgZLVOCc.js → p-MPREydZp.js} +1 -1
- package/components/{p-kKYBfhbe.js → p-OFfrVDLw.js} +1 -1
- package/components/p-iZO3WzZT.js +4 -0
- package/components/p-qclL-gNR.js +4 -0
- package/dist/cjs/ion-app_8.cjs.entry.js +33 -291
- package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-col_3.cjs.entry.js +4 -4
- package/dist/cjs/ion-datetime_3.cjs.entry.js +4 -4
- package/dist/cjs/ion-gallery-item.cjs.entry.js +79 -0
- package/dist/cjs/ion-gallery.cjs.entry.js +96 -14
- package/dist/cjs/ion-img.cjs.entry.js +2 -2
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-input-otp.cjs.entry.js +3 -3
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +3 -3
- package/dist/cjs/ion-input.cjs.entry.js +4 -4
- package/dist/cjs/ion-item-option_3.cjs.entry.js +4 -4
- package/dist/cjs/ion-item_8.cjs.entry.js +12 -12
- package/dist/cjs/ion-loading.cjs.entry.js +2 -2
- package/dist/cjs/ion-menu_3.cjs.entry.js +6 -6
- package/dist/cjs/ion-modal.cjs.entry.js +4 -4
- package/dist/cjs/ion-nav_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +2 -2
- package/dist/cjs/ion-popover.cjs.entry.js +2 -2
- package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
- package/dist/cjs/ion-radio_2.cjs.entry.js +5 -5
- package/dist/cjs/ion-range.cjs.entry.js +3 -3
- package/dist/cjs/ion-refresher_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-reorder_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +1 -1
- package/dist/cjs/ion-route_4.cjs.entry.js +2 -2
- package/dist/cjs/ion-searchbar.cjs.entry.js +4 -4
- package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
- package/dist/cjs/ion-segment-view.cjs.entry.js +2 -2
- package/dist/cjs/ion-segment_2.cjs.entry.js +4 -4
- package/dist/cjs/ion-select-modal.cjs.entry.js +1 -1
- package/dist/cjs/ion-select_3.cjs.entry.js +6 -6
- package/dist/cjs/ion-spinner.cjs.entry.js +1 -1
- package/dist/cjs/ion-split-pane.cjs.entry.js +2 -2
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +4 -4
- package/dist/cjs/ion-tab_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-text.cjs.entry.js +2 -2
- package/dist/cjs/ion-textarea.cjs.entry.js +3 -3
- package/dist/cjs/ion-toast.cjs.entry.js +2 -2
- package/dist/cjs/ion-toggle.cjs.entry.js +3 -3
- package/dist/cjs/ionic.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/content/content.css +0 -56
- package/dist/collection/components/footer/footer.ios.css +0 -13
- package/dist/collection/components/footer/footer.js +18 -65
- package/dist/collection/components/footer/footer.md.css +0 -13
- package/dist/collection/components/footer/footer.utils.js +0 -9
- package/dist/collection/components/gallery/gallery.css +1 -86
- package/dist/collection/components/gallery/gallery.js +85 -16
- package/dist/collection/components/gallery/test/utils.js +13 -13
- package/dist/collection/components/gallery-item/gallery-item.css +87 -0
- package/dist/collection/components/gallery-item/gallery-item.js +95 -0
- package/dist/collection/components/grid/grid.js +2 -2
- package/dist/collection/components/header/header.ionic.css +0 -75
- package/dist/collection/components/header/header.ios.css +0 -75
- package/dist/collection/components/header/header.js +11 -41
- package/dist/collection/components/header/header.md.css +0 -75
- package/dist/collection/components/header/header.utils.js +0 -9
- package/dist/collection/components/img/img.js +2 -2
- package/dist/collection/components/infinite-scroll/infinite-scroll.js +1 -1
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +2 -2
- package/dist/collection/components/input/input.js +4 -4
- package/dist/collection/components/input-otp/input-otp.js +3 -3
- package/dist/collection/components/input-password-toggle/input-password-toggle.js +3 -3
- package/dist/collection/components/item-divider/item-divider.js +2 -2
- package/dist/collection/components/item-group/item-group.js +1 -1
- package/dist/collection/components/item-option/item-option.js +2 -2
- package/dist/collection/components/item-options/item-options.js +1 -1
- package/dist/collection/components/item-sliding/item-sliding.js +1 -1
- package/dist/collection/components/label/label.js +2 -2
- package/dist/collection/components/list/list.js +1 -1
- package/dist/collection/components/list-header/list-header.js +2 -2
- package/dist/collection/components/loading/loading.js +2 -2
- package/dist/collection/components/menu/menu.js +2 -2
- package/dist/collection/components/menu-button/menu-button.js +2 -2
- package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
- package/dist/collection/components/modal/modal.js +4 -4
- package/dist/collection/components/nav/nav.js +1 -1
- package/dist/collection/components/nav-link/nav-link.js +1 -1
- package/dist/collection/components/note/note.js +2 -2
- package/dist/collection/components/picker-column-option/picker-column-option.js +2 -2
- package/dist/collection/components/picker-legacy/picker.js +2 -2
- package/dist/collection/components/picker-legacy-column/picker-column.js +2 -2
- package/dist/collection/components/popover/popover.js +2 -2
- package/dist/collection/components/progress-bar/progress-bar.js +1 -1
- package/dist/collection/components/radio/radio.js +3 -3
- package/dist/collection/components/radio-group/radio-group.js +2 -2
- package/dist/collection/components/range/range.js +3 -3
- package/dist/collection/components/refresher/refresher.js +1 -1
- package/dist/collection/components/refresher-content/refresher-content.js +2 -2
- package/dist/collection/components/reorder/reorder.js +2 -2
- package/dist/collection/components/reorder-group/reorder-group.js +1 -1
- package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
- package/dist/collection/components/router-link/router-link.js +2 -2
- package/dist/collection/components/router-outlet/router-outlet.js +1 -1
- package/dist/collection/components/row/row.js +2 -2
- package/dist/collection/components/searchbar/searchbar.js +4 -4
- package/dist/collection/components/segment/segment.js +2 -2
- package/dist/collection/components/segment-button/segment-button.js +2 -2
- package/dist/collection/components/segment-content/segment-content.js +1 -1
- package/dist/collection/components/segment-view/segment-view.js +2 -2
- package/dist/collection/components/select/select.js +3 -3
- package/dist/collection/components/select-modal/select-modal.js +1 -1
- package/dist/collection/components/select-option/select-option.js +1 -1
- package/dist/collection/components/select-popover/select-popover.js +2 -2
- package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
- package/dist/collection/components/spinner/spinner.js +1 -1
- package/dist/collection/components/split-pane/split-pane.js +2 -2
- package/dist/collection/components/tab/tab.js +2 -2
- package/dist/collection/components/tab-bar/tab-bar.js +2 -2
- package/dist/collection/components/tab-button/tab-button.js +2 -2
- package/dist/collection/components/tabs/tabs.js +1 -1
- package/dist/collection/components/text/text.js +2 -2
- package/dist/collection/components/textarea/textarea.js +3 -3
- package/dist/collection/components/thumbnail/thumbnail.js +2 -2
- package/dist/collection/components/title/title.js +2 -2
- package/dist/collection/components/toast/toast.js +2 -2
- package/dist/collection/components/toggle/toggle.js +3 -3
- package/dist/collection/components/toolbar/toolbar.js +2 -2
- package/dist/collection/utils/css-value-validation.js +14 -0
- package/dist/docs.json +96 -20
- package/dist/esm/ion-app_8.entry.js +33 -291
- package/dist/esm/ion-avatar_3.entry.js +2 -2
- package/dist/esm/ion-col_3.entry.js +4 -4
- package/dist/esm/ion-datetime_3.entry.js +4 -4
- package/dist/esm/ion-gallery-item.entry.js +77 -0
- package/dist/esm/ion-gallery.entry.js +96 -14
- package/dist/esm/ion-img.entry.js +2 -2
- package/dist/esm/ion-infinite-scroll_2.entry.js +3 -3
- package/dist/esm/ion-input-otp.entry.js +3 -3
- package/dist/esm/ion-input-password-toggle.entry.js +3 -3
- package/dist/esm/ion-input.entry.js +4 -4
- package/dist/esm/ion-item-option_3.entry.js +4 -4
- package/dist/esm/ion-item_8.entry.js +12 -12
- package/dist/esm/ion-loading.entry.js +2 -2
- package/dist/esm/ion-menu_3.entry.js +6 -6
- package/dist/esm/ion-modal.entry.js +4 -4
- package/dist/esm/ion-nav_2.entry.js +2 -2
- package/dist/esm/ion-picker-column-option.entry.js +2 -2
- package/dist/esm/ion-popover.entry.js +2 -2
- package/dist/esm/ion-progress-bar.entry.js +1 -1
- package/dist/esm/ion-radio_2.entry.js +5 -5
- package/dist/esm/ion-range.entry.js +3 -3
- package/dist/esm/ion-refresher_2.entry.js +3 -3
- package/dist/esm/ion-reorder_2.entry.js +3 -3
- package/dist/esm/ion-ripple-effect.entry.js +1 -1
- package/dist/esm/ion-route_4.entry.js +2 -2
- package/dist/esm/ion-searchbar.entry.js +4 -4
- package/dist/esm/ion-segment-content.entry.js +1 -1
- package/dist/esm/ion-segment-view.entry.js +2 -2
- package/dist/esm/ion-segment_2.entry.js +4 -4
- package/dist/esm/ion-select-modal.entry.js +1 -1
- package/dist/esm/ion-select_3.entry.js +6 -6
- package/dist/esm/ion-spinner.entry.js +1 -1
- package/dist/esm/ion-split-pane.entry.js +2 -2
- package/dist/esm/ion-tab-bar_2.entry.js +4 -4
- package/dist/esm/ion-tab_2.entry.js +3 -3
- package/dist/esm/ion-text.entry.js +2 -2
- package/dist/esm/ion-textarea.entry.js +3 -3
- package/dist/esm/ion-toast.entry.js +2 -2
- package/dist/esm/ion-toggle.entry.js +3 -3
- package/dist/esm/ionic.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/html.html-data.json +45 -9
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/{p-f7ca50a5.entry.js → p-0592c549.entry.js} +1 -1
- package/dist/ionic/{p-67c2d349.entry.js → p-0aa510cd.entry.js} +1 -1
- package/dist/ionic/{p-9ccfb733.entry.js → p-0cd5fd9d.entry.js} +1 -1
- package/dist/ionic/{p-bf0c5a8d.entry.js → p-0e9d4e11.entry.js} +1 -1
- package/dist/ionic/{p-497f6391.entry.js → p-11a38333.entry.js} +1 -1
- package/dist/ionic/{p-0030507d.entry.js → p-1a009a51.entry.js} +1 -1
- package/dist/ionic/{p-7186786e.entry.js → p-23e524f8.entry.js} +1 -1
- package/dist/ionic/{p-1439fecb.entry.js → p-2826761a.entry.js} +1 -1
- package/dist/ionic/{p-93315d96.entry.js → p-2c4170d8.entry.js} +1 -1
- package/dist/ionic/p-2d5a2511.entry.js +4 -0
- package/dist/ionic/{p-7f294078.entry.js → p-3706ea52.entry.js} +1 -1
- package/dist/ionic/{p-b69add0e.entry.js → p-3e376501.entry.js} +1 -1
- package/dist/ionic/{p-c684a3b6.entry.js → p-44597202.entry.js} +1 -1
- package/dist/ionic/{p-8458f1b6.entry.js → p-4a27a79a.entry.js} +1 -1
- package/dist/ionic/{p-b7235e85.entry.js → p-4f07113d.entry.js} +1 -1
- package/dist/ionic/{p-88e7f52a.entry.js → p-52b85650.entry.js} +1 -1
- package/dist/ionic/{p-199bffb3.entry.js → p-5a6e0ae1.entry.js} +1 -1
- package/dist/ionic/p-6906dca7.entry.js +4 -0
- package/dist/ionic/{p-19a1ff9a.entry.js → p-7b09c19d.entry.js} +1 -1
- package/dist/ionic/{p-76c70824.entry.js → p-7b886782.entry.js} +1 -1
- package/dist/ionic/{p-89eab395.entry.js → p-82c05be2.entry.js} +1 -1
- package/dist/ionic/{p-b653f4c2.entry.js → p-83c0eb9b.entry.js} +1 -1
- package/dist/ionic/{p-b4fd91b8.entry.js → p-85ff1314.entry.js} +1 -1
- package/dist/ionic/{p-3f18dfe9.entry.js → p-8eca5ba1.entry.js} +1 -1
- package/dist/ionic/{p-f08edb25.entry.js → p-96f52444.entry.js} +1 -1
- package/dist/ionic/{p-f167c55c.entry.js → p-a3b047e0.entry.js} +1 -1
- package/dist/ionic/{p-40d9e029.entry.js → p-a73caa5e.entry.js} +1 -1
- package/dist/ionic/{p-1ad16c09.entry.js → p-b0dfd018.entry.js} +1 -1
- package/dist/ionic/{p-a3f9be52.entry.js → p-b6130fe4.entry.js} +1 -1
- package/dist/ionic/{p-084c2623.entry.js → p-c5f745b4.entry.js} +1 -1
- package/dist/ionic/{p-52ed96a8.entry.js → p-c781241c.entry.js} +1 -1
- package/dist/ionic/p-cb154afe.entry.js +4 -0
- package/dist/ionic/{p-031df892.entry.js → p-cde69f38.entry.js} +1 -1
- package/dist/ionic/p-d6f0a698.entry.js +4 -0
- package/dist/ionic/{p-dd2981d0.entry.js → p-d9804d04.entry.js} +1 -1
- package/dist/ionic/{p-7054a1b9.entry.js → p-e342b205.entry.js} +1 -1
- package/dist/ionic/p-e4071bf8.entry.js +4 -0
- package/dist/ionic/{p-9dfbe98d.entry.js → p-e8916b04.entry.js} +1 -1
- package/dist/ionic/{p-dac1d4de.entry.js → p-f10f8f95.entry.js} +1 -1
- package/dist/ionic/p-fdcbe59a.entry.js +4 -0
- package/dist/types/components/footer/footer.d.ts +2 -12
- package/dist/types/components/footer/footer.utils.d.ts +0 -1
- package/dist/types/components/gallery/gallery.d.ts +33 -8
- package/dist/types/components/gallery/test/utils.d.ts +1 -1
- package/dist/types/components/gallery-item/gallery-item.d.ts +35 -0
- package/dist/types/components/header/header.d.ts +3 -10
- package/dist/types/components/header/header.utils.d.ts +0 -1
- package/dist/types/components.d.ts +41 -12
- package/dist/types/utils/css-value-validation.d.ts +9 -0
- package/hydrate/index.js +334 -421
- package/hydrate/index.mjs +334 -421
- package/package.json +1 -1
- package/components/p-BF5oFX1I.js +0 -4
- package/components/p-CpFORZud.js +0 -4
- package/components/p-GElQZ38c.js +0 -4
- package/components/p-d77Zk1DK.js +0 -4
- package/components/p-hdGd8ben.js +0 -4
- package/dist/collection/utils/on-scroll/collapse-hide.utils.js +0 -168
- package/dist/ionic/p-04b5794c.entry.js +0 -4
- package/dist/ionic/p-2aa7567e.entry.js +0 -4
- package/dist/ionic/p-44d483c2.entry.js +0 -4
- package/dist/ionic/p-ad4d0138.entry.js +0 -4
- package/dist/ionic/p-ff09d2a5.entry.js +0 -4
- package/dist/types/utils/on-scroll/collapse-hide.utils.d.ts +0 -26
package/hydrate/index.js
CHANGED
|
@@ -13337,7 +13337,7 @@ const isRTL$1 = (hostEl) => {
|
|
|
13337
13337
|
return (document === null || document === void 0 ? void 0 : document.dir.toLowerCase()) === 'rtl';
|
|
13338
13338
|
};
|
|
13339
13339
|
|
|
13340
|
-
const contentCss = () => `:host{--background:var(--ion-background-color, #fff);--color:var(--ion-text-color, #000);--padding-top:0px;--padding-bottom:0px;--padding-start:0px;--padding-end:0px;--keyboard-offset:0px;--offset-top:0px;--offset-bottom:0px;--overflow:auto;display:block;position:relative;-ms-flex:1;flex:1;width:100%;height:100%;margin:0 !important;padding:0 !important;font-family:var(--ion-font-family, inherit);contain:size style}:host(.ion-color) .inner-scroll{background:var(--ion-color-base);color:var(--ion-color-contrast)}#background-content{right:0px;left:0px;top:calc(var(--offset-top) * -1);bottom:calc(var(--offset-bottom) * -1);position:absolute;background:var(--background)}.inner-scroll{right:0px;left:0px;top:calc(var(--offset-top) * -1);bottom:calc(var(--offset-bottom) * -1);-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:calc(var(--padding-top) + var(--offset-top));padding-bottom:calc(var(--padding-bottom) + var(--keyboard-offset) + var(--offset-bottom) + var(--internal-content-safe-area-padding-bottom, 0px));position:absolute;color:var(--color);-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;-ms-touch-action:pan-x pan-y pinch-zoom;touch-action:pan-x pan-y pinch-zoom}.scroll-y,.scroll-x{-webkit-overflow-scrolling:touch;z-index:0;will-change:scroll-position}.scroll-y{overflow-y:var(--overflow);overscroll-behavior-y:contain}.scroll-x{overflow-x:var(--overflow);overscroll-behavior-x:contain}.overscroll::before,.overscroll::after{position:absolute;width:1px;height:1px;content:""}.overscroll::before{bottom:-1px}.overscroll::after{top:-1px}:host(.content-sizing){display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-height:0;contain:none}:host(.content-sizing) .inner-scroll{position:relative;top:0;bottom:0;margin-top:calc(var(--offset-top) * -1);margin-bottom:calc(var(--offset-bottom) * -1)}.transition-effect{display:none;position:absolute;width:100%;height:100vh;opacity:0;pointer-events:none}:host(.content-ltr) .transition-effect{left:-100%;}:host(.content-rtl) .transition-effect{right:-100%;}.transition-cover{position:absolute;right:0;width:100%;height:100%;background:black;opacity:0.1}.transition-shadow{display:block;position:absolute;width:100%;height:100%;-webkit-box-shadow:inset -9px 0 9px 0 rgba(0, 0, 100, 0.03);box-shadow:inset -9px 0 9px 0 rgba(0, 0, 100, 0.03)}:host(.content-ltr) .transition-shadow{right:0;}:host(.content-rtl) .transition-shadow{left:0;-webkit-transform:scaleX(-1);transform:scaleX(-1)}::slotted([slot=fixed]){position:absolute;-webkit-transform:translateZ(0);transform:translateZ(0)}
|
|
13340
|
+
const contentCss = () => `:host{--background:var(--ion-background-color, #fff);--color:var(--ion-text-color, #000);--padding-top:0px;--padding-bottom:0px;--padding-start:0px;--padding-end:0px;--keyboard-offset:0px;--offset-top:0px;--offset-bottom:0px;--overflow:auto;display:block;position:relative;-ms-flex:1;flex:1;width:100%;height:100%;margin:0 !important;padding:0 !important;font-family:var(--ion-font-family, inherit);contain:size style}:host(.ion-color) .inner-scroll{background:var(--ion-color-base);color:var(--ion-color-contrast)}#background-content{right:0px;left:0px;top:calc(var(--offset-top) * -1);bottom:calc(var(--offset-bottom) * -1);position:absolute;background:var(--background)}.inner-scroll{right:0px;left:0px;top:calc(var(--offset-top) * -1);bottom:calc(var(--offset-bottom) * -1);-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:calc(var(--padding-top) + var(--offset-top));padding-bottom:calc(var(--padding-bottom) + var(--keyboard-offset) + var(--offset-bottom) + var(--internal-content-safe-area-padding-bottom, 0px));position:absolute;color:var(--color);-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;-ms-touch-action:pan-x pan-y pinch-zoom;touch-action:pan-x pan-y pinch-zoom}.scroll-y,.scroll-x{-webkit-overflow-scrolling:touch;z-index:0;will-change:scroll-position}.scroll-y{overflow-y:var(--overflow);overscroll-behavior-y:contain}.scroll-x{overflow-x:var(--overflow);overscroll-behavior-x:contain}.overscroll::before,.overscroll::after{position:absolute;width:1px;height:1px;content:""}.overscroll::before{bottom:-1px}.overscroll::after{top:-1px}:host(.content-sizing){display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-height:0;contain:none}:host(.content-sizing) .inner-scroll{position:relative;top:0;bottom:0;margin-top:calc(var(--offset-top) * -1);margin-bottom:calc(var(--offset-bottom) * -1)}.transition-effect{display:none;position:absolute;width:100%;height:100vh;opacity:0;pointer-events:none}:host(.content-ltr) .transition-effect{left:-100%;}:host(.content-rtl) .transition-effect{right:-100%;}.transition-cover{position:absolute;right:0;width:100%;height:100%;background:black;opacity:0.1}.transition-shadow{display:block;position:absolute;width:100%;height:100%;-webkit-box-shadow:inset -9px 0 9px 0 rgba(0, 0, 100, 0.03);box-shadow:inset -9px 0 9px 0 rgba(0, 0, 100, 0.03)}:host(.content-ltr) .transition-shadow{right:0;}:host(.content-rtl) .transition-shadow{left:0;-webkit-transform:scaleX(-1);transform:scaleX(-1)}::slotted([slot=fixed]){position:absolute;-webkit-transform:translateZ(0);transform:translateZ(0)}`;
|
|
13341
13341
|
|
|
13342
13342
|
/**
|
|
13343
13343
|
* @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
|
|
@@ -18587,171 +18587,6 @@ const createKeyboardController = async (keyboardChangeCallback) => {
|
|
|
18587
18587
|
return { init, destroy, isKeyboardVisible };
|
|
18588
18588
|
};
|
|
18589
18589
|
|
|
18590
|
-
/** Cumulative downward delta before hiding (header or footer `collapse="hide"`). */
|
|
18591
|
-
const COLLAPSE_HIDE_THRESHOLD_PX = 24;
|
|
18592
|
-
/**
|
|
18593
|
-
* Cumulative upward delta before showing again after hide. Small bias
|
|
18594
|
-
* (instead of "any upward delta") guards against inertial-scroll
|
|
18595
|
-
* oscillation flicking the region back open during a downward gesture.
|
|
18596
|
-
*/
|
|
18597
|
-
const COLLAPSE_SHOW_THRESHOLD_PX = 5;
|
|
18598
|
-
const WHEEL_SCROLL_SUPPRESS_MS = 80;
|
|
18599
|
-
const getContentHostFromScrollEl = (scrollEl) => {
|
|
18600
|
-
const root = scrollEl.getRootNode();
|
|
18601
|
-
if (root instanceof ShadowRoot && root.host instanceof HTMLElement) {
|
|
18602
|
-
return root.host;
|
|
18603
|
-
}
|
|
18604
|
-
// Light-DOM fallback: the scroll element may live inside a non-shadow
|
|
18605
|
-
// ion-content (e.g. custom scroll host). Walk up to the nearest ion-content.
|
|
18606
|
-
return scrollEl.closest('ion-content');
|
|
18607
|
-
};
|
|
18608
|
-
const applySlideDistance = (regionEl, contentHost, slideCssVar, heightPx) => {
|
|
18609
|
-
const value = `${Math.max(0, Math.ceil(heightPx))}px`;
|
|
18610
|
-
regionEl.style.setProperty(slideCssVar, value);
|
|
18611
|
-
contentHost === null || contentHost === void 0 ? void 0 : contentHost.style.setProperty(slideCssVar, value);
|
|
18612
|
-
};
|
|
18613
|
-
const clearSlideDistance = (regionEl, contentHost, slideCssVar) => {
|
|
18614
|
-
regionEl.style.removeProperty(slideCssVar);
|
|
18615
|
-
contentHost === null || contentHost === void 0 ? void 0 : contentHost.style.removeProperty(slideCssVar);
|
|
18616
|
-
};
|
|
18617
|
-
/**
|
|
18618
|
-
* Scroll/wheel-driven hide/show for `collapse="hide"` on `ion-header` or `ion-footer`.
|
|
18619
|
-
* Hide after {@link COLLAPSE_HIDE_THRESHOLD_PX}px cumulative downward delta; show after
|
|
18620
|
-
* {@link COLLAPSE_SHOW_THRESHOLD_PX}px cumulative upward delta. Each direction drains
|
|
18621
|
-
* (not resets) the opposing accumulator so inertial-scroll jitter doesn't stall either
|
|
18622
|
-
* transition. Motion is defined in component SCSS and `content.scss`; this toggles
|
|
18623
|
-
* classes and syncs the slide distance CSS var.
|
|
18624
|
-
*/
|
|
18625
|
-
const createCollapseHideInteraction = ({ regionEl, scrollEl, slideCssVar, contentPartnerClass, contentHiddenClass, regionHiddenClass, }) => {
|
|
18626
|
-
const contentHost = getContentHostFromScrollEl(scrollEl);
|
|
18627
|
-
if (contentHost !== null) {
|
|
18628
|
-
contentHost.classList.add(contentPartnerClass);
|
|
18629
|
-
}
|
|
18630
|
-
let resizeObserver;
|
|
18631
|
-
let destroyed = false;
|
|
18632
|
-
const syncSlideDistance = () => {
|
|
18633
|
-
readTask(() => {
|
|
18634
|
-
if (destroyed) {
|
|
18635
|
-
return;
|
|
18636
|
-
}
|
|
18637
|
-
const heightPx = regionEl.offsetHeight;
|
|
18638
|
-
writeTask(() => {
|
|
18639
|
-
if (destroyed) {
|
|
18640
|
-
return;
|
|
18641
|
-
}
|
|
18642
|
-
applySlideDistance(regionEl, contentHost, slideCssVar, heightPx);
|
|
18643
|
-
});
|
|
18644
|
-
});
|
|
18645
|
-
};
|
|
18646
|
-
if (typeof ResizeObserver !== 'undefined') {
|
|
18647
|
-
resizeObserver = new ResizeObserver(() => {
|
|
18648
|
-
syncSlideDistance();
|
|
18649
|
-
});
|
|
18650
|
-
resizeObserver.observe(regionEl);
|
|
18651
|
-
}
|
|
18652
|
-
syncSlideDistance();
|
|
18653
|
-
requestAnimationFrame(() => {
|
|
18654
|
-
if (!destroyed) {
|
|
18655
|
-
syncSlideDistance();
|
|
18656
|
-
}
|
|
18657
|
-
});
|
|
18658
|
-
let hidden = false;
|
|
18659
|
-
let accDown = 0;
|
|
18660
|
-
let accUp = 0;
|
|
18661
|
-
let lastScrollTop = scrollEl.scrollTop;
|
|
18662
|
-
let lastWheelTime = 0;
|
|
18663
|
-
const setHidden = (next) => {
|
|
18664
|
-
if (hidden === next || destroyed) {
|
|
18665
|
-
return;
|
|
18666
|
-
}
|
|
18667
|
-
hidden = next;
|
|
18668
|
-
// When transitioning to hidden, re-measure synchronously in case the
|
|
18669
|
-
// initial layout reported offsetHeight === 0 (e.g. mid page transition).
|
|
18670
|
-
// Without this the slide animates by 0px and only opacity fades.
|
|
18671
|
-
if (hidden) {
|
|
18672
|
-
const heightPx = regionEl.offsetHeight;
|
|
18673
|
-
if (heightPx > 0) {
|
|
18674
|
-
applySlideDistance(regionEl, contentHost, slideCssVar, heightPx);
|
|
18675
|
-
}
|
|
18676
|
-
}
|
|
18677
|
-
writeTask(() => {
|
|
18678
|
-
if (destroyed) {
|
|
18679
|
-
return;
|
|
18680
|
-
}
|
|
18681
|
-
regionEl.classList.toggle(regionHiddenClass, hidden);
|
|
18682
|
-
contentHost === null || contentHost === void 0 ? void 0 : contentHost.classList.toggle(contentHiddenClass, hidden);
|
|
18683
|
-
if (hidden) {
|
|
18684
|
-
// `inert` removes the subtree from the tab order and AT, AND moves
|
|
18685
|
-
// focus out automatically in supporting browsers. `aria-hidden` is
|
|
18686
|
-
// kept as a fallback for older engines without `inert` support.
|
|
18687
|
-
regionEl.setAttribute('inert', '');
|
|
18688
|
-
regionEl.setAttribute('aria-hidden', 'true');
|
|
18689
|
-
}
|
|
18690
|
-
else {
|
|
18691
|
-
regionEl.removeAttribute('inert');
|
|
18692
|
-
regionEl.removeAttribute('aria-hidden');
|
|
18693
|
-
}
|
|
18694
|
-
});
|
|
18695
|
-
};
|
|
18696
|
-
// Accumulate cumulative movement in each direction. The OPPOSITE accumulator
|
|
18697
|
-
// is drained (not reset) by each event, so brief inertial jitter does not
|
|
18698
|
-
// wipe a sustained gesture's accumulation. Crossing a threshold resets both.
|
|
18699
|
-
const processDelta = (delta) => {
|
|
18700
|
-
if (delta > 0) {
|
|
18701
|
-
accUp = Math.max(0, accUp - delta);
|
|
18702
|
-
accDown += delta;
|
|
18703
|
-
if (accDown >= COLLAPSE_HIDE_THRESHOLD_PX) {
|
|
18704
|
-
setHidden(true);
|
|
18705
|
-
accDown = 0;
|
|
18706
|
-
accUp = 0;
|
|
18707
|
-
}
|
|
18708
|
-
}
|
|
18709
|
-
else if (delta < 0) {
|
|
18710
|
-
const mag = -delta;
|
|
18711
|
-
accDown = Math.max(0, accDown - mag);
|
|
18712
|
-
accUp += mag;
|
|
18713
|
-
if (accUp >= COLLAPSE_SHOW_THRESHOLD_PX) {
|
|
18714
|
-
setHidden(false);
|
|
18715
|
-
accUp = 0;
|
|
18716
|
-
accDown = 0;
|
|
18717
|
-
}
|
|
18718
|
-
}
|
|
18719
|
-
};
|
|
18720
|
-
const onWheel = (ev) => {
|
|
18721
|
-
if (destroyed) {
|
|
18722
|
-
return;
|
|
18723
|
-
}
|
|
18724
|
-
lastWheelTime = performance.now();
|
|
18725
|
-
processDelta(ev.deltaY);
|
|
18726
|
-
};
|
|
18727
|
-
const onScroll = () => {
|
|
18728
|
-
if (destroyed) {
|
|
18729
|
-
return;
|
|
18730
|
-
}
|
|
18731
|
-
const st = scrollEl.scrollTop;
|
|
18732
|
-
if (performance.now() - lastWheelTime < WHEEL_SCROLL_SUPPRESS_MS) {
|
|
18733
|
-
lastScrollTop = st;
|
|
18734
|
-
return;
|
|
18735
|
-
}
|
|
18736
|
-
const delta = st - lastScrollTop;
|
|
18737
|
-
lastScrollTop = st;
|
|
18738
|
-
processDelta(delta);
|
|
18739
|
-
};
|
|
18740
|
-
scrollEl.addEventListener('wheel', onWheel, { passive: true });
|
|
18741
|
-
scrollEl.addEventListener('scroll', onScroll, { passive: true });
|
|
18742
|
-
return () => {
|
|
18743
|
-
destroyed = true;
|
|
18744
|
-
resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.disconnect();
|
|
18745
|
-
scrollEl.removeEventListener('wheel', onWheel);
|
|
18746
|
-
scrollEl.removeEventListener('scroll', onScroll);
|
|
18747
|
-
regionEl.classList.remove(regionHiddenClass);
|
|
18748
|
-
regionEl.removeAttribute('inert');
|
|
18749
|
-
regionEl.removeAttribute('aria-hidden');
|
|
18750
|
-
contentHost === null || contentHost === void 0 ? void 0 : contentHost.classList.remove(contentPartnerClass, contentHiddenClass);
|
|
18751
|
-
clearSlideDistance(regionEl, contentHost, slideCssVar);
|
|
18752
|
-
};
|
|
18753
|
-
};
|
|
18754
|
-
|
|
18755
18590
|
const handleFooterFade = (scrollEl, baseEl) => {
|
|
18756
18591
|
readTask(() => {
|
|
18757
18592
|
const scrollTop = scrollEl.scrollTop;
|
|
@@ -18780,20 +18615,12 @@ const handleFooterFade = (scrollEl, baseEl) => {
|
|
|
18780
18615
|
});
|
|
18781
18616
|
});
|
|
18782
18617
|
};
|
|
18783
|
-
const createFooterHideInteraction = (footerEl, scrollEl) => createCollapseHideInteraction({
|
|
18784
|
-
regionEl: footerEl,
|
|
18785
|
-
scrollEl,
|
|
18786
|
-
slideCssVar: '--footer-hide-slide-y',
|
|
18787
|
-
contentPartnerClass: 'content-footer-hide-scroll-partner',
|
|
18788
|
-
contentHiddenClass: 'content-footer-hide-scroll-hidden',
|
|
18789
|
-
regionHiddenClass: 'footer-collapse-hide-hidden',
|
|
18790
|
-
});
|
|
18791
18618
|
|
|
18792
|
-
const ionicFooterMdCss = () => `ion-footer{display:block;position:relative;-ms-flex-order:1;order:1;width:100%;z-index:10}ion-footer.footer-toolbar-padding ion-toolbar:last-of-type{padding-bottom:var(--ion-safe-area-bottom, 0)}
|
|
18619
|
+
const ionicFooterMdCss = () => `ion-footer{display:block;position:relative;-ms-flex-order:1;order:1;width:100%;z-index:10}ion-footer.footer-toolbar-padding ion-toolbar:last-of-type{padding-bottom:var(--ion-safe-area-bottom, 0)}.footer-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)}.footer-md.ion-no-border{-webkit-box-shadow:none;box-shadow:none}`;
|
|
18793
18620
|
|
|
18794
|
-
const footerIosCss = () => `ion-footer{display:block;position:relative;-ms-flex-order:1;order:1;width:100%;z-index:10}ion-footer.footer-toolbar-padding ion-toolbar:last-of-type{padding-bottom:var(--ion-safe-area-bottom, 0)}
|
|
18621
|
+
const footerIosCss = () => `ion-footer{display:block;position:relative;-ms-flex-order:1;order:1;width:100%;z-index:10}ion-footer.footer-toolbar-padding ion-toolbar:last-of-type{padding-bottom:var(--ion-safe-area-bottom, 0)}.footer-ios ion-toolbar:first-of-type{--border-width:0.55px 0 0}@supports ((-webkit-backdrop-filter: blur(0)) or (backdrop-filter: blur(0))){.footer-background{right:0;left:0;top:0;bottom:0;position:absolute;-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}.footer-translucent-ios ion-toolbar{--opacity:0.8}}.footer-ios.ion-no-border ion-toolbar:first-of-type{--border-width:0}.footer-collapse-fade ion-toolbar{--opacity-scale:inherit}`;
|
|
18795
18622
|
|
|
18796
|
-
const footerMdCss = () => `ion-footer{display:block;position:relative;-ms-flex-order:1;order:1;width:100%;z-index:10}ion-footer.footer-toolbar-padding ion-toolbar:last-of-type{padding-bottom:var(--ion-safe-area-bottom, 0)}
|
|
18623
|
+
const footerMdCss = () => `ion-footer{display:block;position:relative;-ms-flex-order:1;order:1;width:100%;z-index:10}ion-footer.footer-toolbar-padding ion-toolbar:last-of-type{padding-bottom:var(--ion-safe-area-bottom, 0)}.footer-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)}.footer-md.ion-no-border{-webkit-box-shadow:none;box-shadow:none}`;
|
|
18797
18624
|
|
|
18798
18625
|
/**
|
|
18799
18626
|
* @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
|
|
@@ -18802,8 +18629,6 @@ const footerMdCss = () => `ion-footer{display:block;position:relative;-ms-flex-o
|
|
|
18802
18629
|
class Footer {
|
|
18803
18630
|
constructor(hostRef) {
|
|
18804
18631
|
registerInstance(this, hostRef);
|
|
18805
|
-
this.didLoad = false;
|
|
18806
|
-
this.setupToken = 0;
|
|
18807
18632
|
this.keyboardCtrl = null;
|
|
18808
18633
|
this.keyboardCtrlPromise = null;
|
|
18809
18634
|
this.keyboardVisible = false;
|
|
@@ -18818,45 +18643,25 @@ class Footer {
|
|
|
18818
18643
|
this.translucent = false;
|
|
18819
18644
|
this.checkCollapsibleFooter = () => {
|
|
18820
18645
|
const theme = getIonTheme(this);
|
|
18821
|
-
|
|
18822
|
-
const hasFade = collapse === 'fade';
|
|
18823
|
-
const hasHide = collapse === 'hide';
|
|
18824
|
-
const runIosFade = theme === 'ios' && hasFade;
|
|
18825
|
-
if (!runIosFade && !hasHide) {
|
|
18826
|
-
this.destroyCollapsibleFooter();
|
|
18827
|
-
return;
|
|
18828
|
-
}
|
|
18829
|
-
// Skip teardown/rebuild when the collapse mode and theme have not changed
|
|
18830
|
-
// since the last setup — avoids thrashing listeners and resetting scroll
|
|
18831
|
-
// accumulators on unrelated re-renders (e.g. keyboardVisible state flips).
|
|
18832
|
-
const activeMode = hasHide ? 'hide' : 'fade';
|
|
18833
|
-
if (this.appliedCollapse === activeMode && this.appliedTheme === theme) {
|
|
18646
|
+
if (theme !== 'ios') {
|
|
18834
18647
|
return;
|
|
18835
18648
|
}
|
|
18649
|
+
const { collapse } = this;
|
|
18650
|
+
const hasFade = collapse === 'fade';
|
|
18836
18651
|
this.destroyCollapsibleFooter();
|
|
18837
|
-
|
|
18838
|
-
|
|
18839
|
-
|
|
18840
|
-
|
|
18841
|
-
|
|
18842
|
-
|
|
18843
|
-
|
|
18844
|
-
|
|
18845
|
-
this.appliedTheme = theme;
|
|
18846
|
-
if (runIosFade) {
|
|
18652
|
+
if (hasFade) {
|
|
18653
|
+
const appRootSelector = config.get('appRootSelector', 'ion-app');
|
|
18654
|
+
const pageEl = this.el.closest(`${appRootSelector},ion-page,.ion-page,page-inner`);
|
|
18655
|
+
const contentEl = pageEl ? findIonContent(pageEl) : null;
|
|
18656
|
+
if (!contentEl) {
|
|
18657
|
+
printIonContentErrorMsg(this.el);
|
|
18658
|
+
return;
|
|
18659
|
+
}
|
|
18847
18660
|
this.setupFadeFooter(contentEl);
|
|
18848
18661
|
}
|
|
18849
|
-
else if (hasHide) {
|
|
18850
|
-
void this.setupHideFooter(contentEl);
|
|
18851
|
-
}
|
|
18852
18662
|
};
|
|
18853
18663
|
this.setupFadeFooter = async (contentEl) => {
|
|
18854
|
-
const
|
|
18855
|
-
const scrollEl = await getScrollElement(contentEl);
|
|
18856
|
-
if (token !== this.setupToken) {
|
|
18857
|
-
return;
|
|
18858
|
-
}
|
|
18859
|
-
this.scrollEl = scrollEl;
|
|
18664
|
+
const scrollEl = (this.scrollEl = await getScrollElement(contentEl));
|
|
18860
18665
|
/**
|
|
18861
18666
|
* Handle fading of toolbars on scroll
|
|
18862
18667
|
*/
|
|
@@ -18868,18 +18673,12 @@ class Footer {
|
|
|
18868
18673
|
};
|
|
18869
18674
|
}
|
|
18870
18675
|
componentDidLoad() {
|
|
18871
|
-
this.didLoad = true;
|
|
18872
18676
|
this.checkCollapsibleFooter();
|
|
18873
18677
|
}
|
|
18874
18678
|
componentDidUpdate() {
|
|
18875
18679
|
this.checkCollapsibleFooter();
|
|
18876
18680
|
}
|
|
18877
18681
|
async connectedCallback() {
|
|
18878
|
-
// On re-attach (didLoad already true but disconnectedCallback ran since),
|
|
18879
|
-
// componentDidLoad will not fire again — re-run setup here.
|
|
18880
|
-
if (this.didLoad) {
|
|
18881
|
-
this.checkCollapsibleFooter();
|
|
18882
|
-
}
|
|
18883
18682
|
const promise = createKeyboardController(async (keyboardOpen, waitForResize) => {
|
|
18884
18683
|
/**
|
|
18885
18684
|
* If the keyboard is hiding, then we need to wait
|
|
@@ -18907,7 +18706,6 @@ class Footer {
|
|
|
18907
18706
|
}
|
|
18908
18707
|
}
|
|
18909
18708
|
disconnectedCallback() {
|
|
18910
|
-
this.destroyCollapsibleFooter();
|
|
18911
18709
|
if (this.keyboardCtrlPromise) {
|
|
18912
18710
|
this.keyboardCtrlPromise.then((ctrl) => ctrl.destroy());
|
|
18913
18711
|
this.keyboardCtrlPromise = null;
|
|
@@ -18917,36 +18715,18 @@ class Footer {
|
|
|
18917
18715
|
this.keyboardCtrl = null;
|
|
18918
18716
|
}
|
|
18919
18717
|
}
|
|
18920
|
-
async setupHideFooter(contentEl) {
|
|
18921
|
-
const token = ++this.setupToken;
|
|
18922
|
-
const scrollEl = await getScrollElement(contentEl);
|
|
18923
|
-
// A newer checkCollapsibleFooter ran while we were awaiting — abandon.
|
|
18924
|
-
if (token !== this.setupToken) {
|
|
18925
|
-
return;
|
|
18926
|
-
}
|
|
18927
|
-
this.scrollEl = scrollEl;
|
|
18928
|
-
this.footerHideCleanup = createFooterHideInteraction(this.el, scrollEl);
|
|
18929
|
-
}
|
|
18930
18718
|
destroyCollapsibleFooter() {
|
|
18931
|
-
// Invalidate any in-flight setupHideFooter/setupFadeFooter awaits.
|
|
18932
|
-
this.setupToken++;
|
|
18933
|
-
if (this.footerHideCleanup) {
|
|
18934
|
-
this.footerHideCleanup();
|
|
18935
|
-
this.footerHideCleanup = undefined;
|
|
18936
|
-
}
|
|
18937
18719
|
if (this.scrollEl && this.contentScrollCallback) {
|
|
18938
18720
|
this.scrollEl.removeEventListener('scroll', this.contentScrollCallback);
|
|
18939
18721
|
this.contentScrollCallback = undefined;
|
|
18940
18722
|
}
|
|
18941
|
-
this.appliedCollapse = undefined;
|
|
18942
|
-
this.appliedTheme = undefined;
|
|
18943
18723
|
}
|
|
18944
18724
|
render() {
|
|
18945
18725
|
const { translucent, collapse } = this;
|
|
18946
18726
|
const theme = getIonTheme(this);
|
|
18947
18727
|
const tabs = this.el.closest('ion-tabs');
|
|
18948
18728
|
const tabBar = tabs === null || tabs === void 0 ? void 0 : tabs.querySelector(':scope > ion-tab-bar');
|
|
18949
|
-
return (hAsync(Host, { key: '
|
|
18729
|
+
return (hAsync(Host, { key: '4a2989a177b47ee26ffa23e2c9f5418773584796', role: "contentinfo", class: {
|
|
18950
18730
|
[theme]: true,
|
|
18951
18731
|
// Used internally for styling
|
|
18952
18732
|
[`footer-${theme}`]: true,
|
|
@@ -18954,7 +18734,7 @@ class Footer {
|
|
|
18954
18734
|
[`footer-translucent-${theme}`]: translucent,
|
|
18955
18735
|
['footer-toolbar-padding']: !this.keyboardVisible && (!tabBar || tabBar.slot !== 'bottom'),
|
|
18956
18736
|
[`footer-collapse-${collapse}`]: collapse !== undefined,
|
|
18957
|
-
} }, theme === 'ios' && translucent && hAsync("div", { key: '
|
|
18737
|
+
} }, theme === 'ios' && translucent && hAsync("div", { key: 'c644963db3e06254014e398ea02189d6127ccf61', class: "footer-background" }), hAsync("slot", { key: '839e33c6c30f5c1c703239a19458ff10da9a5e76' })));
|
|
18958
18738
|
}
|
|
18959
18739
|
get el() { return getElement(this); }
|
|
18960
18740
|
static get style() { return {
|
|
@@ -18984,6 +18764,9 @@ class Footer {
|
|
|
18984
18764
|
const LENGTH_PERCENTAGE_PATTERN = /^[-+]?(?:\d+\.?\d*|\.\d+)(?:%|[a-z]+)$/i;
|
|
18985
18765
|
// Matches simple `calc` / `min` / `max` / `clamp(...)` functions.
|
|
18986
18766
|
const MATH_FUNCTION_PATTERN = /^(calc|min|max|clamp)\s*\(.+\)$/i;
|
|
18767
|
+
// Matches a `var(--name)` reference with an optional fallback, e.g.
|
|
18768
|
+
// `var(--my-gap)` or `var(--my-gap, 16px)`.
|
|
18769
|
+
const VAR_FUNCTION_PATTERN = /^var\(\s*--[^\s,)]+\s*(?:,[\s\S]*)?\)$/i;
|
|
18987
18770
|
/**
|
|
18988
18771
|
* Returns whether `value` matches the [length-percentage](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/length-percentage)
|
|
18989
18772
|
* syntax. Accepts `<length>` (`<number>` + unit identifier) or `<percentage>` (`<number>%`).
|
|
@@ -18998,6 +18781,17 @@ function isValidLengthPercentage(value) {
|
|
|
18998
18781
|
}
|
|
18999
18782
|
return MATH_FUNCTION_PATTERN.test(v) || LENGTH_PERCENTAGE_PATTERN.test(v);
|
|
19000
18783
|
}
|
|
18784
|
+
/**
|
|
18785
|
+
* Returns whether `value` is a single [`var()`](https://developer.mozilla.org/en-US/docs/Web/CSS/var)
|
|
18786
|
+
* reference, e.g. `var(--my-token)` or `var(--my-token, 16px)`. The referenced
|
|
18787
|
+
* custom property is resolved by the browser, so the resolved value is not
|
|
18788
|
+
* validated here.
|
|
18789
|
+
*
|
|
18790
|
+
* @param value String value to validate.
|
|
18791
|
+
*/
|
|
18792
|
+
function isCssVariable(value) {
|
|
18793
|
+
return VAR_FUNCTION_PATTERN.test(value.trim());
|
|
18794
|
+
}
|
|
19001
18795
|
|
|
19002
18796
|
const DEFAULT_COLUMNS = {
|
|
19003
18797
|
xs: 2,
|
|
@@ -19009,7 +18803,7 @@ const DEFAULT_COLUMNS = {
|
|
|
19009
18803
|
};
|
|
19010
18804
|
const DEFAULT_GAP = '16px';
|
|
19011
18805
|
|
|
19012
|
-
const galleryCss = () => `:host{display:grid;grid-template-columns:repeat(var(--internal-gallery-columns, 2), minmax(0, 1fr))}:host(.gallery-layout-uniform){gap:var(--internal-gallery-gap, 16px)}:host(.gallery-layout-
|
|
18806
|
+
const galleryCss = () => `:host{display:grid;grid-template-columns:repeat(var(--internal-gallery-columns, 2), minmax(0, 1fr))}:host(.gallery-layout-uniform){gap:var(--internal-gallery-gap, 16px)}:host(.gallery-layout-masonry){-ms-flex-align:start;align-items:start;-webkit-column-gap:var(--internal-gallery-gap, 16px);-moz-column-gap:var(--internal-gallery-gap, 16px);column-gap:var(--internal-gallery-gap, 16px);row-gap:0;grid-auto-rows:1px}`;
|
|
19013
18807
|
|
|
19014
18808
|
// TODO(FW-7285): Replace with global breakpoints
|
|
19015
18809
|
const BREAKPOINTS = {
|
|
@@ -19021,11 +18815,16 @@ const BREAKPOINTS = {
|
|
|
19021
18815
|
xxl: 1400,
|
|
19022
18816
|
};
|
|
19023
18817
|
const BREAKPOINT_ORDER = ['xs', 'sm', 'md', 'lg', 'xl', 'xxl'];
|
|
18818
|
+
/**
|
|
18819
|
+
* The tag of the component used to wrap each gallery item.
|
|
18820
|
+
*/
|
|
18821
|
+
const GALLERY_ITEM_SELECTOR = 'ion-gallery-item';
|
|
19024
18822
|
/**
|
|
19025
18823
|
* @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
|
|
19026
18824
|
* @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
|
|
19027
18825
|
*
|
|
19028
|
-
* @slot -
|
|
18826
|
+
* @slot - One or more `ion-gallery-item` components, placed in a responsive
|
|
18827
|
+
* gallery layout.
|
|
19029
18828
|
*/
|
|
19030
18829
|
class Gallery {
|
|
19031
18830
|
constructor(hostRef) {
|
|
@@ -19035,6 +18834,7 @@ class Gallery {
|
|
|
19035
18834
|
this.hasWarnedInvalidColumns = false;
|
|
19036
18835
|
this.hasWarnedInvalidGap = false;
|
|
19037
18836
|
this.hasWarnedUnusedOrder = false;
|
|
18837
|
+
this.hasWarnedInvalidItems = false;
|
|
19038
18838
|
/**
|
|
19039
18839
|
* The visual layout of the gallery. When `uniform`, rows take up the height
|
|
19040
18840
|
* of the tallest item and are spaced evenly across the gallery. Additionally,
|
|
@@ -19051,7 +18851,8 @@ class Gallery {
|
|
|
19051
18851
|
/**
|
|
19052
18852
|
* The space between gallery items. Accepts valid CSS [length-percentage](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/length-percentage)
|
|
19053
18853
|
* values like `16px`, `1rem`, `20%`, math functions like `calc(10px + 20%)`,
|
|
19054
|
-
* or numbers (treated as pixel
|
|
18854
|
+
* CSS variables like `var(--app-gallery-gap)`, or numbers (treated as pixel
|
|
18855
|
+
* values). Can also be set as a breakpoint map
|
|
19055
18856
|
* (e.g. `{ xs: '8px', sm: '1rem', md: '24px' }`). Does not accept
|
|
19056
18857
|
* space-separated values or CSS keyword values like `inherit`, `auto`, etc.
|
|
19057
18858
|
*/
|
|
@@ -19063,6 +18864,9 @@ class Gallery {
|
|
|
19063
18864
|
* are added or removed from the gallery.
|
|
19064
18865
|
*/
|
|
19065
18866
|
this.onSlotChange = () => {
|
|
18867
|
+
// Re-observe so newly added items are watched for size changes (e.g. a
|
|
18868
|
+
// freshly appended item finishing hydration), then recompute placement.
|
|
18869
|
+
this.observeResizes();
|
|
19066
18870
|
this.scheduleMasonryResize();
|
|
19067
18871
|
};
|
|
19068
18872
|
/**
|
|
@@ -19106,7 +18910,7 @@ class Gallery {
|
|
|
19106
18910
|
this.updateResponsiveStyles();
|
|
19107
18911
|
this.scheduleMasonryResize();
|
|
19108
18912
|
});
|
|
19109
|
-
this.
|
|
18913
|
+
this.observeResizes();
|
|
19110
18914
|
this.scheduleMasonryResize();
|
|
19111
18915
|
this.warnUnusedOrder();
|
|
19112
18916
|
}
|
|
@@ -19119,6 +18923,22 @@ class Gallery {
|
|
|
19119
18923
|
(_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
19120
18924
|
this.resizeObserver = undefined;
|
|
19121
18925
|
}
|
|
18926
|
+
/**
|
|
18927
|
+
* Observe the host and each item for size changes. Items are observed in
|
|
18928
|
+
* addition to the host so masonry placement is recomputed when an item's
|
|
18929
|
+
* rendered height changes — most importantly when a dynamically added
|
|
18930
|
+
* `ion-gallery-item` finishes hydrating, which (unlike an `<img>`) emits no
|
|
18931
|
+
* `load` event and does not change the host's measured size while collapsed.
|
|
18932
|
+
*/
|
|
18933
|
+
observeResizes() {
|
|
18934
|
+
const observer = this.resizeObserver;
|
|
18935
|
+
if (observer === undefined) {
|
|
18936
|
+
return;
|
|
18937
|
+
}
|
|
18938
|
+
observer.disconnect();
|
|
18939
|
+
observer.observe(this.el);
|
|
18940
|
+
this.getItems().forEach((item) => observer.observe(item));
|
|
18941
|
+
}
|
|
19122
18942
|
/**
|
|
19123
18943
|
* Listen for the load event on child elements.
|
|
19124
18944
|
* When the layout is `masonry`, this listener is used to schedule a resize
|
|
@@ -19172,9 +18992,10 @@ class Gallery {
|
|
|
19172
18992
|
return numericColumns;
|
|
19173
18993
|
}
|
|
19174
18994
|
/**
|
|
19175
|
-
* Normalize a single gap value (`gap` as a number, string
|
|
19176
|
-
*
|
|
19177
|
-
*
|
|
18995
|
+
* Normalize a single gap value (`gap` as a number, a string such as a CSS
|
|
18996
|
+
* length-percentage or `var()` reference, or one entry from a `gap`
|
|
18997
|
+
* breakpoint map) to a CSS length string. Returns `undefined` when the
|
|
18998
|
+
* input cannot be interpreted as a valid CSS length or `var()` reference.
|
|
19178
18999
|
*/
|
|
19179
19000
|
sanitizeGap(gap) {
|
|
19180
19001
|
if (gap === undefined) {
|
|
@@ -19191,6 +19012,9 @@ class Gallery {
|
|
|
19191
19012
|
if (typeof normalizedGap !== 'string') {
|
|
19192
19013
|
return undefined;
|
|
19193
19014
|
}
|
|
19015
|
+
if (isCssVariable(normalizedGap)) {
|
|
19016
|
+
return normalizedGap;
|
|
19017
|
+
}
|
|
19194
19018
|
const isValidCssLength = isValidLengthPercentage(normalizedGap);
|
|
19195
19019
|
return isValidCssLength ? normalizedGap : undefined;
|
|
19196
19020
|
}
|
|
@@ -19271,7 +19095,7 @@ class Gallery {
|
|
|
19271
19095
|
if (this.hasWarnedInvalidGap) {
|
|
19272
19096
|
return;
|
|
19273
19097
|
}
|
|
19274
|
-
printIonWarning(`[ion-gallery] - Invalid "gap" value (${JSON.stringify(gap)}). Expected a non-negative number, CSS length string, or breakpoint map object (e.g. { xs: 8, md: "1rem" }).`, this.el);
|
|
19098
|
+
printIonWarning(`[ion-gallery] - Invalid "gap" value (${JSON.stringify(gap)}). Expected a non-negative number, CSS length string, CSS variable (e.g. var(--app-gap)), or breakpoint map object (e.g. { xs: 8, md: "1rem" }).`, this.el);
|
|
19275
19099
|
this.hasWarnedInvalidGap = true;
|
|
19276
19100
|
}
|
|
19277
19101
|
/**
|
|
@@ -19343,11 +19167,43 @@ class Gallery {
|
|
|
19343
19167
|
this.el.style.setProperty('--internal-gallery-gap', `${gap}`);
|
|
19344
19168
|
}
|
|
19345
19169
|
/**
|
|
19346
|
-
* Return
|
|
19347
|
-
*
|
|
19170
|
+
* Return the `ion-gallery-item` elements to place in the grid. Each item is a
|
|
19171
|
+
* direct grid cell. A direct child that is not an `ion-gallery-item` is
|
|
19172
|
+
* treated as a pass-through wrapper (e.g. a layout `<div>`): its box is
|
|
19173
|
+
* collapsed with `display: contents` so the nested items participate in the
|
|
19174
|
+
* gallery grid. Children that contain no `ion-gallery-item` are ignored.
|
|
19348
19175
|
*/
|
|
19349
19176
|
getItems() {
|
|
19350
|
-
|
|
19177
|
+
const items = [];
|
|
19178
|
+
Array.from(this.el.children).forEach((child) => {
|
|
19179
|
+
// Standard path: <ion-gallery-item> is a direct child of <ion-gallery>.
|
|
19180
|
+
if (child.matches(GALLERY_ITEM_SELECTOR)) {
|
|
19181
|
+
items.push(child);
|
|
19182
|
+
return;
|
|
19183
|
+
}
|
|
19184
|
+
// Compatibility path: a wrapper element may contain <ion-gallery-item>
|
|
19185
|
+
// components. Collapse the wrapper's box so the items participate in the
|
|
19186
|
+
// gallery grid.
|
|
19187
|
+
const nestedItems = Array.from(child.querySelectorAll(GALLERY_ITEM_SELECTOR));
|
|
19188
|
+
if (nestedItems.length === 0) {
|
|
19189
|
+
this.warnInvalidItems();
|
|
19190
|
+
return;
|
|
19191
|
+
}
|
|
19192
|
+
child.style.display = 'contents';
|
|
19193
|
+
items.push(...nestedItems);
|
|
19194
|
+
});
|
|
19195
|
+
return items;
|
|
19196
|
+
}
|
|
19197
|
+
/**
|
|
19198
|
+
* Warn when the gallery has content that is not wrapped in an
|
|
19199
|
+
* `ion-gallery-item` component.
|
|
19200
|
+
*/
|
|
19201
|
+
warnInvalidItems() {
|
|
19202
|
+
if (this.hasWarnedInvalidItems) {
|
|
19203
|
+
return;
|
|
19204
|
+
}
|
|
19205
|
+
printIonWarning(`[ion-gallery] - Gallery items must be wrapped in "ion-gallery-item" components. Direct children that are not "ion-gallery-item" (and do not contain one) are ignored.`, this.el);
|
|
19206
|
+
this.hasWarnedInvalidItems = true;
|
|
19351
19207
|
}
|
|
19352
19208
|
/**
|
|
19353
19209
|
* Clear the item styles for the given item element.
|
|
@@ -19365,12 +19221,19 @@ class Gallery {
|
|
|
19365
19221
|
clearMasonryStyles() {
|
|
19366
19222
|
this.getItems().forEach((itemEl) => this.clearItemStyles(itemEl));
|
|
19367
19223
|
}
|
|
19224
|
+
/**
|
|
19225
|
+
* Whether the item contains any images that have not finished loading.
|
|
19226
|
+
* Used to defer masonry placement until the rendered height is final.
|
|
19227
|
+
*/
|
|
19228
|
+
hasUnloadedImages(itemEl) {
|
|
19229
|
+
return Array.from(itemEl.querySelectorAll('img')).some((img) => !img.complete || img.naturalHeight === 0);
|
|
19230
|
+
}
|
|
19368
19231
|
/**
|
|
19369
19232
|
* Convert a rendered item height to the number of grid rows it should span.
|
|
19370
|
-
* Returns undefined
|
|
19233
|
+
* Returns undefined when the item has images that are not fully loaded yet.
|
|
19371
19234
|
*/
|
|
19372
19235
|
calculateRowSpan(itemEl, rowHeight, rowGap) {
|
|
19373
|
-
if (
|
|
19236
|
+
if (this.hasUnloadedImages(itemEl)) {
|
|
19374
19237
|
return undefined;
|
|
19375
19238
|
}
|
|
19376
19239
|
const height = itemEl.getBoundingClientRect().height;
|
|
@@ -19457,11 +19320,11 @@ class Gallery {
|
|
|
19457
19320
|
const { layout } = this;
|
|
19458
19321
|
const order = this.getOrder();
|
|
19459
19322
|
const theme = getIonTheme(this);
|
|
19460
|
-
return (hAsync(Host, { key: '
|
|
19323
|
+
return (hAsync(Host, { key: '2063823917f4ab8430aee0e17ae0f3a2b53341d1', class: {
|
|
19461
19324
|
[theme]: true,
|
|
19462
19325
|
[`gallery-layout-${layout}`]: true,
|
|
19463
19326
|
[`gallery-order-${order}`]: layout === 'masonry' && order !== undefined,
|
|
19464
|
-
} }, hAsync("slot", { key: '
|
|
19327
|
+
} }, hAsync("slot", { key: '1378f489afb6b05181d2513f664c4efe24ad3598', onSlotchange: this.onSlotChange })));
|
|
19465
19328
|
}
|
|
19466
19329
|
get el() { return getElement(this); }
|
|
19467
19330
|
static get watchers() { return {
|
|
@@ -19494,6 +19357,93 @@ class Gallery {
|
|
|
19494
19357
|
}; }
|
|
19495
19358
|
}
|
|
19496
19359
|
|
|
19360
|
+
const galleryItemCss = () => `:host{display:block}::slotted(*){margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;width:100%}::slotted(img){display:block;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}:host(.in-gallery-layout-uniform) ::slotted(*){aspect-ratio:1/1}:host(.in-gallery-layout-masonry){min-height:unset;margin-bottom:var(--internal-gallery-gap, 16px)}`;
|
|
19361
|
+
|
|
19362
|
+
/**
|
|
19363
|
+
* @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
|
|
19364
|
+
* @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
|
|
19365
|
+
*
|
|
19366
|
+
* @slot - The content placed inside of the gallery item. This is typically an
|
|
19367
|
+
* `img`, but can be any element (e.g. a `figure` wrapping an image and caption).
|
|
19368
|
+
*/
|
|
19369
|
+
class GalleryItem {
|
|
19370
|
+
constructor(hostRef) {
|
|
19371
|
+
registerInstance(this, hostRef);
|
|
19372
|
+
this.hasWarnedInvalidParent = false;
|
|
19373
|
+
this.onSlotChange = () => {
|
|
19374
|
+
this.warnInvalidParent();
|
|
19375
|
+
};
|
|
19376
|
+
}
|
|
19377
|
+
componentWillLoad() {
|
|
19378
|
+
var _a;
|
|
19379
|
+
this.galleryEl = (_a = this.el.closest('ion-gallery')) !== null && _a !== void 0 ? _a : undefined;
|
|
19380
|
+
this.syncLayoutClasses();
|
|
19381
|
+
}
|
|
19382
|
+
componentDidLoad() {
|
|
19383
|
+
this.watchGalleryLayoutClasses();
|
|
19384
|
+
this.warnInvalidParent();
|
|
19385
|
+
}
|
|
19386
|
+
disconnectedCallback() {
|
|
19387
|
+
var _a;
|
|
19388
|
+
(_a = this.galleryClassObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
19389
|
+
this.galleryClassObserver = undefined;
|
|
19390
|
+
this.galleryEl = undefined;
|
|
19391
|
+
}
|
|
19392
|
+
/**
|
|
19393
|
+
* Warn when the item is not a descendant of an `ion-gallery`.
|
|
19394
|
+
*/
|
|
19395
|
+
warnInvalidParent() {
|
|
19396
|
+
if (this.hasWarnedInvalidParent || this.galleryEl !== undefined) {
|
|
19397
|
+
return;
|
|
19398
|
+
}
|
|
19399
|
+
printIonWarning('[ion-gallery-item] - This component should be used as a child of an "ion-gallery" component.', this.el);
|
|
19400
|
+
this.hasWarnedInvalidParent = true;
|
|
19401
|
+
}
|
|
19402
|
+
/**
|
|
19403
|
+
* Watch the parent gallery's class list so the item can react to layout
|
|
19404
|
+
* changes (the gallery reflects its layout as a `gallery-layout-*` class).
|
|
19405
|
+
*/
|
|
19406
|
+
watchGalleryLayoutClasses() {
|
|
19407
|
+
var _a;
|
|
19408
|
+
const galleryEl = this.galleryEl;
|
|
19409
|
+
if (galleryEl === undefined) {
|
|
19410
|
+
return;
|
|
19411
|
+
}
|
|
19412
|
+
(_a = this.galleryClassObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
19413
|
+
this.galleryClassObserver = new MutationObserver(() => this.syncLayoutClasses());
|
|
19414
|
+
this.galleryClassObserver.observe(galleryEl, {
|
|
19415
|
+
attributes: true,
|
|
19416
|
+
attributeFilter: ['class'],
|
|
19417
|
+
});
|
|
19418
|
+
}
|
|
19419
|
+
syncLayoutClasses() {
|
|
19420
|
+
var _a;
|
|
19421
|
+
const layout = (_a = this.galleryEl) === null || _a === void 0 ? void 0 : _a.layout;
|
|
19422
|
+
this.galleryLayout = layout === 'masonry' || layout === 'uniform' ? layout : undefined;
|
|
19423
|
+
}
|
|
19424
|
+
render() {
|
|
19425
|
+
const { galleryLayout } = this;
|
|
19426
|
+
const theme = getIonTheme(this);
|
|
19427
|
+
return (hAsync(Host, { key: 'b3de6bf2df4af01ed274188a96d9e8cd82c9f5cd', class: {
|
|
19428
|
+
[theme]: true,
|
|
19429
|
+
'in-gallery-layout-uniform': galleryLayout === 'uniform',
|
|
19430
|
+
'in-gallery-layout-masonry': galleryLayout === 'masonry',
|
|
19431
|
+
} }, hAsync("slot", { key: '5bef4549c5101178fec9b590cb6b553ddc5376c4', onSlotchange: this.onSlotChange })));
|
|
19432
|
+
}
|
|
19433
|
+
get el() { return getElement(this); }
|
|
19434
|
+
static get style() { return galleryItemCss(); }
|
|
19435
|
+
static get cmpMeta() { return {
|
|
19436
|
+
"$flags$": 265,
|
|
19437
|
+
"$tagName$": "ion-gallery-item",
|
|
19438
|
+
"$members$": {
|
|
19439
|
+
"galleryLayout": [32]
|
|
19440
|
+
},
|
|
19441
|
+
"$listeners$": undefined,
|
|
19442
|
+
"$lazyBundleId$": "-",
|
|
19443
|
+
"$attrsToReflect$": []
|
|
19444
|
+
}; }
|
|
19445
|
+
}
|
|
19446
|
+
|
|
19497
19447
|
const gridCss = () => `:host{-webkit-padding-start:var(--ion-grid-padding-xs, var(--ion-grid-padding, 5px));padding-inline-start:var(--ion-grid-padding-xs, var(--ion-grid-padding, 5px));-webkit-padding-end:var(--ion-grid-padding-xs, var(--ion-grid-padding, 5px));padding-inline-end:var(--ion-grid-padding-xs, var(--ion-grid-padding, 5px));padding-top:var(--ion-grid-padding-xs, var(--ion-grid-padding, 5px));padding-bottom:var(--ion-grid-padding-xs, var(--ion-grid-padding, 5px));-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;display:block;-ms-flex:1;flex:1}@media (min-width: 576px){:host{-webkit-padding-start:var(--ion-grid-padding-sm, var(--ion-grid-padding, 5px));padding-inline-start:var(--ion-grid-padding-sm, var(--ion-grid-padding, 5px));-webkit-padding-end:var(--ion-grid-padding-sm, var(--ion-grid-padding, 5px));padding-inline-end:var(--ion-grid-padding-sm, var(--ion-grid-padding, 5px));padding-top:var(--ion-grid-padding-sm, var(--ion-grid-padding, 5px));padding-bottom:var(--ion-grid-padding-sm, var(--ion-grid-padding, 5px))}}@media (min-width: 768px){:host{-webkit-padding-start:var(--ion-grid-padding-md, var(--ion-grid-padding, 5px));padding-inline-start:var(--ion-grid-padding-md, var(--ion-grid-padding, 5px));-webkit-padding-end:var(--ion-grid-padding-md, var(--ion-grid-padding, 5px));padding-inline-end:var(--ion-grid-padding-md, var(--ion-grid-padding, 5px));padding-top:var(--ion-grid-padding-md, var(--ion-grid-padding, 5px));padding-bottom:var(--ion-grid-padding-md, var(--ion-grid-padding, 5px))}}@media (min-width: 992px){:host{-webkit-padding-start:var(--ion-grid-padding-lg, var(--ion-grid-padding, 5px));padding-inline-start:var(--ion-grid-padding-lg, var(--ion-grid-padding, 5px));-webkit-padding-end:var(--ion-grid-padding-lg, var(--ion-grid-padding, 5px));padding-inline-end:var(--ion-grid-padding-lg, var(--ion-grid-padding, 5px));padding-top:var(--ion-grid-padding-lg, var(--ion-grid-padding, 5px));padding-bottom:var(--ion-grid-padding-lg, var(--ion-grid-padding, 5px))}}@media (min-width: 1200px){:host{-webkit-padding-start:var(--ion-grid-padding-xl, var(--ion-grid-padding, 5px));padding-inline-start:var(--ion-grid-padding-xl, var(--ion-grid-padding, 5px));-webkit-padding-end:var(--ion-grid-padding-xl, var(--ion-grid-padding, 5px));padding-inline-end:var(--ion-grid-padding-xl, var(--ion-grid-padding, 5px));padding-top:var(--ion-grid-padding-xl, var(--ion-grid-padding, 5px));padding-bottom:var(--ion-grid-padding-xl, var(--ion-grid-padding, 5px))}}:host(.grid-fixed){width:var(--ion-grid-width-xs, var(--ion-grid-width, 100%));max-width:100%}@media (min-width: 576px){:host(.grid-fixed){width:var(--ion-grid-width-sm, var(--ion-grid-width, 540px))}}@media (min-width: 768px){:host(.grid-fixed){width:var(--ion-grid-width-md, var(--ion-grid-width, 720px))}}@media (min-width: 992px){:host(.grid-fixed){width:var(--ion-grid-width-lg, var(--ion-grid-width, 960px))}}@media (min-width: 1200px){:host(.grid-fixed){width:var(--ion-grid-width-xl, var(--ion-grid-width, 1140px))}}:host(.ion-no-padding){--ion-grid-column-padding:0;--ion-grid-column-padding-xs:0;--ion-grid-column-padding-sm:0;--ion-grid-column-padding-md:0;--ion-grid-column-padding-lg:0;--ion-grid-column-padding-xl:0}`;
|
|
19498
19448
|
|
|
19499
19449
|
/**
|
|
@@ -19510,10 +19460,10 @@ class Grid {
|
|
|
19510
19460
|
}
|
|
19511
19461
|
render() {
|
|
19512
19462
|
const theme = getIonTheme(this);
|
|
19513
|
-
return (hAsync(Host, { key: '
|
|
19463
|
+
return (hAsync(Host, { key: 'e3320fc2fc5391d26898cc119505cd3be30dd48b', class: {
|
|
19514
19464
|
[theme]: true,
|
|
19515
19465
|
'grid-fixed': this.fixed,
|
|
19516
|
-
} }, hAsync("slot", { key: '
|
|
19466
|
+
} }, hAsync("slot", { key: '2000e6b336c294aadf4585269c301d734d2fe478' })));
|
|
19517
19467
|
}
|
|
19518
19468
|
static get style() { return gridCss(); }
|
|
19519
19469
|
static get cmpMeta() { return {
|
|
@@ -19704,14 +19654,6 @@ const scaleLargeTitles = (toolbars = [], scale = 1, transition = false) => {
|
|
|
19704
19654
|
titleDiv.style.transform = `scale3d(${scale}, ${scale}, 1)`;
|
|
19705
19655
|
});
|
|
19706
19656
|
};
|
|
19707
|
-
const createHeaderHideInteraction = (headerEl, scrollEl) => createCollapseHideInteraction({
|
|
19708
|
-
regionEl: headerEl,
|
|
19709
|
-
scrollEl,
|
|
19710
|
-
slideCssVar: '--header-hide-slide-y',
|
|
19711
|
-
contentPartnerClass: 'content-header-hide-scroll-partner',
|
|
19712
|
-
contentHiddenClass: 'content-header-hide-scroll-hidden',
|
|
19713
|
-
regionHiddenClass: 'header-collapse-hide-hidden',
|
|
19714
|
-
});
|
|
19715
19657
|
const handleHeaderFade = (scrollEl, baseEl, condenseHeader) => {
|
|
19716
19658
|
readTask(() => {
|
|
19717
19659
|
const scrollTop = scrollEl.scrollTop;
|
|
@@ -19768,11 +19710,11 @@ const getRoleType = (isInsideMenu, isCondensed, theme) => {
|
|
|
19768
19710
|
return ROLE_BANNER;
|
|
19769
19711
|
};
|
|
19770
19712
|
|
|
19771
|
-
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
|
|
19713
|
+
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{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-border-default, var(--token-primitives-neutral-400, #d5d5d5))}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}}`;
|
|
19772
19714
|
|
|
19773
|
-
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
|
|
19715
|
+
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-fade.header-transitioning ion-toolbar{--background:transparent;--border-style:none}.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{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 ion-toolbar,.header-collapse-condense-inactive.header-transitioning:not(.header-collapse-condense) ion-toolbar{--background:var(--ion-background-color, #fff)}.header-collapse-condense-inactive.header-transitioning:not(.header-collapse-condense) ion-toolbar{--border-style:none;--opacity-scale:1}.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}`;
|
|
19774
19716
|
|
|
19775
|
-
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
|
|
19717
|
+
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-md.header-collapse-condense{display:none}.header-md.ion-no-border{-webkit-box-shadow:none;box-shadow:none}`;
|
|
19776
19718
|
|
|
19777
19719
|
/**
|
|
19778
19720
|
* @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
|
|
@@ -19782,7 +19724,6 @@ class Header {
|
|
|
19782
19724
|
constructor(hostRef) {
|
|
19783
19725
|
registerInstance(this, hostRef);
|
|
19784
19726
|
this.inheritedAttributes = {};
|
|
19785
|
-
this.didLoad = false;
|
|
19786
19727
|
/**
|
|
19787
19728
|
* If `true`, the header will have a line at the bottom.
|
|
19788
19729
|
* TODO(ROU-10855): add support for this prop on ios/md themes
|
|
@@ -19813,37 +19754,25 @@ class Header {
|
|
|
19813
19754
|
this.inheritedAttributes = inheritAriaAttributes(this.el);
|
|
19814
19755
|
}
|
|
19815
19756
|
componentDidLoad() {
|
|
19816
|
-
this.didLoad = true;
|
|
19817
19757
|
this.checkCollapsibleHeader();
|
|
19818
19758
|
}
|
|
19819
19759
|
componentDidUpdate() {
|
|
19820
19760
|
this.checkCollapsibleHeader();
|
|
19821
19761
|
}
|
|
19822
|
-
connectedCallback() {
|
|
19823
|
-
// On re-attach (didLoad already true but disconnectedCallback ran since),
|
|
19824
|
-
// componentDidLoad will not fire again — re-run setup here.
|
|
19825
|
-
if (this.didLoad) {
|
|
19826
|
-
this.checkCollapsibleHeader();
|
|
19827
|
-
}
|
|
19828
|
-
}
|
|
19829
19762
|
disconnectedCallback() {
|
|
19830
19763
|
this.destroyCollapsibleHeader();
|
|
19831
19764
|
}
|
|
19832
19765
|
async checkCollapsibleHeader() {
|
|
19833
19766
|
const theme = getIonTheme(this);
|
|
19767
|
+
if (theme !== 'ios') {
|
|
19768
|
+
return;
|
|
19769
|
+
}
|
|
19834
19770
|
const { collapse } = this;
|
|
19835
19771
|
const hasCondense = collapse === 'condense';
|
|
19836
19772
|
const hasFade = collapse === 'fade';
|
|
19837
|
-
const hasHide = collapse === 'hide';
|
|
19838
|
-
const runIosCollapse = theme === 'ios' && (hasCondense || hasFade);
|
|
19839
|
-
const runHide = hasHide;
|
|
19840
|
-
if (!runIosCollapse && !runHide) {
|
|
19841
|
-
this.destroyCollapsibleHeader();
|
|
19842
|
-
return;
|
|
19843
|
-
}
|
|
19844
19773
|
this.destroyCollapsibleHeader();
|
|
19845
19774
|
const appRootSelector = config.get('appRootSelector', 'ion-app');
|
|
19846
|
-
if (
|
|
19775
|
+
if (hasCondense) {
|
|
19847
19776
|
const pageEl = this.el.closest(`${appRootSelector},ion-page,.ion-page,page-inner`);
|
|
19848
19777
|
const contentEl = pageEl ? findIonContent(pageEl) : null;
|
|
19849
19778
|
// Cloned elements are always needed in iOS transition
|
|
@@ -19854,7 +19783,7 @@ class Header {
|
|
|
19854
19783
|
});
|
|
19855
19784
|
await this.setupCondenseHeader(contentEl, pageEl);
|
|
19856
19785
|
}
|
|
19857
|
-
else if (
|
|
19786
|
+
else if (hasFade) {
|
|
19858
19787
|
const pageEl = this.el.closest(`${appRootSelector},ion-page,.ion-page,page-inner`);
|
|
19859
19788
|
const contentEl = pageEl ? findIonContent(pageEl) : null;
|
|
19860
19789
|
if (!contentEl) {
|
|
@@ -19864,29 +19793,12 @@ class Header {
|
|
|
19864
19793
|
const condenseHeader = contentEl.querySelector('ion-header[collapse="condense"]');
|
|
19865
19794
|
await this.setupFadeHeader(contentEl, condenseHeader);
|
|
19866
19795
|
}
|
|
19867
|
-
if (runHide) {
|
|
19868
|
-
const pageEl = this.el.closest(`${appRootSelector},ion-page,.ion-page,page-inner`);
|
|
19869
|
-
const contentEl = pageEl ? findIonContent(pageEl) : null;
|
|
19870
|
-
if (!contentEl) {
|
|
19871
|
-
printIonContentErrorMsg(this.el);
|
|
19872
|
-
return;
|
|
19873
|
-
}
|
|
19874
|
-
await this.setupHideHeader(contentEl);
|
|
19875
|
-
}
|
|
19876
|
-
}
|
|
19877
|
-
async setupHideHeader(contentEl) {
|
|
19878
|
-
const scrollEl = (this.scrollEl = await getScrollElement(contentEl));
|
|
19879
|
-
this.headerHideCleanup = createHeaderHideInteraction(this.el, scrollEl);
|
|
19880
19796
|
}
|
|
19881
19797
|
destroyCollapsibleHeader() {
|
|
19882
19798
|
if (this.intersectionObserver) {
|
|
19883
19799
|
this.intersectionObserver.disconnect();
|
|
19884
19800
|
this.intersectionObserver = undefined;
|
|
19885
19801
|
}
|
|
19886
|
-
if (this.headerHideCleanup) {
|
|
19887
|
-
this.headerHideCleanup();
|
|
19888
|
-
this.headerHideCleanup = undefined;
|
|
19889
|
-
}
|
|
19890
19802
|
if (this.scrollEl && this.contentScrollCallback) {
|
|
19891
19803
|
this.scrollEl.removeEventListener('scroll', this.contentScrollCallback);
|
|
19892
19804
|
this.contentScrollCallback = undefined;
|
|
@@ -19953,7 +19865,7 @@ class Header {
|
|
|
19953
19865
|
const isCondensed = collapse === 'condense';
|
|
19954
19866
|
// banner role must be at top level, so remove role if inside a menu
|
|
19955
19867
|
const roleType = getRoleType(hostContext('ion-menu', this.el), isCondensed, theme);
|
|
19956
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
19868
|
+
return (hAsync(Host, Object.assign({ key: '3395dedfd5165ba6e9f3ad1a25f0bb5b3678704a', role: roleType, class: {
|
|
19957
19869
|
[theme]: true,
|
|
19958
19870
|
// Used internally for styling
|
|
19959
19871
|
[`header-${theme}`]: true,
|
|
@@ -19961,7 +19873,7 @@ class Header {
|
|
|
19961
19873
|
[`header-collapse-${collapse}`]: true,
|
|
19962
19874
|
[`header-translucent-${theme}`]: this.translucent,
|
|
19963
19875
|
['header-divider']: divider,
|
|
19964
|
-
} }, inheritedAttributes), theme !== 'md' && translucent && hAsync("div", { key: '
|
|
19876
|
+
} }, inheritedAttributes), theme !== 'md' && translucent && hAsync("div", { key: 'cafeb88b6e73d64b264514ea46590fd3477b3052', class: "header-background" }), hAsync("slot", { key: 'ad681aaf866d7e7a5e5e731c0b5d6f5cc9fe94d2' })));
|
|
19965
19877
|
}
|
|
19966
19878
|
get el() { return getElement(this); }
|
|
19967
19879
|
static get style() { return {
|
|
@@ -20312,9 +20224,9 @@ class Img {
|
|
|
20312
20224
|
const { loadSrc, alt, onLoad, loadError, inheritedAttributes } = this;
|
|
20313
20225
|
const { draggable } = inheritedAttributes;
|
|
20314
20226
|
const theme = getIonTheme(this);
|
|
20315
|
-
return (hAsync(Host, { key: '
|
|
20227
|
+
return (hAsync(Host, { key: 'ba84621055567b2a35387709d9d89b97ad853274', class: {
|
|
20316
20228
|
[theme]: true,
|
|
20317
|
-
} }, hAsync("img", { key: '
|
|
20229
|
+
} }, hAsync("img", { key: '9d6118bbf69e2cccbb0603802c03b9a0d101e2c3', decoding: "async", src: loadSrc, alt: alt, onLoad: onLoad, onError: loadError, part: "image", draggable: isDraggable(draggable) })));
|
|
20318
20230
|
}
|
|
20319
20231
|
get el() { return getElement(this); }
|
|
20320
20232
|
static get watchers() { return {
|
|
@@ -20619,7 +20531,7 @@ class InfiniteScroll {
|
|
|
20619
20531
|
render() {
|
|
20620
20532
|
const theme = getIonTheme(this);
|
|
20621
20533
|
const disabled = this.disabled;
|
|
20622
|
-
return (hAsync(Host, { key: '
|
|
20534
|
+
return (hAsync(Host, { key: 'e3a3cde079dfd6f07e565eb462765df757cbb128', class: {
|
|
20623
20535
|
[theme]: true,
|
|
20624
20536
|
'infinite-scroll-loading': this.isLoading,
|
|
20625
20537
|
'infinite-scroll-enabled': !disabled,
|
|
@@ -20682,11 +20594,11 @@ class InfiniteScrollContent {
|
|
|
20682
20594
|
}
|
|
20683
20595
|
render() {
|
|
20684
20596
|
const theme = getIonTheme(this);
|
|
20685
|
-
return (hAsync(Host, { key: '
|
|
20597
|
+
return (hAsync(Host, { key: '263a27297159ced042f7552a1e14b8c6aba62fa8', class: {
|
|
20686
20598
|
[theme]: true,
|
|
20687
20599
|
// Used internally for styling
|
|
20688
20600
|
[`infinite-scroll-content-${theme}`]: true,
|
|
20689
|
-
} }, hAsync("div", { key: '
|
|
20601
|
+
} }, hAsync("div", { key: 'ee38d3c52df9dc5de186406b3087f20917a17252', class: "infinite-loading" }, this.loadingSpinner && (hAsync("div", { key: 'e2348727f79a26f52f42641d4334a0ba9d4aa03e', class: "infinite-loading-spinner" }, hAsync("ion-spinner", { key: '41be6f2747f3af5f46c8738e2ef56083ecd95e99', name: this.loadingSpinner }))), this.loadingText !== undefined && this.renderLoadingText())));
|
|
20690
20602
|
}
|
|
20691
20603
|
static get style() { return {
|
|
20692
20604
|
ionic: ionicInfiniteScrollContentMdCss(),
|
|
@@ -21434,7 +21346,7 @@ class Input {
|
|
|
21434
21346
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
21435
21347
|
*/
|
|
21436
21348
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
|
|
21437
|
-
return (hAsync(Host, { key: '
|
|
21349
|
+
return (hAsync(Host, { key: '3da29d837b5abe22de740ac96c8142422fce537a', class: createColorClasses$1(this.color, {
|
|
21438
21350
|
[theme]: true,
|
|
21439
21351
|
'has-value': hasValue,
|
|
21440
21352
|
'has-focus': hasFocus,
|
|
@@ -21447,7 +21359,7 @@ class Input {
|
|
|
21447
21359
|
'in-item-color': hostContext('ion-item.ion-color', this.el),
|
|
21448
21360
|
'input-disabled': disabled,
|
|
21449
21361
|
'input-readonly': readonly,
|
|
21450
|
-
}) }, hAsync("label", { key: '
|
|
21362
|
+
}) }, hAsync("label", { key: '142a8230382a05938887e9c0790832218ac37697', class: "input-wrapper", htmlFor: inputId, onClick: this.onLabelClick }, this.renderLabelContainer(), hAsync("div", { key: '953f247ea2f40545e01e0346549d9b7aa344b720', class: "native-wrapper", onClick: this.onLabelClick },
|
|
21451
21363
|
/**
|
|
21452
21364
|
* For the ionic theme, we render the outline container here
|
|
21453
21365
|
* instead of higher up, so it can be positioned relative to
|
|
@@ -21457,14 +21369,14 @@ class Input {
|
|
|
21457
21369
|
* <label> element, ensuring that clicking the label text
|
|
21458
21370
|
* focuses the input.
|
|
21459
21371
|
*/
|
|
21460
|
-
theme === 'ionic' && hAsync("div", { key: '
|
|
21372
|
+
theme === 'ionic' && hAsync("div", { key: 'fd09b37c6a798900c5074e7cbe2e790ea050c29d', class: "input-outline" }), hAsync("slot", { key: '3eef4c4748104d8722f3254a04ff88e2b70c560e', name: "start" }), hAsync("input", Object.assign({ key: '012a3fa52e19422d7fbc227845e9771c7d8fbe4a', class: "native-input", ref: (input) => (this.nativeInput = input), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, multiple: this.multiple, name: this.name, pattern: this.pattern, placeholder: this.placeholder || '', readOnly: readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, type: this.type, value: value, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeydown, onCompositionstart: this.onCompositionStart, onCompositionend: this.onCompositionEnd, "aria-describedby": this.getHintTextID(), "aria-invalid": this.isInvalid ? 'true' : undefined, "aria-labelledby": this.getLabelledById() }, this.inheritedAttributes)), clearInput && !readonly && !disabled && (hAsync("button", { key: 'b115494d9611aea57a976d3102026f3d9b430bfb', "aria-label": "reset", type: "button", class: "input-clear-icon", onPointerDown: (ev) => {
|
|
21461
21373
|
/**
|
|
21462
21374
|
* This prevents mobile browsers from
|
|
21463
21375
|
* blurring the input when the clear
|
|
21464
21376
|
* button is activated.
|
|
21465
21377
|
*/
|
|
21466
21378
|
ev.preventDefault();
|
|
21467
|
-
}, onClick: this.clearTextInput }, hAsync("ion-icon", { key: '
|
|
21379
|
+
}, onClick: this.clearTextInput }, hAsync("ion-icon", { key: 'a259afa47a9914b2e0656364bed40644fa2c87c4', "aria-hidden": "true", icon: inputClearIcon }))), hAsync("slot", { key: 'beec86eb500f6b335149c8734afc7c3945a10219', name: "end" })), shouldRenderHighlight && hAsync("div", { key: '77a25d118934f369e09edbc2ffa6f90e3e760338', class: "input-highlight" })), this.renderBottomContent()));
|
|
21468
21380
|
}
|
|
21469
21381
|
get el() { return getElement(this); }
|
|
21470
21382
|
static get watchers() { return {
|
|
@@ -22229,7 +22141,7 @@ class InputOTP {
|
|
|
22229
22141
|
const tabbableIndex = this.getTabbableIndex();
|
|
22230
22142
|
const pattern = this.getPattern();
|
|
22231
22143
|
const hasDescription = ((_b = (_a = el.querySelector('.input-otp-description')) === null || _a === void 0 ? void 0 : _a.textContent) === null || _b === void 0 ? void 0 : _b.trim()) !== '';
|
|
22232
|
-
return (hAsync(Host, { key: '
|
|
22144
|
+
return (hAsync(Host, { key: 'f39e98cd24cbf50f7db4e891dda9499f6def7986', class: createColorClasses$1(color, {
|
|
22233
22145
|
[mode]: true,
|
|
22234
22146
|
'has-focus': hasFocus,
|
|
22235
22147
|
[`input-otp-size-${size}`]: true,
|
|
@@ -22237,10 +22149,10 @@ class InputOTP {
|
|
|
22237
22149
|
[`input-otp-fill-${fill}`]: true,
|
|
22238
22150
|
'input-otp-disabled': disabled,
|
|
22239
22151
|
'input-otp-readonly': readonly,
|
|
22240
|
-
}) }, hAsync("div", Object.assign({ key: '
|
|
22152
|
+
}) }, hAsync("div", Object.assign({ key: '624adcd552947708162003353b331cd92df062ef', role: "group", "aria-label": "One-time password input", class: "input-otp-group", part: "group" }, inheritedAttributes), Array.from({ length }).map((_, index) => (hAsync(Fragment, null, hAsync("div", { class: "native-wrapper", part: "container" }, hAsync("input", { class: "native-input", part: "native", id: `${inputId}-${index}`, "aria-label": `Input ${index + 1} of ${length}`, type: "text", autoCapitalize: autocapitalize, inputmode: inputmode, pattern: pattern, disabled: disabled, readOnly: readonly, tabIndex: index === tabbableIndex ? 0 : -1, value: inputValues[index] || '', autocomplete: "one-time-code", ref: (el) => (inputRefs[index] = el), onInput: this.onInput(index), onBlur: this.onBlur, onFocus: this.onFocus(index), onKeyDown: this.onKeyDown(index), onPaste: this.onPaste })), this.showSeparator(index) && hAsync("div", { class: "input-otp-separator", part: "separator" }))))), hAsync("div", { key: 'c518d83ab0236a3ebbe631582ce6f1c2edfbcd29', class: {
|
|
22241
22153
|
'input-otp-description': true,
|
|
22242
22154
|
'input-otp-description-hidden': !hasDescription,
|
|
22243
|
-
}, part: "description" }, hAsync("slot", { key: '
|
|
22155
|
+
}, part: "description" }, hAsync("slot", { key: '15c7c8549c1788748e1ae31bd227a7f918cb5eca' }))));
|
|
22244
22156
|
}
|
|
22245
22157
|
static get formAssociated() { return true; }
|
|
22246
22158
|
get el() { return getElement(this); }
|
|
@@ -22388,16 +22300,16 @@ class InputPasswordToggle {
|
|
|
22388
22300
|
const { color, inputPasswordHideIcon, inputPasswordShowIcon, type } = this;
|
|
22389
22301
|
const mode = getIonMode$1(this);
|
|
22390
22302
|
const isPasswordVisible = type === 'text';
|
|
22391
|
-
return (hAsync(Host, { key: '
|
|
22303
|
+
return (hAsync(Host, { key: 'f11e3bf4d3255e003aec504e6dd3ee1e0caaf767', class: createColorClasses$1(color, {
|
|
22392
22304
|
[mode]: true,
|
|
22393
|
-
}) }, hAsync("ion-button", { key: '
|
|
22305
|
+
}) }, hAsync("ion-button", { key: '5bba43f7755857fd9347612bb906c389b60386b4', mode: mode, color: color, fill: "clear", shape: "round", "aria-label": isPasswordVisible ? 'Hide password' : 'Show password', "aria-pressed": isPasswordVisible ? 'true' : 'false', type: "button", onPointerDown: (ev) => {
|
|
22394
22306
|
/**
|
|
22395
22307
|
* This prevents mobile browsers from
|
|
22396
22308
|
* blurring the input when the password toggle
|
|
22397
22309
|
* button is activated.
|
|
22398
22310
|
*/
|
|
22399
22311
|
ev.preventDefault();
|
|
22400
|
-
}, onClick: this.togglePasswordVisibility }, hAsync("ion-icon", { key: '
|
|
22312
|
+
}, onClick: this.togglePasswordVisibility }, hAsync("ion-icon", { key: 'c0eb0e4e2f3e9553bfd519ff655064c9f62af406', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? inputPasswordHideIcon : inputPasswordShowIcon }))));
|
|
22401
22313
|
}
|
|
22402
22314
|
get el() { return getElement(this); }
|
|
22403
22315
|
static get watchers() { return {
|
|
@@ -22772,11 +22684,11 @@ class ItemDivider {
|
|
|
22772
22684
|
}
|
|
22773
22685
|
render() {
|
|
22774
22686
|
const theme = getIonTheme(this);
|
|
22775
|
-
return (hAsync(Host, { key: '
|
|
22687
|
+
return (hAsync(Host, { key: 'dc73f348b5376faa40ba4bc6bba3d5c9e5ec5ab2', class: createColorClasses$1(this.color, {
|
|
22776
22688
|
[theme]: true,
|
|
22777
22689
|
'item-divider-sticky': this.sticky,
|
|
22778
22690
|
item: true,
|
|
22779
|
-
}) }, hAsync("slot", { key: '
|
|
22691
|
+
}) }, hAsync("slot", { key: '0f535b2cf91f2ec042aa59a89498cfa0e4d541a0', name: "start" }), hAsync("div", { key: '867c8c1a1bd273a5f5018f77785f11d58152e8b9', class: "item-divider-inner", part: "inner" }, hAsync("div", { key: 'c32b2a5658d27cf5d8cd8ffbfa476c02755e1afd', class: "item-divider-wrapper", part: "container" }, hAsync("slot", { key: 'f8b0fea29a910cd2e36301586532be3a8348c31e' })), hAsync("slot", { key: '418750f630c851cf04b6a278c1666c6cf33c113c', name: "end" }))));
|
|
22780
22692
|
}
|
|
22781
22693
|
get el() { return getElement(this); }
|
|
22782
22694
|
static get style() { return {
|
|
@@ -22813,7 +22725,7 @@ class ItemGroup {
|
|
|
22813
22725
|
}
|
|
22814
22726
|
render() {
|
|
22815
22727
|
const theme = getIonTheme(this);
|
|
22816
|
-
return (hAsync(Host, { key: '
|
|
22728
|
+
return (hAsync(Host, { key: '017c8f7cd0258e1864423337ddd1b1cb522f64ed', role: "group", class: {
|
|
22817
22729
|
[theme]: true,
|
|
22818
22730
|
// Used internally for styling
|
|
22819
22731
|
[`item-group-${theme}`]: true,
|
|
@@ -22909,14 +22821,14 @@ class ItemOption {
|
|
|
22909
22821
|
href: this.href,
|
|
22910
22822
|
target: this.target,
|
|
22911
22823
|
};
|
|
22912
|
-
return (hAsync(Host, { key: '
|
|
22824
|
+
return (hAsync(Host, { key: '8f1bad23fd3ccbb9d54d57765e6731cd2ee07306', onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
22913
22825
|
[theme]: true,
|
|
22914
22826
|
[`item-option-${shape}`]: shape !== undefined,
|
|
22915
22827
|
[`item-option-${hue}`]: hue !== undefined,
|
|
22916
22828
|
'item-option-disabled': disabled,
|
|
22917
22829
|
'item-option-expandable': expandable,
|
|
22918
22830
|
'ion-activatable': true,
|
|
22919
|
-
}) }, hAsync(TagType, Object.assign({ key: '
|
|
22831
|
+
}) }, hAsync(TagType, Object.assign({ key: '2baf904e356a87ed463ee5f517e0e95f90b2ef30' }, attrs, { class: "button-native", part: "native", disabled: disabled }), hAsync("span", { key: '49b627f72dffd1b150ccd808b1b1f63bbe78e2de', class: "button-inner", part: "inner" }, hAsync("slot", { key: 'cdb52f76f1d7e5df411215f17eb76ad25e36241a', name: "top" }), hAsync("div", { key: '864204667c6e3ba6f989b24e96c131b67e55d408', class: "horizontal-wrapper", part: "container" }, hAsync("slot", { key: '474f4aab708842bb7ef74cb6f1fbe601ceff82cf', name: "start" }), hAsync("slot", { key: '2bd726c5ba3ee079a623f1f6229d1ac2afd3e291', name: "icon-only" }), hAsync("slot", { key: '2d1a673c447ebf82c92f944ec9e83a5b38698307' }), hAsync("slot", { key: '8d0f9337cd84c725190cffd25d74044075e85ab0', name: "end" })), hAsync("slot", { key: 'a674039b26d9cbb886e88ea721bbc210484aba9f', name: "bottom" })), theme === 'md' && hAsync("ion-ripple-effect", { key: '3e45bf18b7992943c47ece47e9358f4da0b8e865' }))));
|
|
22920
22832
|
}
|
|
22921
22833
|
get el() { return getElement(this); }
|
|
22922
22834
|
static get style() { return {
|
|
@@ -22974,7 +22886,7 @@ class ItemOptions {
|
|
|
22974
22886
|
render() {
|
|
22975
22887
|
const theme = getIonTheme(this);
|
|
22976
22888
|
const isEnd = isEndSide(this.side);
|
|
22977
|
-
return (hAsync(Host, { key: '
|
|
22889
|
+
return (hAsync(Host, { key: 'ed05ceebf2cda943ac9efea2f91b71f7e8fc55e8', class: {
|
|
22978
22890
|
[theme]: true,
|
|
22979
22891
|
// Used internally for styling
|
|
22980
22892
|
[`item-options-${theme}`]: true,
|
|
@@ -23826,7 +23738,7 @@ class ItemSliding {
|
|
|
23826
23738
|
}
|
|
23827
23739
|
render() {
|
|
23828
23740
|
const theme = getIonTheme(this);
|
|
23829
|
-
return (hAsync(Host, { key: '
|
|
23741
|
+
return (hAsync(Host, { key: '47de8c8a9721f9223b42d6722a9ad32f378818aa', class: {
|
|
23830
23742
|
[theme]: true,
|
|
23831
23743
|
'item-sliding-active-slide': this.state !== 2 /* SlidingState.Disabled */,
|
|
23832
23744
|
'item-sliding-active-options-end': (this.state & 8 /* SlidingState.End */) !== 0,
|
|
@@ -23945,13 +23857,13 @@ class Label {
|
|
|
23945
23857
|
render() {
|
|
23946
23858
|
const position = this.position;
|
|
23947
23859
|
const theme = getIonTheme(this);
|
|
23948
|
-
return (hAsync(Host, { key: '
|
|
23860
|
+
return (hAsync(Host, { key: 'b1f261db441bcb0a325a5b3e21da17764a56f17c', class: createColorClasses$1(this.color, {
|
|
23949
23861
|
[theme]: true,
|
|
23950
23862
|
'in-item-color': hostContext('ion-item.ion-color', this.el),
|
|
23951
23863
|
[`label-${position}`]: position !== undefined,
|
|
23952
23864
|
[`label-no-animate`]: this.noAnimate,
|
|
23953
23865
|
'label-rtl': document.dir === 'rtl',
|
|
23954
|
-
}) }, hAsync("slot", { key: '
|
|
23866
|
+
}) }, hAsync("slot", { key: '490444c8c0d4cf72eae3f8abfb7ed7ecc30bb213' })));
|
|
23955
23867
|
}
|
|
23956
23868
|
get el() { return getElement(this); }
|
|
23957
23869
|
static get watchers() { return {
|
|
@@ -24031,7 +23943,7 @@ class List {
|
|
|
24031
23943
|
const theme = getIonTheme(this);
|
|
24032
23944
|
const shape = this.getShape();
|
|
24033
23945
|
const { lines, inset } = this;
|
|
24034
|
-
return (hAsync(Host, { key: '
|
|
23946
|
+
return (hAsync(Host, { key: '9be30ff6e75e020c0db7054800cb874efef26bd8', role: "list", class: {
|
|
24035
23947
|
[theme]: true,
|
|
24036
23948
|
// Used internally for styling
|
|
24037
23949
|
[`list-${theme}`]: true,
|
|
@@ -24081,10 +23993,10 @@ class ListHeader {
|
|
|
24081
23993
|
render() {
|
|
24082
23994
|
const { lines } = this;
|
|
24083
23995
|
const theme = getIonTheme(this);
|
|
24084
|
-
return (hAsync(Host, { key: '
|
|
23996
|
+
return (hAsync(Host, { key: '7a1632a069317285210f4aeae50a6f2ef6955c56', class: createColorClasses$1(this.color, {
|
|
24085
23997
|
[theme]: true,
|
|
24086
23998
|
[`list-header-lines-${lines}`]: lines !== undefined,
|
|
24087
|
-
}) }, hAsync("div", { key: '
|
|
23999
|
+
}) }, hAsync("div", { key: 'a9a9463f209023da222f38a78126d5aaeb2f03b9', class: "list-header-inner", part: "inner" }, hAsync("slot", { key: 'e3c6ec1b588392d347844d59d338abc339e80634' }))));
|
|
24088
24000
|
}
|
|
24089
24001
|
static get style() { return {
|
|
24090
24002
|
ionic: listHeaderIonicCss(),
|
|
@@ -24373,9 +24285,9 @@ class Loading {
|
|
|
24373
24285
|
* Otherwise, don't set aria-labelledby.
|
|
24374
24286
|
*/
|
|
24375
24287
|
const ariaLabelledBy = message !== undefined ? msgId : null;
|
|
24376
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
24288
|
+
return (hAsync(Host, Object.assign({ key: '2ffae36b20a7d7f3a752a062d90062583e31d053', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
|
|
24377
24289
|
zIndex: `${40000 + this.overlayIndex}`,
|
|
24378
|
-
}, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [theme]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), hAsync("ion-backdrop", { key: '
|
|
24290
|
+
}, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [theme]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), hAsync("ion-backdrop", { key: 'a6d8cac2c34a0905ec67a2c64be7ec12cc84f168', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: 'cd011d86f20869096a8546f098fb5edad44033a1', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: '70298be2139d6004e0f8fc5a85c5d05f1efdc347', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (hAsync("div", { key: '32aef90695d91e0a82696abbce96ba29cb1a2608', class: "loading-spinner" }, hAsync("ion-spinner", { key: '7ae69c27be273cf3e83230dae043168df27ac27e', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), hAsync("div", { key: 'f13a01b31516c3fe85dd3a623962290c03e7412f', tabindex: "0", "aria-hidden": "true" })));
|
|
24379
24291
|
}
|
|
24380
24292
|
get el() { return getElement(this); }
|
|
24381
24293
|
static get watchers() { return {
|
|
@@ -25436,14 +25348,14 @@ class Menu {
|
|
|
25436
25348
|
* the ionBackButton listener in the menu controller
|
|
25437
25349
|
* will handle closing the menu when Escape is pressed.
|
|
25438
25350
|
*/
|
|
25439
|
-
return (hAsync(Host, { key: '
|
|
25351
|
+
return (hAsync(Host, { key: '76e15d710fbbbd2e64795224decc3673fd160db0', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
|
|
25440
25352
|
[theme]: true,
|
|
25441
25353
|
[`menu-type-${type}`]: true,
|
|
25442
25354
|
'menu-enabled': !disabled,
|
|
25443
25355
|
[`menu-side-${side}`]: true,
|
|
25444
25356
|
'menu-pane-visible': isPaneVisible,
|
|
25445
25357
|
'split-pane-side': hostContext('ion-split-pane', el),
|
|
25446
|
-
} }, hAsync("div", { key: '
|
|
25358
|
+
} }, hAsync("div", { key: 'cc0a0773caff97aefa98015bf3e36631173d2b4f', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, hAsync("slot", { key: '0b90d1248bdf3bedafda7913189635c8d010abb6' })), hAsync("ion-backdrop", { key: '4fb7013bc61161e6e336541ed25605219410f749', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
|
|
25447
25359
|
}
|
|
25448
25360
|
get el() { return getElement(this); }
|
|
25449
25361
|
static get watchers() { return {
|
|
@@ -25577,7 +25489,7 @@ class MenuButton {
|
|
|
25577
25489
|
type: this.type,
|
|
25578
25490
|
};
|
|
25579
25491
|
const ariaLabel = inheritedAttributes['aria-label'] || 'menu';
|
|
25580
|
-
return (hAsync(Host, { key: '
|
|
25492
|
+
return (hAsync(Host, { key: '341ca3bfac81ce4432eef5d2fd738becd1dfb07e', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses$1(color, {
|
|
25581
25493
|
[theme]: true,
|
|
25582
25494
|
button: true, // ion-buttons target .button
|
|
25583
25495
|
'menu-button-hidden': hidden,
|
|
@@ -25586,7 +25498,7 @@ class MenuButton {
|
|
|
25586
25498
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
25587
25499
|
'ion-activatable': true,
|
|
25588
25500
|
'ion-focusable': true,
|
|
25589
|
-
}) }, hAsync("button", Object.assign({ key: '
|
|
25501
|
+
}) }, hAsync("button", Object.assign({ key: '6e6229df2fc1f2d18294a5fbf7fe71e7dd47666a' }, attrs, { disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }), hAsync("span", { key: '0216acbf67d7aa5edc52328f7ded4cb98bc8a237', class: "button-inner" }, hAsync("slot", { key: '5c2cdae42add9a25d3e6323048fcbc6b5fc9b32e' }, hAsync("ion-icon", { key: '5b38c283957cd2f1ad659427dec612fc84fc054f', part: "icon", icon: menuIcon, lazy: false, "aria-hidden": "true" }))), theme === 'md' && hAsync("ion-ripple-effect", { key: 'adabe4ffa1d66fe36d55294d774db9c4bba1ad76', type: "unbounded" }))));
|
|
25590
25502
|
}
|
|
25591
25503
|
get el() { return getElement(this); }
|
|
25592
25504
|
static get style() { return {
|
|
@@ -25643,10 +25555,10 @@ class MenuToggle {
|
|
|
25643
25555
|
render() {
|
|
25644
25556
|
const theme = getIonTheme(this);
|
|
25645
25557
|
const hidden = this.autoHide && !this.visible;
|
|
25646
|
-
return (hAsync(Host, { key: '
|
|
25558
|
+
return (hAsync(Host, { key: '9ef631d9ae370a8740e691d281863203bfdddc38', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
|
|
25647
25559
|
[theme]: true,
|
|
25648
25560
|
'menu-toggle-hidden': hidden,
|
|
25649
|
-
} }, hAsync("slot", { key: '
|
|
25561
|
+
} }, hAsync("slot", { key: 'f8d9dfc562ed625ae47ec771ef6b2ea04bc463f4' })));
|
|
25650
25562
|
}
|
|
25651
25563
|
static get style() { return menuToggleCss(); }
|
|
25652
25564
|
static get cmpMeta() { return {
|
|
@@ -29149,20 +29061,20 @@ class Modal {
|
|
|
29149
29061
|
const isHandleCycle = handleBehavior === 'cycle';
|
|
29150
29062
|
const shape = this.getShape();
|
|
29151
29063
|
const isSheetModalWithHandle = isSheetModal && showHandle;
|
|
29152
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
29064
|
+
return (hAsync(Host, Object.assign({ key: '6bd3c3a93a771d6b0c22626ea50f5a1c6d16f175', "no-router": true,
|
|
29153
29065
|
// Allow the modal to be navigable when the handle is focusable
|
|
29154
29066
|
tabIndex: isHandleCycle && isSheetModalWithHandle ? 0 : -1 }, htmlAttributes, { style: {
|
|
29155
29067
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
29156
|
-
}, class: Object.assign({ [theme]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-${shape}`]: shape !== undefined, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), hAsync("ion-backdrop", { key: '
|
|
29068
|
+
}, class: Object.assign({ [theme]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-${shape}`]: shape !== undefined, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), hAsync("ion-backdrop", { key: '4a95da95bb355d68fa290275a3199e5bf0968941', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), theme === 'ios' && hAsync("div", { key: 'e015746ae59a89fb228e1d5b046f291dc66c117e', class: "modal-shadow" }), hAsync("div", Object.assign({ key: '1b2be6c696e729f750b07958be3f42e1cfd5ad8a',
|
|
29157
29069
|
/*
|
|
29158
29070
|
role and aria-modal must be used on the
|
|
29159
29071
|
same element. They must also be set inside the
|
|
29160
29072
|
shadow DOM otherwise ion-button will not be highlighted
|
|
29161
29073
|
when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
|
|
29162
29074
|
*/
|
|
29163
|
-
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: '
|
|
29075
|
+
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: '6b67921744aa4eb8776247cde85b083d0d02604a', class: "modal-handle",
|
|
29164
29076
|
// Prevents the handle from receiving keyboard focus when it does not cycle
|
|
29165
|
-
tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle", ref: (el) => (this.dragHandleEl = el) })), hAsync("slot", { key: '
|
|
29077
|
+
tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle", ref: (el) => (this.dragHandleEl = el) })), hAsync("slot", { key: '3e9d7f8e778bdf4cfd294f1e68af9d0dd2a9ee76', onSlotchange: this.onSlotChange }))));
|
|
29166
29078
|
}
|
|
29167
29079
|
get el() { return getElement(this); }
|
|
29168
29080
|
static get watchers() { return {
|
|
@@ -30122,7 +30034,7 @@ class Nav {
|
|
|
30122
30034
|
}
|
|
30123
30035
|
}
|
|
30124
30036
|
render() {
|
|
30125
|
-
return hAsync("slot", { key: '
|
|
30037
|
+
return hAsync("slot", { key: '3dfe9c2a5f3ea75cb6d82b76b240733105cddfad' });
|
|
30126
30038
|
}
|
|
30127
30039
|
get el() { return getElement(this); }
|
|
30128
30040
|
static get watchers() { return {
|
|
@@ -30203,7 +30115,7 @@ class NavLink {
|
|
|
30203
30115
|
};
|
|
30204
30116
|
}
|
|
30205
30117
|
render() {
|
|
30206
|
-
return hAsync(Host, { key: '
|
|
30118
|
+
return hAsync(Host, { key: '476bfb5bb6fba4f422ec40315fc3ef466d01f757', onClick: this.onClick });
|
|
30207
30119
|
}
|
|
30208
30120
|
get el() { return getElement(this); }
|
|
30209
30121
|
static get cmpMeta() { return {
|
|
@@ -30237,9 +30149,9 @@ class Note {
|
|
|
30237
30149
|
}
|
|
30238
30150
|
render() {
|
|
30239
30151
|
const theme = getIonTheme(this);
|
|
30240
|
-
return (hAsync(Host, { key: '
|
|
30152
|
+
return (hAsync(Host, { key: '376ae1c66c19d1bdd74a2371c0639ed9e49648b5', class: createColorClasses$1(this.color, {
|
|
30241
30153
|
[theme]: true,
|
|
30242
|
-
}) }, hAsync("slot", { key: '
|
|
30154
|
+
}) }, hAsync("slot", { key: 'f8168cd88bb21c5e5a2b03c29539729fb38a19fd' })));
|
|
30243
30155
|
}
|
|
30244
30156
|
static get style() { return {
|
|
30245
30157
|
ionic: ionicNoteMdCss(),
|
|
@@ -31005,11 +30917,11 @@ class Picker {
|
|
|
31005
30917
|
render() {
|
|
31006
30918
|
const { htmlAttributes } = this;
|
|
31007
30919
|
const theme = getIonTheme(this);
|
|
31008
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
30920
|
+
return (hAsync(Host, Object.assign({ key: '681ad6d20efa16f1d6c6f9a7d03caec2b17ff36e', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
|
|
31009
30921
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
31010
30922
|
}, class: Object.assign({ [theme]: true,
|
|
31011
30923
|
// Used internally for styling
|
|
31012
|
-
[`picker-${theme}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), hAsync("ion-backdrop", { key: '
|
|
30924
|
+
[`picker-${theme}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), hAsync("ion-backdrop", { key: '6dc71805810955048479c2a6eddce2303161cb8f', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: '0e61724c261c9d69ba23d3cb9064018942755033', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: 'a6ca79c9a5fce42b5aad6808802535c723f27fb9', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, hAsync("div", { key: '7651cbe9d723bba032788d85711e0f7c1dc32c21', class: "picker-toolbar" }, this.buttons.map((b) => (hAsync("div", { class: buttonWrapperClass(b) }, hAsync("button", { type: "button", onClick: () => this.buttonClick(b), class: buttonClass$1(b) }, b.text))))), hAsync("div", { key: 'd6b83aded670bc74515c337c038503e396ab42cc', class: "picker-columns" }, hAsync("div", { key: '1dfef6ed386d7b327dc19397cc9f01c3938fbab9', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => hAsync("ion-picker-legacy-column", { col: c })), hAsync("div", { key: 'ec8b2f4de073a245f8917a494a681adf5d1f94f6', class: "picker-below-highlight" }))), hAsync("div", { key: '8557ce93083feefa5deb6097270d756424f89ab2', tabindex: "0", "aria-hidden": "true" })));
|
|
31013
30925
|
}
|
|
31014
30926
|
get el() { return getElement(this); }
|
|
31015
30927
|
static get watchers() { return {
|
|
@@ -31987,9 +31899,9 @@ class PickerColumnCmp {
|
|
|
31987
31899
|
render() {
|
|
31988
31900
|
const col = this.col;
|
|
31989
31901
|
const theme = getIonTheme(this);
|
|
31990
|
-
return (hAsync(Host, { key: '
|
|
31902
|
+
return (hAsync(Host, { key: 'aed1c1a702e03765d704f6f563fe26df58e68bbf', class: Object.assign({ [theme]: true, 'picker-col': true, 'picker-opts-left': this.col.align === 'left', 'picker-opts-right': this.col.align === 'right' }, getClassMap(col.cssClass)), style: {
|
|
31991
31903
|
'max-width': this.col.columnWidth,
|
|
31992
|
-
} }, col.prefix && (hAsync("div", { key: '
|
|
31904
|
+
} }, col.prefix && (hAsync("div", { key: 'a6fae778eec5d57dba4b36b3e448c5c12fe0688b', class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), hAsync("div", { key: '1b77354fe5eeeeb4db94fab035a9ef5e45d695ac', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index) => (hAsync("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index }, o.text)))), col.suffix && (hAsync("div", { key: '105286ef7ba6eac0796f5af7d6f1daef7107444a', class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
|
|
31993
31905
|
}
|
|
31994
31906
|
get el() { return getElement(this); }
|
|
31995
31907
|
static get watchers() { return {
|
|
@@ -32114,10 +32026,10 @@ class PickerColumnOption {
|
|
|
32114
32026
|
render() {
|
|
32115
32027
|
const { color, disabled, ariaLabel } = this;
|
|
32116
32028
|
const theme = getIonTheme(this);
|
|
32117
|
-
return (hAsync(Host, { key: '
|
|
32029
|
+
return (hAsync(Host, { key: 'fe9553e3157d35f5c28a3f2457715bd598ec1e00', class: createColorClasses$1(color, {
|
|
32118
32030
|
[theme]: true,
|
|
32119
32031
|
['option-disabled']: disabled,
|
|
32120
|
-
}) }, hAsync("div", { key: '
|
|
32032
|
+
}) }, hAsync("div", { key: '9bc334f020012537144972b5a8a1aed7c35ccec5', class: 'picker-column-option-button', role: "button", "aria-label": ariaLabel, onClick: () => this.onClick() }, hAsync("slot", { key: 'bd076e43c98ad920486230684c7f63e7e0b187f8' }))));
|
|
32121
32033
|
}
|
|
32122
32034
|
get el() { return getElement(this); }
|
|
32123
32035
|
static get watchers() { return {
|
|
@@ -33686,9 +33598,9 @@ class Popover {
|
|
|
33686
33598
|
const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
|
|
33687
33599
|
const desktop = isPlatform('desktop');
|
|
33688
33600
|
const enableArrow = arrow && !parentPopover;
|
|
33689
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
33601
|
+
return (hAsync(Host, Object.assign({ key: '3319e6ea7524a30478985c014634403aceedab6f', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
|
|
33690
33602
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
33691
|
-
}, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [theme]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && hAsync("ion-backdrop", { key: '
|
|
33603
|
+
}, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [theme]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && hAsync("ion-backdrop", { key: '45265b1f8e5e6e822b3c8d4992039975c472b10b', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), hAsync("div", { key: '8707fb5c5b9523fd786c4e4d02d41dfb386be187', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && hAsync("div", { key: '17bd682e56939ba10ab4b2ab3c9e916087a7e19a', class: "popover-arrow", part: "arrow" }), hAsync("div", { key: '02f1bd119d2ffecd2f2541969111fc6e156db9d3', class: "popover-content", part: "content" }, hAsync("slot", { key: 'dec29181eee87f28f731d6a0ba1ef3c81867d527' })))));
|
|
33692
33604
|
}
|
|
33693
33605
|
get el() { return getElement(this); }
|
|
33694
33606
|
static get watchers() { return {
|
|
@@ -33816,7 +33728,7 @@ class ProgressBar {
|
|
|
33816
33728
|
const shape = this.getShape();
|
|
33817
33729
|
// If the progress is displayed as a solid bar.
|
|
33818
33730
|
const progressSolid = buffer === 1;
|
|
33819
|
-
return (hAsync(Host, { key: '
|
|
33731
|
+
return (hAsync(Host, { key: '1cf02806b28a0d7b070e6f3616ea8f4c8ae4990a', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: createColorClasses$1(color, {
|
|
33820
33732
|
[theme]: true,
|
|
33821
33733
|
[`progress-bar-${type}`]: true,
|
|
33822
33734
|
'progress-paused': paused,
|
|
@@ -34009,7 +33921,7 @@ class Radio {
|
|
|
34009
33921
|
const { checked, disabled, color, el, justify, labelPlacement, hasLabel, buttonTabindex, alignment } = this;
|
|
34010
33922
|
const theme = getIonTheme(this);
|
|
34011
33923
|
const inItem = hostContext('ion-item', el);
|
|
34012
|
-
return (hAsync(Host, { key: '
|
|
33924
|
+
return (hAsync(Host, { key: 'e9591254a3823435617732dcf415ea4bb5fa4d62', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses$1(color, {
|
|
34013
33925
|
[theme]: true,
|
|
34014
33926
|
'in-item': inItem,
|
|
34015
33927
|
'radio-checked': checked,
|
|
@@ -34020,10 +33932,10 @@ class Radio {
|
|
|
34020
33932
|
// Focus and active styling should not apply when the radio is in an item
|
|
34021
33933
|
'ion-activatable': !inItem,
|
|
34022
33934
|
'ion-focusable': !inItem,
|
|
34023
|
-
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, hAsync("label", { key: '
|
|
33935
|
+
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, hAsync("label", { key: '798691948e77bdba972f45eb668bb6d38c1920b3', class: "radio-wrapper" }, hAsync("div", { key: '054d373156983bb22b3216b2a0f8d5a6ecd0aa08', class: {
|
|
34024
33936
|
'label-text-wrapper': true,
|
|
34025
33937
|
'label-text-wrapper-hidden': !hasLabel,
|
|
34026
|
-
}, part: "label" }, hAsync("slot", { key: '
|
|
33938
|
+
}, part: "label" }, hAsync("slot", { key: 'a77d60be10ece9c80bab6e5c2a24533eede95362' })), hAsync("div", { key: 'e687dc6686b0748a1a3337cd87a01c01315c0f22', class: "native-wrapper" }, this.renderRadioControl()))));
|
|
34027
33939
|
}
|
|
34028
33940
|
get el() { return getElement(this); }
|
|
34029
33941
|
static get watchers() { return {
|
|
@@ -34293,10 +34205,10 @@ class RadioGroup {
|
|
|
34293
34205
|
const { label, labelId, el, name, value } = this;
|
|
34294
34206
|
const theme = getIonTheme(this);
|
|
34295
34207
|
renderHiddenInput(true, el, name, value, false);
|
|
34296
|
-
return (hAsync(Host, { key: '
|
|
34208
|
+
return (hAsync(Host, { key: '8a57b258087569c2fb13ddaa6e83e06822c05a4d', class: {
|
|
34297
34209
|
[theme]: true,
|
|
34298
34210
|
'in-list': hostContext('ion-list', el),
|
|
34299
|
-
}, role: "radiogroup", "aria-labelledby": label ? labelId : null, "aria-describedby": this.hintTextId, "aria-invalid": this.isInvalid ? 'true' : undefined, onClick: this.onClick }, this.renderHintText(), hAsync("slot", { key: '
|
|
34211
|
+
}, role: "radiogroup", "aria-labelledby": label ? labelId : null, "aria-describedby": this.hintTextId, "aria-invalid": this.isInvalid ? 'true' : undefined, onClick: this.onClick }, this.renderHintText(), hAsync("slot", { key: '83d8e8febe7f368dfb6caa40eeafda8bf7d5ecef' })));
|
|
34300
34212
|
}
|
|
34301
34213
|
get el() { return getElement(this); }
|
|
34302
34214
|
static get watchers() { return {
|
|
@@ -35146,7 +35058,7 @@ class Range {
|
|
|
35146
35058
|
const valueAtMin = dualKnobs ? this.valA === min || this.valB === min : this.valA === min;
|
|
35147
35059
|
const valueAtMax = dualKnobs ? this.valA === max || this.valB === max : this.valA === max;
|
|
35148
35060
|
renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
|
|
35149
|
-
return (hAsync(Host, { key: '
|
|
35061
|
+
return (hAsync(Host, { key: '0f39669a81cfb08a3aca6998b95bda68f5076306', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses$1(this.color, {
|
|
35150
35062
|
[theme]: true,
|
|
35151
35063
|
'in-item': inItem,
|
|
35152
35064
|
'range-disabled': disabled,
|
|
@@ -35160,10 +35072,10 @@ class Range {
|
|
|
35160
35072
|
'range-item-end-adjustment': needsEndAdjustment,
|
|
35161
35073
|
'range-value-min': valueAtMin,
|
|
35162
35074
|
'range-value-max': valueAtMax,
|
|
35163
|
-
}) }, hAsync("label", { key: '
|
|
35075
|
+
}) }, hAsync("label", { key: 'c1615da8ac01fccb650a8d1eb6b6b69562634e2f', class: "range-wrapper", id: "range-label" }, hAsync("div", { key: 'ba530e76d0253f457b04bbd8403d9a02ac859cfe', class: {
|
|
35164
35076
|
'label-text-wrapper': true,
|
|
35165
35077
|
'label-text-wrapper-hidden': !hasLabel,
|
|
35166
|
-
}, part: "label" }, label !== undefined ? hAsync("div", { class: "label-text" }, label) : hAsync("slot", { name: "label" })), hAsync("div", { key: '
|
|
35078
|
+
}, part: "label" }, label !== undefined ? hAsync("div", { class: "label-text" }, label) : hAsync("slot", { name: "label" })), hAsync("div", { key: '253bfb6e4add9852054f08194f07d32430832f1f', class: "native-wrapper" }, hAsync("slot", { key: '160ee66c73ab6e982c6efddb0107fbbcd42de962', name: "start" }), this.renderRangeSlider(), hAsync("slot", { key: '486102e34a85d900aa6a6d909b27a98da947bbe2', name: "end" })))));
|
|
35167
35079
|
}
|
|
35168
35080
|
get el() { return getElement(this); }
|
|
35169
35081
|
static get watchers() { return {
|
|
@@ -36238,7 +36150,7 @@ class Refresher {
|
|
|
36238
36150
|
}
|
|
36239
36151
|
render() {
|
|
36240
36152
|
const theme = getIonTheme(this);
|
|
36241
|
-
return (hAsync(Host, { key: '
|
|
36153
|
+
return (hAsync(Host, { key: '5761384ab0eb88600ad036b6fdbebf8e5150e6b8', slot: "fixed", class: {
|
|
36242
36154
|
[theme]: true,
|
|
36243
36155
|
// Used internally for styling
|
|
36244
36156
|
[`refresher-${theme}`]: true,
|
|
@@ -36477,9 +36389,9 @@ class RefresherContent {
|
|
|
36477
36389
|
const hasSpinner = pullingIcon != null && SPINNERS[pullingIcon] !== undefined;
|
|
36478
36390
|
const theme = getIonTheme(this);
|
|
36479
36391
|
const arrowIcon = theme === 'ionic' ? caretLeftFillSvg : caretBackSharp;
|
|
36480
|
-
return (hAsync(Host, { key: '
|
|
36392
|
+
return (hAsync(Host, { key: '3d2d138e485b3b2beae47b9ea4e140f0b9647434', class: {
|
|
36481
36393
|
[theme]: true,
|
|
36482
|
-
} }, hAsync("div", { key: '
|
|
36394
|
+
} }, hAsync("div", { key: 'd0c950b65a37a75b795503574a980cdb61f674e1', class: "refresher-pulling" }, this.pullingIcon && hasSpinner && (hAsync("div", { key: '8c6e27b2fb134c21fb7e8864433802a95ba0f328', class: "refresher-pulling-icon" }, hAsync("div", { key: '0a947b7779502780f2c835f8686f3a06e21a9194', class: "spinner-arrow-container" }, hAsync("ion-spinner", { key: '59c129077809add46b7fe6dcf5fc0edbb1cc94d5', name: this.pullingIcon, paused: true }), (theme === 'md' || theme === 'ionic') && this.pullingIcon === 'circular' && (hAsync("div", { key: 'a28750ed07d9337febbceb5550683eb1c302858c', class: "arrow-container" }, hAsync("ion-icon", { key: 'e14e3b9f9ad51ce3a138a191a848078bd423fa9b', icon: arrowIcon, "aria-hidden": "true" })))))), this.pullingIcon && !hasSpinner && (hAsync("div", { key: '22c4c80ef1e340a8ec9ca718849b412a09507967', class: "refresher-pulling-icon" }, hAsync("ion-icon", { key: '6506d0dd30bf639a23cda57c6d1c2a9c29e42ed6', icon: this.pullingIcon, lazy: false, "aria-hidden": "true" }))), this.pullingText !== undefined && this.renderPullingText()), hAsync("div", { key: 'a54967c5f539ed182106b1c5fa7b499de84c049a', class: "refresher-refreshing" }, this.refreshingSpinner && (hAsync("div", { key: '2e425f66d780e90474b8ebf7473b9f7c98f30c81', class: "refresher-refreshing-icon" }, hAsync("ion-spinner", { key: '286b9b9cce1cb4450ffa5577f0b76044877722ce', name: this.refreshingSpinner }))), this.refreshingText !== undefined && this.renderRefreshingText())));
|
|
36483
36395
|
}
|
|
36484
36396
|
get el() { return getElement(this); }
|
|
36485
36397
|
static get style() { return {
|
|
@@ -36548,9 +36460,9 @@ class Reorder {
|
|
|
36548
36460
|
render() {
|
|
36549
36461
|
const { reorderHandleIcon } = this;
|
|
36550
36462
|
const theme = getIonTheme(this);
|
|
36551
|
-
return (hAsync(Host, { key: '
|
|
36463
|
+
return (hAsync(Host, { key: 'bc0b4cd34db6dfe794ab66a785d406bfc02236c5', class: {
|
|
36552
36464
|
[theme]: true,
|
|
36553
|
-
} }, hAsync("slot", { key: '
|
|
36465
|
+
} }, hAsync("slot", { key: '28672768be8598b7cb47b7b2837b77afbc2c2e14' }, hAsync("ion-icon", { key: '03b6620768da18a6f8cb0c55e94b85a53cbab66a', icon: reorderHandleIcon, lazy: false, class: "reorder-icon", part: "icon", "aria-hidden": "true" }))));
|
|
36554
36466
|
}
|
|
36555
36467
|
get el() { return getElement(this); }
|
|
36556
36468
|
static get style() { return {
|
|
@@ -36826,7 +36738,7 @@ class ReorderGroup {
|
|
|
36826
36738
|
}
|
|
36827
36739
|
render() {
|
|
36828
36740
|
const theme = getIonTheme(this);
|
|
36829
|
-
return (hAsync(Host, { key: '
|
|
36741
|
+
return (hAsync(Host, { key: 'c095e5428be9f446f245d37a12653978bb2bc2b6', class: {
|
|
36830
36742
|
[theme]: true,
|
|
36831
36743
|
'reorder-enabled': !this.disabled,
|
|
36832
36744
|
'reorder-list-active': this.state !== 0 /* ReorderGroupState.Idle */,
|
|
@@ -36952,7 +36864,7 @@ class RippleEffect {
|
|
|
36952
36864
|
}
|
|
36953
36865
|
render() {
|
|
36954
36866
|
const theme = getIonTheme(this);
|
|
36955
|
-
return (hAsync(Host, { key: '
|
|
36867
|
+
return (hAsync(Host, { key: '51fe7517d41c643bd4e746f366f513c42dac17dc', role: "presentation", class: {
|
|
36956
36868
|
[theme]: true,
|
|
36957
36869
|
unbounded: this.unbounded,
|
|
36958
36870
|
} }));
|
|
@@ -37937,10 +37849,10 @@ class RouterLink {
|
|
|
37937
37849
|
rel: this.rel,
|
|
37938
37850
|
target: this.target,
|
|
37939
37851
|
};
|
|
37940
|
-
return (hAsync(Host, { key: '
|
|
37852
|
+
return (hAsync(Host, { key: '84efbafddc586ee3f616d4e1a13118c04d9b2753', onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
37941
37853
|
[theme]: true,
|
|
37942
37854
|
'ion-activatable': true,
|
|
37943
|
-
}) }, hAsync("a", Object.assign({ key: '
|
|
37855
|
+
}) }, hAsync("a", Object.assign({ key: 'e8c7cda4c00ec45548ea52b632bc4adb07f9460c' }, attrs), hAsync("slot", { key: '133bf1203a3e218e3868b4cfda00bb753ecea946' }))));
|
|
37944
37856
|
}
|
|
37945
37857
|
static get style() { return routerLinkCss(); }
|
|
37946
37858
|
static get cmpMeta() { return {
|
|
@@ -38140,7 +38052,7 @@ class RouterOutlet {
|
|
|
38140
38052
|
return true;
|
|
38141
38053
|
}
|
|
38142
38054
|
render() {
|
|
38143
|
-
return hAsync("slot", { key: '
|
|
38055
|
+
return hAsync("slot", { key: '56e3d06ed939755796058e30ef19fbc7f7cb490d' });
|
|
38144
38056
|
}
|
|
38145
38057
|
get el() { return getElement(this); }
|
|
38146
38058
|
static get watchers() { return {
|
|
@@ -38180,9 +38092,9 @@ class Row {
|
|
|
38180
38092
|
}
|
|
38181
38093
|
render() {
|
|
38182
38094
|
const theme = getIonTheme(this);
|
|
38183
|
-
return (hAsync(Host, { key: '
|
|
38095
|
+
return (hAsync(Host, { key: '3a3c40062d2d0487c61dedbb172215b87bb425b1', class: {
|
|
38184
38096
|
[theme]: true,
|
|
38185
|
-
} }, hAsync("slot", { key: '
|
|
38097
|
+
} }, hAsync("slot", { key: '164f457f6f7853ed8f7279d20bc6ede6cf9d3e5c' })));
|
|
38186
38098
|
}
|
|
38187
38099
|
static get style() { return rowCss(); }
|
|
38188
38100
|
static get cmpMeta() { return {
|
|
@@ -38741,8 +38653,8 @@ class Searchbar {
|
|
|
38741
38653
|
const shouldShowCancelButton = this.shouldShowCancelButton();
|
|
38742
38654
|
const shape = this.getShape();
|
|
38743
38655
|
const size = this.getSize();
|
|
38744
|
-
const cancelButton = this.showCancelButton !== 'never' && (hAsync("button", { key: '
|
|
38745
|
-
return (hAsync(Host, { key: '
|
|
38656
|
+
const cancelButton = this.showCancelButton !== 'never' && (hAsync("button", { key: '21affee126970b3de80d4af9c7659875dd9a07aa', "aria-label": cancelButtonText, "aria-hidden": shouldShowCancelButton ? undefined : 'true', type: "button", tabIndex: theme === 'ios' && !shouldShowCancelButton ? -1 : undefined, onMouseDown: this.onCancelSearchbar, onTouchStart: this.onCancelSearchbar, class: "searchbar-cancel-button" }, hAsync("div", { key: '62f81458b16cd51dd8cc5c309c42eeceda52e6fc', "aria-hidden": "true" }, theme === 'md' || theme === 'ionic' ? (hAsync("ion-icon", { "aria-hidden": "true", icon: searchbarCancelIcon, lazy: false })) : (cancelButtonText))));
|
|
38657
|
+
return (hAsync(Host, { key: '287a9c6ec7e54f621759224922003b5ce6c0fb25', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses$1(this.color, {
|
|
38746
38658
|
[theme]: true,
|
|
38747
38659
|
'searchbar-animated': animated,
|
|
38748
38660
|
'searchbar-disabled': this.disabled,
|
|
@@ -38756,14 +38668,14 @@ class Searchbar {
|
|
|
38756
38668
|
[`searchbar-shape-${shape}`]: shape !== undefined,
|
|
38757
38669
|
[`searchbar-size-${size}`]: size !== undefined,
|
|
38758
38670
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
38759
|
-
}) }, hAsync("div", { key: '
|
|
38671
|
+
}) }, hAsync("div", { key: 'a2e1d71d90435b78fe7f9adb70740f4dda599a8a', class: "searchbar-input-container" }, hAsync("input", Object.assign({ key: 'd3b5506f488229f6e3a348b39c52b49e8c86b43d', "aria-label": "search text", disabled: this.disabled, ref: (el) => (this.nativeInput = el), class: "searchbar-input", inputMode: this.inputmode, enterKeyHint: this.enterkeyhint, name: this.name, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, minLength: this.minlength, maxLength: this.maxlength, placeholder: this.placeholder, type: this.type, value: this.getValue(), autoCapitalize: autocapitalize === 'default' ? undefined : autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, spellcheck: this.spellcheck }, this.inheritedAttributes)), (theme === 'md' || theme === 'ionic') && cancelButton, this.shouldShowSearchIcon() && (hAsync("ion-icon", { key: '2b52b78ad65b26e9d4f890b4dc8e8ec494b8ccb8', "aria-hidden": "true", icon: searchbarSearchIcon, lazy: false, class: "searchbar-search-icon" })), this.shouldShowClearButton() && (hAsync("button", { key: 'cd59304ab31763bd0d06393d6cf65459a5cd857b', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
|
|
38760
38672
|
/**
|
|
38761
38673
|
* This prevents mobile browsers from
|
|
38762
38674
|
* blurring the input when the clear
|
|
38763
38675
|
* button is activated.
|
|
38764
38676
|
*/
|
|
38765
38677
|
ev.preventDefault();
|
|
38766
|
-
}, onClick: () => this.onClearInput(true) }, hAsync("ion-icon", { key: '
|
|
38678
|
+
}, onClick: () => this.onClearInput(true) }, hAsync("ion-icon", { key: '6a9be85be51de19f84a852c43f93c46fb92c8d1a', "aria-hidden": "true", icon: searchbarClearIcon, lazy: false, class: "searchbar-clear-icon" })))), theme === 'ios' && cancelButton));
|
|
38767
38679
|
}
|
|
38768
38680
|
get el() { return getElement(this); }
|
|
38769
38681
|
static get watchers() { return {
|
|
@@ -39378,14 +39290,14 @@ class Segment {
|
|
|
39378
39290
|
}
|
|
39379
39291
|
render() {
|
|
39380
39292
|
const theme = getIonTheme(this);
|
|
39381
|
-
return (hAsync(Host, { key: '
|
|
39293
|
+
return (hAsync(Host, { key: '65c576c0bb9ff0602793f75321d676a34b306b3b', role: "tablist", onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
39382
39294
|
[theme]: true,
|
|
39383
39295
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
39384
39296
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
39385
39297
|
'segment-activated': this.activated,
|
|
39386
39298
|
'segment-disabled': this.disabled,
|
|
39387
39299
|
'segment-scrollable': this.scrollable,
|
|
39388
|
-
}) }, hAsync("slot", { key: '
|
|
39300
|
+
}) }, hAsync("slot", { key: '210750a65ccada549bccf026871477ee2b7bdc69', onSlotchange: this.onSlottedItemsChange })));
|
|
39389
39301
|
}
|
|
39390
39302
|
get el() { return getElement(this); }
|
|
39391
39303
|
static get watchers() { return {
|
|
@@ -39537,7 +39449,7 @@ class SegmentButton {
|
|
|
39537
39449
|
const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
|
|
39538
39450
|
const theme = getIonTheme(this);
|
|
39539
39451
|
const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
|
|
39540
|
-
return (hAsync(Host, { key: '
|
|
39452
|
+
return (hAsync(Host, { key: 'da5c8352e5e0f3a01211edbc39c5043cadc5b06f', class: {
|
|
39541
39453
|
[theme]: true,
|
|
39542
39454
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
39543
39455
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
@@ -39553,7 +39465,7 @@ class SegmentButton {
|
|
|
39553
39465
|
'ion-activatable': true,
|
|
39554
39466
|
'ion-activatable-instant': true,
|
|
39555
39467
|
'ion-focusable': true,
|
|
39556
|
-
} }, hAsync("button", Object.assign({ key: '
|
|
39468
|
+
} }, hAsync("button", Object.assign({ key: 'cfd963a166ebfeba590d6538069b26a107306583', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), hAsync("span", { key: '845b729e96ba5b594d441ca41c73e2c33a4f5817', class: "button-inner" }, hAsync("slot", { key: 'f38369982dd602c32dbbc6aca2fae6dbb53faa8a' })), theme === 'md' && hAsync("ion-ripple-effect", { key: 'b1b15b731688dd02806409c9c3eda5519a958239' })), hAsync("div", { key: 'fff597d493a85be8005ef3b9eb4f2a93c2a7a4d0', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, hAsync("div", { key: 'f06b53d0ef9d08354f562ac6d3469998257dd688', part: "indicator-background", class: "segment-button-indicator-background" }))));
|
|
39557
39469
|
}
|
|
39558
39470
|
get el() { return getElement(this); }
|
|
39559
39471
|
static get watchers() { return {
|
|
@@ -39591,7 +39503,7 @@ class SegmentContent {
|
|
|
39591
39503
|
registerInstance(this, hostRef);
|
|
39592
39504
|
}
|
|
39593
39505
|
render() {
|
|
39594
|
-
return (hAsync(Host, { key: '
|
|
39506
|
+
return (hAsync(Host, { key: '2f43cadcbcb1a9423b30e7abc169ff923a8c431f' }, hAsync("slot", { key: 'c3a6d3e9c336f5124cdec9f37ef516324558073c' })));
|
|
39595
39507
|
}
|
|
39596
39508
|
static get style() { return segmentContentCss(); }
|
|
39597
39509
|
static get cmpMeta() { return {
|
|
@@ -39719,11 +39631,11 @@ class SegmentView {
|
|
|
39719
39631
|
}
|
|
39720
39632
|
render() {
|
|
39721
39633
|
const { disabled, isManualScroll, swipeGesture } = this;
|
|
39722
|
-
return (hAsync(Host, { key: '
|
|
39634
|
+
return (hAsync(Host, { key: '8d1aa594c5674bca376ee3e9b18b60b0925dd875', class: {
|
|
39723
39635
|
'segment-view-disabled': disabled,
|
|
39724
39636
|
'segment-view-scroll-disabled': isManualScroll === false,
|
|
39725
39637
|
'segment-view-swipe-disabled': swipeGesture === false,
|
|
39726
|
-
} }, hAsync("slot", { key: '
|
|
39638
|
+
} }, hAsync("slot", { key: '6375fa794ae615b74a70968718aadefa0a9fc1d6' })));
|
|
39727
39639
|
}
|
|
39728
39640
|
get el() { return getElement(this); }
|
|
39729
39641
|
static get style() { return {
|
|
@@ -40659,7 +40571,7 @@ class Select {
|
|
|
40659
40571
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
40660
40572
|
*/
|
|
40661
40573
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
|
|
40662
|
-
return (hAsync(Host, { key: '
|
|
40574
|
+
return (hAsync(Host, { key: 'c8fc8ffc5e66fa0deef9556f365d8d95ff652b5d', onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
40663
40575
|
[theme]: true,
|
|
40664
40576
|
'in-item': inItem,
|
|
40665
40577
|
'in-item-color': hostContext('ion-item.ion-color', el),
|
|
@@ -40678,7 +40590,7 @@ class Select {
|
|
|
40678
40590
|
[`select-shape-${shape}`]: shape !== undefined,
|
|
40679
40591
|
[`select-label-placement-${labelPlacement}`]: true,
|
|
40680
40592
|
[`select-size-${size}`]: size !== undefined,
|
|
40681
|
-
}) }, hAsync("label", { key: '
|
|
40593
|
+
}) }, hAsync("label", { key: 'dd1b83a6bfadcce8e8a9559e529c86d86a5c142d', class: "select-wrapper", id: "select-label", onClick: this.onLabelClick, part: "wrapper" }, this.renderLabelContainer(), hAsync("div", { key: 'c7ae6112920eb9260be01ef4a723549a71e6e275', class: "select-wrapper-inner", part: "inner" },
|
|
40682
40594
|
/**
|
|
40683
40595
|
* For the ionic theme, we render the outline container here
|
|
40684
40596
|
* instead of higher up, so it can be positioned relative to
|
|
@@ -40688,7 +40600,7 @@ class Select {
|
|
|
40688
40600
|
* <label> element, ensuring that clicking the label text
|
|
40689
40601
|
* focuses the select.
|
|
40690
40602
|
*/
|
|
40691
|
-
theme === 'ionic' && fill === 'outline' && hAsync("div", { key: '
|
|
40603
|
+
theme === 'ionic' && fill === 'outline' && hAsync("div", { key: 'da07a6cea39e13cc62de7104ef4c06ac8b3c8fe1', class: "select-outline" }), hAsync("slot", { key: '35c4261e4eb3f5d91e8fe61e02cfe3d93a2c6763', name: "start" }), hAsync("div", { key: 'e70c2896f0c7ad908811f5eb19abde9a432d086e', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), hAsync("slot", { key: 'ddb79446bfc9dc97714c0395570d67ce6a5aa1bf', name: "end" }), shouldRenderInnerIcon && this.renderSelectIcon()), shouldRenderOuterIcon && this.renderSelectIcon(), shouldRenderHighlight && hAsync("div", { key: '297abbcf88af9911c6ecbbb27e2f37846f213bdb', class: "select-highlight" })), this.renderBottomContent()));
|
|
40692
40604
|
}
|
|
40693
40605
|
get el() { return getElement(this); }
|
|
40694
40606
|
static get watchers() { return {
|
|
@@ -41080,7 +40992,7 @@ class SelectModal {
|
|
|
41080
40992
|
});
|
|
41081
40993
|
}
|
|
41082
40994
|
render() {
|
|
41083
|
-
return (hAsync(Host, { key: '
|
|
40995
|
+
return (hAsync(Host, { key: '6f1c1c0ad2dad8d4c1defc41a37e9cb4219facef', class: Object.assign({ [getIonMode$1(this)]: true }, this.getModalContextClasses()) }, hAsync("ion-header", { key: 'e917416fdfb8785511abac755f9cd23e24bc2c70' }, hAsync("ion-toolbar", { key: '7ce8116cdd882958f1c6d0abd9f6ddad60d4232b' }, this.header !== undefined && hAsync("ion-title", { key: 'aa2be148b57b756ca1abdc4b29c26861494e9341' }, this.header), hAsync("ion-buttons", { key: '7a9671f9426a5b9eb0fef1d4b446d2db98332f89', slot: "end" }, hAsync("ion-button", { key: 'c5c1511bed6e3361aa740de9bcab4c7445887518', "aria-label": this.cancelIcon ? this.cancelText : undefined, onClick: () => this.closeModal() }, this.cancelIcon ? (hAsync("ion-icon", { "aria-hidden": "true", slot: "icon-only", icon: this.cancelButtonIcon })) : (this.cancelText))))), hAsync("ion-content", { key: 'ddabe1b04a9f65e741935e387c06ee8f749b38e1' }, hAsync("ion-list", { key: 'cb801aecd27444fb7bb9e3bf06e5934dfd1a9606' }, this.multiple === true ? this.renderCheckboxOptions() : this.renderRadioOptions()))));
|
|
41084
40996
|
}
|
|
41085
40997
|
get el() { return getElement(this); }
|
|
41086
40998
|
static get style() { return {
|
|
@@ -41125,7 +41037,7 @@ class SelectOption {
|
|
|
41125
41037
|
}
|
|
41126
41038
|
render() {
|
|
41127
41039
|
const theme = getIonTheme(this);
|
|
41128
|
-
return (hAsync(Host, { key: '
|
|
41040
|
+
return (hAsync(Host, { key: 'd7baa96e166b66c8f14c97e56674db4dfec2152c', class: {
|
|
41129
41041
|
[theme]: true,
|
|
41130
41042
|
}, role: "option", id: this.inputId }));
|
|
41131
41043
|
}
|
|
@@ -41294,9 +41206,9 @@ class SelectPopover {
|
|
|
41294
41206
|
const { header, message, options, subHeader } = this;
|
|
41295
41207
|
const hasSubHeaderOrMessage = subHeader !== undefined || message !== undefined;
|
|
41296
41208
|
const theme = getIonTheme(this);
|
|
41297
|
-
return (hAsync(Host, { key: '
|
|
41209
|
+
return (hAsync(Host, { key: '47062077a192fb05f662f30c68e9c12323a69e47', class: {
|
|
41298
41210
|
[theme]: true,
|
|
41299
|
-
} }, hAsync("ion-list", { key: '
|
|
41211
|
+
} }, hAsync("ion-list", { key: '50caf4e5f70d1d7b57256f115c589d90d9cea627' }, header !== undefined && hAsync("ion-list-header", { key: '3401a27174b687632836f086f1a367214021358c' }, header), hasSubHeaderOrMessage && (hAsync("ion-item", { key: '7271f08cd8bae5383bb502d9411d60a5458e18f6' }, hAsync("ion-label", { key: 'e22c6c54f725e3fc630eed38a71afd4bb474b357', class: "ion-text-wrap" }, subHeader !== undefined && hAsync("h3", { key: 'c0ca32ef8100d6aaa3aa2279ed1216bdb6a60b89' }, subHeader), message !== undefined && hAsync("p", { key: '8e2e0b248a05f5483e62db8d608310078040767c' }, message)))), this.renderOptions(options))));
|
|
41300
41212
|
}
|
|
41301
41213
|
get el() { return getElement(this); }
|
|
41302
41214
|
static get style() { return {
|
|
@@ -41351,11 +41263,11 @@ class SkeletonText {
|
|
|
41351
41263
|
const animated = this.animated && config.getBoolean('animated', true);
|
|
41352
41264
|
const inMedia = hostContext('ion-avatar', this.el) || hostContext('ion-thumbnail', this.el);
|
|
41353
41265
|
const theme = getIonTheme(this);
|
|
41354
|
-
return (hAsync(Host, { key: '
|
|
41266
|
+
return (hAsync(Host, { key: '370451ee8963b776079f5df365f7bbd70a53b270', class: {
|
|
41355
41267
|
[theme]: true,
|
|
41356
41268
|
'skeleton-text-animated': animated,
|
|
41357
41269
|
'in-media': inMedia,
|
|
41358
|
-
} }, hAsync("span", { key: '
|
|
41270
|
+
} }, hAsync("span", { key: '2b861b4ec86cbd61927ab7b81b13517c99dc94c7' }, "\u00A0")));
|
|
41359
41271
|
}
|
|
41360
41272
|
get el() { return getElement(this); }
|
|
41361
41273
|
static get style() { return skeletonTextCss(); }
|
|
@@ -41428,7 +41340,7 @@ class Spinner {
|
|
|
41428
41340
|
svgs.push(buildLine(spinner, duration, i, spinner.lines));
|
|
41429
41341
|
}
|
|
41430
41342
|
}
|
|
41431
|
-
return (hAsync(Host, { key: '
|
|
41343
|
+
return (hAsync(Host, { key: 'b6559d1626b56a1c63580862263a15798f7d3f71', class: createColorClasses$1(self.color, {
|
|
41432
41344
|
[theme]: true,
|
|
41433
41345
|
[`spinner-${spinnerName}`]: true,
|
|
41434
41346
|
'spinner-paused': self.paused || config.getBoolean('_testing'),
|
|
@@ -41540,12 +41452,12 @@ class SplitPane {
|
|
|
41540
41452
|
}
|
|
41541
41453
|
render() {
|
|
41542
41454
|
const theme = getIonTheme(this);
|
|
41543
|
-
return (hAsync(Host, { key: '
|
|
41455
|
+
return (hAsync(Host, { key: 'b933156f8f9d8ce418ff0d39526967f9653d6639', class: {
|
|
41544
41456
|
[theme]: true,
|
|
41545
41457
|
// Used internally for styling
|
|
41546
41458
|
[`split-pane-${theme}`]: true,
|
|
41547
41459
|
'split-pane-visible': this.visible,
|
|
41548
|
-
} }, hAsync("slot", { key: '
|
|
41460
|
+
} }, hAsync("slot", { key: '3ec0a11e5506386747dc972ccb094359ca975bae' })));
|
|
41549
41461
|
}
|
|
41550
41462
|
get el() { return getElement(this); }
|
|
41551
41463
|
static get watchers() { return {
|
|
@@ -41622,10 +41534,10 @@ class Tab {
|
|
|
41622
41534
|
}
|
|
41623
41535
|
render() {
|
|
41624
41536
|
const { tab, active, component } = this;
|
|
41625
|
-
return (hAsync(Host, { key: '
|
|
41537
|
+
return (hAsync(Host, { key: '8b978f848d43898feafa7daa3e3d9819be833038', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
|
|
41626
41538
|
'ion-page': component === undefined,
|
|
41627
41539
|
'tab-hidden': !active,
|
|
41628
|
-
} }, hAsync("slot", { key: '
|
|
41540
|
+
} }, hAsync("slot", { key: '96a92d86cecc8c9ef4f11d310f7f87bb99ce4e50' })));
|
|
41629
41541
|
}
|
|
41630
41542
|
get el() { return getElement(this); }
|
|
41631
41543
|
static get watchers() { return {
|
|
@@ -41832,7 +41744,7 @@ class TabBar {
|
|
|
41832
41744
|
const theme = getIonTheme(this);
|
|
41833
41745
|
const shape = this.getShape();
|
|
41834
41746
|
const shouldHide = keyboardVisible && this.el.getAttribute('slot') !== 'top';
|
|
41835
|
-
return (hAsync(Host, { key: '
|
|
41747
|
+
return (hAsync(Host, { key: '16cd11a815d777a7517150b49b57a204c83c3c37', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses$1(color, {
|
|
41836
41748
|
[theme]: true,
|
|
41837
41749
|
'tab-bar-translucent': translucent,
|
|
41838
41750
|
'tab-bar-hidden': shouldHide,
|
|
@@ -41840,7 +41752,7 @@ class TabBar {
|
|
|
41840
41752
|
'tab-bar-scroll-hidden': scrollHidden,
|
|
41841
41753
|
[`tab-bar-${expand}`]: true,
|
|
41842
41754
|
[`tab-bar-${shape}`]: shape !== undefined,
|
|
41843
|
-
}) }, hAsync("slot", { key: '
|
|
41755
|
+
}) }, hAsync("slot", { key: 'dfdff308f24b3addaf18528a8d869b3fc64306d1' })));
|
|
41844
41756
|
}
|
|
41845
41757
|
get el() { return getElement(this); }
|
|
41846
41758
|
static get watchers() { return {
|
|
@@ -41968,7 +41880,7 @@ class TabButton {
|
|
|
41968
41880
|
rel,
|
|
41969
41881
|
target,
|
|
41970
41882
|
};
|
|
41971
|
-
return (hAsync(Host, { key: '
|
|
41883
|
+
return (hAsync(Host, { key: 'e4d3aaefcdc42677f7818c51ec1ec0a9cbcf8bcf', onClick: this.onClick, onKeyup: this.onKeyUp, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
|
|
41972
41884
|
[theme]: true,
|
|
41973
41885
|
'tab-selected': selected,
|
|
41974
41886
|
'tab-disabled': disabled,
|
|
@@ -41981,7 +41893,7 @@ class TabButton {
|
|
|
41981
41893
|
'ion-selectable': true,
|
|
41982
41894
|
[`tab-button-shape-${shape}`]: shape !== undefined,
|
|
41983
41895
|
'ion-focusable': true,
|
|
41984
|
-
} }, hAsync("a", Object.assign({ key: '
|
|
41896
|
+
} }, hAsync("a", Object.assign({ key: '1412d080294dd2602696c5657c71553ef35036d3' }, attrs, { class: "button-native", part: "native", role: "tab", "aria-selected": selected ? 'true' : null, "aria-disabled": disabled ? 'true' : null, tabindex: disabled ? '-1' : undefined }, inheritedAttributes), hAsync("span", { key: '5daebf815b9b4f8016ce5b4b9d05148c1957a46c', class: "button-inner" }, hAsync("slot", { key: 'e1cbabb911936d21d5b1a4f87d236b962beacbab' })), theme === 'md' && hAsync("ion-ripple-effect", { key: 'd4544a7fb87b8559aaf9d2f0aa4d440201ebdb71', type: "unbounded" }))));
|
|
41985
41897
|
}
|
|
41986
41898
|
get el() { return getElement(this); }
|
|
41987
41899
|
static get style() { return {
|
|
@@ -42177,7 +42089,7 @@ class Tabs {
|
|
|
42177
42089
|
return Array.from(this.el.querySelectorAll('ion-tab'));
|
|
42178
42090
|
}
|
|
42179
42091
|
render() {
|
|
42180
|
-
return (hAsync(Host, { key: '
|
|
42092
|
+
return (hAsync(Host, { key: 'b8c5c75469cb1f1829a217a02555a7da8556454a', onIonTabButtonClick: this.onTabClicked }, hAsync("slot", { key: '50b74e3df8ea0e991e096c7438a65fee0ca0f6b5', name: "top" }), hAsync("div", { key: 'ca8d4329381c4b40882bbd31b4f15264cfa2c220', class: "tabs-inner" }, hAsync("slot", { key: '816ffd6d997530e3b100480c9a8e4a51fa51e59c' })), hAsync("slot", { key: '280bdf5ec61789823c7772287d60a26229fe78fa', name: "bottom" })));
|
|
42181
42093
|
}
|
|
42182
42094
|
get el() { return getElement(this); }
|
|
42183
42095
|
static get style() { return tabsCss(); }
|
|
@@ -42218,9 +42130,9 @@ class Text {
|
|
|
42218
42130
|
}
|
|
42219
42131
|
render() {
|
|
42220
42132
|
const theme = getIonTheme(this);
|
|
42221
|
-
return (hAsync(Host, { key: '
|
|
42133
|
+
return (hAsync(Host, { key: '8fc5565ce579f8e2a9eddbaa7c93264291080bce', class: createColorClasses$1(this.color, {
|
|
42222
42134
|
[theme]: true,
|
|
42223
|
-
}) }, hAsync("slot", { key: '
|
|
42135
|
+
}) }, hAsync("slot", { key: '5be1d661ee3a6f1f9d9428b59e830672faf475b1' })));
|
|
42224
42136
|
}
|
|
42225
42137
|
static get style() { return textCss(); }
|
|
42226
42138
|
static get cmpMeta() { return {
|
|
@@ -42784,7 +42696,7 @@ class Textarea {
|
|
|
42784
42696
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
42785
42697
|
*/
|
|
42786
42698
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
|
|
42787
|
-
return (hAsync(Host, { key: '
|
|
42699
|
+
return (hAsync(Host, { key: 'a67ef5f3107776dcd8490bdd2af4a373ae422899', class: createColorClasses$1(this.color, {
|
|
42788
42700
|
[theme]: true,
|
|
42789
42701
|
'has-value': hasValue,
|
|
42790
42702
|
'has-focus': hasFocus,
|
|
@@ -42796,7 +42708,7 @@ class Textarea {
|
|
|
42796
42708
|
'in-item': inItem,
|
|
42797
42709
|
'textarea-disabled': disabled,
|
|
42798
42710
|
'textarea-readonly': readonly,
|
|
42799
|
-
}) }, hAsync("label", { key: '
|
|
42711
|
+
}) }, hAsync("label", { key: '7a8605454eb66d87a4b49ffd28e609a633eae09c', class: "textarea-wrapper", htmlFor: inputId, onClick: this.onLabelClick, part: "wrapper" }, this.renderLabelContainer(), hAsync("div", { key: '8b24d96089d11f659dbd5adfcbf317ec34742333', class: "textarea-wrapper-inner" },
|
|
42800
42712
|
/**
|
|
42801
42713
|
* For the ionic theme, we render the outline container here
|
|
42802
42714
|
* instead of higher up, so it can be positioned relative to
|
|
@@ -42806,7 +42718,7 @@ class Textarea {
|
|
|
42806
42718
|
* <label> element, ensuring that clicking the label text
|
|
42807
42719
|
* focuses the textarea.
|
|
42808
42720
|
*/
|
|
42809
|
-
theme === 'ionic' && fill === 'outline' && hAsync("div", { key: '
|
|
42721
|
+
theme === 'ionic' && fill === 'outline' && hAsync("div", { key: '91a7ea7b6f6fccc473b9e058281e5437c00a9b5d', class: "textarea-outline" }), hAsync("div", { key: 'ba641e63d5aaf2ddb291c875f57181d1c93a2b26', class: "start-slot-wrapper" }, hAsync("slot", { key: '351684d41a2b080541a29e0d9e90dd50747b52dc', name: "start" })), hAsync("div", { key: '5c0793742ff6cc327582c3d78d85c28fa8238a40', class: "native-wrapper", ref: (el) => (this.textareaWrapper = el), part: "container" }, hAsync("textarea", Object.assign({ key: '9cf5c908e3fcd54af07c351dcf0bb91c853f1349', class: "native-textarea", part: "native", ref: (el) => (this.nativeInput = el), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, minLength: this.minlength, maxLength: this.maxlength, name: this.name, placeholder: this.placeholder || '', readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, cols: this.cols, rows: this.rows, wrap: this.wrap, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeyDown, "aria-describedby": this.getHintTextID(), "aria-invalid": this.isInvalid ? 'true' : undefined }, this.inheritedAttributes), value)), hAsync("div", { key: 'e47ffe0bf8e460a7cb205ed35a1107b44687116d', class: "end-slot-wrapper" }, hAsync("slot", { key: '57d035b5f1db373b8488b129c8d3552eb8e630ac', name: "end" }))), shouldRenderHighlight && hAsync("div", { key: '1259ad761b68aea69a1ae8b61a6bbdee6c071b7b', class: "textarea-highlight" })), this.renderBottomContent()));
|
|
42810
42722
|
}
|
|
42811
42723
|
static get delegatesFocus() { return true; }
|
|
42812
42724
|
static get formAssociated() { return true; }
|
|
@@ -42890,9 +42802,9 @@ class Thumbnail {
|
|
|
42890
42802
|
}
|
|
42891
42803
|
render() {
|
|
42892
42804
|
const theme = getIonTheme(this);
|
|
42893
|
-
return (hAsync(Host, { key: '
|
|
42805
|
+
return (hAsync(Host, { key: 'fdf9d92949a1e8cf6faded77ffed084f74fc040b', class: {
|
|
42894
42806
|
[theme]: true,
|
|
42895
|
-
} }, hAsync("slot", { key: '
|
|
42807
|
+
} }, hAsync("slot", { key: 'e1b1439c035d9a9503efd1c1a04aed9f4e8e0af7' })));
|
|
42896
42808
|
}
|
|
42897
42809
|
static get style() { return thumbnailCss(); }
|
|
42898
42810
|
static get cmpMeta() { return {
|
|
@@ -43776,9 +43688,9 @@ class Toast {
|
|
|
43776
43688
|
if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
|
|
43777
43689
|
printIonWarning('[ion-toast] - This toast is using start and end buttons with the stacked toast layout. We recommend following the best practice of using either start or end buttons with the stacked toast layout.', el);
|
|
43778
43690
|
}
|
|
43779
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
43691
|
+
return (hAsync(Host, Object.assign({ key: 'f0d62f099dd68f8f541110a60695c2a083c6a4d5', tabindex: "-1" }, this.htmlAttributes, { style: {
|
|
43780
43692
|
zIndex: `${60000 + this.overlayIndex}`,
|
|
43781
|
-
}, class: createColorClasses$1(this.color, Object.assign(Object.assign({ [mode]: true, [theme]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent, [`toast-shape-${shape}`]: shape !== undefined, [`toast-hue-${hue}`]: hue !== undefined })), onIonToastWillDismiss: this.dispatchCancelHandler }), hAsync("div", { key: '
|
|
43693
|
+
}, class: createColorClasses$1(this.color, Object.assign(Object.assign({ [mode]: true, [theme]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent, [`toast-shape-${shape}`]: shape !== undefined, [`toast-hue-${hue}`]: hue !== undefined })), onIonToastWillDismiss: this.dispatchCancelHandler }), hAsync("div", { key: '054ba519f93892a000832990097b265887272da4', class: wrapperClass, part: "wrapper" }, hAsync("div", { key: '45fa83c1711ab98e81b8b00e0af3af436eaa5264', class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (hAsync("ion-icon", { key: 'eb4143899be5259e3d933461bc4ca593c8b9dd9b', class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), hAsync("div", { key: 'bae8a899abb9bcd4895df45def79bfe3d704e6e4', class: "toast-content", part: "content", role: "status", "aria-atomic": "true", "aria-live": "polite" }, !revealContentToScreenReader && header !== undefined && this.renderHeader('oldHeader', 'true'), !revealContentToScreenReader && message !== undefined && this.renderToastMessage('oldMessage', 'true'), revealContentToScreenReader && header !== undefined && this.renderHeader('header'), revealContentToScreenReader && message !== undefined && this.renderToastMessage('header')), this.renderButtons(endButtons, 'end')))));
|
|
43782
43694
|
}
|
|
43783
43695
|
get el() { return getElement(this); }
|
|
43784
43696
|
static get watchers() { return {
|
|
@@ -44154,7 +44066,7 @@ class Toggle {
|
|
|
44154
44066
|
const rtl = isRTL$1(el) ? 'rtl' : 'ltr';
|
|
44155
44067
|
const isIonicTheme = theme === 'ionic';
|
|
44156
44068
|
renderHiddenInput(true, el, name, checked ? value : '', disabled);
|
|
44157
|
-
return (hAsync(Host, { key: '
|
|
44069
|
+
return (hAsync(Host, { key: '9e042d48d2416028c4f76fbb38fa2b26ee7512ef', role: "switch", "aria-checked": `${checked}`, "aria-describedby": this.hintTextId, "aria-invalid": this.isInvalid ? 'true' : undefined, onClick: this.onClick, "aria-labelledby": hasLabel ? inputLabelId : null, "aria-label": inheritedAttributes['aria-label'] || null, "aria-disabled": disabled ? 'true' : null, "aria-required": required ? 'true' : undefined, tabindex: disabled ? undefined : 0, onKeyDown: this.onKeyDown, onFocus: this.onFocus, onBlur: this.onBlur, class: createColorClasses$1(color, {
|
|
44158
44070
|
[theme]: true,
|
|
44159
44071
|
'in-item': hostContext('ion-item', el),
|
|
44160
44072
|
'toggle-activated': activated,
|
|
@@ -44166,10 +44078,10 @@ class Toggle {
|
|
|
44166
44078
|
[`toggle-${rtl}`]: true,
|
|
44167
44079
|
'ion-activatable': isIonicTheme,
|
|
44168
44080
|
'ion-focusable': isIonicTheme,
|
|
44169
|
-
}) }, hAsync("label", { key: '
|
|
44081
|
+
}) }, hAsync("label", { key: 'f13b94af8f0b862b8390172107e75ef670fff34f', class: "toggle-wrapper", htmlFor: inputId }, hAsync("input", Object.assign({ key: 'e6c82e4fc9fcc77ed52408a04188d5696521de0c', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, required: required }, inheritedAttributes)), hAsync("div", { key: '5f32f194da4f83792cccaa536a211b558c5eac1c', class: {
|
|
44170
44082
|
'label-text-wrapper': true,
|
|
44171
44083
|
'label-text-wrapper-hidden': !hasLabel,
|
|
44172
|
-
}, part: "label", id: inputLabelId, onClick: this.onDivLabelClick }, hAsync("slot", { key: '
|
|
44084
|
+
}, part: "label", id: inputLabelId, onClick: this.onDivLabelClick }, hAsync("slot", { key: 'c86e28aca1011a3d5a453b92ddc8b6d1ab049f0b' }), this.renderHintText()), hAsync("div", { key: '80390009e2a3d1ad699e1b698df725449c8fab53', class: "native-wrapper" }, this.renderToggleControl()))));
|
|
44173
44085
|
}
|
|
44174
44086
|
get el() { return getElement(this); }
|
|
44175
44087
|
static get watchers() { return {
|
|
@@ -44461,11 +44373,11 @@ class Toolbar {
|
|
|
44461
44373
|
Object.assign(childStyles, style);
|
|
44462
44374
|
});
|
|
44463
44375
|
const titlePlacement = this.getTitlePlacement();
|
|
44464
|
-
return (hAsync(Host, { key: '
|
|
44376
|
+
return (hAsync(Host, { key: 'bcb621674157410d7eaeb006779bdd677346587e', class: Object.assign(Object.assign({}, createColorClasses$1(this.color, {
|
|
44465
44377
|
[theme]: true,
|
|
44466
44378
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
44467
44379
|
[`toolbar-title-placement-${titlePlacement}`]: true,
|
|
44468
|
-
})), childStyles) }, hAsync("div", { key: '
|
|
44380
|
+
})), childStyles) }, hAsync("div", { key: '0d31a98b2571b9a0ae142fbdfd83e2ebdcd8e069', class: "toolbar-background", part: "background" }), hAsync("div", { key: 'de938534c487c6cb4060dac44b40c2d872130f50', class: "toolbar-container", part: "container" }, hAsync("slot", { key: 'a337150d353e439eae67c31ff86e383ed51f3d8f', name: "start", onSlotchange: () => this.updateSlotClasses }), hAsync("slot", { key: '02effd3ce0cdad5ec5645fa58ccb329321449190', name: "secondary", onSlotchange: () => this.updateSlotClasses }), hAsync("div", { key: '3e22f5feda2aea02117bdea2fe8a4b8905ba82f6', class: "toolbar-content", part: "content" }, hAsync("slot", { key: 'ebf828643ff05a8bf662a54715d21d0859168d31' })), hAsync("slot", { key: 'a6940648dfe25a7aa8792a1bd9267437274f333c', name: "primary", onSlotchange: () => this.updateSlotClasses }), hAsync("slot", { key: 'afb1d61aa0e430fcf483ba482af64762474e06fe', name: "end", onSlotchange: () => this.updateSlotClasses }))));
|
|
44469
44381
|
}
|
|
44470
44382
|
get el() { return getElement(this); }
|
|
44471
44383
|
static get watchers() { return {
|
|
@@ -44524,11 +44436,11 @@ class ToolbarTitle {
|
|
|
44524
44436
|
render() {
|
|
44525
44437
|
const theme = getIonTheme(this);
|
|
44526
44438
|
const size = this.getSize();
|
|
44527
|
-
return (hAsync(Host, { key: '
|
|
44439
|
+
return (hAsync(Host, { key: 'd64e86bed418cba707d4a26c9274f18ed06c0e9e', class: createColorClasses$1(this.color, {
|
|
44528
44440
|
[theme]: true,
|
|
44529
44441
|
[`title-${size}`]: true,
|
|
44530
44442
|
'title-rtl': document.dir === 'rtl',
|
|
44531
|
-
}) }, hAsync("div", { key: '
|
|
44443
|
+
}) }, hAsync("div", { key: '386a71e974cde0bfbf5b655d69ed5f718de8ce48', class: "toolbar-title" }, hAsync("slot", { key: '8aa804c9e1b11574a42268805d3117a085e699b4' }))));
|
|
44532
44444
|
}
|
|
44533
44445
|
get el() { return getElement(this); }
|
|
44534
44446
|
static get watchers() { return {
|
|
@@ -44585,6 +44497,7 @@ registerComponents([
|
|
|
44585
44497
|
FabList,
|
|
44586
44498
|
Footer,
|
|
44587
44499
|
Gallery,
|
|
44500
|
+
GalleryItem,
|
|
44588
44501
|
Grid,
|
|
44589
44502
|
Header,
|
|
44590
44503
|
Icon,
|