@ionic/core 8.7.3-dev.11755551681.10d084fd → 8.7.3-dev.11755622775.1fc05815
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/ion-input.js +36 -5
- 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 +35 -4
- 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/modal.js +4 -4
- package/components/picker-column-option.js +2 -2
- package/components/picker-column2.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 +5 -5
- 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 +4 -4
- package/dist/cjs/ion-input.cjs.entry.js +35 -5
- package/dist/cjs/ion-item-option_3.cjs.entry.js +4 -4
- package/dist/cjs/ion-item_8.cjs.entry.js +11 -11
- package/dist/cjs/ion-loading.cjs.entry.js +2 -2
- package/dist/cjs/ion-menu_3.cjs.entry.js +6 -6
- package/dist/cjs/ion-modal.cjs.entry.js +4 -4
- package/dist/cjs/ion-nav_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +2 -2
- package/dist/cjs/ion-popover.cjs.entry.js +2 -2
- package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
- package/dist/cjs/ion-radio_2.cjs.entry.js +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 +34 -4
- package/dist/cjs/ion-toast.cjs.entry.js +2 -2
- package/dist/cjs/ion-toggle.cjs.entry.js +3 -3
- package/dist/cjs/ionic.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/input/input.js +37 -6
- 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-header/list-header.js +2 -2
- package/dist/collection/components/loading/loading.js +2 -2
- package/dist/collection/components/menu/menu.js +2 -2
- package/dist/collection/components/menu-button/menu-button.js +2 -2
- package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
- package/dist/collection/components/modal/modal.js +4 -4
- package/dist/collection/components/nav/nav.js +1 -1
- package/dist/collection/components/nav-link/nav-link.js +1 -1
- package/dist/collection/components/note/note.js +2 -2
- package/dist/collection/components/picker-column-option/picker-column-option.js +2 -2
- package/dist/collection/components/picker-legacy/picker.js +2 -2
- package/dist/collection/components/picker-legacy-column/picker-column.js +2 -2
- package/dist/collection/components/popover/popover.js +2 -2
- package/dist/collection/components/progress-bar/progress-bar.js +1 -1
- package/dist/collection/components/radio/radio.js +3 -3
- package/dist/collection/components/radio-group/radio-group.js +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 +36 -5
- 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 +5 -5
- package/dist/esm/ion-avatar_3.entry.js +1 -1
- package/dist/esm/ion-col_3.entry.js +1 -1
- package/dist/esm/ion-datetime_3.entry.js +4 -4
- package/dist/esm/ion-input.entry.js +35 -5
- package/dist/esm/ion-item-option_3.entry.js +4 -4
- package/dist/esm/ion-item_8.entry.js +11 -11
- package/dist/esm/ion-loading.entry.js +2 -2
- package/dist/esm/ion-menu_3.entry.js +6 -6
- package/dist/esm/ion-modal.entry.js +4 -4
- package/dist/esm/ion-nav_2.entry.js +2 -2
- package/dist/esm/ion-picker-column-option.entry.js +2 -2
- package/dist/esm/ion-popover.entry.js +2 -2
- package/dist/esm/ion-progress-bar.entry.js +1 -1
- package/dist/esm/ion-radio_2.entry.js +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 +34 -4
- package/dist/esm/ion-toast.entry.js +2 -2
- package/dist/esm/ion-toggle.entry.js +3 -3
- package/dist/esm/ionic.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-0f396661.entry.js +4 -0
- package/dist/ionic/{p-c32b6c20.entry.js → p-1191a2d9.entry.js} +1 -1
- package/dist/ionic/{p-78aff731.entry.js → p-16116947.entry.js} +1 -1
- package/dist/ionic/p-187aaf4a.entry.js +4 -0
- package/dist/ionic/{p-12b99129.entry.js → p-1bbd0a23.entry.js} +1 -1
- package/dist/ionic/p-1e34d434.entry.js +4 -0
- package/dist/ionic/{p-8ca65589.entry.js → p-29032e49.entry.js} +1 -1
- package/dist/ionic/{p-2e967897.entry.js → p-3624b640.entry.js} +1 -1
- package/dist/ionic/{p-0e45320b.entry.js → p-40d56a51.entry.js} +1 -1
- package/dist/ionic/{p-1e8b1767.entry.js → p-4f2c5845.entry.js} +1 -1
- package/dist/ionic/{p-ee881603.entry.js → p-528af4e6.entry.js} +1 -1
- package/dist/ionic/{p-70e05fd1.entry.js → p-54dec9b1.entry.js} +1 -1
- package/dist/ionic/{p-165d1309.entry.js → p-6383afc2.entry.js} +1 -1
- package/dist/ionic/{p-f4e6e570.entry.js → p-7a53f04c.entry.js} +1 -1
- package/dist/ionic/{p-165d8e84.entry.js → p-7b12d853.entry.js} +1 -1
- package/dist/ionic/{p-9cf01220.entry.js → p-7bac2c5f.entry.js} +1 -1
- package/dist/ionic/{p-332e4eac.entry.js → p-8cdb4ff5.entry.js} +1 -1
- package/dist/ionic/p-8d96a0cd.entry.js +4 -0
- package/dist/ionic/{p-039c8f8e.entry.js → p-92e8f208.entry.js} +1 -1
- package/dist/ionic/{p-c7d2c21b.entry.js → p-982fe1c4.entry.js} +1 -1
- package/dist/ionic/{p-82ce0043.entry.js → p-ab33ef20.entry.js} +1 -1
- package/dist/ionic/{p-f267c7dc.entry.js → p-ac434970.entry.js} +1 -1
- package/dist/ionic/{p-f550f186.entry.js → p-c0d58c8e.entry.js} +1 -1
- package/dist/ionic/{p-1cfb0bc4.entry.js → p-c575e7ce.entry.js} +1 -1
- package/dist/ionic/{p-5420fd3e.entry.js → p-cde6d39b.entry.js} +1 -1
- package/dist/ionic/{p-4c79bd85.entry.js → p-d04d66fc.entry.js} +1 -1
- package/dist/ionic/p-d3df6032.entry.js +4 -0
- package/dist/ionic/{p-e8429777.entry.js → p-dbba38cf.entry.js} +1 -1
- package/dist/ionic/p-e6c3214c.entry.js +4 -0
- package/dist/ionic/{p-22351d1b.entry.js → p-e6c465ff.entry.js} +1 -1
- package/dist/ionic/{p-e1310192.entry.js → p-ec76fec4.entry.js} +1 -1
- package/dist/ionic/{p-f5da8541.entry.js → p-f456d176.entry.js} +1 -1
- package/dist/ionic/{p-f868d51c.entry.js → p-f7db572a.entry.js} +1 -1
- package/dist/ionic/{p-0c580145.entry.js → p-f9eb54ee.entry.js} +1 -1
- package/dist/types/components/input/input.d.ts +9 -0
- package/dist/types/components/textarea/textarea.d.ts +9 -0
- package/hydrate/index.js +137 -101
- package/hydrate/index.mjs +137 -101
- package/package.json +1 -1
- package/dist/ionic/p-1488b7cc.entry.js +0 -4
- package/dist/ionic/p-3364562a.entry.js +0 -4
- package/dist/ionic/p-7922ca30.entry.js +0 -4
- package/dist/ionic/p-8de104c4.entry.js +0 -4
- package/dist/ionic/p-c91aa324.entry.js +0 -4
- package/dist/ionic/p-dff5b0b6.entry.js +0 -4
|
@@ -335,9 +335,9 @@ export class PickerColumnCmp {
|
|
|
335
335
|
render() {
|
|
336
336
|
const col = this.col;
|
|
337
337
|
const mode = getIonMode(this);
|
|
338
|
-
return (h(Host, { key: '
|
|
338
|
+
return (h(Host, { key: 'ed32d108dd94f0302fb453c31a3497ebae65ec37', 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: {
|
|
339
339
|
'max-width': this.col.columnWidth,
|
|
340
|
-
} }, col.prefix && (h("div", { key: '
|
|
340
|
+
} }, col.prefix && (h("div", { key: '9f0634890e66fd4ae74f826d1eea3431de121393', class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), h("div", { key: '337e996e5be91af16446085fe22436f213b771eb', 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: 'd69a132599d78d9e5107f12228978cfce4e43098', class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
|
|
341
341
|
}
|
|
342
342
|
static get is() { return "ion-picker-legacy-column"; }
|
|
343
343
|
static get originalStyleUrls() {
|
|
@@ -433,9 +433,9 @@ export class Popover {
|
|
|
433
433
|
const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
|
|
434
434
|
const desktop = isPlatform('desktop');
|
|
435
435
|
const enableArrow = arrow && !parentPopover;
|
|
436
|
-
return (h(Host, Object.assign({ key: '
|
|
436
|
+
return (h(Host, Object.assign({ key: '16866c02534968c982cf4730d2936d03a5107c8b', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
|
|
437
437
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
438
|
-
}, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && h("ion-backdrop", { key: '
|
|
438
|
+
}, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && h("ion-backdrop", { key: '0df258601a4d30df3c27aa8234a7d5e056c3ecbb', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), h("div", { key: 'f94e80ed996b957b5cd09b826472b4f60e8fcc78', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && h("div", { key: '185ce22f6386e8444a9cc7b8818dbfc16c463c99', class: "popover-arrow", part: "arrow" }), h("div", { key: '206202b299404e110de5397b229678cca18568d3', class: "popover-content", part: "content" }, h("slot", { key: 'ee543a0b92d6e35a837c0a0e4617c7b0fc4ad0b0' })))));
|
|
439
439
|
}
|
|
440
440
|
static get is() { return "ion-popover"; }
|
|
441
441
|
static get encapsulation() { return "shadow"; }
|
|
@@ -43,7 +43,7 @@ export class ProgressBar {
|
|
|
43
43
|
const mode = getIonMode(this);
|
|
44
44
|
// If the progress is displayed as a solid bar.
|
|
45
45
|
const progressSolid = buffer === 1;
|
|
46
|
-
return (h(Host, { key: '
|
|
46
|
+
return (h(Host, { key: 'dc69693b5d2dcb2b6e4296d7cb85bc27507f3fa6', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: createColorClasses(color, {
|
|
47
47
|
[mode]: true,
|
|
48
48
|
[`progress-bar-${type}`]: true,
|
|
49
49
|
'progress-paused': paused,
|
|
@@ -136,7 +136,7 @@ export class Radio {
|
|
|
136
136
|
const { checked, disabled, color, el, justify, labelPlacement, hasLabel, buttonTabindex, alignment } = this;
|
|
137
137
|
const mode = getIonMode(this);
|
|
138
138
|
const inItem = hostContext('ion-item', el);
|
|
139
|
-
return (h(Host, { key: '
|
|
139
|
+
return (h(Host, { key: '3353b28172b7f837d4b38964169b5b5f4ba02788', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses(color, {
|
|
140
140
|
[mode]: true,
|
|
141
141
|
'in-item': inItem,
|
|
142
142
|
'radio-checked': checked,
|
|
@@ -147,10 +147,10 @@ export class Radio {
|
|
|
147
147
|
// Focus and active styling should not apply when the radio is in an item
|
|
148
148
|
'ion-activatable': !inItem,
|
|
149
149
|
'ion-focusable': !inItem,
|
|
150
|
-
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, h("label", { key: '
|
|
150
|
+
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, h("label", { key: '418a0a48366ff900e97da123abf665bbbda87fb7', class: "radio-wrapper" }, h("div", { key: '6e5acdd8c8f5d0ad26632a65396afef8094153d1', class: {
|
|
151
151
|
'label-text-wrapper': true,
|
|
152
152
|
'label-text-wrapper-hidden': !hasLabel,
|
|
153
|
-
}, part: "label" }, h("slot", { key: '
|
|
153
|
+
}, part: "label" }, h("slot", { key: '10b157162cd283d624153c747679609cf0bbf11e' })), h("div", { key: '4c45cca95cb105cd6df1025a26e3c045272184a0', class: "native-wrapper" }, this.renderRadioControl()))));
|
|
154
154
|
}
|
|
155
155
|
static get is() { return "ion-radio"; }
|
|
156
156
|
static get encapsulation() { return "shadow"; }
|
|
@@ -187,7 +187,7 @@ export class RadioGroup {
|
|
|
187
187
|
const { label, labelId, el, name, value } = this;
|
|
188
188
|
const mode = getIonMode(this);
|
|
189
189
|
renderHiddenInput(true, el, name, value, false);
|
|
190
|
-
return (h(Host, { key: '81b8ebc96b2f383c36717f290d2959cc921ad6e8', role: "radiogroup", "aria-labelledby": label ? labelId : null, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId, onClick: this.onClick, class: mode }, this.renderHintText(), h("slot", { key: '
|
|
190
|
+
return (h(Host, { key: '81b8ebc96b2f383c36717f290d2959cc921ad6e8', role: "radiogroup", "aria-labelledby": label ? labelId : null, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId, onClick: this.onClick, class: mode }, this.renderHintText(), h("div", { key: '45b09efc10776b889a8f372cba80d25a3fc849da', class: "radio-group-wrapper" }, h("slot", { key: '58714934542c2fdd7396de160364f3f06b32e8f8' }))));
|
|
191
191
|
}
|
|
192
192
|
static get is() { return "ion-radio-group"; }
|
|
193
193
|
static get originalStyleUrls() {
|
|
@@ -681,7 +681,7 @@ export class Range {
|
|
|
681
681
|
const needsEndAdjustment = inItem && !hasEndContent;
|
|
682
682
|
const mode = getIonMode(this);
|
|
683
683
|
renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
|
|
684
|
-
return (h(Host, { key: '
|
|
684
|
+
return (h(Host, { key: 'ef7b01f80515bcaeb2983934ad7f10a6bd5d13ec', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses(this.color, {
|
|
685
685
|
[mode]: true,
|
|
686
686
|
'in-item': inItem,
|
|
687
687
|
'range-disabled': disabled,
|
|
@@ -690,10 +690,10 @@ export class Range {
|
|
|
690
690
|
[`range-label-placement-${labelPlacement}`]: true,
|
|
691
691
|
'range-item-start-adjustment': needsStartAdjustment,
|
|
692
692
|
'range-item-end-adjustment': needsEndAdjustment,
|
|
693
|
-
}) }, h("label", { key: '
|
|
693
|
+
}) }, h("label", { key: 'fd8aa90a9d52be9da024b907e68858dae424449d', class: "range-wrapper", id: "range-label" }, h("div", { key: '2172b4f329c22017dd23475c80aac25ba6e753eb', class: {
|
|
694
694
|
'label-text-wrapper': true,
|
|
695
695
|
'label-text-wrapper-hidden': !hasLabel,
|
|
696
|
-
}, part: "label" }, label !== undefined ? h("div", { class: "label-text" }, label) : h("slot", { name: "label" })), h("div", { key: '
|
|
696
|
+
}, part: "label" }, label !== undefined ? h("div", { class: "label-text" }, label) : h("slot", { name: "label" })), h("div", { key: '3c318bf2ea0576646d4c010bf44573fd0f483186', class: "native-wrapper" }, h("slot", { key: '6586fd6fc96271e73f8a86c202d1913ad1a26f96', name: "start" }), this.renderRangeSlider(), h("slot", { key: '74ac0bc2d2cb66ef708bb729f88b6ecbc1b2155d', name: "end" })))));
|
|
697
697
|
}
|
|
698
698
|
static get is() { return "ion-range"; }
|
|
699
699
|
static get encapsulation() { return "shadow"; }
|
|
@@ -689,7 +689,7 @@ export class Refresher {
|
|
|
689
689
|
}
|
|
690
690
|
render() {
|
|
691
691
|
const mode = getIonMode(this);
|
|
692
|
-
return (h(Host, { key: '
|
|
692
|
+
return (h(Host, { key: '2d1bd880877b698604542ab2d602d38b9504d975', slot: "fixed", class: {
|
|
693
693
|
[mode]: true,
|
|
694
694
|
// Used internally for styling
|
|
695
695
|
[`refresher-${mode}`]: true,
|
|
@@ -48,7 +48,7 @@ export class RefresherContent {
|
|
|
48
48
|
const pullingIcon = this.pullingIcon;
|
|
49
49
|
const hasSpinner = pullingIcon != null && SPINNERS[pullingIcon] !== undefined;
|
|
50
50
|
const mode = getIonMode(this);
|
|
51
|
-
return (h(Host, { key: '
|
|
51
|
+
return (h(Host, { key: 'e235f8a9a84070ece2e2066ced234a64663bfa1d', class: mode }, h("div", { key: '9121691818ddaa35801a5f442e144ac27686cf19', class: "refresher-pulling" }, this.pullingIcon && hasSpinner && (h("div", { key: 'c8d65d740f1575041bd3b752c789077927397fe4', class: "refresher-pulling-icon" }, h("div", { key: '309dd904977eaa788b09ea95b7fa4996a73bec5b', class: "spinner-arrow-container" }, h("ion-spinner", { key: 'a2a1480f67775d56ca7822e76be1e9f983bca2f9', name: this.pullingIcon, paused: true }), mode === 'md' && this.pullingIcon === 'circular' && (h("div", { key: '811d7e06d324bf4b6a18a31427a43e5177f3ae3a', class: "arrow-container" }, h("ion-icon", { key: '86cc48e2e8dc054ff6ff1299094da35b524be63d', icon: caretBackSharp, "aria-hidden": "true" })))))), this.pullingIcon && !hasSpinner && (h("div", { key: '464ae097dbc95c18a2dd7dfd03f8489153dab719', class: "refresher-pulling-icon" }, h("ion-icon", { key: 'ed6875978b9035add562caa743a68353743d978f', icon: this.pullingIcon, lazy: false, "aria-hidden": "true" }))), this.pullingText !== undefined && this.renderPullingText()), h("div", { key: 'aff891924e44354543fec484e5cde1ca92e69904', class: "refresher-refreshing" }, this.refreshingSpinner && (h("div", { key: '842d7ac4ff10a1058775493d62f31cbdcd34f7a0', class: "refresher-refreshing-icon" }, h("ion-spinner", { key: '8c3e6195501e7e78d5cde1e3ad1fef90fd4a953f', name: this.refreshingSpinner }))), this.refreshingText !== undefined && this.renderRefreshingText())));
|
|
52
52
|
}
|
|
53
53
|
static get is() { return "ion-refresher-content"; }
|
|
54
54
|
static get properties() {
|
|
@@ -20,7 +20,7 @@ export class Reorder {
|
|
|
20
20
|
render() {
|
|
21
21
|
const mode = getIonMode(this);
|
|
22
22
|
const reorderIcon = mode === 'ios' ? reorderThreeOutline : reorderTwoSharp;
|
|
23
|
-
return (h(Host, { key: '
|
|
23
|
+
return (h(Host, { key: 'e6807bb349725682e99e791ac65e729a360d64e8', class: mode }, h("slot", { key: '1c691cdbffa6427ba08dc12184c69559ed5d5506' }, h("ion-icon", { key: '8b4150302cdca475379582b2251737b5e74079b1', icon: reorderIcon, lazy: false, class: "reorder-icon", part: "icon", "aria-hidden": "true" }))));
|
|
24
24
|
}
|
|
25
25
|
static get is() { return "ion-reorder"; }
|
|
26
26
|
static get encapsulation() { return "shadow"; }
|
|
@@ -253,7 +253,7 @@ export class ReorderGroup {
|
|
|
253
253
|
}
|
|
254
254
|
render() {
|
|
255
255
|
const mode = getIonMode(this);
|
|
256
|
-
return (h(Host, { key: '
|
|
256
|
+
return (h(Host, { key: 'b9641f3061d67fbfe68317b901ec33267046e073', class: {
|
|
257
257
|
[mode]: true,
|
|
258
258
|
'reorder-enabled': !this.disabled,
|
|
259
259
|
'reorder-list-active': this.state !== 0 /* ReorderGroupState.Idle */,
|
|
@@ -68,7 +68,7 @@ export class RippleEffect {
|
|
|
68
68
|
}
|
|
69
69
|
render() {
|
|
70
70
|
const mode = getIonMode(this);
|
|
71
|
-
return (h(Host, { key: '
|
|
71
|
+
return (h(Host, { key: 'ae9d3b1ed6773a9b9bb2267129f7e9af23b6c9fc', role: "presentation", class: {
|
|
72
72
|
[mode]: true,
|
|
73
73
|
unbounded: this.unbounded,
|
|
74
74
|
} }));
|
|
@@ -22,10 +22,10 @@ export class RouterLink {
|
|
|
22
22
|
rel: this.rel,
|
|
23
23
|
target: this.target,
|
|
24
24
|
};
|
|
25
|
-
return (h(Host, { key: '
|
|
25
|
+
return (h(Host, { key: 'd7f2affcde45c5fbb6cb46cd1c30008ee92a68c5', onClick: this.onClick, class: createColorClasses(this.color, {
|
|
26
26
|
[mode]: true,
|
|
27
27
|
'ion-activatable': true,
|
|
28
|
-
}) }, h("a", Object.assign({ key: '
|
|
28
|
+
}) }, h("a", Object.assign({ key: 'babafae85ca5c6429958d383feff0493ff8cf33e' }, attrs), h("slot", { key: '50314e9555bbf6dffa0c50c3f763009dee59b10b' }))));
|
|
29
29
|
}
|
|
30
30
|
static get is() { return "ion-router-link"; }
|
|
31
31
|
static get encapsulation() { return "shadow"; }
|
|
@@ -181,7 +181,7 @@ export class RouterOutlet {
|
|
|
181
181
|
return true;
|
|
182
182
|
}
|
|
183
183
|
render() {
|
|
184
|
-
return h("slot", { key: '
|
|
184
|
+
return h("slot", { key: '84b50f1155b0d780dff802ee13223287259fd525' });
|
|
185
185
|
}
|
|
186
186
|
static get is() { return "ion-router-outlet"; }
|
|
187
187
|
static get encapsulation() { return "shadow"; }
|
|
@@ -5,7 +5,7 @@ import { Host, h } from "@stencil/core";
|
|
|
5
5
|
import { getIonMode } from "../../global/ionic-global";
|
|
6
6
|
export class Row {
|
|
7
7
|
render() {
|
|
8
|
-
return (h(Host, { key: '
|
|
8
|
+
return (h(Host, { key: '65592a79621bd8f75f9566db3e8c05a4b8fc6048', class: getIonMode(this) }, h("slot", { key: '56f09784db7a0299c9ce76dfcede185b295251ff' })));
|
|
9
9
|
}
|
|
10
10
|
static get is() { return "ion-row"; }
|
|
11
11
|
static get encapsulation() { return "shadow"; }
|
|
@@ -427,8 +427,8 @@ export class Searchbar {
|
|
|
427
427
|
const clearIcon = this.clearIcon || (mode === 'ios' ? closeCircle : closeSharp);
|
|
428
428
|
const searchIcon = this.searchIcon || (mode === 'ios' ? searchOutline : searchSharp);
|
|
429
429
|
const shouldShowCancelButton = this.shouldShowCancelButton();
|
|
430
|
-
const cancelButton = this.showCancelButton !== 'never' && (h("button", { key: '
|
|
431
|
-
return (h(Host, { key: '
|
|
430
|
+
const cancelButton = this.showCancelButton !== 'never' && (h("button", { key: '19e18775856db87daeb4b9e3d7bca0461915a0df', "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: 'b3bbdcc033f3bd3441d619e4a252cef0dad4d07e', "aria-hidden": "true" }, mode === 'md' ? (h("ion-icon", { "aria-hidden": "true", mode: mode, icon: this.cancelButtonIcon, lazy: false })) : (cancelButtonText))));
|
|
431
|
+
return (h(Host, { key: '074aa60e051bfb3225e87d44bbb6346c59c73574', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses(this.color, {
|
|
432
432
|
[mode]: true,
|
|
433
433
|
'searchbar-animated': animated,
|
|
434
434
|
'searchbar-disabled': this.disabled,
|
|
@@ -438,14 +438,14 @@ export class Searchbar {
|
|
|
438
438
|
'searchbar-has-focus': this.focused,
|
|
439
439
|
'searchbar-should-show-clear': this.shouldShowClearButton(),
|
|
440
440
|
'searchbar-should-show-cancel': this.shouldShowCancelButton(),
|
|
441
|
-
}) }, h("div", { key: '
|
|
441
|
+
}) }, h("div", { key: '54f58a79fe36e85d9295157303f1be89c98bbdaf', class: "searchbar-input-container" }, h("input", Object.assign({ key: 'f991a37fcf54d26b7ad10d89084764e03d97b9de', "aria-label": "search text", disabled: this.disabled, ref: (el) => (this.nativeInput = el), class: "searchbar-input", inputMode: this.inputmode, enterKeyHint: this.enterkeyhint, name: this.name, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, minLength: this.minlength, maxLength: this.maxlength, placeholder: this.placeholder, type: this.type, value: this.getValue(), autoCapitalize: autocapitalize === 'default' ? undefined : autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, spellcheck: this.spellcheck }, this.inheritedAttributes)), mode === 'md' && cancelButton, h("ion-icon", { key: '8b44dd90a3292c5cf872ef16a8520675f5673494', "aria-hidden": "true", mode: mode, icon: searchIcon, lazy: false, class: "searchbar-search-icon" }), h("button", { key: '79d9cfed8f01268044f82811a35d323a12dca749', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
|
|
442
442
|
/**
|
|
443
443
|
* This prevents mobile browsers from
|
|
444
444
|
* blurring the input when the clear
|
|
445
445
|
* button is activated.
|
|
446
446
|
*/
|
|
447
447
|
ev.preventDefault();
|
|
448
|
-
}, onClick: () => this.onClearInput(true) }, h("ion-icon", { key: '
|
|
448
|
+
}, onClick: () => this.onClearInput(true) }, h("ion-icon", { key: 'aa3b9fa8a61f853236783ac7bcd0b113ea65ece2', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
|
|
449
449
|
}
|
|
450
450
|
static get is() { return "ion-searchbar"; }
|
|
451
451
|
static get encapsulation() { return "scoped"; }
|
|
@@ -543,14 +543,14 @@ export class Segment {
|
|
|
543
543
|
}
|
|
544
544
|
render() {
|
|
545
545
|
const mode = getIonMode(this);
|
|
546
|
-
return (h(Host, { key: '
|
|
546
|
+
return (h(Host, { key: 'e67ed512739cf2cfe657b0c44ebc3dfb1e9fbb79', role: "tablist", onClick: this.onClick, class: createColorClasses(this.color, {
|
|
547
547
|
[mode]: true,
|
|
548
548
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
549
549
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
550
550
|
'segment-activated': this.activated,
|
|
551
551
|
'segment-disabled': this.disabled,
|
|
552
552
|
'segment-scrollable': this.scrollable,
|
|
553
|
-
}) }, h("slot", { key: '
|
|
553
|
+
}) }, h("slot", { key: '804d8acfcb9abfeeee38244b015fbc5c36330b9e', onSlotchange: this.onSlottedItemsChange })));
|
|
554
554
|
}
|
|
555
555
|
static get is() { return "ion-segment"; }
|
|
556
556
|
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: '26cb7ee90455bcaa6416125802d7e5729fa05b5b', 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: '75add37f11c107d1e2cfdb154e08004e9579e863', "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: '8e720d2a3e304903685bf09d226a64e944d78a22', class: "button-inner" }, h("slot", { key: 'c8e7b3ebf8f03042a1001155643b585283c73c65' })), mode === 'md' && h("ion-ripple-effect", { key: '3586ac317b8d82c92b0ccfbfae42f8778612321b' })), h("div", { key: '9cf93957da9e8dc333c8b05327bb903385b1c5f4', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, h("div", { key: 'd3b6f0b3860ec6896b46703f64ed1cc8c75612e3', 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: 'db6876f2aee7afa1ea8bc147337670faa68fae1c' }, h("slot", { key: 'bc05714a973a5655668679033f5809a1da6db8cc' })));
|
|
8
8
|
}
|
|
9
9
|
static get is() { return "ion-segment-content"; }
|
|
10
10
|
static get encapsulation() { return "shadow"; }
|
|
@@ -96,10 +96,10 @@ export class SegmentView {
|
|
|
96
96
|
}
|
|
97
97
|
render() {
|
|
98
98
|
const { disabled, isManualScroll } = this;
|
|
99
|
-
return (h(Host, { key: '
|
|
99
|
+
return (h(Host, { key: '754a374e89fd4dd682eb00497e717242a6f83357', class: {
|
|
100
100
|
'segment-view-disabled': disabled,
|
|
101
101
|
'segment-view-scroll-disabled': isManualScroll === false,
|
|
102
|
-
} }, h("slot", { key: '
|
|
102
|
+
} }, h("slot", { key: '77366044eb61f0d4bba305bd6f0ef8fd1e25194b' })));
|
|
103
103
|
}
|
|
104
104
|
static get is() { return "ion-segment-view"; }
|
|
105
105
|
static get encapsulation() { return "shadow"; }
|
|
@@ -782,7 +782,7 @@ export class Select {
|
|
|
782
782
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
783
783
|
*/
|
|
784
784
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
|
|
785
|
-
return (h(Host, { key: '
|
|
785
|
+
return (h(Host, { key: 'c03fb65e8fc9f9aab295e07b282377d57d910519', onClick: this.onClick, class: createColorClasses(this.color, {
|
|
786
786
|
[mode]: true,
|
|
787
787
|
'in-item': inItem,
|
|
788
788
|
'in-item-color': hostContext('ion-item.ion-color', el),
|
|
@@ -800,7 +800,7 @@ export class Select {
|
|
|
800
800
|
[`select-justify-${justify}`]: justifyEnabled,
|
|
801
801
|
[`select-shape-${shape}`]: shape !== undefined,
|
|
802
802
|
[`select-label-placement-${labelPlacement}`]: true,
|
|
803
|
-
}) }, h("label", { key: '
|
|
803
|
+
}) }, h("label", { key: '0d0c8ec55269adcac625f2899a547f4e7f3e3741', class: "select-wrapper", id: "select-label", onClick: this.onLabelClick }, this.renderLabelContainer(), h("div", { key: 'f6dfc93c0e23cbe75a2947abde67d842db2dad78', class: "select-wrapper-inner" }, h("slot", { key: '957bfadf9f101f519091419a362d3abdc2be66f6', name: "start" }), h("div", { key: 'ca349202a484e7f2e884533fd330f0b136754f7d', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), h("slot", { key: 'f0e62a6533ff1c8f62bd2d27f60b23385c4fa9ed', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && h("div", { key: 'fb840d46bafafb09898ebeebbe8c181906a3d8a2', class: "select-highlight" })), this.renderBottomContent()));
|
|
804
804
|
}
|
|
805
805
|
static get is() { return "ion-select"; }
|
|
806
806
|
static get encapsulation() { return "shadow"; }
|
|
@@ -75,7 +75,7 @@ export class SelectModal {
|
|
|
75
75
|
} }, option.text))));
|
|
76
76
|
}
|
|
77
77
|
render() {
|
|
78
|
-
return (h(Host, { key: '
|
|
78
|
+
return (h(Host, { key: 'b6c0dec240b2e41985b15fdf4e5a6d3a145c1567', class: getIonMode(this) }, h("ion-header", { key: 'cd177e85ee0f62a60a3a708342d6ab6eb19a44dc' }, h("ion-toolbar", { key: 'aee8222a5a4daa540ad202b2e4cac1ef93d9558c' }, this.header !== undefined && h("ion-title", { key: '5f8fecc764d97bf840d3d4cfddeeccd118ab4436' }, this.header), h("ion-buttons", { key: '919033950d7c2b0101f96a9c9698219de9f568ea', slot: "end" }, h("ion-button", { key: '34b571cab6dced4bde555a077a21e91800829931', onClick: () => this.closeModal() }, "Close")))), h("ion-content", { key: '3c9153d26ba7a5a03d3b20fcd628d0c3031661a7' }, h("ion-list", { key: 'e00b222c071bc97c82ad1bba4db95a8a5c43ed6d' }, this.multiple === true ? this.renderCheckboxOptions() : this.renderRadioOptions()))));
|
|
79
79
|
}
|
|
80
80
|
static get is() { return "ion-select-modal"; }
|
|
81
81
|
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: '3a70eea9fa03a9acba582180761d18347c72acee', 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"; }
|
|
@@ -101,7 +101,7 @@ export class SelectPopover {
|
|
|
101
101
|
render() {
|
|
102
102
|
const { header, message, options, subHeader } = this;
|
|
103
103
|
const hasSubHeaderOrMessage = subHeader !== undefined || message !== undefined;
|
|
104
|
-
return (h(Host, { key: '
|
|
104
|
+
return (h(Host, { key: 'ab931b49b59283825bd2afa3f7f995b0e6e05bef', class: getIonMode(this) }, h("ion-list", { key: '3bd12b67832607596b912a73d5b3ae9b954b244d' }, header !== undefined && h("ion-list-header", { key: '97da930246edf7423a039c030d40e3ff7a5148a3' }, header), hasSubHeaderOrMessage && (h("ion-item", { key: 'c579df6ea8fac07bb0c59d34c69b149656863224' }, h("ion-label", { key: 'af699c5f465710ccb13b8cf8e7be66f0e8acfad1', class: "ion-text-wrap" }, subHeader !== undefined && h("h3", { key: 'df9a936d42064b134e843c7229f314a2a3ec7e80' }, subHeader), message !== undefined && h("p", { key: '9c3ddad378df00f106afa94e9928cf68c17124dd' }, message)))), this.renderOptions(options))));
|
|
105
105
|
}
|
|
106
106
|
static get is() { return "ion-select-popover"; }
|
|
107
107
|
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: 'd86ef7392507cdbf48dfd3a71f02d7a83eda4aae', class: {
|
|
32
32
|
[mode]: true,
|
|
33
33
|
'skeleton-text-animated': animated,
|
|
34
34
|
'in-media': inMedia,
|
|
35
|
-
} }, h("span", { key: '
|
|
35
|
+
} }, h("span", { key: '8e8b5a232a6396d2bba691b05f9de4da44b2965c' }, "\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: 'a33d6421fcc885995fbc7a348516525f68ca496c', 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: 'd5e30df12f1f1f855da4c66f98076b9dce762c59', 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: '3e30d7cf3bc1cf434e16876a0cb2a36377b8e00f' })));
|
|
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: 'dbad8fe9f1566277d14647626308eaf1601ab01f', 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: '3be64f4e7161f6769aaf8e4dcb5293fcaa09af45' })));
|
|
54
54
|
}
|
|
55
55
|
static get is() { return "ion-tab"; }
|
|
56
56
|
static get encapsulation() { return "shadow"; }
|
|
@@ -54,11 +54,11 @@ export class TabBar {
|
|
|
54
54
|
const { color, translucent, keyboardVisible } = this;
|
|
55
55
|
const mode = getIonMode(this);
|
|
56
56
|
const shouldHide = keyboardVisible && this.el.getAttribute('slot') !== 'top';
|
|
57
|
-
return (h(Host, { key: '
|
|
57
|
+
return (h(Host, { key: '275dc6c1b30f6928ce9039b2f445208bb3500ddc', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses(color, {
|
|
58
58
|
[mode]: true,
|
|
59
59
|
'tab-bar-translucent': translucent,
|
|
60
60
|
'tab-bar-hidden': shouldHide,
|
|
61
|
-
}) }, h("slot", { key: '
|
|
61
|
+
}) }, h("slot", { key: 'ceac20128d75c6a4a0f445f2df8deb8cc71fc4da' })));
|
|
62
62
|
}
|
|
63
63
|
static get is() { return "ion-tab-bar"; }
|
|
64
64
|
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: 'ce9d29ced0c781d6b2fa62cd5feb801c11fc42e8', 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: '01cb0ed2e77c5c1a8abd48da1bb07ac1b305d0b6' }, 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: 'd0240c05f42217cfb186b86ff8a0c9cd70b9c8df', class: "button-inner" }, h("slot", { key: '0a20b84925037dbaa8bb4a495b813d3f7c2e58ac' })), mode === 'md' && h("ion-ripple-effect", { key: '4c92c27178cdac89d69cffef8d2c39c3644914e8', type: "unbounded" }))));
|
|
86
86
|
}
|
|
87
87
|
static get is() { return "ion-tab-button"; }
|
|
88
88
|
static get encapsulation() { return "shadow"; }
|
|
@@ -163,7 +163,7 @@ export class Tabs {
|
|
|
163
163
|
return Array.from(this.el.querySelectorAll('ion-tab'));
|
|
164
164
|
}
|
|
165
165
|
render() {
|
|
166
|
-
return (h(Host, { key: '
|
|
166
|
+
return (h(Host, { key: '6dd1d17cc5a7aff4b910303006b4478080ca97af', onIonTabButtonClick: this.onTabClicked }, h("slot", { key: 'db54a692d1a825498a116f090eb305f7cceceb5a', name: "top" }), h("div", { key: 'e1b7d49ba7032e9071de2029695254e2a8303be9', class: "tabs-inner" }, h("slot", { key: '4c3b58d5292c8c834e7532c51de0861068943d79' })), h("slot", { key: 'dd59c0b9b217dfbfb0fccdbc6896b593278549cc', name: "bottom" })));
|
|
167
167
|
}
|
|
168
168
|
static get is() { return "ion-tabs"; }
|
|
169
169
|
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: '361035eae7b92dc109794348d39bad2f596eb6be', class: createColorClasses(this.color, {
|
|
14
14
|
[mode]: true,
|
|
15
|
-
}) }, h("slot", { key: '
|
|
15
|
+
}) }, h("slot", { key: 'c7b8835cf485ba9ecd73298f0529276ce1ea0852' })));
|
|
16
16
|
}
|
|
17
17
|
static get is() { return "ion-text"; }
|
|
18
18
|
static get encapsulation() { return "shadow"; }
|
|
@@ -37,6 +37,10 @@ export class Textarea {
|
|
|
37
37
|
* is applied in both cases.
|
|
38
38
|
*/
|
|
39
39
|
this.hasFocus = false;
|
|
40
|
+
/**
|
|
41
|
+
* Track validation state for proper aria-live announcements
|
|
42
|
+
*/
|
|
43
|
+
this.isInvalid = false;
|
|
40
44
|
/**
|
|
41
45
|
* Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user.
|
|
42
46
|
* Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
|
|
@@ -183,10 +187,31 @@ export class Textarea {
|
|
|
183
187
|
this.el.click();
|
|
184
188
|
}
|
|
185
189
|
}
|
|
190
|
+
/**
|
|
191
|
+
* Checks if the textarea is in an invalid state based on validation classes
|
|
192
|
+
*/
|
|
193
|
+
checkValidationState() {
|
|
194
|
+
return this.el.classList.contains('ion-touched') && this.el.classList.contains('ion-invalid');
|
|
195
|
+
}
|
|
186
196
|
connectedCallback() {
|
|
187
197
|
const { el } = this;
|
|
188
198
|
this.slotMutationController = createSlotMutationController(el, ['label', 'start', 'end'], () => forceUpdate(this));
|
|
189
199
|
this.notchController = createNotchController(el, () => this.notchSpacerEl, () => this.labelSlot);
|
|
200
|
+
// Watch for class changes to update validation state
|
|
201
|
+
if (Build.isBrowser && typeof MutationObserver !== 'undefined') {
|
|
202
|
+
this.validationObserver = new MutationObserver(() => {
|
|
203
|
+
const newIsInvalid = this.checkValidationState();
|
|
204
|
+
if (this.isInvalid !== newIsInvalid) {
|
|
205
|
+
this.isInvalid = newIsInvalid;
|
|
206
|
+
}
|
|
207
|
+
});
|
|
208
|
+
this.validationObserver.observe(el, {
|
|
209
|
+
attributes: true,
|
|
210
|
+
attributeFilter: ['class'],
|
|
211
|
+
});
|
|
212
|
+
}
|
|
213
|
+
// Always set initial state
|
|
214
|
+
this.isInvalid = this.checkValidationState();
|
|
190
215
|
this.debounceChanged();
|
|
191
216
|
if (Build.isBrowser) {
|
|
192
217
|
document.dispatchEvent(new CustomEvent('ionInputDidLoad', {
|
|
@@ -208,6 +233,11 @@ export class Textarea {
|
|
|
208
233
|
this.notchController.destroy();
|
|
209
234
|
this.notchController = undefined;
|
|
210
235
|
}
|
|
236
|
+
// Clean up validation observer to prevent memory leaks
|
|
237
|
+
if (this.validationObserver) {
|
|
238
|
+
this.validationObserver.disconnect();
|
|
239
|
+
this.validationObserver = undefined;
|
|
240
|
+
}
|
|
211
241
|
}
|
|
212
242
|
componentWillLoad() {
|
|
213
243
|
this.inheritedAttributes = Object.assign(Object.assign({}, inheritAriaAttributes(this.el)), inheritAttributes(this.el, ['data-form-type', 'title', 'tabindex', 'dir']));
|
|
@@ -385,8 +415,8 @@ export class Textarea {
|
|
|
385
415
|
];
|
|
386
416
|
}
|
|
387
417
|
getHintTextID() {
|
|
388
|
-
const {
|
|
389
|
-
if (
|
|
418
|
+
const { isInvalid, helperText, errorText, helperTextId, errorTextId } = this;
|
|
419
|
+
if (isInvalid && errorText) {
|
|
390
420
|
return errorTextId;
|
|
391
421
|
}
|
|
392
422
|
if (helperText) {
|
|
@@ -445,7 +475,7 @@ export class Textarea {
|
|
|
445
475
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
446
476
|
*/
|
|
447
477
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
|
|
448
|
-
return (h(Host, { key: '
|
|
478
|
+
return (h(Host, { key: 'de258335fde7fa934cf3bd58c469525440457468', class: createColorClasses(this.color, {
|
|
449
479
|
[mode]: true,
|
|
450
480
|
'has-value': hasValue,
|
|
451
481
|
'has-focus': hasFocus,
|
|
@@ -454,7 +484,7 @@ export class Textarea {
|
|
|
454
484
|
[`textarea-shape-${shape}`]: shape !== undefined,
|
|
455
485
|
[`textarea-label-placement-${labelPlacement}`]: true,
|
|
456
486
|
'textarea-disabled': disabled,
|
|
457
|
-
}) }, h("label", { key: '
|
|
487
|
+
}) }, h("label", { key: '79fc87122871d45316b1c5fd0a467bf85351e804', class: "textarea-wrapper", htmlFor: inputId, onClick: this.onLabelClick }, this.renderLabelContainer(), h("div", { key: '2375888a47557b41ea3b3bf8eae1fd3f2a4032bd', class: "textarea-wrapper-inner" }, h("div", { key: 'c5af683527a870bd85256b6de8a7d216283403dd', class: "start-slot-wrapper" }, h("slot", { key: 'd972e5784403c5cc6ed067ae578ce23ff8303e1e', name: "start" })), h("div", { key: '1092067609d912a76a8679767611e4ca3e071c6f', class: "native-wrapper", ref: (el) => (this.textareaWrapper = el) }, h("textarea", Object.assign({ key: 'cd23a4bad4d5b460830340009d24d0618f14fd73', 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: 'c91a5456f4490ef8699f2e44b4a6c64f6084f5fd', class: "end-slot-wrapper" }, h("slot", { key: 'b71ba7ba0d74091e81784432dcffa832b66f3f25', name: "end" }))), shouldRenderHighlight && h("div", { key: '757c3287e1cea5ee851227407685a437f8408c54', class: "textarea-highlight" })), this.renderBottomContent()));
|
|
458
488
|
}
|
|
459
489
|
static get is() { return "ion-textarea"; }
|
|
460
490
|
static get encapsulation() { return "scoped"; }
|
|
@@ -1025,7 +1055,8 @@ export class Textarea {
|
|
|
1025
1055
|
}
|
|
1026
1056
|
static get states() {
|
|
1027
1057
|
return {
|
|
1028
|
-
"hasFocus": {}
|
|
1058
|
+
"hasFocus": {},
|
|
1059
|
+
"isInvalid": {}
|
|
1029
1060
|
};
|
|
1030
1061
|
}
|
|
1031
1062
|
static get events() {
|
|
@@ -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: '70ada828e8cf541ab3b47f94b7e56ce34114ef88', class: getIonMode(this) }, h("slot", { key: 'c43e105669d2bae123619b616f3af8ca2f722d61' })));
|
|
9
9
|
}
|
|
10
10
|
static get is() { return "ion-thumbnail"; }
|
|
11
11
|
static get encapsulation() { return "shadow"; }
|