@fluentui/web-components 3.0.0-beta.83 → 3.0.0-beta.85
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 +20 -2
- package/dist/dts/accordion-item/accordion-item.base.d.ts +71 -0
- package/dist/dts/accordion-item/accordion-item.d.ts +1 -71
- package/dist/dts/accordion-item/index.d.ts +2 -1
- package/dist/dts/anchor-button/anchor-button.base.d.ts +144 -0
- package/dist/dts/anchor-button/anchor-button.d.ts +2 -144
- package/dist/dts/anchor-button/index.d.ts +3 -1
- package/dist/dts/avatar/avatar.base.d.ts +42 -0
- package/dist/dts/avatar/avatar.d.ts +2 -42
- package/dist/dts/avatar/index.d.ts +2 -1
- package/dist/dts/button/button.base.d.ts +242 -0
- package/dist/dts/button/button.d.ts +2 -242
- package/dist/dts/button/index.d.ts +2 -1
- package/dist/dts/checkbox/checkbox.base.d.ts +288 -0
- package/dist/dts/checkbox/checkbox.d.ts +1 -288
- package/dist/dts/checkbox/index.d.ts +2 -1
- package/dist/dts/divider/divider.base.d.ts +49 -0
- package/dist/dts/divider/divider.d.ts +2 -49
- package/dist/dts/divider/index.d.ts +2 -1
- package/dist/dts/dropdown/dropdown.base.d.ts +418 -0
- package/dist/dts/dropdown/dropdown.d.ts +2 -418
- package/dist/dts/dropdown/dropdown.options.d.ts +1 -1
- package/dist/dts/dropdown/dropdown.template.d.ts +1 -1
- package/dist/dts/dropdown/index.d.ts +2 -1
- package/dist/dts/field/field.base.d.ts +120 -0
- package/dist/dts/field/field.d.ts +2 -120
- package/dist/dts/field/index.d.ts +2 -1
- package/dist/dts/index-rollup.d.ts +2 -0
- package/dist/dts/index.d.ts +7 -8
- package/dist/dts/link/link.d.ts +1 -1
- package/dist/dts/listbox/listbox.d.ts +1 -1
- package/dist/dts/progress-bar/index.d.ts +2 -1
- package/dist/dts/progress-bar/progress-bar.base.d.ts +73 -0
- package/dist/dts/progress-bar/progress-bar.d.ts +2 -73
- package/dist/dts/radio/radio.d.ts +1 -1
- package/dist/dts/rating-display/index.d.ts +2 -1
- package/dist/dts/rating-display/rating-display.base.d.ts +89 -0
- package/dist/dts/rating-display/rating-display.d.ts +1 -89
- package/dist/dts/spinner/index.d.ts +2 -1
- package/dist/dts/spinner/spinner.base.d.ts +14 -0
- package/dist/dts/spinner/spinner.d.ts +1 -14
- package/dist/dts/switch/switch.d.ts +1 -1
- package/dist/dts/tablist/index.d.ts +2 -1
- package/dist/dts/tablist/tablist.base.d.ts +95 -0
- package/dist/dts/tablist/tablist.d.ts +2 -95
- package/dist/dts/tabs/tabs.base.d.ts +90 -0
- package/dist/dts/tabs/tabs.d.ts +2 -90
- package/dist/dts/text-input/index.d.ts +2 -1
- package/dist/dts/text-input/text-input.base.d.ts +393 -0
- package/dist/dts/text-input/text-input.d.ts +2 -393
- package/dist/dts/textarea/index.d.ts +2 -1
- package/dist/dts/textarea/textarea.base.d.ts +347 -0
- package/dist/dts/textarea/textarea.d.ts +2 -347
- package/dist/dts/tree/define.d.ts +1 -0
- package/dist/dts/tree/index.d.ts +4 -0
- package/dist/dts/tree/tree.bench.d.ts +3 -0
- package/dist/dts/tree/tree.d.ts +88 -0
- package/dist/dts/tree/tree.definition.d.ts +8 -0
- package/dist/dts/tree/tree.styles.d.ts +1 -0
- package/dist/dts/tree/tree.template.d.ts +2 -0
- package/dist/dts/tree-item/define.d.ts +1 -0
- package/dist/dts/tree-item/index.d.ts +5 -0
- package/dist/dts/tree-item/tree-item.bench.d.ts +3 -0
- package/dist/dts/tree-item/tree-item.d.ts +121 -0
- package/dist/dts/tree-item/tree-item.definition.d.ts +8 -0
- package/dist/dts/tree-item/tree-item.options.d.ts +22 -0
- package/dist/dts/tree-item/tree-item.styles.d.ts +1 -0
- package/dist/dts/tree-item/tree-item.template.d.ts +2 -0
- package/dist/esm/accordion/accordion.js +1 -1
- package/dist/esm/accordion/accordion.js.map +1 -1
- package/dist/esm/accordion-item/accordion-item.base.js +94 -0
- package/dist/esm/accordion-item/accordion-item.base.js.map +1 -0
- package/dist/esm/accordion-item/accordion-item.js +2 -91
- package/dist/esm/accordion-item/accordion-item.js.map +1 -1
- package/dist/esm/accordion-item/index.js +2 -1
- package/dist/esm/accordion-item/index.js.map +1 -1
- package/dist/esm/anchor-button/anchor-button.base.js +147 -0
- package/dist/esm/anchor-button/anchor-button.base.js.map +1 -0
- package/dist/esm/anchor-button/anchor-button.js +3 -145
- package/dist/esm/anchor-button/anchor-button.js.map +1 -1
- package/dist/esm/anchor-button/index.js +3 -1
- package/dist/esm/anchor-button/index.js.map +1 -1
- package/dist/esm/avatar/avatar.base.js +28 -0
- package/dist/esm/avatar/avatar.base.js.map +1 -0
- package/dist/esm/avatar/avatar.js +2 -26
- package/dist/esm/avatar/avatar.js.map +1 -1
- package/dist/esm/avatar/index.js +2 -1
- package/dist/esm/avatar/index.js.map +1 -1
- package/dist/esm/button/button.base.js +283 -0
- package/dist/esm/button/button.base.js.map +1 -0
- package/dist/esm/button/button.js +3 -281
- package/dist/esm/button/button.js.map +1 -1
- package/dist/esm/button/button.styles.js +2 -1
- package/dist/esm/button/button.styles.js.map +1 -1
- package/dist/esm/button/index.js +2 -1
- package/dist/esm/button/index.js.map +1 -1
- package/dist/esm/checkbox/checkbox.base.js +366 -0
- package/dist/esm/checkbox/checkbox.base.js.map +1 -0
- package/dist/esm/checkbox/checkbox.js +2 -363
- package/dist/esm/checkbox/checkbox.js.map +1 -1
- package/dist/esm/checkbox/index.js +2 -1
- package/dist/esm/checkbox/index.js.map +1 -1
- package/dist/esm/divider/divider.base.js +61 -0
- package/dist/esm/divider/divider.base.js.map +1 -0
- package/dist/esm/divider/divider.js +3 -58
- package/dist/esm/divider/divider.js.map +1 -1
- package/dist/esm/divider/index.js +2 -1
- package/dist/esm/divider/index.js.map +1 -1
- package/dist/esm/dropdown/dropdown.base.js +677 -0
- package/dist/esm/dropdown/dropdown.base.js.map +1 -0
- package/dist/esm/dropdown/dropdown.js +3 -674
- package/dist/esm/dropdown/dropdown.js.map +1 -1
- package/dist/esm/dropdown/index.js +2 -1
- package/dist/esm/dropdown/index.js.map +1 -1
- package/dist/esm/field/field.base.js +189 -0
- package/dist/esm/field/field.base.js.map +1 -0
- package/dist/esm/field/field.js +3 -187
- package/dist/esm/field/field.js.map +1 -1
- package/dist/esm/field/index.js +2 -1
- package/dist/esm/field/index.js.map +1 -1
- package/dist/esm/index-rollup.js +2 -0
- package/dist/esm/index-rollup.js.map +1 -1
- package/dist/esm/index.js +6 -5
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/link/link.js +1 -1
- package/dist/esm/link/link.js.map +1 -1
- package/dist/esm/progress-bar/index.js +2 -1
- package/dist/esm/progress-bar/index.js.map +1 -1
- package/dist/esm/progress-bar/progress-bar.base.js +90 -0
- package/dist/esm/progress-bar/progress-bar.base.js.map +1 -0
- package/dist/esm/progress-bar/progress-bar.js +3 -87
- package/dist/esm/progress-bar/progress-bar.js.map +1 -1
- package/dist/esm/radio/radio.js +1 -1
- package/dist/esm/radio/radio.js.map +1 -1
- package/dist/esm/rating-display/index.js +2 -1
- package/dist/esm/rating-display/index.js.map +1 -1
- package/dist/esm/rating-display/rating-display.base.js +94 -0
- package/dist/esm/rating-display/rating-display.base.js.map +1 -0
- package/dist/esm/rating-display/rating-display.js +2 -92
- package/dist/esm/rating-display/rating-display.js.map +1 -1
- package/dist/esm/spinner/index.js +2 -1
- package/dist/esm/spinner/index.js.map +1 -1
- package/dist/esm/spinner/spinner.base.js +18 -0
- package/dist/esm/spinner/spinner.base.js.map +1 -0
- package/dist/esm/spinner/spinner.js +2 -17
- package/dist/esm/spinner/spinner.js.map +1 -1
- package/dist/esm/switch/switch.js +1 -1
- package/dist/esm/switch/switch.js.map +1 -1
- package/dist/esm/tablist/index.js +2 -1
- package/dist/esm/tablist/index.js.map +1 -1
- package/dist/esm/tablist/tablist.base.js +248 -0
- package/dist/esm/tablist/tablist.base.js.map +1 -0
- package/dist/esm/tablist/tablist.js +3 -245
- package/dist/esm/tablist/tablist.js.map +1 -1
- package/dist/esm/tabs/tabs.base.js +279 -0
- package/dist/esm/tabs/tabs.base.js.map +1 -0
- package/dist/esm/tabs/tabs.js +2 -276
- package/dist/esm/tabs/tabs.js.map +1 -1
- package/dist/esm/text-input/index.js +2 -1
- package/dist/esm/text-input/index.js.map +1 -1
- package/dist/esm/text-input/text-input.base.js +409 -0
- package/dist/esm/text-input/text-input.base.js.map +1 -0
- package/dist/esm/text-input/text-input.js +3 -407
- package/dist/esm/text-input/text-input.js.map +1 -1
- package/dist/esm/textarea/index.js +2 -1
- package/dist/esm/textarea/index.js.map +1 -1
- package/dist/esm/textarea/textarea.base.js +494 -0
- package/dist/esm/textarea/textarea.base.js.map +1 -0
- package/dist/esm/textarea/textarea.js +3 -491
- package/dist/esm/textarea/textarea.js.map +1 -1
- package/dist/esm/tree/define.js +4 -0
- package/dist/esm/tree/define.js.map +1 -0
- package/dist/esm/tree/index.js +5 -0
- package/dist/esm/tree/index.js.map +1 -0
- package/dist/esm/tree/tree.bench.js +10 -0
- package/dist/esm/tree/tree.bench.js.map +1 -0
- package/dist/esm/tree/tree.definition.js +16 -0
- package/dist/esm/tree/tree.definition.js.map +1 -0
- package/dist/esm/tree/tree.js +274 -0
- package/dist/esm/tree/tree.js.map +1 -0
- package/dist/esm/tree/tree.styles.js +9 -0
- package/dist/esm/tree/tree.styles.js.map +1 -0
- package/dist/esm/tree/tree.template.js +18 -0
- package/dist/esm/tree/tree.template.js.map +1 -0
- package/dist/esm/tree-item/define.js +4 -0
- package/dist/esm/tree-item/define.js.map +1 -0
- package/dist/esm/tree-item/index.js +5 -0
- package/dist/esm/tree-item/index.js.map +1 -0
- package/dist/esm/tree-item/tree-item.bench.js +10 -0
- package/dist/esm/tree-item/tree-item.bench.js.map +1 -0
- package/dist/esm/tree-item/tree-item.definition.js +16 -0
- package/dist/esm/tree-item/tree-item.definition.js.map +1 -0
- package/dist/esm/tree-item/tree-item.js +201 -0
- package/dist/esm/tree-item/tree-item.js.map +1 -0
- package/dist/esm/tree-item/tree-item.options.js +24 -0
- package/dist/esm/tree-item/tree-item.options.js.map +1 -0
- package/dist/esm/tree-item/tree-item.styles.js +170 -0
- package/dist/esm/tree-item/tree-item.styles.js.map +1 -0
- package/dist/esm/tree-item/tree-item.template.js +41 -0
- package/dist/esm/tree-item/tree-item.template.js.map +1 -0
- package/dist/web-components.d.ts +157 -0
- package/dist/web-components.js +1445 -842
- package/dist/web-components.min.js +310 -303
- package/package.json +5 -1
|
@@ -0,0 +1,366 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { attr, FASTElement, Observable, observable } from '@microsoft/fast-element';
|
|
3
|
+
import { toggleState } from '../utils/element-internals.js';
|
|
4
|
+
/**
|
|
5
|
+
* The base class for a component with a toggleable checked state.
|
|
6
|
+
*
|
|
7
|
+
* @public
|
|
8
|
+
*/
|
|
9
|
+
export class BaseCheckbox extends FASTElement {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(...arguments);
|
|
12
|
+
/**
|
|
13
|
+
* The initial value of the input.
|
|
14
|
+
*
|
|
15
|
+
* @public
|
|
16
|
+
* @remarks
|
|
17
|
+
* HTML Attribute: `value`
|
|
18
|
+
*/
|
|
19
|
+
this.initialValue = 'on';
|
|
20
|
+
/**
|
|
21
|
+
* Indicates that the checked state has been changed by the user.
|
|
22
|
+
*
|
|
23
|
+
* @internal
|
|
24
|
+
*/
|
|
25
|
+
this.dirtyChecked = false;
|
|
26
|
+
/**
|
|
27
|
+
* The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
|
|
28
|
+
*
|
|
29
|
+
* @internal
|
|
30
|
+
*/
|
|
31
|
+
this.elementInternals = this.attachInternals();
|
|
32
|
+
/**
|
|
33
|
+
* The fallback validation message, taken from a native checkbox `<input>` element.
|
|
34
|
+
*
|
|
35
|
+
* @internal
|
|
36
|
+
*/
|
|
37
|
+
this._validationFallbackMessage = '';
|
|
38
|
+
/**
|
|
39
|
+
* The internal value of the input.
|
|
40
|
+
*
|
|
41
|
+
* @internal
|
|
42
|
+
*/
|
|
43
|
+
this._value = this.initialValue;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* The element's current checked state.
|
|
47
|
+
*
|
|
48
|
+
* @public
|
|
49
|
+
*/
|
|
50
|
+
get checked() {
|
|
51
|
+
Observable.track(this, 'checked');
|
|
52
|
+
return !!this._checked;
|
|
53
|
+
}
|
|
54
|
+
set checked(next) {
|
|
55
|
+
this._checked = next;
|
|
56
|
+
this.setFormValue(next ? this.value : null);
|
|
57
|
+
this.setValidity();
|
|
58
|
+
this.setAriaChecked();
|
|
59
|
+
toggleState(this.elementInternals, 'checked', next);
|
|
60
|
+
Observable.notify(this, 'checked');
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Toggles the disabled state when the user changes the `disabled` property.
|
|
64
|
+
*
|
|
65
|
+
* @internal
|
|
66
|
+
*/
|
|
67
|
+
disabledChanged(prev, next) {
|
|
68
|
+
this.elementInternals.ariaDisabled = this.disabled ? 'true' : 'false';
|
|
69
|
+
toggleState(this.elementInternals, 'disabled', this.disabled);
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Sets the disabled state when the `disabled` attribute changes.
|
|
73
|
+
*
|
|
74
|
+
* @param prev - the previous value
|
|
75
|
+
* @param next - the current value
|
|
76
|
+
* @internal
|
|
77
|
+
*/
|
|
78
|
+
disabledAttributeChanged(prev, next) {
|
|
79
|
+
this.disabled = !!next;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Updates the checked state when the `checked` attribute is changed, unless the checked state has been changed by the user.
|
|
83
|
+
*
|
|
84
|
+
* @param prev - The previous initial checked state
|
|
85
|
+
* @param next - The current initial checked state
|
|
86
|
+
* @internal
|
|
87
|
+
*/
|
|
88
|
+
initialCheckedChanged(prev, next) {
|
|
89
|
+
if (!this.dirtyChecked) {
|
|
90
|
+
this.checked = !!next;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Sets the value of the input when the `value` attribute changes.
|
|
95
|
+
*
|
|
96
|
+
* @param prev - The previous initial value
|
|
97
|
+
* @param next - The current initial value
|
|
98
|
+
* @internal
|
|
99
|
+
*/
|
|
100
|
+
initialValueChanged(prev, next) {
|
|
101
|
+
this._value = next;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Sets the validity of the control when the required state changes.
|
|
105
|
+
*
|
|
106
|
+
* @param prev - The previous required state
|
|
107
|
+
* @param next - The current required state
|
|
108
|
+
* @internal
|
|
109
|
+
*/
|
|
110
|
+
requiredChanged(prev, next) {
|
|
111
|
+
if (this.$fastController.isConnected) {
|
|
112
|
+
this.setValidity();
|
|
113
|
+
this.elementInternals.ariaRequired = this.required ? 'true' : 'false';
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* The associated `<form>` element.
|
|
118
|
+
*
|
|
119
|
+
* @public
|
|
120
|
+
* @remarks
|
|
121
|
+
* Reflects the {@link https://developer.mozilla.org/docs/Web/API/ElementInternals/form | `ElementInternals.form`} property.
|
|
122
|
+
*/
|
|
123
|
+
get form() {
|
|
124
|
+
return this.elementInternals.form;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* The form-associated flag.
|
|
128
|
+
* @see {@link https://html.spec.whatwg.org/multipage/custom-elements.html#custom-elements-face-example | Form-associated custom elements}
|
|
129
|
+
*
|
|
130
|
+
* @public
|
|
131
|
+
*/
|
|
132
|
+
static { this.formAssociated = true; }
|
|
133
|
+
/**
|
|
134
|
+
* A reference to all associated `<label>` elements.
|
|
135
|
+
*
|
|
136
|
+
* @public
|
|
137
|
+
*/
|
|
138
|
+
get labels() {
|
|
139
|
+
return Object.freeze(Array.from(this.elementInternals.labels));
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* The validation message. Uses the browser's default validation message for native checkboxes if not otherwise
|
|
143
|
+
* specified (e.g., via `setCustomValidity`).
|
|
144
|
+
*
|
|
145
|
+
* @public
|
|
146
|
+
* @remarks
|
|
147
|
+
* Reflects the {@link https://developer.mozilla.org/docs/Web/API/ElementInternals/validationMessage | `ElementInternals.validationMessage`} property.
|
|
148
|
+
*/
|
|
149
|
+
get validationMessage() {
|
|
150
|
+
if (this.elementInternals.validationMessage) {
|
|
151
|
+
return this.elementInternals.validationMessage;
|
|
152
|
+
}
|
|
153
|
+
if (!this._validationFallbackMessage) {
|
|
154
|
+
const validationMessageFallbackControl = document.createElement('input');
|
|
155
|
+
validationMessageFallbackControl.type = 'checkbox';
|
|
156
|
+
validationMessageFallbackControl.required = true;
|
|
157
|
+
validationMessageFallbackControl.checked = false;
|
|
158
|
+
this._validationFallbackMessage = validationMessageFallbackControl.validationMessage;
|
|
159
|
+
}
|
|
160
|
+
return this._validationFallbackMessage;
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* The element's validity state.
|
|
164
|
+
*
|
|
165
|
+
* @public
|
|
166
|
+
* @remarks
|
|
167
|
+
* Reflects the {@link https://developer.mozilla.org/docs/Web/API/ElementInternals/validity | `ElementInternals.validity`} property.
|
|
168
|
+
*/
|
|
169
|
+
get validity() {
|
|
170
|
+
return this.elementInternals.validity;
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* The current value of the input.
|
|
174
|
+
*
|
|
175
|
+
* @public
|
|
176
|
+
*/
|
|
177
|
+
get value() {
|
|
178
|
+
Observable.track(this, 'value');
|
|
179
|
+
return this._value;
|
|
180
|
+
}
|
|
181
|
+
set value(value) {
|
|
182
|
+
this._value = value;
|
|
183
|
+
if (this.$fastController.isConnected) {
|
|
184
|
+
this.setFormValue(value);
|
|
185
|
+
this.setValidity();
|
|
186
|
+
Observable.notify(this, 'value');
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Determines if the control can be submitted for constraint validation.
|
|
191
|
+
*
|
|
192
|
+
* @public
|
|
193
|
+
* @remarks
|
|
194
|
+
* Reflects the {@link https://developer.mozilla.org/docs/Web/API/ElementInternals/willValidate | `ElementInternals.willValidate`} property.
|
|
195
|
+
*/
|
|
196
|
+
get willValidate() {
|
|
197
|
+
return this.elementInternals.willValidate;
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Checks the validity of the element and returns the result.
|
|
201
|
+
*
|
|
202
|
+
* @public
|
|
203
|
+
* @remarks
|
|
204
|
+
* Reflects the {@link https://developer.mozilla.org/docs/Web/API/ElementInternals/checkValidity | `HTMLInputElement.checkValidity()`} method.
|
|
205
|
+
*/
|
|
206
|
+
checkValidity() {
|
|
207
|
+
return this.elementInternals.checkValidity();
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* Toggles the checked state when the user clicks the element.
|
|
211
|
+
*
|
|
212
|
+
* @param e - the event object
|
|
213
|
+
* @internal
|
|
214
|
+
*/
|
|
215
|
+
clickHandler(e) {
|
|
216
|
+
if (this.disabled) {
|
|
217
|
+
return;
|
|
218
|
+
}
|
|
219
|
+
this.dirtyChecked = true;
|
|
220
|
+
const previousChecked = this.checked;
|
|
221
|
+
this.toggleChecked();
|
|
222
|
+
if (previousChecked !== this.checked) {
|
|
223
|
+
this.$emit('change');
|
|
224
|
+
this.$emit('input');
|
|
225
|
+
}
|
|
226
|
+
return true;
|
|
227
|
+
}
|
|
228
|
+
connectedCallback() {
|
|
229
|
+
super.connectedCallback();
|
|
230
|
+
this.setAriaChecked();
|
|
231
|
+
this.setValidity();
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Updates the form value when a user changes the `checked` state.
|
|
235
|
+
*
|
|
236
|
+
* @param e - the event object
|
|
237
|
+
* @internal
|
|
238
|
+
*/
|
|
239
|
+
inputHandler(e) {
|
|
240
|
+
this.setFormValue(this.value);
|
|
241
|
+
this.setValidity();
|
|
242
|
+
return true;
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Prevents scrolling when the user presses the space key.
|
|
246
|
+
*
|
|
247
|
+
* @param e - the event object
|
|
248
|
+
* @internal
|
|
249
|
+
*/
|
|
250
|
+
keydownHandler(e) {
|
|
251
|
+
if (e.key !== ' ') {
|
|
252
|
+
return true;
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
/**
|
|
256
|
+
* Toggles the checked state when the user releases the space key.
|
|
257
|
+
*
|
|
258
|
+
* @param e - the event object
|
|
259
|
+
* @internal
|
|
260
|
+
*/
|
|
261
|
+
keyupHandler(e) {
|
|
262
|
+
if (e.key !== ' ') {
|
|
263
|
+
return true;
|
|
264
|
+
}
|
|
265
|
+
this.click();
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* Resets the form value to its initial value when the form is reset.
|
|
269
|
+
*
|
|
270
|
+
* @internal
|
|
271
|
+
*/
|
|
272
|
+
formResetCallback() {
|
|
273
|
+
this.checked = this.initialChecked ?? false;
|
|
274
|
+
this.dirtyChecked = false;
|
|
275
|
+
this.setValidity();
|
|
276
|
+
}
|
|
277
|
+
/**
|
|
278
|
+
* Reports the validity of the element.
|
|
279
|
+
*
|
|
280
|
+
* @public
|
|
281
|
+
* @remarks
|
|
282
|
+
* Reflects the {@link https://developer.mozilla.org/docs/Web/API/ElementInternals/reportValidity | `HTMLInputElement.reportValidity()`} method.
|
|
283
|
+
*/
|
|
284
|
+
reportValidity() {
|
|
285
|
+
return this.elementInternals.reportValidity();
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
* Sets the ARIA checked state.
|
|
289
|
+
*
|
|
290
|
+
* @param value - The checked state
|
|
291
|
+
* @internal
|
|
292
|
+
*/
|
|
293
|
+
setAriaChecked(value = this.checked) {
|
|
294
|
+
this.elementInternals.ariaChecked = value ? 'true' : 'false';
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* Reflects the {@link https://developer.mozilla.org/docs/Web/API/ElementInternals/setFormValue | `ElementInternals.setFormValue()`} method.
|
|
298
|
+
*
|
|
299
|
+
* @internal
|
|
300
|
+
*/
|
|
301
|
+
setFormValue(value, state) {
|
|
302
|
+
this.elementInternals.setFormValue(value, value ?? state);
|
|
303
|
+
}
|
|
304
|
+
/**
|
|
305
|
+
* Sets a custom validity message.
|
|
306
|
+
*
|
|
307
|
+
* @param message - The message to set
|
|
308
|
+
* @public
|
|
309
|
+
*/
|
|
310
|
+
setCustomValidity(message) {
|
|
311
|
+
this.elementInternals.setValidity({ customError: true }, message);
|
|
312
|
+
this.setValidity();
|
|
313
|
+
}
|
|
314
|
+
/**
|
|
315
|
+
* Sets the validity of the control.
|
|
316
|
+
*
|
|
317
|
+
* @param flags - Validity flags to set.
|
|
318
|
+
* @param message - Optional message to supply. If not provided, the control's `validationMessage` will be used.
|
|
319
|
+
* @param anchor - Optional anchor to use for the validation message.
|
|
320
|
+
*
|
|
321
|
+
* @internal
|
|
322
|
+
*/
|
|
323
|
+
setValidity(flags, message, anchor) {
|
|
324
|
+
if (this.$fastController.isConnected) {
|
|
325
|
+
if (this.disabled || !this.required) {
|
|
326
|
+
this.elementInternals.setValidity({});
|
|
327
|
+
return;
|
|
328
|
+
}
|
|
329
|
+
this.elementInternals.setValidity({ valueMissing: !!this.required && !this.checked, ...flags }, message ?? this.validationMessage, anchor);
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
/**
|
|
333
|
+
* Toggles the checked state of the control.
|
|
334
|
+
*
|
|
335
|
+
* @param force - Forces the element to be checked or unchecked
|
|
336
|
+
* @public
|
|
337
|
+
*/
|
|
338
|
+
toggleChecked(force = !this.checked) {
|
|
339
|
+
this.checked = force;
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
__decorate([
|
|
343
|
+
attr({ mode: 'boolean' })
|
|
344
|
+
], BaseCheckbox.prototype, "autofocus", void 0);
|
|
345
|
+
__decorate([
|
|
346
|
+
observable
|
|
347
|
+
], BaseCheckbox.prototype, "disabled", void 0);
|
|
348
|
+
__decorate([
|
|
349
|
+
attr({ attribute: 'disabled', mode: 'boolean' })
|
|
350
|
+
], BaseCheckbox.prototype, "disabledAttribute", void 0);
|
|
351
|
+
__decorate([
|
|
352
|
+
attr({ attribute: 'form' })
|
|
353
|
+
], BaseCheckbox.prototype, "formAttribute", void 0);
|
|
354
|
+
__decorate([
|
|
355
|
+
attr({ attribute: 'checked', mode: 'boolean' })
|
|
356
|
+
], BaseCheckbox.prototype, "initialChecked", void 0);
|
|
357
|
+
__decorate([
|
|
358
|
+
attr({ attribute: 'value', mode: 'fromView' })
|
|
359
|
+
], BaseCheckbox.prototype, "initialValue", void 0);
|
|
360
|
+
__decorate([
|
|
361
|
+
attr
|
|
362
|
+
], BaseCheckbox.prototype, "name", void 0);
|
|
363
|
+
__decorate([
|
|
364
|
+
attr({ mode: 'boolean' })
|
|
365
|
+
], BaseCheckbox.prototype, "required", void 0);
|
|
366
|
+
//# sourceMappingURL=checkbox.base.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkbox.base.js","sourceRoot":"","sources":["../../../src/checkbox/checkbox.base.ts"],"names":[],"mappings":"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"}
|