@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.mjs
CHANGED
|
@@ -7790,7 +7790,7 @@ const focusElementInOverlay = (hostToFocus, overlay) => {
|
|
|
7790
7790
|
* Should NOT include: Toast
|
|
7791
7791
|
*/
|
|
7792
7792
|
const trapKeyboardFocus = (ev, doc) => {
|
|
7793
|
-
const lastOverlay = getPresentedOverlay(doc, 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-popover');
|
|
7793
|
+
const lastOverlay = getPresentedOverlay(doc, 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-picker-legacy,ion-popover');
|
|
7794
7794
|
const target = ev.target;
|
|
7795
7795
|
/**
|
|
7796
7796
|
* If no active overlay, ignore this event.
|
|
@@ -8024,7 +8024,7 @@ const dismissOverlay = (doc, data, role, overlayTag, id) => {
|
|
|
8024
8024
|
*/
|
|
8025
8025
|
const getOverlays = (doc, selector) => {
|
|
8026
8026
|
if (selector === undefined) {
|
|
8027
|
-
selector = 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-popover,ion-toast';
|
|
8027
|
+
selector = 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-picker-legacy,ion-popover,ion-toast';
|
|
8028
8028
|
}
|
|
8029
8029
|
return Array.from(doc.querySelectorAll(selector)).filter((c) => c.overlayIndex > 0);
|
|
8030
8030
|
};
|
|
@@ -8086,29 +8086,6 @@ const setRootAriaHidden = (hidden = false) => {
|
|
|
8086
8086
|
viewContainer.removeAttribute('aria-hidden');
|
|
8087
8087
|
}
|
|
8088
8088
|
};
|
|
8089
|
-
/**
|
|
8090
|
-
* Cleans up root `aria-hidden` and `backdrop-no-scroll` when
|
|
8091
|
-
* an overlay is removed from the DOM without going through
|
|
8092
|
-
* the `dismiss()` flow (e.g., when a framework unmounts the
|
|
8093
|
-
* overlay during a route change).
|
|
8094
|
-
*
|
|
8095
|
-
* Should be called from an overlay's `disconnectedCallback`
|
|
8096
|
-
* when the overlay was still presented at the time of removal.
|
|
8097
|
-
*/
|
|
8098
|
-
const cleanupRootFocusTrapAccessibility = () => {
|
|
8099
|
-
if (typeof document === 'undefined') {
|
|
8100
|
-
return;
|
|
8101
|
-
}
|
|
8102
|
-
const remainingOverlays = getPresentedOverlays(document);
|
|
8103
|
-
const hasRemainingLocking = remainingOverlays.some((o) => {
|
|
8104
|
-
const el = o;
|
|
8105
|
-
return el.tagName !== 'ION-TOAST' && el.focusTrap !== false && isBackdropAlwaysBlocking(el);
|
|
8106
|
-
});
|
|
8107
|
-
if (!hasRemainingLocking) {
|
|
8108
|
-
setRootAriaHidden(false);
|
|
8109
|
-
document.body.classList.remove(BACKDROP_NO_SCROLL);
|
|
8110
|
-
}
|
|
8111
|
-
};
|
|
8112
8089
|
const present = async (overlay, name, iosEnterAnimation, mdEnterAnimation, opts) => {
|
|
8113
8090
|
var _a, _b;
|
|
8114
8091
|
if (overlay.presented) {
|
|
@@ -9365,7 +9342,7 @@ const createAnimation = (animationId) => {
|
|
|
9365
9342
|
/**
|
|
9366
9343
|
* iOS Action Sheet Enter Animation
|
|
9367
9344
|
*/
|
|
9368
|
-
const iosEnterAnimation$
|
|
9345
|
+
const iosEnterAnimation$6 = (baseEl) => {
|
|
9369
9346
|
const baseAnimation = createAnimation();
|
|
9370
9347
|
const backdropAnimation = createAnimation();
|
|
9371
9348
|
const wrapperAnimation = createAnimation();
|
|
@@ -9389,7 +9366,7 @@ const iosEnterAnimation$5 = (baseEl) => {
|
|
|
9389
9366
|
/**
|
|
9390
9367
|
* iOS Action Sheet Leave Animation
|
|
9391
9368
|
*/
|
|
9392
|
-
const iosLeaveAnimation$
|
|
9369
|
+
const iosLeaveAnimation$6 = (baseEl) => {
|
|
9393
9370
|
const baseAnimation = createAnimation();
|
|
9394
9371
|
const backdropAnimation = createAnimation();
|
|
9395
9372
|
const wrapperAnimation = createAnimation();
|
|
@@ -9545,7 +9522,7 @@ class ActionSheet {
|
|
|
9545
9522
|
async present() {
|
|
9546
9523
|
const unlock = await this.lockController.lock();
|
|
9547
9524
|
await this.delegateController.attachViewToDom();
|
|
9548
|
-
await present(this, 'actionSheetEnter', iosEnterAnimation$
|
|
9525
|
+
await present(this, 'actionSheetEnter', iosEnterAnimation$6, mdEnterAnimation$5);
|
|
9549
9526
|
unlock();
|
|
9550
9527
|
}
|
|
9551
9528
|
/**
|
|
@@ -9562,7 +9539,7 @@ class ActionSheet {
|
|
|
9562
9539
|
*/
|
|
9563
9540
|
async dismiss(data, role) {
|
|
9564
9541
|
const unlock = await this.lockController.lock();
|
|
9565
|
-
const dismissed = await dismiss(this, data, role, 'actionSheetLeave', iosLeaveAnimation$
|
|
9542
|
+
const dismissed = await dismiss(this, data, role, 'actionSheetLeave', iosLeaveAnimation$6, mdLeaveAnimation$5);
|
|
9566
9543
|
if (dismissed) {
|
|
9567
9544
|
this.delegateController.removeViewFromDom();
|
|
9568
9545
|
}
|
|
@@ -9731,10 +9708,6 @@ class ActionSheet {
|
|
|
9731
9708
|
this.gesture = undefined;
|
|
9732
9709
|
}
|
|
9733
9710
|
this.triggerController.removeClickListener();
|
|
9734
|
-
// Clean up aria-hidden if removed without dismiss() being called
|
|
9735
|
-
if (this.presented) {
|
|
9736
|
-
cleanupRootFocusTrapAccessibility();
|
|
9737
|
-
}
|
|
9738
9711
|
}
|
|
9739
9712
|
componentWillLoad() {
|
|
9740
9713
|
var _a;
|
|
@@ -9823,7 +9796,7 @@ class ActionSheet {
|
|
|
9823
9796
|
if (isRadio) {
|
|
9824
9797
|
htmlAttrs['aria-checked'] = isActiveRadio ? 'true' : 'false';
|
|
9825
9798
|
}
|
|
9826
|
-
return (hAsync("button", Object.assign({}, htmlAttrs, { role: isRadio ? 'radio' : undefined, type: "button", id: buttonId, class: Object.assign(Object.assign({}, buttonClass$
|
|
9799
|
+
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: () => {
|
|
9827
9800
|
if (isRadio) {
|
|
9828
9801
|
this.selectRadioButton(b);
|
|
9829
9802
|
}
|
|
@@ -9838,12 +9811,12 @@ class ActionSheet {
|
|
|
9838
9811
|
const cancelButton = allButtons.find((b) => b.role === 'cancel');
|
|
9839
9812
|
const buttons = allButtons.filter((b) => b.role !== 'cancel');
|
|
9840
9813
|
const headerID = `action-sheet-${overlayIndex}-header`;
|
|
9841
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
9814
|
+
return (hAsync(Host, Object.assign({ key: '173fcff5b1da7c33c267de4667591c946b8c8d03', role: "dialog", "aria-modal": "true", "aria-labelledby": header !== undefined ? headerID : null, tabindex: "-1" }, htmlAttributes, { style: {
|
|
9842
9815
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
9843
|
-
}, 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: '
|
|
9816
|
+
}, 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: {
|
|
9844
9817
|
'action-sheet-title': true,
|
|
9845
9818
|
'action-sheet-has-sub-title': this.subHeader !== undefined,
|
|
9846
|
-
} }, header, this.subHeader && hAsync("div", { key: '
|
|
9819
|
+
} }, 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" })));
|
|
9847
9820
|
}
|
|
9848
9821
|
get el() { return getElement(this); }
|
|
9849
9822
|
static get watchers() { return {
|
|
@@ -9892,7 +9865,7 @@ class ActionSheet {
|
|
|
9892
9865
|
"$attrsToReflect$": []
|
|
9893
9866
|
}; }
|
|
9894
9867
|
}
|
|
9895
|
-
const buttonClass$
|
|
9868
|
+
const buttonClass$3 = (button) => {
|
|
9896
9869
|
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));
|
|
9897
9870
|
};
|
|
9898
9871
|
|
|
@@ -10063,7 +10036,7 @@ class IonicSafeString {
|
|
|
10063
10036
|
/**
|
|
10064
10037
|
* iOS Alert Enter Animation
|
|
10065
10038
|
*/
|
|
10066
|
-
const iosEnterAnimation$
|
|
10039
|
+
const iosEnterAnimation$5 = (baseEl) => {
|
|
10067
10040
|
const baseAnimation = createAnimation();
|
|
10068
10041
|
const backdropAnimation = createAnimation();
|
|
10069
10042
|
const wrapperAnimation = createAnimation();
|
|
@@ -10088,7 +10061,7 @@ const iosEnterAnimation$4 = (baseEl) => {
|
|
|
10088
10061
|
/**
|
|
10089
10062
|
* iOS Alert Leave Animation
|
|
10090
10063
|
*/
|
|
10091
|
-
const iosLeaveAnimation$
|
|
10064
|
+
const iosLeaveAnimation$5 = (baseEl) => {
|
|
10092
10065
|
const baseAnimation = createAnimation();
|
|
10093
10066
|
const backdropAnimation = createAnimation();
|
|
10094
10067
|
const wrapperAnimation = createAnimation();
|
|
@@ -10349,10 +10322,6 @@ class Alert {
|
|
|
10349
10322
|
this.gesture.destroy();
|
|
10350
10323
|
this.gesture = undefined;
|
|
10351
10324
|
}
|
|
10352
|
-
// Clean up aria-hidden if removed without dismiss() being called
|
|
10353
|
-
if (this.presented) {
|
|
10354
|
-
cleanupRootFocusTrapAccessibility();
|
|
10355
|
-
}
|
|
10356
10325
|
}
|
|
10357
10326
|
componentDidLoad() {
|
|
10358
10327
|
/**
|
|
@@ -10389,7 +10358,7 @@ class Alert {
|
|
|
10389
10358
|
async present() {
|
|
10390
10359
|
const unlock = await this.lockController.lock();
|
|
10391
10360
|
await this.delegateController.attachViewToDom();
|
|
10392
|
-
await present(this, 'alertEnter', iosEnterAnimation$
|
|
10361
|
+
await present(this, 'alertEnter', iosEnterAnimation$5, mdEnterAnimation$4).then(() => {
|
|
10393
10362
|
var _a, _b;
|
|
10394
10363
|
/**
|
|
10395
10364
|
* Check if alert has only one button and no inputs.
|
|
@@ -10420,7 +10389,7 @@ class Alert {
|
|
|
10420
10389
|
*/
|
|
10421
10390
|
async dismiss(data, role) {
|
|
10422
10391
|
const unlock = await this.lockController.lock();
|
|
10423
|
-
const dismissed = await dismiss(this, data, role, 'alertLeave', iosLeaveAnimation$
|
|
10392
|
+
const dismissed = await dismiss(this, data, role, 'alertLeave', iosLeaveAnimation$5, mdLeaveAnimation$4);
|
|
10424
10393
|
if (dismissed) {
|
|
10425
10394
|
this.delegateController.removeViewFromDom();
|
|
10426
10395
|
}
|
|
@@ -10561,7 +10530,7 @@ class Alert {
|
|
|
10561
10530
|
'alert-button-group': true,
|
|
10562
10531
|
'alert-button-group-vertical': buttons.length > 2,
|
|
10563
10532
|
};
|
|
10564
|
-
return (hAsync("div", { class: alertButtonGroupClass }, buttons.map((button) => (hAsync("button", Object.assign({}, button.htmlAttributes, { type: "button", id: button.id, class: buttonClass$
|
|
10533
|
+
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))))));
|
|
10565
10534
|
}
|
|
10566
10535
|
renderAlertMessage(msgId) {
|
|
10567
10536
|
const { customHTMLEnabled, message } = this;
|
|
@@ -10584,9 +10553,9 @@ class Alert {
|
|
|
10584
10553
|
* If neither are defined, do not set aria-labelledby.
|
|
10585
10554
|
*/
|
|
10586
10555
|
const ariaLabelledBy = header && subHeader ? `${hdrId} ${subHdrId}` : header ? hdrId : subHeader ? subHdrId : null;
|
|
10587
|
-
return (hAsync(Host, { key: '
|
|
10556
|
+
return (hAsync(Host, { key: '6025440b9cd369d4fac89e7e4296c84a10a0b8e0', tabindex: "-1", style: {
|
|
10588
10557
|
zIndex: `${20000 + overlayIndex}`,
|
|
10589
|
-
}, 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: '
|
|
10558
|
+
}, 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" })));
|
|
10590
10559
|
}
|
|
10591
10560
|
get el() { return getElement(this); }
|
|
10592
10561
|
static get watchers() { return {
|
|
@@ -10643,7 +10612,7 @@ const inputClass = (input) => {
|
|
|
10643
10612
|
var _a, _b, _c;
|
|
10644
10613
|
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() : ''));
|
|
10645
10614
|
};
|
|
10646
|
-
const buttonClass$
|
|
10615
|
+
const buttonClass$2 = (button) => {
|
|
10647
10616
|
return Object.assign({ 'alert-button': true, 'ion-focusable': true, 'ion-activatable': true, [`alert-button-role-${button.role}`]: button.role !== undefined }, getClassMap(button.cssClass));
|
|
10648
10617
|
};
|
|
10649
10618
|
|
|
@@ -21473,7 +21442,7 @@ class ListHeader {
|
|
|
21473
21442
|
/**
|
|
21474
21443
|
* iOS Loading Enter Animation
|
|
21475
21444
|
*/
|
|
21476
|
-
const iosEnterAnimation$
|
|
21445
|
+
const iosEnterAnimation$4 = (baseEl) => {
|
|
21477
21446
|
const baseAnimation = createAnimation();
|
|
21478
21447
|
const backdropAnimation = createAnimation();
|
|
21479
21448
|
const wrapperAnimation = createAnimation();
|
|
@@ -21498,7 +21467,7 @@ const iosEnterAnimation$3 = (baseEl) => {
|
|
|
21498
21467
|
/**
|
|
21499
21468
|
* iOS Loading Leave Animation
|
|
21500
21469
|
*/
|
|
21501
|
-
const iosLeaveAnimation$
|
|
21470
|
+
const iosLeaveAnimation$4 = (baseEl) => {
|
|
21502
21471
|
const baseAnimation = createAnimation();
|
|
21503
21472
|
const backdropAnimation = createAnimation();
|
|
21504
21473
|
const wrapperAnimation = createAnimation();
|
|
@@ -21671,10 +21640,6 @@ class Loading {
|
|
|
21671
21640
|
}
|
|
21672
21641
|
disconnectedCallback() {
|
|
21673
21642
|
this.triggerController.removeClickListener();
|
|
21674
|
-
// Clean up aria-hidden if removed without dismiss() being called
|
|
21675
|
-
if (this.presented) {
|
|
21676
|
-
cleanupRootFocusTrapAccessibility();
|
|
21677
|
-
}
|
|
21678
21643
|
}
|
|
21679
21644
|
/**
|
|
21680
21645
|
* Present the loading overlay after it has been created.
|
|
@@ -21682,7 +21647,7 @@ class Loading {
|
|
|
21682
21647
|
async present() {
|
|
21683
21648
|
const unlock = await this.lockController.lock();
|
|
21684
21649
|
await this.delegateController.attachViewToDom();
|
|
21685
|
-
await present(this, 'loadingEnter', iosEnterAnimation$
|
|
21650
|
+
await present(this, 'loadingEnter', iosEnterAnimation$4, mdEnterAnimation$3);
|
|
21686
21651
|
if (this.duration > 0) {
|
|
21687
21652
|
this.durationTimeout = setTimeout(() => this.dismiss(), this.duration + 10);
|
|
21688
21653
|
}
|
|
@@ -21705,7 +21670,7 @@ class Loading {
|
|
|
21705
21670
|
if (this.durationTimeout) {
|
|
21706
21671
|
clearTimeout(this.durationTimeout);
|
|
21707
21672
|
}
|
|
21708
|
-
const dismissed = await dismiss(this, data, role, 'loadingLeave', iosLeaveAnimation$
|
|
21673
|
+
const dismissed = await dismiss(this, data, role, 'loadingLeave', iosLeaveAnimation$4, mdLeaveAnimation$3);
|
|
21709
21674
|
if (dismissed) {
|
|
21710
21675
|
this.delegateController.removeViewFromDom();
|
|
21711
21676
|
}
|
|
@@ -21740,9 +21705,9 @@ class Loading {
|
|
|
21740
21705
|
* Otherwise, don't set aria-labelledby.
|
|
21741
21706
|
*/
|
|
21742
21707
|
const ariaLabelledBy = message !== undefined ? msgId : null;
|
|
21743
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
21708
|
+
return (hAsync(Host, Object.assign({ key: 'f86ddbc600cb5c396b7de38fb5f49625388c3c3f', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
|
|
21744
21709
|
zIndex: `${40000 + this.overlayIndex}`,
|
|
21745
|
-
}, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), hAsync("ion-backdrop", { key: '
|
|
21710
|
+
}, 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" })));
|
|
21746
21711
|
}
|
|
21747
21712
|
get el() { return getElement(this); }
|
|
21748
21713
|
static get watchers() { return {
|
|
@@ -24016,7 +23981,7 @@ const createEnterAnimation$1 = () => {
|
|
|
24016
23981
|
/**
|
|
24017
23982
|
* iOS Modal Enter Animation for the Card presentation style
|
|
24018
23983
|
*/
|
|
24019
|
-
const iosEnterAnimation$
|
|
23984
|
+
const iosEnterAnimation$3 = (baseEl, opts) => {
|
|
24020
23985
|
const { presentingEl, currentBreakpoint, expandToScroll } = opts;
|
|
24021
23986
|
const root = getElementRoot(baseEl);
|
|
24022
23987
|
const { wrapperAnimation, backdropAnimation, contentAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation$1();
|
|
@@ -24109,7 +24074,7 @@ const createLeaveAnimation$1 = () => {
|
|
|
24109
24074
|
/**
|
|
24110
24075
|
* iOS Modal Leave Animation
|
|
24111
24076
|
*/
|
|
24112
|
-
const iosLeaveAnimation$
|
|
24077
|
+
const iosLeaveAnimation$3 = (baseEl, opts, duration = 500) => {
|
|
24113
24078
|
const { presentingEl, currentBreakpoint } = opts;
|
|
24114
24079
|
const root = getElementRoot(baseEl);
|
|
24115
24080
|
const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation$1();
|
|
@@ -25482,10 +25447,6 @@ class Modal {
|
|
|
25482
25447
|
// Also called in dismiss() — intentional dual cleanup covers both
|
|
25483
25448
|
// dismiss-then-remove and direct DOM removal without dismiss.
|
|
25484
25449
|
this.cleanupSafeAreaOverrides();
|
|
25485
|
-
// Clean up aria-hidden if removed without dismiss() being called
|
|
25486
|
-
if (this.presented) {
|
|
25487
|
-
cleanupRootFocusTrapAccessibility();
|
|
25488
|
-
}
|
|
25489
25450
|
}
|
|
25490
25451
|
componentWillLoad() {
|
|
25491
25452
|
var _a;
|
|
@@ -25662,7 +25623,7 @@ class Modal {
|
|
|
25662
25623
|
this.statusBarStyle = await StatusBar.getStyle();
|
|
25663
25624
|
setCardStatusBarDark();
|
|
25664
25625
|
}
|
|
25665
|
-
await present(this, 'modalEnter', iosEnterAnimation$
|
|
25626
|
+
await present(this, 'modalEnter', iosEnterAnimation$3, mdEnterAnimation$2, {
|
|
25666
25627
|
presentingEl: presentingElement,
|
|
25667
25628
|
currentBreakpoint: this.initialBreakpoint,
|
|
25668
25629
|
backdropBreakpoint: this.backdropBreakpoint,
|
|
@@ -25724,7 +25685,7 @@ class Modal {
|
|
|
25724
25685
|
// All of the elements needed for the swipe gesture
|
|
25725
25686
|
// should be in the DOM and referenced by now, except
|
|
25726
25687
|
// for the presenting el
|
|
25727
|
-
const animationBuilder = this.leaveAnimation || config.get('modalLeave', iosLeaveAnimation$
|
|
25688
|
+
const animationBuilder = this.leaveAnimation || config.get('modalLeave', iosLeaveAnimation$3);
|
|
25728
25689
|
const ani = (this.animation = animationBuilder(el, {
|
|
25729
25690
|
presentingEl: this.presentingElement,
|
|
25730
25691
|
expandToScroll: this.expandToScroll,
|
|
@@ -25743,7 +25704,7 @@ class Modal {
|
|
|
25743
25704
|
if (!wrapperEl || initialBreakpoint === undefined) {
|
|
25744
25705
|
return;
|
|
25745
25706
|
}
|
|
25746
|
-
const animationBuilder = this.enterAnimation || config.get('modalEnter', iosEnterAnimation$
|
|
25707
|
+
const animationBuilder = this.enterAnimation || config.get('modalEnter', iosEnterAnimation$3);
|
|
25747
25708
|
const ani = (this.animation = animationBuilder(this.el, {
|
|
25748
25709
|
presentingEl: this.presentingElement,
|
|
25749
25710
|
currentBreakpoint: initialBreakpoint,
|
|
@@ -25933,7 +25894,7 @@ class Modal {
|
|
|
25933
25894
|
window.removeEventListener(KEYBOARD_DID_OPEN, this.keyboardOpenCallback);
|
|
25934
25895
|
this.keyboardOpenCallback = undefined;
|
|
25935
25896
|
}
|
|
25936
|
-
const dismissed = await dismiss(this, data, role, 'modalLeave', iosLeaveAnimation$
|
|
25897
|
+
const dismissed = await dismiss(this, data, role, 'modalLeave', iosLeaveAnimation$3, mdLeaveAnimation$2, {
|
|
25937
25898
|
presentingEl: presentingElement,
|
|
25938
25899
|
currentBreakpoint: (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : this.initialBreakpoint,
|
|
25939
25900
|
backdropBreakpoint: this.backdropBreakpoint,
|
|
@@ -26365,20 +26326,20 @@ class Modal {
|
|
|
26365
26326
|
const isCardModal = presentingElement !== undefined && mode === 'ios';
|
|
26366
26327
|
const isHandleCycle = handleBehavior === 'cycle';
|
|
26367
26328
|
const isSheetModalWithHandle = isSheetModal && showHandle;
|
|
26368
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
26329
|
+
return (hAsync(Host, Object.assign({ key: '4bf38aa67df9a3f977163bba5423960bbafd16de', "no-router": true,
|
|
26369
26330
|
// Allow the modal to be navigable when the handle is focusable
|
|
26370
26331
|
tabIndex: isHandleCycle && isSheetModalWithHandle ? 0 : -1 }, htmlAttributes, { style: {
|
|
26371
26332
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
26372
|
-
}, 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: '
|
|
26333
|
+
}, 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',
|
|
26373
26334
|
/*
|
|
26374
26335
|
role and aria-modal must be used on the
|
|
26375
26336
|
same element. They must also be set inside the
|
|
26376
26337
|
shadow DOM otherwise ion-button will not be highlighted
|
|
26377
26338
|
when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
|
|
26378
26339
|
*/
|
|
26379
|
-
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: '
|
|
26340
|
+
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",
|
|
26380
26341
|
// Prevents the handle from receiving keyboard focus when it does not cycle
|
|
26381
|
-
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: '
|
|
26342
|
+
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 }))));
|
|
26382
26343
|
}
|
|
26383
26344
|
get el() { return getElement(this); }
|
|
26384
26345
|
static get watchers() { return {
|
|
@@ -27458,14 +27419,14 @@ class Note {
|
|
|
27458
27419
|
}; }
|
|
27459
27420
|
}
|
|
27460
27421
|
|
|
27461
|
-
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)))}`;
|
|
27422
|
+
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)))}`;
|
|
27462
27423
|
|
|
27463
|
-
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%)}`;
|
|
27424
|
+
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%)}`;
|
|
27464
27425
|
|
|
27465
27426
|
/**
|
|
27466
27427
|
* @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
|
|
27467
27428
|
*/
|
|
27468
|
-
class Picker {
|
|
27429
|
+
let Picker$1 = class Picker {
|
|
27469
27430
|
constructor(hostRef) {
|
|
27470
27431
|
registerInstance(this, hostRef);
|
|
27471
27432
|
this.ionInputModeChange = createEvent(this, "ionInputModeChange", 7);
|
|
@@ -27931,8 +27892,8 @@ class Picker {
|
|
|
27931
27892
|
}
|
|
27932
27893
|
get el() { return getElement(this); }
|
|
27933
27894
|
static get style() { return {
|
|
27934
|
-
ios: pickerIosCss(),
|
|
27935
|
-
md: pickerMdCss()
|
|
27895
|
+
ios: pickerIosCss$1(),
|
|
27896
|
+
md: pickerMdCss$1()
|
|
27936
27897
|
}; }
|
|
27937
27898
|
static get cmpMeta() { return {
|
|
27938
27899
|
"$flags$": 297,
|
|
@@ -27944,7 +27905,322 @@ class Picker {
|
|
|
27944
27905
|
"$lazyBundleId$": "-",
|
|
27945
27906
|
"$attrsToReflect$": []
|
|
27946
27907
|
}; }
|
|
27908
|
+
};
|
|
27909
|
+
|
|
27910
|
+
/**
|
|
27911
|
+
* iOS Picker Enter Animation
|
|
27912
|
+
*/
|
|
27913
|
+
const iosEnterAnimation$2 = (baseEl) => {
|
|
27914
|
+
const baseAnimation = createAnimation();
|
|
27915
|
+
const backdropAnimation = createAnimation();
|
|
27916
|
+
const wrapperAnimation = createAnimation();
|
|
27917
|
+
backdropAnimation
|
|
27918
|
+
.addElement(baseEl.querySelector('ion-backdrop'))
|
|
27919
|
+
.fromTo('opacity', 0.01, 'var(--backdrop-opacity)')
|
|
27920
|
+
.beforeStyles({
|
|
27921
|
+
'pointer-events': 'none',
|
|
27922
|
+
})
|
|
27923
|
+
.afterClearStyles(['pointer-events']);
|
|
27924
|
+
wrapperAnimation
|
|
27925
|
+
.addElement(baseEl.querySelector('.picker-wrapper'))
|
|
27926
|
+
.fromTo('transform', 'translateY(100%)', 'translateY(0%)');
|
|
27927
|
+
return baseAnimation
|
|
27928
|
+
.addElement(baseEl)
|
|
27929
|
+
.easing('cubic-bezier(.36,.66,.04,1)')
|
|
27930
|
+
.duration(400)
|
|
27931
|
+
.addAnimation([backdropAnimation, wrapperAnimation]);
|
|
27932
|
+
};
|
|
27933
|
+
|
|
27934
|
+
/**
|
|
27935
|
+
* iOS Picker Leave Animation
|
|
27936
|
+
*/
|
|
27937
|
+
const iosLeaveAnimation$2 = (baseEl) => {
|
|
27938
|
+
const baseAnimation = createAnimation();
|
|
27939
|
+
const backdropAnimation = createAnimation();
|
|
27940
|
+
const wrapperAnimation = createAnimation();
|
|
27941
|
+
backdropAnimation
|
|
27942
|
+
.addElement(baseEl.querySelector('ion-backdrop'))
|
|
27943
|
+
.fromTo('opacity', 'var(--backdrop-opacity)', 0.01);
|
|
27944
|
+
wrapperAnimation
|
|
27945
|
+
.addElement(baseEl.querySelector('.picker-wrapper'))
|
|
27946
|
+
.fromTo('transform', 'translateY(0%)', 'translateY(100%)');
|
|
27947
|
+
return baseAnimation
|
|
27948
|
+
.addElement(baseEl)
|
|
27949
|
+
.easing('cubic-bezier(.36,.66,.04,1)')
|
|
27950
|
+
.duration(400)
|
|
27951
|
+
.addAnimation([backdropAnimation, wrapperAnimation]);
|
|
27952
|
+
};
|
|
27953
|
+
|
|
27954
|
+
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}`;
|
|
27955
|
+
|
|
27956
|
+
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}`;
|
|
27957
|
+
|
|
27958
|
+
// TODO(FW-2832): types
|
|
27959
|
+
/**
|
|
27960
|
+
* @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
|
|
27961
|
+
*/
|
|
27962
|
+
class Picker {
|
|
27963
|
+
constructor(hostRef) {
|
|
27964
|
+
registerInstance(this, hostRef);
|
|
27965
|
+
this.didPresent = createEvent(this, "ionPickerDidPresent", 7);
|
|
27966
|
+
this.willPresent = createEvent(this, "ionPickerWillPresent", 7);
|
|
27967
|
+
this.willDismiss = createEvent(this, "ionPickerWillDismiss", 7);
|
|
27968
|
+
this.didDismiss = createEvent(this, "ionPickerDidDismiss", 7);
|
|
27969
|
+
this.didPresentShorthand = createEvent(this, "didPresent", 7);
|
|
27970
|
+
this.willPresentShorthand = createEvent(this, "willPresent", 7);
|
|
27971
|
+
this.willDismissShorthand = createEvent(this, "willDismiss", 7);
|
|
27972
|
+
this.didDismissShorthand = createEvent(this, "didDismiss", 7);
|
|
27973
|
+
this.delegateController = createDelegateController(this);
|
|
27974
|
+
this.lockController = createLockController();
|
|
27975
|
+
this.triggerController = createTriggerController();
|
|
27976
|
+
this.presented = false;
|
|
27977
|
+
/** @internal */
|
|
27978
|
+
this.hasController = false;
|
|
27979
|
+
/**
|
|
27980
|
+
* If `true`, the keyboard will be automatically dismissed when the overlay is presented.
|
|
27981
|
+
*/
|
|
27982
|
+
this.keyboardClose = true;
|
|
27983
|
+
/**
|
|
27984
|
+
* Array of buttons to be displayed at the top of the picker.
|
|
27985
|
+
*/
|
|
27986
|
+
this.buttons = [];
|
|
27987
|
+
/**
|
|
27988
|
+
* Array of columns to be displayed in the picker.
|
|
27989
|
+
*/
|
|
27990
|
+
this.columns = [];
|
|
27991
|
+
/**
|
|
27992
|
+
* Number of milliseconds to wait before dismissing the picker.
|
|
27993
|
+
*/
|
|
27994
|
+
this.duration = 0;
|
|
27995
|
+
/**
|
|
27996
|
+
* If `true`, a backdrop will be displayed behind the picker.
|
|
27997
|
+
*/
|
|
27998
|
+
this.showBackdrop = true;
|
|
27999
|
+
/**
|
|
28000
|
+
* If `true`, the picker will be dismissed when the backdrop is clicked.
|
|
28001
|
+
*/
|
|
28002
|
+
this.backdropDismiss = true;
|
|
28003
|
+
/**
|
|
28004
|
+
* If `true`, the picker will animate.
|
|
28005
|
+
*/
|
|
28006
|
+
this.animated = true;
|
|
28007
|
+
/**
|
|
28008
|
+
* If `true`, the picker will open. If `false`, the picker will close.
|
|
28009
|
+
* Use this if you need finer grained control over presentation, otherwise
|
|
28010
|
+
* just use the pickerController or the `trigger` property.
|
|
28011
|
+
* Note: `isOpen` will not automatically be set back to `false` when
|
|
28012
|
+
* the picker dismisses. You will need to do that in your code.
|
|
28013
|
+
*/
|
|
28014
|
+
this.isOpen = false;
|
|
28015
|
+
this.onBackdropTap = () => {
|
|
28016
|
+
this.dismiss(undefined, BACKDROP);
|
|
28017
|
+
};
|
|
28018
|
+
this.dispatchCancelHandler = (ev) => {
|
|
28019
|
+
const role = ev.detail.role;
|
|
28020
|
+
if (isCancel(role)) {
|
|
28021
|
+
const cancelButton = this.buttons.find((b) => b.role === 'cancel');
|
|
28022
|
+
this.callButtonHandler(cancelButton);
|
|
28023
|
+
}
|
|
28024
|
+
};
|
|
28025
|
+
}
|
|
28026
|
+
onIsOpenChange(newValue, oldValue) {
|
|
28027
|
+
if (newValue === true && oldValue === false) {
|
|
28028
|
+
this.present();
|
|
28029
|
+
}
|
|
28030
|
+
else if (newValue === false && oldValue === true) {
|
|
28031
|
+
this.dismiss();
|
|
28032
|
+
}
|
|
28033
|
+
}
|
|
28034
|
+
triggerChanged() {
|
|
28035
|
+
const { trigger, el, triggerController } = this;
|
|
28036
|
+
if (trigger) {
|
|
28037
|
+
triggerController.addClickListener(el, trigger);
|
|
28038
|
+
}
|
|
28039
|
+
}
|
|
28040
|
+
connectedCallback() {
|
|
28041
|
+
prepareOverlay(this.el);
|
|
28042
|
+
this.triggerChanged();
|
|
28043
|
+
}
|
|
28044
|
+
disconnectedCallback() {
|
|
28045
|
+
this.triggerController.removeClickListener();
|
|
28046
|
+
}
|
|
28047
|
+
componentWillLoad() {
|
|
28048
|
+
var _a;
|
|
28049
|
+
if (!((_a = this.htmlAttributes) === null || _a === void 0 ? void 0 : _a.id)) {
|
|
28050
|
+
setOverlayId(this.el);
|
|
28051
|
+
}
|
|
28052
|
+
}
|
|
28053
|
+
componentDidLoad() {
|
|
28054
|
+
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);
|
|
28055
|
+
/**
|
|
28056
|
+
* If picker was rendered with isOpen="true"
|
|
28057
|
+
* then we should open picker immediately.
|
|
28058
|
+
*/
|
|
28059
|
+
if (this.isOpen === true) {
|
|
28060
|
+
raf(() => this.present());
|
|
28061
|
+
}
|
|
28062
|
+
/**
|
|
28063
|
+
* When binding values in frameworks such as Angular
|
|
28064
|
+
* it is possible for the value to be set after the Web Component
|
|
28065
|
+
* initializes but before the value watcher is set up in Stencil.
|
|
28066
|
+
* As a result, the watcher callback may not be fired.
|
|
28067
|
+
* We work around this by manually calling the watcher
|
|
28068
|
+
* callback when the component has loaded and the watcher
|
|
28069
|
+
* is configured.
|
|
28070
|
+
*/
|
|
28071
|
+
this.triggerChanged();
|
|
28072
|
+
}
|
|
28073
|
+
/**
|
|
28074
|
+
* Present the picker overlay after it has been created.
|
|
28075
|
+
*/
|
|
28076
|
+
async present() {
|
|
28077
|
+
const unlock = await this.lockController.lock();
|
|
28078
|
+
await this.delegateController.attachViewToDom();
|
|
28079
|
+
await present(this, 'pickerEnter', iosEnterAnimation$2, iosEnterAnimation$2, undefined);
|
|
28080
|
+
if (this.duration > 0) {
|
|
28081
|
+
this.durationTimeout = setTimeout(() => this.dismiss(), this.duration);
|
|
28082
|
+
}
|
|
28083
|
+
unlock();
|
|
28084
|
+
}
|
|
28085
|
+
/**
|
|
28086
|
+
* Dismiss the picker overlay after it has been presented.
|
|
28087
|
+
*
|
|
28088
|
+
* @param data Any data to emit in the dismiss events.
|
|
28089
|
+
* @param role The role of the element that is dismissing the picker.
|
|
28090
|
+
* This can be useful in a button handler for determining which button was
|
|
28091
|
+
* clicked to dismiss the picker.
|
|
28092
|
+
* Some examples include: ``"cancel"`, `"destructive"`, "selected"`, and `"backdrop"`.
|
|
28093
|
+
*/
|
|
28094
|
+
async dismiss(data, role) {
|
|
28095
|
+
const unlock = await this.lockController.lock();
|
|
28096
|
+
if (this.durationTimeout) {
|
|
28097
|
+
clearTimeout(this.durationTimeout);
|
|
28098
|
+
}
|
|
28099
|
+
const dismissed = await dismiss(this, data, role, 'pickerLeave', iosLeaveAnimation$2, iosLeaveAnimation$2);
|
|
28100
|
+
if (dismissed) {
|
|
28101
|
+
this.delegateController.removeViewFromDom();
|
|
28102
|
+
}
|
|
28103
|
+
unlock();
|
|
28104
|
+
return dismissed;
|
|
28105
|
+
}
|
|
28106
|
+
/**
|
|
28107
|
+
* Returns a promise that resolves when the picker did dismiss.
|
|
28108
|
+
*/
|
|
28109
|
+
onDidDismiss() {
|
|
28110
|
+
return eventMethod(this.el, 'ionPickerDidDismiss');
|
|
28111
|
+
}
|
|
28112
|
+
/**
|
|
28113
|
+
* Returns a promise that resolves when the picker will dismiss.
|
|
28114
|
+
*/
|
|
28115
|
+
onWillDismiss() {
|
|
28116
|
+
return eventMethod(this.el, 'ionPickerWillDismiss');
|
|
28117
|
+
}
|
|
28118
|
+
/**
|
|
28119
|
+
* Get the column that matches the specified name.
|
|
28120
|
+
*
|
|
28121
|
+
* @param name The name of the column.
|
|
28122
|
+
*/
|
|
28123
|
+
getColumn(name) {
|
|
28124
|
+
return Promise.resolve(this.columns.find((column) => column.name === name));
|
|
28125
|
+
}
|
|
28126
|
+
async buttonClick(button) {
|
|
28127
|
+
const role = button.role;
|
|
28128
|
+
if (isCancel(role)) {
|
|
28129
|
+
return this.dismiss(undefined, role);
|
|
28130
|
+
}
|
|
28131
|
+
const shouldDismiss = await this.callButtonHandler(button);
|
|
28132
|
+
if (shouldDismiss) {
|
|
28133
|
+
return this.dismiss(this.getSelected(), button.role);
|
|
28134
|
+
}
|
|
28135
|
+
return Promise.resolve();
|
|
28136
|
+
}
|
|
28137
|
+
async callButtonHandler(button) {
|
|
28138
|
+
if (button) {
|
|
28139
|
+
// a handler has been provided, execute it
|
|
28140
|
+
// pass the handler the values from the inputs
|
|
28141
|
+
const rtn = await safeCall(button.handler, this.getSelected());
|
|
28142
|
+
if (rtn === false) {
|
|
28143
|
+
// if the return value of the handler is false then do not dismiss
|
|
28144
|
+
return false;
|
|
28145
|
+
}
|
|
28146
|
+
}
|
|
28147
|
+
return true;
|
|
28148
|
+
}
|
|
28149
|
+
getSelected() {
|
|
28150
|
+
const selected = {};
|
|
28151
|
+
this.columns.forEach((col, index) => {
|
|
28152
|
+
const selectedColumn = col.selectedIndex !== undefined ? col.options[col.selectedIndex] : undefined;
|
|
28153
|
+
selected[col.name] = {
|
|
28154
|
+
text: selectedColumn ? selectedColumn.text : undefined,
|
|
28155
|
+
value: selectedColumn ? selectedColumn.value : undefined,
|
|
28156
|
+
columnIndex: index,
|
|
28157
|
+
};
|
|
28158
|
+
});
|
|
28159
|
+
return selected;
|
|
28160
|
+
}
|
|
28161
|
+
render() {
|
|
28162
|
+
const { htmlAttributes } = this;
|
|
28163
|
+
const mode = getIonMode$1(this);
|
|
28164
|
+
return (hAsync(Host, Object.assign({ key: '80f66d33780d8a1352d24be9cb63a0cc03d01ab5', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
|
|
28165
|
+
zIndex: `${20000 + this.overlayIndex}`,
|
|
28166
|
+
}, class: Object.assign({ [mode]: true,
|
|
28167
|
+
// Used internally for styling
|
|
28168
|
+
[`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" })));
|
|
28169
|
+
}
|
|
28170
|
+
get el() { return getElement(this); }
|
|
28171
|
+
static get watchers() { return {
|
|
28172
|
+
"isOpen": [{
|
|
28173
|
+
"onIsOpenChange": 0
|
|
28174
|
+
}],
|
|
28175
|
+
"trigger": [{
|
|
28176
|
+
"triggerChanged": 0
|
|
28177
|
+
}]
|
|
28178
|
+
}; }
|
|
28179
|
+
static get style() { return {
|
|
28180
|
+
ios: pickerIosCss(),
|
|
28181
|
+
md: pickerMdCss()
|
|
28182
|
+
}; }
|
|
28183
|
+
static get cmpMeta() { return {
|
|
28184
|
+
"$flags$": 34,
|
|
28185
|
+
"$tagName$": "ion-picker-legacy",
|
|
28186
|
+
"$members$": {
|
|
28187
|
+
"overlayIndex": [2, "overlay-index"],
|
|
28188
|
+
"delegate": [16],
|
|
28189
|
+
"hasController": [4, "has-controller"],
|
|
28190
|
+
"keyboardClose": [4, "keyboard-close"],
|
|
28191
|
+
"enterAnimation": [16],
|
|
28192
|
+
"leaveAnimation": [16],
|
|
28193
|
+
"buttons": [16],
|
|
28194
|
+
"columns": [16],
|
|
28195
|
+
"cssClass": [1, "css-class"],
|
|
28196
|
+
"duration": [2],
|
|
28197
|
+
"showBackdrop": [4, "show-backdrop"],
|
|
28198
|
+
"backdropDismiss": [4, "backdrop-dismiss"],
|
|
28199
|
+
"animated": [4],
|
|
28200
|
+
"htmlAttributes": [16],
|
|
28201
|
+
"isOpen": [4, "is-open"],
|
|
28202
|
+
"trigger": [1],
|
|
28203
|
+
"presented": [32],
|
|
28204
|
+
"present": [64],
|
|
28205
|
+
"dismiss": [64],
|
|
28206
|
+
"onDidDismiss": [64],
|
|
28207
|
+
"onWillDismiss": [64],
|
|
28208
|
+
"getColumn": [64]
|
|
28209
|
+
},
|
|
28210
|
+
"$listeners$": undefined,
|
|
28211
|
+
"$lazyBundleId$": "-",
|
|
28212
|
+
"$attrsToReflect$": []
|
|
28213
|
+
}; }
|
|
27947
28214
|
}
|
|
28215
|
+
const buttonWrapperClass = (button) => {
|
|
28216
|
+
return {
|
|
28217
|
+
[`picker-toolbar-${button.role}`]: button.role !== undefined,
|
|
28218
|
+
'picker-toolbar-button': true,
|
|
28219
|
+
};
|
|
28220
|
+
};
|
|
28221
|
+
const buttonClass$1 = (button) => {
|
|
28222
|
+
return Object.assign({ 'picker-button': true, 'ion-activatable': true }, getClassMap(button.cssClass));
|
|
28223
|
+
};
|
|
27948
28224
|
|
|
27949
28225
|
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)}}`;
|
|
27950
28226
|
|
|
@@ -28531,6 +28807,371 @@ class PickerColumn {
|
|
|
28531
28807
|
}
|
|
28532
28808
|
const PICKER_ITEM_ACTIVE_CLASS = 'option-active';
|
|
28533
28809
|
|
|
28810
|
+
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}}`;
|
|
28811
|
+
|
|
28812
|
+
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)}`;
|
|
28813
|
+
|
|
28814
|
+
/**
|
|
28815
|
+
* @internal
|
|
28816
|
+
*/
|
|
28817
|
+
class PickerColumnCmp {
|
|
28818
|
+
constructor(hostRef) {
|
|
28819
|
+
registerInstance(this, hostRef);
|
|
28820
|
+
this.ionPickerColChange = createEvent(this, "ionPickerColChange", 7);
|
|
28821
|
+
this.optHeight = 0;
|
|
28822
|
+
this.rotateFactor = 0;
|
|
28823
|
+
this.scaleFactor = 1;
|
|
28824
|
+
this.velocity = 0;
|
|
28825
|
+
this.y = 0;
|
|
28826
|
+
this.noAnimate = true;
|
|
28827
|
+
// `colDidChange` is a flag that gets set when the column is changed
|
|
28828
|
+
// dynamically. When this flag is set, the column will refresh
|
|
28829
|
+
// after the component re-renders to incorporate the new column data.
|
|
28830
|
+
// This is necessary because `this.refresh` queries for the option elements,
|
|
28831
|
+
// so it needs to wait for the latest elements to be available in the DOM.
|
|
28832
|
+
// Ex: column is created with 3 options. User updates the column data
|
|
28833
|
+
// to have 5 options. The column will still think it only has 3 options.
|
|
28834
|
+
this.colDidChange = false;
|
|
28835
|
+
}
|
|
28836
|
+
colChanged() {
|
|
28837
|
+
this.colDidChange = true;
|
|
28838
|
+
}
|
|
28839
|
+
async connectedCallback() {
|
|
28840
|
+
let pickerRotateFactor = 0;
|
|
28841
|
+
let pickerScaleFactor = 0.81;
|
|
28842
|
+
const mode = getIonMode$1(this);
|
|
28843
|
+
if (mode === 'ios') {
|
|
28844
|
+
pickerRotateFactor = -0.46;
|
|
28845
|
+
pickerScaleFactor = 1;
|
|
28846
|
+
}
|
|
28847
|
+
this.rotateFactor = pickerRotateFactor;
|
|
28848
|
+
this.scaleFactor = pickerScaleFactor;
|
|
28849
|
+
this.gesture = (await Promise.resolve().then(function () { return index; })).createGesture({
|
|
28850
|
+
el: this.el,
|
|
28851
|
+
gestureName: 'picker-swipe',
|
|
28852
|
+
gesturePriority: 100,
|
|
28853
|
+
threshold: 0,
|
|
28854
|
+
passive: false,
|
|
28855
|
+
onStart: (ev) => this.onStart(ev),
|
|
28856
|
+
onMove: (ev) => this.onMove(ev),
|
|
28857
|
+
onEnd: (ev) => this.onEnd(ev),
|
|
28858
|
+
});
|
|
28859
|
+
this.gesture.enable();
|
|
28860
|
+
// Options have not been initialized yet
|
|
28861
|
+
// Animation must be disabled through the `noAnimate` flag
|
|
28862
|
+
// Otherwise, the options will render
|
|
28863
|
+
// at the top of the column and transition down
|
|
28864
|
+
this.tmrId = setTimeout(() => {
|
|
28865
|
+
this.noAnimate = false;
|
|
28866
|
+
// After initialization, `refresh()` will be called
|
|
28867
|
+
// At this point, animation will be enabled. The options will
|
|
28868
|
+
// animate as they are being selected.
|
|
28869
|
+
this.refresh(true);
|
|
28870
|
+
}, 250);
|
|
28871
|
+
}
|
|
28872
|
+
componentDidLoad() {
|
|
28873
|
+
this.onDomChange();
|
|
28874
|
+
}
|
|
28875
|
+
componentDidUpdate() {
|
|
28876
|
+
// Options may have changed since last update.
|
|
28877
|
+
if (this.colDidChange) {
|
|
28878
|
+
// Animation must be disabled through the `onDomChange` parameter.
|
|
28879
|
+
// Otherwise, the recently added options will render
|
|
28880
|
+
// at the top of the column and transition down
|
|
28881
|
+
this.onDomChange(true, false);
|
|
28882
|
+
this.colDidChange = false;
|
|
28883
|
+
}
|
|
28884
|
+
}
|
|
28885
|
+
disconnectedCallback() {
|
|
28886
|
+
if (this.rafId !== undefined)
|
|
28887
|
+
cancelAnimationFrame(this.rafId);
|
|
28888
|
+
if (this.tmrId)
|
|
28889
|
+
clearTimeout(this.tmrId);
|
|
28890
|
+
if (this.gesture) {
|
|
28891
|
+
this.gesture.destroy();
|
|
28892
|
+
this.gesture = undefined;
|
|
28893
|
+
}
|
|
28894
|
+
}
|
|
28895
|
+
emitColChange() {
|
|
28896
|
+
this.ionPickerColChange.emit(this.col);
|
|
28897
|
+
}
|
|
28898
|
+
setSelected(selectedIndex, duration) {
|
|
28899
|
+
// if there is a selected index, then figure out it's y position
|
|
28900
|
+
// if there isn't a selected index, then just use the top y position
|
|
28901
|
+
const y = selectedIndex > -1 ? -(selectedIndex * this.optHeight) : 0;
|
|
28902
|
+
this.velocity = 0;
|
|
28903
|
+
// set what y position we're at
|
|
28904
|
+
if (this.rafId !== undefined)
|
|
28905
|
+
cancelAnimationFrame(this.rafId);
|
|
28906
|
+
this.update(y, duration, true);
|
|
28907
|
+
this.emitColChange();
|
|
28908
|
+
}
|
|
28909
|
+
update(y, duration, saveY) {
|
|
28910
|
+
if (!this.optsEl) {
|
|
28911
|
+
return;
|
|
28912
|
+
}
|
|
28913
|
+
// ensure we've got a good round number :)
|
|
28914
|
+
let translateY = 0;
|
|
28915
|
+
let translateZ = 0;
|
|
28916
|
+
const { col, rotateFactor } = this;
|
|
28917
|
+
const prevSelected = col.selectedIndex;
|
|
28918
|
+
const selectedIndex = (col.selectedIndex = this.indexForY(-y));
|
|
28919
|
+
const durationStr = duration === 0 ? '' : duration + 'ms';
|
|
28920
|
+
const scaleStr = `scale(${this.scaleFactor})`;
|
|
28921
|
+
const children = this.optsEl.children;
|
|
28922
|
+
for (let i = 0; i < children.length; i++) {
|
|
28923
|
+
const button = children[i];
|
|
28924
|
+
const opt = col.options[i];
|
|
28925
|
+
const optOffset = i * this.optHeight + y;
|
|
28926
|
+
let transform = '';
|
|
28927
|
+
if (rotateFactor !== 0) {
|
|
28928
|
+
const rotateX = optOffset * rotateFactor;
|
|
28929
|
+
if (Math.abs(rotateX) <= 90) {
|
|
28930
|
+
translateY = 0;
|
|
28931
|
+
translateZ = 90;
|
|
28932
|
+
transform = `rotateX(${rotateX}deg) `;
|
|
28933
|
+
}
|
|
28934
|
+
else {
|
|
28935
|
+
translateY = -9999;
|
|
28936
|
+
}
|
|
28937
|
+
}
|
|
28938
|
+
else {
|
|
28939
|
+
translateZ = 0;
|
|
28940
|
+
translateY = optOffset;
|
|
28941
|
+
}
|
|
28942
|
+
const selected = selectedIndex === i;
|
|
28943
|
+
transform += `translate3d(0px,${translateY}px,${translateZ}px) `;
|
|
28944
|
+
if (this.scaleFactor !== 1 && !selected) {
|
|
28945
|
+
transform += scaleStr;
|
|
28946
|
+
}
|
|
28947
|
+
// Update transition duration
|
|
28948
|
+
if (this.noAnimate) {
|
|
28949
|
+
opt.duration = 0;
|
|
28950
|
+
button.style.transitionDuration = '';
|
|
28951
|
+
}
|
|
28952
|
+
else if (duration !== opt.duration) {
|
|
28953
|
+
opt.duration = duration;
|
|
28954
|
+
button.style.transitionDuration = durationStr;
|
|
28955
|
+
}
|
|
28956
|
+
// Update transform
|
|
28957
|
+
if (transform !== opt.transform) {
|
|
28958
|
+
opt.transform = transform;
|
|
28959
|
+
}
|
|
28960
|
+
button.style.transform = transform;
|
|
28961
|
+
/**
|
|
28962
|
+
* Ensure that the select column
|
|
28963
|
+
* item has the selected class
|
|
28964
|
+
*/
|
|
28965
|
+
opt.selected = selected;
|
|
28966
|
+
if (selected) {
|
|
28967
|
+
button.classList.add(PICKER_OPT_SELECTED);
|
|
28968
|
+
}
|
|
28969
|
+
else {
|
|
28970
|
+
button.classList.remove(PICKER_OPT_SELECTED);
|
|
28971
|
+
}
|
|
28972
|
+
}
|
|
28973
|
+
this.col.prevSelected = prevSelected;
|
|
28974
|
+
if (saveY) {
|
|
28975
|
+
this.y = y;
|
|
28976
|
+
}
|
|
28977
|
+
if (this.lastIndex !== selectedIndex) {
|
|
28978
|
+
// have not set a last index yet
|
|
28979
|
+
hapticSelectionChanged();
|
|
28980
|
+
this.lastIndex = selectedIndex;
|
|
28981
|
+
}
|
|
28982
|
+
}
|
|
28983
|
+
decelerate() {
|
|
28984
|
+
if (this.velocity !== 0) {
|
|
28985
|
+
// still decelerating
|
|
28986
|
+
this.velocity *= DECELERATION_FRICTION;
|
|
28987
|
+
// do not let it go slower than a velocity of 1
|
|
28988
|
+
this.velocity = this.velocity > 0 ? Math.max(this.velocity, 1) : Math.min(this.velocity, -1);
|
|
28989
|
+
let y = this.y + this.velocity;
|
|
28990
|
+
if (y > this.minY) {
|
|
28991
|
+
// whoops, it's trying to scroll up farther than the options we have!
|
|
28992
|
+
y = this.minY;
|
|
28993
|
+
this.velocity = 0;
|
|
28994
|
+
}
|
|
28995
|
+
else if (y < this.maxY) {
|
|
28996
|
+
// gahh, it's trying to scroll down farther than we can!
|
|
28997
|
+
y = this.maxY;
|
|
28998
|
+
this.velocity = 0;
|
|
28999
|
+
}
|
|
29000
|
+
this.update(y, 0, true);
|
|
29001
|
+
const notLockedIn = Math.round(y) % this.optHeight !== 0 || Math.abs(this.velocity) > 1;
|
|
29002
|
+
if (notLockedIn) {
|
|
29003
|
+
// isn't locked in yet, keep decelerating until it is
|
|
29004
|
+
this.rafId = requestAnimationFrame(() => this.decelerate());
|
|
29005
|
+
}
|
|
29006
|
+
else {
|
|
29007
|
+
this.velocity = 0;
|
|
29008
|
+
this.emitColChange();
|
|
29009
|
+
hapticSelectionEnd();
|
|
29010
|
+
}
|
|
29011
|
+
}
|
|
29012
|
+
else if (this.y % this.optHeight !== 0) {
|
|
29013
|
+
// needs to still get locked into a position so options line up
|
|
29014
|
+
const currentPos = Math.abs(this.y % this.optHeight);
|
|
29015
|
+
// create a velocity in the direction it needs to scroll
|
|
29016
|
+
this.velocity = currentPos > this.optHeight / 2 ? 1 : -1;
|
|
29017
|
+
this.decelerate();
|
|
29018
|
+
}
|
|
29019
|
+
}
|
|
29020
|
+
indexForY(y) {
|
|
29021
|
+
return Math.min(Math.max(Math.abs(Math.round(y / this.optHeight)), 0), this.col.options.length - 1);
|
|
29022
|
+
}
|
|
29023
|
+
onStart(detail) {
|
|
29024
|
+
// We have to prevent default in order to block scrolling under the picker
|
|
29025
|
+
// but we DO NOT have to stop propagation, since we still want
|
|
29026
|
+
// some "click" events to capture
|
|
29027
|
+
if (detail.event.cancelable) {
|
|
29028
|
+
detail.event.preventDefault();
|
|
29029
|
+
}
|
|
29030
|
+
detail.event.stopPropagation();
|
|
29031
|
+
hapticSelectionStart();
|
|
29032
|
+
// reset everything
|
|
29033
|
+
if (this.rafId !== undefined)
|
|
29034
|
+
cancelAnimationFrame(this.rafId);
|
|
29035
|
+
const options = this.col.options;
|
|
29036
|
+
let minY = options.length - 1;
|
|
29037
|
+
let maxY = 0;
|
|
29038
|
+
for (let i = 0; i < options.length; i++) {
|
|
29039
|
+
if (!options[i].disabled) {
|
|
29040
|
+
minY = Math.min(minY, i);
|
|
29041
|
+
maxY = Math.max(maxY, i);
|
|
29042
|
+
}
|
|
29043
|
+
}
|
|
29044
|
+
this.minY = -(minY * this.optHeight);
|
|
29045
|
+
this.maxY = -(maxY * this.optHeight);
|
|
29046
|
+
}
|
|
29047
|
+
onMove(detail) {
|
|
29048
|
+
if (detail.event.cancelable) {
|
|
29049
|
+
detail.event.preventDefault();
|
|
29050
|
+
}
|
|
29051
|
+
detail.event.stopPropagation();
|
|
29052
|
+
// update the scroll position relative to pointer start position
|
|
29053
|
+
let y = this.y + detail.deltaY;
|
|
29054
|
+
if (y > this.minY) {
|
|
29055
|
+
// scrolling up higher than scroll area
|
|
29056
|
+
y = Math.pow(y, 0.8);
|
|
29057
|
+
this.bounceFrom = y;
|
|
29058
|
+
}
|
|
29059
|
+
else if (y < this.maxY) {
|
|
29060
|
+
// scrolling down below scroll area
|
|
29061
|
+
y += Math.pow(this.maxY - y, 0.9);
|
|
29062
|
+
this.bounceFrom = y;
|
|
29063
|
+
}
|
|
29064
|
+
else {
|
|
29065
|
+
this.bounceFrom = 0;
|
|
29066
|
+
}
|
|
29067
|
+
this.update(y, 0, false);
|
|
29068
|
+
}
|
|
29069
|
+
onEnd(detail) {
|
|
29070
|
+
if (this.bounceFrom > 0) {
|
|
29071
|
+
// bounce back up
|
|
29072
|
+
this.update(this.minY, 100, true);
|
|
29073
|
+
this.emitColChange();
|
|
29074
|
+
return;
|
|
29075
|
+
}
|
|
29076
|
+
else if (this.bounceFrom < 0) {
|
|
29077
|
+
// bounce back down
|
|
29078
|
+
this.update(this.maxY, 100, true);
|
|
29079
|
+
this.emitColChange();
|
|
29080
|
+
return;
|
|
29081
|
+
}
|
|
29082
|
+
this.velocity = clamp(-90, detail.velocityY * 23, MAX_PICKER_SPEED);
|
|
29083
|
+
if (this.velocity === 0 && detail.deltaY === 0) {
|
|
29084
|
+
const opt = detail.event.target.closest('.picker-opt');
|
|
29085
|
+
if (opt === null || opt === void 0 ? void 0 : opt.hasAttribute('opt-index')) {
|
|
29086
|
+
this.setSelected(parseInt(opt.getAttribute('opt-index'), 10), TRANSITION_DURATION);
|
|
29087
|
+
}
|
|
29088
|
+
}
|
|
29089
|
+
else {
|
|
29090
|
+
this.y += detail.deltaY;
|
|
29091
|
+
if (Math.abs(detail.velocityY) < 0.05) {
|
|
29092
|
+
const isScrollingUp = detail.deltaY > 0;
|
|
29093
|
+
const optHeightFraction = (Math.abs(this.y) % this.optHeight) / this.optHeight;
|
|
29094
|
+
if (isScrollingUp && optHeightFraction > 0.5) {
|
|
29095
|
+
this.velocity = Math.abs(this.velocity) * -1;
|
|
29096
|
+
}
|
|
29097
|
+
else if (!isScrollingUp && optHeightFraction <= 0.5) {
|
|
29098
|
+
this.velocity = Math.abs(this.velocity);
|
|
29099
|
+
}
|
|
29100
|
+
}
|
|
29101
|
+
this.decelerate();
|
|
29102
|
+
}
|
|
29103
|
+
}
|
|
29104
|
+
refresh(forceRefresh, animated) {
|
|
29105
|
+
var _a;
|
|
29106
|
+
let min = this.col.options.length - 1;
|
|
29107
|
+
let max = 0;
|
|
29108
|
+
const options = this.col.options;
|
|
29109
|
+
for (let i = 0; i < options.length; i++) {
|
|
29110
|
+
if (!options[i].disabled) {
|
|
29111
|
+
min = Math.min(min, i);
|
|
29112
|
+
max = Math.max(max, i);
|
|
29113
|
+
}
|
|
29114
|
+
}
|
|
29115
|
+
/**
|
|
29116
|
+
* Only update selected value if column has a
|
|
29117
|
+
* velocity of 0. If it does not, then the
|
|
29118
|
+
* column is animating might land on
|
|
29119
|
+
* a value different than the value at
|
|
29120
|
+
* selectedIndex
|
|
29121
|
+
*/
|
|
29122
|
+
if (this.velocity !== 0) {
|
|
29123
|
+
return;
|
|
29124
|
+
}
|
|
29125
|
+
const selectedIndex = clamp(min, (_a = this.col.selectedIndex) !== null && _a !== void 0 ? _a : 0, max);
|
|
29126
|
+
if (this.col.prevSelected !== selectedIndex || forceRefresh) {
|
|
29127
|
+
const y = selectedIndex * this.optHeight * -1;
|
|
29128
|
+
const duration = animated ? TRANSITION_DURATION : 0;
|
|
29129
|
+
this.velocity = 0;
|
|
29130
|
+
this.update(y, duration, true);
|
|
29131
|
+
}
|
|
29132
|
+
}
|
|
29133
|
+
onDomChange(forceRefresh, animated) {
|
|
29134
|
+
const colEl = this.optsEl;
|
|
29135
|
+
if (colEl) {
|
|
29136
|
+
// DOM READ
|
|
29137
|
+
// We perfom a DOM read over a rendered item, this needs to happen after the first render or after the column has changed
|
|
29138
|
+
this.optHeight = colEl.firstElementChild ? colEl.firstElementChild.clientHeight : 0;
|
|
29139
|
+
}
|
|
29140
|
+
this.refresh(forceRefresh, animated);
|
|
29141
|
+
}
|
|
29142
|
+
render() {
|
|
29143
|
+
const col = this.col;
|
|
29144
|
+
const mode = getIonMode$1(this);
|
|
29145
|
+
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: {
|
|
29146
|
+
'max-width': this.col.columnWidth,
|
|
29147
|
+
} }, 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))));
|
|
29148
|
+
}
|
|
29149
|
+
get el() { return getElement(this); }
|
|
29150
|
+
static get watchers() { return {
|
|
29151
|
+
"col": [{
|
|
29152
|
+
"colChanged": 0
|
|
29153
|
+
}]
|
|
29154
|
+
}; }
|
|
29155
|
+
static get style() { return {
|
|
29156
|
+
ios: pickerColumnIosCss(),
|
|
29157
|
+
md: pickerColumnMdCss()
|
|
29158
|
+
}; }
|
|
29159
|
+
static get cmpMeta() { return {
|
|
29160
|
+
"$flags$": 32,
|
|
29161
|
+
"$tagName$": "ion-picker-legacy-column",
|
|
29162
|
+
"$members$": {
|
|
29163
|
+
"col": [16]
|
|
29164
|
+
},
|
|
29165
|
+
"$listeners$": undefined,
|
|
29166
|
+
"$lazyBundleId$": "-",
|
|
29167
|
+
"$attrsToReflect$": []
|
|
29168
|
+
}; }
|
|
29169
|
+
}
|
|
29170
|
+
const PICKER_OPT_SELECTED = 'picker-opt-selected';
|
|
29171
|
+
const DECELERATION_FRICTION = 0.97;
|
|
29172
|
+
const MAX_PICKER_SPEED = 90;
|
|
29173
|
+
const TRANSITION_DURATION = 150;
|
|
29174
|
+
|
|
28534
29175
|
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}`;
|
|
28535
29176
|
|
|
28536
29177
|
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)}`;
|
|
@@ -29952,10 +30593,6 @@ class Popover {
|
|
|
29952
30593
|
this.headerResizeObserver.disconnect();
|
|
29953
30594
|
this.headerResizeObserver = undefined;
|
|
29954
30595
|
}
|
|
29955
|
-
// Clean up aria-hidden if removed without dismiss() being called
|
|
29956
|
-
if (this.presented) {
|
|
29957
|
-
cleanupRootFocusTrapAccessibility();
|
|
29958
|
-
}
|
|
29959
30596
|
}
|
|
29960
30597
|
componentWillLoad() {
|
|
29961
30598
|
var _a, _b;
|
|
@@ -30194,9 +30831,9 @@ class Popover {
|
|
|
30194
30831
|
const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
|
|
30195
30832
|
const desktop = isPlatform('desktop');
|
|
30196
30833
|
const enableArrow = arrow && !parentPopover;
|
|
30197
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
30834
|
+
return (hAsync(Host, Object.assign({ key: '2edd8333c630efbce59071f8a383e4326e928dbc', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
|
|
30198
30835
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
30199
|
-
}, 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: '
|
|
30836
|
+
}, 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' })))));
|
|
30200
30837
|
}
|
|
30201
30838
|
get el() { return getElement(this); }
|
|
30202
30839
|
static get watchers() { return {
|
|
@@ -30307,7 +30944,7 @@ class ProgressBar {
|
|
|
30307
30944
|
const mode = getIonMode$1(this);
|
|
30308
30945
|
// If the progress is displayed as a solid bar.
|
|
30309
30946
|
const progressSolid = buffer === 1;
|
|
30310
|
-
return (hAsync(Host, { key: '
|
|
30947
|
+
return (hAsync(Host, { key: 'c859e48f3d24a458239e36d925e5dc003ed07c6b', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: createColorClasses$1(color, {
|
|
30311
30948
|
[mode]: true,
|
|
30312
30949
|
[`progress-bar-${type}`]: true,
|
|
30313
30950
|
'progress-paused': paused,
|
|
@@ -30492,7 +31129,7 @@ class Radio {
|
|
|
30492
31129
|
const { checked, disabled, color, el, justify, labelPlacement, hasLabel, buttonTabindex, alignment } = this;
|
|
30493
31130
|
const mode = getIonMode$1(this);
|
|
30494
31131
|
const inItem = hostContext('ion-item', el);
|
|
30495
|
-
return (hAsync(Host, { key: '
|
|
31132
|
+
return (hAsync(Host, { key: 'af5dc59ed528150872e907ed1036e3e2decba939', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses$1(color, {
|
|
30496
31133
|
[mode]: true,
|
|
30497
31134
|
'in-item': inItem,
|
|
30498
31135
|
'radio-checked': checked,
|
|
@@ -30503,10 +31140,10 @@ class Radio {
|
|
|
30503
31140
|
// Focus and active styling should not apply when the radio is in an item
|
|
30504
31141
|
'ion-activatable': !inItem,
|
|
30505
31142
|
'ion-focusable': !inItem,
|
|
30506
|
-
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, hAsync("label", { key: '
|
|
31143
|
+
}), 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: {
|
|
30507
31144
|
'label-text-wrapper': true,
|
|
30508
31145
|
'label-text-wrapper-hidden': !hasLabel,
|
|
30509
|
-
}, part: "label" }, hAsync("slot", { key: '
|
|
31146
|
+
}, part: "label" }, hAsync("slot", { key: '0a4613d29aa783d1882cf889377f7e4fd4fea51d' })), hAsync("div", { key: '191faea79dc4cd8befc4b873f5bd9f5af8ca2acc', class: "native-wrapper" }, this.renderRadioControl()))));
|
|
30510
31147
|
}
|
|
30511
31148
|
get el() { return getElement(this); }
|
|
30512
31149
|
static get watchers() { return {
|
|
@@ -30525,7 +31162,7 @@ class Radio {
|
|
|
30525
31162
|
"color": [513],
|
|
30526
31163
|
"name": [1],
|
|
30527
31164
|
"disabled": [4],
|
|
30528
|
-
"value": [
|
|
31165
|
+
"value": [8],
|
|
30529
31166
|
"labelPlacement": [1, "label-placement"],
|
|
30530
31167
|
"justify": [1],
|
|
30531
31168
|
"alignment": [1],
|
|
@@ -30536,7 +31173,7 @@ class Radio {
|
|
|
30536
31173
|
},
|
|
30537
31174
|
"$listeners$": undefined,
|
|
30538
31175
|
"$lazyBundleId$": "-",
|
|
30539
|
-
"$attrsToReflect$": [["color", "color"]
|
|
31176
|
+
"$attrsToReflect$": [["color", "color"]]
|
|
30540
31177
|
}; }
|
|
30541
31178
|
}
|
|
30542
31179
|
let radioButtonIds = 0;
|
|
@@ -31601,7 +32238,7 @@ class Range {
|
|
|
31601
32238
|
const valueAtMin = dualKnobs ? this.valA === min || this.valB === min : this.valA === min;
|
|
31602
32239
|
const valueAtMax = dualKnobs ? this.valA === max || this.valB === max : this.valA === max;
|
|
31603
32240
|
renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
|
|
31604
|
-
return (hAsync(Host, { key: '
|
|
32241
|
+
return (hAsync(Host, { key: 'f8063d1234fb113fe55a7902845dd4b4da8b1edb', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses$1(this.color, {
|
|
31605
32242
|
[mode]: true,
|
|
31606
32243
|
'in-item': inItem,
|
|
31607
32244
|
'range-disabled': disabled,
|
|
@@ -31615,10 +32252,10 @@ class Range {
|
|
|
31615
32252
|
'range-item-end-adjustment': needsEndAdjustment,
|
|
31616
32253
|
'range-value-min': valueAtMin,
|
|
31617
32254
|
'range-value-max': valueAtMax,
|
|
31618
|
-
}) }, hAsync("label", { key: '
|
|
32255
|
+
}) }, hAsync("label", { key: 'beead65ab01e3b18e4be59c0ee8ac6ebf32aad7c', class: "range-wrapper", id: "range-label" }, hAsync("div", { key: '03633c689d9d2e4c50a2131bcd560329df49e314', class: {
|
|
31619
32256
|
'label-text-wrapper': true,
|
|
31620
32257
|
'label-text-wrapper-hidden': !hasLabel,
|
|
31621
|
-
}, part: "label" }, label !== undefined ? hAsync("div", { class: "label-text" }, label) : hAsync("slot", { name: "label" })), hAsync("div", { key: '
|
|
32258
|
+
}, 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" })))));
|
|
31622
32259
|
}
|
|
31623
32260
|
get el() { return getElement(this); }
|
|
31624
32261
|
static get watchers() { return {
|
|
@@ -32689,7 +33326,7 @@ class Refresher {
|
|
|
32689
33326
|
}
|
|
32690
33327
|
render() {
|
|
32691
33328
|
const mode = getIonMode$1(this);
|
|
32692
|
-
return (hAsync(Host, { key: '
|
|
33329
|
+
return (hAsync(Host, { key: '80fa313b0d77161680836bdd6aa334d02c549b41', slot: "fixed", class: {
|
|
32693
33330
|
[mode]: true,
|
|
32694
33331
|
// Used internally for styling
|
|
32695
33332
|
[`refresher-${mode}`]: true,
|
|
@@ -32915,7 +33552,7 @@ class RefresherContent {
|
|
|
32915
33552
|
const pullingIcon = this.pullingIcon;
|
|
32916
33553
|
const hasSpinner = pullingIcon != null && SPINNERS[pullingIcon] !== undefined;
|
|
32917
33554
|
const mode = getIonMode$1(this);
|
|
32918
|
-
return (hAsync(Host, { key: '
|
|
33555
|
+
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())));
|
|
32919
33556
|
}
|
|
32920
33557
|
get el() { return getElement(this); }
|
|
32921
33558
|
static get cmpMeta() { return {
|
|
@@ -32956,7 +33593,7 @@ class Reorder {
|
|
|
32956
33593
|
render() {
|
|
32957
33594
|
const mode = getIonMode$1(this);
|
|
32958
33595
|
const reorderIcon = mode === 'ios' ? reorderThreeOutline : reorderTwoSharp;
|
|
32959
|
-
return (hAsync(Host, { key: '
|
|
33596
|
+
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" }))));
|
|
32960
33597
|
}
|
|
32961
33598
|
get el() { return getElement(this); }
|
|
32962
33599
|
static get style() { return {
|
|
@@ -33227,7 +33864,7 @@ class ReorderGroup {
|
|
|
33227
33864
|
}
|
|
33228
33865
|
render() {
|
|
33229
33866
|
const mode = getIonMode$1(this);
|
|
33230
|
-
return (hAsync(Host, { key: '
|
|
33867
|
+
return (hAsync(Host, { key: '9527bbdedaab63d31f562c874a7332ea60c4b47b', class: {
|
|
33231
33868
|
[mode]: true,
|
|
33232
33869
|
'reorder-enabled': !this.disabled,
|
|
33233
33870
|
'reorder-list-active': this.state !== 0 /* ReorderGroupState.Idle */,
|
|
@@ -33345,7 +33982,7 @@ class RippleEffect {
|
|
|
33345
33982
|
}
|
|
33346
33983
|
render() {
|
|
33347
33984
|
const mode = getIonMode$1(this);
|
|
33348
|
-
return (hAsync(Host, { key: '
|
|
33985
|
+
return (hAsync(Host, { key: '3b59cbb44741569a7350f9638b4392add673b6f1', role: "presentation", class: {
|
|
33349
33986
|
[mode]: true,
|
|
33350
33987
|
unbounded: this.unbounded,
|
|
33351
33988
|
} }));
|
|
@@ -34314,10 +34951,10 @@ class RouterLink {
|
|
|
34314
34951
|
rel: this.rel,
|
|
34315
34952
|
target: this.target,
|
|
34316
34953
|
};
|
|
34317
|
-
return (hAsync(Host, { key: '
|
|
34954
|
+
return (hAsync(Host, { key: '8372835161d507c7b821b7536c55f912eb6ce704', onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
34318
34955
|
[mode]: true,
|
|
34319
34956
|
'ion-activatable': true,
|
|
34320
|
-
}) }, hAsync("a", Object.assign({ key: '
|
|
34957
|
+
}) }, hAsync("a", Object.assign({ key: '315966e14a17760f3f64197e8315200039787897' }, attrs), hAsync("slot", { key: '95fc1697b884225e85e647dddcaa8f4af8b9a979' }))));
|
|
34321
34958
|
}
|
|
34322
34959
|
static get style() { return routerLinkCss(); }
|
|
34323
34960
|
static get cmpMeta() { return {
|
|
@@ -34356,11 +34993,10 @@ class RouterOutlet {
|
|
|
34356
34993
|
*/
|
|
34357
34994
|
this.animated = true;
|
|
34358
34995
|
}
|
|
34359
|
-
swipeGestureChanged() {
|
|
34360
|
-
this.updateGestureEnabled();
|
|
34361
|
-
}
|
|
34362
34996
|
swipeHandlerChanged() {
|
|
34363
|
-
this.
|
|
34997
|
+
if (this.gesture) {
|
|
34998
|
+
this.gesture.enable(this.swipeHandler !== undefined);
|
|
34999
|
+
}
|
|
34364
35000
|
}
|
|
34365
35001
|
async connectedCallback() {
|
|
34366
35002
|
const onStart = () => {
|
|
@@ -34400,21 +35036,11 @@ class RouterOutlet {
|
|
|
34400
35036
|
this.gestureOrAnimationInProgress = false;
|
|
34401
35037
|
}
|
|
34402
35038
|
});
|
|
34403
|
-
|
|
34404
|
-
this.swipeGesture = config.getBoolean('swipeBackEnabled', this.mode === 'ios');
|
|
34405
|
-
}
|
|
34406
|
-
else {
|
|
34407
|
-
this.updateGestureEnabled();
|
|
34408
|
-
}
|
|
35039
|
+
this.swipeHandlerChanged();
|
|
34409
35040
|
}
|
|
34410
35041
|
componentWillLoad() {
|
|
34411
35042
|
this.ionNavWillLoad.emit();
|
|
34412
35043
|
}
|
|
34413
|
-
updateGestureEnabled() {
|
|
34414
|
-
if (this.gesture) {
|
|
34415
|
-
this.gesture.enable(this.swipeHandler !== undefined && this.swipeGesture === true);
|
|
34416
|
-
}
|
|
34417
|
-
}
|
|
34418
35044
|
disconnectedCallback() {
|
|
34419
35045
|
if (this.gesture) {
|
|
34420
35046
|
this.gesture.destroy();
|
|
@@ -34525,13 +35151,10 @@ class RouterOutlet {
|
|
|
34525
35151
|
return true;
|
|
34526
35152
|
}
|
|
34527
35153
|
render() {
|
|
34528
|
-
return hAsync("slot", { key: '
|
|
35154
|
+
return hAsync("slot", { key: '386c41745b61daba161cf75063da97fe29ba36cb' });
|
|
34529
35155
|
}
|
|
34530
35156
|
get el() { return getElement(this); }
|
|
34531
35157
|
static get watchers() { return {
|
|
34532
|
-
"swipeGesture": [{
|
|
34533
|
-
"swipeGestureChanged": 0
|
|
34534
|
-
}],
|
|
34535
35158
|
"swipeHandler": [{
|
|
34536
35159
|
"swipeHandlerChanged": 0
|
|
34537
35160
|
}]
|
|
@@ -34545,7 +35168,6 @@ class RouterOutlet {
|
|
|
34545
35168
|
"delegate": [16],
|
|
34546
35169
|
"animated": [4],
|
|
34547
35170
|
"animation": [16],
|
|
34548
|
-
"swipeGesture": [1028, "swipe-gesture"],
|
|
34549
35171
|
"swipeHandler": [16],
|
|
34550
35172
|
"commit": [64],
|
|
34551
35173
|
"setRouteId": [64],
|
|
@@ -34564,7 +35186,7 @@ class Row {
|
|
|
34564
35186
|
registerInstance(this, hostRef);
|
|
34565
35187
|
}
|
|
34566
35188
|
render() {
|
|
34567
|
-
return (hAsync(Host, { key: '
|
|
35189
|
+
return (hAsync(Host, { key: '8ba906a8cbea060a79ed658c9bf34906f0c11d38', class: getIonMode$1(this) }, hAsync("slot", { key: 'd1009176f45b588fa52c7d9eb336f3c6d3214bb8' })));
|
|
34568
35190
|
}
|
|
34569
35191
|
static get style() { return rowCss(); }
|
|
34570
35192
|
static get cmpMeta() { return {
|
|
@@ -35016,8 +35638,8 @@ class Searchbar {
|
|
|
35016
35638
|
const clearIcon = this.clearIcon || (mode === 'ios' ? closeCircle : closeSharp);
|
|
35017
35639
|
const searchIcon = this.searchIcon || (mode === 'ios' ? searchOutline : searchSharp);
|
|
35018
35640
|
const shouldShowCancelButton = this.shouldShowCancelButton();
|
|
35019
|
-
const cancelButton = this.showCancelButton !== 'never' && (hAsync("button", { key: '
|
|
35020
|
-
return (hAsync(Host, { key: '
|
|
35641
|
+
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))));
|
|
35642
|
+
return (hAsync(Host, { key: '219c263c1f3cc63e18bc2d2ba5d672b7806eddd0', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses$1(this.color, {
|
|
35021
35643
|
[mode]: true,
|
|
35022
35644
|
'searchbar-animated': animated,
|
|
35023
35645
|
'searchbar-disabled': this.disabled,
|
|
@@ -35027,14 +35649,14 @@ class Searchbar {
|
|
|
35027
35649
|
'searchbar-has-focus': this.focused,
|
|
35028
35650
|
'searchbar-should-show-clear': this.shouldShowClearButton(),
|
|
35029
35651
|
'searchbar-should-show-cancel': this.shouldShowCancelButton(),
|
|
35030
|
-
}) }, hAsync("div", { key: '
|
|
35652
|
+
}) }, 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) => {
|
|
35031
35653
|
/**
|
|
35032
35654
|
* This prevents mobile browsers from
|
|
35033
35655
|
* blurring the input when the clear
|
|
35034
35656
|
* button is activated.
|
|
35035
35657
|
*/
|
|
35036
35658
|
ev.preventDefault();
|
|
35037
|
-
}, onClick: () => this.onClearInput(true) }, hAsync("ion-icon", { key: '
|
|
35659
|
+
}, 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));
|
|
35038
35660
|
}
|
|
35039
35661
|
get el() { return getElement(this); }
|
|
35040
35662
|
static get watchers() { return {
|
|
@@ -35639,14 +36261,14 @@ class Segment {
|
|
|
35639
36261
|
}
|
|
35640
36262
|
render() {
|
|
35641
36263
|
const mode = getIonMode$1(this);
|
|
35642
|
-
return (hAsync(Host, { key: '
|
|
36264
|
+
return (hAsync(Host, { key: '725cc37b25c539fa5e3ae8d90530ae33ededc3de', role: "tablist", onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
35643
36265
|
[mode]: true,
|
|
35644
36266
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
35645
36267
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
35646
36268
|
'segment-activated': this.activated,
|
|
35647
36269
|
'segment-disabled': this.disabled,
|
|
35648
36270
|
'segment-scrollable': this.scrollable,
|
|
35649
|
-
}) }, hAsync("slot", { key: '
|
|
36271
|
+
}) }, hAsync("slot", { key: 'c51cf7ea50325866a9367d214e12bc3754870335', onSlotchange: this.onSlottedItemsChange })));
|
|
35650
36272
|
}
|
|
35651
36273
|
get el() { return getElement(this); }
|
|
35652
36274
|
static get watchers() { return {
|
|
@@ -35794,7 +36416,7 @@ class SegmentButton {
|
|
|
35794
36416
|
const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
|
|
35795
36417
|
const mode = getIonMode$1(this);
|
|
35796
36418
|
const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
|
|
35797
|
-
return (hAsync(Host, { key: '
|
|
36419
|
+
return (hAsync(Host, { key: 'f69e2a24198a7c57543dbe66902da039a6569c64', class: {
|
|
35798
36420
|
[mode]: true,
|
|
35799
36421
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
35800
36422
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
@@ -35810,7 +36432,7 @@ class SegmentButton {
|
|
|
35810
36432
|
'ion-activatable': true,
|
|
35811
36433
|
'ion-activatable-instant': true,
|
|
35812
36434
|
'ion-focusable': true,
|
|
35813
|
-
} }, hAsync("button", Object.assign({ key: '
|
|
36435
|
+
} }, 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" }))));
|
|
35814
36436
|
}
|
|
35815
36437
|
get el() { return getElement(this); }
|
|
35816
36438
|
static get watchers() { return {
|
|
@@ -35847,7 +36469,7 @@ class SegmentContent {
|
|
|
35847
36469
|
registerInstance(this, hostRef);
|
|
35848
36470
|
}
|
|
35849
36471
|
render() {
|
|
35850
|
-
return (hAsync(Host, { key: '
|
|
36472
|
+
return (hAsync(Host, { key: '665f41a854621f898eaf7ba9a49e77cc9326501e' }, hAsync("slot", { key: '635aa57fbf6167dcd36fe8dc5dfc1c313637ac04' })));
|
|
35851
36473
|
}
|
|
35852
36474
|
static get style() { return segmentContentCss(); }
|
|
35853
36475
|
static get cmpMeta() { return {
|
|
@@ -35966,11 +36588,11 @@ class SegmentView {
|
|
|
35966
36588
|
}
|
|
35967
36589
|
render() {
|
|
35968
36590
|
const { disabled, isManualScroll, swipeGesture } = this;
|
|
35969
|
-
return (hAsync(Host, { key: '
|
|
36591
|
+
return (hAsync(Host, { key: '2a6e0a1046af75b1fa0eed20a5fbbb4634480297', class: {
|
|
35970
36592
|
'segment-view-disabled': disabled,
|
|
35971
36593
|
'segment-view-scroll-disabled': isManualScroll === false,
|
|
35972
36594
|
'segment-view-swipe-disabled': swipeGesture === false,
|
|
35973
|
-
} }, hAsync("slot", { key: '
|
|
36595
|
+
} }, hAsync("slot", { key: '644b60d179d0de3fa204e3bef26a3503ceeaf1d6' })));
|
|
35974
36596
|
}
|
|
35975
36597
|
get el() { return getElement(this); }
|
|
35976
36598
|
static get style() { return {
|
|
@@ -36742,7 +37364,7 @@ class Select {
|
|
|
36742
37364
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
36743
37365
|
*/
|
|
36744
37366
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
|
|
36745
|
-
return (hAsync(Host, { key: '
|
|
37367
|
+
return (hAsync(Host, { key: '5f4ee901b65554eacc9fa52230d06b1a5ff1247c', onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
36746
37368
|
[mode]: true,
|
|
36747
37369
|
'in-item': inItem,
|
|
36748
37370
|
'in-item-color': hostContext('ion-item.ion-color', el),
|
|
@@ -36760,7 +37382,7 @@ class Select {
|
|
|
36760
37382
|
[`select-justify-${justify}`]: justifyEnabled,
|
|
36761
37383
|
[`select-shape-${shape}`]: shape !== undefined,
|
|
36762
37384
|
[`select-label-placement-${labelPlacement}`]: true,
|
|
36763
|
-
}) }, hAsync("label", { key: '
|
|
37385
|
+
}) }, 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()));
|
|
36764
37386
|
}
|
|
36765
37387
|
get el() { return getElement(this); }
|
|
36766
37388
|
static get watchers() { return {
|
|
@@ -36944,7 +37566,7 @@ class SelectModal {
|
|
|
36944
37566
|
} }, option.text))));
|
|
36945
37567
|
}
|
|
36946
37568
|
render() {
|
|
36947
|
-
return (hAsync(Host, { key: '
|
|
37569
|
+
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()))));
|
|
36948
37570
|
}
|
|
36949
37571
|
get el() { return getElement(this); }
|
|
36950
37572
|
static get style() { return {
|
|
@@ -36979,7 +37601,7 @@ class SelectOption {
|
|
|
36979
37601
|
this.disabled = false;
|
|
36980
37602
|
}
|
|
36981
37603
|
render() {
|
|
36982
|
-
return hAsync(Host, { key: '
|
|
37604
|
+
return hAsync(Host, { key: '824730b6c1e4f15b716e91b05840e890af5f1577', role: "option", id: this.inputId, class: getIonMode$1(this) });
|
|
36983
37605
|
}
|
|
36984
37606
|
get el() { return getElement(this); }
|
|
36985
37607
|
static get style() { return selectOptionCss(); }
|
|
@@ -37107,7 +37729,7 @@ class SelectPopover {
|
|
|
37107
37729
|
render() {
|
|
37108
37730
|
const { header, message, options, subHeader } = this;
|
|
37109
37731
|
const hasSubHeaderOrMessage = subHeader !== undefined || message !== undefined;
|
|
37110
|
-
return (hAsync(Host, { key: '
|
|
37732
|
+
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))));
|
|
37111
37733
|
}
|
|
37112
37734
|
get el() { return getElement(this); }
|
|
37113
37735
|
static get style() { return {
|
|
@@ -37157,11 +37779,11 @@ class SkeletonText {
|
|
|
37157
37779
|
const animated = this.animated && config.getBoolean('animated', true);
|
|
37158
37780
|
const inMedia = hostContext('ion-avatar', this.el) || hostContext('ion-thumbnail', this.el);
|
|
37159
37781
|
const mode = getIonMode$1(this);
|
|
37160
|
-
return (hAsync(Host, { key: '
|
|
37782
|
+
return (hAsync(Host, { key: 'cb8da9aba121811b9a4ffdae60ed88105897cb3c', class: {
|
|
37161
37783
|
[mode]: true,
|
|
37162
37784
|
'skeleton-text-animated': animated,
|
|
37163
37785
|
'in-media': inMedia,
|
|
37164
|
-
} }, hAsync("span", { key: '
|
|
37786
|
+
} }, hAsync("span", { key: '5379deee3c76d46d615be0cba14b4f60129ffa25' }, "\u00A0")));
|
|
37165
37787
|
}
|
|
37166
37788
|
get el() { return getElement(this); }
|
|
37167
37789
|
static get style() { return skeletonTextCss(); }
|
|
@@ -37213,7 +37835,7 @@ class Spinner {
|
|
|
37213
37835
|
svgs.push(buildLine(spinner, duration, i, spinner.lines));
|
|
37214
37836
|
}
|
|
37215
37837
|
}
|
|
37216
|
-
return (hAsync(Host, { key: '
|
|
37838
|
+
return (hAsync(Host, { key: 'dd1954e557fa14b943e761474e29e4316ba53938', class: createColorClasses$1(self.color, {
|
|
37217
37839
|
[mode]: true,
|
|
37218
37840
|
[`spinner-${spinnerName}`]: true,
|
|
37219
37841
|
'spinner-paused': self.paused || config.getBoolean('_testing'),
|
|
@@ -37312,12 +37934,12 @@ class SplitPane {
|
|
|
37312
37934
|
}
|
|
37313
37935
|
render() {
|
|
37314
37936
|
const mode = getIonMode$1(this);
|
|
37315
|
-
return (hAsync(Host, { key: '
|
|
37937
|
+
return (hAsync(Host, { key: '05c88c009fbe2e223fd261760a2b49da1653ff62', class: {
|
|
37316
37938
|
[mode]: true,
|
|
37317
37939
|
// Used internally for styling
|
|
37318
37940
|
[`split-pane-${mode}`]: true,
|
|
37319
37941
|
'split-pane-visible': this.visible,
|
|
37320
|
-
} }, hAsync("slot", { key: '
|
|
37942
|
+
} }, hAsync("slot", { key: 'b35865082661253c4468520d79234fa5dab5bd35' })));
|
|
37321
37943
|
}
|
|
37322
37944
|
get el() { return getElement(this); }
|
|
37323
37945
|
static get watchers() { return {
|
|
@@ -37389,10 +38011,10 @@ class Tab {
|
|
|
37389
38011
|
}
|
|
37390
38012
|
render() {
|
|
37391
38013
|
const { tab, active, component } = this;
|
|
37392
|
-
return (hAsync(Host, { key: '
|
|
38014
|
+
return (hAsync(Host, { key: 'fbd837bad7a0632336d46a597ace23673b153e48', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
|
|
37393
38015
|
'ion-page': component === undefined,
|
|
37394
38016
|
'tab-hidden': !active,
|
|
37395
|
-
} }, hAsync("slot", { key: '
|
|
38017
|
+
} }, hAsync("slot", { key: '35c218169fda826c9c1337558e0278d0c7f5f26a' })));
|
|
37396
38018
|
}
|
|
37397
38019
|
get el() { return getElement(this); }
|
|
37398
38020
|
static get watchers() { return {
|
|
@@ -37506,11 +38128,11 @@ class TabBar {
|
|
|
37506
38128
|
const { color, translucent, keyboardVisible } = this;
|
|
37507
38129
|
const mode = getIonMode$1(this);
|
|
37508
38130
|
const shouldHide = keyboardVisible && this.el.getAttribute('slot') !== 'top';
|
|
37509
|
-
return (hAsync(Host, { key: '
|
|
38131
|
+
return (hAsync(Host, { key: '24e164eaf81a0bec9237b561465618f10990806c', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses$1(color, {
|
|
37510
38132
|
[mode]: true,
|
|
37511
38133
|
'tab-bar-translucent': translucent,
|
|
37512
38134
|
'tab-bar-hidden': shouldHide,
|
|
37513
|
-
}) }, hAsync("slot", { key: '
|
|
38135
|
+
}) }, hAsync("slot", { key: '0ca29a2d97a7c38bbf43f8d79e271b874b4d9be8' })));
|
|
37514
38136
|
}
|
|
37515
38137
|
get el() { return getElement(this); }
|
|
37516
38138
|
static get watchers() { return {
|
|
@@ -37608,7 +38230,7 @@ class TabButton {
|
|
|
37608
38230
|
rel,
|
|
37609
38231
|
target,
|
|
37610
38232
|
};
|
|
37611
|
-
return (hAsync(Host, { key: '
|
|
38233
|
+
return (hAsync(Host, { key: '638b93ef40701ec3aefb89b1579eb91aaf6d4f8a', onClick: this.onClick, onKeyup: this.onKeyUp, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
|
|
37612
38234
|
[mode]: true,
|
|
37613
38235
|
'tab-selected': selected,
|
|
37614
38236
|
'tab-disabled': disabled,
|
|
@@ -37620,7 +38242,7 @@ class TabButton {
|
|
|
37620
38242
|
'ion-activatable': true,
|
|
37621
38243
|
'ion-selectable': true,
|
|
37622
38244
|
'ion-focusable': true,
|
|
37623
|
-
} }, hAsync("a", Object.assign({ key: '
|
|
38245
|
+
} }, 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" }))));
|
|
37624
38246
|
}
|
|
37625
38247
|
get el() { return getElement(this); }
|
|
37626
38248
|
static get style() { return {
|
|
@@ -37811,7 +38433,7 @@ class Tabs {
|
|
|
37811
38433
|
return Array.from(this.el.querySelectorAll('ion-tab'));
|
|
37812
38434
|
}
|
|
37813
38435
|
render() {
|
|
37814
|
-
return (hAsync(Host, { key: '
|
|
38436
|
+
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" })));
|
|
37815
38437
|
}
|
|
37816
38438
|
get el() { return getElement(this); }
|
|
37817
38439
|
static get style() { return tabsCss(); }
|
|
@@ -37851,9 +38473,9 @@ class Text {
|
|
|
37851
38473
|
}
|
|
37852
38474
|
render() {
|
|
37853
38475
|
const mode = getIonMode$1(this);
|
|
37854
|
-
return (hAsync(Host, { key: '
|
|
38476
|
+
return (hAsync(Host, { key: 'bfaa49d35f43b8036725ae8a322c716fc6e43bdf', class: createColorClasses$1(this.color, {
|
|
37855
38477
|
[mode]: true,
|
|
37856
|
-
}) }, hAsync("slot", { key: '
|
|
38478
|
+
}) }, hAsync("slot", { key: 'c04880cd1935b42cbe60f58fd523b4d8a96072dc' })));
|
|
37857
38479
|
}
|
|
37858
38480
|
static get style() { return textCss(); }
|
|
37859
38481
|
static get cmpMeta() { return {
|
|
@@ -38314,7 +38936,7 @@ class Textarea {
|
|
|
38314
38936
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
38315
38937
|
*/
|
|
38316
38938
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
|
|
38317
|
-
return (hAsync(Host, { key: '
|
|
38939
|
+
return (hAsync(Host, { key: '4257e84acd46f43390fa2413d0b8f40e16a37499', class: createColorClasses$1(this.color, {
|
|
38318
38940
|
[mode]: true,
|
|
38319
38941
|
'has-value': hasValue,
|
|
38320
38942
|
'has-focus': hasFocus,
|
|
@@ -38323,7 +38945,7 @@ class Textarea {
|
|
|
38323
38945
|
[`textarea-shape-${shape}`]: shape !== undefined,
|
|
38324
38946
|
[`textarea-label-placement-${labelPlacement}`]: true,
|
|
38325
38947
|
'textarea-disabled': disabled,
|
|
38326
|
-
}) }, hAsync("label", { key: '
|
|
38948
|
+
}) }, 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()));
|
|
38327
38949
|
}
|
|
38328
38950
|
get el() { return getElement(this); }
|
|
38329
38951
|
static get watchers() { return {
|
|
@@ -38392,7 +39014,7 @@ class Thumbnail {
|
|
|
38392
39014
|
registerInstance(this, hostRef);
|
|
38393
39015
|
}
|
|
38394
39016
|
render() {
|
|
38395
|
-
return (hAsync(Host, { key: '
|
|
39017
|
+
return (hAsync(Host, { key: 'b250e01664238f1dca8f9757b15bc3d5d9387ffa', class: getIonMode$1(this) }, hAsync("slot", { key: '72cb568bccabc983c5186a7596ef6c6d4ebf5ad9' })));
|
|
38396
39018
|
}
|
|
38397
39019
|
static get style() { return thumbnailCss(); }
|
|
38398
39020
|
static get cmpMeta() { return {
|
|
@@ -39252,9 +39874,9 @@ class Toast {
|
|
|
39252
39874
|
if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
|
|
39253
39875
|
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);
|
|
39254
39876
|
}
|
|
39255
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
39877
|
+
return (hAsync(Host, Object.assign({ key: 'b5256edcf33d0ef51e6c5080c84e1ca58abe2ae0', tabindex: "-1" }, this.htmlAttributes, { style: {
|
|
39256
39878
|
zIndex: `${60000 + this.overlayIndex}`,
|
|
39257
|
-
}, 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: '
|
|
39879
|
+
}, 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')))));
|
|
39258
39880
|
}
|
|
39259
39881
|
get el() { return getElement(this); }
|
|
39260
39882
|
static get watchers() { return {
|
|
@@ -39572,7 +40194,7 @@ class Toggle {
|
|
|
39572
40194
|
const value = this.getValue();
|
|
39573
40195
|
const rtl = isRTL$1(el) ? 'rtl' : 'ltr';
|
|
39574
40196
|
renderHiddenInput(true, el, name, checked ? value : '', disabled);
|
|
39575
|
-
return (hAsync(Host, { key: '
|
|
40197
|
+
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, {
|
|
39576
40198
|
[mode]: true,
|
|
39577
40199
|
'in-item': hostContext('ion-item', el),
|
|
39578
40200
|
'toggle-activated': activated,
|
|
@@ -39582,10 +40204,10 @@ class Toggle {
|
|
|
39582
40204
|
[`toggle-alignment-${alignment}`]: alignment !== undefined,
|
|
39583
40205
|
[`toggle-label-placement-${labelPlacement}`]: true,
|
|
39584
40206
|
[`toggle-${rtl}`]: true,
|
|
39585
|
-
}) }, hAsync("label", { key: '
|
|
40207
|
+
}) }, 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: {
|
|
39586
40208
|
'label-text-wrapper': true,
|
|
39587
40209
|
'label-text-wrapper-hidden': !hasLabel,
|
|
39588
|
-
}, part: "label", id: inputLabelId, onClick: this.onDivLabelClick }, hAsync("slot", { key: '
|
|
40210
|
+
}, part: "label", id: inputLabelId, onClick: this.onDivLabelClick }, hAsync("slot", { key: '006dd3558264d69ab020c07005b348adc4ecdd5b' }), this.renderHintText()), hAsync("div", { key: 'dd4e52de31caabee41ec1bc58efecd1e213368c9', class: "native-wrapper" }, this.renderToggleControl()))));
|
|
39589
40211
|
}
|
|
39590
40212
|
get el() { return getElement(this); }
|
|
39591
40213
|
static get watchers() { return {
|
|
@@ -39697,10 +40319,10 @@ class Toolbar {
|
|
|
39697
40319
|
this.childrenStyles.forEach((value) => {
|
|
39698
40320
|
Object.assign(childStyles, value);
|
|
39699
40321
|
});
|
|
39700
|
-
return (hAsync(Host, { key: '
|
|
40322
|
+
return (hAsync(Host, { key: 'b849db2863778dee6c5a251bffa1b3a657aeb036', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
|
|
39701
40323
|
[mode]: true,
|
|
39702
40324
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
39703
|
-
})) }, hAsync("div", { key: '
|
|
40325
|
+
})) }, 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" }))));
|
|
39704
40326
|
}
|
|
39705
40327
|
get el() { return getElement(this); }
|
|
39706
40328
|
static get style() { return {
|
|
@@ -39746,11 +40368,11 @@ class ToolbarTitle {
|
|
|
39746
40368
|
render() {
|
|
39747
40369
|
const mode = getIonMode$1(this);
|
|
39748
40370
|
const size = this.getSize();
|
|
39749
|
-
return (hAsync(Host, { key: '
|
|
40371
|
+
return (hAsync(Host, { key: '44e63f8439df64c470692904427b417e19406476', class: createColorClasses$1(this.color, {
|
|
39750
40372
|
[mode]: true,
|
|
39751
40373
|
[`title-${size}`]: true,
|
|
39752
40374
|
'title-rtl': document.dir === 'rtl',
|
|
39753
|
-
}) }, hAsync("div", { key: '
|
|
40375
|
+
}) }, hAsync("div", { key: '784cf60a0db16045391891cc8fad0c7dbeba4039', class: "toolbar-title" }, hAsync("slot", { key: '0c720a50479ba257e8756337aeb9b0ab7516a227' }))));
|
|
39754
40376
|
}
|
|
39755
40377
|
get el() { return getElement(this); }
|
|
39756
40378
|
static get watchers() { return {
|
|
@@ -39830,8 +40452,10 @@ registerComponents([
|
|
|
39830
40452
|
Nav,
|
|
39831
40453
|
NavLink,
|
|
39832
40454
|
Note,
|
|
40455
|
+
Picker$1,
|
|
39833
40456
|
Picker,
|
|
39834
40457
|
PickerColumn,
|
|
40458
|
+
PickerColumnCmp,
|
|
39835
40459
|
PickerColumnOption,
|
|
39836
40460
|
Popover,
|
|
39837
40461
|
ProgressBar,
|