@vonage/vivid 4.14.1 → 4.14.2
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/custom-elements.json +22 -174
- package/lib/divider/divider.d.ts +1 -1
- package/lib/divider/divider.template.d.ts +1 -1
- package/package.json +1 -1
- package/shared/affix.js +1 -1
- package/shared/definition.js +1 -1
- package/shared/definition11.js +1 -1
- package/shared/definition16.cjs +1 -2
- package/shared/definition16.js +2 -3
- package/shared/definition17.cjs +9 -7
- package/shared/definition17.js +9 -7
- package/shared/definition22.cjs +2 -1
- package/shared/definition22.js +2 -1
- package/shared/definition24.js +1 -1
- package/shared/definition27.cjs +1 -1
- package/shared/definition27.js +1 -1
- package/shared/definition29.js +1 -1
- package/shared/definition30.js +1 -1
- package/shared/definition31.js +1 -1
- package/shared/definition33.js +1 -1
- package/shared/definition34.cjs +88 -19
- package/shared/definition34.js +72 -3
- package/shared/definition35.cjs +2 -201
- package/shared/definition35.js +4 -201
- package/shared/definition4.js +1 -1
- package/shared/definition42.cjs +3 -3
- package/shared/definition42.js +3 -3
- package/shared/definition43.cjs +9 -9
- package/shared/definition43.js +5 -5
- package/shared/definition47.js +1 -1
- package/shared/definition50.js +1 -1
- package/shared/definition51.cjs +39 -17
- package/shared/definition51.js +24 -2
- package/shared/definition53.js +1 -1
- package/shared/definition59.js +1 -1
- package/shared/definition7.js +1 -1
- package/shared/definition8.js +1 -1
- package/shared/foundation-element.cjs +1417 -0
- package/shared/foundation-element.js +1414 -0
- package/shared/key-codes2.cjs +0 -1469
- package/shared/key-codes2.js +1 -1464
- package/shared/listbox.cjs +3 -3
- package/shared/listbox.js +1 -1
- package/shared/option.cjs +205 -0
- package/shared/option.js +202 -0
- package/shared/start-end.cjs +52 -0
- package/shared/start-end.js +50 -0
- package/shared/text-anchor.js +1 -1
- package/shared/text-field2.js +1 -1
- package/styles/core/all.css +1 -1
- package/styles/core/theme.css +1 -1
- package/styles/core/typography.css +1 -1
- package/styles/tokens/theme-dark.css +4 -4
- package/styles/tokens/theme-light.css +4 -4
- package/styles/tokens/vivid-2-compat.css +1 -1
- package/lib/listbox/definition.d.ts +0 -2
- package/lib/listbox/listbox.d.ts +0 -14
- package/lib/listbox/listbox.template.d.ts +0 -2
- package/listbox/index.cjs +0 -54
- package/listbox/index.js +0 -52
- package/shared/aria-global2.cjs +0 -75
- package/shared/aria-global2.js +0 -73
- package/shared/listbox2.cjs +0 -1267
- package/shared/listbox2.js +0 -1264
- package/shared/strings2.cjs +0 -37
- package/shared/strings2.js +0 -33
package/shared/listbox.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
const
|
|
3
|
+
const option = require('./option.cjs');
|
|
4
4
|
const vividElement = require('./vivid-element.cjs');
|
|
5
5
|
const keyCodes = require('./key-codes.cjs');
|
|
6
6
|
const strings = require('./strings.cjs');
|
|
@@ -108,7 +108,7 @@ const _Listbox = class _Listbox extends vividElement.VividElement {
|
|
|
108
108
|
* @param n - element to filter
|
|
109
109
|
* @public
|
|
110
110
|
*/
|
|
111
|
-
this.slottedOptionFilter = (n) =>
|
|
111
|
+
this.slottedOptionFilter = (n) => option.isListboxOption(n) && !n.hidden;
|
|
112
112
|
}
|
|
113
113
|
static {
|
|
114
114
|
/**
|
|
@@ -419,7 +419,7 @@ const _Listbox = class _Listbox extends vividElement.VividElement {
|
|
|
419
419
|
*/
|
|
420
420
|
slottedOptionsChanged(_, next) {
|
|
421
421
|
this.options = next.reduce((options, item) => {
|
|
422
|
-
if (
|
|
422
|
+
if (option.isListboxOption(item)) {
|
|
423
423
|
options.push(item);
|
|
424
424
|
}
|
|
425
425
|
return options;
|
package/shared/listbox.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { i as isListboxOption } from './
|
|
1
|
+
import { i as isListboxOption } from './option.js';
|
|
2
2
|
import { V as VividElement, O as Observable, a as attr, o as observable } from './vivid-element.js';
|
|
3
3
|
import { a as keySpace, b as keyEscape, k as keyEnter, c as keyTab, d as keyEnd, e as keyArrowUp, f as keyArrowDown, g as keyHome } from './key-codes.js';
|
|
4
4
|
import { u as uniqueId } from './strings.js';
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const applyMixins = require('./apply-mixins.cjs');
|
|
4
|
+
const affix = require('./affix.cjs');
|
|
5
|
+
const ariaGlobal = require('./aria-global.cjs');
|
|
6
|
+
const vividElement = require('./vivid-element.cjs');
|
|
7
|
+
const dom = require('./dom.cjs');
|
|
8
|
+
|
|
9
|
+
var __defProp = Object.defineProperty;
|
|
10
|
+
var __decorateClass = (decorators, target, key, kind) => {
|
|
11
|
+
var result = void 0 ;
|
|
12
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
13
|
+
if (decorator = decorators[i])
|
|
14
|
+
result = (decorator(target, key, result) ) || result;
|
|
15
|
+
if (result) __defProp(target, key, result);
|
|
16
|
+
return result;
|
|
17
|
+
};
|
|
18
|
+
function isListboxOption(el) {
|
|
19
|
+
return dom.isHTMLElement(el) && (el.getAttribute("role") === "option" || el instanceof HTMLOptionElement);
|
|
20
|
+
}
|
|
21
|
+
class ListboxOption extends vividElement.VividElement {
|
|
22
|
+
constructor(text, value, defaultSelected, selected) {
|
|
23
|
+
super();
|
|
24
|
+
this.defaultSelected = false;
|
|
25
|
+
/**
|
|
26
|
+
* Tracks whether the "selected" property has been changed.
|
|
27
|
+
* @internal
|
|
28
|
+
*/
|
|
29
|
+
this.dirtySelected = false;
|
|
30
|
+
this.selected = this.defaultSelected;
|
|
31
|
+
/**
|
|
32
|
+
* Track whether the value has been changed from the initial value
|
|
33
|
+
*/
|
|
34
|
+
this.dirtyValue = false;
|
|
35
|
+
this._highlighted = false;
|
|
36
|
+
this._displayCheckmark = false;
|
|
37
|
+
this._matchedRange = null;
|
|
38
|
+
if (text) {
|
|
39
|
+
this.text = text;
|
|
40
|
+
}
|
|
41
|
+
if (value) {
|
|
42
|
+
this.initialValue = value;
|
|
43
|
+
}
|
|
44
|
+
if (defaultSelected) {
|
|
45
|
+
this.defaultSelected = defaultSelected;
|
|
46
|
+
}
|
|
47
|
+
if (selected) {
|
|
48
|
+
this.selected = selected;
|
|
49
|
+
}
|
|
50
|
+
this.proxy = new Option(
|
|
51
|
+
this.text,
|
|
52
|
+
// @ts-expect-error Propery is used before it is assigned
|
|
53
|
+
this.initialValue,
|
|
54
|
+
this.defaultSelected,
|
|
55
|
+
this.selected
|
|
56
|
+
);
|
|
57
|
+
this.proxy.disabled = this.disabled;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Updates the ariaChecked property when the checked property changes.
|
|
61
|
+
*
|
|
62
|
+
* @param _ - the previous checked value
|
|
63
|
+
* @param next - the current checked value
|
|
64
|
+
*
|
|
65
|
+
* @public
|
|
66
|
+
*/
|
|
67
|
+
checkedChanged(_, next) {
|
|
68
|
+
if (typeof next === "boolean") {
|
|
69
|
+
this.ariaChecked = next ? "true" : "false";
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
this.ariaChecked = null;
|
|
73
|
+
}
|
|
74
|
+
defaultSelectedChanged() {
|
|
75
|
+
if (!this.dirtySelected) {
|
|
76
|
+
this.selected = this.defaultSelected;
|
|
77
|
+
if (this.proxy instanceof HTMLOptionElement) {
|
|
78
|
+
this.proxy.selected = this.defaultSelected;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
disabledChanged() {
|
|
83
|
+
this.ariaDisabled = this.disabled ? "true" : "false";
|
|
84
|
+
if (this.proxy instanceof HTMLOptionElement) {
|
|
85
|
+
this.proxy.disabled = this.disabled;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
selectedAttributeChanged() {
|
|
89
|
+
this.defaultSelected = this.selectedAttribute;
|
|
90
|
+
if (this.proxy instanceof HTMLOptionElement) {
|
|
91
|
+
this.proxy.defaultSelected = this.defaultSelected;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
selectedChanged() {
|
|
95
|
+
this.ariaSelected = this.selected ? "true" : "false";
|
|
96
|
+
if (!this.dirtySelected) {
|
|
97
|
+
this.dirtySelected = true;
|
|
98
|
+
}
|
|
99
|
+
if (this.proxy instanceof HTMLOptionElement) {
|
|
100
|
+
this.proxy.selected = this.selected;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
initialValueChanged() {
|
|
104
|
+
if (!this.dirtyValue) {
|
|
105
|
+
this.value = this.initialValue;
|
|
106
|
+
this.dirtyValue = false;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
get label() {
|
|
110
|
+
return this._label ?? this.text;
|
|
111
|
+
}
|
|
112
|
+
set label(value) {
|
|
113
|
+
this._label = value;
|
|
114
|
+
}
|
|
115
|
+
set text(value) {
|
|
116
|
+
this._text = value;
|
|
117
|
+
}
|
|
118
|
+
get text() {
|
|
119
|
+
return this._text ?? "";
|
|
120
|
+
}
|
|
121
|
+
set value(next) {
|
|
122
|
+
const newValue = `${next ?? ""}`;
|
|
123
|
+
this._value = newValue;
|
|
124
|
+
this.dirtyValue = true;
|
|
125
|
+
if (this.proxy instanceof HTMLOptionElement) {
|
|
126
|
+
this.proxy.value = newValue;
|
|
127
|
+
}
|
|
128
|
+
vividElement.Observable.notify(this, "value");
|
|
129
|
+
}
|
|
130
|
+
get value() {
|
|
131
|
+
vividElement.Observable.track(this, "value");
|
|
132
|
+
return this._value ?? this.text;
|
|
133
|
+
}
|
|
134
|
+
get form() {
|
|
135
|
+
return null;
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* @internal
|
|
139
|
+
*/
|
|
140
|
+
get _matchedRangeSafe() {
|
|
141
|
+
return this._matchedRange ?? { from: 0, to: 0 };
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
__decorateClass([
|
|
145
|
+
vividElement.observable
|
|
146
|
+
], ListboxOption.prototype, "checked");
|
|
147
|
+
__decorateClass([
|
|
148
|
+
vividElement.observable
|
|
149
|
+
], ListboxOption.prototype, "defaultSelected");
|
|
150
|
+
// @ts-expect-error Type is incorrectly non-optional
|
|
151
|
+
__decorateClass([
|
|
152
|
+
vividElement.attr({ mode: "boolean" })
|
|
153
|
+
], ListboxOption.prototype, "disabled");
|
|
154
|
+
// @ts-expect-error Type is incorrectly non-optional
|
|
155
|
+
__decorateClass([
|
|
156
|
+
vividElement.attr({ attribute: "selected", mode: "boolean" })
|
|
157
|
+
], ListboxOption.prototype, "selectedAttribute");
|
|
158
|
+
__decorateClass([
|
|
159
|
+
vividElement.observable
|
|
160
|
+
], ListboxOption.prototype, "selected");
|
|
161
|
+
__decorateClass([
|
|
162
|
+
vividElement.attr({ attribute: "value", mode: "fromView" })
|
|
163
|
+
], ListboxOption.prototype, "initialValue");
|
|
164
|
+
__decorateClass([
|
|
165
|
+
vividElement.attr({
|
|
166
|
+
attribute: "label"
|
|
167
|
+
})
|
|
168
|
+
], ListboxOption.prototype, "_label");
|
|
169
|
+
__decorateClass([
|
|
170
|
+
vividElement.attr({
|
|
171
|
+
attribute: "text"
|
|
172
|
+
})
|
|
173
|
+
], ListboxOption.prototype, "_text");
|
|
174
|
+
__decorateClass([
|
|
175
|
+
vividElement.observable
|
|
176
|
+
], ListboxOption.prototype, "_highlighted");
|
|
177
|
+
__decorateClass([
|
|
178
|
+
vividElement.observable
|
|
179
|
+
], ListboxOption.prototype, "_displayCheckmark");
|
|
180
|
+
__decorateClass([
|
|
181
|
+
vividElement.observable
|
|
182
|
+
], ListboxOption.prototype, "_matchedRange");
|
|
183
|
+
class DelegatesARIAListboxOption {
|
|
184
|
+
}
|
|
185
|
+
// @ts-expect-error Type is incorrectly non-optional
|
|
186
|
+
__decorateClass([
|
|
187
|
+
vividElement.observable
|
|
188
|
+
], DelegatesARIAListboxOption.prototype, "ariaChecked");
|
|
189
|
+
// @ts-expect-error Type is incorrectly non-optional
|
|
190
|
+
__decorateClass([
|
|
191
|
+
vividElement.observable
|
|
192
|
+
], DelegatesARIAListboxOption.prototype, "ariaPosInSet");
|
|
193
|
+
// @ts-expect-error Type is incorrectly non-optional
|
|
194
|
+
__decorateClass([
|
|
195
|
+
vividElement.observable
|
|
196
|
+
], DelegatesARIAListboxOption.prototype, "ariaSelected");
|
|
197
|
+
// @ts-expect-error Type is incorrectly non-optional
|
|
198
|
+
__decorateClass([
|
|
199
|
+
vividElement.observable
|
|
200
|
+
], DelegatesARIAListboxOption.prototype, "ariaSetSize");
|
|
201
|
+
applyMixins.applyMixins(DelegatesARIAListboxOption, ariaGlobal.ARIAGlobalStatesAndProperties);
|
|
202
|
+
applyMixins.applyMixins(ListboxOption, affix.AffixIconWithTrailing, DelegatesARIAListboxOption);
|
|
203
|
+
|
|
204
|
+
exports.ListboxOption = ListboxOption;
|
|
205
|
+
exports.isListboxOption = isListboxOption;
|
package/shared/option.js
ADDED
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
import { a as applyMixins } from './apply-mixins.js';
|
|
2
|
+
import { A as AffixIconWithTrailing } from './affix.js';
|
|
3
|
+
import { A as ARIAGlobalStatesAndProperties } from './aria-global.js';
|
|
4
|
+
import { V as VividElement, O as Observable, o as observable, a as attr } from './vivid-element.js';
|
|
5
|
+
import { i as isHTMLElement } from './dom.js';
|
|
6
|
+
|
|
7
|
+
var __defProp = Object.defineProperty;
|
|
8
|
+
var __decorateClass = (decorators, target, key, kind) => {
|
|
9
|
+
var result = void 0 ;
|
|
10
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
11
|
+
if (decorator = decorators[i])
|
|
12
|
+
result = (decorator(target, key, result) ) || result;
|
|
13
|
+
if (result) __defProp(target, key, result);
|
|
14
|
+
return result;
|
|
15
|
+
};
|
|
16
|
+
function isListboxOption(el) {
|
|
17
|
+
return isHTMLElement(el) && (el.getAttribute("role") === "option" || el instanceof HTMLOptionElement);
|
|
18
|
+
}
|
|
19
|
+
class ListboxOption extends VividElement {
|
|
20
|
+
constructor(text, value, defaultSelected, selected) {
|
|
21
|
+
super();
|
|
22
|
+
this.defaultSelected = false;
|
|
23
|
+
/**
|
|
24
|
+
* Tracks whether the "selected" property has been changed.
|
|
25
|
+
* @internal
|
|
26
|
+
*/
|
|
27
|
+
this.dirtySelected = false;
|
|
28
|
+
this.selected = this.defaultSelected;
|
|
29
|
+
/**
|
|
30
|
+
* Track whether the value has been changed from the initial value
|
|
31
|
+
*/
|
|
32
|
+
this.dirtyValue = false;
|
|
33
|
+
this._highlighted = false;
|
|
34
|
+
this._displayCheckmark = false;
|
|
35
|
+
this._matchedRange = null;
|
|
36
|
+
if (text) {
|
|
37
|
+
this.text = text;
|
|
38
|
+
}
|
|
39
|
+
if (value) {
|
|
40
|
+
this.initialValue = value;
|
|
41
|
+
}
|
|
42
|
+
if (defaultSelected) {
|
|
43
|
+
this.defaultSelected = defaultSelected;
|
|
44
|
+
}
|
|
45
|
+
if (selected) {
|
|
46
|
+
this.selected = selected;
|
|
47
|
+
}
|
|
48
|
+
this.proxy = new Option(
|
|
49
|
+
this.text,
|
|
50
|
+
// @ts-expect-error Propery is used before it is assigned
|
|
51
|
+
this.initialValue,
|
|
52
|
+
this.defaultSelected,
|
|
53
|
+
this.selected
|
|
54
|
+
);
|
|
55
|
+
this.proxy.disabled = this.disabled;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Updates the ariaChecked property when the checked property changes.
|
|
59
|
+
*
|
|
60
|
+
* @param _ - the previous checked value
|
|
61
|
+
* @param next - the current checked value
|
|
62
|
+
*
|
|
63
|
+
* @public
|
|
64
|
+
*/
|
|
65
|
+
checkedChanged(_, next) {
|
|
66
|
+
if (typeof next === "boolean") {
|
|
67
|
+
this.ariaChecked = next ? "true" : "false";
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
this.ariaChecked = null;
|
|
71
|
+
}
|
|
72
|
+
defaultSelectedChanged() {
|
|
73
|
+
if (!this.dirtySelected) {
|
|
74
|
+
this.selected = this.defaultSelected;
|
|
75
|
+
if (this.proxy instanceof HTMLOptionElement) {
|
|
76
|
+
this.proxy.selected = this.defaultSelected;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
disabledChanged() {
|
|
81
|
+
this.ariaDisabled = this.disabled ? "true" : "false";
|
|
82
|
+
if (this.proxy instanceof HTMLOptionElement) {
|
|
83
|
+
this.proxy.disabled = this.disabled;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
selectedAttributeChanged() {
|
|
87
|
+
this.defaultSelected = this.selectedAttribute;
|
|
88
|
+
if (this.proxy instanceof HTMLOptionElement) {
|
|
89
|
+
this.proxy.defaultSelected = this.defaultSelected;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
selectedChanged() {
|
|
93
|
+
this.ariaSelected = this.selected ? "true" : "false";
|
|
94
|
+
if (!this.dirtySelected) {
|
|
95
|
+
this.dirtySelected = true;
|
|
96
|
+
}
|
|
97
|
+
if (this.proxy instanceof HTMLOptionElement) {
|
|
98
|
+
this.proxy.selected = this.selected;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
initialValueChanged() {
|
|
102
|
+
if (!this.dirtyValue) {
|
|
103
|
+
this.value = this.initialValue;
|
|
104
|
+
this.dirtyValue = false;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
get label() {
|
|
108
|
+
return this._label ?? this.text;
|
|
109
|
+
}
|
|
110
|
+
set label(value) {
|
|
111
|
+
this._label = value;
|
|
112
|
+
}
|
|
113
|
+
set text(value) {
|
|
114
|
+
this._text = value;
|
|
115
|
+
}
|
|
116
|
+
get text() {
|
|
117
|
+
return this._text ?? "";
|
|
118
|
+
}
|
|
119
|
+
set value(next) {
|
|
120
|
+
const newValue = `${next ?? ""}`;
|
|
121
|
+
this._value = newValue;
|
|
122
|
+
this.dirtyValue = true;
|
|
123
|
+
if (this.proxy instanceof HTMLOptionElement) {
|
|
124
|
+
this.proxy.value = newValue;
|
|
125
|
+
}
|
|
126
|
+
Observable.notify(this, "value");
|
|
127
|
+
}
|
|
128
|
+
get value() {
|
|
129
|
+
Observable.track(this, "value");
|
|
130
|
+
return this._value ?? this.text;
|
|
131
|
+
}
|
|
132
|
+
get form() {
|
|
133
|
+
return null;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* @internal
|
|
137
|
+
*/
|
|
138
|
+
get _matchedRangeSafe() {
|
|
139
|
+
return this._matchedRange ?? { from: 0, to: 0 };
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
__decorateClass([
|
|
143
|
+
observable
|
|
144
|
+
], ListboxOption.prototype, "checked");
|
|
145
|
+
__decorateClass([
|
|
146
|
+
observable
|
|
147
|
+
], ListboxOption.prototype, "defaultSelected");
|
|
148
|
+
// @ts-expect-error Type is incorrectly non-optional
|
|
149
|
+
__decorateClass([
|
|
150
|
+
attr({ mode: "boolean" })
|
|
151
|
+
], ListboxOption.prototype, "disabled");
|
|
152
|
+
// @ts-expect-error Type is incorrectly non-optional
|
|
153
|
+
__decorateClass([
|
|
154
|
+
attr({ attribute: "selected", mode: "boolean" })
|
|
155
|
+
], ListboxOption.prototype, "selectedAttribute");
|
|
156
|
+
__decorateClass([
|
|
157
|
+
observable
|
|
158
|
+
], ListboxOption.prototype, "selected");
|
|
159
|
+
__decorateClass([
|
|
160
|
+
attr({ attribute: "value", mode: "fromView" })
|
|
161
|
+
], ListboxOption.prototype, "initialValue");
|
|
162
|
+
__decorateClass([
|
|
163
|
+
attr({
|
|
164
|
+
attribute: "label"
|
|
165
|
+
})
|
|
166
|
+
], ListboxOption.prototype, "_label");
|
|
167
|
+
__decorateClass([
|
|
168
|
+
attr({
|
|
169
|
+
attribute: "text"
|
|
170
|
+
})
|
|
171
|
+
], ListboxOption.prototype, "_text");
|
|
172
|
+
__decorateClass([
|
|
173
|
+
observable
|
|
174
|
+
], ListboxOption.prototype, "_highlighted");
|
|
175
|
+
__decorateClass([
|
|
176
|
+
observable
|
|
177
|
+
], ListboxOption.prototype, "_displayCheckmark");
|
|
178
|
+
__decorateClass([
|
|
179
|
+
observable
|
|
180
|
+
], ListboxOption.prototype, "_matchedRange");
|
|
181
|
+
class DelegatesARIAListboxOption {
|
|
182
|
+
}
|
|
183
|
+
// @ts-expect-error Type is incorrectly non-optional
|
|
184
|
+
__decorateClass([
|
|
185
|
+
observable
|
|
186
|
+
], DelegatesARIAListboxOption.prototype, "ariaChecked");
|
|
187
|
+
// @ts-expect-error Type is incorrectly non-optional
|
|
188
|
+
__decorateClass([
|
|
189
|
+
observable
|
|
190
|
+
], DelegatesARIAListboxOption.prototype, "ariaPosInSet");
|
|
191
|
+
// @ts-expect-error Type is incorrectly non-optional
|
|
192
|
+
__decorateClass([
|
|
193
|
+
observable
|
|
194
|
+
], DelegatesARIAListboxOption.prototype, "ariaSelected");
|
|
195
|
+
// @ts-expect-error Type is incorrectly non-optional
|
|
196
|
+
__decorateClass([
|
|
197
|
+
observable
|
|
198
|
+
], DelegatesARIAListboxOption.prototype, "ariaSetSize");
|
|
199
|
+
applyMixins(DelegatesARIAListboxOption, ARIAGlobalStatesAndProperties);
|
|
200
|
+
applyMixins(ListboxOption, AffixIconWithTrailing, DelegatesARIAListboxOption);
|
|
201
|
+
|
|
202
|
+
export { ListboxOption as L, isListboxOption as i };
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const vividElement = require('./vivid-element.cjs');
|
|
4
|
+
const ref = require('./ref.cjs');
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* A mixin class implementing start and end elements.
|
|
8
|
+
* These are generally used to decorate text elements with icons or other visual indicators.
|
|
9
|
+
* @public
|
|
10
|
+
*/
|
|
11
|
+
class StartEnd {
|
|
12
|
+
handleStartContentChange() {
|
|
13
|
+
this.startContainer.classList.toggle("start", this.start.assignedNodes().length > 0);
|
|
14
|
+
}
|
|
15
|
+
handleEndContentChange() {
|
|
16
|
+
this.endContainer.classList.toggle("end", this.end.assignedNodes().length > 0);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* The template for the end element.
|
|
21
|
+
* For use with {@link StartEnd}
|
|
22
|
+
*
|
|
23
|
+
* @public
|
|
24
|
+
* @deprecated - use endSlotTemplate
|
|
25
|
+
*/
|
|
26
|
+
vividElement.html `
|
|
27
|
+
<span part="end" ${ref.ref("endContainer")}>
|
|
28
|
+
<slot
|
|
29
|
+
name="end"
|
|
30
|
+
${ref.ref("end")}
|
|
31
|
+
@slotchange="${x => x.handleEndContentChange()}"
|
|
32
|
+
></slot>
|
|
33
|
+
</span>
|
|
34
|
+
`;
|
|
35
|
+
/**
|
|
36
|
+
* The template for the start element.
|
|
37
|
+
* For use with {@link StartEnd}
|
|
38
|
+
*
|
|
39
|
+
* @public
|
|
40
|
+
* @deprecated - use startSlotTemplate
|
|
41
|
+
*/
|
|
42
|
+
vividElement.html `
|
|
43
|
+
<span part="start" ${ref.ref("startContainer")}>
|
|
44
|
+
<slot
|
|
45
|
+
name="start"
|
|
46
|
+
${ref.ref("start")}
|
|
47
|
+
@slotchange="${x => x.handleStartContentChange()}"
|
|
48
|
+
></slot>
|
|
49
|
+
</span>
|
|
50
|
+
`;
|
|
51
|
+
|
|
52
|
+
exports.StartEnd = StartEnd;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { h as html } from './vivid-element.js';
|
|
2
|
+
import { r as ref } from './ref.js';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* A mixin class implementing start and end elements.
|
|
6
|
+
* These are generally used to decorate text elements with icons or other visual indicators.
|
|
7
|
+
* @public
|
|
8
|
+
*/
|
|
9
|
+
class StartEnd {
|
|
10
|
+
handleStartContentChange() {
|
|
11
|
+
this.startContainer.classList.toggle("start", this.start.assignedNodes().length > 0);
|
|
12
|
+
}
|
|
13
|
+
handleEndContentChange() {
|
|
14
|
+
this.endContainer.classList.toggle("end", this.end.assignedNodes().length > 0);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* The template for the end element.
|
|
19
|
+
* For use with {@link StartEnd}
|
|
20
|
+
*
|
|
21
|
+
* @public
|
|
22
|
+
* @deprecated - use endSlotTemplate
|
|
23
|
+
*/
|
|
24
|
+
html `
|
|
25
|
+
<span part="end" ${ref("endContainer")}>
|
|
26
|
+
<slot
|
|
27
|
+
name="end"
|
|
28
|
+
${ref("end")}
|
|
29
|
+
@slotchange="${x => x.handleEndContentChange()}"
|
|
30
|
+
></slot>
|
|
31
|
+
</span>
|
|
32
|
+
`;
|
|
33
|
+
/**
|
|
34
|
+
* The template for the start element.
|
|
35
|
+
* For use with {@link StartEnd}
|
|
36
|
+
*
|
|
37
|
+
* @public
|
|
38
|
+
* @deprecated - use startSlotTemplate
|
|
39
|
+
*/
|
|
40
|
+
html `
|
|
41
|
+
<span part="start" ${ref("startContainer")}>
|
|
42
|
+
<slot
|
|
43
|
+
name="start"
|
|
44
|
+
${ref("start")}
|
|
45
|
+
@slotchange="${x => x.handleStartContentChange()}"
|
|
46
|
+
></slot>
|
|
47
|
+
</span>
|
|
48
|
+
`;
|
|
49
|
+
|
|
50
|
+
export { StartEnd as S };
|
package/shared/text-anchor.js
CHANGED
package/shared/text-field2.js
CHANGED
|
@@ -5,7 +5,7 @@ import { F as FormAssociated } from './form-associated.js';
|
|
|
5
5
|
import { m as memoizeWith } from './definition27.js';
|
|
6
6
|
import { e as errorText, f as formElements, F as FormElementSuccessText, a as FormElementHelperText, b as FormElementCharCount } from './form-elements.js';
|
|
7
7
|
import { A as ARIAGlobalStatesAndProperties } from './aria-global.js';
|
|
8
|
-
import {
|
|
8
|
+
import { b as AffixIcon } from './affix.js';
|
|
9
9
|
|
|
10
10
|
const byteToHex = [];
|
|
11
11
|
for (let i = 0; i < 256; ++i) {
|
package/styles/core/all.css
CHANGED
package/styles/core/theme.css
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Do not edit directly
|
|
3
|
-
* Generated on
|
|
3
|
+
* Generated on Tue, 28 Jan 2025 12:08:04 GMT
|
|
4
4
|
*/
|
|
5
5
|
/**
|
|
6
6
|
* Do not edit directly
|
|
7
|
-
* Generated on
|
|
7
|
+
* Generated on Tue, 28 Jan 2025 12:08:04 GMT
|
|
8
8
|
*/
|
|
9
9
|
/**
|
|
10
10
|
* Do not edit directly
|
|
11
|
-
* Generated on
|
|
11
|
+
* Generated on Tue, 28 Jan 2025 12:08:04 GMT
|
|
12
12
|
*/
|
|
13
13
|
/**
|
|
14
14
|
* Do not edit directly
|
|
15
|
-
* Generated on
|
|
15
|
+
* Generated on Tue, 28 Jan 2025 12:08:04 GMT
|
|
16
16
|
*/
|
|
17
17
|
@property --vvd-size-density {
|
|
18
18
|
syntax: "<integer>";
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Do not edit directly
|
|
3
|
-
* Generated on
|
|
3
|
+
* Generated on Tue, 28 Jan 2025 12:08:04 GMT
|
|
4
4
|
*/
|
|
5
5
|
/**
|
|
6
6
|
* Do not edit directly
|
|
7
|
-
* Generated on
|
|
7
|
+
* Generated on Tue, 28 Jan 2025 12:08:04 GMT
|
|
8
8
|
*/
|
|
9
9
|
/**
|
|
10
10
|
* Do not edit directly
|
|
11
|
-
* Generated on
|
|
11
|
+
* Generated on Tue, 28 Jan 2025 12:08:04 GMT
|
|
12
12
|
*/
|
|
13
13
|
/**
|
|
14
14
|
* Do not edit directly
|
|
15
|
-
* Generated on
|
|
15
|
+
* Generated on Tue, 28 Jan 2025 12:08:04 GMT
|
|
16
16
|
*/
|
|
17
17
|
@property --vvd-size-density {
|
|
18
18
|
syntax: "<integer>";
|
package/lib/listbox/listbox.d.ts
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { ListboxElement as FoundationListboxElement } from '@microsoft/fast-foundation';
|
|
2
|
-
import type { Appearance, Shape } from '../enums';
|
|
3
|
-
export type LisboxAppearance = Extract<Appearance, Appearance.Fieldset | Appearance.Ghost>;
|
|
4
|
-
type ListboxShape = Extract<Shape, Shape.Rounded | Shape.Pill>;
|
|
5
|
-
export declare class Listbox extends FoundationListboxElement {
|
|
6
|
-
#private;
|
|
7
|
-
appearance?: LisboxAppearance;
|
|
8
|
-
orientation?: 'horizontal' | 'vertical';
|
|
9
|
-
orientationChanged(): void;
|
|
10
|
-
shape?: ListboxShape;
|
|
11
|
-
slottedOptionsChanged(prev: Element[] | undefined, next: Element[]): void;
|
|
12
|
-
attributeChangedCallback(name: string, oldValue: string, newValue: string): void;
|
|
13
|
-
}
|
|
14
|
-
export {};
|