igniteui-webcomponents 6.1.2 → 6.2.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/CHANGELOG.md +32 -0
- package/LICENSE +1 -1
- package/README.md +13 -1
- package/components/card/themes/content.js +7 -0
- package/components/card/themes/content.js.map +1 -1
- package/components/card/themes/shared/content/card.content.indigo.css.d.ts +1 -0
- package/components/card/themes/shared/content/card.content.indigo.css.js +3 -0
- package/components/card/themes/shared/content/card.content.indigo.css.js.map +1 -0
- package/components/carousel/carousel-indicator.d.ts +1 -1
- package/components/carousel/carousel-indicator.js.map +1 -1
- package/components/carousel/carousel-slide.d.ts +3 -3
- package/components/carousel/carousel-slide.js +7 -13
- package/components/carousel/carousel-slide.js.map +1 -1
- package/components/carousel/carousel.d.ts +39 -38
- package/components/carousel/carousel.js +160 -153
- package/components/carousel/carousel.js.map +1 -1
- package/components/checkbox/checkbox-base.d.ts +3 -5
- package/components/checkbox/checkbox-base.js +15 -21
- package/components/checkbox/checkbox-base.js.map +1 -1
- package/components/checkbox/checkbox.d.ts +3 -4
- package/components/checkbox/checkbox.js +18 -17
- package/components/checkbox/checkbox.js.map +1 -1
- package/components/checkbox/switch.d.ts +0 -1
- package/components/checkbox/switch.js +7 -10
- package/components/checkbox/switch.js.map +1 -1
- package/components/checkbox/themes/dark/checkbox/checkbox.bootstrap.css.js +1 -1
- package/components/checkbox/themes/dark/checkbox/checkbox.bootstrap.css.js.map +1 -1
- package/components/checkbox/themes/dark/checkbox/checkbox.fluent.css.js +1 -1
- package/components/checkbox/themes/dark/checkbox/checkbox.fluent.css.js.map +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js.map +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.common.css.js +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.common.css.js.map +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js.map +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js.map +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js.map +1 -1
- package/components/chip/chip.d.ts +11 -11
- package/components/chip/chip.js +61 -65
- package/components/chip/chip.js.map +1 -1
- package/components/combo/combo.d.ts +3 -3
- package/components/combo/combo.js +12 -6
- package/components/combo/combo.js.map +1 -1
- package/components/combo/themes/shared/combo.common.css.js +1 -1
- package/components/combo/themes/shared/combo.common.css.js.map +1 -1
- package/components/combo/themes/shared/combo.indigo.css.js +1 -1
- package/components/combo/themes/shared/combo.indigo.css.js.map +1 -1
- package/components/combo/themes/shared/combo.material.css.js +1 -1
- package/components/combo/themes/shared/combo.material.css.js.map +1 -1
- package/components/common/controllers/internals.d.ts +66 -2
- package/components/common/controllers/internals.js +21 -0
- package/components/common/controllers/internals.js.map +1 -1
- package/components/common/controllers/slot.d.ts +87 -0
- package/components/common/controllers/slot.js +75 -0
- package/components/common/controllers/slot.js.map +1 -0
- package/components/common/mixins/forms/associated.d.ts +1 -1
- package/components/common/mixins/forms/associated.js +91 -36
- package/components/common/mixins/forms/associated.js.map +1 -1
- package/components/common/mixins/forms/form-transformers.d.ts +21 -0
- package/components/common/mixins/forms/form-transformers.js +64 -0
- package/components/common/mixins/forms/form-transformers.js.map +1 -0
- package/components/common/mixins/forms/form-value.d.ts +7 -36
- package/components/common/mixins/forms/form-value.js +2 -64
- package/components/common/mixins/forms/form-value.js.map +1 -1
- package/components/common/mixins/forms/types.d.ts +19 -10
- package/components/common/mixins/forms/types.js +2 -1
- package/components/common/mixins/forms/types.js.map +1 -1
- package/components/common/util.d.ts +1 -0
- package/components/common/util.js +3 -0
- package/components/common/util.js.map +1 -1
- package/components/date-picker/date-picker.d.ts +1 -3
- package/components/date-picker/date-picker.js +11 -13
- package/components/date-picker/date-picker.js.map +1 -1
- package/components/date-picker/themes/dark/date-picker.indigo.css.js +1 -1
- package/components/date-picker/themes/dark/date-picker.indigo.css.js.map +1 -1
- package/components/date-picker/themes/shared/date-picker.bootstrap.css.js +1 -1
- package/components/date-picker/themes/shared/date-picker.bootstrap.css.js.map +1 -1
- package/components/date-picker/themes/shared/date-picker.common.css.js +1 -1
- package/components/date-picker/themes/shared/date-picker.common.css.js.map +1 -1
- package/components/date-picker/themes/shared/date-picker.fluent.css.js +1 -1
- package/components/date-picker/themes/shared/date-picker.fluent.css.js.map +1 -1
- package/components/date-picker/themes/shared/date-picker.indigo.css.js +1 -1
- package/components/date-picker/themes/shared/date-picker.indigo.css.js.map +1 -1
- package/components/date-picker/themes/shared/date-picker.material.css.js +1 -1
- package/components/date-picker/themes/shared/date-picker.material.css.js.map +1 -1
- package/components/date-range-picker/date-range-picker.d.ts +1 -3
- package/components/date-range-picker/date-range-picker.js +19 -26
- package/components/date-range-picker/date-range-picker.js.map +1 -1
- package/components/date-range-picker/themes/dark/date-range-picker.indigo.css.js +1 -1
- package/components/date-range-picker/themes/dark/date-range-picker.indigo.css.js.map +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.bootstrap.css.js +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.bootstrap.css.js.map +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.common.css.js +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.common.css.js.map +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.fluent.css.js +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.fluent.css.js.map +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.indigo.css.js +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.indigo.css.js.map +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.material.css.js +1 -1
- package/components/date-range-picker/themes/shared/date-range-picker.material.css.js.map +1 -1
- package/components/date-time-input/date-time-input.d.ts +1 -2
- package/components/date-time-input/date-time-input.js +7 -7
- package/components/date-time-input/date-time-input.js.map +1 -1
- package/components/dialog/dialog.d.ts +23 -25
- package/components/dialog/dialog.js +108 -115
- package/components/dialog/dialog.js.map +1 -1
- package/components/dialog/themes/dark/dialog.bootstrap.css.js +1 -1
- package/components/dialog/themes/dark/dialog.bootstrap.css.js.map +1 -1
- package/components/expansion-panel/expansion-panel.d.ts +12 -14
- package/components/expansion-panel/expansion-panel.js +43 -56
- package/components/expansion-panel/expansion-panel.js.map +1 -1
- package/components/file-input/file-input.d.ts +1 -3
- package/components/file-input/file-input.js +6 -11
- package/components/file-input/file-input.js.map +1 -1
- package/components/file-input/themes/shared/file-input.bootstrap.css.js +1 -1
- package/components/file-input/themes/shared/file-input.bootstrap.css.js.map +1 -1
- package/components/file-input/themes/shared/file-input.material.css.js +1 -1
- package/components/file-input/themes/shared/file-input.material.css.js.map +1 -1
- package/components/input/input.d.ts +1 -4
- package/components/input/input.js +7 -12
- package/components/input/input.js.map +1 -1
- package/components/input/themes/shared/input.bootstrap.css.js +1 -1
- package/components/input/themes/shared/input.bootstrap.css.js.map +1 -1
- package/components/input/themes/shared/input.common.css.js +1 -1
- package/components/input/themes/shared/input.common.css.js.map +1 -1
- package/components/input/themes/shared/input.fluent.css.js +1 -1
- package/components/input/themes/shared/input.fluent.css.js.map +1 -1
- package/components/input/themes/shared/input.indigo.css.js +1 -1
- package/components/input/themes/shared/input.indigo.css.js.map +1 -1
- package/components/input/themes/shared/input.material.css.js +1 -1
- package/components/input/themes/shared/input.material.css.js.map +1 -1
- package/components/mask-input/mask-input-base.js +1 -0
- package/components/mask-input/mask-input-base.js.map +1 -1
- package/components/mask-input/mask-input.d.ts +2 -3
- package/components/mask-input/mask-input.js +5 -8
- package/components/mask-input/mask-input.js.map +1 -1
- package/components/nav-drawer/nav-drawer-item.d.ts +3 -4
- package/components/nav-drawer/nav-drawer-item.js +15 -18
- package/components/nav-drawer/nav-drawer-item.js.map +1 -1
- package/components/nav-drawer/nav-drawer.d.ts +1 -2
- package/components/nav-drawer/nav-drawer.js +9 -11
- package/components/nav-drawer/nav-drawer.js.map +1 -1
- package/components/nav-drawer/themes/container.base.css.js +1 -1
- package/components/nav-drawer/themes/container.base.css.js.map +1 -1
- package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js +1 -1
- package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js.map +1 -1
- package/components/popover/popover.d.ts +17 -16
- package/components/popover/popover.js +81 -91
- package/components/popover/popover.js.map +1 -1
- package/components/progress/base.d.ts +8 -8
- package/components/progress/base.js +19 -23
- package/components/progress/base.js.map +1 -1
- package/components/progress/circular-gradient.js.map +1 -1
- package/components/progress/circular-progress.d.ts +3 -4
- package/components/progress/circular-progress.js +15 -18
- package/components/progress/circular-progress.js.map +1 -1
- package/components/progress/linear-progress.d.ts +1 -0
- package/components/progress/linear-progress.js +5 -1
- package/components/progress/linear-progress.js.map +1 -1
- package/components/radio/radio.d.ts +3 -5
- package/components/radio/radio.js +33 -31
- package/components/radio/radio.js.map +1 -1
- package/components/radio/themes/dark/radio.fluent.css.js +1 -1
- package/components/radio/themes/dark/radio.fluent.css.js.map +1 -1
- package/components/radio/themes/shared/radio.bootstrap.css.js +1 -1
- package/components/radio/themes/shared/radio.bootstrap.css.js.map +1 -1
- package/components/radio/themes/shared/radio.common.css.js +1 -1
- package/components/radio/themes/shared/radio.common.css.js.map +1 -1
- package/components/radio/themes/shared/radio.fluent.css.js +1 -1
- package/components/radio/themes/shared/radio.fluent.css.js.map +1 -1
- package/components/radio/themes/shared/radio.indigo.css.js +1 -1
- package/components/radio/themes/shared/radio.indigo.css.js.map +1 -1
- package/components/radio/themes/shared/radio.material.css.js +1 -1
- package/components/radio/themes/shared/radio.material.css.js.map +1 -1
- package/components/radio-group/radio-group.d.ts +4 -4
- package/components/radio-group/radio-group.js +24 -21
- package/components/radio-group/radio-group.js.map +1 -1
- package/components/rating/rating.d.ts +1 -2
- package/components/rating/rating.js +4 -3
- package/components/rating/rating.js.map +1 -1
- package/components/select/select.d.ts +35 -38
- package/components/select/select.js +138 -146
- package/components/select/select.js.map +1 -1
- package/components/select/themes/shared/select.bootstrap.css.js +1 -1
- package/components/select/themes/shared/select.bootstrap.css.js.map +1 -1
- package/components/select/themes/shared/select.common.css.js +1 -1
- package/components/select/themes/shared/select.common.css.js.map +1 -1
- package/components/select/themes/shared/select.fluent.css.js +1 -1
- package/components/select/themes/shared/select.fluent.css.js.map +1 -1
- package/components/select/themes/shared/select.indigo.css.js +1 -1
- package/components/select/themes/shared/select.indigo.css.js.map +1 -1
- package/components/select/themes/shared/select.material.css.js +1 -1
- package/components/select/themes/shared/select.material.css.js.map +1 -1
- package/components/slider/slider-label.js.map +1 -1
- package/components/slider/slider.d.ts +1 -2
- package/components/slider/slider.js +5 -2
- package/components/slider/slider.js.map +1 -1
- package/components/textarea/textarea.d.ts +13 -20
- package/components/textarea/textarea.js +66 -90
- package/components/textarea/textarea.js.map +1 -1
- package/components/textarea/themes/shared/textarea.bootstrap.css.js +1 -1
- package/components/textarea/themes/shared/textarea.bootstrap.css.js.map +1 -1
- package/components/textarea/themes/shared/textarea.common.css.js +1 -1
- package/components/textarea/themes/shared/textarea.common.css.js.map +1 -1
- package/components/textarea/themes/shared/textarea.fluent.css.js +1 -1
- package/components/textarea/themes/shared/textarea.fluent.css.js.map +1 -1
- package/components/textarea/themes/shared/textarea.indigo.css.js +1 -1
- package/components/textarea/themes/shared/textarea.indigo.css.js.map +1 -1
- package/components/textarea/themes/shared/textarea.material.css.js +1 -1
- package/components/textarea/themes/shared/textarea.material.css.js.map +1 -1
- package/components/tile-manager/position.js +2 -1
- package/components/tile-manager/position.js.map +1 -1
- package/components/tile-manager/tile.d.ts +8 -12
- package/components/tile-manager/tile.js +16 -37
- package/components/tile-manager/tile.js.map +1 -1
- package/components/validation-container/validation-container.d.ts +2 -1
- package/components/validation-container/validation-container.js +19 -14
- package/components/validation-container/validation-container.js.map +1 -1
- package/custom-elements.json +9346 -6470
- package/igniteui-webcomponents.css-data.json +1 -1
- package/igniteui-webcomponents.html-data.json +1 -1
- package/package.json +1 -1
- package/web-types.json +2 -2
|
@@ -5,11 +5,11 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { html, LitElement, nothing } from 'lit';
|
|
8
|
-
import { property, query,
|
|
8
|
+
import { property, query, state } from 'lit/decorators.js';
|
|
9
9
|
import { addInternalsController } from '../common/controllers/internals.js';
|
|
10
10
|
import { watch } from '../common/decorators/watch.js';
|
|
11
11
|
import { partMap } from '../common/part-map.js';
|
|
12
|
-
import { asPercent, clamp, formatString
|
|
12
|
+
import { asPercent, clamp, formatString } from '../common/util.js';
|
|
13
13
|
export class IgcProgressBaseComponent extends LitElement {
|
|
14
14
|
constructor() {
|
|
15
15
|
super(...arguments);
|
|
@@ -36,12 +36,12 @@ export class IgcProgressBaseComponent extends LitElement {
|
|
|
36
36
|
this.indeterminate = false;
|
|
37
37
|
this.hideLabel = false;
|
|
38
38
|
}
|
|
39
|
-
|
|
39
|
+
_indeterminateChange() {
|
|
40
40
|
if (!this.indeterminate) {
|
|
41
41
|
this._updateProgress();
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
-
|
|
44
|
+
_maxChange() {
|
|
45
45
|
this.max = Math.max(0, this.max);
|
|
46
46
|
if (this.value > this.max) {
|
|
47
47
|
this.value = this.max;
|
|
@@ -50,22 +50,19 @@ export class IgcProgressBaseComponent extends LitElement {
|
|
|
50
50
|
this._updateProgress();
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
|
-
|
|
53
|
+
_valueChange() {
|
|
54
54
|
this.value = clamp(this.value, 0, this.max);
|
|
55
55
|
if (!this.indeterminate) {
|
|
56
56
|
this._updateProgress();
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
|
-
createRenderRoot() {
|
|
60
|
-
const root = super.createRenderRoot();
|
|
61
|
-
root.addEventListener('slotchange', () => this.requestUpdate());
|
|
62
|
-
return root;
|
|
63
|
-
}
|
|
64
59
|
updated() {
|
|
65
60
|
this._updateARIA();
|
|
66
61
|
}
|
|
67
62
|
_updateARIA() {
|
|
68
|
-
const text = this.labelFormat
|
|
63
|
+
const text = this.labelFormat
|
|
64
|
+
? this._renderLabelFormat()
|
|
65
|
+
: `${this.value}%`;
|
|
69
66
|
this._internals.setARIA({
|
|
70
67
|
ariaValueMax: this.max.toString(),
|
|
71
68
|
ariaValueNow: this.indeterminate ? null : this.value.toString(),
|
|
@@ -83,30 +80,29 @@ export class IgcProgressBaseComponent extends LitElement {
|
|
|
83
80
|
'--_transition-duration': `${this.animationDuration}ms`,
|
|
84
81
|
};
|
|
85
82
|
}
|
|
86
|
-
|
|
83
|
+
_renderLabel() {
|
|
87
84
|
const parts = {
|
|
88
85
|
label: true,
|
|
89
86
|
value: true,
|
|
90
87
|
fraction: this._hasFraction,
|
|
91
88
|
};
|
|
92
89
|
return this.labelFormat
|
|
93
|
-
? html `<span part=${partMap(parts)}>${this.
|
|
90
|
+
? html `<span part=${partMap(parts)}>${this._renderLabelFormat()}</span>`
|
|
94
91
|
: html `<span part=${partMap({ ...parts, counter: true })}></span>`;
|
|
95
92
|
}
|
|
96
|
-
|
|
93
|
+
_renderLabelFormat() {
|
|
97
94
|
return formatString(this.labelFormat, this.value, this.max);
|
|
98
95
|
}
|
|
99
|
-
|
|
100
|
-
const hideDefaultLabel = this.indeterminate ||
|
|
96
|
+
_renderDefaultSlot() {
|
|
97
|
+
const hideDefaultLabel = this.indeterminate ||
|
|
98
|
+
this.hideLabel ||
|
|
99
|
+
this._slots.hasAssignedElements('[default]');
|
|
101
100
|
return html `
|
|
102
101
|
<slot part="label"></slot>
|
|
103
|
-
${hideDefaultLabel ? nothing : this.
|
|
102
|
+
${hideDefaultLabel ? nothing : this._renderLabel()}
|
|
104
103
|
`;
|
|
105
104
|
}
|
|
106
105
|
}
|
|
107
|
-
__decorate([
|
|
108
|
-
queryAssignedElements()
|
|
109
|
-
], IgcProgressBaseComponent.prototype, "_assignedElements", void 0);
|
|
110
106
|
__decorate([
|
|
111
107
|
query('[part="base"]', true)
|
|
112
108
|
], IgcProgressBaseComponent.prototype, "_base", void 0);
|
|
@@ -145,11 +141,11 @@ __decorate([
|
|
|
145
141
|
], IgcProgressBaseComponent.prototype, "labelFormat", void 0);
|
|
146
142
|
__decorate([
|
|
147
143
|
watch('indeterminate')
|
|
148
|
-
], IgcProgressBaseComponent.prototype, "
|
|
144
|
+
], IgcProgressBaseComponent.prototype, "_indeterminateChange", null);
|
|
149
145
|
__decorate([
|
|
150
146
|
watch('max')
|
|
151
|
-
], IgcProgressBaseComponent.prototype, "
|
|
147
|
+
], IgcProgressBaseComponent.prototype, "_maxChange", null);
|
|
152
148
|
__decorate([
|
|
153
149
|
watch('value')
|
|
154
|
-
], IgcProgressBaseComponent.prototype, "
|
|
150
|
+
], IgcProgressBaseComponent.prototype, "_valueChange", null);
|
|
155
151
|
//# sourceMappingURL=base.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/components/progress/base.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAChD,OAAO,
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/components/progress/base.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport { property, query, state } from 'lit/decorators.js';\nimport type { StyleInfo } from 'lit/directives/style-map.js';\nimport { addInternalsController } from '../common/controllers/internals.js';\nimport type { SlotController } from '../common/controllers/slot.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { partMap } from '../common/part-map.js';\nimport { asPercent, clamp, formatString } from '../common/util.js';\nimport type { StyleVariant } from '../types.js';\n\nexport abstract class IgcProgressBaseComponent extends LitElement {\n private readonly _internals = addInternalsController(this, {\n initialARIA: {\n role: 'progressbar',\n ariaValueMin: '0',\n ariaValueNow: '0',\n },\n });\n\n protected abstract _slots: SlotController<any>;\n\n @query('[part=\"base\"]', true)\n protected _base!: HTMLElement;\n\n @state()\n protected _percentage = 0;\n\n @state()\n protected _progress = 0;\n\n @state()\n protected _hasFraction = false;\n\n @state()\n protected _styleInfo: StyleInfo = {\n '--_progress-whole': '0.00',\n '--_progress-integer': '0',\n '--_progress-fraction': '0',\n '--_transition-duration': '0ms',\n };\n\n /**\n * Maximum value of the control.\n * @attr\n */\n @property({ type: Number })\n public max = 100;\n\n /**\n * The value of the control.\n * @attr\n */\n @property({ type: Number })\n public value = 0;\n\n /**\n * The variant of the control.\n * @attr\n */\n @property({ reflect: true })\n public variant: StyleVariant = 'primary';\n\n /**\n * Animation duration in milliseconds.\n * @attr animation-duration\n */\n @property({ type: Number, attribute: 'animation-duration' })\n public animationDuration = 500;\n\n /**\n * The indeterminate state of the control.\n * @attr\n */\n @property({ type: Boolean, reflect: false })\n public indeterminate = false;\n\n /**\n * Shows/hides the label of the control.\n * @attr hide-label\n */\n @property({ type: Boolean, attribute: 'hide-label', reflect: false })\n public hideLabel = false;\n\n /**\n * Format string for the default label of the control.\n * Placeholders:\n * {0} - current value of the control.\n * {1} - max value of the control.\n * @attr label-format\n */\n @property({ attribute: 'label-format' })\n public labelFormat!: string;\n\n @watch('indeterminate')\n protected _indeterminateChange(): void {\n if (!this.indeterminate) {\n this._updateProgress();\n }\n }\n\n @watch('max')\n protected _maxChange(): void {\n this.max = Math.max(0, this.max);\n if (this.value > this.max) {\n this.value = this.max;\n }\n\n if (!this.indeterminate) {\n this._updateProgress();\n }\n }\n\n @watch('value')\n protected _valueChange(): void {\n this.value = clamp(this.value, 0, this.max);\n\n if (!this.indeterminate) {\n this._updateProgress();\n }\n }\n\n protected override updated(): void {\n this._updateARIA();\n }\n\n private _updateARIA(): void {\n const text = this.labelFormat\n ? this._renderLabelFormat()\n : `${this.value}%`;\n\n this._internals.setARIA({\n ariaValueMax: this.max.toString(),\n ariaValueNow: this.indeterminate ? null : this.value.toString(),\n ariaValueText: this.indeterminate ? null : text,\n });\n }\n\n private _updateProgress(): void {\n const percentage = asPercent(this.value, Math.max(1, this.max));\n const fractionValue = Math.round((percentage % 1) * 100);\n this._hasFraction = fractionValue > 0;\n\n this._styleInfo = {\n '--_progress-whole': percentage.toFixed(2),\n '--_progress-integer': Math.floor(percentage),\n '--_progress-fraction': fractionValue,\n '--_transition-duration': `${this.animationDuration}ms`,\n };\n }\n\n protected _renderLabel() {\n const parts = {\n label: true,\n value: true,\n fraction: this._hasFraction,\n };\n\n return this.labelFormat\n ? html`<span part=${partMap(parts)}>${this._renderLabelFormat()}</span>`\n : html`<span part=${partMap({ ...parts, counter: true })}></span>`;\n }\n\n protected _renderLabelFormat(): string {\n return formatString(this.labelFormat, this.value, this.max);\n }\n\n protected _renderDefaultSlot() {\n const hideDefaultLabel =\n this.indeterminate ||\n this.hideLabel ||\n this._slots.hasAssignedElements('[default]');\n\n return html`\n <slot part=\"label\"></slot>\n ${hideDefaultLabel ? nothing : this._renderLabel()}\n `;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"circular-gradient.js","sourceRoot":"","sources":["../../../src/components/progress/circular-gradient.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"circular-gradient.js","sourceRoot":"","sources":["../../../src/components/progress/circular-gradient.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAWtE,MAAqB,4BAA6B,SAAQ,UAAU;IAApE;;QAaS,WAAM,GAAG,IAAI,CAAC;QAOd,UAAK,GAAG,OAAO,CAAC;QAOhB,YAAO,GAAG,CAAC,CAAC;IAKrB,CAAC;IA5BQ,MAAM,CAAC,QAAQ;QACpB,iBAAiB,CAAC,4BAA4B,CAAC,CAAC;IAClD,CAAC;IAuBkB,MAAM;QACvB,OAAO,OAAO,CAAC;IACjB,CAAC;;AA9BsB,oCAAO,GAAG,uBAAuB,AAA1B,CAA2B;eADtC,4BAA4B;AAaxC;IADN,QAAQ,EAAE;4DACU;AAOd;IADN,QAAQ,EAAE;2DACY;AAOhB;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;6DACR","sourcesContent":["import { LitElement, nothing } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { registerComponent } from '../common/definitions/register.js';\n\n/**\n * Used for defining gradient stops in the igc-circular-progress.\n * For each `igc-circular-gradient` defined as `gradient` slot of `igc-circular-progress` element would be created a SVG stop element.\n * The values passed as `color`, `offset` and `opacity` would be set as\n * `stop-color`, `offset` and `stop-opacity` of the SVG element without further validations.\n *\n * @element igc-circular-gradient\n *\n */\nexport default class IgcCircularGradientComponent extends LitElement {\n public static readonly tagName = 'igc-circular-gradient';\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(IgcCircularGradientComponent);\n }\n\n /**\n * Defines where the gradient stop is placed along the gradient vector\n * @attr\n */\n @property()\n public offset = '0%';\n\n /**\n * Defines the color of the gradient stop\n * @attr\n */\n @property()\n public color = 'black';\n\n /**\n * Defines the opacity of the gradient stop\n * @attr\n */\n @property({ type: Number })\n public opacity = 1;\n\n protected override render() {\n return nothing;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-circular-gradient': IgcCircularGradientComponent;\n }\n}\n"]}
|
|
@@ -25,12 +25,11 @@ import { IgcProgressBaseComponent } from './base.js';
|
|
|
25
25
|
export default class IgcCircularProgressComponent extends IgcProgressBaseComponent {
|
|
26
26
|
static readonly tagName = "igc-circular-progress";
|
|
27
27
|
static styles: import("lit").CSSResult[];
|
|
28
|
-
private static readonly increment;
|
|
29
28
|
static register(): void;
|
|
30
|
-
private _gradientId;
|
|
31
|
-
|
|
29
|
+
private readonly _gradientId;
|
|
30
|
+
protected readonly _slots: import("../common/controllers/slot.js").SlotController<"[default]" | "gradient">;
|
|
32
31
|
constructor();
|
|
33
|
-
protected
|
|
32
|
+
protected _renderSvg(): import("lit-html").TemplateResult<2>;
|
|
34
33
|
protected render(): import("lit-html").TemplateResult<1>;
|
|
35
34
|
}
|
|
36
35
|
declare global {
|
|
@@ -1,33 +1,34 @@
|
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
1
|
import { html, svg } from 'lit';
|
|
8
|
-
import { queryAssignedElements } from 'lit/decorators.js';
|
|
9
2
|
import { styleMap } from 'lit/directives/style-map.js';
|
|
10
3
|
import { addThemingController } from '../../theming/theming-controller.js';
|
|
4
|
+
import { addSlotController, setSlots } from '../common/controllers/slot.js';
|
|
11
5
|
import { registerComponent } from '../common/definitions/register.js';
|
|
12
6
|
import { partMap } from '../common/part-map.js';
|
|
13
|
-
import { createCounter, isEmpty } from '../common/util.js';
|
|
14
7
|
import { IgcProgressBaseComponent } from './base.js';
|
|
15
8
|
import IgcCircularGradientComponent from './circular-gradient.js';
|
|
16
9
|
import { styles } from './themes/circular/circular.progress.base.css.js';
|
|
17
10
|
import { styles as shared } from './themes/circular/shared/circular.progress.common.css.js';
|
|
18
11
|
import { all } from './themes/circular/themes.js';
|
|
12
|
+
let nextId = 1;
|
|
19
13
|
class IgcCircularProgressComponent extends IgcProgressBaseComponent {
|
|
20
14
|
static register() {
|
|
21
15
|
registerComponent(IgcCircularProgressComponent, IgcCircularGradientComponent);
|
|
22
16
|
}
|
|
23
17
|
constructor() {
|
|
24
18
|
super();
|
|
25
|
-
this._gradientId = `circular-progress-${
|
|
19
|
+
this._gradientId = `circular-progress-${nextId++}`;
|
|
20
|
+
this._slots = addSlotController(this, {
|
|
21
|
+
slots: setSlots('gradient'),
|
|
22
|
+
});
|
|
26
23
|
addThemingController(this, all);
|
|
27
24
|
}
|
|
28
|
-
|
|
29
|
-
const gradients =
|
|
30
|
-
? this.
|
|
25
|
+
_renderSvg() {
|
|
26
|
+
const gradients = this._slots.hasAssignedElements('gradient')
|
|
27
|
+
? this._slots
|
|
28
|
+
.getAssignedElements('gradient', {
|
|
29
|
+
selector: IgcCircularGradientComponent.tagName,
|
|
30
|
+
})
|
|
31
|
+
.map(({ offset, color, opacity }) => svg `<stop offset=${offset} stop-color=${color} stop-opacity=${opacity}/>`)
|
|
31
32
|
: svg `
|
|
32
33
|
<stop offset="0%" part="gradient_start" />
|
|
33
34
|
<stop offset="100%" part="gradient_end" />
|
|
@@ -47,19 +48,15 @@ class IgcCircularProgressComponent extends IgcProgressBaseComponent {
|
|
|
47
48
|
return html `
|
|
48
49
|
<div part="base" style=${styleMap(this._styleInfo)}>
|
|
49
50
|
<svg part=${partMap({ svg: true, indeterminate: this.indeterminate })}>
|
|
50
|
-
${this.
|
|
51
|
+
${this._renderSvg()}
|
|
51
52
|
</svg>
|
|
52
53
|
<slot name="gradient"></slot>
|
|
53
|
-
${this.
|
|
54
|
+
${this._renderDefaultSlot()}
|
|
54
55
|
</div>
|
|
55
56
|
`;
|
|
56
57
|
}
|
|
57
58
|
}
|
|
58
59
|
IgcCircularProgressComponent.tagName = 'igc-circular-progress';
|
|
59
60
|
IgcCircularProgressComponent.styles = [styles, shared];
|
|
60
|
-
IgcCircularProgressComponent.increment = createCounter();
|
|
61
61
|
export default IgcCircularProgressComponent;
|
|
62
|
-
__decorate([
|
|
63
|
-
queryAssignedElements({ slot: 'gradient' })
|
|
64
|
-
], IgcCircularProgressComponent.prototype, "_assignedGradients", void 0);
|
|
65
62
|
//# sourceMappingURL=circular-progress.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"circular-progress.js","sourceRoot":"","sources":["../../../src/components/progress/circular-progress.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"circular-progress.js","sourceRoot":"","sources":["../../../src/components/progress/circular-progress.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,4BAA4B,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,iDAAiD,CAAC;AACzE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,0DAA0D,CAAC;AAC5F,OAAO,EAAE,GAAG,EAAE,MAAM,6BAA6B,CAAC;AAElD,IAAI,MAAM,GAAG,CAAC,CAAC;AAyBf,MAAqB,4BAA6B,SAAQ,wBAAwB;IAKzE,MAAM,CAAC,QAAQ;QACpB,iBAAiB,CACf,4BAA4B,EAC5B,4BAA4B,CAC7B,CAAC;IACJ,CAAC;IAOD;QACE,KAAK,EAAE,CAAC;QANO,gBAAW,GAAG,qBAAqB,MAAM,EAAE,EAAE,CAAC;QACnC,WAAM,GAAG,iBAAiB,CAAC,IAAI,EAAE;YAC3D,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC;SAC5B,CAAC,CAAC;QAID,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC;IAES,UAAU;QAClB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAAC;YAC3D,CAAC,CAAC,IAAI,CAAC,MAAM;iBACR,mBAAmB,CAA+B,UAAU,EAAE;gBAC7D,QAAQ,EAAE,4BAA4B,CAAC,OAAO;aAC/C,CAAC;iBACD,GAAG,CACF,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAC7B,GAAG,CAAA,gBAAgB,MAAM,eAAe,KAAK,iBAAiB,OAAO,IAAI,CAC5E;YACL,CAAC,CAAC,GAAG,CAAA;;;OAGJ,CAAC;QAEJ,OAAO,GAAG,CAAA;qBACO,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;sBAC1D,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;;;+BAGxC,IAAI,CAAC,WAAW;YACnC,SAAS;;;KAGhB,CAAC;IACJ,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA;+BACgB,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;oBACpC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;YACjE,IAAI,CAAC,UAAU,EAAE;;;UAGnB,IAAI,CAAC,kBAAkB,EAAE;;KAE9B,CAAC;IACJ,CAAC;;AA1DsB,oCAAO,GAAG,uBAAuB,AAA1B,CAA2B;AAClC,mCAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,AAAnB,CAAoB;eAF9B,4BAA4B","sourcesContent":["import { html, svg } from 'lit';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport { addThemingController } from '../../theming/theming-controller.js';\nimport { addSlotController, setSlots } from '../common/controllers/slot.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport { partMap } from '../common/part-map.js';\nimport { IgcProgressBaseComponent } from './base.js';\nimport IgcCircularGradientComponent from './circular-gradient.js';\nimport { styles } from './themes/circular/circular.progress.base.css.js';\nimport { styles as shared } from './themes/circular/shared/circular.progress.common.css.js';\nimport { all } from './themes/circular/themes.js';\n\nlet nextId = 1;\n\n/**\n * A circular progress indicator used to express unspecified wait time or display\n * the length of a process.\n *\n * @element igc-circular-progress\n *\n * @slot - The text area container.\n * @slot gradient - Customize the progress bar in order to use a color gradient instead of a solid color. Accepts `igc-circular-gradient` elements.\n *\n * @csspart svg - The igc-circular-progress SVG element.\n * @csspart gradient_start - The igc-circular-progress linear-gradient start color.\n * @csspart gradient_end - The igc-circular-progress linear-gradient end color.\n * @csspart track - The igc-circular-progress ring track area.\n * @csspart fill - The igc-circular-progress indicator area.\n * @csspart label - The igc-circular-progress label.\n * @csspart value - The igc-circular-progress label value.\n * @csspart indeterminate - The igc-circular-progress indeterminate state.\n * @csspart primary - The igc-circular-progress primary state.\n * @csspart danger - The igc-circular-progress error state.\n * @csspart warning - The igc-circular-progress warning state.\n * @csspart info - The igc-circular-progress info state.\n * @csspart success - The igc-circular-progress success state.\n */\nexport default class IgcCircularProgressComponent extends IgcProgressBaseComponent {\n public static readonly tagName = 'igc-circular-progress';\n public static override styles = [styles, shared];\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(\n IgcCircularProgressComponent,\n IgcCircularGradientComponent\n );\n }\n\n private readonly _gradientId = `circular-progress-${nextId++}`;\n protected override readonly _slots = addSlotController(this, {\n slots: setSlots('gradient'),\n });\n\n constructor() {\n super();\n addThemingController(this, all);\n }\n\n protected _renderSvg() {\n const gradients = this._slots.hasAssignedElements('gradient')\n ? this._slots\n .getAssignedElements<IgcCircularGradientComponent>('gradient', {\n selector: IgcCircularGradientComponent.tagName,\n })\n .map(\n ({ offset, color, opacity }) =>\n svg`<stop offset=${offset} stop-color=${color} stop-opacity=${opacity}/>`\n )\n : svg`\n <stop offset=\"0%\" part=\"gradient_start\" />\n <stop offset=\"100%\" part=\"gradient_end\" />\n `;\n\n return svg`\n <circle part=${partMap({ track: true, indeterminate: this.indeterminate })}/>\n <circle style=${styleMap({ stroke: `url(#${this._gradientId})` })} part=\"fill\"/>\n\n <defs>\n <linearGradient id=${this._gradientId} gradientTransform=\"rotate(90)\">\n ${gradients}\n </linearGradient>\n </defs>\n `;\n }\n\n protected override render() {\n return html`\n <div part=\"base\" style=${styleMap(this._styleInfo)}>\n <svg part=${partMap({ svg: true, indeterminate: this.indeterminate })}>\n ${this._renderSvg()}\n </svg>\n <slot name=\"gradient\"></slot>\n ${this._renderDefaultSlot()}\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-circular-progress': IgcCircularProgressComponent;\n }\n}\n"]}
|
|
@@ -24,6 +24,7 @@ export default class IgcLinearProgressComponent extends IgcProgressBaseComponent
|
|
|
24
24
|
static readonly tagName = "igc-linear-progress";
|
|
25
25
|
static styles: import("lit").CSSResult[];
|
|
26
26
|
static register(): void;
|
|
27
|
+
protected readonly _slots: import("../common/controllers/slot.js").SlotController<"[default]">;
|
|
27
28
|
/**
|
|
28
29
|
* Sets the striped look of the control.
|
|
29
30
|
* @attr
|
|
@@ -8,6 +8,7 @@ import { html } from 'lit';
|
|
|
8
8
|
import { property } from 'lit/decorators.js';
|
|
9
9
|
import { styleMap } from 'lit/directives/style-map.js';
|
|
10
10
|
import { addThemingController } from '../../theming/theming-controller.js';
|
|
11
|
+
import { addSlotController, setSlots } from '../common/controllers/slot.js';
|
|
11
12
|
import { registerComponent } from '../common/definitions/register.js';
|
|
12
13
|
import { partMap } from '../common/part-map.js';
|
|
13
14
|
import { IgcProgressBaseComponent } from './base.js';
|
|
@@ -20,6 +21,9 @@ class IgcLinearProgressComponent extends IgcProgressBaseComponent {
|
|
|
20
21
|
}
|
|
21
22
|
constructor() {
|
|
22
23
|
super();
|
|
24
|
+
this._slots = addSlotController(this, {
|
|
25
|
+
slots: setSlots(),
|
|
26
|
+
});
|
|
23
27
|
this.striped = false;
|
|
24
28
|
this.labelAlign = 'top-start';
|
|
25
29
|
addThemingController(this, all);
|
|
@@ -37,7 +41,7 @@ class IgcLinearProgressComponent extends IgcProgressBaseComponent {
|
|
|
37
41
|
<div part=${partMap(parts)}></div>
|
|
38
42
|
<div part=${partMap({ ...parts, secondary: true })}></div>
|
|
39
43
|
</div>
|
|
40
|
-
${this.
|
|
44
|
+
${this._renderDefaultSlot()}
|
|
41
45
|
</div>
|
|
42
46
|
`;
|
|
43
47
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"linear-progress.js","sourceRoot":"","sources":["../../../src/components/progress/linear-progress.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,6CAA6C,CAAC;AACrE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,sDAAsD,CAAC;AACxF,OAAO,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAsBhD,MAAqB,0BAA2B,SAAQ,wBAAwB;IAKvE,MAAM,CAAC,QAAQ;QACpB,iBAAiB,CAAC,0BAA0B,CAAC,CAAC;IAChD,CAAC;
|
|
1
|
+
{"version":3,"file":"linear-progress.js","sourceRoot":"","sources":["../../../src/components/progress/linear-progress.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,6CAA6C,CAAC;AACrE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,sDAAsD,CAAC;AACxF,OAAO,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAsBhD,MAAqB,0BAA2B,SAAQ,wBAAwB;IAKvE,MAAM,CAAC,QAAQ;QACpB,iBAAiB,CAAC,0BAA0B,CAAC,CAAC;IAChD,CAAC;IAoBD;QACE,KAAK,EAAE,CAAC;QAnBkB,WAAM,GAAG,iBAAiB,CAAC,IAAI,EAAE;YAC3D,KAAK,EAAE,QAAQ,EAAE;SAClB,CAAC,CAAC;QAOI,YAAO,GAAG,KAAK,CAAC;QAOhB,eAAU,GAA6B,WAAW,CAAC;QAIxD,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC;IAEkB,MAAM;QACvB,MAAM,KAAK,GAAG;YACZ,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI;SACrB,CAAC;QAEF,OAAO,IAAI,CAAA;+BACgB,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;;sBAElC,OAAO,CAAC,KAAK,CAAC;sBACd,OAAO,CAAC,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;;UAElD,IAAI,CAAC,kBAAkB,EAAE;;KAE9B,CAAC;IACJ,CAAC;;AAhDsB,kCAAO,GAAG,qBAAqB,AAAxB,CAAyB;AAChC,iCAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,AAAnB,CAAoB;eAF9B,0BAA0B;AAkBtC;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;2DACpB;AAOhB;IADN,QAAQ,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;8DACI","sourcesContent":["import { html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport { addThemingController } from '../../theming/theming-controller.js';\nimport { addSlotController, setSlots } from '../common/controllers/slot.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport { partMap } from '../common/part-map.js';\nimport type { LinearProgressLabelAlign } from '../types.js';\nimport { IgcProgressBaseComponent } from './base.js';\nimport { styles } from './themes/linear/linear.progress.base.css.js';\nimport { styles as shared } from './themes/linear/shared/linear.progress.common.css.js';\nimport { all } from './themes/linear/themes.js';\n\n/**\n * A linear progress indicator used to express unspecified wait time or display\n * the length of a process.\n *\n * @element igc-linear-progress\n *\n * @slot - The text area container.\n *\n * @csspart track - The igc-linear-progress track area.\n * @csspart fill - The igc-linear-progress indicator area.\n * @csspart striped - The igc-linear-progress striped indicator.\n * @csspart label - The igc-linear-progress label.\n * @csspart value - The igc-linear-progress label value.\n * @csspart indeterminate - The igc-linear-progress indeterminate state.\n * @csspart primary - The igc-linear-progress indicator primary state.\n * @csspart danger - The igc-linear-progress indicator error state.\n * @csspart warning - The igc-linear-progress indicator warning state.\n * @csspart info - The igc-linear-progress indicator info state.\n * @csspart success - The igc-linear-progress indicator success state.\n */\nexport default class IgcLinearProgressComponent extends IgcProgressBaseComponent {\n public static readonly tagName = 'igc-linear-progress';\n public static override styles = [styles, shared];\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(IgcLinearProgressComponent);\n }\n\n protected override readonly _slots = addSlotController(this, {\n slots: setSlots(),\n });\n\n /**\n * Sets the striped look of the control.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public striped = false;\n\n /**\n * The position for the default label of the control.\n * @attr label-align\n */\n @property({ attribute: 'label-align', reflect: true })\n public labelAlign: LinearProgressLabelAlign = 'top-start';\n\n constructor() {\n super();\n addThemingController(this, all);\n }\n\n protected override render() {\n const parts = {\n fill: true,\n striped: this.striped,\n indeterminate: this.indeterminate,\n [this.variant]: true,\n };\n\n return html`\n <div part=\"base\" style=${styleMap(this._styleInfo)}>\n <div part=\"track\">\n <div part=${partMap(parts)}></div>\n <div part=${partMap({ ...parts, secondary: true })}></div>\n </div>\n ${this._renderDefaultSlot()}\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-linear-progress': IgcLinearProgressComponent;\n }\n}\n"]}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { LitElement, type TemplateResult } from 'lit';
|
|
2
2
|
import type { Constructor } from '../common/mixins/constructor.js';
|
|
3
|
-
import { type FormValueOf } from '../common/mixins/forms/form-value.js';
|
|
4
3
|
import type { ToggleLabelPosition } from '../types.js';
|
|
5
4
|
export interface IgcRadioChangeEventArgs {
|
|
6
5
|
checked: boolean;
|
|
@@ -31,15 +30,14 @@ export default class IgcRadioComponent extends IgcRadioComponent_base {
|
|
|
31
30
|
static readonly tagName = "igc-radio";
|
|
32
31
|
protected static styles: import("lit").CSSResult[];
|
|
33
32
|
static register(): void;
|
|
34
|
-
private static readonly increment;
|
|
35
33
|
protected get __validators(): import("../common/validators.js").Validator<IgcRadioComponent>[];
|
|
36
|
-
protected readonly _formValue: FormValueOf<boolean>;
|
|
37
34
|
private readonly _inputId;
|
|
38
35
|
private readonly _labelId;
|
|
39
36
|
private readonly _focusRingManager;
|
|
37
|
+
private readonly _slots;
|
|
38
|
+
protected readonly _formValue: import("../common/mixins/forms/form-value.js").FormValue<boolean>;
|
|
40
39
|
protected _value: string;
|
|
41
40
|
protected readonly _input: HTMLInputElement;
|
|
42
|
-
protected readonly _label: Array<Node>;
|
|
43
41
|
protected _hideLabel: boolean;
|
|
44
42
|
private _tabIndex;
|
|
45
43
|
/** Returns all radio elements from the group, that is having the same name property. */
|
|
@@ -70,8 +68,8 @@ export default class IgcRadioComponent extends IgcRadioComponent_base {
|
|
|
70
68
|
*/
|
|
71
69
|
labelPosition: ToggleLabelPosition;
|
|
72
70
|
constructor();
|
|
73
|
-
protected createRenderRoot(): HTMLElement | DocumentFragment;
|
|
74
71
|
protected firstUpdated(): Promise<void>;
|
|
72
|
+
protected _handleSlotChange(): void;
|
|
75
73
|
protected _setDefaultValue(current: string | null): void;
|
|
76
74
|
/** Simulates a click on the radio control. */
|
|
77
75
|
click(): void;
|
|
@@ -4,25 +4,28 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
-
import { html, LitElement } from 'lit';
|
|
8
|
-
import { property, query,
|
|
7
|
+
import { html, LitElement, nothing } from 'lit';
|
|
8
|
+
import { property, query, state } from 'lit/decorators.js';
|
|
9
9
|
import { ifDefined } from 'lit/directives/if-defined.js';
|
|
10
10
|
import { live } from 'lit/directives/live.js';
|
|
11
11
|
import { addThemingController } from '../../theming/theming-controller.js';
|
|
12
12
|
import { addKeyboardFocusRing } from '../common/controllers/focus-ring.js';
|
|
13
13
|
import { addKeybindings, arrowDown, arrowLeft, arrowRight, arrowUp, } from '../common/controllers/key-bindings.js';
|
|
14
|
+
import { addSlotController, setSlots } from '../common/controllers/slot.js';
|
|
14
15
|
import { registerComponent } from '../common/definitions/register.js';
|
|
15
16
|
import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
|
|
16
17
|
import { FormAssociatedCheckboxRequiredMixin } from '../common/mixins/forms/associated-required.js';
|
|
17
|
-
import {
|
|
18
|
+
import { FormValueBooleanTransformers } from '../common/mixins/forms/form-transformers.js';
|
|
19
|
+
import { createFormValueState } from '../common/mixins/forms/form-value.js';
|
|
18
20
|
import { partMap } from '../common/part-map.js';
|
|
19
|
-
import {
|
|
21
|
+
import { isDefined, isEmpty, isLTR, last, wrap } from '../common/util.js';
|
|
20
22
|
import IgcValidationContainerComponent from '../validation-container/validation-container.js';
|
|
21
23
|
import { styles } from './themes/radio.base.css.js';
|
|
22
24
|
import { styles as shared } from './themes/shared/radio.common.css.js';
|
|
23
25
|
import { all } from './themes/themes.js';
|
|
24
26
|
import { getGroup } from './utils.js';
|
|
25
27
|
import { radioValidators } from './validators.js';
|
|
28
|
+
let nextId = 1;
|
|
26
29
|
class IgcRadioComponent extends FormAssociatedCheckboxRequiredMixin(EventEmitterMixin(LitElement)) {
|
|
27
30
|
static register() {
|
|
28
31
|
registerComponent(IgcRadioComponent, IgcValidationContainerComponent);
|
|
@@ -56,7 +59,7 @@ class IgcRadioComponent extends FormAssociatedCheckboxRequiredMixin(EventEmitter
|
|
|
56
59
|
set value(value) {
|
|
57
60
|
this._value = value;
|
|
58
61
|
if (this.checked) {
|
|
59
|
-
this.
|
|
62
|
+
this._formValue.setValueAndFormState(this.checked);
|
|
60
63
|
}
|
|
61
64
|
}
|
|
62
65
|
get value() {
|
|
@@ -65,7 +68,6 @@ class IgcRadioComponent extends FormAssociatedCheckboxRequiredMixin(EventEmitter
|
|
|
65
68
|
set checked(value) {
|
|
66
69
|
this._formValue.setValueAndFormState(value);
|
|
67
70
|
this._tabIndex = this.checked ? 0 : -1;
|
|
68
|
-
this._validate();
|
|
69
71
|
if (this.hasUpdated && this.checked) {
|
|
70
72
|
this._updateCheckedState();
|
|
71
73
|
}
|
|
@@ -75,14 +77,18 @@ class IgcRadioComponent extends FormAssociatedCheckboxRequiredMixin(EventEmitter
|
|
|
75
77
|
}
|
|
76
78
|
constructor() {
|
|
77
79
|
super();
|
|
80
|
+
this._inputId = `radio-${nextId++}`;
|
|
81
|
+
this._labelId = `radio-label-${this._inputId}`;
|
|
82
|
+
this._focusRingManager = addKeyboardFocusRing(this);
|
|
83
|
+
this._slots = addSlotController(this, {
|
|
84
|
+
slots: setSlots('helper-text', 'value-missing', 'custom-error', 'invalid'),
|
|
85
|
+
onChange: this._handleSlotChange,
|
|
86
|
+
});
|
|
78
87
|
this._formValue = createFormValueState(this, {
|
|
79
88
|
initialValue: false,
|
|
80
|
-
transformers:
|
|
89
|
+
transformers: FormValueBooleanTransformers,
|
|
81
90
|
});
|
|
82
|
-
this.
|
|
83
|
-
this._labelId = `radio-label-${this._inputId}`;
|
|
84
|
-
this._focusRingManager = addKeyboardFocusRing(this);
|
|
85
|
-
this._hideLabel = false;
|
|
91
|
+
this._hideLabel = true;
|
|
86
92
|
this._tabIndex = 0;
|
|
87
93
|
this.labelPosition = 'after';
|
|
88
94
|
addThemingController(this, all);
|
|
@@ -95,14 +101,6 @@ class IgcRadioComponent extends FormAssociatedCheckboxRequiredMixin(EventEmitter
|
|
|
95
101
|
.set(arrowUp, () => this._navigate(-1))
|
|
96
102
|
.set(arrowDown, () => this._navigate(1));
|
|
97
103
|
}
|
|
98
|
-
createRenderRoot() {
|
|
99
|
-
const root = super.createRenderRoot();
|
|
100
|
-
this._hideLabel = isEmpty(this._label);
|
|
101
|
-
root.addEventListener('slotchange', () => {
|
|
102
|
-
this._hideLabel = isEmpty(this._label);
|
|
103
|
-
});
|
|
104
|
-
return root;
|
|
105
|
-
}
|
|
106
104
|
async firstUpdated() {
|
|
107
105
|
await this.updateComplete;
|
|
108
106
|
if (this.checked && this === last(this._checkedRadios)) {
|
|
@@ -112,9 +110,12 @@ class IgcRadioComponent extends FormAssociatedCheckboxRequiredMixin(EventEmitter
|
|
|
112
110
|
}
|
|
113
111
|
}
|
|
114
112
|
else {
|
|
115
|
-
this.
|
|
113
|
+
this._validate();
|
|
116
114
|
}
|
|
117
115
|
}
|
|
116
|
+
_handleSlotChange() {
|
|
117
|
+
this._hideLabel = !this._slots.hasAssignedNodes('[default]', true);
|
|
118
|
+
}
|
|
118
119
|
_setDefaultValue(current) {
|
|
119
120
|
this._formValue.defaultValue = isDefined(current);
|
|
120
121
|
for (const radio of this._siblings) {
|
|
@@ -161,6 +162,7 @@ class IgcRadioComponent extends FormAssociatedCheckboxRequiredMixin(EventEmitter
|
|
|
161
162
|
formResetCallback() {
|
|
162
163
|
super.formResetCallback();
|
|
163
164
|
this._resetTabIndexes();
|
|
165
|
+
this.updateComplete.then(() => this._validate());
|
|
164
166
|
}
|
|
165
167
|
_resetTabIndexes() {
|
|
166
168
|
const radios = this._radios;
|
|
@@ -177,6 +179,7 @@ class IgcRadioComponent extends FormAssociatedCheckboxRequiredMixin(EventEmitter
|
|
|
177
179
|
}
|
|
178
180
|
_handleClick(event) {
|
|
179
181
|
event.stopPropagation();
|
|
182
|
+
this._setTouchedState();
|
|
180
183
|
if (this.checked) {
|
|
181
184
|
return;
|
|
182
185
|
}
|
|
@@ -193,6 +196,7 @@ class IgcRadioComponent extends FormAssociatedCheckboxRequiredMixin(EventEmitter
|
|
|
193
196
|
const active = this._active;
|
|
194
197
|
const next = wrap(0, active.length - 1, active.indexOf(this) + idx);
|
|
195
198
|
const radio = active[next];
|
|
199
|
+
this._setTouchedState();
|
|
196
200
|
radio.focus();
|
|
197
201
|
radio.checked = true;
|
|
198
202
|
radio.emitEvent('igcChange', {
|
|
@@ -204,6 +208,9 @@ class IgcRadioComponent extends FormAssociatedCheckboxRequiredMixin(EventEmitter
|
|
|
204
208
|
}
|
|
205
209
|
render() {
|
|
206
210
|
const labelledBy = this.getAttribute('aria-labelledby');
|
|
211
|
+
const describedBy = this._slots.hasAssignedElements('helper-text')
|
|
212
|
+
? 'helper-text'
|
|
213
|
+
: nothing;
|
|
207
214
|
const checked = this.checked;
|
|
208
215
|
return html `
|
|
209
216
|
<label
|
|
@@ -219,25 +226,24 @@ class IgcRadioComponent extends FormAssociatedCheckboxRequiredMixin(EventEmitter
|
|
|
219
226
|
type="radio"
|
|
220
227
|
name=${ifDefined(this.name)}
|
|
221
228
|
value=${ifDefined(this.value)}
|
|
222
|
-
|
|
223
|
-
|
|
229
|
+
?required=${this.required}
|
|
230
|
+
?disabled=${this.disabled}
|
|
224
231
|
.checked=${live(checked)}
|
|
225
232
|
tabindex=${this._tabIndex}
|
|
226
|
-
aria-checked=${checked}
|
|
227
|
-
aria-disabled=${this.disabled}
|
|
228
233
|
aria-labelledby=${labelledBy ? labelledBy : this._labelId}
|
|
234
|
+
aria-describedby=${describedBy}
|
|
229
235
|
@click=${this._handleClick}
|
|
230
236
|
/>
|
|
231
237
|
<span part=${partMap({ control: true, checked })}>
|
|
232
238
|
<span
|
|
233
|
-
.hidden=${this.disabled}
|
|
234
239
|
part=${partMap({ ripple: true, checked })}
|
|
240
|
+
?hidden=${this.disabled}
|
|
235
241
|
></span>
|
|
236
242
|
</span>
|
|
237
243
|
<span
|
|
238
|
-
.hidden=${this._hideLabel}
|
|
239
|
-
part=${partMap({ label: true, checked })}
|
|
240
244
|
id=${this._labelId}
|
|
245
|
+
part=${partMap({ label: true, checked })}
|
|
246
|
+
?hidden=${this._hideLabel}
|
|
241
247
|
>
|
|
242
248
|
<slot></slot>
|
|
243
249
|
</span>
|
|
@@ -248,14 +254,10 @@ class IgcRadioComponent extends FormAssociatedCheckboxRequiredMixin(EventEmitter
|
|
|
248
254
|
}
|
|
249
255
|
IgcRadioComponent.tagName = 'igc-radio';
|
|
250
256
|
IgcRadioComponent.styles = [styles, shared];
|
|
251
|
-
IgcRadioComponent.increment = createCounter();
|
|
252
257
|
export default IgcRadioComponent;
|
|
253
258
|
__decorate([
|
|
254
259
|
query('input', true)
|
|
255
260
|
], IgcRadioComponent.prototype, "_input", void 0);
|
|
256
|
-
__decorate([
|
|
257
|
-
queryAssignedNodes({ flatten: true })
|
|
258
|
-
], IgcRadioComponent.prototype, "_label", void 0);
|
|
259
261
|
__decorate([
|
|
260
262
|
state()
|
|
261
263
|
], IgcRadioComponent.prototype, "_hideLabel", void 0);
|