@ionic/core 8.8.10 → 8.8.11-dev.11781186446.19d9a1cc
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-input.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-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-nQi4oKcG.js → p-B8U2xbtx.js} +1 -1
- package/components/p-BpCi7xHq.js +4 -0
- package/components/p-CHzfYZbv.js +4 -0
- package/components/{p-DDWp95gH.js → p-Ck2wcXbv.js} +1 -1
- package/components/{p-C2lKgrXx.js → p-DEBD4LvH.js} +1 -1
- package/components/p-DH50pr9O.js +4 -0
- package/components/{p-BSEgsdFI.js → p-DhkITZ-y.js} +1 -1
- package/components/p-DmpBvltk.js +4 -0
- package/components/{p-5bE_Wz4Y.js → p-DpV-p5Xs.js} +1 -1
- package/components/{p-Cfx4M1Bn.js → p-Dz74mwlk.js} +1 -1
- package/components/{p-BLmJ0zRm.js → p-XJWMAP8m.js} +1 -1
- package/components/p-djQLE88P.js +4 -0
- package/components/{p-B60hm8Qv.js → p-r0aq7dpt.js} +1 -1
- package/components/{p-rCa2eL0j.js → p-wk2QqrAo.js} +1 -1
- package/dist/cjs/index.cjs.js +1 -2
- package/dist/cjs/ion-action-sheet.cjs.entry.js +8 -4
- package/dist/cjs/ion-alert.cjs.entry.js +7 -3
- package/dist/cjs/ion-app_8.cjs.entry.js +23 -9
- 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_3.cjs.entry.js → ion-datetime.cjs.entry.js} +1 -639
- package/dist/cjs/ion-input.cjs.entry.js +4 -4
- package/dist/cjs/ion-item_8.cjs.entry.js +2 -2
- package/dist/cjs/ion-loading.cjs.entry.js +7 -3
- package/dist/cjs/ion-menu_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-modal.cjs.entry.js +9 -5
- package/dist/cjs/ion-popover.cjs.entry.js +7 -3
- 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 +5 -5
- 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 +36 -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-TbKsuC-K.js → overlays-DSmSrd_4.js} +26 -7
- package/dist/collection/collection-manifest.json +5 -9
- package/dist/collection/components/action-sheet/action-sheet.js +8 -4
- package/dist/collection/components/alert/alert.js +7 -3
- package/dist/collection/components/input/input.js +8 -8
- package/dist/collection/components/loading/loading.js +7 -3
- package/dist/collection/components/modal/modal.js +9 -5
- package/dist/collection/components/popover/popover.js +7 -3
- 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 +38 -5
- package/dist/collection/components/row/row.js +1 -1
- package/dist/collection/components/searchbar/searchbar.js +9 -9
- 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 +33 -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 +25 -6
- package/dist/docs.json +247 -1170
- package/dist/esm/{index-DV3sJJW8.js → index-AlrZKoWR.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 +8 -4
- package/dist/esm/ion-alert.entry.js +7 -3
- package/dist/esm/ion-app_8.entry.js +23 -9
- 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_3.entry.js → ion-datetime.entry.js} +5 -641
- 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 +5 -5
- package/dist/esm/ion-item_8.entry.js +3 -3
- package/dist/esm/ion-loading.entry.js +7 -3
- package/dist/esm/ion-menu_3.entry.js +2 -2
- package/dist/esm/ion-modal.entry.js +9 -5
- package/dist/esm/ion-popover.entry.js +7 -3
- 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 +6 -6
- 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 +38 -7
- 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-TbiM4mdr.js → overlays-DLNOHWNc.js} +26 -7
- package/dist/html.html-data.json +6 -77
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/{p-aa5d6b8f.entry.js → p-03aa786d.entry.js} +1 -1
- package/dist/ionic/{p-8fce95d5.entry.js → p-14095ba5.entry.js} +1 -1
- package/dist/ionic/{p-3a126bca.entry.js → p-259d0d98.entry.js} +1 -1
- package/dist/ionic/{p-e847a888.entry.js → p-2a6d6565.entry.js} +1 -1
- package/dist/ionic/{p-fabcce6c.entry.js → p-341032b3.entry.js} +1 -1
- package/dist/ionic/{p-a21add2f.entry.js → p-441fbb13.entry.js} +1 -1
- package/dist/ionic/{p-3a7d1e91.entry.js → p-4502a274.entry.js} +1 -1
- package/dist/ionic/p-4621c387.entry.js +4 -0
- package/dist/ionic/p-4bb3eb60.entry.js +4 -0
- package/dist/ionic/{p-874b4bd8.entry.js → p-51cd1643.entry.js} +1 -1
- package/dist/ionic/p-5c3ec490.entry.js +4 -0
- package/dist/ionic/{p-3ae5f277.entry.js → p-627fabd9.entry.js} +1 -1
- package/dist/ionic/{p-e0be05c5.entry.js → p-629e4703.entry.js} +1 -1
- package/dist/ionic/{p-5d1da0a2.entry.js → p-76e92a84.entry.js} +1 -1
- package/dist/ionic/{p-9f1103ce.entry.js → p-7a37b3ce.entry.js} +1 -1
- package/dist/ionic/p-7aed7726.entry.js +4 -0
- package/dist/ionic/p-7ebd980c.entry.js +4 -0
- package/dist/ionic/{p-3353c229.entry.js → p-80b44b3c.entry.js} +1 -1
- package/dist/ionic/p-8d624ee5.entry.js +4 -0
- package/dist/ionic/{p-390ca786.entry.js → p-9177f4ac.entry.js} +1 -1
- package/dist/ionic/p-944c8939.entry.js +4 -0
- package/dist/ionic/p-9c6a5a8d.entry.js +4 -0
- package/dist/ionic/{p-DV3sJJW8.js → p-AlrZKoWR.js} +1 -1
- package/dist/ionic/p-Cg5-OQYy.js +4 -0
- package/dist/ionic/p-a2e51c5d.entry.js +4 -0
- package/dist/ionic/{p-4858af1f.entry.js → p-a5213260.entry.js} +1 -1
- package/dist/ionic/{p-37e720da.entry.js → p-a7628bc7.entry.js} +1 -1
- package/dist/ionic/{p-ef4c3bee.entry.js → p-b1599fca.entry.js} +1 -1
- package/dist/ionic/p-b16be471.entry.js +4 -0
- package/dist/ionic/{p-84d5ce05.entry.js → p-b9ac1fe0.entry.js} +1 -1
- package/dist/ionic/{p-94f2a736.entry.js → p-c93553d2.entry.js} +1 -1
- package/dist/ionic/{p-75dc25ba.entry.js → p-d2c7f046.entry.js} +1 -1
- package/dist/ionic/{p-c4d8641b.entry.js → p-d8387b99.entry.js} +1 -1
- package/dist/ionic/p-d8ac9eea.entry.js +4 -0
- package/dist/ionic/{p-9a65ac7f.entry.js → p-db1b6738.entry.js} +1 -1
- package/dist/ionic/p-ed797c72.entry.js +4 -0
- package/dist/ionic/{p-8eb8ee76.entry.js → p-ef93ca92.entry.js} +1 -1
- package/dist/ionic/p-f09f9642.entry.js +4 -0
- package/dist/ionic/p-f1c06f82.entry.js +4 -0
- package/dist/ionic/{p-0fa9c382.entry.js → p-fe4aa1db.entry.js} +1 -1
- package/dist/types/components/input/input.d.ts +1 -1
- package/dist/types/components/router-outlet/router-outlet.d.ts +7 -0
- package/dist/types/components/searchbar/searchbar.d.ts +1 -1
- package/dist/types/components/select/select.d.ts +1 -0
- package/dist/types/components.d.ts +19 -282
- package/dist/types/index.d.ts +1 -1
- package/dist/types/interface.d.ts +0 -1
- package/dist/types/utils/config.d.ts +0 -8
- package/dist/types/utils/overlays.d.ts +11 -9
- package/hydrate/index.js +202 -795
- package/hydrate/index.mjs +202 -795
- package/package.json +37 -5
- package/components/ion-picker-legacy-column.d.ts +0 -11
- package/components/ion-picker-legacy-column.js +0 -4
- package/components/ion-picker-legacy.d.ts +0 -11
- package/components/ion-picker-legacy.js +0 -4
- package/components/p-0NRupjzW.js +0 -4
- package/components/p-Bth-EzJ0.js +0 -4
- package/components/p-CU5rbWAW.js +0 -4
- package/components/p-W9CZ2mWX.js +0 -4
- package/components/p-dhLYXa7A.js +0 -4
- package/components/p-uVRyUM3z.js +0 -4
- package/dist/collection/components/picker-legacy/animations/ios.enter.js +0 -27
- package/dist/collection/components/picker-legacy/animations/ios.leave.js +0 -23
- package/dist/collection/components/picker-legacy/picker-interface.js +0 -1
- package/dist/collection/components/picker-legacy/picker.ios.css +0 -300
- package/dist/collection/components/picker-legacy/picker.js +0 -890
- package/dist/collection/components/picker-legacy/picker.md.css +0 -287
- package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -231
- package/dist/collection/components/picker-legacy-column/picker-column.js +0 -422
- package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -222
- package/dist/collection/components/picker-legacy-column/test/test.utils.js +0 -43
- package/dist/ionic/p-00dbb17e.entry.js +0 -4
- package/dist/ionic/p-01f81ea5.entry.js +0 -4
- package/dist/ionic/p-0d005398.entry.js +0 -4
- package/dist/ionic/p-27d30585.entry.js +0 -4
- package/dist/ionic/p-2bb2cb18.entry.js +0 -4
- package/dist/ionic/p-2f55dc1a.entry.js +0 -4
- package/dist/ionic/p-30bf9737.entry.js +0 -4
- package/dist/ionic/p-3a541154.entry.js +0 -4
- package/dist/ionic/p-485fda23.entry.js +0 -4
- package/dist/ionic/p-4baa5b82.entry.js +0 -4
- package/dist/ionic/p-4dc1c33c.entry.js +0 -4
- package/dist/ionic/p-5fc7e542.entry.js +0 -4
- package/dist/ionic/p-e686695b.entry.js +0 -4
- package/dist/ionic/p-ec090e0a.entry.js +0 -4
- package/dist/ionic/p-xOfi7-Zn.js +0 -4
- package/dist/types/components/picker-legacy/animations/ios.enter.d.ts +0 -5
- package/dist/types/components/picker-legacy/animations/ios.leave.d.ts +0 -5
- package/dist/types/components/picker-legacy/picker-interface.d.ts +0 -52
- package/dist/types/components/picker-legacy/picker.d.ts +0 -158
- package/dist/types/components/picker-legacy-column/picker-column.d.ts +0 -46
- package/dist/types/components/picker-legacy-column/test/test.utils.d.ts +0 -9
|
@@ -35,7 +35,7 @@ export class Searchbar {
|
|
|
35
35
|
/**
|
|
36
36
|
* Set the input's autocorrect property.
|
|
37
37
|
*/
|
|
38
|
-
this.autocorrect =
|
|
38
|
+
this.autocorrect = false;
|
|
39
39
|
/**
|
|
40
40
|
* Set the cancel button icon. Only applies to `md` mode.
|
|
41
41
|
* Defaults to `arrow-back-sharp`.
|
|
@@ -438,8 +438,8 @@ export class Searchbar {
|
|
|
438
438
|
const clearIcon = this.clearIcon || (mode === 'ios' ? closeCircle : closeSharp);
|
|
439
439
|
const searchIcon = this.searchIcon || (mode === 'ios' ? searchOutline : searchSharp);
|
|
440
440
|
const shouldShowCancelButton = this.shouldShowCancelButton();
|
|
441
|
-
const cancelButton = this.showCancelButton !== 'never' && (h("button", { key: '
|
|
442
|
-
return (h(Host, { key: '
|
|
441
|
+
const cancelButton = this.showCancelButton !== 'never' && (h("button", { key: '870c9284441fdf431056ac944ac93afa7cb1ee96', "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" }, h("div", { key: '730e33f44c5ec6eee898ea6612fdba337de354e3', "aria-hidden": "true" }, mode === 'md' ? (h("ion-icon", { "aria-hidden": "true", mode: mode, icon: this.cancelButtonIcon, lazy: false })) : (cancelButtonText))));
|
|
442
|
+
return (h(Host, { key: 'd898b9f9768ec7119a3ad4be8350d8a3cfb32ba6', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses(this.color, {
|
|
443
443
|
[mode]: true,
|
|
444
444
|
'searchbar-animated': animated,
|
|
445
445
|
'searchbar-disabled': this.disabled,
|
|
@@ -449,14 +449,14 @@ export class Searchbar {
|
|
|
449
449
|
'searchbar-has-focus': this.focused,
|
|
450
450
|
'searchbar-should-show-clear': this.shouldShowClearButton(),
|
|
451
451
|
'searchbar-should-show-cancel': this.shouldShowCancelButton(),
|
|
452
|
-
}) }, h("div", { key: '
|
|
452
|
+
}) }, h("div", { key: 'a0b49cce6241b7e79834de7cbb1d1076f9d42a21', class: "searchbar-input-container" }, h("input", Object.assign({ key: '8ad5e659f8ed675fa5559f9e5dfcdf99cfcb8bcf', "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 ? 'on' : 'off', spellcheck: this.spellcheck }, this.inheritedAttributes)), mode === 'md' && cancelButton, h("ion-icon", { key: '09f26831a519bb6639115f827b2b8985ae51e4b9', "aria-hidden": "true", mode: mode, icon: searchIcon, lazy: false, class: "searchbar-search-icon" }), h("button", { key: 'd70ccda51cb79e51577648fcca3b274c6fa20a4f', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
|
|
453
453
|
/**
|
|
454
454
|
* This prevents mobile browsers from
|
|
455
455
|
* blurring the input when the clear
|
|
456
456
|
* button is activated.
|
|
457
457
|
*/
|
|
458
458
|
ev.preventDefault();
|
|
459
|
-
}, onClick: () => this.onClearInput(true) }, h("ion-icon", { key: '
|
|
459
|
+
}, onClick: () => this.onClearInput(true) }, h("ion-icon", { key: '428dcb1c0ffef947e24771b060288da47e67b6bd', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
|
|
460
460
|
}
|
|
461
461
|
static get is() { return "ion-searchbar"; }
|
|
462
462
|
static get encapsulation() { return "scoped"; }
|
|
@@ -568,11 +568,11 @@ export class Searchbar {
|
|
|
568
568
|
"defaultValue": "'off'"
|
|
569
569
|
},
|
|
570
570
|
"autocorrect": {
|
|
571
|
-
"type": "
|
|
571
|
+
"type": "boolean",
|
|
572
572
|
"mutable": false,
|
|
573
573
|
"complexType": {
|
|
574
|
-
"original": "
|
|
575
|
-
"resolved": "
|
|
574
|
+
"original": "boolean",
|
|
575
|
+
"resolved": "boolean",
|
|
576
576
|
"references": {}
|
|
577
577
|
},
|
|
578
578
|
"required": false,
|
|
@@ -585,7 +585,7 @@ export class Searchbar {
|
|
|
585
585
|
"setter": false,
|
|
586
586
|
"reflect": false,
|
|
587
587
|
"attribute": "autocorrect",
|
|
588
|
-
"defaultValue": "
|
|
588
|
+
"defaultValue": "false"
|
|
589
589
|
},
|
|
590
590
|
"cancelButtonIcon": {
|
|
591
591
|
"type": "string",
|
|
@@ -547,14 +547,14 @@ export class Segment {
|
|
|
547
547
|
}
|
|
548
548
|
render() {
|
|
549
549
|
const mode = getIonMode(this);
|
|
550
|
-
return (h(Host, { key: '
|
|
550
|
+
return (h(Host, { key: 'bb626072e73f09c3433e1a769e09789a00822d8f', role: "tablist", onClick: this.onClick, class: createColorClasses(this.color, {
|
|
551
551
|
[mode]: true,
|
|
552
552
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
553
553
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
554
554
|
'segment-activated': this.activated,
|
|
555
555
|
'segment-disabled': this.disabled,
|
|
556
556
|
'segment-scrollable': this.scrollable,
|
|
557
|
-
}) }, h("slot", { key: '
|
|
557
|
+
}) }, h("slot", { key: '652d5037c2c2dee4d47a5710b1d150e691202d25', onSlotchange: this.onSlottedItemsChange })));
|
|
558
558
|
}
|
|
559
559
|
static get is() { return "ion-segment"; }
|
|
560
560
|
static get encapsulation() { return "shadow"; }
|
|
@@ -111,7 +111,7 @@ export class SegmentButton {
|
|
|
111
111
|
const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
|
|
112
112
|
const mode = getIonMode(this);
|
|
113
113
|
const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
|
|
114
|
-
return (h(Host, { key: '
|
|
114
|
+
return (h(Host, { key: '792f621c36260b1fceff2b4ec4fa95d98d51d46b', class: {
|
|
115
115
|
[mode]: true,
|
|
116
116
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
117
117
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
@@ -127,7 +127,7 @@ export class SegmentButton {
|
|
|
127
127
|
'ion-activatable': true,
|
|
128
128
|
'ion-activatable-instant': true,
|
|
129
129
|
'ion-focusable': true,
|
|
130
|
-
} }, h("button", Object.assign({ key: '
|
|
130
|
+
} }, h("button", Object.assign({ key: '860698be6ceb8f08c0ce3d16ba82d4bb56adf030', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), h("span", { key: 'e903a2642ff46797878a941887b5c596d52fd3a3', class: "button-inner" }, h("slot", { key: '5fc6b842ecb7f0ab8df23b344bf6714f38dda89a' })), mode === 'md' && h("ion-ripple-effect", { key: '710aaf6e4fa2b6cb15897a883e88dec17ef3829f' })), h("div", { key: 'a7b036cba32420e9eb3f2d16487df0519ecc5289', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, h("div", { key: 'a0a5f49ea7f2ecab8014f4f9ca473a27db8348b6', part: "indicator-background", class: "segment-button-indicator-background" }))));
|
|
131
131
|
}
|
|
132
132
|
static get is() { return "ion-segment-button"; }
|
|
133
133
|
static get encapsulation() { return "shadow"; }
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import { Host, h } from "@stencil/core";
|
|
5
5
|
export class SegmentContent {
|
|
6
6
|
render() {
|
|
7
|
-
return (h(Host, { key: '
|
|
7
|
+
return (h(Host, { key: 'ef39f29c444177c3b083cd35680ba891e4bb6a2a' }, h("slot", { key: '51f9dd9ca084ddd928b376aa9d716509669c32b2' })));
|
|
8
8
|
}
|
|
9
9
|
static get is() { return "ion-segment-content"; }
|
|
10
10
|
static get encapsulation() { return "shadow"; }
|
|
@@ -103,11 +103,11 @@ export class SegmentView {
|
|
|
103
103
|
}
|
|
104
104
|
render() {
|
|
105
105
|
const { disabled, isManualScroll, swipeGesture } = this;
|
|
106
|
-
return (h(Host, { key: '
|
|
106
|
+
return (h(Host, { key: 'a6c6ac0232c4bb6f2a954b3de7993019d71f423a', class: {
|
|
107
107
|
'segment-view-disabled': disabled,
|
|
108
108
|
'segment-view-scroll-disabled': isManualScroll === false,
|
|
109
109
|
'segment-view-swipe-disabled': swipeGesture === false,
|
|
110
|
-
} }, h("slot", { key: '
|
|
110
|
+
} }, h("slot", { key: '386305be2a75069c79def12005d9f6b49276763f' })));
|
|
111
111
|
}
|
|
112
112
|
static get is() { return "ion-segment-view"; }
|
|
113
113
|
static get encapsulation() { return "shadow"; }
|
|
@@ -162,9 +162,40 @@ export class Select {
|
|
|
162
162
|
this.emitStyle();
|
|
163
163
|
}
|
|
164
164
|
setValue(value) {
|
|
165
|
+
if (this.isValueEqual(this.value, value)) {
|
|
166
|
+
return;
|
|
167
|
+
}
|
|
165
168
|
this.value = value;
|
|
166
169
|
this.ionChange.emit({ value });
|
|
167
170
|
}
|
|
171
|
+
isValueEqual(currentValue, newValue) {
|
|
172
|
+
if (this.multiple) {
|
|
173
|
+
const currentArr = Array.isArray(currentValue) ? currentValue : [];
|
|
174
|
+
const newArr = Array.isArray(newValue) ? newValue : [];
|
|
175
|
+
if (currentArr.length !== newArr.length) {
|
|
176
|
+
return false;
|
|
177
|
+
}
|
|
178
|
+
// Multiset compare: each new value must match a distinct current value.
|
|
179
|
+
// A plain `every(isOptionSelected)` would accept ['a','a'] as equal to
|
|
180
|
+
// ['a','b'] when both 'a' and 'b' map to options whose values overlap.
|
|
181
|
+
const remaining = currentArr.slice();
|
|
182
|
+
return newArr.every((val) => {
|
|
183
|
+
const idx = remaining.findIndex((c) => compareOptions(c, val, this.compareWith));
|
|
184
|
+
if (idx === -1) {
|
|
185
|
+
return false;
|
|
186
|
+
}
|
|
187
|
+
remaining.splice(idx, 1);
|
|
188
|
+
return true;
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
if (currentValue == null && newValue == null) {
|
|
192
|
+
return true;
|
|
193
|
+
}
|
|
194
|
+
if (currentValue == null || newValue == null) {
|
|
195
|
+
return false;
|
|
196
|
+
}
|
|
197
|
+
return compareOptions(currentValue, newValue, this.compareWith);
|
|
198
|
+
}
|
|
168
199
|
async connectedCallback() {
|
|
169
200
|
const { el } = this;
|
|
170
201
|
this.notchController = createNotchController(el, () => this.notchSpacerEl, () => this.labelSlot);
|
|
@@ -837,7 +868,7 @@ export class Select {
|
|
|
837
868
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
838
869
|
*/
|
|
839
870
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
|
|
840
|
-
return (h(Host, { key: '
|
|
871
|
+
return (h(Host, { key: '2c141ef1b6983b464118e8ed192739dfca9d095a', onClick: this.onClick, class: createColorClasses(this.color, {
|
|
841
872
|
[mode]: true,
|
|
842
873
|
'in-item': inItem,
|
|
843
874
|
'in-item-color': hostContext('ion-item.ion-color', el),
|
|
@@ -855,7 +886,7 @@ export class Select {
|
|
|
855
886
|
[`select-justify-${justify}`]: justifyEnabled,
|
|
856
887
|
[`select-shape-${shape}`]: shape !== undefined,
|
|
857
888
|
[`select-label-placement-${labelPlacement}`]: true,
|
|
858
|
-
}) }, h("label", { key: '
|
|
889
|
+
}) }, h("label", { key: 'fa1889b325387da10d1e5fa865aef128bc31aee6', class: "select-wrapper", id: "select-label", onClick: this.onLabelClick, part: "wrapper" }, this.renderLabelContainer(), h("div", { key: 'e31f4ae38af01dbe3a7551e9e5dca2650ae42ef5', class: "select-wrapper-inner", part: "inner" }, h("slot", { key: '623916631f44446fcf2c1df64788ce530964afea', name: "start" }), h("div", { key: 'cbd2298a7c6666ce6b4443b3967195f96558861c', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), h("slot", { key: 'ee8c2a236c7f120988f5bab17397204f1b374b57', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && h("div", { key: '951566d0da3aea0be4921b2951207765b089a7f3', class: "select-highlight" })), this.renderBottomContent()));
|
|
859
890
|
}
|
|
860
891
|
static get is() { return "ion-select"; }
|
|
861
892
|
static get encapsulation() { return "shadow"; }
|
|
@@ -90,7 +90,7 @@ export class SelectModal {
|
|
|
90
90
|
} }, option.text))));
|
|
91
91
|
}
|
|
92
92
|
render() {
|
|
93
|
-
return (h(Host, { key: '
|
|
93
|
+
return (h(Host, { key: '36fe925fe98356858630325abc9ab71ef25dfb46', class: getIonMode(this) }, h("ion-header", { key: '16d89db1284d7080b4ead5f4a4a0bac57f264f62' }, h("ion-toolbar", { key: 'e16c889d9c7b5edf3b26a7cca1443ec5520e69e0' }, this.header !== undefined && h("ion-title", { key: '269df2e45a3abf3fe7518e8a34b0bab749bdea14' }, this.header), h("ion-buttons", { key: 'd8e218821e085424e52f86ef6ede2c5fb568dc82', slot: "end" }, h("ion-button", { key: '26c99660d4f5ec6334da56ad5712bfc79f80d0e2', onClick: () => this.closeModal() }, this.cancelText)))), h("ion-content", { key: '455fb684edae7d6754ef4882c1221956f7b4d29b' }, h("ion-list", { key: '3817a9deb1881a8c0d165b21940890bd628b3614' }, this.multiple === true ? this.renderCheckboxOptions() : this.renderRadioOptions()))));
|
|
94
94
|
}
|
|
95
95
|
static get is() { return "ion-select-modal"; }
|
|
96
96
|
static get encapsulation() { return "scoped"; }
|
|
@@ -12,7 +12,7 @@ export class SelectOption {
|
|
|
12
12
|
this.disabled = false;
|
|
13
13
|
}
|
|
14
14
|
render() {
|
|
15
|
-
return h(Host, { key: '
|
|
15
|
+
return h(Host, { key: '1fc1737fbb29dcb62638149b21620cbdf2f00dbc', role: "option", id: this.inputId, class: getIonMode(this) });
|
|
16
16
|
}
|
|
17
17
|
static get is() { return "ion-select-option"; }
|
|
18
18
|
static get encapsulation() { return "shadow"; }
|
|
@@ -112,7 +112,7 @@ export class SelectPopover {
|
|
|
112
112
|
render() {
|
|
113
113
|
const { header, message, options, subHeader } = this;
|
|
114
114
|
const hasSubHeaderOrMessage = subHeader !== undefined || message !== undefined;
|
|
115
|
-
return (h(Host, { key: '
|
|
115
|
+
return (h(Host, { key: '81783ad099ad52b3e035efa18e5a23be766faf7b', class: getIonMode(this) }, h("ion-list", { key: '319171787e9c2228d1d5a0133b2f5e0998644516' }, header !== undefined && h("ion-list-header", { key: '09a0fdbe2807c270b9abdb908965f72c4838030c' }, header), hasSubHeaderOrMessage && (h("ion-item", { key: 'ede19cb8e121fd14a2335fcb81cc59b9a102eac5' }, h("ion-label", { key: '6b98c0f132bc6161299b22c0e56092f85b7b0095', class: "ion-text-wrap" }, subHeader !== undefined && h("h3", { key: '8053e175eb36d7b8f52df1f93cee48ee0794857e' }, subHeader), message !== undefined && h("p", { key: '508673abcda7444ed8f8c828b5418dd48ef86b8e' }, message)))), this.renderOptions(options))));
|
|
116
116
|
}
|
|
117
117
|
static get is() { return "ion-select-popover"; }
|
|
118
118
|
static get encapsulation() { return "scoped"; }
|
|
@@ -28,11 +28,11 @@ export class SkeletonText {
|
|
|
28
28
|
const animated = this.animated && config.getBoolean('animated', true);
|
|
29
29
|
const inMedia = hostContext('ion-avatar', this.el) || hostContext('ion-thumbnail', this.el);
|
|
30
30
|
const mode = getIonMode(this);
|
|
31
|
-
return (h(Host, { key: '
|
|
31
|
+
return (h(Host, { key: '887d958d982345ce610730ab5c9ae35010430f75', class: {
|
|
32
32
|
[mode]: true,
|
|
33
33
|
'skeleton-text-animated': animated,
|
|
34
34
|
'in-media': inMedia,
|
|
35
|
-
} }, h("span", { key: '
|
|
35
|
+
} }, h("span", { key: 'a184f4b9780a2aada0a16729109ac81436e9c9e1' }, "\u00A0")));
|
|
36
36
|
}
|
|
37
37
|
static get is() { return "ion-skeleton-text"; }
|
|
38
38
|
static get encapsulation() { return "shadow"; }
|
|
@@ -39,7 +39,7 @@ export class Spinner {
|
|
|
39
39
|
svgs.push(buildLine(spinner, duration, i, spinner.lines));
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
|
-
return (h(Host, { key: '
|
|
42
|
+
return (h(Host, { key: 'c35ebd01186e860acb9cac260193f0836424fdf4', class: createColorClasses(self.color, {
|
|
43
43
|
[mode]: true,
|
|
44
44
|
[`spinner-${spinnerName}`]: true,
|
|
45
45
|
'spinner-paused': self.paused || config.getBoolean('_testing'),
|
|
@@ -126,12 +126,12 @@ export class SplitPane {
|
|
|
126
126
|
}
|
|
127
127
|
render() {
|
|
128
128
|
const mode = getIonMode(this);
|
|
129
|
-
return (h(Host, { key: '
|
|
129
|
+
return (h(Host, { key: '694e989fafcfe2453e0a83b3cb736efaa1eb4fec', class: {
|
|
130
130
|
[mode]: true,
|
|
131
131
|
// Used internally for styling
|
|
132
132
|
[`split-pane-${mode}`]: true,
|
|
133
133
|
'split-pane-visible': this.visible,
|
|
134
|
-
} }, h("slot", { key: '
|
|
134
|
+
} }, h("slot", { key: 'dde7e9382b62cc11971aa233cf98c2314ae4f720' })));
|
|
135
135
|
}
|
|
136
136
|
static get is() { return "ion-split-pane"; }
|
|
137
137
|
static get encapsulation() { return "shadow"; }
|
|
@@ -47,10 +47,10 @@ export class Tab {
|
|
|
47
47
|
}
|
|
48
48
|
render() {
|
|
49
49
|
const { tab, active, component } = this;
|
|
50
|
-
return (h(Host, { key: '
|
|
50
|
+
return (h(Host, { key: '745262368a7f45244da459f4fa1730a46dd3e257', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
|
|
51
51
|
'ion-page': component === undefined,
|
|
52
52
|
'tab-hidden': !active,
|
|
53
|
-
} }, h("slot", { key: '
|
|
53
|
+
} }, h("slot", { key: '823d09a6f93bf7c0dc74f2b8717d1d3a62df1ad8' })));
|
|
54
54
|
}
|
|
55
55
|
static get is() { return "ion-tab"; }
|
|
56
56
|
static get encapsulation() { return "shadow"; }
|
|
@@ -87,11 +87,11 @@ export class TabBar {
|
|
|
87
87
|
const { color, translucent, keyboardVisible } = this;
|
|
88
88
|
const mode = getIonMode(this);
|
|
89
89
|
const shouldHide = keyboardVisible && this.el.getAttribute('slot') !== 'top';
|
|
90
|
-
return (h(Host, { key: '
|
|
90
|
+
return (h(Host, { key: '148f65df0818e9d220a9b46db74cb89ab94e62d2', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses(color, {
|
|
91
91
|
[mode]: true,
|
|
92
92
|
'tab-bar-translucent': translucent,
|
|
93
93
|
'tab-bar-hidden': shouldHide,
|
|
94
|
-
}) }, h("slot", { key: '
|
|
94
|
+
}) }, h("slot", { key: 'a64e235f3703662e2dd7a834f752cc5b1490adbc' })));
|
|
95
95
|
}
|
|
96
96
|
static get is() { return "ion-tab-bar"; }
|
|
97
97
|
static get encapsulation() { return "shadow"; }
|
|
@@ -70,7 +70,7 @@ export class TabButton {
|
|
|
70
70
|
rel,
|
|
71
71
|
target,
|
|
72
72
|
};
|
|
73
|
-
return (h(Host, { key: '
|
|
73
|
+
return (h(Host, { key: '1034b5a928ecec49bd8efec3730ea1b11a579cf3', onClick: this.onClick, onKeyup: this.onKeyUp, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
|
|
74
74
|
[mode]: true,
|
|
75
75
|
'tab-selected': selected,
|
|
76
76
|
'tab-disabled': disabled,
|
|
@@ -82,7 +82,7 @@ export class TabButton {
|
|
|
82
82
|
'ion-activatable': true,
|
|
83
83
|
'ion-selectable': true,
|
|
84
84
|
'ion-focusable': true,
|
|
85
|
-
} }, h("a", Object.assign({ key: '
|
|
85
|
+
} }, h("a", Object.assign({ key: '4cc8e695425956ffc7622af27c1b88a45f8a0c68' }, attrs, { class: "button-native", part: "native", role: "tab", "aria-selected": selected ? 'true' : null, "aria-disabled": disabled ? 'true' : null, tabindex: disabled ? '-1' : undefined }, inheritedAttributes), h("span", { key: 'c529c166f557e1a5c744873c075b564c49786a2c', class: "button-inner" }, h("slot", { key: 'f832355934d80267cd6e81e58b9c5afce0b42907' })), mode === 'md' && h("ion-ripple-effect", { key: '90e79bdf38ba1cd89fca9ce63465e26a29b49316', type: "unbounded" }))));
|
|
86
86
|
}
|
|
87
87
|
static get is() { return "ion-tab-button"; }
|
|
88
88
|
static get encapsulation() { return "shadow"; }
|
|
@@ -162,7 +162,7 @@ export class Tabs {
|
|
|
162
162
|
return Array.from(this.el.querySelectorAll('ion-tab'));
|
|
163
163
|
}
|
|
164
164
|
render() {
|
|
165
|
-
return (h(Host, { key: '
|
|
165
|
+
return (h(Host, { key: 'ba04a29fdd02d7c758cbaa98cfc589949872d832', onIonTabButtonClick: this.onTabClicked }, h("slot", { key: 'd5794140152e2c251e567eeb06afc392af74749d', name: "top" }), h("div", { key: '26fb83786637fe7288901fbbdb3694b8bc94329f', class: "tabs-inner" }, h("slot", { key: '60c663a8647e684455b533eaf5fa3908f9333ae9' })), h("slot", { key: '2d9f7d07c8cdc72f5df200fa71fa56a9dd822c4c', name: "bottom" })));
|
|
166
166
|
}
|
|
167
167
|
static get is() { return "ion-tabs"; }
|
|
168
168
|
static get encapsulation() { return "shadow"; }
|
|
@@ -10,9 +10,9 @@ import { getIonMode } from "../../global/ionic-global";
|
|
|
10
10
|
export class Text {
|
|
11
11
|
render() {
|
|
12
12
|
const mode = getIonMode(this);
|
|
13
|
-
return (h(Host, { key: '
|
|
13
|
+
return (h(Host, { key: '41ed8da617ed0e07bbfe96e32a000e1c6503e24e', class: createColorClasses(this.color, {
|
|
14
14
|
[mode]: true,
|
|
15
|
-
}) }, h("slot", { key: '
|
|
15
|
+
}) }, h("slot", { key: 'db8de04a2493537b3037f276b03abd92dfa56847' })));
|
|
16
16
|
}
|
|
17
17
|
static get is() { return "ion-text"; }
|
|
18
18
|
static get encapsulation() { return "shadow"; }
|
|
@@ -471,7 +471,7 @@ export class Textarea {
|
|
|
471
471
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
472
472
|
*/
|
|
473
473
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
|
|
474
|
-
return (h(Host, { key: '
|
|
474
|
+
return (h(Host, { key: 'eca1dfed53189408f614661ef3902cdb73d5f5de', class: createColorClasses(this.color, {
|
|
475
475
|
[mode]: true,
|
|
476
476
|
'has-value': hasValue,
|
|
477
477
|
'has-focus': hasFocus,
|
|
@@ -480,7 +480,7 @@ export class Textarea {
|
|
|
480
480
|
[`textarea-shape-${shape}`]: shape !== undefined,
|
|
481
481
|
[`textarea-label-placement-${labelPlacement}`]: true,
|
|
482
482
|
'textarea-disabled': disabled,
|
|
483
|
-
}) }, h("label", { key: '
|
|
483
|
+
}) }, h("label", { key: 'd4d835ffedbf8b6de192096e21167ec4f7e01d30', class: "textarea-wrapper", htmlFor: inputId, onClick: this.onLabelClick }, this.renderLabelContainer(), h("div", { key: '39b03e26c23473de31a0237543eaf1e0875e6ed9', class: "textarea-wrapper-inner" }, h("div", { key: 'e9e0997e7dc6d25f09e8439d81e138590c33a151', class: "start-slot-wrapper" }, h("slot", { key: '2d88aace11d74196758e40af27a777eebb270019', name: "start" })), h("div", { key: '8434424404f9fe707f9209ac6495a33bae060538', class: "native-wrapper", ref: (el) => (this.textareaWrapper = el) }, h("textarea", Object.assign({ key: '5bb8eaeba76c39bccadb7c041a10fb077c422dcc', 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)), h("div", { key: '107707676552f8faca3e708285cc3266061a0394', class: "end-slot-wrapper" }, h("slot", { key: 'dc890ffdce898f3d39a315e7bc432840559be466', name: "end" }))), shouldRenderHighlight && h("div", { key: '4554ad09ac0908cea2e90bfa2301b4cd80ac7242', class: "textarea-highlight" })), this.renderBottomContent()));
|
|
484
484
|
}
|
|
485
485
|
static get is() { return "ion-textarea"; }
|
|
486
486
|
static get encapsulation() { return "scoped"; }
|
|
@@ -5,7 +5,7 @@ import { Host, h } from "@stencil/core";
|
|
|
5
5
|
import { getIonMode } from "../../global/ionic-global";
|
|
6
6
|
export class Thumbnail {
|
|
7
7
|
render() {
|
|
8
|
-
return (h(Host, { key: '
|
|
8
|
+
return (h(Host, { key: '833e947c683b482a78f8f0df8c9a68e99478bbaa', class: getIonMode(this) }, h("slot", { key: '6d1e9e686db88d91379f14121058dbf035d8ded2' })));
|
|
9
9
|
}
|
|
10
10
|
static get is() { return "ion-thumbnail"; }
|
|
11
11
|
static get encapsulation() { return "shadow"; }
|
|
@@ -23,11 +23,11 @@ export class ToolbarTitle {
|
|
|
23
23
|
render() {
|
|
24
24
|
const mode = getIonMode(this);
|
|
25
25
|
const size = this.getSize();
|
|
26
|
-
return (h(Host, { key: '
|
|
26
|
+
return (h(Host, { key: 'd9317e8e66cb6112717f5a9c252658777efbd873', class: createColorClasses(this.color, {
|
|
27
27
|
[mode]: true,
|
|
28
28
|
[`title-${size}`]: true,
|
|
29
29
|
'title-rtl': document.dir === 'rtl',
|
|
30
|
-
}) }, h("div", { key: '
|
|
30
|
+
}) }, h("div", { key: 'a4d011d6d409bf006d8efe33667002edb109820a', class: "toolbar-title" }, h("slot", { key: '4ca3303b957a0e5387f1e9058e5adb4c6275afcc' }))));
|
|
31
31
|
}
|
|
32
32
|
static get is() { return "ion-title"; }
|
|
33
33
|
static get encapsulation() { return "shadow"; }
|
|
@@ -417,9 +417,9 @@ export class Toast {
|
|
|
417
417
|
if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
|
|
418
418
|
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);
|
|
419
419
|
}
|
|
420
|
-
return (h(Host, Object.assign({ key: '
|
|
420
|
+
return (h(Host, Object.assign({ key: '2acb2cd2e12ea0082986495929e4a596d4da2f38', tabindex: "-1" }, this.htmlAttributes, { style: {
|
|
421
421
|
zIndex: `${60000 + this.overlayIndex}`,
|
|
422
|
-
}, class: createColorClasses(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), h("div", { key: '
|
|
422
|
+
}, class: createColorClasses(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), h("div", { key: '8b24ba5d3d51d1ab94b9bf6bb5d6e4b8bb3248a7', class: wrapperClass, part: "wrapper" }, h("div", { key: 'e1ebdf4f0425cc7b1e2688667ee9a2b3c545804a', class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (h("ion-icon", { key: '552b1ab8f4e72882cc8e878579c7a594119677e1', class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), h("div", { key: '8ac8d64f632fbedadb180132c83043474466bee0', 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')))));
|
|
423
423
|
}
|
|
424
424
|
static get is() { return "ion-toast"; }
|
|
425
425
|
static get encapsulation() { return "shadow"; }
|
|
@@ -287,7 +287,7 @@ export class Toggle {
|
|
|
287
287
|
const value = this.getValue();
|
|
288
288
|
const rtl = isRTL(el) ? 'rtl' : 'ltr';
|
|
289
289
|
renderHiddenInput(true, el, name, checked ? value : '', disabled);
|
|
290
|
-
return (h(Host, { key: '
|
|
290
|
+
return (h(Host, { key: 'ab093ddb505af61685cbb8571af1e765fc0292f8', 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(color, {
|
|
291
291
|
[mode]: true,
|
|
292
292
|
'in-item': hostContext('ion-item', el),
|
|
293
293
|
'toggle-activated': activated,
|
|
@@ -297,10 +297,10 @@ export class Toggle {
|
|
|
297
297
|
[`toggle-alignment-${alignment}`]: alignment !== undefined,
|
|
298
298
|
[`toggle-label-placement-${labelPlacement}`]: true,
|
|
299
299
|
[`toggle-${rtl}`]: true,
|
|
300
|
-
}) }, h("label", { key: '
|
|
300
|
+
}) }, h("label", { key: 'b4b05e458fcbc767e4392ae43e647b075780cad0', class: "toggle-wrapper", htmlFor: inputId }, h("input", Object.assign({ key: 'c09100447011c51d5b49b4400ec7d72012e3bc6f', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, required: required }, inheritedAttributes)), h("div", { key: '71cf059a999ae572a20127b76907e010ace486ad', class: {
|
|
301
301
|
'label-text-wrapper': true,
|
|
302
302
|
'label-text-wrapper-hidden': !hasLabel,
|
|
303
|
-
}, part: "label", id: inputLabelId, onClick: this.onDivLabelClick }, h("slot", { key: '
|
|
303
|
+
}, part: "label", id: inputLabelId, onClick: this.onDivLabelClick }, h("slot", { key: 'c480b96a0ddd926568f73291d71253d6f74438c7' }), this.renderHintText()), h("div", { key: '96a2cbd1673e051a78f8b2b16535ecd3f0ed4339', class: "native-wrapper" }, this.renderToggleControl()))));
|
|
304
304
|
}
|
|
305
305
|
static get is() { return "ion-toggle"; }
|
|
306
306
|
static get encapsulation() { return "shadow"; }
|
|
@@ -65,10 +65,10 @@ export class Toolbar {
|
|
|
65
65
|
this.childrenStyles.forEach((value) => {
|
|
66
66
|
Object.assign(childStyles, value);
|
|
67
67
|
});
|
|
68
|
-
return (h(Host, { key: '
|
|
68
|
+
return (h(Host, { key: '40bad6fa7e94262438da4bbe037dcf8a5fa2df22', class: Object.assign(Object.assign({}, childStyles), createColorClasses(this.color, {
|
|
69
69
|
[mode]: true,
|
|
70
70
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
71
|
-
})) }, h("div", { key: '
|
|
71
|
+
})) }, h("div", { key: 'df44c9f0fe3958116ab860b0dad79c53b89f6c59', class: "toolbar-background", part: "background" }), h("div", { key: '2169ffa576875b8d5624211cc0b4bf86191562bc', class: "toolbar-container", part: "container" }, h("slot", { key: 'c8910dcf1ce98ab427fd89c3396a67c2a75bdd07', name: "start" }), h("slot", { key: '05da24d5ef96b9eebd83b534ce02c1f7bcd06680', name: "secondary" }), h("div", { key: '090fea1541e7e2b6ad74a6ded4eadffdb471ccce', class: "toolbar-content", part: "content" }, h("slot", { key: '507e143f92f6fa59ff23d94026411fa2c74f2f8e' })), h("slot", { key: 'f79fdee472e657e26a910cb89d7551943e40e440', name: "primary" }), h("slot", { key: 'dd40fe9ed490cf4346c642e195fdb524dc6cc4f5', name: "end" }))));
|
|
72
72
|
}
|
|
73
73
|
static get is() { return "ion-toolbar"; }
|
|
74
74
|
static get encapsulation() { return "shadow"; }
|
package/dist/collection/index.js
CHANGED
|
@@ -17,5 +17,5 @@ export { getMode, setupConfig } from './utils/config';
|
|
|
17
17
|
export { openURL } from './utils/theme';
|
|
18
18
|
export { LIFECYCLE_WILL_ENTER, LIFECYCLE_DID_ENTER, LIFECYCLE_WILL_LEAVE, LIFECYCLE_DID_LEAVE, LIFECYCLE_WILL_UNLOAD, } from './components/nav/constants';
|
|
19
19
|
export { menuController } from './utils/menu-controller';
|
|
20
|
-
export { alertController, actionSheetController, modalController, loadingController,
|
|
20
|
+
export { alertController, actionSheetController, modalController, loadingController, popoverController, toastController, } from './utils/overlays';
|
|
21
21
|
export { IonicSlides } from './components/slides/IonicSlides';
|
|
@@ -39,10 +39,6 @@ export const alertController = /*@__PURE__*/ createController('ion-alert');
|
|
|
39
39
|
export const actionSheetController = /*@__PURE__*/ createController('ion-action-sheet');
|
|
40
40
|
export const loadingController = /*@__PURE__*/ createController('ion-loading');
|
|
41
41
|
export const modalController = /*@__PURE__*/ createController('ion-modal');
|
|
42
|
-
/**
|
|
43
|
-
* @deprecated Use the inline ion-picker component instead.
|
|
44
|
-
*/
|
|
45
|
-
export const pickerController = /*@__PURE__*/ createController('ion-picker-legacy');
|
|
46
42
|
export const popoverController = /*@__PURE__*/ createController('ion-popover');
|
|
47
43
|
export const toastController = /*@__PURE__*/ createController('ion-toast');
|
|
48
44
|
/**
|
|
@@ -136,7 +132,7 @@ const focusElementInOverlay = (hostToFocus, overlay) => {
|
|
|
136
132
|
* Should NOT include: Toast
|
|
137
133
|
*/
|
|
138
134
|
const trapKeyboardFocus = (ev, doc) => {
|
|
139
|
-
const lastOverlay = getPresentedOverlay(doc, 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-
|
|
135
|
+
const lastOverlay = getPresentedOverlay(doc, 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-popover');
|
|
140
136
|
const target = ev.target;
|
|
141
137
|
/**
|
|
142
138
|
* If no active overlay, ignore this event.
|
|
@@ -370,7 +366,7 @@ export const dismissOverlay = (doc, data, role, overlayTag, id) => {
|
|
|
370
366
|
*/
|
|
371
367
|
export const getOverlays = (doc, selector) => {
|
|
372
368
|
if (selector === undefined) {
|
|
373
|
-
selector = 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-
|
|
369
|
+
selector = 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-popover,ion-toast';
|
|
374
370
|
}
|
|
375
371
|
return Array.from(doc.querySelectorAll(selector)).filter((c) => c.overlayIndex > 0);
|
|
376
372
|
};
|
|
@@ -432,6 +428,29 @@ export const setRootAriaHidden = (hidden = false) => {
|
|
|
432
428
|
viewContainer.removeAttribute('aria-hidden');
|
|
433
429
|
}
|
|
434
430
|
};
|
|
431
|
+
/**
|
|
432
|
+
* Cleans up root `aria-hidden` and `backdrop-no-scroll` when
|
|
433
|
+
* an overlay is removed from the DOM without going through
|
|
434
|
+
* the `dismiss()` flow (e.g., when a framework unmounts the
|
|
435
|
+
* overlay during a route change).
|
|
436
|
+
*
|
|
437
|
+
* Should be called from an overlay's `disconnectedCallback`
|
|
438
|
+
* when the overlay was still presented at the time of removal.
|
|
439
|
+
*/
|
|
440
|
+
export const cleanupRootFocusTrapAccessibility = () => {
|
|
441
|
+
if (typeof document === 'undefined') {
|
|
442
|
+
return;
|
|
443
|
+
}
|
|
444
|
+
const remainingOverlays = getPresentedOverlays(document);
|
|
445
|
+
const hasRemainingLocking = remainingOverlays.some((o) => {
|
|
446
|
+
const el = o;
|
|
447
|
+
return el.tagName !== 'ION-TOAST' && el.focusTrap !== false && isBackdropAlwaysBlocking(el);
|
|
448
|
+
});
|
|
449
|
+
if (!hasRemainingLocking) {
|
|
450
|
+
setRootAriaHidden(false);
|
|
451
|
+
document.body.classList.remove(BACKDROP_NO_SCROLL);
|
|
452
|
+
}
|
|
453
|
+
};
|
|
435
454
|
export const present = async (overlay, name, iosEnterAnimation, mdEnterAnimation, opts) => {
|
|
436
455
|
var _a, _b;
|
|
437
456
|
if (overlay.presented) {
|