@ionic/core 8.7.13-dev.11765486444.14025098 → 8.7.13-dev.11765550444.1d97de23
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/header.js +2 -2
- package/components/ion-datetime-button.js +2 -2
- package/components/ion-datetime.js +49 -85
- package/components/ion-fab-button.js +2 -2
- package/components/ion-fab-list.js +2 -2
- package/components/ion-fab.js +2 -2
- package/components/ion-footer.js +2 -2
- package/components/ion-grid.js +2 -2
- package/components/ion-img.js +1 -1
- package/components/ion-infinite-scroll-content.js +2 -2
- package/components/ion-infinite-scroll.js +1 -1
- package/components/ion-input-otp.js +3 -3
- package/components/ion-input-password-toggle.js +3 -3
- package/components/ion-input.js +3 -3
- package/components/ion-item-divider.js +2 -2
- package/components/ion-item-group.js +1 -1
- package/components/ion-item-option.js +2 -2
- package/components/ion-item-options.js +1 -1
- package/components/ion-item-sliding.js +1 -1
- package/components/ion-loading.js +2 -2
- package/components/ion-menu-button.js +2 -2
- package/components/ion-menu-toggle.js +2 -2
- package/components/ion-menu.js +2 -2
- package/components/ion-nav-link.js +1 -1
- package/components/ion-nav.js +1 -1
- package/components/ion-note.js +2 -2
- package/components/ion-picker-legacy.js +2 -2
- package/components/ion-progress-bar.js +1 -1
- package/components/ion-range.js +3 -3
- 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-router-link.js +2 -2
- package/components/ion-router-outlet.js +1 -1
- package/components/ion-row.js +1 -1
- package/components/ion-searchbar.js +4 -4
- package/components/ion-segment-button.js +2 -2
- package/components/ion-segment-content.js +1 -1
- package/components/ion-segment-view.js +2 -2
- package/components/ion-segment.js +2 -2
- package/components/ion-select-option.js +1 -1
- package/components/ion-select.js +2 -2
- package/components/ion-skeleton-text.js +2 -2
- package/components/ion-split-pane.js +2 -2
- package/components/ion-tab-bar.js +2 -2
- package/components/ion-tab-button.js +2 -2
- package/components/ion-tab.js +2 -2
- package/components/ion-tabs.js +1 -1
- package/components/ion-text.js +2 -2
- package/components/ion-textarea.js +2 -2
- package/components/ion-thumbnail.js +1 -1
- package/components/ion-toast.js +2 -2
- package/components/ion-toggle.js +3 -3
- package/components/label.js +2 -2
- package/components/list-header.js +2 -2
- package/components/list.js +1 -1
- package/components/modal.js +4 -4
- package/components/picker-column-option.js +2 -2
- package/components/picker-column.js +3 -3
- package/components/picker-column2.js +2 -2
- package/components/picker.js +2 -2
- package/components/popover.js +2 -2
- package/components/radio-group.js +1 -1
- package/components/radio.js +3 -3
- package/components/ripple-effect.js +1 -1
- package/components/select-modal.js +1 -1
- package/components/select-popover.js +1 -1
- package/components/spinner.js +1 -1
- package/components/title.js +2 -2
- package/components/toolbar.js +2 -2
- package/dist/cjs/ion-app_8.cjs.entry.js +9 -9
- package/dist/cjs/ion-avatar_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-col_3.cjs.entry.js +3 -3
- package/dist/cjs/ion-datetime-button.cjs.entry.js +2 -2
- package/dist/cjs/ion-datetime_3.cjs.entry.js +53 -89
- package/dist/cjs/ion-fab_3.cjs.entry.js +6 -6
- package/dist/cjs/ion-img.cjs.entry.js +1 -1
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-input-otp.cjs.entry.js +3 -3
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +3 -3
- package/dist/cjs/ion-input.cjs.entry.js +3 -3
- package/dist/cjs/ion-item-option_3.cjs.entry.js +4 -4
- package/dist/cjs/ion-item_8.cjs.entry.js +12 -12
- package/dist/cjs/ion-loading.cjs.entry.js +2 -2
- package/dist/cjs/ion-menu_3.cjs.entry.js +6 -6
- package/dist/cjs/ion-modal.cjs.entry.js +4 -4
- package/dist/cjs/ion-nav_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +2 -2
- package/dist/cjs/ion-picker-column.cjs.entry.js +3 -3
- package/dist/cjs/ion-picker.cjs.entry.js +2 -2
- package/dist/cjs/ion-popover.cjs.entry.js +2 -2
- package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
- package/dist/cjs/ion-radio_2.cjs.entry.js +4 -4
- 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 +1 -1
- package/dist/cjs/ion-select_3.cjs.entry.js +4 -4
- 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 +2 -2
- package/dist/cjs/ion-toggle.cjs.entry.js +3 -3
- package/dist/collection/components/datetime/datetime.js +49 -85
- package/dist/collection/components/datetime-button/datetime-button.js +2 -2
- package/dist/collection/components/fab/fab.js +2 -2
- package/dist/collection/components/fab-button/fab-button.js +2 -2
- package/dist/collection/components/fab-list/fab-list.js +2 -2
- package/dist/collection/components/footer/footer.js +2 -2
- package/dist/collection/components/grid/grid.js +2 -2
- package/dist/collection/components/header/header.js +2 -2
- package/dist/collection/components/img/img.js +1 -1
- package/dist/collection/components/infinite-scroll/infinite-scroll.js +1 -1
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +2 -2
- package/dist/collection/components/input/input.js +3 -3
- package/dist/collection/components/input-otp/input-otp.js +3 -3
- package/dist/collection/components/input-password-toggle/input-password-toggle.js +3 -3
- package/dist/collection/components/item-divider/item-divider.js +2 -2
- package/dist/collection/components/item-group/item-group.js +1 -1
- package/dist/collection/components/item-option/item-option.js +2 -2
- package/dist/collection/components/item-options/item-options.js +1 -1
- package/dist/collection/components/item-sliding/item-sliding.js +1 -1
- package/dist/collection/components/label/label.js +2 -2
- package/dist/collection/components/list/list.js +1 -1
- package/dist/collection/components/list-header/list-header.js +2 -2
- package/dist/collection/components/loading/loading.js +2 -2
- package/dist/collection/components/menu/menu.js +2 -2
- package/dist/collection/components/menu-button/menu-button.js +2 -2
- package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
- package/dist/collection/components/modal/modal.js +4 -4
- package/dist/collection/components/nav/nav.js +1 -1
- package/dist/collection/components/nav-link/nav-link.js +1 -1
- package/dist/collection/components/note/note.js +2 -2
- package/dist/collection/components/picker/picker.js +2 -2
- package/dist/collection/components/picker-column/picker-column.js +3 -3
- package/dist/collection/components/picker-column-option/picker-column-option.js +2 -2
- package/dist/collection/components/picker-legacy/picker.js +2 -2
- package/dist/collection/components/picker-legacy-column/picker-column.js +2 -2
- package/dist/collection/components/popover/popover.js +2 -2
- package/dist/collection/components/progress-bar/progress-bar.js +1 -1
- package/dist/collection/components/radio/radio.js +3 -3
- package/dist/collection/components/radio-group/radio-group.js +1 -1
- 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 +1 -1
- 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/docs.json +1 -1
- package/dist/esm/ion-app_8.entry.js +9 -9
- package/dist/esm/ion-avatar_3.entry.js +1 -1
- package/dist/esm/ion-col_3.entry.js +3 -3
- package/dist/esm/ion-datetime-button.entry.js +2 -2
- package/dist/esm/ion-datetime_3.entry.js +53 -89
- package/dist/esm/ion-fab_3.entry.js +6 -6
- package/dist/esm/ion-img.entry.js +1 -1
- package/dist/esm/ion-infinite-scroll_2.entry.js +3 -3
- package/dist/esm/ion-input-otp.entry.js +3 -3
- package/dist/esm/ion-input-password-toggle.entry.js +3 -3
- package/dist/esm/ion-input.entry.js +3 -3
- package/dist/esm/ion-item-option_3.entry.js +4 -4
- package/dist/esm/ion-item_8.entry.js +12 -12
- package/dist/esm/ion-loading.entry.js +2 -2
- package/dist/esm/ion-menu_3.entry.js +6 -6
- package/dist/esm/ion-modal.entry.js +4 -4
- package/dist/esm/ion-nav_2.entry.js +2 -2
- package/dist/esm/ion-picker-column-option.entry.js +2 -2
- package/dist/esm/ion-picker-column.entry.js +3 -3
- package/dist/esm/ion-picker.entry.js +2 -2
- package/dist/esm/ion-popover.entry.js +2 -2
- package/dist/esm/ion-progress-bar.entry.js +1 -1
- package/dist/esm/ion-radio_2.entry.js +4 -4
- package/dist/esm/ion-range.entry.js +3 -3
- package/dist/esm/ion-refresher_2.entry.js +2 -2
- package/dist/esm/ion-reorder_2.entry.js +2 -2
- package/dist/esm/ion-ripple-effect.entry.js +1 -1
- package/dist/esm/ion-route_4.entry.js +2 -2
- package/dist/esm/ion-searchbar.entry.js +4 -4
- package/dist/esm/ion-segment-content.entry.js +1 -1
- package/dist/esm/ion-segment-view.entry.js +2 -2
- package/dist/esm/ion-segment_2.entry.js +4 -4
- package/dist/esm/ion-select-modal.entry.js +1 -1
- package/dist/esm/ion-select_3.entry.js +4 -4
- 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 +2 -2
- package/dist/esm/ion-toggle.entry.js +3 -3
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/{p-074839fc.entry.js → p-01e27965.entry.js} +1 -1
- package/dist/ionic/{p-ea509e3c.entry.js → p-0852af24.entry.js} +1 -1
- package/dist/ionic/p-0ca0fe9c.entry.js +4 -0
- package/dist/ionic/{p-72c38b88.entry.js → p-20f135b4.entry.js} +1 -1
- package/dist/ionic/{p-316c0420.entry.js → p-221a3d8c.entry.js} +1 -1
- package/dist/ionic/{p-3a6caca9.entry.js → p-2668188b.entry.js} +1 -1
- package/dist/ionic/{p-d3014190.entry.js → p-2bd1ea35.entry.js} +1 -1
- package/dist/ionic/{p-a127bee2.entry.js → p-30333874.entry.js} +1 -1
- package/dist/ionic/{p-1647c46c.entry.js → p-363d1209.entry.js} +1 -1
- package/dist/ionic/{p-a8ed848b.entry.js → p-3b0b7a05.entry.js} +1 -1
- package/dist/ionic/p-43c5249f.entry.js +4 -0
- package/dist/ionic/p-4c09dde7.entry.js +4 -0
- package/dist/ionic/{p-0dfa5a37.entry.js → p-530fcd71.entry.js} +1 -1
- package/dist/ionic/{p-0bf76d0f.entry.js → p-59a5cdf5.entry.js} +1 -1
- package/dist/ionic/{p-40c261a3.entry.js → p-64841854.entry.js} +1 -1
- package/dist/ionic/{p-dbbe606a.entry.js → p-652318c3.entry.js} +1 -1
- package/dist/ionic/{p-675b1a31.entry.js → p-65db57d7.entry.js} +1 -1
- package/dist/ionic/{p-0abeb0fc.entry.js → p-67f46577.entry.js} +1 -1
- package/dist/ionic/{p-cc45bcbc.entry.js → p-69c6fe52.entry.js} +1 -1
- package/dist/ionic/{p-2a939845.entry.js → p-6f37536a.entry.js} +1 -1
- package/dist/ionic/{p-cebb0328.entry.js → p-75ebaa15.entry.js} +1 -1
- package/dist/ionic/p-7f98e710.entry.js +4 -0
- package/dist/ionic/{p-6d070558.entry.js → p-82d5bb3d.entry.js} +1 -1
- package/dist/ionic/{p-11518b31.entry.js → p-85ee4a92.entry.js} +1 -1
- package/dist/ionic/{p-31f7095f.entry.js → p-a4a9f5ae.entry.js} +1 -1
- package/dist/ionic/{p-c19f63d0.entry.js → p-b30c3430.entry.js} +1 -1
- package/dist/ionic/{p-86f53961.entry.js → p-b8551510.entry.js} +1 -1
- package/dist/ionic/{p-ac4eb91d.entry.js → p-bccc9207.entry.js} +1 -1
- package/dist/ionic/{p-d126e8d3.entry.js → p-bce86e56.entry.js} +1 -1
- package/dist/ionic/{p-639dd543.entry.js → p-c175d792.entry.js} +1 -1
- package/dist/ionic/{p-020af078.entry.js → p-cc2a9936.entry.js} +1 -1
- package/dist/ionic/p-ce8dad03.entry.js +4 -0
- package/dist/ionic/{p-6444c606.entry.js → p-d655735d.entry.js} +1 -1
- package/dist/ionic/{p-b57c6d3e.entry.js → p-dbc82f0e.entry.js} +1 -1
- package/dist/ionic/{p-6241ce47.entry.js → p-e036eb2f.entry.js} +1 -1
- package/dist/ionic/{p-9575b654.entry.js → p-e48f026f.entry.js} +1 -1
- package/dist/ionic/{p-7268efa5.entry.js → p-e64b550c.entry.js} +1 -1
- package/dist/ionic/{p-46d74291.entry.js → p-ee8ecd40.entry.js} +1 -1
- package/dist/ionic/{p-c85a2127.entry.js → p-f097a9e5.entry.js} +1 -1
- package/dist/ionic/{p-f8f22cc0.entry.js → p-fb0271ae.entry.js} +1 -1
- package/dist/ionic/{p-370e4237.entry.js → p-fbb00634.entry.js} +1 -1
- package/dist/ionic/{p-ec654c42.entry.js → p-fc14f34a.entry.js} +1 -1
- package/dist/types/components/datetime/datetime.d.ts +1 -11
- package/hydrate/index.js +177 -213
- package/hydrate/index.mjs +177 -213
- package/package.json +1 -1
- package/dist/ionic/p-4b658a7c.entry.js +0 -4
- package/dist/ionic/p-4e41ea20.entry.js +0 -4
- package/dist/ionic/p-51a60e0f.entry.js +0 -4
- package/dist/ionic/p-576e0965.entry.js +0 -4
- package/dist/ionic/p-94de5cfa.entry.js +0 -4
|
@@ -335,11 +335,11 @@ const DatetimeButton = class {
|
|
|
335
335
|
render() {
|
|
336
336
|
const { color, dateText, timeText, selectedButton, datetimeActive, disabled } = this;
|
|
337
337
|
const mode = getIonMode(this);
|
|
338
|
-
return (h(Host, { key: '
|
|
338
|
+
return (h(Host, { key: '0cad13e702cd8f76b10364d44993495d1aac40fb', class: createColorClasses(color, {
|
|
339
339
|
[mode]: true,
|
|
340
340
|
[`${selectedButton}-active`]: datetimeActive,
|
|
341
341
|
['datetime-button-disabled']: disabled,
|
|
342
|
-
}) }, dateText && (h("button", { key: '
|
|
342
|
+
}) }, dateText && (h("button", { key: '03ceb62c8dd7b4a97eca211d8ad73a4cfa8c2a1a', class: "ion-activatable", id: "date-button", "aria-expanded": datetimeActive ? 'true' : 'false', onClick: this.handleDateClick, disabled: disabled, part: "native", ref: (el) => (this.dateTargetEl = el) }, h("slot", { key: '251c03d7dc30180caf5f2728818ab445b7b99b52', name: "date-target" }, dateText), mode === 'md' && h("ion-ripple-effect", { key: 'ce5fa19ed565fd788c6096aa55d8102ac36a1307' }))), timeText && (h("button", { key: '4833eb0e7b23f7c4faf03c998a58cc80cc714887', class: "ion-activatable", id: "time-button", "aria-expanded": datetimeActive ? 'true' : 'false', onClick: this.handleTimeClick, disabled: disabled, part: "native", ref: (el) => (this.timeTargetEl = el) }, h("slot", { key: '60966f907d725aea78af66dbb57f1d6f212a1ef5', name: "time-target" }, timeText), mode === 'md' && h("ion-ripple-effect", { key: 'c26bd731e8991e2b2b7984a2bd859f36337a038b' })))));
|
|
343
343
|
}
|
|
344
344
|
get el() { return getElement(this); }
|
|
345
345
|
};
|
|
@@ -784,28 +784,6 @@ const Datetime = class {
|
|
|
784
784
|
destroyKeyboardMO();
|
|
785
785
|
}
|
|
786
786
|
};
|
|
787
|
-
/**
|
|
788
|
-
* TODO(FW-6931): Remove this fallback upon solving the root cause
|
|
789
|
-
* Fallback to ensure the datetime becomes ready even if
|
|
790
|
-
* IntersectionObserver never reports it as intersecting.
|
|
791
|
-
*
|
|
792
|
-
* This is primarily used in environments where the observer
|
|
793
|
-
* might not fire as expected, such as when running under
|
|
794
|
-
* synthetic tests that stub IntersectionObserver.
|
|
795
|
-
*/
|
|
796
|
-
this.ensureReadyIfVisible = () => {
|
|
797
|
-
if (this.el.classList.contains('datetime-ready')) {
|
|
798
|
-
return;
|
|
799
|
-
}
|
|
800
|
-
const rect = this.el.getBoundingClientRect();
|
|
801
|
-
if (rect.width === 0 || rect.height === 0) {
|
|
802
|
-
return;
|
|
803
|
-
}
|
|
804
|
-
this.initializeListeners();
|
|
805
|
-
writeTask(() => {
|
|
806
|
-
this.el.classList.add('datetime-ready');
|
|
807
|
-
});
|
|
808
|
-
};
|
|
809
787
|
this.processValue = (value) => {
|
|
810
788
|
const hasValue = value !== null && value !== undefined && value !== '' && (!Array.isArray(value) || value.length > 0);
|
|
811
789
|
const valueToProcess = hasValue ? parseDate(value) : this.defaultParts;
|
|
@@ -1083,84 +1061,70 @@ const Datetime = class {
|
|
|
1083
1061
|
this.clearFocusVisible();
|
|
1084
1062
|
this.clearFocusVisible = undefined;
|
|
1085
1063
|
}
|
|
1064
|
+
if (this.resizeObserver) {
|
|
1065
|
+
this.resizeObserver.disconnect();
|
|
1066
|
+
this.resizeObserver = undefined;
|
|
1067
|
+
}
|
|
1086
1068
|
}
|
|
1087
1069
|
initializeListeners() {
|
|
1088
1070
|
this.initializeCalendarListener();
|
|
1089
1071
|
this.initializeKeyboardListeners();
|
|
1090
1072
|
}
|
|
1091
1073
|
componentDidLoad() {
|
|
1092
|
-
const { el
|
|
1074
|
+
const { el } = this;
|
|
1093
1075
|
/**
|
|
1094
1076
|
* If a scrollable element is hidden using `display: none`,
|
|
1095
1077
|
* it will not have a scroll height meaning we cannot scroll elements
|
|
1096
1078
|
* into view. As a result, we will need to wait for the datetime to become
|
|
1097
1079
|
* visible if used inside of a modal or a popover otherwise the scrollable
|
|
1098
1080
|
* areas will not have the correct values snapped into place.
|
|
1081
|
+
*
|
|
1082
|
+
* We use ResizeObserver to detect when the element transitions
|
|
1083
|
+
* between having dimensions (visible) and zero dimensions (hidden). This
|
|
1084
|
+
* is more reliable than IntersectionObserver for detecting visibility
|
|
1085
|
+
* changes, especially when the element is inside a modal or popover.
|
|
1099
1086
|
*/
|
|
1100
|
-
|
|
1101
|
-
const
|
|
1102
|
-
|
|
1103
|
-
|
|
1087
|
+
this.resizeObserver = new ResizeObserver((entries) => {
|
|
1088
|
+
const entry = entries[0];
|
|
1089
|
+
const { width, height } = entry.contentRect;
|
|
1090
|
+
const isVisible = width > 0 && height > 0;
|
|
1091
|
+
const isReady = el.classList.contains('datetime-ready');
|
|
1092
|
+
if (isVisible && !isReady) {
|
|
1093
|
+
this.initializeListeners();
|
|
1094
|
+
/**
|
|
1095
|
+
* TODO FW-2793: Datetime needs a frame to ensure that it
|
|
1096
|
+
* can properly scroll contents into view. As a result
|
|
1097
|
+
* we hide the scrollable content until after that frame
|
|
1098
|
+
* so users do not see the content quickly shifting. The downside
|
|
1099
|
+
* is that the content will pop into view a frame after. Maybe there
|
|
1100
|
+
* is a better way to handle this?
|
|
1101
|
+
*/
|
|
1102
|
+
writeTask(() => {
|
|
1103
|
+
el.classList.add('datetime-ready');
|
|
1104
|
+
});
|
|
1104
1105
|
}
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1106
|
+
else if (!isVisible && isReady) {
|
|
1107
|
+
/**
|
|
1108
|
+
* Clean up listeners when hidden so we can properly
|
|
1109
|
+
* reinitialize scroll positions on re-presentation.
|
|
1110
|
+
*/
|
|
1111
|
+
this.destroyInteractionListeners();
|
|
1112
|
+
/**
|
|
1113
|
+
* Close month/year picker when hidden, otherwise
|
|
1114
|
+
* it will be open when re-presented with a 0-height
|
|
1115
|
+
* scroll area, showing the wrong month.
|
|
1116
|
+
*/
|
|
1117
|
+
this.showMonthAndYear = false;
|
|
1118
|
+
writeTask(() => {
|
|
1119
|
+
el.classList.remove('datetime-ready');
|
|
1120
|
+
});
|
|
1121
|
+
}
|
|
1122
|
+
});
|
|
1119
1123
|
/**
|
|
1120
1124
|
* Use raf to avoid a race condition between the component loading and
|
|
1121
|
-
* its display animation starting (such as when shown in a modal).
|
|
1122
|
-
* could cause the datetime to start at a visibility of 0, erroneously
|
|
1123
|
-
* triggering the `hiddenIO` observer below.
|
|
1124
|
-
*/
|
|
1125
|
-
raf(() => visibleIO === null || visibleIO === void 0 ? void 0 : visibleIO.observe(intersectionTrackerRef));
|
|
1126
|
-
/**
|
|
1127
|
-
* TODO(FW-6931): Remove this fallback upon solving the root cause
|
|
1128
|
-
* Fallback: If IntersectionObserver never reports that the
|
|
1129
|
-
* datetime is visible but the host clearly has layout, ensure
|
|
1130
|
-
* we still initialize listeners and mark the component as ready.
|
|
1131
|
-
*
|
|
1132
|
-
* We schedule this after everything has had a chance to run.
|
|
1133
|
-
*/
|
|
1134
|
-
setTimeout(() => {
|
|
1135
|
-
this.ensureReadyIfVisible();
|
|
1136
|
-
}, 100);
|
|
1137
|
-
/**
|
|
1138
|
-
* We need to clean up listeners when the datetime is hidden
|
|
1139
|
-
* in a popover/modal so that we can properly scroll containers
|
|
1140
|
-
* back into view if they are re-presented. When the datetime is hidden
|
|
1141
|
-
* the scroll areas have scroll widths/heights of 0px, so any snapping
|
|
1142
|
-
* we did originally has been lost.
|
|
1125
|
+
* its display animation starting (such as when shown in a modal).
|
|
1143
1126
|
*/
|
|
1144
|
-
|
|
1145
|
-
const ev = entries[0];
|
|
1146
|
-
if (ev.isIntersecting) {
|
|
1147
|
-
return;
|
|
1148
|
-
}
|
|
1149
|
-
this.destroyInteractionListeners();
|
|
1150
|
-
/**
|
|
1151
|
-
* When datetime is hidden, we need to make sure that
|
|
1152
|
-
* the month/year picker is closed. Otherwise,
|
|
1153
|
-
* it will be open when the datetime re-appears
|
|
1154
|
-
* and the scroll area of the calendar grid will be 0.
|
|
1155
|
-
* As a result, the wrong month will be shown.
|
|
1156
|
-
*/
|
|
1157
|
-
this.showMonthAndYear = false;
|
|
1158
|
-
writeTask(() => {
|
|
1159
|
-
this.el.classList.remove('datetime-ready');
|
|
1160
|
-
});
|
|
1161
|
-
};
|
|
1162
|
-
const hiddenIO = new IntersectionObserver(hiddenCallback, { threshold: 0, root: el });
|
|
1163
|
-
raf(() => hiddenIO === null || hiddenIO === void 0 ? void 0 : hiddenIO.observe(intersectionTrackerRef));
|
|
1127
|
+
raf(() => { var _a; return (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.observe(el); });
|
|
1164
1128
|
/**
|
|
1165
1129
|
* Datetime uses Ionic components that emit
|
|
1166
1130
|
* ionFocus and ionBlur. These events are
|
|
@@ -1889,7 +1853,7 @@ const Datetime = class {
|
|
|
1889
1853
|
const hasDatePresentation = presentation === 'date' || presentation === 'date-time' || presentation === 'time-date';
|
|
1890
1854
|
const hasWheelVariant = hasDatePresentation && preferWheel;
|
|
1891
1855
|
renderHiddenInput(true, el, name, formatValue(value), disabled);
|
|
1892
|
-
return (h(Host, { key: '
|
|
1856
|
+
return (h(Host, { key: 'f4d2e6577c288bdbd814760ab70cccfd91815f06', "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: Object.assign({}, createColorClasses(color, {
|
|
1893
1857
|
[mode]: true,
|
|
1894
1858
|
['datetime-readonly']: readonly,
|
|
1895
1859
|
['datetime-disabled']: disabled,
|
|
@@ -1899,7 +1863,7 @@ const Datetime = class {
|
|
|
1899
1863
|
[`datetime-size-${size}`]: true,
|
|
1900
1864
|
[`datetime-prefer-wheel`]: hasWheelVariant,
|
|
1901
1865
|
[`datetime-grid`]: isGridStyle,
|
|
1902
|
-
})) },
|
|
1866
|
+
})) }, this.renderDatetime(mode)));
|
|
1903
1867
|
}
|
|
1904
1868
|
get el() { return getElement(this); }
|
|
1905
1869
|
static get watchers() { return {
|
|
@@ -2176,11 +2140,11 @@ const Picker = class {
|
|
|
2176
2140
|
render() {
|
|
2177
2141
|
const { htmlAttributes } = this;
|
|
2178
2142
|
const mode = getIonMode(this);
|
|
2179
|
-
return (h(Host, Object.assign({ key: '
|
|
2143
|
+
return (h(Host, Object.assign({ key: '80f66d33780d8a1352d24be9cb63a0cc03d01ab5', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
|
|
2180
2144
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
2181
2145
|
}, class: Object.assign({ [mode]: true,
|
|
2182
2146
|
// Used internally for styling
|
|
2183
|
-
[`picker-${mode}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), h("ion-backdrop", { key: '
|
|
2147
|
+
[`picker-${mode}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), h("ion-backdrop", { key: '97fb8e10ba08b197610cb8c0cdea61103883d55f', visible: this.showBackdrop, tappable: this.backdropDismiss }), h("div", { key: 'b3969cb6fbf7153623d14e3ca1493d3370efb211', tabindex: "0", "aria-hidden": "true" }), h("div", { key: '299268483c3727e698d9135bfdf40349a7050ac1', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, h("div", { key: '95394de3ef691899b7dbf416f56fd3e86bbdce3f', class: "picker-toolbar" }, this.buttons.map((b) => (h("div", { class: buttonWrapperClass(b) }, h("button", { type: "button", onClick: () => this.buttonClick(b), class: buttonClass(b) }, b.text))))), h("div", { key: '05f18bb8d00dc0e22f691b7e41f90f729a6c66d7', class: "picker-columns" }, h("div", { key: '4a8fdf224effc0af67fd413e2e6aca8a78d1cf43', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => h("ion-picker-legacy-column", { col: c })), h("div", { key: 'e50a31db45e3f39e9d0fed36a21be9257eec09bf', class: "picker-below-highlight" }))), h("div", { key: '5a78cb2176ac807ea0c195c6b76cd0e8eef9d4c0', tabindex: "0", "aria-hidden": "true" })));
|
|
2184
2148
|
}
|
|
2185
2149
|
get el() { return getElement(this); }
|
|
2186
2150
|
static get watchers() { return {
|
|
@@ -2534,9 +2498,9 @@ const PickerColumnCmp = class {
|
|
|
2534
2498
|
render() {
|
|
2535
2499
|
const col = this.col;
|
|
2536
2500
|
const mode = getIonMode(this);
|
|
2537
|
-
return (h(Host, { key: '
|
|
2501
|
+
return (h(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: {
|
|
2538
2502
|
'max-width': this.col.columnWidth,
|
|
2539
|
-
} }, col.prefix && (h("div", { key: '
|
|
2503
|
+
} }, col.prefix && (h("div", { key: 'b0f3d39e0bd128781066ffefb7a1e40d12a9e76d', class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), h("div", { key: '0b106ac4d56916eaaa7f09d1b68348b3754b7bba', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index) => (h("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index }, o.text)))), col.suffix && (h("div", { key: '00ff2f9dbb4561787e5a5223327c6a2a33f8362e', class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
|
|
2540
2504
|
}
|
|
2541
2505
|
get el() { return getElement(this); }
|
|
2542
2506
|
static get watchers() { return {
|
|
@@ -61,12 +61,12 @@ const Fab = class {
|
|
|
61
61
|
render() {
|
|
62
62
|
const { horizontal, vertical, edge } = this;
|
|
63
63
|
const mode = getIonMode(this);
|
|
64
|
-
return (h(Host, { key: '
|
|
64
|
+
return (h(Host, { key: 'cb44cf6486b0a6439b99da87c065b0b52e2514f4', class: {
|
|
65
65
|
[mode]: true,
|
|
66
66
|
[`fab-horizontal-${horizontal}`]: horizontal !== undefined,
|
|
67
67
|
[`fab-vertical-${vertical}`]: vertical !== undefined,
|
|
68
68
|
'fab-edge': edge,
|
|
69
|
-
} }, h("slot", { key: '
|
|
69
|
+
} }, h("slot", { key: '1ed484c7ecb10cd81fbca9a4f5c4049bf82f9f8a' })));
|
|
70
70
|
}
|
|
71
71
|
get el() { return getElement(this); }
|
|
72
72
|
static get watchers() { return {
|
|
@@ -152,7 +152,7 @@ const FabButton = class {
|
|
|
152
152
|
rel: this.rel,
|
|
153
153
|
target: this.target,
|
|
154
154
|
};
|
|
155
|
-
return (h(Host, { key: '
|
|
155
|
+
return (h(Host, { key: 'eb347f7d6749c40637540d84778eb8d1b667a947', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, class: createColorClasses(color, {
|
|
156
156
|
[mode]: true,
|
|
157
157
|
'fab-button-in-list': inList,
|
|
158
158
|
'fab-button-translucent-in-list': inList && translucent,
|
|
@@ -163,7 +163,7 @@ const FabButton = class {
|
|
|
163
163
|
'ion-activatable': true,
|
|
164
164
|
'ion-focusable': true,
|
|
165
165
|
[`fab-button-${size}`]: size !== undefined,
|
|
166
|
-
}) }, h(TagType, Object.assign({ key: '
|
|
166
|
+
}) }, h(TagType, Object.assign({ key: '83e853c8815f41543c848eb2e05ec2bb1716110a' }, attrs, { class: "button-native", part: "native", disabled: disabled, onFocus: this.onFocus, onBlur: this.onBlur, onClick: (ev) => openURL(href, ev, this.routerDirection, this.routerAnimation) }, inheritedAttributes), h("ion-icon", { key: '798deede94de658e4345acf7c2aafe2ab2567b0b', "aria-hidden": "true", icon: this.closeIcon, part: "close-icon", class: "close-icon", lazy: false }), h("span", { key: '99252fde6de1aca73fc240a6da7e29acac9acb18', class: "button-inner" }, h("slot", { key: 'dc73e9b41bf1f0e385e5784f975dfb81e37c8dfb' })), mode === 'md' && h("ion-ripple-effect", { key: '8413e162f44a0350f54dff06cff7aad101de3549' }))));
|
|
167
167
|
}
|
|
168
168
|
get el() { return getElement(this); }
|
|
169
169
|
};
|
|
@@ -196,11 +196,11 @@ const FabList = class {
|
|
|
196
196
|
}
|
|
197
197
|
render() {
|
|
198
198
|
const mode = getIonMode(this);
|
|
199
|
-
return (h(Host, { key: '
|
|
199
|
+
return (h(Host, { key: 'fa1d195b9950654ba0e984bf61d981c977d05275', class: {
|
|
200
200
|
[mode]: true,
|
|
201
201
|
'fab-list-active': this.activated,
|
|
202
202
|
[`fab-list-side-${this.side}`]: true,
|
|
203
|
-
} }, h("slot", { key: '
|
|
203
|
+
} }, h("slot", { key: '2ec738c66c05112e1e2521155d6adfc36d2fd1db' })));
|
|
204
204
|
}
|
|
205
205
|
get el() { return getElement(this); }
|
|
206
206
|
static get watchers() { return {
|
|
@@ -71,7 +71,7 @@ const Img = class {
|
|
|
71
71
|
render() {
|
|
72
72
|
const { loadSrc, alt, onLoad, loadError, inheritedAttributes } = this;
|
|
73
73
|
const { draggable } = inheritedAttributes;
|
|
74
|
-
return (h(Host, { key: '
|
|
74
|
+
return (h(Host, { key: '14d24d65ec8e5522192ca58035264971b1ab883b', class: getIonMode(this) }, h("img", { key: '345ba155a5fdce5e66c397a599b7333d37d9cb1d', decoding: "async", src: loadSrc, alt: alt, onLoad: onLoad, onError: loadError, part: "image", draggable: isDraggable(draggable) })));
|
|
75
75
|
}
|
|
76
76
|
get el() { return getElement(this); }
|
|
77
77
|
static get watchers() { return {
|
|
@@ -196,7 +196,7 @@ const InfiniteScroll = class {
|
|
|
196
196
|
render() {
|
|
197
197
|
const mode = getIonMode(this);
|
|
198
198
|
const disabled = this.disabled;
|
|
199
|
-
return (h(Host, { key: '
|
|
199
|
+
return (h(Host, { key: '1444429a86950c449953cbf578436cc8cabf40ec', class: {
|
|
200
200
|
[mode]: true,
|
|
201
201
|
'infinite-scroll-loading': this.isLoading,
|
|
202
202
|
'infinite-scroll-enabled': !disabled,
|
|
@@ -234,11 +234,11 @@ const InfiniteScrollContent = class {
|
|
|
234
234
|
}
|
|
235
235
|
render() {
|
|
236
236
|
const mode = getIonMode(this);
|
|
237
|
-
return (h(Host, { key: '
|
|
237
|
+
return (h(Host, { key: '060278bf9cb0321e182352f9613be4ebbb028259', class: {
|
|
238
238
|
[mode]: true,
|
|
239
239
|
// Used internally for styling
|
|
240
240
|
[`infinite-scroll-content-${mode}`]: true,
|
|
241
|
-
} }, h("div", { key: '
|
|
241
|
+
} }, h("div", { key: '07d3cada920145f979ad315bd187fb878e0c3da3', class: "infinite-loading" }, this.loadingSpinner && (h("div", { key: '6254f175d7543d09f3dd47cd0589a2809182cd8c', class: "infinite-loading-spinner" }, h("ion-spinner", { key: 'a6a816d1c65b60b786333b209b63492aa716a283', name: this.loadingSpinner }))), this.loadingText !== undefined && this.renderLoadingText())));
|
|
242
242
|
}
|
|
243
243
|
};
|
|
244
244
|
InfiniteScrollContent.style = {
|
|
@@ -615,7 +615,7 @@ const InputOTP = class {
|
|
|
615
615
|
const tabbableIndex = this.getTabbableIndex();
|
|
616
616
|
const pattern = this.getPattern();
|
|
617
617
|
const hasDescription = ((_b = (_a = el.querySelector('.input-otp-description')) === null || _a === void 0 ? void 0 : _a.textContent) === null || _b === void 0 ? void 0 : _b.trim()) !== '';
|
|
618
|
-
return (h(Host, { key: '
|
|
618
|
+
return (h(Host, { key: '76126aeef5a333d3ce86149d1ce21da6c7834898', class: createColorClasses(color, {
|
|
619
619
|
[mode]: true,
|
|
620
620
|
'has-focus': hasFocus,
|
|
621
621
|
[`input-otp-size-${size}`]: true,
|
|
@@ -623,10 +623,10 @@ const InputOTP = class {
|
|
|
623
623
|
[`input-otp-fill-${fill}`]: true,
|
|
624
624
|
'input-otp-disabled': disabled,
|
|
625
625
|
'input-otp-readonly': readonly,
|
|
626
|
-
}) }, h("div", Object.assign({ key: '
|
|
626
|
+
}) }, h("div", Object.assign({ key: 'e9aa792de40a0e49075e8881c6a11245807e1051', role: "group", "aria-label": "One-time password input", class: "input-otp-group" }, inheritedAttributes), Array.from({ length }).map((_, index) => (h(Fragment, null, h("div", { class: "native-wrapper" }, h("input", { class: "native-input", id: `${inputId}-${index}`, "aria-label": `Input ${index + 1} of ${length}`, type: "text", autoCapitalize: autocapitalize, inputmode: inputmode, pattern: pattern, disabled: disabled, readOnly: readonly, tabIndex: index === tabbableIndex ? 0 : -1, value: inputValues[index] || '', autocomplete: "one-time-code", ref: (el) => (inputRefs[index] = el), onInput: this.onInput(index), onBlur: this.onBlur, onFocus: this.onFocus(index), onKeyDown: this.onKeyDown(index), onPaste: this.onPaste })), this.showSeparator(index) && h("div", { class: "input-otp-separator" }))))), h("div", { key: '262ead41c9401a2144e9d7b7bd85311e366d09b2', class: {
|
|
627
627
|
'input-otp-description': true,
|
|
628
628
|
'input-otp-description-hidden': !hasDescription,
|
|
629
|
-
} }, h("slot", { key: '
|
|
629
|
+
} }, h("slot", { key: '63a4b07ef5e3174cc75cdaed59305cdaebcfd1ad' }))));
|
|
630
630
|
}
|
|
631
631
|
get el() { return getElement(this); }
|
|
632
632
|
static get watchers() { return {
|
|
@@ -62,16 +62,16 @@ const InputPasswordToggle = class {
|
|
|
62
62
|
const showPasswordIcon = (_a = this.showIcon) !== null && _a !== void 0 ? _a : eye;
|
|
63
63
|
const hidePasswordIcon = (_b = this.hideIcon) !== null && _b !== void 0 ? _b : eyeOff;
|
|
64
64
|
const isPasswordVisible = type === 'text';
|
|
65
|
-
return (h(Host, { key: '
|
|
65
|
+
return (h(Host, { key: '07e26969f77ad361e358efe33a3b3728d9669017', class: createColorClasses(color, {
|
|
66
66
|
[mode]: true,
|
|
67
|
-
}) }, h("ion-button", { key: '
|
|
67
|
+
}) }, h("ion-button", { key: '9f21eaea5756844d37930d52d8d3013c9d476b9f', mode: mode, color: color, fill: "clear", shape: "round", "aria-checked": isPasswordVisible ? 'true' : 'false', "aria-label": isPasswordVisible ? 'Hide password' : 'Show password', role: "switch", type: "button", onPointerDown: (ev) => {
|
|
68
68
|
/**
|
|
69
69
|
* This prevents mobile browsers from
|
|
70
70
|
* blurring the input when the password toggle
|
|
71
71
|
* button is activated.
|
|
72
72
|
*/
|
|
73
73
|
ev.preventDefault();
|
|
74
|
-
}, onClick: this.togglePasswordVisibility }, h("ion-icon", { key: '
|
|
74
|
+
}, onClick: this.togglePasswordVisibility }, h("ion-icon", { key: 'd7b1f55b77b71bf2c147f3bde83de1e9083f70ba', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? hidePasswordIcon : showPasswordIcon }))));
|
|
75
75
|
}
|
|
76
76
|
get el() { return getElement(this); }
|
|
77
77
|
static get watchers() { return {
|
|
@@ -515,7 +515,7 @@ const Input = class {
|
|
|
515
515
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
516
516
|
*/
|
|
517
517
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
|
|
518
|
-
return (h(Host, { key: '
|
|
518
|
+
return (h(Host, { key: '81b44a68138ec7a9f1d4a27549d0c32283dea50d', class: createColorClasses(this.color, {
|
|
519
519
|
[mode]: true,
|
|
520
520
|
'has-value': hasValue,
|
|
521
521
|
'has-focus': hasFocus,
|
|
@@ -526,14 +526,14 @@ const Input = class {
|
|
|
526
526
|
'in-item': inItem,
|
|
527
527
|
'in-item-color': hostContext('ion-item.ion-color', this.el),
|
|
528
528
|
'input-disabled': disabled,
|
|
529
|
-
}) }, h("label", { key: '
|
|
529
|
+
}) }, h("label", { key: '049adad1bdcb64ee416e420b523e222cb9c0d3df', class: "input-wrapper", htmlFor: inputId, onClick: this.onLabelClick }, this.renderLabelContainer(), h("div", { key: '00414cbb2adcc565d52dd5ba3af0280df3ba2c9c', class: "native-wrapper", onClick: this.onLabelClick }, h("slot", { key: 'a09366b057322372e48daeb5a70619e5603b6972', name: "start" }), h("input", Object.assign({ key: '8bd259fca7c30885df0bef6fa37a3c6516b7533e', class: "native-input", ref: (input) => (this.nativeInput = input), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, multiple: this.multiple, name: this.name, pattern: this.pattern, placeholder: this.placeholder || '', readOnly: readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, type: this.type, value: value, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeydown, onCompositionstart: this.onCompositionStart, onCompositionend: this.onCompositionEnd, "aria-describedby": this.getHintTextID(), "aria-invalid": this.isInvalid ? 'true' : undefined }, this.inheritedAttributes)), this.clearInput && !readonly && !disabled && (h("button", { key: '9655b387bf51a371877ab40879c9cdc953a8019f', "aria-label": "reset", type: "button", class: "input-clear-icon", onPointerDown: (ev) => {
|
|
530
530
|
/**
|
|
531
531
|
* This prevents mobile browsers from
|
|
532
532
|
* blurring the input when the clear
|
|
533
533
|
* button is activated.
|
|
534
534
|
*/
|
|
535
535
|
ev.preventDefault();
|
|
536
|
-
}, onClick: this.clearTextInput }, h("ion-icon", { key: '
|
|
536
|
+
}, onClick: this.clearTextInput }, h("ion-icon", { key: '834670e725e0140069eead8ff6c7a63d87f0aac0', "aria-hidden": "true", icon: clearIconData }))), h("slot", { key: 'e41136ffef6bd8f8fb4c8480bf6dfaa3b61dc286', name: "end" })), shouldRenderHighlight && h("div", { key: '517a556a9748600af6c258c9f668e7b10a798427', class: "input-highlight" })), this.renderBottomContent()));
|
|
537
537
|
}
|
|
538
538
|
get el() { return getElement(this); }
|
|
539
539
|
static get watchers() { return {
|
|
@@ -45,12 +45,12 @@ const ItemOption = class {
|
|
|
45
45
|
href: this.href,
|
|
46
46
|
target: this.target,
|
|
47
47
|
};
|
|
48
|
-
return (h(Host, { key: '
|
|
48
|
+
return (h(Host, { key: '058310ac361612c16f2ef70c74279ba7c24128c5', onClick: this.onClick, class: createColorClasses(this.color, {
|
|
49
49
|
[mode]: true,
|
|
50
50
|
'item-option-disabled': disabled,
|
|
51
51
|
'item-option-expandable': expandable,
|
|
52
52
|
'ion-activatable': true,
|
|
53
|
-
}) }, h(TagType, Object.assign({ key: '
|
|
53
|
+
}) }, h(TagType, Object.assign({ key: '045052656ab652bec065d421950fe9ea00dc1141' }, attrs, { class: "button-native", part: "native", disabled: disabled }), h("span", { key: '988b9166c0dda3c822a99ceace4c105339b2465b', class: "button-inner" }, h("slot", { key: '8050b870ada6b09283f8acbcbb6d2bd1c76508b3', name: "top" }), h("div", { key: 'a206e7b09e660c878ce3c5b61d018e8cdd89dc55', class: "horizontal-wrapper" }, h("slot", { key: '394e5e4ce14cd19b5d5eafca29bb9f971f5f0741', name: "start" }), h("slot", { key: 'dd4c3a1bee7622df40a3d8f2a298045b772f1600', name: "icon-only" }), h("slot", { key: '318f3ec97b722c5e7df1a78b1e0439f919d0aacc' }), h("slot", { key: 'fff6a9a602cf7bd698528982f91742a2d36ea245', name: "end" })), h("slot", { key: '26b4bb155701d8080b486dbad7bb9a6d2e35182c', name: "bottom" })), mode === 'md' && h("ion-ripple-effect", { key: '152b74643bf0f5725c39bfdbb940f0f32ec83d58' }))));
|
|
54
54
|
}
|
|
55
55
|
get el() { return getElement(this); }
|
|
56
56
|
};
|
|
@@ -82,7 +82,7 @@ const ItemOptions = class {
|
|
|
82
82
|
render() {
|
|
83
83
|
const mode = getIonMode(this);
|
|
84
84
|
const isEnd = isEndSide(this.side);
|
|
85
|
-
return (h(Host, { key: '
|
|
85
|
+
return (h(Host, { key: '7b4b93984182222c64c7a2a22a18e52ac19e3049', class: {
|
|
86
86
|
[mode]: true,
|
|
87
87
|
// Used internally for styling
|
|
88
88
|
[`item-options-${mode}`]: true,
|
|
@@ -493,7 +493,7 @@ const ItemSliding = class {
|
|
|
493
493
|
}
|
|
494
494
|
render() {
|
|
495
495
|
const mode = getIonMode(this);
|
|
496
|
-
return (h(Host, { key: '
|
|
496
|
+
return (h(Host, { key: '8fd81d74701402294a48b79c56d6eceadafd4881', class: {
|
|
497
497
|
[mode]: true,
|
|
498
498
|
'item-sliding-active-slide': this.state !== 2 /* SlidingState.Disabled */,
|
|
499
499
|
'item-sliding-active-options-end': (this.state & 8 /* SlidingState.End */) !== 0,
|
|
@@ -272,11 +272,11 @@ const ItemDivider = class {
|
|
|
272
272
|
}
|
|
273
273
|
render() {
|
|
274
274
|
const mode = getIonMode(this);
|
|
275
|
-
return (h(Host, { key: '
|
|
275
|
+
return (h(Host, { key: 'ee8b2c8d5e415c0d8badf84fa7670932da4e809e', class: createColorClasses(this.color, {
|
|
276
276
|
[mode]: true,
|
|
277
277
|
'item-divider-sticky': this.sticky,
|
|
278
278
|
item: true,
|
|
279
|
-
}) }, h("slot", { key: '
|
|
279
|
+
}) }, h("slot", { key: 'a1b7bbb1a008b0a56887f130d166931033801746', name: "start" }), h("div", { key: '9d572da46ab616bdf881098e96aa6796a249507f', class: "item-divider-inner" }, h("div", { key: 'a57a2c17093b74b9e4f8fd2778230a440b293aa1', class: "item-divider-wrapper" }, h("slot", { key: 'ef15ebf58f3acd4b4d1b7c51144e26c3759dba49' })), h("slot", { key: '1787c2400534301fe72b8ec213d0ce1e8f75b65a', name: "end" }))));
|
|
280
280
|
}
|
|
281
281
|
get el() { return getElement(this); }
|
|
282
282
|
};
|
|
@@ -295,7 +295,7 @@ const ItemGroup = class {
|
|
|
295
295
|
}
|
|
296
296
|
render() {
|
|
297
297
|
const mode = getIonMode(this);
|
|
298
|
-
return (h(Host, { key: '
|
|
298
|
+
return (h(Host, { key: 'f1743af1d075682f63fae3802c5c5bf050507563', role: "group", class: {
|
|
299
299
|
[mode]: true,
|
|
300
300
|
// Used internally for styling
|
|
301
301
|
[`item-group-${mode}`]: true,
|
|
@@ -361,13 +361,13 @@ const Label = class {
|
|
|
361
361
|
render() {
|
|
362
362
|
const position = this.position;
|
|
363
363
|
const mode = getIonMode(this);
|
|
364
|
-
return (h(Host, { key: '
|
|
364
|
+
return (h(Host, { key: '684ddfa719e34d743489ff05a0df067829257c73', class: createColorClasses(this.color, {
|
|
365
365
|
[mode]: true,
|
|
366
366
|
'in-item-color': hostContext('ion-item.ion-color', this.el),
|
|
367
367
|
[`label-${position}`]: position !== undefined,
|
|
368
368
|
[`label-no-animate`]: this.noAnimate,
|
|
369
369
|
'label-rtl': document.dir === 'rtl',
|
|
370
|
-
}) }, h("slot", { key: '
|
|
370
|
+
}) }, h("slot", { key: '4aace3e2b36250e832c44f63bea21116d77220fb' })));
|
|
371
371
|
}
|
|
372
372
|
get el() { return getElement(this); }
|
|
373
373
|
static get watchers() { return {
|
|
@@ -408,7 +408,7 @@ const List = class {
|
|
|
408
408
|
render() {
|
|
409
409
|
const mode = getIonMode(this);
|
|
410
410
|
const { lines, inset } = this;
|
|
411
|
-
return (h(Host, { key: '
|
|
411
|
+
return (h(Host, { key: '76580117b59d26e355e89f49b385fa8db05026a2', role: "list", class: {
|
|
412
412
|
[mode]: true,
|
|
413
413
|
// Used internally for styling
|
|
414
414
|
[`list-${mode}`]: true,
|
|
@@ -435,10 +435,10 @@ const ListHeader = class {
|
|
|
435
435
|
render() {
|
|
436
436
|
const { lines } = this;
|
|
437
437
|
const mode = getIonMode(this);
|
|
438
|
-
return (h(Host, { key: '
|
|
438
|
+
return (h(Host, { key: '2e529021279761b2b2889885437f619b0e8f71c4', class: createColorClasses(this.color, {
|
|
439
439
|
[mode]: true,
|
|
440
440
|
[`list-header-lines-${lines}`]: lines !== undefined,
|
|
441
|
-
}) }, h("div", { key: '
|
|
441
|
+
}) }, h("div", { key: '9a6a11b0db015df79374f6489a40b959bc80b3e4', class: "list-header-inner" }, h("slot", { key: 'ef347fc6afb47850797e2e4d1aeefcd6a318f789' }))));
|
|
442
442
|
}
|
|
443
443
|
};
|
|
444
444
|
ListHeader.style = {
|
|
@@ -456,9 +456,9 @@ const Note = class {
|
|
|
456
456
|
}
|
|
457
457
|
render() {
|
|
458
458
|
const mode = getIonMode(this);
|
|
459
|
-
return (h(Host, { key: '
|
|
459
|
+
return (h(Host, { key: 'b86a6acc9274df6528d224d4c11ab826a0f84dbc', class: createColorClasses(this.color, {
|
|
460
460
|
[mode]: true,
|
|
461
|
-
}) }, h("slot", { key: '
|
|
461
|
+
}) }, h("slot", { key: '5de76567ed7713827cd277a42db102faf34190c8' })));
|
|
462
462
|
}
|
|
463
463
|
};
|
|
464
464
|
Note.style = {
|
|
@@ -493,11 +493,11 @@ const SkeletonText = class {
|
|
|
493
493
|
const animated = this.animated && config.getBoolean('animated', true);
|
|
494
494
|
const inMedia = hostContext('ion-avatar', this.el) || hostContext('ion-thumbnail', this.el);
|
|
495
495
|
const mode = getIonMode(this);
|
|
496
|
-
return (h(Host, { key: '
|
|
496
|
+
return (h(Host, { key: 'cb8da9aba121811b9a4ffdae60ed88105897cb3c', class: {
|
|
497
497
|
[mode]: true,
|
|
498
498
|
'skeleton-text-animated': animated,
|
|
499
499
|
'in-media': inMedia,
|
|
500
|
-
} }, h("span", { key: '
|
|
500
|
+
} }, h("span", { key: '5379deee3c76d46d615be0cba14b4f60129ffa25' }, "\u00A0")));
|
|
501
501
|
}
|
|
502
502
|
get el() { return getElement(this); }
|
|
503
503
|
};
|
|
@@ -276,9 +276,9 @@ const Loading = class {
|
|
|
276
276
|
* Otherwise, don't set aria-labelledby.
|
|
277
277
|
*/
|
|
278
278
|
const ariaLabelledBy = message !== undefined ? msgId : null;
|
|
279
|
-
return (h(Host, Object.assign({ key: '
|
|
279
|
+
return (h(Host, Object.assign({ key: 'f86ddbc600cb5c396b7de38fb5f49625388c3c3f', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
|
|
280
280
|
zIndex: `${40000 + this.overlayIndex}`,
|
|
281
|
-
}, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), h("ion-backdrop", { key: '
|
|
281
|
+
}, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), h("ion-backdrop", { key: 'b53727aaddc37ef3c685fcc150c6d5193290a847', visible: this.showBackdrop, tappable: this.backdropDismiss }), h("div", { key: '4c61bede8e0a4e47daa6f1f9d0f364ef6aec0bc3', tabindex: "0", "aria-hidden": "true" }), h("div", { key: '84e51ceb07118f1eaeb757df28801c255496931b', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (h("div", { key: 'fc97f1912e0fc558b7c309a5bc084415f5f620b2', class: "loading-spinner" }, h("ion-spinner", { key: '6e186d856cd3f10f22c3e317ef00f31b4216459c', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), h("div", { key: 'dcbe9d9a619daa1c08174e73827bdabeb59dde92', tabindex: "0", "aria-hidden": "true" })));
|
|
282
282
|
}
|
|
283
283
|
get el() { return getElement(this); }
|
|
284
284
|
static get watchers() { return {
|
|
@@ -662,14 +662,14 @@ const Menu = class {
|
|
|
662
662
|
* the ionBackButton listener in the menu controller
|
|
663
663
|
* will handle closing the menu when Escape is pressed.
|
|
664
664
|
*/
|
|
665
|
-
return (h(Host, { key: '
|
|
665
|
+
return (h(Host, { key: '29ef73894e2795e4ce23e59888ffb87faf4dd543', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
|
|
666
666
|
[mode]: true,
|
|
667
667
|
[`menu-type-${type}`]: true,
|
|
668
668
|
'menu-enabled': !disabled,
|
|
669
669
|
[`menu-side-${side}`]: true,
|
|
670
670
|
'menu-pane-visible': isPaneVisible,
|
|
671
671
|
'split-pane-side': hostContext('ion-split-pane', el),
|
|
672
|
-
} }, h("div", { key: '
|
|
672
|
+
} }, h("div", { key: '22e44f7bd602ee0c96550f0dfc22ac81c0033ad6', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, h("slot", { key: '7bbef92fe03bb3ce4d3981eb8535aab449aab2fc' })), h("ion-backdrop", { key: '9ab8d5b61563e16b212c71c03869d4fc23a0400b', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
|
|
673
673
|
}
|
|
674
674
|
get el() { return getElement(this); }
|
|
675
675
|
static get watchers() { return {
|
|
@@ -747,7 +747,7 @@ const MenuButton = class {
|
|
|
747
747
|
type: this.type,
|
|
748
748
|
};
|
|
749
749
|
const ariaLabel = inheritedAttributes['aria-label'] || 'menu';
|
|
750
|
-
return (h(Host, { key: '
|
|
750
|
+
return (h(Host, { key: 'dcade732e366f0687d92cb9ce4065b78b0b41d24', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses(color, {
|
|
751
751
|
[mode]: true,
|
|
752
752
|
button: true, // ion-buttons target .button
|
|
753
753
|
'menu-button-hidden': hidden,
|
|
@@ -756,7 +756,7 @@ const MenuButton = class {
|
|
|
756
756
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
757
757
|
'ion-activatable': true,
|
|
758
758
|
'ion-focusable': true,
|
|
759
|
-
}) }, h("button", Object.assign({ key: '
|
|
759
|
+
}) }, h("button", Object.assign({ key: '7c4a449e239679376f38471d95fd602f9caec5f6' }, attrs, { disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }), h("span", { key: '8bb5bf453280a66109198c970b678ad800c7a8cf', class: "button-inner" }, h("slot", { key: '7f78b1e7a0695f2bd600d13ca81f50dd8b965726' }, h("ion-icon", { key: '9f67f5bb06b1f03a6e5df9ecbe23ebf69fb40756', part: "icon", icon: menuIcon, mode: mode, lazy: false, "aria-hidden": "true" }))), mode === 'md' && h("ion-ripple-effect", { key: '10be7145c614144e94c3cc0b92dc5ee4e1587fe6', type: "unbounded" }))));
|
|
760
760
|
}
|
|
761
761
|
get el() { return getElement(this); }
|
|
762
762
|
};
|
|
@@ -791,10 +791,10 @@ const MenuToggle = class {
|
|
|
791
791
|
render() {
|
|
792
792
|
const mode = getIonMode(this);
|
|
793
793
|
const hidden = this.autoHide && !this.visible;
|
|
794
|
-
return (h(Host, { key: '
|
|
794
|
+
return (h(Host, { key: '55135952f3a42cb5d21916dfb7b169d894b381e3', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
|
|
795
795
|
[mode]: true,
|
|
796
796
|
'menu-toggle-hidden': hidden,
|
|
797
|
-
} }, h("slot", { key: '
|
|
797
|
+
} }, h("slot", { key: 'e8ecb59a6ec075b07e2a1b8fcdf7df3dd9975a03' })));
|
|
798
798
|
}
|
|
799
799
|
};
|
|
800
800
|
MenuToggle.style = menuToggleCss;
|