@scania/tegel 1.36.0 → 1.37.0-dropdown-beta.0
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/dist/cjs/index-ca8040ad.js +4 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/tds-breadcrumbs.cjs.entry.js +1 -6
- package/dist/cjs/tds-button.cjs.entry.js +12 -7
- package/dist/cjs/tds-checkbox.cjs.entry.js +2 -7
- package/dist/cjs/tds-chip.cjs.entry.js +1 -6
- package/dist/cjs/tds-datetime.cjs.entry.js +3 -8
- package/dist/cjs/tds-dropdown_2.cjs.entry.js +7 -17
- package/dist/cjs/tds-header-dropdown.cjs.entry.js +3 -10
- package/dist/cjs/tds-header-hamburger.cjs.entry.js +1 -6
- package/dist/cjs/tds-header-launcher.cjs.entry.js +2 -7
- package/dist/cjs/tds-popover-menu.cjs.entry.js +5 -2
- package/dist/cjs/tds-table-body-row.cjs.entry.js +1 -1
- package/dist/cjs/tds-tag.cjs.entry.js +30 -0
- package/dist/cjs/tds-text-field.cjs.entry.js +6 -11
- package/dist/cjs/tds-textarea.cjs.entry.js +3 -8
- package/dist/cjs/tds-toast.cjs.entry.js +3 -3
- package/dist/cjs/tds-toggle.cjs.entry.js +4 -7
- package/dist/cjs/tds-tooltip.cjs.entry.js +2 -2
- package/dist/cjs/tegel.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/breadcrumbs/breadcrumbs.js +1 -6
- package/dist/collection/components/button/button.css +3 -3
- package/dist/collection/components/button/button.js +26 -6
- package/dist/collection/components/checkbox/checkbox.js +2 -7
- package/dist/collection/components/chip/chip.js +1 -6
- package/dist/collection/components/datetime/datetime.js +3 -8
- package/dist/collection/components/dropdown/dropdown-option/dropdown-option.js +1 -6
- package/dist/collection/components/dropdown/dropdown.js +6 -11
- package/dist/collection/components/header/header-dropdown/header-dropdown.js +3 -10
- package/dist/collection/components/header/header-hamburger/header-hamburger.js +1 -6
- package/dist/collection/components/header/header-launcher/header-launcher.js +2 -7
- package/dist/collection/components/popover-menu/popover-menu.js +23 -2
- package/dist/collection/components/table/table-body-row/table-body-row.css +4 -0
- package/dist/collection/components/tag/tag.css +50 -0
- package/dist/collection/components/tag/tag.js +90 -0
- package/dist/collection/components/text-field/text-field.css +5 -32
- package/dist/collection/components/text-field/text-field.js +5 -10
- package/dist/collection/components/textarea/textarea.js +3 -8
- package/dist/collection/components/toast/toast.js +3 -3
- package/dist/collection/components/toggle/toggle.js +4 -7
- package/dist/collection/components/tooltip/tooltip.js +2 -2
- package/dist/components/{p-9cee9d7f.js → p-40253725.js} +2 -2
- package/dist/components/{p-23aab3b9.js → p-44f5b5e1.js} +2 -7
- package/dist/components/{p-ffbaebb1.js → p-a18f92a6.js} +6 -11
- package/dist/components/{p-19edd11a.js → p-d64878cb.js} +2 -7
- package/dist/components/tds-breadcrumbs.js +1 -6
- package/dist/components/tds-button.js +13 -8
- package/dist/components/tds-checkbox.js +1 -1
- package/dist/components/tds-chip.js +1 -6
- package/dist/components/tds-datetime.js +3 -8
- package/dist/components/tds-dropdown-option.js +1 -1
- package/dist/components/tds-dropdown.js +1 -1
- package/dist/components/tds-header-dropdown.js +3 -10
- package/dist/components/tds-header-hamburger.js +1 -6
- package/dist/components/tds-header-launcher.js +2 -7
- package/dist/components/tds-popover-menu.js +6 -2
- package/dist/components/tds-table-body-row.js +2 -2
- package/dist/components/tds-table-footer.js +3 -3
- package/dist/components/tds-table-header.js +1 -1
- package/dist/components/tds-tag.d.ts +11 -0
- package/dist/components/tds-tag.js +48 -0
- package/dist/components/tds-text-field.js +7 -12
- package/dist/components/tds-textarea.js +4 -9
- package/dist/components/tds-toast.js +3 -3
- package/dist/components/tds-toggle.js +4 -7
- package/dist/components/tds-tooltip.js +1 -1
- package/dist/esm/index-51d04e39.js +4 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/tds-breadcrumbs.entry.js +1 -6
- package/dist/esm/tds-button.entry.js +12 -7
- package/dist/esm/tds-checkbox.entry.js +2 -7
- package/dist/esm/tds-chip.entry.js +1 -6
- package/dist/esm/tds-datetime.entry.js +3 -8
- package/dist/esm/tds-dropdown_2.entry.js +7 -17
- package/dist/esm/tds-header-dropdown.entry.js +3 -10
- package/dist/esm/tds-header-hamburger.entry.js +1 -6
- package/dist/esm/tds-header-launcher.entry.js +2 -7
- package/dist/esm/tds-popover-menu.entry.js +5 -2
- package/dist/esm/tds-table-body-row.entry.js +1 -1
- package/dist/esm/tds-tag.entry.js +26 -0
- package/dist/esm/tds-text-field.entry.js +6 -11
- package/dist/esm/tds-textarea.entry.js +3 -8
- package/dist/esm/tds-toast.entry.js +3 -3
- package/dist/esm/tds-toggle.entry.js +4 -7
- package/dist/esm/tds-tooltip.entry.js +2 -2
- package/dist/esm/tegel.js +1 -1
- package/dist/tegel/p-1b471db7.entry.js +1 -0
- package/dist/tegel/{p-67b4b2cf.entry.js → p-23fb4dee.entry.js} +1 -1
- package/dist/tegel/p-3022d31d.entry.js +1 -0
- package/dist/tegel/p-303acf88.entry.js +1 -0
- package/dist/tegel/p-3ebe93ff.entry.js +1 -0
- package/dist/tegel/{p-4274d329.entry.js → p-49364819.entry.js} +1 -1
- package/dist/tegel/p-704682d6.entry.js +1 -0
- package/dist/tegel/p-8c2695af.entry.js +1 -0
- package/dist/tegel/p-9b0c886e.entry.js +1 -0
- package/dist/tegel/p-a6238890.entry.js +1 -0
- package/dist/tegel/p-a74cb560.entry.js +1 -0
- package/dist/tegel/p-a98767ea.entry.js +1 -0
- package/dist/tegel/p-c15eba7d.entry.js +1 -0
- package/dist/tegel/p-c95c07e7.entry.js +1 -0
- package/dist/tegel/p-cd5103e3.entry.js +1 -0
- package/dist/tegel/{p-614cc097.entry.js → p-d0f09796.entry.js} +1 -1
- package/dist/tegel/p-f9c17612.entry.js +1 -0
- package/dist/tegel/tegel.css +4 -4
- package/dist/tegel/tegel.esm.js +1 -1
- package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +0 -1
- package/dist/types/components/button/button.d.ts +2 -1
- package/dist/types/components/checkbox/checkbox.d.ts +0 -1
- package/dist/types/components/chip/chip.d.ts +0 -1
- package/dist/types/components/datetime/datetime.d.ts +0 -1
- package/dist/types/components/dropdown/dropdown-option/dropdown-option.d.ts +0 -1
- package/dist/types/components/dropdown/dropdown.d.ts +0 -1
- package/dist/types/components/header/header-dropdown/header-dropdown.d.ts +0 -1
- package/dist/types/components/header/header-hamburger/header-hamburger.d.ts +0 -1
- package/dist/types/components/header/header-launcher/header-launcher.d.ts +0 -1
- package/dist/types/components/popover-menu/popover-menu.d.ts +2 -0
- package/dist/types/components/tag/tag.d.ts +14 -0
- package/dist/types/components/text-field/text-field.d.ts +0 -1
- package/dist/types/components/textarea/textarea.d.ts +0 -1
- package/dist/types/components/toggle/toggle.d.ts +0 -1
- package/dist/types/components.d.ts +45 -0
- package/package.json +5 -1
- package/dist/tegel/p-23ea1922.entry.js +0 -1
- package/dist/tegel/p-29170339.entry.js +0 -1
- package/dist/tegel/p-2c56421f.entry.js +0 -1
- package/dist/tegel/p-5020a688.entry.js +0 -1
- package/dist/tegel/p-618d6b4f.entry.js +0 -1
- package/dist/tegel/p-83831252.entry.js +0 -1
- package/dist/tegel/p-942abc1e.entry.js +0 -1
- package/dist/tegel/p-9fe97da7.entry.js +0 -1
- package/dist/tegel/p-ab103d0c.entry.js +0 -1
- package/dist/tegel/p-b58194f9.entry.js +0 -1
- package/dist/tegel/p-b8a33966.entry.js +0 -1
- package/dist/tegel/p-cf1413f0.entry.js +0 -1
- package/dist/tegel/p-fe8a4544.entry.js +0 -1
|
@@ -58,17 +58,12 @@ export class TdsCheckbox {
|
|
|
58
58
|
this.indeterminate = false;
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
|
-
connectedCallback() {
|
|
62
|
-
if (!this.tdsAriaLabel) {
|
|
63
|
-
console.warn('Tegel Checkbox component: tdsAriaLabel prop is missing');
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
61
|
render() {
|
|
67
|
-
return (h("div", { key: '
|
|
62
|
+
return (h("div", { key: '87d4e8620e183b5fb8a885dca8081424c7497b21', class: "tds-checkbox" }, h("input", { key: 'fa5d4c8e9a33a7a88d1348f6eb66b474e94c0ad1',
|
|
68
63
|
// eslint-disable-next-line no-return-assign
|
|
69
64
|
ref: (inputElement) => (this.inputElement = inputElement), indeterminate: this.indeterminate, "aria-checked": this.checked, "aria-required": this.required, "aria-label": this.tdsAriaLabel, "aria-describedby": this.tdsAriaDescribedby, required: this.required, type: "checkbox", name: this.name, value: this.value, id: this.checkboxId, checked: this.checked, disabled: this.disabled, onFocus: (event) => this.handleFocus(event), onBlur: (event) => this.handleBlur(event), onChange: () => {
|
|
70
65
|
this.handleChange();
|
|
71
|
-
} }), h("label", { key: '
|
|
66
|
+
} }), h("label", { key: '82545f01ad68fae4d613b58d82a770a0c1bce79e', htmlFor: this.checkboxId }, h("slot", { key: '99892e112b596a7f8517427cc42f75e90140c315', name: "label" }))));
|
|
72
67
|
}
|
|
73
68
|
static get is() { return "tds-checkbox"; }
|
|
74
69
|
static get encapsulation() { return "scoped"; }
|
|
@@ -68,11 +68,6 @@ export class TdsChip {
|
|
|
68
68
|
}
|
|
69
69
|
return Object.assign(Object.assign({}, commonAttributes), { onClick: () => this.handleClick() });
|
|
70
70
|
}
|
|
71
|
-
connectedCallback() {
|
|
72
|
-
if (!this.tdsAriaLabel) {
|
|
73
|
-
console.warn('Tegel Chip component: tdsAriaLabel prop is missing');
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
71
|
render() {
|
|
77
72
|
const inputAttributes = this.renderInputAttributes();
|
|
78
73
|
const hasPrefixSlot = hasSlot('prefix', this.host);
|
|
@@ -86,7 +81,7 @@ export class TdsChip {
|
|
|
86
81
|
'suffix': hasSuffixSlot,
|
|
87
82
|
'disabled': this.disabled,
|
|
88
83
|
};
|
|
89
|
-
return (h(Host, { key: '
|
|
84
|
+
return (h(Host, { key: '4a498e81dbdd096e01d502a1bc378bfa9f7ea61d' }, h("div", { key: '441e76b25ec9fb91485f3394e6df08fa2ac0363f', class: "component" }, h("div", { key: '88658da3bae225792261b6b3b7796c514d76e665', class: chipClasses }, h("input", Object.assign({ key: '1e495bd583136ba481b7f11891f008c8584b0b38', type: this.type, id: this.chipId, "aria-checked": this.type === 'button' ? undefined : String(this.checked), role: this.type, "aria-label": this.tdsAriaLabel }, inputAttributes)), h("label", { key: 'ffaff7dd33befe64eb69fc6f786efd38eb654628', onClick: (event) => event.stopPropagation(), htmlFor: this.chipId }, hasPrefixSlot && h("slot", { key: '95a6bf9c4d337a9d9caaf66b598615af657045c3', name: "prefix" }), hasLabelSlot && h("slot", { key: '2e732390348814bbeea2bb0c4c5fa0b9206a6578', name: "label" }), hasSuffixSlot && h("slot", { key: '716254ff0b5995b2d2a99dcd2aaa2f94613255d0', name: "suffix" }))))));
|
|
90
85
|
}
|
|
91
86
|
static get is() { return "tds-chip"; }
|
|
92
87
|
static get encapsulation() { return "scoped"; }
|
|
@@ -103,11 +103,6 @@ export class TdsDatetime {
|
|
|
103
103
|
}
|
|
104
104
|
this.value = value;
|
|
105
105
|
}
|
|
106
|
-
connectedCallback() {
|
|
107
|
-
if (!this.tdsAriaLabel && !this.label) {
|
|
108
|
-
console.warn('Tegel Datetime component: provide the label or tdsAriaLabel prop for improved accessibility');
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
106
|
render() {
|
|
112
107
|
let className = ' tds-datetime-input';
|
|
113
108
|
if (this.size === 'md') {
|
|
@@ -128,7 +123,7 @@ export class TdsDatetime {
|
|
|
128
123
|
'tds-datetime-container-label-inside': this.label && this.labelPosition === 'inside' && this.size !== 'sm',
|
|
129
124
|
};
|
|
130
125
|
const iphone = navigator.userAgent.toLowerCase().includes('iphone');
|
|
131
|
-
return (h("div", { key: '
|
|
126
|
+
return (h("div", { key: 'f397a4fc034fb7cd4dcb8ed7b0cbf2ab2e51177a', class: classNames, onKeyDown: (e) => {
|
|
132
127
|
if (e.key === 'Enter') {
|
|
133
128
|
const browserIsChrome = navigator.userAgent.toLowerCase().includes('chrome');
|
|
134
129
|
if (browserIsChrome) {
|
|
@@ -136,9 +131,9 @@ export class TdsDatetime {
|
|
|
136
131
|
this.textInput.showPicker();
|
|
137
132
|
}
|
|
138
133
|
}
|
|
139
|
-
} }, this.labelPosition === 'outside' && this.label && (h("label", { key: '
|
|
134
|
+
} }, this.labelPosition === 'outside' && this.label && (h("label", { key: 'e5dd50563ed2d464983016bc608d81b77c379add', htmlFor: this.name, class: "tds-datetime-label" }, this.label)), h("div", { key: 'b2c01f96bb7d8fa7279ac27048328204cc249547', onClick: (e) => this.handleFocusClick(e), class: "tds-datetime-container" }, h("div", { key: 'e7002fc416e62d2c93c337aee1869aa817997df9', class: `tds-datetime-input-container type-${this.type}` }, h("input", { key: '3fdf8d55b15f5a00d4fb0755d5774fee93f100b9', ref: (inputEl) => {
|
|
140
135
|
this.textInput = inputEl;
|
|
141
|
-
}, class: className, type: this.type, disabled: this.disabled, value: this.value, min: this.min, max: this.max, autofocus: this.autofocus, name: this.name, id: this.name, onInput: (e) => this.handleInput(e), onBlur: (e) => this.handleBlur(e), onChange: (e) => this.handleChange(e), "aria-label": this.tdsAriaLabel ? this.tdsAriaLabel : this.label }), this.labelPosition === 'inside' && this.size !== 'sm' && this.label && (h("label", { key: '
|
|
136
|
+
}, class: className, type: this.type, disabled: this.disabled, value: this.value, min: this.min, max: this.max, autofocus: this.autofocus, name: this.name, id: this.name, onInput: (e) => this.handleInput(e), onBlur: (e) => this.handleBlur(e), onChange: (e) => this.handleChange(e), "aria-label": this.tdsAriaLabel ? this.tdsAriaLabel : this.label }), this.labelPosition === 'inside' && this.size !== 'sm' && this.label && (h("label", { key: '48d096356ad9f547bacbf407af12c4411d5dd45f', class: `tds-datetime-label-inside ${iphone && 'iphone'}`, htmlFor: this.name }, this.label)), h("div", { key: '0ea83c4003923ffed9b11ef22131000bb696a80f', class: "datetime-icon icon-datetime-local" }, h("tds-icon", { key: '6ab6fde60c3d8ce0ad212c0d248c597a23cc6ce7', size: "20px", name: "calendar", svgTitle: "Calendar" })), h("div", { key: '4c304db3c9e6159a7827b6a83c6f81d04cbf0d19', class: "datetime-icon icon-time" }, h("tds-icon", { key: '2a91a579dc5307d35ffbd47aa67616e2e692dd1c', size: "20px", name: "clock", svgTitle: "Clock" }))), h("div", { key: '80dec676d32fd856e7a7dcee7b7e6acbb8b66827', class: "tds-datetime-bar" })), this.helper && (h("div", { key: 'ff276d3c174c88c14081d7a5da689c278844422a', class: "tds-datetime-helper" }, h("div", { key: '9401ca569dd8c23e1bcbdccb39d9f8134fc027db', class: "tds-helper" }, this.state === 'error' && h("tds-icon", { key: 'dada47e75f30dac9b132477ffd73720d0e1a7530', name: "error", size: "16px", svgTitle: "error" }), this.helper)))));
|
|
142
137
|
}
|
|
143
138
|
static get is() { return "tds-datetime"; }
|
|
144
139
|
static get encapsulation() { return "scoped"; }
|
|
@@ -80,13 +80,8 @@ export class TdsDropdownOption {
|
|
|
80
80
|
componentWillLoad() {
|
|
81
81
|
this.internalValue = convertToString(this.value);
|
|
82
82
|
}
|
|
83
|
-
connectedCallback() {
|
|
84
|
-
if (!this.tdsAriaLabel && !this.multiselect) {
|
|
85
|
-
console.warn('Tegel Dropdown option component: tdsAriaLabel prop is missing');
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
83
|
render() {
|
|
89
|
-
return (h(Host, { key: '
|
|
84
|
+
return (h(Host, { key: 'd35a3153be292b1656d0efca93f06bfc1357041b' }, h("div", { key: '384353f9868a3fb559ca4140d5cd4f5553e024ad', class: `dropdown-option
|
|
90
85
|
${this.size}
|
|
91
86
|
${this.selected ? 'selected' : ''}
|
|
92
87
|
${this.disabled ? 'disabled' : ''}
|
|
@@ -7,7 +7,7 @@ import generateUniqueId from "../../utils/generateUniqueId";
|
|
|
7
7
|
function hasValueChanged(newValue, currentValue) {
|
|
8
8
|
if (newValue.length !== currentValue.length)
|
|
9
9
|
return true;
|
|
10
|
-
return newValue.some((val) =>
|
|
10
|
+
return newValue.some((val, i) => val !== currentValue[i]);
|
|
11
11
|
}
|
|
12
12
|
/**
|
|
13
13
|
* @slot <default> - <b>Unnamed slot.</b> For dropdown option elements.
|
|
@@ -441,11 +441,6 @@ export class TdsDropdown {
|
|
|
441
441
|
form.removeEventListener('reset', this.resetInput);
|
|
442
442
|
}
|
|
443
443
|
}
|
|
444
|
-
connectedCallback() {
|
|
445
|
-
if (!this.tdsAriaLabel) {
|
|
446
|
-
console.warn('Tegel Dropdown component: tdsAriaLabel prop is missing');
|
|
447
|
-
}
|
|
448
|
-
}
|
|
449
444
|
updateDropdownListInertState() {
|
|
450
445
|
if (this.dropdownList) {
|
|
451
446
|
if (this.open) {
|
|
@@ -461,9 +456,9 @@ export class TdsDropdown {
|
|
|
461
456
|
// Generate unique IDs for associating labels and helpers with the input/button
|
|
462
457
|
const labelId = this.label ? `dropdown-label-${this.name || generateUniqueId()}` : undefined;
|
|
463
458
|
const helperId = this.helper ? `dropdown-helper-${this.name || generateUniqueId()}` : undefined;
|
|
464
|
-
return (h(Host, { key: '
|
|
459
|
+
return (h(Host, { key: '2c383a029131cac9a67a3e00c918e395c0cda79f', class: {
|
|
465
460
|
[`tds-mode-variant-${this.modeVariant}`]: Boolean(this.modeVariant),
|
|
466
|
-
} }, this.label && this.labelPosition === 'outside' && (h("div", { key: '
|
|
461
|
+
} }, this.label && this.labelPosition === 'outside' && (h("div", { key: '1cfc43e13c4dfc98875dc25fdd3c7727eae0ae24', id: labelId, class: `label-outside ${this.disabled ? 'disabled' : ''}` }, this.label)), h("div", { key: 'f9af43187d13367897a12a81ad91e04bf096d23a', class: {
|
|
467
462
|
'dropdown-select': true,
|
|
468
463
|
[this.size]: true,
|
|
469
464
|
'disabled': this.disabled,
|
|
@@ -513,7 +508,7 @@ export class TdsDropdown {
|
|
|
513
508
|
label-inside-as-placeholder
|
|
514
509
|
${this.size}
|
|
515
510
|
${this.selectedOptions.length ? 'selected' : ''}
|
|
516
|
-
` }, this.label)), h("div", { class: `placeholder ${this.size}` }, this.selectedOptions.length ? this.getValue() : this.placeholder), h("tds-icon", { "aria-label": "Open/Close dropdown", svgTitle: "Open/Close dropdown", class: `menu-icon ${this.open ? 'open' : 'closed'}`, name: "chevron_down", size: "16px" }))))), h("div", { key: '
|
|
511
|
+
` }, this.label)), h("div", { class: `placeholder ${this.size}` }, this.selectedOptions.length ? this.getValue() : this.placeholder), h("tds-icon", { "aria-label": "Open/Close dropdown", svgTitle: "Open/Close dropdown", class: `menu-icon ${this.open ? 'open' : 'closed'}`, name: "chevron_down", size: "16px" }))))), h("div", { key: 'bf61a2483d73c3c2a9b7bb2da10728f8589d1214', role: "listbox", "aria-label": this.tdsAriaLabel, inert: !this.open, "aria-orientation": "vertical", "aria-multiselectable": this.multiselect, ref: (element) => {
|
|
517
512
|
this.dropdownList = element;
|
|
518
513
|
}, class: {
|
|
519
514
|
'dropdown-list': true,
|
|
@@ -524,11 +519,11 @@ export class TdsDropdown {
|
|
|
524
519
|
'closed': !this.open,
|
|
525
520
|
[`animation-enter-${this.animation}`]: this.animation !== 'none' && this.open,
|
|
526
521
|
[`animation-exit-${this.animation}`]: this.animation !== 'none' && !this.open,
|
|
527
|
-
} }, h("slot", { key: '
|
|
522
|
+
} }, h("slot", { key: 'f56f4b1c78e0b2d0d6675a2d92161b5d65da0f48', onSlotchange: () => this.handleSlotChange() }), this.filterResult === 0 && this.noResultText !== '' && (h("div", { key: 'ed2e199226b25696a06020f5a6039d7f539a284c', class: `no-result ${this.size}` }, this.noResultText))), this.helper && (h("div", { key: 'a0cf1e1243b6550de8ff6a8f8f3b64ecfdef169f', id: helperId, class: {
|
|
528
523
|
helper: true,
|
|
529
524
|
error: this.error,
|
|
530
525
|
disabled: this.disabled,
|
|
531
|
-
} }, this.error && h("tds-icon", { key: '
|
|
526
|
+
} }, this.error && h("tds-icon", { key: 'b122044c5c73d7f68d4078cadc6ce2b1aa849383', name: "error", size: "16px" }), this.helper))));
|
|
532
527
|
}
|
|
533
528
|
static get is() { return "tds-dropdown"; }
|
|
534
529
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { h, Host } from "@stencil/core";
|
|
2
2
|
import generateUniqueId from "../../../utils/generateUniqueId";
|
|
3
|
-
import hasSlot from "../../../utils/hasSlot";
|
|
4
3
|
/**
|
|
5
4
|
* @slot <default> - <b>Unnamed slot.</b> For injecting a dropdown list.
|
|
6
5
|
* @slot icon - Slot for an Icon in the dropdown button.
|
|
@@ -47,20 +46,14 @@ export class TdsHeaderDropdown {
|
|
|
47
46
|
});
|
|
48
47
|
}
|
|
49
48
|
}
|
|
50
|
-
connectedCallback() {
|
|
51
|
-
const hasLabelSlot = hasSlot('label', this.host);
|
|
52
|
-
if (!this.tdsAriaLabel && !hasLabelSlot) {
|
|
53
|
-
console.warn('Tegel Header Dropdown component: use label slot or specify tdsAriaLabel prop');
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
49
|
render() {
|
|
57
|
-
return (h(Host, { key: '
|
|
50
|
+
return (h(Host, { key: 'd3f0a943b953783f2fc1c6345563a5adf0ded1dd' }, h("div", { key: 'c7028ceb31b9409d76d3663cd92a1fb3fa68fd7e', class: {
|
|
58
51
|
'state-open': this.open,
|
|
59
|
-
} }, h("tds-header-item", { key: '
|
|
52
|
+
} }, h("tds-header-item", { key: 'f1d5fe99ee0b62316dd0b48c9b5bb04439fb9b12', class: "button", active: this.open, selected: this.selected }, h("button", { key: '0e1437b558782c96e984287bfc0b9f301090bdb0', ref: (el) => {
|
|
60
53
|
this.buttonEl = el;
|
|
61
54
|
}, "aria-expanded": `${this.open}`, "aria-controls": `launcher-${this.uuid}`, "aria-current": this.selected ? 'location' : 'false', onClick: () => {
|
|
62
55
|
this.toggleDropdown();
|
|
63
|
-
}, "aria-label": this.tdsAriaLabel }, h("slot", { key: '
|
|
56
|
+
}, "aria-label": this.tdsAriaLabel }, h("slot", { key: 'fc63cfe2414eb2c60fe85e481a3af49af3ce9653', name: "icon" }), this.label, h("slot", { key: 'f302406472c7be0223fa17b76cc2674cb3e148b7', name: "label" }), !this.noDropdownIcon && (h("tds-icon", { key: '32c53b88ffeed4a78f9efc77b5976afe190c86c6', class: "dropdown-icon", name: "chevron_down", size: "16px", svgTitle: "Dropdown icon" })))), this.buttonEl && (h("tds-popover-canvas", { key: '86ed4a3140d80521792b2953bc4acdef9476c3f6', id: `tds-dropdown-${this.uuid}`, class: "menu", referenceEl: this.buttonEl, placement: "bottom-start", show: this.open, offsetDistance: 0, modifiers: [
|
|
64
57
|
{
|
|
65
58
|
name: 'flip',
|
|
66
59
|
options: {
|
|
@@ -4,14 +4,9 @@ export class TdsHeaderHamburger {
|
|
|
4
4
|
constructor() {
|
|
5
5
|
this.tdsAriaLabel = undefined;
|
|
6
6
|
}
|
|
7
|
-
connectedCallback() {
|
|
8
|
-
if (!this.tdsAriaLabel) {
|
|
9
|
-
console.warn('Tegel Header Hamburger component: missing tdsAriaLabel prop');
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
7
|
render() {
|
|
13
8
|
const inheritedButtonProps = Object.assign({}, inheritAriaAttributes(this.host));
|
|
14
|
-
return (h(Host, { key: '
|
|
9
|
+
return (h(Host, { key: 'e89db0f35bac2766a531be705b37c1d02e315431' }, h("tds-header-item", { key: '2aba0027ff9ce0516722d9785df5f61cd69aa02e' }, h("button", Object.assign({ key: 'f3b03d5b8a13285972edc9c645effc91c3ec92ad' }, inheritedButtonProps, { "aria-label": this.tdsAriaLabel }), h("tds-icon", { key: '6177dfc5ec0fed7902ecea6bab75b6031099c9c3', class: "icon", name: "burger", size: "20px" })))));
|
|
15
10
|
}
|
|
16
11
|
static get is() { return "tds-header-hamburger"; }
|
|
17
12
|
static get encapsulation() { return "shadow"; }
|
|
@@ -41,11 +41,6 @@ export class TdsHeaderLauncher {
|
|
|
41
41
|
});
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
-
connectedCallback() {
|
|
45
|
-
if (!this.tdsAriaLabel) {
|
|
46
|
-
console.warn('Tegel Header Launcher component: missing tdsAriaLabel prop');
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
44
|
render() {
|
|
50
45
|
this.ariaAttributes = Object.assign(Object.assign({}, this.ariaAttributes), inheritAriaAttributes(this.host, ['role']));
|
|
51
46
|
const buttonAttributes = Object.assign(Object.assign({}, this.ariaAttributes), { 'aria-expanded': `${this.open}`, 'aria-controls': `launcher-${this.uuid}`, 'class': 'button', 'active': this.open, 'onClick': () => {
|
|
@@ -53,11 +48,11 @@ export class TdsHeaderLauncher {
|
|
|
53
48
|
}, 'ref': (el) => {
|
|
54
49
|
this.buttonEl = el;
|
|
55
50
|
} });
|
|
56
|
-
return (h(Host, { key: '
|
|
51
|
+
return (h(Host, { key: 'b62aac321e36b12d139d51c3421a1a9540079c22' }, h("div", { key: '4bb1d8e74ec245d9899870fccd990935488dcf7b', class: {
|
|
57
52
|
'wrapper': true,
|
|
58
53
|
'state-open': this.open,
|
|
59
54
|
'state-list-type-menu': this.hasListTypeMenu,
|
|
60
|
-
} }, h("tds-header-launcher-button", Object.assign({ key: '
|
|
55
|
+
} }, h("tds-header-launcher-button", Object.assign({ key: 'c3b90d64efd2878ffc2b0332538c2877f2b48fec' }, buttonAttributes, { "tds-aria-label": this.tdsAriaLabel })), this.buttonEl && (h("tds-popover-canvas", { key: 'dd41f1e0573ceed07f519813bec503001d02377b', id: `tds-launcher-${this.uuid}`, class: "menu", referenceEl: this.buttonEl, placement: "bottom-start", show: this.open, offsetDistance: 0, modifiers: [
|
|
61
56
|
{
|
|
62
57
|
name: 'flip',
|
|
63
58
|
options: {
|
|
@@ -15,6 +15,7 @@ export class TdsPopoverMenu {
|
|
|
15
15
|
this.offsetSkidding = 0;
|
|
16
16
|
this.offsetDistance = 8;
|
|
17
17
|
this.fluidWidth = false;
|
|
18
|
+
this.modeVariant = null;
|
|
18
19
|
this.childRef = undefined;
|
|
19
20
|
}
|
|
20
21
|
/** Property for closing popover programmatically */
|
|
@@ -27,13 +28,15 @@ export class TdsPopoverMenu {
|
|
|
27
28
|
}
|
|
28
29
|
render() {
|
|
29
30
|
var _a;
|
|
30
|
-
return (h(Host, { key: '
|
|
31
|
+
return (h(Host, { key: '78e4ee3b0d6eb7c41f724582278b3de4b2227502', class: {
|
|
32
|
+
[`tds-mode-variant-${this.modeVariant}`]: Boolean(this.modeVariant),
|
|
33
|
+
} }, h("tds-popover-core", { key: 'f16d1d2d97dfa081fbbc13f1da6eb01f15d3e1e8', class: {
|
|
31
34
|
'tds-popover-menu': true,
|
|
32
35
|
[(_a = this.inheritedAttributes.class) !== null && _a !== void 0 ? _a : '']: true,
|
|
33
36
|
'fluid-width': this.fluidWidth,
|
|
34
37
|
}, selector: this.selector, referenceEl: this.referenceEl, show: this.show, placement: this.placement, offsetSkidding: this.offsetSkidding, offsetDistance: this.offsetDistance, ref: (el) => {
|
|
35
38
|
this.childRef = el;
|
|
36
|
-
}, defaultShow: this.defaultShow, animation: this.animation }, h("div", { key: '
|
|
39
|
+
}, defaultShow: this.defaultShow, animation: this.animation }, h("div", { key: '2c413ca26bb977c971e3206ce7ac79da5107d35e', role: "menu" }, h("slot", { key: 'f9a0da937b2c038ec83e3a8e803fb858a42ab94b' })))));
|
|
37
40
|
}
|
|
38
41
|
static get is() { return "tds-popover-menu"; }
|
|
39
42
|
static get encapsulation() { return "scoped"; }
|
|
@@ -217,6 +220,24 @@ export class TdsPopoverMenu {
|
|
|
217
220
|
"attribute": "fluid-width",
|
|
218
221
|
"reflect": false,
|
|
219
222
|
"defaultValue": "false"
|
|
223
|
+
},
|
|
224
|
+
"modeVariant": {
|
|
225
|
+
"type": "string",
|
|
226
|
+
"mutable": false,
|
|
227
|
+
"complexType": {
|
|
228
|
+
"original": "'primary' | 'secondary'",
|
|
229
|
+
"resolved": "\"primary\" | \"secondary\"",
|
|
230
|
+
"references": {}
|
|
231
|
+
},
|
|
232
|
+
"required": false,
|
|
233
|
+
"optional": false,
|
|
234
|
+
"docs": {
|
|
235
|
+
"tags": [],
|
|
236
|
+
"text": "Mode variant of the component, based on current mode."
|
|
237
|
+
},
|
|
238
|
+
"attribute": "mode-variant",
|
|
239
|
+
"reflect": false,
|
|
240
|
+
"defaultValue": "null"
|
|
220
241
|
}
|
|
221
242
|
};
|
|
222
243
|
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
:host {
|
|
2
|
+
box-sizing: border-box;
|
|
3
|
+
display: inline-flex;
|
|
4
|
+
align-items: center;
|
|
5
|
+
border-radius: 4px;
|
|
6
|
+
background-color: var(--tds-tag-neutral-background);
|
|
7
|
+
color: var(--tds-tag-neutral-color);
|
|
8
|
+
gap: 4px;
|
|
9
|
+
}
|
|
10
|
+
:host * {
|
|
11
|
+
box-sizing: border-box;
|
|
12
|
+
}
|
|
13
|
+
:host.lg {
|
|
14
|
+
padding: 4px;
|
|
15
|
+
}
|
|
16
|
+
:host.sm {
|
|
17
|
+
border-radius: 2px;
|
|
18
|
+
padding: 2px 4px;
|
|
19
|
+
font: var(--tds-detail-05);
|
|
20
|
+
}
|
|
21
|
+
:host.success {
|
|
22
|
+
background-color: var(--tds-tag-success-background);
|
|
23
|
+
color: var(--tds-tag-success-color);
|
|
24
|
+
}
|
|
25
|
+
:host.warning {
|
|
26
|
+
background-color: var(--tds-tag-warning-background);
|
|
27
|
+
color: var(--tds-tag-warning-color);
|
|
28
|
+
}
|
|
29
|
+
:host.new {
|
|
30
|
+
background-color: var(--tds-tag-new-background);
|
|
31
|
+
color: var(--tds-tag-new-color);
|
|
32
|
+
}
|
|
33
|
+
:host.neutral {
|
|
34
|
+
background-color: var(--tds-tag-neutral-background);
|
|
35
|
+
color: var(--tds-tag-neutral-color);
|
|
36
|
+
}
|
|
37
|
+
:host.information {
|
|
38
|
+
background-color: var(--tds-tag-information-background);
|
|
39
|
+
color: var(--tds-tag-information-color);
|
|
40
|
+
}
|
|
41
|
+
:host.error {
|
|
42
|
+
background-color: var(--tds-tag-error-background);
|
|
43
|
+
color: var(--tds-tag-error-color);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.tds-tag__content {
|
|
47
|
+
display: flex;
|
|
48
|
+
align-items: center;
|
|
49
|
+
gap: inherit;
|
|
50
|
+
}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { h, Host } from "@stencil/core";
|
|
2
|
+
import hasSlot from "../../utils/hasSlot";
|
|
3
|
+
/**
|
|
4
|
+
* @slot prefix - Slot used to display an icon or other content before the tag text.
|
|
5
|
+
*/
|
|
6
|
+
export class TdsTag {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.text = undefined;
|
|
9
|
+
this.size = 'lg';
|
|
10
|
+
this.variant = 'Neutral';
|
|
11
|
+
}
|
|
12
|
+
render() {
|
|
13
|
+
const hasPrefixSlot = hasSlot('prefix', this.host);
|
|
14
|
+
const getTagClasses = () => ({
|
|
15
|
+
[`${this.size.toLowerCase()}`]: true,
|
|
16
|
+
[`${this.variant.toLowerCase()}`]: true,
|
|
17
|
+
});
|
|
18
|
+
return (h(Host, { key: '4c7a4553eff385357169275ea607a9a0bcf1a729', class: getTagClasses() }, h("div", { key: 'f1a2c24dcbeef887a3086782573d506b7f31c395', class: "tds-tag__content" }, hasPrefixSlot && h("slot", { key: 'e6e8eb20448f6ebb19c9ee8d6123134c0622feca', name: "prefix" }), h("span", { key: '74cead2674da0305a7366a38fe60a542218867ed' }, this.text))));
|
|
19
|
+
}
|
|
20
|
+
static get is() { return "tds-tag"; }
|
|
21
|
+
static get encapsulation() { return "scoped"; }
|
|
22
|
+
static get originalStyleUrls() {
|
|
23
|
+
return {
|
|
24
|
+
"$": ["tag.scss"]
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
static get styleUrls() {
|
|
28
|
+
return {
|
|
29
|
+
"$": ["tag.css"]
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
static get properties() {
|
|
33
|
+
return {
|
|
34
|
+
"text": {
|
|
35
|
+
"type": "string",
|
|
36
|
+
"mutable": false,
|
|
37
|
+
"complexType": {
|
|
38
|
+
"original": "string",
|
|
39
|
+
"resolved": "string",
|
|
40
|
+
"references": {}
|
|
41
|
+
},
|
|
42
|
+
"required": true,
|
|
43
|
+
"optional": false,
|
|
44
|
+
"docs": {
|
|
45
|
+
"tags": [],
|
|
46
|
+
"text": "The title text to display in the tag"
|
|
47
|
+
},
|
|
48
|
+
"attribute": "text",
|
|
49
|
+
"reflect": false
|
|
50
|
+
},
|
|
51
|
+
"size": {
|
|
52
|
+
"type": "string",
|
|
53
|
+
"mutable": false,
|
|
54
|
+
"complexType": {
|
|
55
|
+
"original": "'lg' | 'sm'",
|
|
56
|
+
"resolved": "\"lg\" | \"sm\"",
|
|
57
|
+
"references": {}
|
|
58
|
+
},
|
|
59
|
+
"required": false,
|
|
60
|
+
"optional": false,
|
|
61
|
+
"docs": {
|
|
62
|
+
"tags": [],
|
|
63
|
+
"text": "Sets the size of the tag"
|
|
64
|
+
},
|
|
65
|
+
"attribute": "size",
|
|
66
|
+
"reflect": false,
|
|
67
|
+
"defaultValue": "'lg'"
|
|
68
|
+
},
|
|
69
|
+
"variant": {
|
|
70
|
+
"type": "string",
|
|
71
|
+
"mutable": false,
|
|
72
|
+
"complexType": {
|
|
73
|
+
"original": "'Success' | 'Warning' | 'New' | 'Neutral' | 'Information' | 'Error'",
|
|
74
|
+
"resolved": "\"Error\" | \"Information\" | \"Neutral\" | \"New\" | \"Success\" | \"Warning\"",
|
|
75
|
+
"references": {}
|
|
76
|
+
},
|
|
77
|
+
"required": false,
|
|
78
|
+
"optional": false,
|
|
79
|
+
"docs": {
|
|
80
|
+
"tags": [],
|
|
81
|
+
"text": "Sets the variant mode of the tag"
|
|
82
|
+
},
|
|
83
|
+
"attribute": "variant",
|
|
84
|
+
"reflect": false,
|
|
85
|
+
"defaultValue": "'Neutral'"
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
static get elementRef() { return "host"; }
|
|
90
|
+
}
|
|
@@ -99,6 +99,7 @@
|
|
|
99
99
|
box-sizing: border-box;
|
|
100
100
|
background-color: var(--tds-text-field-background);
|
|
101
101
|
border-bottom: 1px solid var(--tds-text-field-border-bottom);
|
|
102
|
+
border-top: 1px solid transparent;
|
|
102
103
|
transition: border-bottom-color 200ms ease;
|
|
103
104
|
}
|
|
104
105
|
.text-field-container:hover {
|
|
@@ -110,6 +111,10 @@
|
|
|
110
111
|
.form-text-field-sm .text-field-container {
|
|
111
112
|
height: 40px;
|
|
112
113
|
}
|
|
114
|
+
.text-field-container:focus-within {
|
|
115
|
+
border: 2px solid var(--tds-focus-outline-color);
|
|
116
|
+
margin: 0 -2px;
|
|
117
|
+
}
|
|
113
118
|
|
|
114
119
|
.text-field-input-container {
|
|
115
120
|
position: relative;
|
|
@@ -216,35 +221,6 @@
|
|
|
216
221
|
top: 12px;
|
|
217
222
|
}
|
|
218
223
|
|
|
219
|
-
.text-field-bar {
|
|
220
|
-
position: absolute;
|
|
221
|
-
width: 100%;
|
|
222
|
-
}
|
|
223
|
-
.text-field-bar::before, .text-field-bar::after {
|
|
224
|
-
content: "";
|
|
225
|
-
height: 2px;
|
|
226
|
-
top: 54px;
|
|
227
|
-
width: 0;
|
|
228
|
-
position: absolute;
|
|
229
|
-
background: var(--tds-text-field-bar);
|
|
230
|
-
transition: 0.35s ease all;
|
|
231
|
-
}
|
|
232
|
-
.form-text-field-md .text-field-bar::before, .form-text-field-md .text-field-bar::after {
|
|
233
|
-
top: 46px;
|
|
234
|
-
}
|
|
235
|
-
.form-text-field-sm .text-field-bar::before, .form-text-field-sm .text-field-bar::after {
|
|
236
|
-
top: 40px;
|
|
237
|
-
}
|
|
238
|
-
.text-field-bar::before {
|
|
239
|
-
left: 50%;
|
|
240
|
-
}
|
|
241
|
-
.text-field-bar::after {
|
|
242
|
-
right: 50%;
|
|
243
|
-
}
|
|
244
|
-
.text-field-focus .text-field-bar::before, .text-field-focus .text-field-bar::after {
|
|
245
|
-
width: 50%;
|
|
246
|
-
}
|
|
247
|
-
|
|
248
224
|
.text-field-helper {
|
|
249
225
|
font: var(--tds-detail-05);
|
|
250
226
|
letter-spacing: var(--tds-detail-05-ls);
|
|
@@ -318,9 +294,6 @@
|
|
|
318
294
|
.form-text-field-error:not(.form-text-field-readonly) .text-field-container {
|
|
319
295
|
border-bottom-color: var(--tds-text-field-border-bottom-error);
|
|
320
296
|
}
|
|
321
|
-
.form-text-field-error:not(.form-text-field-readonly) .text-field-bar::before, .form-text-field-error:not(.form-text-field-readonly) .text-field-bar::after {
|
|
322
|
-
background: var(--tds-text-field-bar-error);
|
|
323
|
-
}
|
|
324
297
|
|
|
325
298
|
.text-field-helper-error-state {
|
|
326
299
|
display: flex;
|
|
@@ -67,16 +67,11 @@ export class TdsTextField {
|
|
|
67
67
|
this.textInput.focus();
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
|
-
connectedCallback() {
|
|
71
|
-
if (!this.tdsAriaLabel) {
|
|
72
|
-
console.warn('Tegel Text Field component: prop tdsAriaLabel is missing');
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
70
|
render() {
|
|
76
71
|
var _a;
|
|
77
72
|
const usesPrefixSlot = hasSlot('prefix', this.host);
|
|
78
73
|
const usesSuffixSlot = hasSlot('suffix', this.host);
|
|
79
|
-
return (h("div", { key: '
|
|
74
|
+
return (h("div", { key: 'b9fa2b03ce2a0b196dc6083614420d6f83675e3d', class: {
|
|
80
75
|
'form-text-field': true,
|
|
81
76
|
'form-text-field-nomin': this.noMinWidth,
|
|
82
77
|
'text-field-focus': this.focusInput && !this.disabled,
|
|
@@ -94,12 +89,12 @@ export class TdsTextField {
|
|
|
94
89
|
'form-text-field-sm': this.size === 'sm',
|
|
95
90
|
'form-text-field-error': this.state === 'error',
|
|
96
91
|
'form-text-field-success': this.state === 'success',
|
|
97
|
-
} }, this.labelPosition === 'outside' && (h("div", { key: '
|
|
92
|
+
} }, this.labelPosition === 'outside' && (h("div", { key: '7110b867aba9a9ba62b796f67caeccf22a4a8060', class: "text-field-label-outside" }, h("label", { key: '6b0b6c7d17bb236f1203dfaf793ba0a3bc2d8efb', htmlFor: `text-field-input-element-${this.uuid}` }, this.label))), h("div", { key: '5603d3e78b290a78d7c482a0dac7e1f0efb9af7f', onClick: () => this.textInput.focus(), class: "text-field-container" }, usesPrefixSlot && (h("div", { key: '9accb59dffa061d7947d4392310cb1717a395363', class: {
|
|
98
93
|
'text-field-slot-wrap-prefix': true,
|
|
99
94
|
'text-field-error': this.state === 'error',
|
|
100
95
|
'text-field-success': this.state === 'success',
|
|
101
96
|
'text-field-default': this.state === 'default',
|
|
102
|
-
} }, h("slot", { key: '
|
|
97
|
+
} }, h("slot", { key: '739e089cdb9798dc108b68c4858c90bf75e18958', name: "prefix" }))), h("div", { key: 'e4229be4e4bf421319184e798b98afcbaa361413', class: "text-field-input-container" }, h("input", { key: 'f462b4c0d49e4e070090f6a14df52af66b87648d', ref: (inputEl) => {
|
|
103
98
|
this.textInput = inputEl;
|
|
104
99
|
}, class: {
|
|
105
100
|
'text-field-input': true,
|
|
@@ -114,13 +109,13 @@ export class TdsTextField {
|
|
|
114
109
|
if (!this.readOnly) {
|
|
115
110
|
this.handleBlur(event);
|
|
116
111
|
}
|
|
117
|
-
}, "aria-label": this.tdsAriaLabel ? this.tdsAriaLabel : this.label, "aria-describedby": `text-field-helper-element-${this.uuid}`, "aria-readonly": this.readOnly, id: `text-field-input-element-${this.uuid}` }), this.labelPosition === 'inside' && this.size !== 'sm' && (h("label", { key: '
|
|
112
|
+
}, "aria-label": this.tdsAriaLabel ? this.tdsAriaLabel : this.label, "aria-describedby": `text-field-helper-element-${this.uuid}`, "aria-readonly": this.readOnly, id: `text-field-input-element-${this.uuid}` }), this.labelPosition === 'inside' && this.size !== 'sm' && (h("label", { key: 'ac16cff7856d65503fa30f7eb23d2936377e72d4', class: "text-field-label-inside", htmlFor: `text-field-input-element-${this.uuid}` }, this.label))), usesSuffixSlot && (h("div", { key: 'b70453ec36ca62f584b26b0e6dc4b3f0cde2ff54', class: {
|
|
118
113
|
'text-field-slot-wrap-suffix': true,
|
|
119
114
|
'text-field-error': this.state === 'error',
|
|
120
115
|
'text-field-success': this.state === 'success',
|
|
121
116
|
'text-field-default': this.state === 'default',
|
|
122
117
|
'tds-u-display-none': this.readOnly,
|
|
123
|
-
} }, h("slot", { key: '
|
|
118
|
+
} }, h("slot", { key: '7e50b20d90a68f9af583b8f2ade5c742e2d52351', name: "suffix" }))), this.readOnly && !this.hideReadOnlyIcon && (h("span", { key: '72e2cf4f2872d247ac6f28e935e8185aafef6dec', class: "text-field-icon__readonly" }, h("tds-tooltip", { key: '171bdde8535c6bbd08eec60d87d9aa5bae1f98bd', placement: "top-end", text: "This field is non-editable", selector: "#readonly-tooltip" }), h("tds-icon", { key: '05e7e8898ee3fcf81fb011aa2141092e8b749e37', id: "readonly-tooltip", name: "edit_inactive", size: "20px" })))), h("div", { key: '0c16d399b376d9aebed2aabf759cb7319c5745cf', "aria-live": "assertive" }, (this.helper || this.maxLength > 0) && (h("div", { key: '280eed9185c8cffa29e3cf62425f1f1f377f3abc', class: "text-field-helper", id: `text-field-helper-element-${this.uuid}` }, this.state === 'error' && (h("div", { key: 'ddf07e469173a574a848cd2ff816bcc535940340', class: "text-field-helper-error-state" }, !this.readOnly && h("tds-icon", { key: 'b5b06dba13fb8911828153341b631facfc016c88', name: "error", size: "16px" }), this.helper)), this.state !== 'error' && this.helper, !this.readOnly && this.maxLength > 0 && (h("span", { key: 'a4c41817f19b32e575423d5bbe19c28a38031e6e', class: {
|
|
124
119
|
'text-field-textcounter-divider': true,
|
|
125
120
|
'text-field-textcounter-disabled': this.disabled,
|
|
126
121
|
} }, this.value === null ? 0 : (_a = this.value) === null || _a === void 0 ? void 0 : _a.length, " / ", this.maxLength)))))));
|
|
@@ -58,14 +58,9 @@ export class TdsTextarea {
|
|
|
58
58
|
}
|
|
59
59
|
return modeVariant;
|
|
60
60
|
}
|
|
61
|
-
connectedCallback() {
|
|
62
|
-
if (!this.tdsAriaLabel && !this.label) {
|
|
63
|
-
console.warn('Tegel Textarea component: specify label or tdsAriaLabel prop for accessibility');
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
61
|
render() {
|
|
67
62
|
var _a;
|
|
68
|
-
return (h("div", { key: '
|
|
63
|
+
return (h("div", { key: '873fc5866c777549e56d115e7bce64a62fdd5c0c', class: {
|
|
69
64
|
'textarea-container': true,
|
|
70
65
|
'textarea-label-inside': this.labelPosition === 'inside',
|
|
71
66
|
'textarea-focus': this.focusInput,
|
|
@@ -75,7 +70,7 @@ export class TdsTextarea {
|
|
|
75
70
|
'textarea-data': this.value !== '',
|
|
76
71
|
[`textarea-${this.state}`]: this.state === 'error' || this.state === 'success',
|
|
77
72
|
'no-min-width': this.noMinWidth,
|
|
78
|
-
} }, this.labelPosition !== 'no-label' && (h("label", { key: '
|
|
73
|
+
} }, this.labelPosition !== 'no-label' && (h("label", { key: '09f5df4efb39b7e3eb71d8567adc5cffd374ad66', htmlFor: `textarea-element-${this.uuid}`, class: 'textarea-label' }, this.label)), h("div", { key: '57bd6d6e2e7a1919d668625a675e4a20421af965', class: "textarea-wrapper" }, h("textarea", { key: '69955de378170f86c7a942d5f8101aa2ff9440f4', id: `textarea-element-${this.uuid}`, class: 'textarea-input', ref: (inputEl) => {
|
|
79
74
|
this.textEl = inputEl;
|
|
80
75
|
}, disabled: this.disabled, readonly: !this.disabled && this.readOnly, placeholder: this.placeholder, value: this.value, name: this.name, autofocus: this.autofocus, maxlength: this.maxLength, cols: this.cols, rows: this.rows, onFocus: (event) => {
|
|
81
76
|
if (!this.readOnly) {
|
|
@@ -85,7 +80,7 @@ export class TdsTextarea {
|
|
|
85
80
|
if (!this.readOnly) {
|
|
86
81
|
this.handleBlur(event);
|
|
87
82
|
}
|
|
88
|
-
}, onInput: (event) => this.handleInput(event), onChange: (event) => this.handleChange(event), "aria-invalid": this.state === 'error' ? 'true' : 'false', "aria-readonly": this.readOnly ? 'true' : 'false', "aria-label": this.tdsAriaLabel ? this.tdsAriaLabel : this.label, "aria-describedby": `textarea-helper-element-${this.uuid}` }), h("span", { key: '
|
|
83
|
+
}, onInput: (event) => this.handleInput(event), onChange: (event) => this.handleChange(event), "aria-invalid": this.state === 'error' ? 'true' : 'false', "aria-readonly": this.readOnly ? 'true' : 'false', "aria-label": this.tdsAriaLabel ? this.tdsAriaLabel : this.label, "aria-describedby": `textarea-helper-element-${this.uuid}` }), h("span", { key: '0fded8e72f3f6d8e6f53cb57df94f480df17ce53', class: "textarea-resizer-icon" }, h("svg", { key: '6b41ae06bbedfa5ba88991bc6856f80ca8a4b6f8', width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'c4f731e7483bade2d0dbd545302afc278039a122', "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M11.8536 0.853553C12.0488 0.658291 12.0488 0.341709 11.8536 0.146447C11.6583 -0.0488155 11.3417 -0.0488155 11.1464 0.146447L0.146447 11.1464C-0.0488155 11.3417 -0.0488155 11.6583 0.146447 11.8536C0.341709 12.0488 0.658291 12.0488 0.853553 11.8536L11.8536 0.853553ZM11.8536 4.64645C12.0488 4.84171 12.0488 5.15829 11.8536 5.35355L5.35355 11.8536C5.15829 12.0488 4.84171 12.0488 4.64645 11.8536C4.45118 11.6583 4.45118 11.3417 4.64645 11.1464L11.1464 4.64645C11.3417 4.45118 11.6583 4.45118 11.8536 4.64645ZM11.8536 8.64645C12.0488 8.84171 12.0488 9.15829 11.8536 9.35355L9.35355 11.8536C9.15829 12.0488 8.84171 12.0488 8.64645 11.8536C8.45118 11.6583 8.45118 11.3417 8.64645 11.1464L11.1464 8.64645C11.3417 8.45118 11.6583 8.45118 11.8536 8.64645Z", fill: "currentColor" }))), !this.disabled && !this.hideReadOnlyIcon && this.readOnly && (h("span", { key: '94bc8eed69418751ad240087201827a0ef0185b4', class: "textarea-icon__readonly" }, h("tds-tooltip", { key: '231983d3994030724a06358f37dd0e53f91d78d4', placement: "top-end", text: "This field is non-editable", selector: "#readonly-tooltip" }), h("tds-icon", { key: '9e7f16d10939227a5c8c87f00ddd653a58c094ad', id: "readonly-tooltip", name: "edit_inactive", svgTitle: "inactive" })))), h("span", { key: '67222f0c93979caf49881c591cd99eb4c97ebdc1', class: 'textarea-helper', "aria-live": "assertive", id: `textarea-helper-element-${this.uuid}` }, this.state === 'error' && this.helper && !this.readOnly && (h("tds-icon", { key: 'cbde13084b090f7eea4bd80da47373ec941e1981', name: "error", size: "16px" })), this.helper), this.maxLength > 0 && (h("div", { key: '5895277b2e07f4c8f2990f624eb0797dffd0b1f0', class: 'textarea-textcounter' }, this.value === null ? 0 : (_a = this.value) === null || _a === void 0 ? void 0 : _a.length, h("span", { key: '97afedbb5aaf02461a38f39643298b6c2650c52f', class: "textfield-textcounter-divider" }, " / "), " ", this.maxLength))));
|
|
89
84
|
}
|
|
90
85
|
static get is() { return "tds-textarea"; }
|
|
91
86
|
static get encapsulation() { return "scoped"; }
|