@ionic/core 8.8.6-dev.11777572994.1147595d → 8.8.6-nightly.20260501
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/index.js +1 -1
- 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-datetime-button.js +1 -1
- package/components/ion-datetime.js +1 -1
- package/components/ion-fab-button.js +1 -1
- package/components/ion-infinite-scroll-content.js +1 -1
- package/components/ion-input-password-toggle.js +1 -1
- package/components/ion-item-option.js +1 -1
- package/components/ion-item.js +1 -1
- package/components/ion-loading.js +1 -1
- package/components/ion-menu-button.js +1 -1
- package/components/ion-menu.js +1 -1
- package/components/ion-modal.js +1 -1
- package/components/ion-picker-legacy-column.d.ts +11 -0
- package/components/ion-picker-legacy-column.js +4 -0
- package/components/ion-picker-legacy.d.ts +11 -0
- package/components/ion-picker-legacy.js +4 -0
- package/components/ion-popover.js +1 -1
- package/components/ion-progress-bar.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-1KVKSLu5.js +4 -0
- package/components/{p-DbISMmiI.js → p-BSB38Tek.js} +1 -1
- package/components/{p-CDXBV7oG.js → p-BTeL5HCK.js} +1 -1
- package/components/p-BegtE7nr.js +4 -0
- package/components/{p-Ct3FLpwo.js → p-BlNv564p.js} +1 -1
- package/components/p-CH0NYjKq.js +4 -0
- package/components/{p-DL2W2mt3.js → p-CgfaEEem.js} +1 -1
- package/components/p-Cq8cQ0NL.js +4 -0
- package/components/{p-nPoOPlPt.js → p-Cyxa_4PV.js} +1 -1
- package/components/{p-OOMJP0jy.js → p-D-cP12ZN.js} +1 -1
- package/components/p-DHsZWn1l.js +4 -0
- package/components/{p-BeL7B3Bb.js → p-DJMZehmW.js} +1 -1
- package/components/p-DUqnmRFi.js +4 -0
- package/components/{p-DrIm1s9R.js → p-fpbh6w3f.js} +1 -1
- package/components/{p-DxXmSp9Y.js → p-kvaDs24J.js} +1 -1
- package/dist/cjs/index.cjs.js +2 -1
- package/dist/cjs/ion-action-sheet.cjs.entry.js +4 -8
- package/dist/cjs/ion-alert.cjs.entry.js +3 -7
- package/dist/cjs/ion-app_8.cjs.entry.js +9 -23
- package/dist/cjs/ion-avatar_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-col_3.cjs.entry.js +1 -1
- package/dist/cjs/{ion-datetime.cjs.entry.js → ion-datetime_3.cjs.entry.js} +639 -1
- package/dist/cjs/ion-item_8.cjs.entry.js +2 -2
- package/dist/cjs/ion-loading.cjs.entry.js +3 -7
- package/dist/cjs/ion-menu_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-modal.cjs.entry.js +5 -9
- package/dist/cjs/ion-popover.cjs.entry.js +3 -7
- package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
- package/dist/cjs/ion-radio_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-range.cjs.entry.js +3 -3
- package/dist/cjs/ion-refresher_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-reorder_2.cjs.entry.js +2 -2
- 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 +2 -2
- package/dist/cjs/ion-select_3.cjs.entry.js +5 -5
- 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 +2 -2
- package/dist/cjs/ion-toast.cjs.entry.js +3 -3
- 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/cjs/{overlays-DIfHxkst.js → overlays-C2jiBSNQ.js} +7 -26
- package/dist/collection/collection-manifest.json +9 -5
- package/dist/collection/components/action-sheet/action-sheet.js +4 -8
- package/dist/collection/components/alert/alert.js +3 -7
- package/dist/collection/components/loading/loading.js +3 -7
- package/dist/collection/components/modal/modal.js +5 -9
- package/dist/collection/components/picker-legacy/animations/ios.enter.js +27 -0
- package/dist/collection/components/picker-legacy/animations/ios.leave.js +23 -0
- package/dist/collection/components/picker-legacy/picker-interface.js +1 -0
- package/dist/collection/components/picker-legacy/picker.ios.css +300 -0
- package/dist/collection/components/picker-legacy/picker.js +890 -0
- package/dist/collection/components/picker-legacy/picker.md.css +287 -0
- package/dist/collection/components/picker-legacy-column/picker-column.ios.css +231 -0
- package/dist/collection/components/picker-legacy-column/picker-column.js +422 -0
- package/dist/collection/components/picker-legacy-column/picker-column.md.css +222 -0
- package/dist/collection/components/picker-legacy-column/test/test.utils.js +43 -0
- package/dist/collection/components/popover/popover.js +3 -7
- package/dist/collection/components/progress-bar/progress-bar.js +1 -1
- package/dist/collection/components/radio/radio.js +4 -4
- 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 +1 -1
- package/dist/collection/components/reorder/reorder.js +1 -1
- 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 +5 -38
- package/dist/collection/components/row/row.js +1 -1
- 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 +2 -2
- 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 +1 -1
- 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 +2 -2
- package/dist/collection/components/thumbnail/thumbnail.js +1 -1
- 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/index.js +1 -1
- package/dist/collection/utils/overlays.js +6 -25
- package/dist/docs.json +941 -28
- package/dist/esm/{index-AlrZKoWR.js → index-DV3sJJW8.js} +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/ion-accordion_2.entry.js +1 -1
- package/dist/esm/ion-action-sheet.entry.js +4 -8
- package/dist/esm/ion-alert.entry.js +3 -7
- package/dist/esm/ion-app_8.entry.js +9 -23
- package/dist/esm/ion-avatar_3.entry.js +1 -1
- package/dist/esm/ion-back-button.entry.js +1 -1
- package/dist/esm/ion-breadcrumb_2.entry.js +1 -1
- package/dist/esm/ion-col_3.entry.js +1 -1
- package/dist/esm/{ion-datetime.entry.js → ion-datetime_3.entry.js} +641 -5
- package/dist/esm/ion-fab_3.entry.js +1 -1
- package/dist/esm/ion-input-password-toggle.entry.js +1 -1
- package/dist/esm/ion-input.entry.js +1 -1
- package/dist/esm/ion-item_8.entry.js +3 -3
- package/dist/esm/ion-loading.entry.js +3 -7
- package/dist/esm/ion-menu_3.entry.js +2 -2
- package/dist/esm/ion-modal.entry.js +5 -9
- package/dist/esm/ion-popover.entry.js +3 -7
- package/dist/esm/ion-progress-bar.entry.js +1 -1
- package/dist/esm/ion-radio_2.entry.js +3 -3
- 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 +5 -5
- 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 +2 -2
- 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 +2 -2
- package/dist/esm/ion-toast.entry.js +3 -3
- package/dist/esm/ion-toggle.entry.js +4 -4
- package/dist/esm/ionic.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{overlays-BDGzTP3L.js → overlays-F8GHPo-e.js} +7 -26
- package/dist/html.html-data.json +59 -4
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/{p-f17d05e3.entry.js → p-031b76f7.entry.js} +1 -1
- package/dist/ionic/{p-ede28b71.entry.js → p-07506134.entry.js} +1 -1
- package/dist/ionic/{p-e9dd191b.entry.js → p-084c25b2.entry.js} +1 -1
- package/dist/ionic/{p-fed27c64.entry.js → p-0d8b5c38.entry.js} +1 -1
- package/dist/ionic/p-16813ce7.entry.js +4 -0
- package/dist/ionic/p-1b02923f.entry.js +4 -0
- package/dist/ionic/{p-898f9d11.entry.js → p-1b169fb6.entry.js} +1 -1
- package/dist/ionic/p-23fac490.entry.js +4 -0
- package/dist/ionic/{p-7fe42b71.entry.js → p-28a9e720.entry.js} +1 -1
- package/dist/ionic/{p-3b58996c.entry.js → p-294f4bb5.entry.js} +1 -1
- package/dist/ionic/{p-f7762013.entry.js → p-2a68388b.entry.js} +1 -1
- package/dist/ionic/p-2f5a8140.entry.js +4 -0
- package/dist/ionic/{p-34b3a309.entry.js → p-2fd110aa.entry.js} +1 -1
- package/dist/ionic/{p-4ed63122.entry.js → p-301c43f8.entry.js} +1 -1
- package/dist/ionic/p-4c67ce4c.entry.js +4 -0
- package/dist/ionic/p-51c11c47.entry.js +4 -0
- package/dist/ionic/p-53f750a5.entry.js +4 -0
- package/dist/ionic/p-6b701daa.entry.js +4 -0
- package/dist/ionic/{p-19adf785.entry.js → p-7620be24.entry.js} +1 -1
- package/dist/ionic/{p-18b5d5ff.entry.js → p-771b27a5.entry.js} +1 -1
- package/dist/ionic/p-7ca71c83.entry.js +4 -0
- package/dist/ionic/{p-66494f9b.entry.js → p-80cac7a2.entry.js} +1 -1
- package/dist/ionic/{p-506038d3.entry.js → p-8fda6a62.entry.js} +1 -1
- package/dist/ionic/{p-7f269aff.entry.js → p-9cbc6f1f.entry.js} +1 -1
- package/dist/ionic/{p-b6f16f18.entry.js → p-9cdbabbb.entry.js} +1 -1
- package/dist/ionic/p-DTPR1Wpn.js +4 -0
- package/dist/ionic/{p-AlrZKoWR.js → p-DV3sJJW8.js} +1 -1
- package/dist/ionic/{p-dc198c3a.entry.js → p-a84f2d21.entry.js} +1 -1
- package/dist/ionic/{p-b8f4a31c.entry.js → p-aa812c4b.entry.js} +1 -1
- package/dist/ionic/{p-30f5ad9e.entry.js → p-b325a113.entry.js} +1 -1
- package/dist/ionic/p-b5ea8cdd.entry.js +4 -0
- package/dist/ionic/{p-1d2163ad.entry.js → p-bcaa827e.entry.js} +1 -1
- package/dist/ionic/{p-6e99ae8d.entry.js → p-c3cce9d8.entry.js} +1 -1
- package/dist/ionic/{p-b553828c.entry.js → p-d4e8b473.entry.js} +1 -1
- package/dist/ionic/p-e0287f41.entry.js +4 -0
- package/dist/ionic/{p-6da572e7.entry.js → p-e863ffe8.entry.js} +1 -1
- package/dist/ionic/p-f2deaceb.entry.js +4 -0
- package/dist/ionic/{p-460fbe5b.entry.js → p-f69a5f71.entry.js} +1 -1
- package/dist/ionic/{p-4ea520a4.entry.js → p-f8186550.entry.js} +1 -1
- package/dist/ionic/{p-8a3a936b.entry.js → p-fdbc90d4.entry.js} +1 -1
- package/dist/types/components/picker-legacy/animations/ios.enter.d.ts +5 -0
- package/dist/types/components/picker-legacy/animations/ios.leave.d.ts +5 -0
- package/dist/types/components/picker-legacy/picker-interface.d.ts +52 -0
- package/dist/types/components/picker-legacy/picker.d.ts +158 -0
- package/dist/types/components/picker-legacy-column/picker-column.d.ts +46 -0
- package/dist/types/components/picker-legacy-column/test/test.utils.d.ts +9 -0
- package/dist/types/components/router-outlet/router-outlet.d.ts +0 -7
- package/dist/types/components.d.ts +272 -9
- package/dist/types/index.d.ts +1 -1
- package/dist/types/interface.d.ts +1 -0
- package/dist/types/utils/config.d.ts +8 -0
- package/dist/types/utils/overlays.d.ts +9 -11
- package/hydrate/index.js +788 -164
- package/hydrate/index.mjs +788 -164
- package/package.json +3 -3
- package/components/p-BHlzkIpO.js +0 -4
- package/components/p-Bg7NsGS9.js +0 -4
- package/components/p-CWpbvhwY.js +0 -4
- package/components/p-DBHdZu4y.js +0 -4
- package/components/p-DPdqO7R6.js +0 -4
- package/dist/ionic/p-2089f9cb.entry.js +0 -4
- package/dist/ionic/p-4c8d8c55.entry.js +0 -4
- package/dist/ionic/p-4f3a8ccf.entry.js +0 -4
- package/dist/ionic/p-528d4c1d.entry.js +0 -4
- package/dist/ionic/p-5430ae94.entry.js +0 -4
- package/dist/ionic/p-5c2cc090.entry.js +0 -4
- package/dist/ionic/p-6406d5a9.entry.js +0 -4
- package/dist/ionic/p-7f9db51b.entry.js +0 -4
- package/dist/ionic/p-Csx_Ej2k.js +0 -4
- package/dist/ionic/p-a39db980.entry.js +0 -4
- package/dist/ionic/p-b5e3e1f7.entry.js +0 -4
- package/dist/ionic/p-cce0cd26.entry.js +0 -4
- package/dist/ionic/p-d92ba088.entry.js +0 -4
package/hydrate/index.js
CHANGED
|
@@ -7792,7 +7792,7 @@ const focusElementInOverlay = (hostToFocus, overlay) => {
|
|
|
7792
7792
|
* Should NOT include: Toast
|
|
7793
7793
|
*/
|
|
7794
7794
|
const trapKeyboardFocus = (ev, doc) => {
|
|
7795
|
-
const lastOverlay = getPresentedOverlay(doc, 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-popover');
|
|
7795
|
+
const lastOverlay = getPresentedOverlay(doc, 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-picker-legacy,ion-popover');
|
|
7796
7796
|
const target = ev.target;
|
|
7797
7797
|
/**
|
|
7798
7798
|
* If no active overlay, ignore this event.
|
|
@@ -8026,7 +8026,7 @@ const dismissOverlay = (doc, data, role, overlayTag, id) => {
|
|
|
8026
8026
|
*/
|
|
8027
8027
|
const getOverlays = (doc, selector) => {
|
|
8028
8028
|
if (selector === undefined) {
|
|
8029
|
-
selector = 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-popover,ion-toast';
|
|
8029
|
+
selector = 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-picker-legacy,ion-popover,ion-toast';
|
|
8030
8030
|
}
|
|
8031
8031
|
return Array.from(doc.querySelectorAll(selector)).filter((c) => c.overlayIndex > 0);
|
|
8032
8032
|
};
|
|
@@ -8088,29 +8088,6 @@ const setRootAriaHidden = (hidden = false) => {
|
|
|
8088
8088
|
viewContainer.removeAttribute('aria-hidden');
|
|
8089
8089
|
}
|
|
8090
8090
|
};
|
|
8091
|
-
/**
|
|
8092
|
-
* Cleans up root `aria-hidden` and `backdrop-no-scroll` when
|
|
8093
|
-
* an overlay is removed from the DOM without going through
|
|
8094
|
-
* the `dismiss()` flow (e.g., when a framework unmounts the
|
|
8095
|
-
* overlay during a route change).
|
|
8096
|
-
*
|
|
8097
|
-
* Should be called from an overlay's `disconnectedCallback`
|
|
8098
|
-
* when the overlay was still presented at the time of removal.
|
|
8099
|
-
*/
|
|
8100
|
-
const cleanupRootFocusTrapAccessibility = () => {
|
|
8101
|
-
if (typeof document === 'undefined') {
|
|
8102
|
-
return;
|
|
8103
|
-
}
|
|
8104
|
-
const remainingOverlays = getPresentedOverlays(document);
|
|
8105
|
-
const hasRemainingLocking = remainingOverlays.some((o) => {
|
|
8106
|
-
const el = o;
|
|
8107
|
-
return el.tagName !== 'ION-TOAST' && el.focusTrap !== false && isBackdropAlwaysBlocking(el);
|
|
8108
|
-
});
|
|
8109
|
-
if (!hasRemainingLocking) {
|
|
8110
|
-
setRootAriaHidden(false);
|
|
8111
|
-
document.body.classList.remove(BACKDROP_NO_SCROLL);
|
|
8112
|
-
}
|
|
8113
|
-
};
|
|
8114
8091
|
const present = async (overlay, name, iosEnterAnimation, mdEnterAnimation, opts) => {
|
|
8115
8092
|
var _a, _b;
|
|
8116
8093
|
if (overlay.presented) {
|
|
@@ -9367,7 +9344,7 @@ const createAnimation = (animationId) => {
|
|
|
9367
9344
|
/**
|
|
9368
9345
|
* iOS Action Sheet Enter Animation
|
|
9369
9346
|
*/
|
|
9370
|
-
const iosEnterAnimation$
|
|
9347
|
+
const iosEnterAnimation$6 = (baseEl) => {
|
|
9371
9348
|
const baseAnimation = createAnimation();
|
|
9372
9349
|
const backdropAnimation = createAnimation();
|
|
9373
9350
|
const wrapperAnimation = createAnimation();
|
|
@@ -9391,7 +9368,7 @@ const iosEnterAnimation$5 = (baseEl) => {
|
|
|
9391
9368
|
/**
|
|
9392
9369
|
* iOS Action Sheet Leave Animation
|
|
9393
9370
|
*/
|
|
9394
|
-
const iosLeaveAnimation$
|
|
9371
|
+
const iosLeaveAnimation$6 = (baseEl) => {
|
|
9395
9372
|
const baseAnimation = createAnimation();
|
|
9396
9373
|
const backdropAnimation = createAnimation();
|
|
9397
9374
|
const wrapperAnimation = createAnimation();
|
|
@@ -9547,7 +9524,7 @@ class ActionSheet {
|
|
|
9547
9524
|
async present() {
|
|
9548
9525
|
const unlock = await this.lockController.lock();
|
|
9549
9526
|
await this.delegateController.attachViewToDom();
|
|
9550
|
-
await present(this, 'actionSheetEnter', iosEnterAnimation$
|
|
9527
|
+
await present(this, 'actionSheetEnter', iosEnterAnimation$6, mdEnterAnimation$5);
|
|
9551
9528
|
unlock();
|
|
9552
9529
|
}
|
|
9553
9530
|
/**
|
|
@@ -9564,7 +9541,7 @@ class ActionSheet {
|
|
|
9564
9541
|
*/
|
|
9565
9542
|
async dismiss(data, role) {
|
|
9566
9543
|
const unlock = await this.lockController.lock();
|
|
9567
|
-
const dismissed = await dismiss(this, data, role, 'actionSheetLeave', iosLeaveAnimation$
|
|
9544
|
+
const dismissed = await dismiss(this, data, role, 'actionSheetLeave', iosLeaveAnimation$6, mdLeaveAnimation$5);
|
|
9568
9545
|
if (dismissed) {
|
|
9569
9546
|
this.delegateController.removeViewFromDom();
|
|
9570
9547
|
}
|
|
@@ -9733,10 +9710,6 @@ class ActionSheet {
|
|
|
9733
9710
|
this.gesture = undefined;
|
|
9734
9711
|
}
|
|
9735
9712
|
this.triggerController.removeClickListener();
|
|
9736
|
-
// Clean up aria-hidden if removed without dismiss() being called
|
|
9737
|
-
if (this.presented) {
|
|
9738
|
-
cleanupRootFocusTrapAccessibility();
|
|
9739
|
-
}
|
|
9740
9713
|
}
|
|
9741
9714
|
componentWillLoad() {
|
|
9742
9715
|
var _a;
|
|
@@ -9825,7 +9798,7 @@ class ActionSheet {
|
|
|
9825
9798
|
if (isRadio) {
|
|
9826
9799
|
htmlAttrs['aria-checked'] = isActiveRadio ? 'true' : 'false';
|
|
9827
9800
|
}
|
|
9828
|
-
return (hAsync("button", Object.assign({}, htmlAttrs, { role: isRadio ? 'radio' : undefined, type: "button", id: buttonId, class: Object.assign(Object.assign({}, buttonClass$
|
|
9801
|
+
return (hAsync("button", Object.assign({}, htmlAttrs, { role: isRadio ? 'radio' : undefined, type: "button", id: buttonId, class: Object.assign(Object.assign({}, buttonClass$3(b)), { 'action-sheet-selected': isActiveRadio }), onClick: () => {
|
|
9829
9802
|
if (isRadio) {
|
|
9830
9803
|
this.selectRadioButton(b);
|
|
9831
9804
|
}
|
|
@@ -9840,12 +9813,12 @@ class ActionSheet {
|
|
|
9840
9813
|
const cancelButton = allButtons.find((b) => b.role === 'cancel');
|
|
9841
9814
|
const buttons = allButtons.filter((b) => b.role !== 'cancel');
|
|
9842
9815
|
const headerID = `action-sheet-${overlayIndex}-header`;
|
|
9843
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
9816
|
+
return (hAsync(Host, Object.assign({ key: '173fcff5b1da7c33c267de4667591c946b8c8d03', role: "dialog", "aria-modal": "true", "aria-labelledby": header !== undefined ? headerID : null, tabindex: "-1" }, htmlAttributes, { style: {
|
|
9844
9817
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
9845
|
-
}, class: Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'action-sheet-translucent': this.translucent }), onIonActionSheetWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }), hAsync("ion-backdrop", { key: '
|
|
9818
|
+
}, class: Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'action-sheet-translucent': this.translucent }), onIonActionSheetWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }), hAsync("ion-backdrop", { key: '521ede659f747864f6c974e09016436eceb7158c', tappable: this.backdropDismiss }), hAsync("div", { key: '7a7946fc434bc444f16a70638f5e948c69d33fcd', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: 'bcff39a580489dbafa255842e57aa8602c6d0f18', class: "action-sheet-wrapper ion-overlay-wrapper", ref: (el) => (this.wrapperEl = el) }, hAsync("div", { key: '84bba13ce14261f0f0daa3f9c77648c9e7f36e0e', class: "action-sheet-container" }, hAsync("div", { key: 'd9c8ac404fd6719a7adf8cb36549f67616f9a0c4', class: "action-sheet-group", ref: (el) => (this.groupEl = el), role: hasRadioButtons ? 'radiogroup' : undefined }, header !== undefined && (hAsync("div", { key: '180433a8ad03ef5c54728a1a8f34715b6921d658', id: headerID, class: {
|
|
9846
9819
|
'action-sheet-title': true,
|
|
9847
9820
|
'action-sheet-has-sub-title': this.subHeader !== undefined,
|
|
9848
|
-
} }, header, this.subHeader && hAsync("div", { key: '
|
|
9821
|
+
} }, header, this.subHeader && hAsync("div", { key: '7138e79e61b1a8f42bc5a9175c57fa2f15d7ec5a', class: "action-sheet-sub-title" }, this.subHeader))), this.renderActionSheetButtons(buttons)), cancelButton && (hAsync("div", { key: 'b617c722f5b8028d73ed34b69310f312c65f34a7', class: "action-sheet-group action-sheet-group-cancel" }, hAsync("button", Object.assign({ key: 'd0dd876fc48815df3710413c201c0b445a8e16c0' }, cancelButton.htmlAttributes, { type: "button", class: buttonClass$3(cancelButton), onClick: () => this.buttonClick(cancelButton) }), hAsync("span", { key: 'e7b960157cc6fc5fe92a12090b2be55e8ae072e4', class: "action-sheet-button-inner" }, cancelButton.icon && (hAsync("ion-icon", { key: '05498ffc60cab911dbff0ecbc6168dea59ada9a5', icon: cancelButton.icon, "aria-hidden": "true", lazy: false, class: "action-sheet-icon" })), cancelButton.text), mode === 'md' && hAsync("ion-ripple-effect", { key: '3d401346cea301be4ca03671f7370f6f4b0b6bde' })))))), hAsync("div", { key: '971f3c5fcc07f36c28eb469a47ec0290c692e139', tabindex: "0", "aria-hidden": "true" })));
|
|
9849
9822
|
}
|
|
9850
9823
|
get el() { return getElement(this); }
|
|
9851
9824
|
static get watchers() { return {
|
|
@@ -9894,7 +9867,7 @@ class ActionSheet {
|
|
|
9894
9867
|
"$attrsToReflect$": []
|
|
9895
9868
|
}; }
|
|
9896
9869
|
}
|
|
9897
|
-
const buttonClass$
|
|
9870
|
+
const buttonClass$3 = (button) => {
|
|
9898
9871
|
return Object.assign({ 'action-sheet-button': true, 'ion-activatable': !button.disabled, 'ion-focusable': !button.disabled, [`action-sheet-${button.role}`]: button.role !== undefined }, getClassMap(button.cssClass));
|
|
9899
9872
|
};
|
|
9900
9873
|
|
|
@@ -10065,7 +10038,7 @@ class IonicSafeString {
|
|
|
10065
10038
|
/**
|
|
10066
10039
|
* iOS Alert Enter Animation
|
|
10067
10040
|
*/
|
|
10068
|
-
const iosEnterAnimation$
|
|
10041
|
+
const iosEnterAnimation$5 = (baseEl) => {
|
|
10069
10042
|
const baseAnimation = createAnimation();
|
|
10070
10043
|
const backdropAnimation = createAnimation();
|
|
10071
10044
|
const wrapperAnimation = createAnimation();
|
|
@@ -10090,7 +10063,7 @@ const iosEnterAnimation$4 = (baseEl) => {
|
|
|
10090
10063
|
/**
|
|
10091
10064
|
* iOS Alert Leave Animation
|
|
10092
10065
|
*/
|
|
10093
|
-
const iosLeaveAnimation$
|
|
10066
|
+
const iosLeaveAnimation$5 = (baseEl) => {
|
|
10094
10067
|
const baseAnimation = createAnimation();
|
|
10095
10068
|
const backdropAnimation = createAnimation();
|
|
10096
10069
|
const wrapperAnimation = createAnimation();
|
|
@@ -10351,10 +10324,6 @@ class Alert {
|
|
|
10351
10324
|
this.gesture.destroy();
|
|
10352
10325
|
this.gesture = undefined;
|
|
10353
10326
|
}
|
|
10354
|
-
// Clean up aria-hidden if removed without dismiss() being called
|
|
10355
|
-
if (this.presented) {
|
|
10356
|
-
cleanupRootFocusTrapAccessibility();
|
|
10357
|
-
}
|
|
10358
10327
|
}
|
|
10359
10328
|
componentDidLoad() {
|
|
10360
10329
|
/**
|
|
@@ -10391,7 +10360,7 @@ class Alert {
|
|
|
10391
10360
|
async present() {
|
|
10392
10361
|
const unlock = await this.lockController.lock();
|
|
10393
10362
|
await this.delegateController.attachViewToDom();
|
|
10394
|
-
await present(this, 'alertEnter', iosEnterAnimation$
|
|
10363
|
+
await present(this, 'alertEnter', iosEnterAnimation$5, mdEnterAnimation$4).then(() => {
|
|
10395
10364
|
var _a, _b;
|
|
10396
10365
|
/**
|
|
10397
10366
|
* Check if alert has only one button and no inputs.
|
|
@@ -10422,7 +10391,7 @@ class Alert {
|
|
|
10422
10391
|
*/
|
|
10423
10392
|
async dismiss(data, role) {
|
|
10424
10393
|
const unlock = await this.lockController.lock();
|
|
10425
|
-
const dismissed = await dismiss(this, data, role, 'alertLeave', iosLeaveAnimation$
|
|
10394
|
+
const dismissed = await dismiss(this, data, role, 'alertLeave', iosLeaveAnimation$5, mdLeaveAnimation$4);
|
|
10426
10395
|
if (dismissed) {
|
|
10427
10396
|
this.delegateController.removeViewFromDom();
|
|
10428
10397
|
}
|
|
@@ -10563,7 +10532,7 @@ class Alert {
|
|
|
10563
10532
|
'alert-button-group': true,
|
|
10564
10533
|
'alert-button-group-vertical': buttons.length > 2,
|
|
10565
10534
|
};
|
|
10566
|
-
return (hAsync("div", { class: alertButtonGroupClass }, buttons.map((button) => (hAsync("button", Object.assign({}, button.htmlAttributes, { type: "button", id: button.id, class: buttonClass$
|
|
10535
|
+
return (hAsync("div", { class: alertButtonGroupClass }, buttons.map((button) => (hAsync("button", Object.assign({}, button.htmlAttributes, { type: "button", id: button.id, class: buttonClass$2(button), tabIndex: 0, onClick: () => this.buttonClick(button) }), hAsync("span", { class: "alert-button-inner" }, button.text), mode === 'md' && hAsync("ion-ripple-effect", null))))));
|
|
10567
10536
|
}
|
|
10568
10537
|
renderAlertMessage(msgId) {
|
|
10569
10538
|
const { customHTMLEnabled, message } = this;
|
|
@@ -10586,9 +10555,9 @@ class Alert {
|
|
|
10586
10555
|
* If neither are defined, do not set aria-labelledby.
|
|
10587
10556
|
*/
|
|
10588
10557
|
const ariaLabelledBy = header && subHeader ? `${hdrId} ${subHdrId}` : header ? hdrId : subHeader ? subHdrId : null;
|
|
10589
|
-
return (hAsync(Host, { key: '
|
|
10558
|
+
return (hAsync(Host, { key: '6025440b9cd369d4fac89e7e4296c84a10a0b8e0', tabindex: "-1", style: {
|
|
10590
10559
|
zIndex: `${20000 + overlayIndex}`,
|
|
10591
|
-
}, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'alert-translucent': this.translucent }), onIonAlertWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }, hAsync("ion-backdrop", { key: '
|
|
10560
|
+
}, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'alert-translucent': this.translucent }), onIonAlertWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }, hAsync("ion-backdrop", { key: '3cd5ca8b99cb95b11dd22ab41a820d841142896f', tappable: this.backdropDismiss }), hAsync("div", { key: '4cc62ae6e21424057d22aeef1e8fc77011e77cd5', tabindex: "0", "aria-hidden": "true" }), hAsync("div", Object.assign({ key: '364057a69f25aa88904df17bdcf7e5bf714e7830', class: "alert-wrapper ion-overlay-wrapper", role: role, "aria-modal": "true", "aria-labelledby": ariaLabelledBy, "aria-describedby": message !== undefined ? msgId : null, tabindex: "0", ref: (el) => (this.wrapperEl = el) }, htmlAttributes), hAsync("div", { key: '78694e3c0db2d408df3899fb1a90859bcc8d14cc', class: "alert-head" }, header && (hAsync("h2", { key: 'ec88ff3e4e1ea871b5975133fdcf4cac38b05e0f', id: hdrId, class: "alert-title" }, header)), subHeader && !header && (hAsync("h2", { key: '9b09bc8bb68af255ef8b7d22587acc946148e544', id: subHdrId, class: "alert-sub-title" }, subHeader)), subHeader && header && (hAsync("h3", { key: '99abe815f75d2df7f1b77c0df9f3436724fea76f', id: subHdrId, class: "alert-sub-title" }, subHeader))), this.renderAlertMessage(msgId), this.renderAlertInputs(), this.renderAlertButtons()), hAsync("div", { key: 'a43d0c22c0e46b1ef911f92ffeb253d7911b85f7', tabindex: "0", "aria-hidden": "true" })));
|
|
10592
10561
|
}
|
|
10593
10562
|
get el() { return getElement(this); }
|
|
10594
10563
|
static get watchers() { return {
|
|
@@ -10645,7 +10614,7 @@ const inputClass = (input) => {
|
|
|
10645
10614
|
var _a, _b, _c;
|
|
10646
10615
|
return Object.assign(Object.assign({ 'alert-input': true, 'alert-input-disabled': ((_b = (_a = input.attributes) === null || _a === void 0 ? void 0 : _a.disabled) !== null && _b !== void 0 ? _b : input.disabled) || false }, getClassMap(input.cssClass)), getClassMap(input.attributes ? (_c = input.attributes.class) === null || _c === void 0 ? void 0 : _c.toString() : ''));
|
|
10647
10616
|
};
|
|
10648
|
-
const buttonClass$
|
|
10617
|
+
const buttonClass$2 = (button) => {
|
|
10649
10618
|
return Object.assign({ 'alert-button': true, 'ion-focusable': true, 'ion-activatable': true, [`alert-button-role-${button.role}`]: button.role !== undefined }, getClassMap(button.cssClass));
|
|
10650
10619
|
};
|
|
10651
10620
|
|
|
@@ -21475,7 +21444,7 @@ class ListHeader {
|
|
|
21475
21444
|
/**
|
|
21476
21445
|
* iOS Loading Enter Animation
|
|
21477
21446
|
*/
|
|
21478
|
-
const iosEnterAnimation$
|
|
21447
|
+
const iosEnterAnimation$4 = (baseEl) => {
|
|
21479
21448
|
const baseAnimation = createAnimation();
|
|
21480
21449
|
const backdropAnimation = createAnimation();
|
|
21481
21450
|
const wrapperAnimation = createAnimation();
|
|
@@ -21500,7 +21469,7 @@ const iosEnterAnimation$3 = (baseEl) => {
|
|
|
21500
21469
|
/**
|
|
21501
21470
|
* iOS Loading Leave Animation
|
|
21502
21471
|
*/
|
|
21503
|
-
const iosLeaveAnimation$
|
|
21472
|
+
const iosLeaveAnimation$4 = (baseEl) => {
|
|
21504
21473
|
const baseAnimation = createAnimation();
|
|
21505
21474
|
const backdropAnimation = createAnimation();
|
|
21506
21475
|
const wrapperAnimation = createAnimation();
|
|
@@ -21673,10 +21642,6 @@ class Loading {
|
|
|
21673
21642
|
}
|
|
21674
21643
|
disconnectedCallback() {
|
|
21675
21644
|
this.triggerController.removeClickListener();
|
|
21676
|
-
// Clean up aria-hidden if removed without dismiss() being called
|
|
21677
|
-
if (this.presented) {
|
|
21678
|
-
cleanupRootFocusTrapAccessibility();
|
|
21679
|
-
}
|
|
21680
21645
|
}
|
|
21681
21646
|
/**
|
|
21682
21647
|
* Present the loading overlay after it has been created.
|
|
@@ -21684,7 +21649,7 @@ class Loading {
|
|
|
21684
21649
|
async present() {
|
|
21685
21650
|
const unlock = await this.lockController.lock();
|
|
21686
21651
|
await this.delegateController.attachViewToDom();
|
|
21687
|
-
await present(this, 'loadingEnter', iosEnterAnimation$
|
|
21652
|
+
await present(this, 'loadingEnter', iosEnterAnimation$4, mdEnterAnimation$3);
|
|
21688
21653
|
if (this.duration > 0) {
|
|
21689
21654
|
this.durationTimeout = setTimeout(() => this.dismiss(), this.duration + 10);
|
|
21690
21655
|
}
|
|
@@ -21707,7 +21672,7 @@ class Loading {
|
|
|
21707
21672
|
if (this.durationTimeout) {
|
|
21708
21673
|
clearTimeout(this.durationTimeout);
|
|
21709
21674
|
}
|
|
21710
|
-
const dismissed = await dismiss(this, data, role, 'loadingLeave', iosLeaveAnimation$
|
|
21675
|
+
const dismissed = await dismiss(this, data, role, 'loadingLeave', iosLeaveAnimation$4, mdLeaveAnimation$3);
|
|
21711
21676
|
if (dismissed) {
|
|
21712
21677
|
this.delegateController.removeViewFromDom();
|
|
21713
21678
|
}
|
|
@@ -21742,9 +21707,9 @@ class Loading {
|
|
|
21742
21707
|
* Otherwise, don't set aria-labelledby.
|
|
21743
21708
|
*/
|
|
21744
21709
|
const ariaLabelledBy = message !== undefined ? msgId : null;
|
|
21745
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
21710
|
+
return (hAsync(Host, Object.assign({ key: 'f86ddbc600cb5c396b7de38fb5f49625388c3c3f', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
|
|
21746
21711
|
zIndex: `${40000 + this.overlayIndex}`,
|
|
21747
|
-
}, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), hAsync("ion-backdrop", { key: '
|
|
21712
|
+
}, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), hAsync("ion-backdrop", { key: 'b53727aaddc37ef3c685fcc150c6d5193290a847', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: '4c61bede8e0a4e47daa6f1f9d0f364ef6aec0bc3', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: '84e51ceb07118f1eaeb757df28801c255496931b', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (hAsync("div", { key: 'fc97f1912e0fc558b7c309a5bc084415f5f620b2', class: "loading-spinner" }, hAsync("ion-spinner", { key: '6e186d856cd3f10f22c3e317ef00f31b4216459c', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), hAsync("div", { key: 'dcbe9d9a619daa1c08174e73827bdabeb59dde92', tabindex: "0", "aria-hidden": "true" })));
|
|
21748
21713
|
}
|
|
21749
21714
|
get el() { return getElement(this); }
|
|
21750
21715
|
static get watchers() { return {
|
|
@@ -24018,7 +23983,7 @@ const createEnterAnimation$1 = () => {
|
|
|
24018
23983
|
/**
|
|
24019
23984
|
* iOS Modal Enter Animation for the Card presentation style
|
|
24020
23985
|
*/
|
|
24021
|
-
const iosEnterAnimation$
|
|
23986
|
+
const iosEnterAnimation$3 = (baseEl, opts) => {
|
|
24022
23987
|
const { presentingEl, currentBreakpoint, expandToScroll } = opts;
|
|
24023
23988
|
const root = getElementRoot(baseEl);
|
|
24024
23989
|
const { wrapperAnimation, backdropAnimation, contentAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation$1();
|
|
@@ -24111,7 +24076,7 @@ const createLeaveAnimation$1 = () => {
|
|
|
24111
24076
|
/**
|
|
24112
24077
|
* iOS Modal Leave Animation
|
|
24113
24078
|
*/
|
|
24114
|
-
const iosLeaveAnimation$
|
|
24079
|
+
const iosLeaveAnimation$3 = (baseEl, opts, duration = 500) => {
|
|
24115
24080
|
const { presentingEl, currentBreakpoint } = opts;
|
|
24116
24081
|
const root = getElementRoot(baseEl);
|
|
24117
24082
|
const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation$1();
|
|
@@ -25484,10 +25449,6 @@ class Modal {
|
|
|
25484
25449
|
// Also called in dismiss() — intentional dual cleanup covers both
|
|
25485
25450
|
// dismiss-then-remove and direct DOM removal without dismiss.
|
|
25486
25451
|
this.cleanupSafeAreaOverrides();
|
|
25487
|
-
// Clean up aria-hidden if removed without dismiss() being called
|
|
25488
|
-
if (this.presented) {
|
|
25489
|
-
cleanupRootFocusTrapAccessibility();
|
|
25490
|
-
}
|
|
25491
25452
|
}
|
|
25492
25453
|
componentWillLoad() {
|
|
25493
25454
|
var _a;
|
|
@@ -25664,7 +25625,7 @@ class Modal {
|
|
|
25664
25625
|
this.statusBarStyle = await StatusBar.getStyle();
|
|
25665
25626
|
setCardStatusBarDark();
|
|
25666
25627
|
}
|
|
25667
|
-
await present(this, 'modalEnter', iosEnterAnimation$
|
|
25628
|
+
await present(this, 'modalEnter', iosEnterAnimation$3, mdEnterAnimation$2, {
|
|
25668
25629
|
presentingEl: presentingElement,
|
|
25669
25630
|
currentBreakpoint: this.initialBreakpoint,
|
|
25670
25631
|
backdropBreakpoint: this.backdropBreakpoint,
|
|
@@ -25726,7 +25687,7 @@ class Modal {
|
|
|
25726
25687
|
// All of the elements needed for the swipe gesture
|
|
25727
25688
|
// should be in the DOM and referenced by now, except
|
|
25728
25689
|
// for the presenting el
|
|
25729
|
-
const animationBuilder = this.leaveAnimation || config.get('modalLeave', iosLeaveAnimation$
|
|
25690
|
+
const animationBuilder = this.leaveAnimation || config.get('modalLeave', iosLeaveAnimation$3);
|
|
25730
25691
|
const ani = (this.animation = animationBuilder(el, {
|
|
25731
25692
|
presentingEl: this.presentingElement,
|
|
25732
25693
|
expandToScroll: this.expandToScroll,
|
|
@@ -25745,7 +25706,7 @@ class Modal {
|
|
|
25745
25706
|
if (!wrapperEl || initialBreakpoint === undefined) {
|
|
25746
25707
|
return;
|
|
25747
25708
|
}
|
|
25748
|
-
const animationBuilder = this.enterAnimation || config.get('modalEnter', iosEnterAnimation$
|
|
25709
|
+
const animationBuilder = this.enterAnimation || config.get('modalEnter', iosEnterAnimation$3);
|
|
25749
25710
|
const ani = (this.animation = animationBuilder(this.el, {
|
|
25750
25711
|
presentingEl: this.presentingElement,
|
|
25751
25712
|
currentBreakpoint: initialBreakpoint,
|
|
@@ -25935,7 +25896,7 @@ class Modal {
|
|
|
25935
25896
|
window.removeEventListener(KEYBOARD_DID_OPEN, this.keyboardOpenCallback);
|
|
25936
25897
|
this.keyboardOpenCallback = undefined;
|
|
25937
25898
|
}
|
|
25938
|
-
const dismissed = await dismiss(this, data, role, 'modalLeave', iosLeaveAnimation$
|
|
25899
|
+
const dismissed = await dismiss(this, data, role, 'modalLeave', iosLeaveAnimation$3, mdLeaveAnimation$2, {
|
|
25939
25900
|
presentingEl: presentingElement,
|
|
25940
25901
|
currentBreakpoint: (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : this.initialBreakpoint,
|
|
25941
25902
|
backdropBreakpoint: this.backdropBreakpoint,
|
|
@@ -26367,20 +26328,20 @@ class Modal {
|
|
|
26367
26328
|
const isCardModal = presentingElement !== undefined && mode === 'ios';
|
|
26368
26329
|
const isHandleCycle = handleBehavior === 'cycle';
|
|
26369
26330
|
const isSheetModalWithHandle = isSheetModal && showHandle;
|
|
26370
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
26331
|
+
return (hAsync(Host, Object.assign({ key: '4bf38aa67df9a3f977163bba5423960bbafd16de', "no-router": true,
|
|
26371
26332
|
// Allow the modal to be navigable when the handle is focusable
|
|
26372
26333
|
tabIndex: isHandleCycle && isSheetModalWithHandle ? 0 : -1 }, htmlAttributes, { style: {
|
|
26373
26334
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
26374
|
-
}, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`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: '
|
|
26335
|
+
}, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`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: '866da40cc5fc8d3e36637098fb3066a5bc9f4e0f', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && hAsync("div", { key: '5a2a05514ea8592c8feb0465e504aa7c7af17963', class: "modal-shadow" }), hAsync("div", Object.assign({ key: '4d327115306451f57d190b06ab8cbb6191a6f1d7',
|
|
26375
26336
|
/*
|
|
26376
26337
|
role and aria-modal must be used on the
|
|
26377
26338
|
same element. They must also be set inside the
|
|
26378
26339
|
shadow DOM otherwise ion-button will not be highlighted
|
|
26379
26340
|
when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
|
|
26380
26341
|
*/
|
|
26381
|
-
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: '
|
|
26342
|
+
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: 'd1882835cc049232c0d957e3ba1e79676a07d179', class: "modal-handle",
|
|
26382
26343
|
// Prevents the handle from receiving keyboard focus when it does not cycle
|
|
26383
|
-
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: '
|
|
26344
|
+
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: '81dc58b09cf7d7022b04cd170f53113604364d5e', onSlotchange: this.onSlotChange }))));
|
|
26384
26345
|
}
|
|
26385
26346
|
get el() { return getElement(this); }
|
|
26386
26347
|
static get watchers() { return {
|
|
@@ -27460,14 +27421,14 @@ class Note {
|
|
|
27460
27421
|
}; }
|
|
27461
27422
|
}
|
|
27462
27423
|
|
|
27463
|
-
const pickerIosCss = () => `:host{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:200px;direction:ltr;z-index:0}:host .picker-before,:host .picker-after{position:absolute;width:100%;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:1;pointer-events:none}:host .picker-before{top:0;height:83px}:host .picker-before{inset-inline-start:0}:host .picker-after{top:116px;height:84px}:host .picker-after{inset-inline-start:0}:host .picker-highlight{border-radius:var(--highlight-border-radius, 8px);left:0;right:0;top:50%;bottom:0;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;position:absolute;width:calc(100% - 16px);height:34px;-webkit-transform:translateY(-50%);transform:translateY(-50%);background:var(--highlight-background);z-index:-1}:host input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}:host ::slotted(ion-picker-column:first-of-type){text-align:start}:host ::slotted(ion-picker-column:last-of-type){text-align:end}:host ::slotted(ion-picker-column:only-child){text-align:center}:host .picker-before{background:-webkit-gradient(linear, left top, left bottom, color-stop(20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), to(rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8)));background:linear-gradient(to bottom, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8) 100%)}:host .picker-after{background:-webkit-gradient(linear, left bottom, left top, color-stop(20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), to(rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8)));background:linear-gradient(to top, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8) 100%)}:host .picker-highlight{background:var(--highlight-background, var(--ion-color-step-150, var(--ion-background-color-step-150, #eeeeef)))}`;
|
|
27424
|
+
const pickerIosCss$1 = () => `:host{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:200px;direction:ltr;z-index:0}:host .picker-before,:host .picker-after{position:absolute;width:100%;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:1;pointer-events:none}:host .picker-before{top:0;height:83px}:host .picker-before{inset-inline-start:0}:host .picker-after{top:116px;height:84px}:host .picker-after{inset-inline-start:0}:host .picker-highlight{border-radius:var(--highlight-border-radius, 8px);left:0;right:0;top:50%;bottom:0;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;position:absolute;width:calc(100% - 16px);height:34px;-webkit-transform:translateY(-50%);transform:translateY(-50%);background:var(--highlight-background);z-index:-1}:host input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}:host ::slotted(ion-picker-column:first-of-type){text-align:start}:host ::slotted(ion-picker-column:last-of-type){text-align:end}:host ::slotted(ion-picker-column:only-child){text-align:center}:host .picker-before{background:-webkit-gradient(linear, left top, left bottom, color-stop(20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), to(rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8)));background:linear-gradient(to bottom, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8) 100%)}:host .picker-after{background:-webkit-gradient(linear, left bottom, left top, color-stop(20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), to(rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8)));background:linear-gradient(to top, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8) 100%)}:host .picker-highlight{background:var(--highlight-background, var(--ion-color-step-150, var(--ion-background-color-step-150, #eeeeef)))}`;
|
|
27464
27425
|
|
|
27465
|
-
const pickerMdCss = () => `:host{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:200px;direction:ltr;z-index:0}:host .picker-before,:host .picker-after{position:absolute;width:100%;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:1;pointer-events:none}:host .picker-before{top:0;height:83px}:host .picker-before{inset-inline-start:0}:host .picker-after{top:116px;height:84px}:host .picker-after{inset-inline-start:0}:host .picker-highlight{border-radius:var(--highlight-border-radius, 8px);left:0;right:0;top:50%;bottom:0;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;position:absolute;width:calc(100% - 16px);height:34px;-webkit-transform:translateY(-50%);transform:translateY(-50%);background:var(--highlight-background);z-index:-1}:host input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}:host ::slotted(ion-picker-column:first-of-type){text-align:start}:host ::slotted(ion-picker-column:last-of-type){text-align:end}:host ::slotted(ion-picker-column:only-child){text-align:center}:host .picker-before{background:-webkit-gradient(linear, left top, left bottom, color-stop(20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), color-stop(90%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0)));background:linear-gradient(to bottom, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0) 90%)}:host .picker-after{background:-webkit-gradient(linear, left bottom, left top, color-stop(30%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), color-stop(90%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0)));background:linear-gradient(to top, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 30%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0) 90%)}`;
|
|
27426
|
+
const pickerMdCss$1 = () => `:host{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:200px;direction:ltr;z-index:0}:host .picker-before,:host .picker-after{position:absolute;width:100%;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:1;pointer-events:none}:host .picker-before{top:0;height:83px}:host .picker-before{inset-inline-start:0}:host .picker-after{top:116px;height:84px}:host .picker-after{inset-inline-start:0}:host .picker-highlight{border-radius:var(--highlight-border-radius, 8px);left:0;right:0;top:50%;bottom:0;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;position:absolute;width:calc(100% - 16px);height:34px;-webkit-transform:translateY(-50%);transform:translateY(-50%);background:var(--highlight-background);z-index:-1}:host input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}:host ::slotted(ion-picker-column:first-of-type){text-align:start}:host ::slotted(ion-picker-column:last-of-type){text-align:end}:host ::slotted(ion-picker-column:only-child){text-align:center}:host .picker-before{background:-webkit-gradient(linear, left top, left bottom, color-stop(20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), color-stop(90%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0)));background:linear-gradient(to bottom, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0) 90%)}:host .picker-after{background:-webkit-gradient(linear, left bottom, left top, color-stop(30%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), color-stop(90%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0)));background:linear-gradient(to top, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 30%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0) 90%)}`;
|
|
27466
27427
|
|
|
27467
27428
|
/**
|
|
27468
27429
|
* @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
|
|
27469
27430
|
*/
|
|
27470
|
-
class Picker {
|
|
27431
|
+
let Picker$1 = class Picker {
|
|
27471
27432
|
constructor(hostRef) {
|
|
27472
27433
|
registerInstance(this, hostRef);
|
|
27473
27434
|
this.ionInputModeChange = createEvent(this, "ionInputModeChange", 7);
|
|
@@ -27933,8 +27894,8 @@ class Picker {
|
|
|
27933
27894
|
}
|
|
27934
27895
|
get el() { return getElement(this); }
|
|
27935
27896
|
static get style() { return {
|
|
27936
|
-
ios: pickerIosCss(),
|
|
27937
|
-
md: pickerMdCss()
|
|
27897
|
+
ios: pickerIosCss$1(),
|
|
27898
|
+
md: pickerMdCss$1()
|
|
27938
27899
|
}; }
|
|
27939
27900
|
static get cmpMeta() { return {
|
|
27940
27901
|
"$flags$": 297,
|
|
@@ -27946,7 +27907,322 @@ class Picker {
|
|
|
27946
27907
|
"$lazyBundleId$": "-",
|
|
27947
27908
|
"$attrsToReflect$": []
|
|
27948
27909
|
}; }
|
|
27910
|
+
};
|
|
27911
|
+
|
|
27912
|
+
/**
|
|
27913
|
+
* iOS Picker Enter Animation
|
|
27914
|
+
*/
|
|
27915
|
+
const iosEnterAnimation$2 = (baseEl) => {
|
|
27916
|
+
const baseAnimation = createAnimation();
|
|
27917
|
+
const backdropAnimation = createAnimation();
|
|
27918
|
+
const wrapperAnimation = createAnimation();
|
|
27919
|
+
backdropAnimation
|
|
27920
|
+
.addElement(baseEl.querySelector('ion-backdrop'))
|
|
27921
|
+
.fromTo('opacity', 0.01, 'var(--backdrop-opacity)')
|
|
27922
|
+
.beforeStyles({
|
|
27923
|
+
'pointer-events': 'none',
|
|
27924
|
+
})
|
|
27925
|
+
.afterClearStyles(['pointer-events']);
|
|
27926
|
+
wrapperAnimation
|
|
27927
|
+
.addElement(baseEl.querySelector('.picker-wrapper'))
|
|
27928
|
+
.fromTo('transform', 'translateY(100%)', 'translateY(0%)');
|
|
27929
|
+
return baseAnimation
|
|
27930
|
+
.addElement(baseEl)
|
|
27931
|
+
.easing('cubic-bezier(.36,.66,.04,1)')
|
|
27932
|
+
.duration(400)
|
|
27933
|
+
.addAnimation([backdropAnimation, wrapperAnimation]);
|
|
27934
|
+
};
|
|
27935
|
+
|
|
27936
|
+
/**
|
|
27937
|
+
* iOS Picker Leave Animation
|
|
27938
|
+
*/
|
|
27939
|
+
const iosLeaveAnimation$2 = (baseEl) => {
|
|
27940
|
+
const baseAnimation = createAnimation();
|
|
27941
|
+
const backdropAnimation = createAnimation();
|
|
27942
|
+
const wrapperAnimation = createAnimation();
|
|
27943
|
+
backdropAnimation
|
|
27944
|
+
.addElement(baseEl.querySelector('ion-backdrop'))
|
|
27945
|
+
.fromTo('opacity', 'var(--backdrop-opacity)', 0.01);
|
|
27946
|
+
wrapperAnimation
|
|
27947
|
+
.addElement(baseEl.querySelector('.picker-wrapper'))
|
|
27948
|
+
.fromTo('transform', 'translateY(0%)', 'translateY(100%)');
|
|
27949
|
+
return baseAnimation
|
|
27950
|
+
.addElement(baseEl)
|
|
27951
|
+
.easing('cubic-bezier(.36,.66,.04,1)')
|
|
27952
|
+
.duration(400)
|
|
27953
|
+
.addAnimation([backdropAnimation, wrapperAnimation]);
|
|
27954
|
+
};
|
|
27955
|
+
|
|
27956
|
+
const pickerIosCss = () => `.sc-ion-picker-legacy-ios-h{--border-radius:0;--border-style:solid;--min-width:auto;--width:100%;--max-width:500px;--min-height:auto;--max-height:auto;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;top:0;display:block;position:absolute;width:100%;height:100%;outline:none;font-family:var(--ion-font-family, inherit);contain:strict;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:1001}.sc-ion-picker-legacy-ios-h{inset-inline-start:0}.overlay-hidden.sc-ion-picker-legacy-ios-h{display:none}.picker-wrapper.sc-ion-picker-legacy-ios{border-radius:var(--border-radius);left:0;right:0;bottom:0;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:auto;margin-bottom:auto;-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0);display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);contain:strict;overflow:hidden;z-index:10}.picker-toolbar.sc-ion-picker-legacy-ios{width:100%;background:transparent;contain:strict;z-index:1}.picker-button.sc-ion-picker-legacy-ios{border:0;font-family:inherit}.picker-button.sc-ion-picker-legacy-ios:active,.picker-button.sc-ion-picker-legacy-ios:focus{outline:none}.picker-columns.sc-ion-picker-legacy-ios{display:-ms-flexbox;display:flex;position:relative;-ms-flex-pack:center;justify-content:center;margin-bottom:var(--ion-safe-area-bottom, 0);contain:strict;overflow:hidden}.picker-above-highlight.sc-ion-picker-legacy-ios,.picker-below-highlight.sc-ion-picker-legacy-ios{display:none;pointer-events:none}.sc-ion-picker-legacy-ios-h{--background:var(--ion-background-color, #fff);--border-width:1px 0 0;--border-color:var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-250, var(--ion-background-color-step-250, #c8c7cc))));--height:260px;--backdrop-opacity:var(--ion-backdrop-opacity, 0.26);color:var(--ion-item-color, var(--ion-text-color, #000))}.picker-toolbar.sc-ion-picker-legacy-ios{display:-ms-flexbox;display:flex;height:44px;border-bottom:0.55px solid var(--border-color)}.picker-toolbar-button.sc-ion-picker-legacy-ios{-ms-flex:1;flex:1;text-align:end}.picker-toolbar-button.sc-ion-picker-legacy-ios:last-child .picker-button.sc-ion-picker-legacy-ios{font-weight:600}.picker-toolbar-button.sc-ion-picker-legacy-ios:first-child{font-weight:normal;text-align:start}.picker-button.sc-ion-picker-legacy-ios,.picker-button.ion-activated.sc-ion-picker-legacy-ios{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;-webkit-padding-start:1em;padding-inline-start:1em;-webkit-padding-end:1em;padding-inline-end:1em;padding-top:0;padding-bottom:0;height:44px;background:transparent;color:var(--ion-color-primary, #0054e9);font-size:16px}.picker-columns.sc-ion-picker-legacy-ios{height:215px;-webkit-perspective:1000px;perspective:1000px}.picker-above-highlight.sc-ion-picker-legacy-ios{top:0;-webkit-transform:translate3d(0, 0, 90px);transform:translate3d(0, 0, 90px);display:block;position:absolute;width:100%;height:81px;border-bottom:1px solid var(--border-color);background:-webkit-gradient(linear, left top, left bottom, color-stop(20%, var(--background, var(--ion-background-color, #fff))), to(rgba(var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255)), 0.8)));background:linear-gradient(to bottom, var(--background, var(--ion-background-color, #fff)) 20%, rgba(var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255)), 0.8) 100%);z-index:10}.picker-above-highlight.sc-ion-picker-legacy-ios{inset-inline-start:0}.picker-below-highlight.sc-ion-picker-legacy-ios{top:115px;-webkit-transform:translate3d(0, 0, 90px);transform:translate3d(0, 0, 90px);display:block;position:absolute;width:100%;height:119px;border-top:1px solid var(--border-color);background:-webkit-gradient(linear, left bottom, left top, color-stop(30%, var(--background, var(--ion-background-color, #fff))), to(rgba(var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255)), 0.8)));background:linear-gradient(to top, var(--background, var(--ion-background-color, #fff)) 30%, rgba(var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255)), 0.8) 100%);z-index:11}.picker-below-highlight.sc-ion-picker-legacy-ios{inset-inline-start:0}`;
|
|
27957
|
+
|
|
27958
|
+
const pickerMdCss = () => `.sc-ion-picker-legacy-md-h{--border-radius:0;--border-style:solid;--min-width:auto;--width:100%;--max-width:500px;--min-height:auto;--max-height:auto;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;top:0;display:block;position:absolute;width:100%;height:100%;outline:none;font-family:var(--ion-font-family, inherit);contain:strict;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:1001}.sc-ion-picker-legacy-md-h{inset-inline-start:0}.overlay-hidden.sc-ion-picker-legacy-md-h{display:none}.picker-wrapper.sc-ion-picker-legacy-md{border-radius:var(--border-radius);left:0;right:0;bottom:0;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:auto;margin-bottom:auto;-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0);display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);contain:strict;overflow:hidden;z-index:10}.picker-toolbar.sc-ion-picker-legacy-md{width:100%;background:transparent;contain:strict;z-index:1}.picker-button.sc-ion-picker-legacy-md{border:0;font-family:inherit}.picker-button.sc-ion-picker-legacy-md:active,.picker-button.sc-ion-picker-legacy-md:focus{outline:none}.picker-columns.sc-ion-picker-legacy-md{display:-ms-flexbox;display:flex;position:relative;-ms-flex-pack:center;justify-content:center;margin-bottom:var(--ion-safe-area-bottom, 0);contain:strict;overflow:hidden}.picker-above-highlight.sc-ion-picker-legacy-md,.picker-below-highlight.sc-ion-picker-legacy-md{display:none;pointer-events:none}.sc-ion-picker-legacy-md-h{--background:var(--ion-background-color, #fff);--border-width:0.55px 0 0;--border-color:var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-150, var(--ion-background-color-step-150, rgba(0, 0, 0, 0.13)))));--height:260px;--backdrop-opacity:var(--ion-backdrop-opacity, 0.26);color:var(--ion-item-color, var(--ion-text-color, #000))}.picker-toolbar.sc-ion-picker-legacy-md{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;height:44px}.picker-button.sc-ion-picker-legacy-md,.picker-button.ion-activated.sc-ion-picker-legacy-md{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;-webkit-padding-start:1.1em;padding-inline-start:1.1em;-webkit-padding-end:1.1em;padding-inline-end:1.1em;padding-top:0;padding-bottom:0;height:44px;background:transparent;color:var(--ion-color-primary, #0054e9);font-size:14px;font-weight:500;text-transform:uppercase;-webkit-box-shadow:none;box-shadow:none}.picker-columns.sc-ion-picker-legacy-md{height:216px;-webkit-perspective:1800px;perspective:1800px}.picker-above-highlight.sc-ion-picker-legacy-md{top:0;-webkit-transform:translate3d(0, 0, 90px);transform:translate3d(0, 0, 90px);position:absolute;width:100%;height:81px;border-bottom:1px solid var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-150, var(--ion-background-color-step-150, rgba(0, 0, 0, 0.13)))));background:-webkit-gradient(linear, left top, left bottom, color-stop(20%, var(--ion-background-color, #fff)), to(rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8)));background:linear-gradient(to bottom, var(--ion-background-color, #fff) 20%, rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8) 100%);z-index:10}.picker-above-highlight.sc-ion-picker-legacy-md{inset-inline-start:0}.picker-below-highlight.sc-ion-picker-legacy-md{top:115px;-webkit-transform:translate3d(0, 0, 90px);transform:translate3d(0, 0, 90px);position:absolute;width:100%;height:119px;border-top:1px solid var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-150, var(--ion-background-color-step-150, rgba(0, 0, 0, 0.13)))));background:-webkit-gradient(linear, left bottom, left top, color-stop(30%, var(--ion-background-color, #fff)), to(rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8)));background:linear-gradient(to top, var(--ion-background-color, #fff) 30%, rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8) 100%);z-index:11}.picker-below-highlight.sc-ion-picker-legacy-md{inset-inline-start:0}`;
|
|
27959
|
+
|
|
27960
|
+
// TODO(FW-2832): types
|
|
27961
|
+
/**
|
|
27962
|
+
* @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
|
|
27963
|
+
*/
|
|
27964
|
+
class Picker {
|
|
27965
|
+
constructor(hostRef) {
|
|
27966
|
+
registerInstance(this, hostRef);
|
|
27967
|
+
this.didPresent = createEvent(this, "ionPickerDidPresent", 7);
|
|
27968
|
+
this.willPresent = createEvent(this, "ionPickerWillPresent", 7);
|
|
27969
|
+
this.willDismiss = createEvent(this, "ionPickerWillDismiss", 7);
|
|
27970
|
+
this.didDismiss = createEvent(this, "ionPickerDidDismiss", 7);
|
|
27971
|
+
this.didPresentShorthand = createEvent(this, "didPresent", 7);
|
|
27972
|
+
this.willPresentShorthand = createEvent(this, "willPresent", 7);
|
|
27973
|
+
this.willDismissShorthand = createEvent(this, "willDismiss", 7);
|
|
27974
|
+
this.didDismissShorthand = createEvent(this, "didDismiss", 7);
|
|
27975
|
+
this.delegateController = createDelegateController(this);
|
|
27976
|
+
this.lockController = createLockController();
|
|
27977
|
+
this.triggerController = createTriggerController();
|
|
27978
|
+
this.presented = false;
|
|
27979
|
+
/** @internal */
|
|
27980
|
+
this.hasController = false;
|
|
27981
|
+
/**
|
|
27982
|
+
* If `true`, the keyboard will be automatically dismissed when the overlay is presented.
|
|
27983
|
+
*/
|
|
27984
|
+
this.keyboardClose = true;
|
|
27985
|
+
/**
|
|
27986
|
+
* Array of buttons to be displayed at the top of the picker.
|
|
27987
|
+
*/
|
|
27988
|
+
this.buttons = [];
|
|
27989
|
+
/**
|
|
27990
|
+
* Array of columns to be displayed in the picker.
|
|
27991
|
+
*/
|
|
27992
|
+
this.columns = [];
|
|
27993
|
+
/**
|
|
27994
|
+
* Number of milliseconds to wait before dismissing the picker.
|
|
27995
|
+
*/
|
|
27996
|
+
this.duration = 0;
|
|
27997
|
+
/**
|
|
27998
|
+
* If `true`, a backdrop will be displayed behind the picker.
|
|
27999
|
+
*/
|
|
28000
|
+
this.showBackdrop = true;
|
|
28001
|
+
/**
|
|
28002
|
+
* If `true`, the picker will be dismissed when the backdrop is clicked.
|
|
28003
|
+
*/
|
|
28004
|
+
this.backdropDismiss = true;
|
|
28005
|
+
/**
|
|
28006
|
+
* If `true`, the picker will animate.
|
|
28007
|
+
*/
|
|
28008
|
+
this.animated = true;
|
|
28009
|
+
/**
|
|
28010
|
+
* If `true`, the picker will open. If `false`, the picker will close.
|
|
28011
|
+
* Use this if you need finer grained control over presentation, otherwise
|
|
28012
|
+
* just use the pickerController or the `trigger` property.
|
|
28013
|
+
* Note: `isOpen` will not automatically be set back to `false` when
|
|
28014
|
+
* the picker dismisses. You will need to do that in your code.
|
|
28015
|
+
*/
|
|
28016
|
+
this.isOpen = false;
|
|
28017
|
+
this.onBackdropTap = () => {
|
|
28018
|
+
this.dismiss(undefined, BACKDROP);
|
|
28019
|
+
};
|
|
28020
|
+
this.dispatchCancelHandler = (ev) => {
|
|
28021
|
+
const role = ev.detail.role;
|
|
28022
|
+
if (isCancel(role)) {
|
|
28023
|
+
const cancelButton = this.buttons.find((b) => b.role === 'cancel');
|
|
28024
|
+
this.callButtonHandler(cancelButton);
|
|
28025
|
+
}
|
|
28026
|
+
};
|
|
28027
|
+
}
|
|
28028
|
+
onIsOpenChange(newValue, oldValue) {
|
|
28029
|
+
if (newValue === true && oldValue === false) {
|
|
28030
|
+
this.present();
|
|
28031
|
+
}
|
|
28032
|
+
else if (newValue === false && oldValue === true) {
|
|
28033
|
+
this.dismiss();
|
|
28034
|
+
}
|
|
28035
|
+
}
|
|
28036
|
+
triggerChanged() {
|
|
28037
|
+
const { trigger, el, triggerController } = this;
|
|
28038
|
+
if (trigger) {
|
|
28039
|
+
triggerController.addClickListener(el, trigger);
|
|
28040
|
+
}
|
|
28041
|
+
}
|
|
28042
|
+
connectedCallback() {
|
|
28043
|
+
prepareOverlay(this.el);
|
|
28044
|
+
this.triggerChanged();
|
|
28045
|
+
}
|
|
28046
|
+
disconnectedCallback() {
|
|
28047
|
+
this.triggerController.removeClickListener();
|
|
28048
|
+
}
|
|
28049
|
+
componentWillLoad() {
|
|
28050
|
+
var _a;
|
|
28051
|
+
if (!((_a = this.htmlAttributes) === null || _a === void 0 ? void 0 : _a.id)) {
|
|
28052
|
+
setOverlayId(this.el);
|
|
28053
|
+
}
|
|
28054
|
+
}
|
|
28055
|
+
componentDidLoad() {
|
|
28056
|
+
printIonWarning('[ion-picker-legacy] - ion-picker-legacy and ion-picker-legacy-column have been deprecated in favor of new versions of the ion-picker and ion-picker-column components. These new components display inline with your page content allowing for more presentation flexibility than before.', this.el);
|
|
28057
|
+
/**
|
|
28058
|
+
* If picker was rendered with isOpen="true"
|
|
28059
|
+
* then we should open picker immediately.
|
|
28060
|
+
*/
|
|
28061
|
+
if (this.isOpen === true) {
|
|
28062
|
+
raf(() => this.present());
|
|
28063
|
+
}
|
|
28064
|
+
/**
|
|
28065
|
+
* When binding values in frameworks such as Angular
|
|
28066
|
+
* it is possible for the value to be set after the Web Component
|
|
28067
|
+
* initializes but before the value watcher is set up in Stencil.
|
|
28068
|
+
* As a result, the watcher callback may not be fired.
|
|
28069
|
+
* We work around this by manually calling the watcher
|
|
28070
|
+
* callback when the component has loaded and the watcher
|
|
28071
|
+
* is configured.
|
|
28072
|
+
*/
|
|
28073
|
+
this.triggerChanged();
|
|
28074
|
+
}
|
|
28075
|
+
/**
|
|
28076
|
+
* Present the picker overlay after it has been created.
|
|
28077
|
+
*/
|
|
28078
|
+
async present() {
|
|
28079
|
+
const unlock = await this.lockController.lock();
|
|
28080
|
+
await this.delegateController.attachViewToDom();
|
|
28081
|
+
await present(this, 'pickerEnter', iosEnterAnimation$2, iosEnterAnimation$2, undefined);
|
|
28082
|
+
if (this.duration > 0) {
|
|
28083
|
+
this.durationTimeout = setTimeout(() => this.dismiss(), this.duration);
|
|
28084
|
+
}
|
|
28085
|
+
unlock();
|
|
28086
|
+
}
|
|
28087
|
+
/**
|
|
28088
|
+
* Dismiss the picker overlay after it has been presented.
|
|
28089
|
+
*
|
|
28090
|
+
* @param data Any data to emit in the dismiss events.
|
|
28091
|
+
* @param role The role of the element that is dismissing the picker.
|
|
28092
|
+
* This can be useful in a button handler for determining which button was
|
|
28093
|
+
* clicked to dismiss the picker.
|
|
28094
|
+
* Some examples include: ``"cancel"`, `"destructive"`, "selected"`, and `"backdrop"`.
|
|
28095
|
+
*/
|
|
28096
|
+
async dismiss(data, role) {
|
|
28097
|
+
const unlock = await this.lockController.lock();
|
|
28098
|
+
if (this.durationTimeout) {
|
|
28099
|
+
clearTimeout(this.durationTimeout);
|
|
28100
|
+
}
|
|
28101
|
+
const dismissed = await dismiss(this, data, role, 'pickerLeave', iosLeaveAnimation$2, iosLeaveAnimation$2);
|
|
28102
|
+
if (dismissed) {
|
|
28103
|
+
this.delegateController.removeViewFromDom();
|
|
28104
|
+
}
|
|
28105
|
+
unlock();
|
|
28106
|
+
return dismissed;
|
|
28107
|
+
}
|
|
28108
|
+
/**
|
|
28109
|
+
* Returns a promise that resolves when the picker did dismiss.
|
|
28110
|
+
*/
|
|
28111
|
+
onDidDismiss() {
|
|
28112
|
+
return eventMethod(this.el, 'ionPickerDidDismiss');
|
|
28113
|
+
}
|
|
28114
|
+
/**
|
|
28115
|
+
* Returns a promise that resolves when the picker will dismiss.
|
|
28116
|
+
*/
|
|
28117
|
+
onWillDismiss() {
|
|
28118
|
+
return eventMethod(this.el, 'ionPickerWillDismiss');
|
|
28119
|
+
}
|
|
28120
|
+
/**
|
|
28121
|
+
* Get the column that matches the specified name.
|
|
28122
|
+
*
|
|
28123
|
+
* @param name The name of the column.
|
|
28124
|
+
*/
|
|
28125
|
+
getColumn(name) {
|
|
28126
|
+
return Promise.resolve(this.columns.find((column) => column.name === name));
|
|
28127
|
+
}
|
|
28128
|
+
async buttonClick(button) {
|
|
28129
|
+
const role = button.role;
|
|
28130
|
+
if (isCancel(role)) {
|
|
28131
|
+
return this.dismiss(undefined, role);
|
|
28132
|
+
}
|
|
28133
|
+
const shouldDismiss = await this.callButtonHandler(button);
|
|
28134
|
+
if (shouldDismiss) {
|
|
28135
|
+
return this.dismiss(this.getSelected(), button.role);
|
|
28136
|
+
}
|
|
28137
|
+
return Promise.resolve();
|
|
28138
|
+
}
|
|
28139
|
+
async callButtonHandler(button) {
|
|
28140
|
+
if (button) {
|
|
28141
|
+
// a handler has been provided, execute it
|
|
28142
|
+
// pass the handler the values from the inputs
|
|
28143
|
+
const rtn = await safeCall(button.handler, this.getSelected());
|
|
28144
|
+
if (rtn === false) {
|
|
28145
|
+
// if the return value of the handler is false then do not dismiss
|
|
28146
|
+
return false;
|
|
28147
|
+
}
|
|
28148
|
+
}
|
|
28149
|
+
return true;
|
|
28150
|
+
}
|
|
28151
|
+
getSelected() {
|
|
28152
|
+
const selected = {};
|
|
28153
|
+
this.columns.forEach((col, index) => {
|
|
28154
|
+
const selectedColumn = col.selectedIndex !== undefined ? col.options[col.selectedIndex] : undefined;
|
|
28155
|
+
selected[col.name] = {
|
|
28156
|
+
text: selectedColumn ? selectedColumn.text : undefined,
|
|
28157
|
+
value: selectedColumn ? selectedColumn.value : undefined,
|
|
28158
|
+
columnIndex: index,
|
|
28159
|
+
};
|
|
28160
|
+
});
|
|
28161
|
+
return selected;
|
|
28162
|
+
}
|
|
28163
|
+
render() {
|
|
28164
|
+
const { htmlAttributes } = this;
|
|
28165
|
+
const mode = getIonMode$1(this);
|
|
28166
|
+
return (hAsync(Host, Object.assign({ key: '80f66d33780d8a1352d24be9cb63a0cc03d01ab5', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
|
|
28167
|
+
zIndex: `${20000 + this.overlayIndex}`,
|
|
28168
|
+
}, class: Object.assign({ [mode]: true,
|
|
28169
|
+
// Used internally for styling
|
|
28170
|
+
[`picker-${mode}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), hAsync("ion-backdrop", { key: '97fb8e10ba08b197610cb8c0cdea61103883d55f', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: 'b3969cb6fbf7153623d14e3ca1493d3370efb211', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: '299268483c3727e698d9135bfdf40349a7050ac1', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, hAsync("div", { key: '95394de3ef691899b7dbf416f56fd3e86bbdce3f', 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: '05f18bb8d00dc0e22f691b7e41f90f729a6c66d7', class: "picker-columns" }, hAsync("div", { key: '4a8fdf224effc0af67fd413e2e6aca8a78d1cf43', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => hAsync("ion-picker-legacy-column", { col: c })), hAsync("div", { key: 'e50a31db45e3f39e9d0fed36a21be9257eec09bf', class: "picker-below-highlight" }))), hAsync("div", { key: '5a78cb2176ac807ea0c195c6b76cd0e8eef9d4c0', tabindex: "0", "aria-hidden": "true" })));
|
|
28171
|
+
}
|
|
28172
|
+
get el() { return getElement(this); }
|
|
28173
|
+
static get watchers() { return {
|
|
28174
|
+
"isOpen": [{
|
|
28175
|
+
"onIsOpenChange": 0
|
|
28176
|
+
}],
|
|
28177
|
+
"trigger": [{
|
|
28178
|
+
"triggerChanged": 0
|
|
28179
|
+
}]
|
|
28180
|
+
}; }
|
|
28181
|
+
static get style() { return {
|
|
28182
|
+
ios: pickerIosCss(),
|
|
28183
|
+
md: pickerMdCss()
|
|
28184
|
+
}; }
|
|
28185
|
+
static get cmpMeta() { return {
|
|
28186
|
+
"$flags$": 34,
|
|
28187
|
+
"$tagName$": "ion-picker-legacy",
|
|
28188
|
+
"$members$": {
|
|
28189
|
+
"overlayIndex": [2, "overlay-index"],
|
|
28190
|
+
"delegate": [16],
|
|
28191
|
+
"hasController": [4, "has-controller"],
|
|
28192
|
+
"keyboardClose": [4, "keyboard-close"],
|
|
28193
|
+
"enterAnimation": [16],
|
|
28194
|
+
"leaveAnimation": [16],
|
|
28195
|
+
"buttons": [16],
|
|
28196
|
+
"columns": [16],
|
|
28197
|
+
"cssClass": [1, "css-class"],
|
|
28198
|
+
"duration": [2],
|
|
28199
|
+
"showBackdrop": [4, "show-backdrop"],
|
|
28200
|
+
"backdropDismiss": [4, "backdrop-dismiss"],
|
|
28201
|
+
"animated": [4],
|
|
28202
|
+
"htmlAttributes": [16],
|
|
28203
|
+
"isOpen": [4, "is-open"],
|
|
28204
|
+
"trigger": [1],
|
|
28205
|
+
"presented": [32],
|
|
28206
|
+
"present": [64],
|
|
28207
|
+
"dismiss": [64],
|
|
28208
|
+
"onDidDismiss": [64],
|
|
28209
|
+
"onWillDismiss": [64],
|
|
28210
|
+
"getColumn": [64]
|
|
28211
|
+
},
|
|
28212
|
+
"$listeners$": undefined,
|
|
28213
|
+
"$lazyBundleId$": "-",
|
|
28214
|
+
"$attrsToReflect$": []
|
|
28215
|
+
}; }
|
|
27949
28216
|
}
|
|
28217
|
+
const buttonWrapperClass = (button) => {
|
|
28218
|
+
return {
|
|
28219
|
+
[`picker-toolbar-${button.role}`]: button.role !== undefined,
|
|
28220
|
+
'picker-toolbar-button': true,
|
|
28221
|
+
};
|
|
28222
|
+
};
|
|
28223
|
+
const buttonClass$1 = (button) => {
|
|
28224
|
+
return Object.assign({ 'picker-button': true, 'ion-activatable': true }, getClassMap(button.cssClass));
|
|
28225
|
+
};
|
|
27950
28226
|
|
|
27951
28227
|
const pickerColumnCss = () => `:host{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;max-width:100%;height:200px;font-size:22px;text-align:center}.assistive-focusable{left:0;right:0;top:0;bottom:0;position:absolute;z-index:1;pointer-events:none}.assistive-focusable:focus{outline:none}.picker-opts{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0px;padding-bottom:0px;min-width:26px;max-height:200px;outline:none;text-align:inherit;-webkit-scroll-snap-type:y mandatory;-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory;overflow-x:hidden;overflow-y:scroll;scrollbar-width:none}.picker-item-empty{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:block;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.picker-opts::-webkit-scrollbar{display:none}::slotted(ion-picker-column-option){display:block;scroll-snap-align:center}.picker-item-empty,:host(:not([disabled])) ::slotted(ion-picker-column-option.option-disabled){scroll-snap-align:none}::slotted([slot=prefix]),::slotted([slot=suffix]){max-width:200px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::slotted([slot=prefix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:end;justify-content:end}::slotted([slot=suffix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:start;justify-content:start}:host(.picker-column-disabled) .picker-opts{overflow-y:hidden}:host(.picker-column-disabled) ::slotted(ion-picker-column-option){cursor:default;opacity:0.4;pointer-events:none}@media (any-hover: hover){:host(:focus) .picker-opts{outline:none;background:rgba(var(--ion-color-base-rgb), 0.2)}}`;
|
|
27952
28228
|
|
|
@@ -28533,6 +28809,371 @@ class PickerColumn {
|
|
|
28533
28809
|
}
|
|
28534
28810
|
const PICKER_ITEM_ACTIVE_CLASS = 'option-active';
|
|
28535
28811
|
|
|
28812
|
+
const pickerColumnIosCss = () => `.picker-col{display:-ms-flexbox;display:flex;position:relative;-ms-flex:1;flex:1;-ms-flex-pack:center;justify-content:center;height:100%;-webkit-box-sizing:content-box;box-sizing:content-box;contain:content}.picker-opts{position:relative;-ms-flex:1;flex:1;max-width:100%}.picker-opt{top:0;display:block;position:absolute;width:100%;border:0;text-align:center;text-overflow:ellipsis;white-space:nowrap;contain:strict;overflow:hidden;will-change:transform}.picker-opt{inset-inline-start:0}.picker-opt.picker-opt-disabled{pointer-events:none}.picker-opt-disabled{opacity:0}.picker-opts-left{-ms-flex-pack:start;justify-content:flex-start}.picker-opts-right{-ms-flex-pack:end;justify-content:flex-end}.picker-opt:active,.picker-opt:focus{outline:none}.picker-prefix{position:relative;-ms-flex:1;flex:1;text-align:end;white-space:nowrap}.picker-suffix{position:relative;-ms-flex:1;flex:1;text-align:start;white-space:nowrap}.picker-col{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:0;padding-bottom:0;-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.picker-prefix,.picker-suffix,.picker-opts{top:77px;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;color:inherit;font-size:20px;line-height:42px;pointer-events:none}.picker-opt{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;-webkit-transform-origin:center center;transform-origin:center center;height:46px;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out;background:transparent;color:inherit;font-size:20px;line-height:42px;-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:auto}:host-context([dir=rtl]) .picker-opt{-webkit-transform-origin:calc(100% - center) center;transform-origin:calc(100% - center) center}[dir=rtl] .picker-opt{-webkit-transform-origin:calc(100% - center) center;transform-origin:calc(100% - center) center}@supports selector(:dir(rtl)){.picker-opt:dir(rtl){-webkit-transform-origin:calc(100% - center) center;transform-origin:calc(100% - center) center}}`;
|
|
28813
|
+
|
|
28814
|
+
const pickerColumnMdCss = () => `.picker-col{display:-ms-flexbox;display:flex;position:relative;-ms-flex:1;flex:1;-ms-flex-pack:center;justify-content:center;height:100%;-webkit-box-sizing:content-box;box-sizing:content-box;contain:content}.picker-opts{position:relative;-ms-flex:1;flex:1;max-width:100%}.picker-opt{top:0;display:block;position:absolute;width:100%;border:0;text-align:center;text-overflow:ellipsis;white-space:nowrap;contain:strict;overflow:hidden;will-change:transform}.picker-opt{inset-inline-start:0}.picker-opt.picker-opt-disabled{pointer-events:none}.picker-opt-disabled{opacity:0}.picker-opts-left{-ms-flex-pack:start;justify-content:flex-start}.picker-opts-right{-ms-flex-pack:end;justify-content:flex-end}.picker-opt:active,.picker-opt:focus{outline:none}.picker-prefix{position:relative;-ms-flex:1;flex:1;text-align:end;white-space:nowrap}.picker-suffix{position:relative;-ms-flex:1;flex:1;text-align:start;white-space:nowrap}.picker-col{-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:0;padding-bottom:0;-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.picker-prefix,.picker-suffix,.picker-opts{top:77px;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;color:inherit;font-size:22px;line-height:42px;pointer-events:none}.picker-opt{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;height:43px;-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out;background:transparent;color:inherit;font-size:22px;line-height:42px;-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:auto}.picker-prefix,.picker-suffix,.picker-opt.picker-opt-selected{color:var(--ion-color-primary, #0054e9)}`;
|
|
28815
|
+
|
|
28816
|
+
/**
|
|
28817
|
+
* @internal
|
|
28818
|
+
*/
|
|
28819
|
+
class PickerColumnCmp {
|
|
28820
|
+
constructor(hostRef) {
|
|
28821
|
+
registerInstance(this, hostRef);
|
|
28822
|
+
this.ionPickerColChange = createEvent(this, "ionPickerColChange", 7);
|
|
28823
|
+
this.optHeight = 0;
|
|
28824
|
+
this.rotateFactor = 0;
|
|
28825
|
+
this.scaleFactor = 1;
|
|
28826
|
+
this.velocity = 0;
|
|
28827
|
+
this.y = 0;
|
|
28828
|
+
this.noAnimate = true;
|
|
28829
|
+
// `colDidChange` is a flag that gets set when the column is changed
|
|
28830
|
+
// dynamically. When this flag is set, the column will refresh
|
|
28831
|
+
// after the component re-renders to incorporate the new column data.
|
|
28832
|
+
// This is necessary because `this.refresh` queries for the option elements,
|
|
28833
|
+
// so it needs to wait for the latest elements to be available in the DOM.
|
|
28834
|
+
// Ex: column is created with 3 options. User updates the column data
|
|
28835
|
+
// to have 5 options. The column will still think it only has 3 options.
|
|
28836
|
+
this.colDidChange = false;
|
|
28837
|
+
}
|
|
28838
|
+
colChanged() {
|
|
28839
|
+
this.colDidChange = true;
|
|
28840
|
+
}
|
|
28841
|
+
async connectedCallback() {
|
|
28842
|
+
let pickerRotateFactor = 0;
|
|
28843
|
+
let pickerScaleFactor = 0.81;
|
|
28844
|
+
const mode = getIonMode$1(this);
|
|
28845
|
+
if (mode === 'ios') {
|
|
28846
|
+
pickerRotateFactor = -0.46;
|
|
28847
|
+
pickerScaleFactor = 1;
|
|
28848
|
+
}
|
|
28849
|
+
this.rotateFactor = pickerRotateFactor;
|
|
28850
|
+
this.scaleFactor = pickerScaleFactor;
|
|
28851
|
+
this.gesture = (await Promise.resolve().then(function () { return index; })).createGesture({
|
|
28852
|
+
el: this.el,
|
|
28853
|
+
gestureName: 'picker-swipe',
|
|
28854
|
+
gesturePriority: 100,
|
|
28855
|
+
threshold: 0,
|
|
28856
|
+
passive: false,
|
|
28857
|
+
onStart: (ev) => this.onStart(ev),
|
|
28858
|
+
onMove: (ev) => this.onMove(ev),
|
|
28859
|
+
onEnd: (ev) => this.onEnd(ev),
|
|
28860
|
+
});
|
|
28861
|
+
this.gesture.enable();
|
|
28862
|
+
// Options have not been initialized yet
|
|
28863
|
+
// Animation must be disabled through the `noAnimate` flag
|
|
28864
|
+
// Otherwise, the options will render
|
|
28865
|
+
// at the top of the column and transition down
|
|
28866
|
+
this.tmrId = setTimeout(() => {
|
|
28867
|
+
this.noAnimate = false;
|
|
28868
|
+
// After initialization, `refresh()` will be called
|
|
28869
|
+
// At this point, animation will be enabled. The options will
|
|
28870
|
+
// animate as they are being selected.
|
|
28871
|
+
this.refresh(true);
|
|
28872
|
+
}, 250);
|
|
28873
|
+
}
|
|
28874
|
+
componentDidLoad() {
|
|
28875
|
+
this.onDomChange();
|
|
28876
|
+
}
|
|
28877
|
+
componentDidUpdate() {
|
|
28878
|
+
// Options may have changed since last update.
|
|
28879
|
+
if (this.colDidChange) {
|
|
28880
|
+
// Animation must be disabled through the `onDomChange` parameter.
|
|
28881
|
+
// Otherwise, the recently added options will render
|
|
28882
|
+
// at the top of the column and transition down
|
|
28883
|
+
this.onDomChange(true, false);
|
|
28884
|
+
this.colDidChange = false;
|
|
28885
|
+
}
|
|
28886
|
+
}
|
|
28887
|
+
disconnectedCallback() {
|
|
28888
|
+
if (this.rafId !== undefined)
|
|
28889
|
+
cancelAnimationFrame(this.rafId);
|
|
28890
|
+
if (this.tmrId)
|
|
28891
|
+
clearTimeout(this.tmrId);
|
|
28892
|
+
if (this.gesture) {
|
|
28893
|
+
this.gesture.destroy();
|
|
28894
|
+
this.gesture = undefined;
|
|
28895
|
+
}
|
|
28896
|
+
}
|
|
28897
|
+
emitColChange() {
|
|
28898
|
+
this.ionPickerColChange.emit(this.col);
|
|
28899
|
+
}
|
|
28900
|
+
setSelected(selectedIndex, duration) {
|
|
28901
|
+
// if there is a selected index, then figure out it's y position
|
|
28902
|
+
// if there isn't a selected index, then just use the top y position
|
|
28903
|
+
const y = selectedIndex > -1 ? -(selectedIndex * this.optHeight) : 0;
|
|
28904
|
+
this.velocity = 0;
|
|
28905
|
+
// set what y position we're at
|
|
28906
|
+
if (this.rafId !== undefined)
|
|
28907
|
+
cancelAnimationFrame(this.rafId);
|
|
28908
|
+
this.update(y, duration, true);
|
|
28909
|
+
this.emitColChange();
|
|
28910
|
+
}
|
|
28911
|
+
update(y, duration, saveY) {
|
|
28912
|
+
if (!this.optsEl) {
|
|
28913
|
+
return;
|
|
28914
|
+
}
|
|
28915
|
+
// ensure we've got a good round number :)
|
|
28916
|
+
let translateY = 0;
|
|
28917
|
+
let translateZ = 0;
|
|
28918
|
+
const { col, rotateFactor } = this;
|
|
28919
|
+
const prevSelected = col.selectedIndex;
|
|
28920
|
+
const selectedIndex = (col.selectedIndex = this.indexForY(-y));
|
|
28921
|
+
const durationStr = duration === 0 ? '' : duration + 'ms';
|
|
28922
|
+
const scaleStr = `scale(${this.scaleFactor})`;
|
|
28923
|
+
const children = this.optsEl.children;
|
|
28924
|
+
for (let i = 0; i < children.length; i++) {
|
|
28925
|
+
const button = children[i];
|
|
28926
|
+
const opt = col.options[i];
|
|
28927
|
+
const optOffset = i * this.optHeight + y;
|
|
28928
|
+
let transform = '';
|
|
28929
|
+
if (rotateFactor !== 0) {
|
|
28930
|
+
const rotateX = optOffset * rotateFactor;
|
|
28931
|
+
if (Math.abs(rotateX) <= 90) {
|
|
28932
|
+
translateY = 0;
|
|
28933
|
+
translateZ = 90;
|
|
28934
|
+
transform = `rotateX(${rotateX}deg) `;
|
|
28935
|
+
}
|
|
28936
|
+
else {
|
|
28937
|
+
translateY = -9999;
|
|
28938
|
+
}
|
|
28939
|
+
}
|
|
28940
|
+
else {
|
|
28941
|
+
translateZ = 0;
|
|
28942
|
+
translateY = optOffset;
|
|
28943
|
+
}
|
|
28944
|
+
const selected = selectedIndex === i;
|
|
28945
|
+
transform += `translate3d(0px,${translateY}px,${translateZ}px) `;
|
|
28946
|
+
if (this.scaleFactor !== 1 && !selected) {
|
|
28947
|
+
transform += scaleStr;
|
|
28948
|
+
}
|
|
28949
|
+
// Update transition duration
|
|
28950
|
+
if (this.noAnimate) {
|
|
28951
|
+
opt.duration = 0;
|
|
28952
|
+
button.style.transitionDuration = '';
|
|
28953
|
+
}
|
|
28954
|
+
else if (duration !== opt.duration) {
|
|
28955
|
+
opt.duration = duration;
|
|
28956
|
+
button.style.transitionDuration = durationStr;
|
|
28957
|
+
}
|
|
28958
|
+
// Update transform
|
|
28959
|
+
if (transform !== opt.transform) {
|
|
28960
|
+
opt.transform = transform;
|
|
28961
|
+
}
|
|
28962
|
+
button.style.transform = transform;
|
|
28963
|
+
/**
|
|
28964
|
+
* Ensure that the select column
|
|
28965
|
+
* item has the selected class
|
|
28966
|
+
*/
|
|
28967
|
+
opt.selected = selected;
|
|
28968
|
+
if (selected) {
|
|
28969
|
+
button.classList.add(PICKER_OPT_SELECTED);
|
|
28970
|
+
}
|
|
28971
|
+
else {
|
|
28972
|
+
button.classList.remove(PICKER_OPT_SELECTED);
|
|
28973
|
+
}
|
|
28974
|
+
}
|
|
28975
|
+
this.col.prevSelected = prevSelected;
|
|
28976
|
+
if (saveY) {
|
|
28977
|
+
this.y = y;
|
|
28978
|
+
}
|
|
28979
|
+
if (this.lastIndex !== selectedIndex) {
|
|
28980
|
+
// have not set a last index yet
|
|
28981
|
+
hapticSelectionChanged();
|
|
28982
|
+
this.lastIndex = selectedIndex;
|
|
28983
|
+
}
|
|
28984
|
+
}
|
|
28985
|
+
decelerate() {
|
|
28986
|
+
if (this.velocity !== 0) {
|
|
28987
|
+
// still decelerating
|
|
28988
|
+
this.velocity *= DECELERATION_FRICTION;
|
|
28989
|
+
// do not let it go slower than a velocity of 1
|
|
28990
|
+
this.velocity = this.velocity > 0 ? Math.max(this.velocity, 1) : Math.min(this.velocity, -1);
|
|
28991
|
+
let y = this.y + this.velocity;
|
|
28992
|
+
if (y > this.minY) {
|
|
28993
|
+
// whoops, it's trying to scroll up farther than the options we have!
|
|
28994
|
+
y = this.minY;
|
|
28995
|
+
this.velocity = 0;
|
|
28996
|
+
}
|
|
28997
|
+
else if (y < this.maxY) {
|
|
28998
|
+
// gahh, it's trying to scroll down farther than we can!
|
|
28999
|
+
y = this.maxY;
|
|
29000
|
+
this.velocity = 0;
|
|
29001
|
+
}
|
|
29002
|
+
this.update(y, 0, true);
|
|
29003
|
+
const notLockedIn = Math.round(y) % this.optHeight !== 0 || Math.abs(this.velocity) > 1;
|
|
29004
|
+
if (notLockedIn) {
|
|
29005
|
+
// isn't locked in yet, keep decelerating until it is
|
|
29006
|
+
this.rafId = requestAnimationFrame(() => this.decelerate());
|
|
29007
|
+
}
|
|
29008
|
+
else {
|
|
29009
|
+
this.velocity = 0;
|
|
29010
|
+
this.emitColChange();
|
|
29011
|
+
hapticSelectionEnd();
|
|
29012
|
+
}
|
|
29013
|
+
}
|
|
29014
|
+
else if (this.y % this.optHeight !== 0) {
|
|
29015
|
+
// needs to still get locked into a position so options line up
|
|
29016
|
+
const currentPos = Math.abs(this.y % this.optHeight);
|
|
29017
|
+
// create a velocity in the direction it needs to scroll
|
|
29018
|
+
this.velocity = currentPos > this.optHeight / 2 ? 1 : -1;
|
|
29019
|
+
this.decelerate();
|
|
29020
|
+
}
|
|
29021
|
+
}
|
|
29022
|
+
indexForY(y) {
|
|
29023
|
+
return Math.min(Math.max(Math.abs(Math.round(y / this.optHeight)), 0), this.col.options.length - 1);
|
|
29024
|
+
}
|
|
29025
|
+
onStart(detail) {
|
|
29026
|
+
// We have to prevent default in order to block scrolling under the picker
|
|
29027
|
+
// but we DO NOT have to stop propagation, since we still want
|
|
29028
|
+
// some "click" events to capture
|
|
29029
|
+
if (detail.event.cancelable) {
|
|
29030
|
+
detail.event.preventDefault();
|
|
29031
|
+
}
|
|
29032
|
+
detail.event.stopPropagation();
|
|
29033
|
+
hapticSelectionStart();
|
|
29034
|
+
// reset everything
|
|
29035
|
+
if (this.rafId !== undefined)
|
|
29036
|
+
cancelAnimationFrame(this.rafId);
|
|
29037
|
+
const options = this.col.options;
|
|
29038
|
+
let minY = options.length - 1;
|
|
29039
|
+
let maxY = 0;
|
|
29040
|
+
for (let i = 0; i < options.length; i++) {
|
|
29041
|
+
if (!options[i].disabled) {
|
|
29042
|
+
minY = Math.min(minY, i);
|
|
29043
|
+
maxY = Math.max(maxY, i);
|
|
29044
|
+
}
|
|
29045
|
+
}
|
|
29046
|
+
this.minY = -(minY * this.optHeight);
|
|
29047
|
+
this.maxY = -(maxY * this.optHeight);
|
|
29048
|
+
}
|
|
29049
|
+
onMove(detail) {
|
|
29050
|
+
if (detail.event.cancelable) {
|
|
29051
|
+
detail.event.preventDefault();
|
|
29052
|
+
}
|
|
29053
|
+
detail.event.stopPropagation();
|
|
29054
|
+
// update the scroll position relative to pointer start position
|
|
29055
|
+
let y = this.y + detail.deltaY;
|
|
29056
|
+
if (y > this.minY) {
|
|
29057
|
+
// scrolling up higher than scroll area
|
|
29058
|
+
y = Math.pow(y, 0.8);
|
|
29059
|
+
this.bounceFrom = y;
|
|
29060
|
+
}
|
|
29061
|
+
else if (y < this.maxY) {
|
|
29062
|
+
// scrolling down below scroll area
|
|
29063
|
+
y += Math.pow(this.maxY - y, 0.9);
|
|
29064
|
+
this.bounceFrom = y;
|
|
29065
|
+
}
|
|
29066
|
+
else {
|
|
29067
|
+
this.bounceFrom = 0;
|
|
29068
|
+
}
|
|
29069
|
+
this.update(y, 0, false);
|
|
29070
|
+
}
|
|
29071
|
+
onEnd(detail) {
|
|
29072
|
+
if (this.bounceFrom > 0) {
|
|
29073
|
+
// bounce back up
|
|
29074
|
+
this.update(this.minY, 100, true);
|
|
29075
|
+
this.emitColChange();
|
|
29076
|
+
return;
|
|
29077
|
+
}
|
|
29078
|
+
else if (this.bounceFrom < 0) {
|
|
29079
|
+
// bounce back down
|
|
29080
|
+
this.update(this.maxY, 100, true);
|
|
29081
|
+
this.emitColChange();
|
|
29082
|
+
return;
|
|
29083
|
+
}
|
|
29084
|
+
this.velocity = clamp(-90, detail.velocityY * 23, MAX_PICKER_SPEED);
|
|
29085
|
+
if (this.velocity === 0 && detail.deltaY === 0) {
|
|
29086
|
+
const opt = detail.event.target.closest('.picker-opt');
|
|
29087
|
+
if (opt === null || opt === void 0 ? void 0 : opt.hasAttribute('opt-index')) {
|
|
29088
|
+
this.setSelected(parseInt(opt.getAttribute('opt-index'), 10), TRANSITION_DURATION);
|
|
29089
|
+
}
|
|
29090
|
+
}
|
|
29091
|
+
else {
|
|
29092
|
+
this.y += detail.deltaY;
|
|
29093
|
+
if (Math.abs(detail.velocityY) < 0.05) {
|
|
29094
|
+
const isScrollingUp = detail.deltaY > 0;
|
|
29095
|
+
const optHeightFraction = (Math.abs(this.y) % this.optHeight) / this.optHeight;
|
|
29096
|
+
if (isScrollingUp && optHeightFraction > 0.5) {
|
|
29097
|
+
this.velocity = Math.abs(this.velocity) * -1;
|
|
29098
|
+
}
|
|
29099
|
+
else if (!isScrollingUp && optHeightFraction <= 0.5) {
|
|
29100
|
+
this.velocity = Math.abs(this.velocity);
|
|
29101
|
+
}
|
|
29102
|
+
}
|
|
29103
|
+
this.decelerate();
|
|
29104
|
+
}
|
|
29105
|
+
}
|
|
29106
|
+
refresh(forceRefresh, animated) {
|
|
29107
|
+
var _a;
|
|
29108
|
+
let min = this.col.options.length - 1;
|
|
29109
|
+
let max = 0;
|
|
29110
|
+
const options = this.col.options;
|
|
29111
|
+
for (let i = 0; i < options.length; i++) {
|
|
29112
|
+
if (!options[i].disabled) {
|
|
29113
|
+
min = Math.min(min, i);
|
|
29114
|
+
max = Math.max(max, i);
|
|
29115
|
+
}
|
|
29116
|
+
}
|
|
29117
|
+
/**
|
|
29118
|
+
* Only update selected value if column has a
|
|
29119
|
+
* velocity of 0. If it does not, then the
|
|
29120
|
+
* column is animating might land on
|
|
29121
|
+
* a value different than the value at
|
|
29122
|
+
* selectedIndex
|
|
29123
|
+
*/
|
|
29124
|
+
if (this.velocity !== 0) {
|
|
29125
|
+
return;
|
|
29126
|
+
}
|
|
29127
|
+
const selectedIndex = clamp(min, (_a = this.col.selectedIndex) !== null && _a !== void 0 ? _a : 0, max);
|
|
29128
|
+
if (this.col.prevSelected !== selectedIndex || forceRefresh) {
|
|
29129
|
+
const y = selectedIndex * this.optHeight * -1;
|
|
29130
|
+
const duration = animated ? TRANSITION_DURATION : 0;
|
|
29131
|
+
this.velocity = 0;
|
|
29132
|
+
this.update(y, duration, true);
|
|
29133
|
+
}
|
|
29134
|
+
}
|
|
29135
|
+
onDomChange(forceRefresh, animated) {
|
|
29136
|
+
const colEl = this.optsEl;
|
|
29137
|
+
if (colEl) {
|
|
29138
|
+
// DOM READ
|
|
29139
|
+
// We perfom a DOM read over a rendered item, this needs to happen after the first render or after the column has changed
|
|
29140
|
+
this.optHeight = colEl.firstElementChild ? colEl.firstElementChild.clientHeight : 0;
|
|
29141
|
+
}
|
|
29142
|
+
this.refresh(forceRefresh, animated);
|
|
29143
|
+
}
|
|
29144
|
+
render() {
|
|
29145
|
+
const col = this.col;
|
|
29146
|
+
const mode = getIonMode$1(this);
|
|
29147
|
+
return (hAsync(Host, { key: '86125e95f18837dfd021db01777d72a1562d8ee3', class: Object.assign({ [mode]: true, 'picker-col': true, 'picker-opts-left': this.col.align === 'left', 'picker-opts-right': this.col.align === 'right' }, getClassMap(col.cssClass)), style: {
|
|
29148
|
+
'max-width': this.col.columnWidth,
|
|
29149
|
+
} }, col.prefix && (hAsync("div", { key: 'b0f3d39e0bd128781066ffefb7a1e40d12a9e76d', class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), hAsync("div", { key: '0b106ac4d56916eaaa7f09d1b68348b3754b7bba', 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: '00ff2f9dbb4561787e5a5223327c6a2a33f8362e', class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
|
|
29150
|
+
}
|
|
29151
|
+
get el() { return getElement(this); }
|
|
29152
|
+
static get watchers() { return {
|
|
29153
|
+
"col": [{
|
|
29154
|
+
"colChanged": 0
|
|
29155
|
+
}]
|
|
29156
|
+
}; }
|
|
29157
|
+
static get style() { return {
|
|
29158
|
+
ios: pickerColumnIosCss(),
|
|
29159
|
+
md: pickerColumnMdCss()
|
|
29160
|
+
}; }
|
|
29161
|
+
static get cmpMeta() { return {
|
|
29162
|
+
"$flags$": 32,
|
|
29163
|
+
"$tagName$": "ion-picker-legacy-column",
|
|
29164
|
+
"$members$": {
|
|
29165
|
+
"col": [16]
|
|
29166
|
+
},
|
|
29167
|
+
"$listeners$": undefined,
|
|
29168
|
+
"$lazyBundleId$": "-",
|
|
29169
|
+
"$attrsToReflect$": []
|
|
29170
|
+
}; }
|
|
29171
|
+
}
|
|
29172
|
+
const PICKER_OPT_SELECTED = 'picker-opt-selected';
|
|
29173
|
+
const DECELERATION_FRICTION = 0.97;
|
|
29174
|
+
const MAX_PICKER_SPEED = 90;
|
|
29175
|
+
const TRANSITION_DURATION = 150;
|
|
29176
|
+
|
|
28536
29177
|
const pickerColumnOptionIosCss = () => `.picker-column-option-button{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;overflow:hidden}:host(.option-disabled){opacity:0.4}:host(.option-disabled) .picker-column-option-button{cursor:default}`;
|
|
28537
29178
|
|
|
28538
29179
|
const pickerColumnOptionMdCss = () => `.picker-column-option-button{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;overflow:hidden}:host(.option-disabled){opacity:0.4}:host(.option-disabled) .picker-column-option-button{cursor:default}:host(.option-active){color:var(--ion-color-base)}`;
|
|
@@ -29954,10 +30595,6 @@ class Popover {
|
|
|
29954
30595
|
this.headerResizeObserver.disconnect();
|
|
29955
30596
|
this.headerResizeObserver = undefined;
|
|
29956
30597
|
}
|
|
29957
|
-
// Clean up aria-hidden if removed without dismiss() being called
|
|
29958
|
-
if (this.presented) {
|
|
29959
|
-
cleanupRootFocusTrapAccessibility();
|
|
29960
|
-
}
|
|
29961
30598
|
}
|
|
29962
30599
|
componentWillLoad() {
|
|
29963
30600
|
var _a, _b;
|
|
@@ -30196,9 +30833,9 @@ class Popover {
|
|
|
30196
30833
|
const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
|
|
30197
30834
|
const desktop = isPlatform('desktop');
|
|
30198
30835
|
const enableArrow = arrow && !parentPopover;
|
|
30199
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
30836
|
+
return (hAsync(Host, Object.assign({ key: '2edd8333c630efbce59071f8a383e4326e928dbc', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
|
|
30200
30837
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
30201
|
-
}, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: 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: '
|
|
30838
|
+
}, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: 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: 'aac4e68b08197534375e8ea3f8c9ea0c10ab2af4', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), hAsync("div", { key: 'b7f4ebf57d4148b32856b0075d286f454be8de5d', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && hAsync("div", { key: '607d94c28d73e8e957175a7c0f6e8a99ec4dcd53', class: "popover-arrow", part: "arrow" }), hAsync("div", { key: '4366a5a5de550c09895e923f345583508e1ec30c', class: "popover-content", part: "content" }, hAsync("slot", { key: 'eb7886fbc99c15b667b7d825d24f1c12d9380f03' })))));
|
|
30202
30839
|
}
|
|
30203
30840
|
get el() { return getElement(this); }
|
|
30204
30841
|
static get watchers() { return {
|
|
@@ -30309,7 +30946,7 @@ class ProgressBar {
|
|
|
30309
30946
|
const mode = getIonMode$1(this);
|
|
30310
30947
|
// If the progress is displayed as a solid bar.
|
|
30311
30948
|
const progressSolid = buffer === 1;
|
|
30312
|
-
return (hAsync(Host, { key: '
|
|
30949
|
+
return (hAsync(Host, { key: 'c859e48f3d24a458239e36d925e5dc003ed07c6b', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: createColorClasses$1(color, {
|
|
30313
30950
|
[mode]: true,
|
|
30314
30951
|
[`progress-bar-${type}`]: true,
|
|
30315
30952
|
'progress-paused': paused,
|
|
@@ -30494,7 +31131,7 @@ class Radio {
|
|
|
30494
31131
|
const { checked, disabled, color, el, justify, labelPlacement, hasLabel, buttonTabindex, alignment } = this;
|
|
30495
31132
|
const mode = getIonMode$1(this);
|
|
30496
31133
|
const inItem = hostContext('ion-item', el);
|
|
30497
|
-
return (hAsync(Host, { key: '
|
|
31134
|
+
return (hAsync(Host, { key: 'af5dc59ed528150872e907ed1036e3e2decba939', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses$1(color, {
|
|
30498
31135
|
[mode]: true,
|
|
30499
31136
|
'in-item': inItem,
|
|
30500
31137
|
'radio-checked': checked,
|
|
@@ -30505,10 +31142,10 @@ class Radio {
|
|
|
30505
31142
|
// Focus and active styling should not apply when the radio is in an item
|
|
30506
31143
|
'ion-activatable': !inItem,
|
|
30507
31144
|
'ion-focusable': !inItem,
|
|
30508
|
-
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, hAsync("label", { key: '
|
|
31145
|
+
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, hAsync("label", { key: '1312aba3259a87fe23a6911cdfa477e309469c8b', class: "radio-wrapper" }, hAsync("div", { key: 'b342aa27e240a300836d2a135658d346b95daf09', class: {
|
|
30509
31146
|
'label-text-wrapper': true,
|
|
30510
31147
|
'label-text-wrapper-hidden': !hasLabel,
|
|
30511
|
-
}, part: "label" }, hAsync("slot", { key: '
|
|
31148
|
+
}, part: "label" }, hAsync("slot", { key: '0a4613d29aa783d1882cf889377f7e4fd4fea51d' })), hAsync("div", { key: '191faea79dc4cd8befc4b873f5bd9f5af8ca2acc', class: "native-wrapper" }, this.renderRadioControl()))));
|
|
30512
31149
|
}
|
|
30513
31150
|
get el() { return getElement(this); }
|
|
30514
31151
|
static get watchers() { return {
|
|
@@ -30527,7 +31164,7 @@ class Radio {
|
|
|
30527
31164
|
"color": [513],
|
|
30528
31165
|
"name": [1],
|
|
30529
31166
|
"disabled": [4],
|
|
30530
|
-
"value": [
|
|
31167
|
+
"value": [8],
|
|
30531
31168
|
"labelPlacement": [1, "label-placement"],
|
|
30532
31169
|
"justify": [1],
|
|
30533
31170
|
"alignment": [1],
|
|
@@ -30538,7 +31175,7 @@ class Radio {
|
|
|
30538
31175
|
},
|
|
30539
31176
|
"$listeners$": undefined,
|
|
30540
31177
|
"$lazyBundleId$": "-",
|
|
30541
|
-
"$attrsToReflect$": [["color", "color"]
|
|
31178
|
+
"$attrsToReflect$": [["color", "color"]]
|
|
30542
31179
|
}; }
|
|
30543
31180
|
}
|
|
30544
31181
|
let radioButtonIds = 0;
|
|
@@ -31603,7 +32240,7 @@ class Range {
|
|
|
31603
32240
|
const valueAtMin = dualKnobs ? this.valA === min || this.valB === min : this.valA === min;
|
|
31604
32241
|
const valueAtMax = dualKnobs ? this.valA === max || this.valB === max : this.valA === max;
|
|
31605
32242
|
renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
|
|
31606
|
-
return (hAsync(Host, { key: '
|
|
32243
|
+
return (hAsync(Host, { key: 'f8063d1234fb113fe55a7902845dd4b4da8b1edb', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses$1(this.color, {
|
|
31607
32244
|
[mode]: true,
|
|
31608
32245
|
'in-item': inItem,
|
|
31609
32246
|
'range-disabled': disabled,
|
|
@@ -31617,10 +32254,10 @@ class Range {
|
|
|
31617
32254
|
'range-item-end-adjustment': needsEndAdjustment,
|
|
31618
32255
|
'range-value-min': valueAtMin,
|
|
31619
32256
|
'range-value-max': valueAtMax,
|
|
31620
|
-
}) }, hAsync("label", { key: '
|
|
32257
|
+
}) }, hAsync("label", { key: 'beead65ab01e3b18e4be59c0ee8ac6ebf32aad7c', class: "range-wrapper", id: "range-label" }, hAsync("div", { key: '03633c689d9d2e4c50a2131bcd560329df49e314', class: {
|
|
31621
32258
|
'label-text-wrapper': true,
|
|
31622
32259
|
'label-text-wrapper-hidden': !hasLabel,
|
|
31623
|
-
}, part: "label" }, label !== undefined ? hAsync("div", { class: "label-text" }, label) : hAsync("slot", { name: "label" })), hAsync("div", { key: '
|
|
32260
|
+
}, part: "label" }, label !== undefined ? hAsync("div", { class: "label-text" }, label) : hAsync("slot", { name: "label" })), hAsync("div", { key: 'c066804263ab6ae7393f8dcc51184b7198844ffa', class: "native-wrapper" }, hAsync("slot", { key: '7e8ea224d72b3e965dd948bee7e45c1a096b6899', name: "start" }), this.renderRangeSlider(), hAsync("slot", { key: '21f242f6f60ff3adce6a2d90b2d4dac1ceaf6624', name: "end" })))));
|
|
31624
32261
|
}
|
|
31625
32262
|
get el() { return getElement(this); }
|
|
31626
32263
|
static get watchers() { return {
|
|
@@ -32691,7 +33328,7 @@ class Refresher {
|
|
|
32691
33328
|
}
|
|
32692
33329
|
render() {
|
|
32693
33330
|
const mode = getIonMode$1(this);
|
|
32694
|
-
return (hAsync(Host, { key: '
|
|
33331
|
+
return (hAsync(Host, { key: '80fa313b0d77161680836bdd6aa334d02c549b41', slot: "fixed", class: {
|
|
32695
33332
|
[mode]: true,
|
|
32696
33333
|
// Used internally for styling
|
|
32697
33334
|
[`refresher-${mode}`]: true,
|
|
@@ -32917,7 +33554,7 @@ class RefresherContent {
|
|
|
32917
33554
|
const pullingIcon = this.pullingIcon;
|
|
32918
33555
|
const hasSpinner = pullingIcon != null && SPINNERS[pullingIcon] !== undefined;
|
|
32919
33556
|
const mode = getIonMode$1(this);
|
|
32920
|
-
return (hAsync(Host, { key: '
|
|
33557
|
+
return (hAsync(Host, { key: '4add42b9fdfded359d1b054d04c2c6ff48e028c8', class: mode }, hAsync("div", { key: '45d4e4e0adfed7f96dd1849767aa2cde947de044', class: "refresher-pulling" }, this.pullingIcon && hasSpinner && (hAsync("div", { key: '6bd6c8ef5bf6e10699eec3bd8646431bfe1077a0', class: "refresher-pulling-icon" }, hAsync("div", { key: '852d20414da53352c8e58bc627e0fda38eff97cb', class: "spinner-arrow-container" }, hAsync("ion-spinner", { key: '0dde3578a80cc4b77a07c4d1db1af80c7eb10c27', name: this.pullingIcon, paused: true }), mode === 'md' && this.pullingIcon === 'circular' && (hAsync("div", { key: 'c71dbfcf416a19c30fed38f722ebf0358c2181dd', class: "arrow-container" }, hAsync("ion-icon", { key: 'fa7c2cf624e7a9c41964e66cabc88c594da6d1fd', icon: caretBackSharp, "aria-hidden": "true" })))))), this.pullingIcon && !hasSpinner && (hAsync("div", { key: '3dd68c9968b421c379d1c4349ba619ee0a189c6d', class: "refresher-pulling-icon" }, hAsync("ion-icon", { key: 'f83bceceae4fa8245f91939fb6db589a595e975b', icon: this.pullingIcon, lazy: false, "aria-hidden": "true" }))), this.pullingText !== undefined && this.renderPullingText()), hAsync("div", { key: '98e22ceb0f7883e871f815f6199f5cb313e2e086', class: "refresher-refreshing" }, this.refreshingSpinner && (hAsync("div", { key: 'faabe8a9b61c02a00994ef978bb82b9ba4537214', class: "refresher-refreshing-icon" }, hAsync("ion-spinner", { key: '029a0c073ee1a07f01211e12ba2abc985cf21ed7', name: this.refreshingSpinner }))), this.refreshingText !== undefined && this.renderRefreshingText())));
|
|
32921
33558
|
}
|
|
32922
33559
|
get el() { return getElement(this); }
|
|
32923
33560
|
static get cmpMeta() { return {
|
|
@@ -32958,7 +33595,7 @@ class Reorder {
|
|
|
32958
33595
|
render() {
|
|
32959
33596
|
const mode = getIonMode$1(this);
|
|
32960
33597
|
const reorderIcon = mode === 'ios' ? reorderThreeOutline : reorderTwoSharp;
|
|
32961
|
-
return (hAsync(Host, { key: '
|
|
33598
|
+
return (hAsync(Host, { key: 'b869db61ca6393cf1476f2111a66b387b567c6d1', class: mode }, hAsync("slot", { key: 'a78edd1776835282b8b5c841377018f36c83296c' }, hAsync("ion-icon", { key: '7fb067c47bbb9a7258e5063f028282cc097d0f94', icon: reorderIcon, lazy: false, class: "reorder-icon", part: "icon", "aria-hidden": "true" }))));
|
|
32962
33599
|
}
|
|
32963
33600
|
get el() { return getElement(this); }
|
|
32964
33601
|
static get style() { return {
|
|
@@ -33229,7 +33866,7 @@ class ReorderGroup {
|
|
|
33229
33866
|
}
|
|
33230
33867
|
render() {
|
|
33231
33868
|
const mode = getIonMode$1(this);
|
|
33232
|
-
return (hAsync(Host, { key: '
|
|
33869
|
+
return (hAsync(Host, { key: '9527bbdedaab63d31f562c874a7332ea60c4b47b', class: {
|
|
33233
33870
|
[mode]: true,
|
|
33234
33871
|
'reorder-enabled': !this.disabled,
|
|
33235
33872
|
'reorder-list-active': this.state !== 0 /* ReorderGroupState.Idle */,
|
|
@@ -33347,7 +33984,7 @@ class RippleEffect {
|
|
|
33347
33984
|
}
|
|
33348
33985
|
render() {
|
|
33349
33986
|
const mode = getIonMode$1(this);
|
|
33350
|
-
return (hAsync(Host, { key: '
|
|
33987
|
+
return (hAsync(Host, { key: '3b59cbb44741569a7350f9638b4392add673b6f1', role: "presentation", class: {
|
|
33351
33988
|
[mode]: true,
|
|
33352
33989
|
unbounded: this.unbounded,
|
|
33353
33990
|
} }));
|
|
@@ -34316,10 +34953,10 @@ class RouterLink {
|
|
|
34316
34953
|
rel: this.rel,
|
|
34317
34954
|
target: this.target,
|
|
34318
34955
|
};
|
|
34319
|
-
return (hAsync(Host, { key: '
|
|
34956
|
+
return (hAsync(Host, { key: '8372835161d507c7b821b7536c55f912eb6ce704', onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
34320
34957
|
[mode]: true,
|
|
34321
34958
|
'ion-activatable': true,
|
|
34322
|
-
}) }, hAsync("a", Object.assign({ key: '
|
|
34959
|
+
}) }, hAsync("a", Object.assign({ key: '315966e14a17760f3f64197e8315200039787897' }, attrs), hAsync("slot", { key: '95fc1697b884225e85e647dddcaa8f4af8b9a979' }))));
|
|
34323
34960
|
}
|
|
34324
34961
|
static get style() { return routerLinkCss(); }
|
|
34325
34962
|
static get cmpMeta() { return {
|
|
@@ -34358,11 +34995,10 @@ class RouterOutlet {
|
|
|
34358
34995
|
*/
|
|
34359
34996
|
this.animated = true;
|
|
34360
34997
|
}
|
|
34361
|
-
swipeGestureChanged() {
|
|
34362
|
-
this.updateGestureEnabled();
|
|
34363
|
-
}
|
|
34364
34998
|
swipeHandlerChanged() {
|
|
34365
|
-
this.
|
|
34999
|
+
if (this.gesture) {
|
|
35000
|
+
this.gesture.enable(this.swipeHandler !== undefined);
|
|
35001
|
+
}
|
|
34366
35002
|
}
|
|
34367
35003
|
async connectedCallback() {
|
|
34368
35004
|
const onStart = () => {
|
|
@@ -34402,21 +35038,11 @@ class RouterOutlet {
|
|
|
34402
35038
|
this.gestureOrAnimationInProgress = false;
|
|
34403
35039
|
}
|
|
34404
35040
|
});
|
|
34405
|
-
|
|
34406
|
-
this.swipeGesture = config.getBoolean('swipeBackEnabled', this.mode === 'ios');
|
|
34407
|
-
}
|
|
34408
|
-
else {
|
|
34409
|
-
this.updateGestureEnabled();
|
|
34410
|
-
}
|
|
35041
|
+
this.swipeHandlerChanged();
|
|
34411
35042
|
}
|
|
34412
35043
|
componentWillLoad() {
|
|
34413
35044
|
this.ionNavWillLoad.emit();
|
|
34414
35045
|
}
|
|
34415
|
-
updateGestureEnabled() {
|
|
34416
|
-
if (this.gesture) {
|
|
34417
|
-
this.gesture.enable(this.swipeHandler !== undefined && this.swipeGesture === true);
|
|
34418
|
-
}
|
|
34419
|
-
}
|
|
34420
35046
|
disconnectedCallback() {
|
|
34421
35047
|
if (this.gesture) {
|
|
34422
35048
|
this.gesture.destroy();
|
|
@@ -34527,13 +35153,10 @@ class RouterOutlet {
|
|
|
34527
35153
|
return true;
|
|
34528
35154
|
}
|
|
34529
35155
|
render() {
|
|
34530
|
-
return hAsync("slot", { key: '
|
|
35156
|
+
return hAsync("slot", { key: '386c41745b61daba161cf75063da97fe29ba36cb' });
|
|
34531
35157
|
}
|
|
34532
35158
|
get el() { return getElement(this); }
|
|
34533
35159
|
static get watchers() { return {
|
|
34534
|
-
"swipeGesture": [{
|
|
34535
|
-
"swipeGestureChanged": 0
|
|
34536
|
-
}],
|
|
34537
35160
|
"swipeHandler": [{
|
|
34538
35161
|
"swipeHandlerChanged": 0
|
|
34539
35162
|
}]
|
|
@@ -34547,7 +35170,6 @@ class RouterOutlet {
|
|
|
34547
35170
|
"delegate": [16],
|
|
34548
35171
|
"animated": [4],
|
|
34549
35172
|
"animation": [16],
|
|
34550
|
-
"swipeGesture": [1028, "swipe-gesture"],
|
|
34551
35173
|
"swipeHandler": [16],
|
|
34552
35174
|
"commit": [64],
|
|
34553
35175
|
"setRouteId": [64],
|
|
@@ -34566,7 +35188,7 @@ class Row {
|
|
|
34566
35188
|
registerInstance(this, hostRef);
|
|
34567
35189
|
}
|
|
34568
35190
|
render() {
|
|
34569
|
-
return (hAsync(Host, { key: '
|
|
35191
|
+
return (hAsync(Host, { key: '8ba906a8cbea060a79ed658c9bf34906f0c11d38', class: getIonMode$1(this) }, hAsync("slot", { key: 'd1009176f45b588fa52c7d9eb336f3c6d3214bb8' })));
|
|
34570
35192
|
}
|
|
34571
35193
|
static get style() { return rowCss(); }
|
|
34572
35194
|
static get cmpMeta() { return {
|
|
@@ -35018,8 +35640,8 @@ class Searchbar {
|
|
|
35018
35640
|
const clearIcon = this.clearIcon || (mode === 'ios' ? closeCircle : closeSharp);
|
|
35019
35641
|
const searchIcon = this.searchIcon || (mode === 'ios' ? searchOutline : searchSharp);
|
|
35020
35642
|
const shouldShowCancelButton = this.shouldShowCancelButton();
|
|
35021
|
-
const cancelButton = this.showCancelButton !== 'never' && (hAsync("button", { key: '
|
|
35022
|
-
return (hAsync(Host, { key: '
|
|
35643
|
+
const cancelButton = this.showCancelButton !== 'never' && (hAsync("button", { key: '9e9f3a7f6ee66140181f8c3cfa42bbeee75adafc', "aria-label": cancelButtonText, "aria-hidden": shouldShowCancelButton ? undefined : 'true', type: "button", tabIndex: mode === 'ios' && !shouldShowCancelButton ? -1 : undefined, onMouseDown: this.onCancelSearchbar, onTouchStart: this.onCancelSearchbar, class: "searchbar-cancel-button" }, hAsync("div", { key: '5f83fbcc0708830637815e8c0b69356cad381870', "aria-hidden": "true" }, mode === 'md' ? (hAsync("ion-icon", { "aria-hidden": "true", mode: mode, icon: this.cancelButtonIcon, lazy: false })) : (cancelButtonText))));
|
|
35644
|
+
return (hAsync(Host, { key: '219c263c1f3cc63e18bc2d2ba5d672b7806eddd0', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses$1(this.color, {
|
|
35023
35645
|
[mode]: true,
|
|
35024
35646
|
'searchbar-animated': animated,
|
|
35025
35647
|
'searchbar-disabled': this.disabled,
|
|
@@ -35029,14 +35651,14 @@ class Searchbar {
|
|
|
35029
35651
|
'searchbar-has-focus': this.focused,
|
|
35030
35652
|
'searchbar-should-show-clear': this.shouldShowClearButton(),
|
|
35031
35653
|
'searchbar-should-show-cancel': this.shouldShowCancelButton(),
|
|
35032
|
-
}) }, hAsync("div", { key: '
|
|
35654
|
+
}) }, hAsync("div", { key: '3f1c25442d6d87c0df67f79482a925b80dcc403d', class: "searchbar-input-container" }, hAsync("input", Object.assign({ key: 'a386fecafda0fab449ea1488906ba6cfc55e2b5c', "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)), mode === 'md' && cancelButton, hAsync("ion-icon", { key: '5f81642628335def39a14f0726e0fafdc7203776', "aria-hidden": "true", mode: mode, icon: searchIcon, lazy: false, class: "searchbar-search-icon" }), hAsync("button", { key: 'da3073646f2d7f639261b556517fbadabc3c10e9', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
|
|
35033
35655
|
/**
|
|
35034
35656
|
* This prevents mobile browsers from
|
|
35035
35657
|
* blurring the input when the clear
|
|
35036
35658
|
* button is activated.
|
|
35037
35659
|
*/
|
|
35038
35660
|
ev.preventDefault();
|
|
35039
|
-
}, onClick: () => this.onClearInput(true) }, hAsync("ion-icon", { key: '
|
|
35661
|
+
}, onClick: () => this.onClearInput(true) }, hAsync("ion-icon", { key: '065cd6c707ae462c0767df1bab04ce8045f340a4', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
|
|
35040
35662
|
}
|
|
35041
35663
|
get el() { return getElement(this); }
|
|
35042
35664
|
static get watchers() { return {
|
|
@@ -35641,14 +36263,14 @@ class Segment {
|
|
|
35641
36263
|
}
|
|
35642
36264
|
render() {
|
|
35643
36265
|
const mode = getIonMode$1(this);
|
|
35644
|
-
return (hAsync(Host, { key: '
|
|
36266
|
+
return (hAsync(Host, { key: '725cc37b25c539fa5e3ae8d90530ae33ededc3de', role: "tablist", onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
35645
36267
|
[mode]: true,
|
|
35646
36268
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
35647
36269
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
35648
36270
|
'segment-activated': this.activated,
|
|
35649
36271
|
'segment-disabled': this.disabled,
|
|
35650
36272
|
'segment-scrollable': this.scrollable,
|
|
35651
|
-
}) }, hAsync("slot", { key: '
|
|
36273
|
+
}) }, hAsync("slot", { key: 'c51cf7ea50325866a9367d214e12bc3754870335', onSlotchange: this.onSlottedItemsChange })));
|
|
35652
36274
|
}
|
|
35653
36275
|
get el() { return getElement(this); }
|
|
35654
36276
|
static get watchers() { return {
|
|
@@ -35796,7 +36418,7 @@ class SegmentButton {
|
|
|
35796
36418
|
const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
|
|
35797
36419
|
const mode = getIonMode$1(this);
|
|
35798
36420
|
const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
|
|
35799
|
-
return (hAsync(Host, { key: '
|
|
36421
|
+
return (hAsync(Host, { key: 'f69e2a24198a7c57543dbe66902da039a6569c64', class: {
|
|
35800
36422
|
[mode]: true,
|
|
35801
36423
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
35802
36424
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
@@ -35812,7 +36434,7 @@ class SegmentButton {
|
|
|
35812
36434
|
'ion-activatable': true,
|
|
35813
36435
|
'ion-activatable-instant': true,
|
|
35814
36436
|
'ion-focusable': true,
|
|
35815
|
-
} }, hAsync("button", Object.assign({ key: '
|
|
36437
|
+
} }, hAsync("button", Object.assign({ key: '0a6fea3a374074af19f7ece0ba3a7cf1e269ab6d', "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: '991018a38c59a6f3d76b2e952e5569c874d2c13e', class: "button-inner" }, hAsync("slot", { key: '23c547c80108025027b913c7fcbec189286627a3' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '7faa9d06ab6aa7346d16b0b6808979759a79650c' })), hAsync("div", { key: '0d61badf2c227dc38e20185b2b2bb590a5efa434', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, hAsync("div", { key: 'a84035752b78491c344179d1e61d109fb4bd1cf1', part: "indicator-background", class: "segment-button-indicator-background" }))));
|
|
35816
36438
|
}
|
|
35817
36439
|
get el() { return getElement(this); }
|
|
35818
36440
|
static get watchers() { return {
|
|
@@ -35849,7 +36471,7 @@ class SegmentContent {
|
|
|
35849
36471
|
registerInstance(this, hostRef);
|
|
35850
36472
|
}
|
|
35851
36473
|
render() {
|
|
35852
|
-
return (hAsync(Host, { key: '
|
|
36474
|
+
return (hAsync(Host, { key: '665f41a854621f898eaf7ba9a49e77cc9326501e' }, hAsync("slot", { key: '635aa57fbf6167dcd36fe8dc5dfc1c313637ac04' })));
|
|
35853
36475
|
}
|
|
35854
36476
|
static get style() { return segmentContentCss(); }
|
|
35855
36477
|
static get cmpMeta() { return {
|
|
@@ -35968,11 +36590,11 @@ class SegmentView {
|
|
|
35968
36590
|
}
|
|
35969
36591
|
render() {
|
|
35970
36592
|
const { disabled, isManualScroll, swipeGesture } = this;
|
|
35971
|
-
return (hAsync(Host, { key: '
|
|
36593
|
+
return (hAsync(Host, { key: '2a6e0a1046af75b1fa0eed20a5fbbb4634480297', class: {
|
|
35972
36594
|
'segment-view-disabled': disabled,
|
|
35973
36595
|
'segment-view-scroll-disabled': isManualScroll === false,
|
|
35974
36596
|
'segment-view-swipe-disabled': swipeGesture === false,
|
|
35975
|
-
} }, hAsync("slot", { key: '
|
|
36597
|
+
} }, hAsync("slot", { key: '644b60d179d0de3fa204e3bef26a3503ceeaf1d6' })));
|
|
35976
36598
|
}
|
|
35977
36599
|
get el() { return getElement(this); }
|
|
35978
36600
|
static get style() { return {
|
|
@@ -36744,7 +37366,7 @@ class Select {
|
|
|
36744
37366
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
36745
37367
|
*/
|
|
36746
37368
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
|
|
36747
|
-
return (hAsync(Host, { key: '
|
|
37369
|
+
return (hAsync(Host, { key: '5f4ee901b65554eacc9fa52230d06b1a5ff1247c', onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
36748
37370
|
[mode]: true,
|
|
36749
37371
|
'in-item': inItem,
|
|
36750
37372
|
'in-item-color': hostContext('ion-item.ion-color', el),
|
|
@@ -36762,7 +37384,7 @@ class Select {
|
|
|
36762
37384
|
[`select-justify-${justify}`]: justifyEnabled,
|
|
36763
37385
|
[`select-shape-${shape}`]: shape !== undefined,
|
|
36764
37386
|
[`select-label-placement-${labelPlacement}`]: true,
|
|
36765
|
-
}) }, hAsync("label", { key: '
|
|
37387
|
+
}) }, hAsync("label", { key: 'd56d89b5b58da2b5eaebada9d1be58ca45c67806', class: "select-wrapper", id: "select-label", onClick: this.onLabelClick, part: "wrapper" }, this.renderLabelContainer(), hAsync("div", { key: 'bc8bf089c693781ad5b3a5db76a12223867d748e', class: "select-wrapper-inner", part: "inner" }, hAsync("slot", { key: 'e1c12b96f1573eb192608c458ed1f3463174cd89', name: "start" }), hAsync("div", { key: '6ee5e3900d8e462f175649b502ac6faa2f2b9909', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), hAsync("slot", { key: 'faeaea34aad412e1458beab95d4b1b9ca7b87c41', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && hAsync("div", { key: 'aeff51e51c990844869eff9940575ce6b2223135', class: "select-highlight" })), this.renderBottomContent()));
|
|
36766
37388
|
}
|
|
36767
37389
|
get el() { return getElement(this); }
|
|
36768
37390
|
static get watchers() { return {
|
|
@@ -36946,7 +37568,7 @@ class SelectModal {
|
|
|
36946
37568
|
} }, option.text))));
|
|
36947
37569
|
}
|
|
36948
37570
|
render() {
|
|
36949
|
-
return (hAsync(Host, { key: '
|
|
37571
|
+
return (hAsync(Host, { key: 'fda0bf6f93cd5ec9f3c64f88a52de849e0e140a2', class: getIonMode$1(this) }, hAsync("ion-header", { key: '27c0b17175a53db9ff159feeeb96451a3f011dab' }, hAsync("ion-toolbar", { key: '91a4155ebc317fbc9f1bb3e26a7e94754b953c9b' }, this.header !== undefined && hAsync("ion-title", { key: 'f6dae8e4e381f322cc90efefd9bb6ef81d4d2f3e' }, this.header), hAsync("ion-buttons", { key: 'e7760532fb2e7e7385ed6e62097d92d96ff20148', slot: "end" }, hAsync("ion-button", { key: '4999b6fc46cba138186546dca67b7950855e6fb7', onClick: () => this.closeModal() }, this.cancelText)))), hAsync("ion-content", { key: 'c73f80a4bc25b9061ea65cf11e5d811c1a4d8704' }, hAsync("ion-list", { key: 'b21905d15b36ad5eb45845e768918d2763cf48b1' }, this.multiple === true ? this.renderCheckboxOptions() : this.renderRadioOptions()))));
|
|
36950
37572
|
}
|
|
36951
37573
|
get el() { return getElement(this); }
|
|
36952
37574
|
static get style() { return {
|
|
@@ -36981,7 +37603,7 @@ class SelectOption {
|
|
|
36981
37603
|
this.disabled = false;
|
|
36982
37604
|
}
|
|
36983
37605
|
render() {
|
|
36984
|
-
return hAsync(Host, { key: '
|
|
37606
|
+
return hAsync(Host, { key: '824730b6c1e4f15b716e91b05840e890af5f1577', role: "option", id: this.inputId, class: getIonMode$1(this) });
|
|
36985
37607
|
}
|
|
36986
37608
|
get el() { return getElement(this); }
|
|
36987
37609
|
static get style() { return selectOptionCss(); }
|
|
@@ -37109,7 +37731,7 @@ class SelectPopover {
|
|
|
37109
37731
|
render() {
|
|
37110
37732
|
const { header, message, options, subHeader } = this;
|
|
37111
37733
|
const hasSubHeaderOrMessage = subHeader !== undefined || message !== undefined;
|
|
37112
|
-
return (hAsync(Host, { key: '
|
|
37734
|
+
return (hAsync(Host, { key: 'e7449a1ecfcdbf45a79f8e26a00253c4e146448a', class: getIonMode$1(this) }, hAsync("ion-list", { key: '52abdfc8668c3429a0dcefef8ddedb6647fdd894' }, header !== undefined && hAsync("ion-list-header", { key: '978e5c03728756feafcc60a0e10e6ec59bf2ae11' }, header), hasSubHeaderOrMessage && (hAsync("ion-item", { key: 'e93c44e7f07a76def16e4b11f0fb4780d84ed402' }, hAsync("ion-label", { key: 'bba1aac43b0bc7f4f00978dd8301985233f3725c', class: "ion-text-wrap" }, subHeader !== undefined && hAsync("h3", { key: 'ad96f6017cf2cc5219540bded2c4f1ca3b532de2' }, subHeader), message !== undefined && hAsync("p", { key: '3fd038921dc40c4d0c29734433984b279ccaeec3' }, message)))), this.renderOptions(options))));
|
|
37113
37735
|
}
|
|
37114
37736
|
get el() { return getElement(this); }
|
|
37115
37737
|
static get style() { return {
|
|
@@ -37159,11 +37781,11 @@ class SkeletonText {
|
|
|
37159
37781
|
const animated = this.animated && config.getBoolean('animated', true);
|
|
37160
37782
|
const inMedia = hostContext('ion-avatar', this.el) || hostContext('ion-thumbnail', this.el);
|
|
37161
37783
|
const mode = getIonMode$1(this);
|
|
37162
|
-
return (hAsync(Host, { key: '
|
|
37784
|
+
return (hAsync(Host, { key: 'cb8da9aba121811b9a4ffdae60ed88105897cb3c', class: {
|
|
37163
37785
|
[mode]: true,
|
|
37164
37786
|
'skeleton-text-animated': animated,
|
|
37165
37787
|
'in-media': inMedia,
|
|
37166
|
-
} }, hAsync("span", { key: '
|
|
37788
|
+
} }, hAsync("span", { key: '5379deee3c76d46d615be0cba14b4f60129ffa25' }, "\u00A0")));
|
|
37167
37789
|
}
|
|
37168
37790
|
get el() { return getElement(this); }
|
|
37169
37791
|
static get style() { return skeletonTextCss(); }
|
|
@@ -37215,7 +37837,7 @@ class Spinner {
|
|
|
37215
37837
|
svgs.push(buildLine(spinner, duration, i, spinner.lines));
|
|
37216
37838
|
}
|
|
37217
37839
|
}
|
|
37218
|
-
return (hAsync(Host, { key: '
|
|
37840
|
+
return (hAsync(Host, { key: 'dd1954e557fa14b943e761474e29e4316ba53938', class: createColorClasses$1(self.color, {
|
|
37219
37841
|
[mode]: true,
|
|
37220
37842
|
[`spinner-${spinnerName}`]: true,
|
|
37221
37843
|
'spinner-paused': self.paused || config.getBoolean('_testing'),
|
|
@@ -37314,12 +37936,12 @@ class SplitPane {
|
|
|
37314
37936
|
}
|
|
37315
37937
|
render() {
|
|
37316
37938
|
const mode = getIonMode$1(this);
|
|
37317
|
-
return (hAsync(Host, { key: '
|
|
37939
|
+
return (hAsync(Host, { key: '05c88c009fbe2e223fd261760a2b49da1653ff62', class: {
|
|
37318
37940
|
[mode]: true,
|
|
37319
37941
|
// Used internally for styling
|
|
37320
37942
|
[`split-pane-${mode}`]: true,
|
|
37321
37943
|
'split-pane-visible': this.visible,
|
|
37322
|
-
} }, hAsync("slot", { key: '
|
|
37944
|
+
} }, hAsync("slot", { key: 'b35865082661253c4468520d79234fa5dab5bd35' })));
|
|
37323
37945
|
}
|
|
37324
37946
|
get el() { return getElement(this); }
|
|
37325
37947
|
static get watchers() { return {
|
|
@@ -37391,10 +38013,10 @@ class Tab {
|
|
|
37391
38013
|
}
|
|
37392
38014
|
render() {
|
|
37393
38015
|
const { tab, active, component } = this;
|
|
37394
|
-
return (hAsync(Host, { key: '
|
|
38016
|
+
return (hAsync(Host, { key: 'fbd837bad7a0632336d46a597ace23673b153e48', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
|
|
37395
38017
|
'ion-page': component === undefined,
|
|
37396
38018
|
'tab-hidden': !active,
|
|
37397
|
-
} }, hAsync("slot", { key: '
|
|
38019
|
+
} }, hAsync("slot", { key: '35c218169fda826c9c1337558e0278d0c7f5f26a' })));
|
|
37398
38020
|
}
|
|
37399
38021
|
get el() { return getElement(this); }
|
|
37400
38022
|
static get watchers() { return {
|
|
@@ -37508,11 +38130,11 @@ class TabBar {
|
|
|
37508
38130
|
const { color, translucent, keyboardVisible } = this;
|
|
37509
38131
|
const mode = getIonMode$1(this);
|
|
37510
38132
|
const shouldHide = keyboardVisible && this.el.getAttribute('slot') !== 'top';
|
|
37511
|
-
return (hAsync(Host, { key: '
|
|
38133
|
+
return (hAsync(Host, { key: '24e164eaf81a0bec9237b561465618f10990806c', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses$1(color, {
|
|
37512
38134
|
[mode]: true,
|
|
37513
38135
|
'tab-bar-translucent': translucent,
|
|
37514
38136
|
'tab-bar-hidden': shouldHide,
|
|
37515
|
-
}) }, hAsync("slot", { key: '
|
|
38137
|
+
}) }, hAsync("slot", { key: '0ca29a2d97a7c38bbf43f8d79e271b874b4d9be8' })));
|
|
37516
38138
|
}
|
|
37517
38139
|
get el() { return getElement(this); }
|
|
37518
38140
|
static get watchers() { return {
|
|
@@ -37610,7 +38232,7 @@ class TabButton {
|
|
|
37610
38232
|
rel,
|
|
37611
38233
|
target,
|
|
37612
38234
|
};
|
|
37613
|
-
return (hAsync(Host, { key: '
|
|
38235
|
+
return (hAsync(Host, { key: '638b93ef40701ec3aefb89b1579eb91aaf6d4f8a', onClick: this.onClick, onKeyup: this.onKeyUp, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
|
|
37614
38236
|
[mode]: true,
|
|
37615
38237
|
'tab-selected': selected,
|
|
37616
38238
|
'tab-disabled': disabled,
|
|
@@ -37622,7 +38244,7 @@ class TabButton {
|
|
|
37622
38244
|
'ion-activatable': true,
|
|
37623
38245
|
'ion-selectable': true,
|
|
37624
38246
|
'ion-focusable': true,
|
|
37625
|
-
} }, hAsync("a", Object.assign({ key: '
|
|
38247
|
+
} }, hAsync("a", Object.assign({ key: 'c053d32fbcdad8d5e4a409956b47164d7a080c6b' }, 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: 'b3b460d33ec978a46b069442280d31b23bc8e794', class: "button-inner" }, hAsync("slot", { key: '87b3928475c941263261101b8fae27c6370d4671' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '6532e5b4546aebe4becaebe1c93ce0e6aedaffe7', type: "unbounded" }))));
|
|
37626
38248
|
}
|
|
37627
38249
|
get el() { return getElement(this); }
|
|
37628
38250
|
static get style() { return {
|
|
@@ -37813,7 +38435,7 @@ class Tabs {
|
|
|
37813
38435
|
return Array.from(this.el.querySelectorAll('ion-tab'));
|
|
37814
38436
|
}
|
|
37815
38437
|
render() {
|
|
37816
|
-
return (hAsync(Host, { key: '
|
|
38438
|
+
return (hAsync(Host, { key: 'c7131135b31aa312dc0207602561e1c0f4ac3e53', onIonTabButtonClick: this.onTabClicked }, hAsync("slot", { key: '6c46e91c0389bbcea1f15f35cf3ea513a74ac545', name: "top" }), hAsync("div", { key: '4f1b649d8bb60b61402b97359de204979c5eda52', class: "tabs-inner" }, hAsync("slot", { key: '8d1ef4952be4fb33567376e1083ea4da697fcae0' })), hAsync("slot", { key: '260b8da8031494e9cb4635b3d22c49a433042db1', name: "bottom" })));
|
|
37817
38439
|
}
|
|
37818
38440
|
get el() { return getElement(this); }
|
|
37819
38441
|
static get style() { return tabsCss(); }
|
|
@@ -37853,9 +38475,9 @@ class Text {
|
|
|
37853
38475
|
}
|
|
37854
38476
|
render() {
|
|
37855
38477
|
const mode = getIonMode$1(this);
|
|
37856
|
-
return (hAsync(Host, { key: '
|
|
38478
|
+
return (hAsync(Host, { key: 'bfaa49d35f43b8036725ae8a322c716fc6e43bdf', class: createColorClasses$1(this.color, {
|
|
37857
38479
|
[mode]: true,
|
|
37858
|
-
}) }, hAsync("slot", { key: '
|
|
38480
|
+
}) }, hAsync("slot", { key: 'c04880cd1935b42cbe60f58fd523b4d8a96072dc' })));
|
|
37859
38481
|
}
|
|
37860
38482
|
static get style() { return textCss(); }
|
|
37861
38483
|
static get cmpMeta() { return {
|
|
@@ -38316,7 +38938,7 @@ class Textarea {
|
|
|
38316
38938
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
38317
38939
|
*/
|
|
38318
38940
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
|
|
38319
|
-
return (hAsync(Host, { key: '
|
|
38941
|
+
return (hAsync(Host, { key: '4257e84acd46f43390fa2413d0b8f40e16a37499', class: createColorClasses$1(this.color, {
|
|
38320
38942
|
[mode]: true,
|
|
38321
38943
|
'has-value': hasValue,
|
|
38322
38944
|
'has-focus': hasFocus,
|
|
@@ -38325,7 +38947,7 @@ class Textarea {
|
|
|
38325
38947
|
[`textarea-shape-${shape}`]: shape !== undefined,
|
|
38326
38948
|
[`textarea-label-placement-${labelPlacement}`]: true,
|
|
38327
38949
|
'textarea-disabled': disabled,
|
|
38328
|
-
}) }, hAsync("label", { key: '
|
|
38950
|
+
}) }, hAsync("label", { key: '003da35bad92ab36777b7ae40855541bf900c64a', class: "textarea-wrapper", htmlFor: inputId, onClick: this.onLabelClick }, this.renderLabelContainer(), hAsync("div", { key: '3cae2d19f96ba2b18a2d64298fdcc4b64ad34ac7', class: "textarea-wrapper-inner" }, hAsync("div", { key: 'e26cb06763d551f7f83b6ea80349871aab18a016', class: "start-slot-wrapper" }, hAsync("slot", { key: '135ba6db893eaca5f2a785fe61e24f33f56f3765', name: "start" })), hAsync("div", { key: '951eabdd01c5e370790cec8578268361dcc8abdc', class: "native-wrapper", ref: (el) => (this.textareaWrapper = el) }, hAsync("textarea", Object.assign({ key: '13d78f1a934b9f8d85cd9ed386dabc786f953f1d', class: "native-textarea", 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: '699038558019470bccb4853fa65e7aeb069e0baa', class: "end-slot-wrapper" }, hAsync("slot", { key: '19d8c212d7c718aeb6924e10bf8e48cad01314ea', name: "end" }))), shouldRenderHighlight && hAsync("div", { key: '910a9437437ce7cab21e37a1cb4a6b309afda58f', class: "textarea-highlight" })), this.renderBottomContent()));
|
|
38329
38951
|
}
|
|
38330
38952
|
get el() { return getElement(this); }
|
|
38331
38953
|
static get watchers() { return {
|
|
@@ -38394,7 +39016,7 @@ class Thumbnail {
|
|
|
38394
39016
|
registerInstance(this, hostRef);
|
|
38395
39017
|
}
|
|
38396
39018
|
render() {
|
|
38397
|
-
return (hAsync(Host, { key: '
|
|
39019
|
+
return (hAsync(Host, { key: 'b250e01664238f1dca8f9757b15bc3d5d9387ffa', class: getIonMode$1(this) }, hAsync("slot", { key: '72cb568bccabc983c5186a7596ef6c6d4ebf5ad9' })));
|
|
38398
39020
|
}
|
|
38399
39021
|
static get style() { return thumbnailCss(); }
|
|
38400
39022
|
static get cmpMeta() { return {
|
|
@@ -39254,9 +39876,9 @@ class Toast {
|
|
|
39254
39876
|
if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
|
|
39255
39877
|
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);
|
|
39256
39878
|
}
|
|
39257
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
39879
|
+
return (hAsync(Host, Object.assign({ key: 'b5256edcf33d0ef51e6c5080c84e1ca58abe2ae0', tabindex: "-1" }, this.htmlAttributes, { style: {
|
|
39258
39880
|
zIndex: `${60000 + this.overlayIndex}`,
|
|
39259
|
-
}, class: createColorClasses$1(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), hAsync("div", { key: '
|
|
39881
|
+
}, class: createColorClasses$1(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), hAsync("div", { key: '0860f7e895d8bc66e44c4d924ca569f4cbb1a749', class: wrapperClass, part: "wrapper" }, hAsync("div", { key: '28784199c880a3f664677c8f5560b7caa8903251', class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (hAsync("ion-icon", { key: '0a63ba1336ad43d2aec14e49055eb46c112359c2', class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), hAsync("div", { key: 'ecec8107af582dc55d4b3828dd7f3054a29f26b1', 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')))));
|
|
39260
39882
|
}
|
|
39261
39883
|
get el() { return getElement(this); }
|
|
39262
39884
|
static get watchers() { return {
|
|
@@ -39574,7 +40196,7 @@ class Toggle {
|
|
|
39574
40196
|
const value = this.getValue();
|
|
39575
40197
|
const rtl = isRTL$1(el) ? 'rtl' : 'ltr';
|
|
39576
40198
|
renderHiddenInput(true, el, name, checked ? value : '', disabled);
|
|
39577
|
-
return (hAsync(Host, { key: '
|
|
40199
|
+
return (hAsync(Host, { key: '736e1dcfca34fd41f6f0632652e7f86d6996a232', 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, {
|
|
39578
40200
|
[mode]: true,
|
|
39579
40201
|
'in-item': hostContext('ion-item', el),
|
|
39580
40202
|
'toggle-activated': activated,
|
|
@@ -39584,10 +40206,10 @@ class Toggle {
|
|
|
39584
40206
|
[`toggle-alignment-${alignment}`]: alignment !== undefined,
|
|
39585
40207
|
[`toggle-label-placement-${labelPlacement}`]: true,
|
|
39586
40208
|
[`toggle-${rtl}`]: true,
|
|
39587
|
-
}) }, hAsync("label", { key: '
|
|
40209
|
+
}) }, hAsync("label", { key: 'e697739fd3964c1c6c23331cf7e38a9841c46a6a', class: "toggle-wrapper", htmlFor: inputId }, hAsync("input", Object.assign({ key: '3d500b8c1bc879591249d183c1abb3f5f26aff6b', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, required: required }, inheritedAttributes)), hAsync("div", { key: 'e38f3fe0e66b4ca434fd81514f5ef771c2960841', class: {
|
|
39588
40210
|
'label-text-wrapper': true,
|
|
39589
40211
|
'label-text-wrapper-hidden': !hasLabel,
|
|
39590
|
-
}, part: "label", id: inputLabelId, onClick: this.onDivLabelClick }, hAsync("slot", { key: '
|
|
40212
|
+
}, part: "label", id: inputLabelId, onClick: this.onDivLabelClick }, hAsync("slot", { key: '006dd3558264d69ab020c07005b348adc4ecdd5b' }), this.renderHintText()), hAsync("div", { key: 'dd4e52de31caabee41ec1bc58efecd1e213368c9', class: "native-wrapper" }, this.renderToggleControl()))));
|
|
39591
40213
|
}
|
|
39592
40214
|
get el() { return getElement(this); }
|
|
39593
40215
|
static get watchers() { return {
|
|
@@ -39699,10 +40321,10 @@ class Toolbar {
|
|
|
39699
40321
|
this.childrenStyles.forEach((value) => {
|
|
39700
40322
|
Object.assign(childStyles, value);
|
|
39701
40323
|
});
|
|
39702
|
-
return (hAsync(Host, { key: '
|
|
40324
|
+
return (hAsync(Host, { key: 'b849db2863778dee6c5a251bffa1b3a657aeb036', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
|
|
39703
40325
|
[mode]: true,
|
|
39704
40326
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
39705
|
-
})) }, hAsync("div", { key: '
|
|
40327
|
+
})) }, hAsync("div", { key: '67f5bba9c4f527c3f35bfe1313a2b85741f9b246', class: "toolbar-background", part: "background" }), hAsync("div", { key: '085e8c68f056e5b0deb9d1606431fbeb45dae8e5', class: "toolbar-container", part: "container" }, hAsync("slot", { key: '15227c79c3baf883fd8c43fdb7e1313453933c79', name: "start" }), hAsync("slot", { key: '0b8a7f7e685aa31c80d9bc03446ccc3a9d07e0e8', name: "secondary" }), hAsync("div", { key: '57e4628c1fa89df79dd80456259db961bb691404', class: "toolbar-content", part: "content" }, hAsync("slot", { key: '82c2f6e1acf8d96db259bd8baf295881801edbd5' })), hAsync("slot", { key: 'b2d4afb15214199f206c0a5e08b581e4c9c2f58a', name: "primary" }), hAsync("slot", { key: 'bfb909a0c472f8834046c2ea23bef2f562167ad3', name: "end" }))));
|
|
39706
40328
|
}
|
|
39707
40329
|
get el() { return getElement(this); }
|
|
39708
40330
|
static get style() { return {
|
|
@@ -39748,11 +40370,11 @@ class ToolbarTitle {
|
|
|
39748
40370
|
render() {
|
|
39749
40371
|
const mode = getIonMode$1(this);
|
|
39750
40372
|
const size = this.getSize();
|
|
39751
|
-
return (hAsync(Host, { key: '
|
|
40373
|
+
return (hAsync(Host, { key: '44e63f8439df64c470692904427b417e19406476', class: createColorClasses$1(this.color, {
|
|
39752
40374
|
[mode]: true,
|
|
39753
40375
|
[`title-${size}`]: true,
|
|
39754
40376
|
'title-rtl': document.dir === 'rtl',
|
|
39755
|
-
}) }, hAsync("div", { key: '
|
|
40377
|
+
}) }, hAsync("div", { key: '784cf60a0db16045391891cc8fad0c7dbeba4039', class: "toolbar-title" }, hAsync("slot", { key: '0c720a50479ba257e8756337aeb9b0ab7516a227' }))));
|
|
39756
40378
|
}
|
|
39757
40379
|
get el() { return getElement(this); }
|
|
39758
40380
|
static get watchers() { return {
|
|
@@ -39832,8 +40454,10 @@ registerComponents([
|
|
|
39832
40454
|
Nav,
|
|
39833
40455
|
NavLink,
|
|
39834
40456
|
Note,
|
|
40457
|
+
Picker$1,
|
|
39835
40458
|
Picker,
|
|
39836
40459
|
PickerColumn,
|
|
40460
|
+
PickerColumnCmp,
|
|
39837
40461
|
PickerColumnOption,
|
|
39838
40462
|
Popover,
|
|
39839
40463
|
ProgressBar,
|