@vonage/vivid 3.0.0-next.83 → 3.0.0-next.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.
Files changed (72) hide show
  1. package/accordion/index.js +2 -9
  2. package/accordion-item/index.js +8 -22
  3. package/action-group/index.js +2 -8
  4. package/avatar/index.js +4 -14
  5. package/badge/index.js +3 -13
  6. package/banner/index.js +3 -26
  7. package/breadcrumb/index.js +1 -1
  8. package/breadcrumb-item/index.js +5 -9
  9. package/calendar/index.js +12 -49
  10. package/calendar-event/index.js +4 -7
  11. package/card/index.js +9 -28
  12. package/checkbox/index.js +3 -11
  13. package/dialog/index.js +7 -59
  14. package/fab/index.js +2 -8
  15. package/focus/index.js +2 -2
  16. package/header/index.js +2 -7
  17. package/icon/index.js +2 -5
  18. package/index.js +1 -1
  19. package/layout/index.js +1 -9
  20. package/lib/badge/badge.d.ts +1 -3
  21. package/lib/components.d.ts +1 -0
  22. package/lib/listbox-option/index.d.ts +4 -0
  23. package/lib/listbox-option/listbox-option.d.ts +7 -0
  24. package/lib/listbox-option/listbox-option.template.d.ts +4 -0
  25. package/listbox-option/index.js +248 -0
  26. package/menu/index.js +1 -7
  27. package/nav/index.js +1 -1
  28. package/nav-disclosure/index.js +4 -11
  29. package/nav-item/index.js +2 -2
  30. package/note/index.js +4 -12
  31. package/number-field/index.js +24 -21
  32. package/package.json +12 -9
  33. package/popup/index.js +0 -1
  34. package/progress/index.js +5 -13
  35. package/progress-ring/index.js +4 -8
  36. package/radio/index.js +3 -5
  37. package/radio-group/index.js +3 -4
  38. package/shared/affix.js +1 -6
  39. package/shared/apply-mixins.js +5 -4
  40. package/shared/calendar-event.js +0 -7
  41. package/shared/enums.js +0 -17
  42. package/shared/es.object.assign.js +4 -4
  43. package/shared/export.js +79 -57
  44. package/shared/focus2.js +1 -1
  45. package/shared/form-associated.js +1 -1
  46. package/shared/form-elements.js +5 -27
  47. package/shared/icon.js +8 -18
  48. package/shared/index.js +38 -25
  49. package/shared/index2.js +2 -13
  50. package/shared/index3.js +1 -5
  51. package/shared/index4.js +2 -4
  52. package/shared/index5.js +6 -581
  53. package/shared/index6.js +6 -10
  54. package/shared/iterators.js +3 -3
  55. package/shared/object-keys.js +2 -2
  56. package/shared/patterns/form-elements/form-elements.d.ts +1 -1
  57. package/shared/radio.js +0 -1
  58. package/shared/ref.js +1 -1
  59. package/shared/slotted.js +1 -1
  60. package/shared/text-anchor.js +0 -2
  61. package/shared/text-anchor.template.js +1 -3
  62. package/shared/web.dom-collections.iterator.js +6 -8
  63. package/side-drawer/index.js +3 -16
  64. package/styles/core/all.css +1 -1
  65. package/styles/core/theme.css +1 -1
  66. package/styles/core/typography.css +1 -1
  67. package/styles/tokens/theme-dark.css +29 -23
  68. package/styles/tokens/theme-light.css +29 -23
  69. package/text-area/index.js +3 -9
  70. package/text-field/index.js +4 -14
  71. package/tooltip/index.js +2 -10
  72. package/shared/regexp-flags.js +0 -21
@@ -0,0 +1,248 @@
1
+ import '../icon/index.js';
2
+ import '../focus/index.js';
3
+ import { F as FoundationElement, O as Observable, _ as __decorate, o as observable, a as attr, b as __metadata, h as html, d as designSystem } from '../shared/index.js';
4
+ import { A as AffixIconWithTrailing, a as affixIconTemplateFactory } from '../shared/affix.js';
5
+ import { A as ARIAGlobalStatesAndProperties } from '../shared/aria-global.js';
6
+ import { S as StartEnd } from '../shared/start-end.js';
7
+ import { a as applyMixins } from '../shared/apply-mixins.js';
8
+ import { f as focusTemplateFactory } from '../shared/focus2.js';
9
+ import '../shared/web.dom-collections.iterator.js';
10
+ import '../shared/icon.js';
11
+ import { w as when } from '../shared/when.js';
12
+ import { c as classNames } from '../shared/class-names.js';
13
+ import '../shared/export.js';
14
+ import '../shared/iterators.js';
15
+ import '../shared/to-string.js';
16
+ import '../shared/_has.js';
17
+ import '../shared/focus.js';
18
+ import '../shared/ref.js';
19
+ import '../shared/object-keys.js';
20
+
21
+ /**
22
+ * An Option Custom HTML Element.
23
+ * Implements {@link https://www.w3.org/TR/wai-aria-1.1/#option | ARIA option }.
24
+ *
25
+ * @slot start - Content which can be provided before the listbox option content
26
+ * @slot end - Content which can be provided after the listbox option content
27
+ * @slot - The default slot for listbox option content
28
+ * @csspart content - Wraps the listbox option content
29
+ *
30
+ * @public
31
+ */
32
+ class ListboxOption$1 extends FoundationElement {
33
+ constructor(text, value, defaultSelected, selected) {
34
+ super();
35
+ /**
36
+ * The defaultSelected state of the option.
37
+ * @public
38
+ */
39
+ this.defaultSelected = false;
40
+ /**
41
+ * Tracks whether the "selected" property has been changed.
42
+ * @internal
43
+ */
44
+ this.dirtySelected = false;
45
+ /**
46
+ * The checked state of the control.
47
+ *
48
+ * @public
49
+ */
50
+ this.selected = this.defaultSelected;
51
+ /**
52
+ * Track whether the value has been changed from the initial value
53
+ */
54
+ this.dirtyValue = false;
55
+ if (text) {
56
+ this.textContent = text;
57
+ }
58
+ if (value) {
59
+ this.initialValue = value;
60
+ }
61
+ if (defaultSelected) {
62
+ this.defaultSelected = defaultSelected;
63
+ }
64
+ if (selected) {
65
+ this.selected = selected;
66
+ }
67
+ this.proxy = new Option(`${this.textContent}`, this.initialValue, this.defaultSelected, this.selected);
68
+ this.proxy.disabled = this.disabled;
69
+ }
70
+ /**
71
+ * Updates the ariaChecked property when the checked property changes.
72
+ *
73
+ * @param prev - the previous checked value
74
+ * @param next - the current checked value
75
+ *
76
+ * @public
77
+ */
78
+ checkedChanged(prev, next) {
79
+ if (typeof next === "boolean") {
80
+ this.ariaChecked = next ? "true" : "false";
81
+ return;
82
+ }
83
+ this.ariaChecked = null;
84
+ }
85
+ /**
86
+ * Updates the proxy's text content when the default slot changes.
87
+ * @param prev - the previous content value
88
+ * @param next - the current content value
89
+ *
90
+ * @internal
91
+ */
92
+ contentChanged(prev, next) {
93
+ if (this.proxy instanceof HTMLOptionElement) {
94
+ this.proxy.textContent = this.textContent;
95
+ }
96
+ this.$emit("contentchange", null, { bubbles: true });
97
+ }
98
+ defaultSelectedChanged() {
99
+ if (!this.dirtySelected) {
100
+ this.selected = this.defaultSelected;
101
+ if (this.proxy instanceof HTMLOptionElement) {
102
+ this.proxy.selected = this.defaultSelected;
103
+ }
104
+ }
105
+ }
106
+ disabledChanged(prev, next) {
107
+ this.ariaDisabled = this.disabled ? "true" : "false";
108
+ if (this.proxy instanceof HTMLOptionElement) {
109
+ this.proxy.disabled = this.disabled;
110
+ }
111
+ }
112
+ selectedAttributeChanged() {
113
+ this.defaultSelected = this.selectedAttribute;
114
+ if (this.proxy instanceof HTMLOptionElement) {
115
+ this.proxy.defaultSelected = this.defaultSelected;
116
+ }
117
+ }
118
+ selectedChanged() {
119
+ this.ariaSelected = this.selected ? "true" : "false";
120
+ if (!this.dirtySelected) {
121
+ this.dirtySelected = true;
122
+ }
123
+ if (this.proxy instanceof HTMLOptionElement) {
124
+ this.proxy.selected = this.selected;
125
+ }
126
+ }
127
+ initialValueChanged(previous, next) {
128
+ // If the value is clean and the component is connected to the DOM
129
+ // then set value equal to the attribute value.
130
+ if (!this.dirtyValue) {
131
+ this.value = this.initialValue;
132
+ this.dirtyValue = false;
133
+ }
134
+ }
135
+ get label() {
136
+ var _a;
137
+ return (_a = this.value) !== null && _a !== void 0 ? _a : this.text;
138
+ }
139
+ get text() {
140
+ var _a, _b;
141
+ return (_b = (_a = this.textContent) === null || _a === void 0 ? void 0 : _a.replace(/\s+/g, " ").trim()) !== null && _b !== void 0 ? _b : "";
142
+ }
143
+ set value(next) {
144
+ const newValue = `${next !== null && next !== void 0 ? next : ""}`;
145
+ this._value = newValue;
146
+ this.dirtyValue = true;
147
+ if (this.proxy instanceof HTMLOptionElement) {
148
+ this.proxy.value = newValue;
149
+ }
150
+ Observable.notify(this, "value");
151
+ }
152
+ get value() {
153
+ var _a;
154
+ Observable.track(this, "value");
155
+ return (_a = this._value) !== null && _a !== void 0 ? _a : this.text;
156
+ }
157
+ get form() {
158
+ return this.proxy ? this.proxy.form : null;
159
+ }
160
+ }
161
+ __decorate([
162
+ observable
163
+ ], ListboxOption$1.prototype, "checked", void 0);
164
+ __decorate([
165
+ observable
166
+ ], ListboxOption$1.prototype, "content", void 0);
167
+ __decorate([
168
+ observable
169
+ ], ListboxOption$1.prototype, "defaultSelected", void 0);
170
+ __decorate([
171
+ attr({ mode: "boolean" })
172
+ ], ListboxOption$1.prototype, "disabled", void 0);
173
+ __decorate([
174
+ attr({ attribute: "selected", mode: "boolean" })
175
+ ], ListboxOption$1.prototype, "selectedAttribute", void 0);
176
+ __decorate([
177
+ observable
178
+ ], ListboxOption$1.prototype, "selected", void 0);
179
+ __decorate([
180
+ attr({ attribute: "value", mode: "fromView" })
181
+ ], ListboxOption$1.prototype, "initialValue", void 0);
182
+ /**
183
+ * States and properties relating to the ARIA `option` role.
184
+ *
185
+ * @public
186
+ */
187
+ class DelegatesARIAListboxOption {
188
+ }
189
+ __decorate([
190
+ observable
191
+ ], DelegatesARIAListboxOption.prototype, "ariaChecked", void 0);
192
+ __decorate([
193
+ observable
194
+ ], DelegatesARIAListboxOption.prototype, "ariaPosInSet", void 0);
195
+ __decorate([
196
+ observable
197
+ ], DelegatesARIAListboxOption.prototype, "ariaSelected", void 0);
198
+ __decorate([
199
+ observable
200
+ ], DelegatesARIAListboxOption.prototype, "ariaSetSize", void 0);
201
+ applyMixins(DelegatesARIAListboxOption, ARIAGlobalStatesAndProperties);
202
+ applyMixins(ListboxOption$1, StartEnd, DelegatesARIAListboxOption);
203
+
204
+ class ListboxOption extends ListboxOption$1 {}
205
+ __decorate([attr({
206
+ attribute: 'text'
207
+ }), __metadata("design:type", String)], ListboxOption.prototype, "optionText", void 0);
208
+ applyMixins(ListboxOption, AffixIconWithTrailing);
209
+
210
+ let _ = t => t,
211
+ _t,
212
+ _t2;
213
+ const getClasses = ({
214
+ icon,
215
+ disabled,
216
+ selected,
217
+ checked
218
+ }) => classNames('base', ['disabled', disabled], ['selected', Boolean(selected)], ['active', Boolean(checked)], ['icon', Boolean(icon)]);
219
+ const ListboxOptionTemplate = context => {
220
+ const affixIconTemplate = affixIconTemplateFactory(context);
221
+ const focusTemplate = focusTemplateFactory(context);
222
+ return html(_t || (_t = _`
223
+ <template
224
+ aria-checked="${0}"
225
+ aria-disabled="${0}"
226
+ aria-posinset="${0}"
227
+ aria-selected="${0}"
228
+ aria-setsize="${0}"
229
+ role="option">
230
+ <div class="${0}">
231
+ ${0}
232
+ ${0}
233
+ ${0}
234
+ </div>
235
+ </template>
236
+ `), x => x.ariaChecked, x => x.ariaDisabled, x => x.ariaPosInSet, x => x.ariaSelected, x => x.ariaSetSize, getClasses, () => focusTemplate, x => affixIconTemplate(x.icon), when(x => x.optionText, html(_t2 || (_t2 = _`<div class="text">${0}</div>`), x => x.optionText)));
237
+ };
238
+
239
+ var css_248z = "/**\n * Do not edit directly\n * Generated on Wed, 02 Nov 2022 12:59:38 GMT\n */\n.base {\n display: flex;\n box-sizing: border-box;\n align-items: center;\n background-color: var(--_appearance-color-fill);\n border-radius: 6px;\n box-shadow: inset 0 0 0 1px var(--_appearance-color-outline);\n color: var(--_appearance-color-text);\n font: var(--vvd-typography-base);\n gap: 8px;\n hyphens: auto;\n inline-size: 100%;\n min-block-size: 40px;\n padding-block: 10px;\n padding-inline: 8px;\n vertical-align: middle;\n word-break: break-word;\n}\n.base {\n --_connotation-color-primary: var(--vvd-color-canvas-text);\n --_connotation-color-primary-text: var(--vvd-color-canvas);\n --_connotation-color-primary-increment: var(--vvd-color-neutral-800);\n --_connotation-color-faint: var(--vvd-color-neutral-50);\n --_connotation-color-soft: var(--vvd-color-neutral-100);\n}\n.base {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.base:where(:hover, .hover):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-faint);\n --_appearance-color-outline: transparent;\n}\n.base:where(:disabled, .disabled) {\n --_appearance-color-text: var(--vvd-color-neutral-400);\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.base:where(:active, .active):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-soft);\n --_appearance-color-outline: transparent;\n}\n.base:where(.selected, [aria-current]):where(:not(:disabled, .disabled, :hover, .hover)) {\n --_appearance-color-text: var(--_connotation-color-primary-text);\n --_appearance-color-fill: var(--_connotation-color-primary);\n --_appearance-color-outline: transparent;\n}\n.base:where(.selected, [aria-current]):where(:hover, .hover) {\n --_appearance-color-text: var(--_connotation-color-primary-text);\n --_appearance-color-fill: var(--_connotation-color-primary-increment);\n --_appearance-color-outline: transparent;\n}\n@supports (user-select: none) {\n .base {\n user-select: none;\n }\n}\n.base:not(.disabled) {\n cursor: pointer;\n}\n.base.disabled {\n cursor: not-allowed;\n}\n.base .text {\n font: var(--vvd-typography-base);\n}\n\n.icon {\n font-size: 20px;\n}\n\n.focus-indicator {\n --focus-stroke-color: var(--vvd-color-neutral-500);\n}\n:host(:not([aria-checked=true])) .focus-indicator {\n display: none;\n}";
240
+
241
+ const vividListboxOption = ListboxOption.compose({
242
+ baseName: 'option',
243
+ template: ListboxOptionTemplate,
244
+ styles: css_248z
245
+ });
246
+ designSystem.register(vividListboxOption());
247
+
248
+ export { vividListboxOption };
package/menu/index.js CHANGED
@@ -26,7 +26,6 @@ import '../shared/start-end.js';
26
26
  import '../shared/focus2.js';
27
27
  import '../shared/es.object.assign.js';
28
28
  import '../shared/object-keys.js';
29
- import '../shared/regexp-flags.js';
30
29
  import '../shared/direction.js';
31
30
 
32
31
  /**
@@ -328,24 +327,19 @@ class Menu extends Menu$1 {
328
327
  constructor() {
329
328
  super(...arguments);
330
329
  this.open = false;
331
-
332
330
  this.popupOpenChanged = () => {
333
331
  this.open = this._popup.open;
334
332
  };
335
333
  }
336
-
337
334
  }
338
-
339
335
  __decorate([attr({
340
336
  mode: 'boolean'
341
337
  }), __metadata("design:type", Object)], Menu.prototype, "open", void 0);
342
-
343
338
  __decorate([attr, __metadata("design:type", String)], Menu.prototype, "placement", void 0);
344
-
345
339
  __decorate([attr, __metadata("design:type", String)], Menu.prototype, "anchor", void 0);
346
340
 
347
341
  let _ = t => t,
348
- _t;
342
+ _t;
349
343
  const MenuTemplate = context => {
350
344
  const popupTag = context.tagFor(Popup);
351
345
  return html(_t || (_t = _`
package/nav/index.js CHANGED
@@ -3,7 +3,7 @@ import { F as FoundationElement, h as html, d as designSystem } from '../shared/
3
3
  class Nav extends FoundationElement {}
4
4
 
5
5
  let _ = t => t,
6
- _t;
6
+ _t;
7
7
  const NavTemplate = () => html(_t || (_t = _`
8
8
  <nav><slot></slot></nav>
9
9
  `));
@@ -16,46 +16,39 @@ import '../shared/class-names.js';
16
16
  import '../shared/focus.js';
17
17
  import '../shared/object-keys.js';
18
18
 
19
- var css_248z = "/**\n * Do not edit directly\n * Generated on Sat, 29 Oct 2022 09:46:17 GMT\n */\n.control {\n position: relative;\n display: flex;\n box-sizing: border-box;\n align-items: center;\n background-color: var(--_appearance-color-fill);\n border-radius: 6px;\n box-shadow: inset 0 0 0 1px var(--_appearance-color-outline);\n color: var(--_appearance-color-text);\n cursor: pointer;\n font: var(--vvd-typography-base);\n gap: 8px;\n hyphens: auto;\n inline-size: 100%;\n min-block-size: 40px;\n padding-inline: 8px;\n text-decoration: none;\n vertical-align: middle;\n word-break: break-word;\n}\n.control {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.control:where(:hover, .hover):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-faint);\n --_appearance-color-outline: transparent;\n}\n.control:where(:active, .active):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-soft);\n --_appearance-color-outline: transparent;\n}\n.control:where(.selected, [aria-current]):where(:not(:disabled, .disabled, :hover, .hover)) {\n --_appearance-color-text: var(--_connotation-color-primary-text);\n --_appearance-color-fill: var(--_connotation-color-primary);\n --_appearance-color-outline: transparent;\n}\n.control {\n --_connotation-color-primary: var(--vvd-color-canvas-text);\n --_connotation-color-primary-text: var(--vvd-color-canvas);\n --_connotation-color-faint: var(--vvd-color-neutral-50);\n --_connotation-color-soft: var(--vvd-color-neutral-100);\n}\n@supports selector(:focus-visible) {\n .control:focus {\n outline: none;\n }\n}\n@supports (user-select: none) {\n .control {\n user-select: none;\n }\n}\n.control .toggleIcon {\n margin-inline-start: auto;\n}\n\n.control:not(:focus-visible) .focus-indicator {\n display: none;\n}\n\n.icon {\n font-size: 20px;\n}\n\n.content {\n border-inline-start: 1px solid var(--vvd-color-neutral-200);\n margin-inline-start: 20px;\n padding-inline-start: 12px;\n}\n\ndetails > summary {\n list-style: none;\n}\n\ndetails > summary::-webkit-details-marker {\n display: none;\n}";
19
+ var css_248z = "/**\n * Do not edit directly\n * Generated on Wed, 02 Nov 2022 12:59:38 GMT\n */\n.control {\n position: relative;\n display: flex;\n box-sizing: border-box;\n align-items: center;\n background-color: var(--_appearance-color-fill);\n border-radius: 6px;\n box-shadow: inset 0 0 0 1px var(--_appearance-color-outline);\n color: var(--_appearance-color-text);\n cursor: pointer;\n font: var(--vvd-typography-base);\n gap: 8px;\n hyphens: auto;\n inline-size: 100%;\n min-block-size: 40px;\n padding-inline: 8px;\n text-decoration: none;\n vertical-align: middle;\n word-break: break-word;\n}\n.control {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.control:where(:hover, .hover):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-faint);\n --_appearance-color-outline: transparent;\n}\n.control:where(:active, .active):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-soft);\n --_appearance-color-outline: transparent;\n}\n.control:where(.selected, [aria-current]):where(:not(:disabled, .disabled, :hover, .hover)) {\n --_appearance-color-text: var(--_connotation-color-primary-text);\n --_appearance-color-fill: var(--_connotation-color-primary);\n --_appearance-color-outline: transparent;\n}\n.control {\n --_connotation-color-primary: var(--vvd-color-canvas-text);\n --_connotation-color-primary-text: var(--vvd-color-canvas);\n --_connotation-color-faint: var(--vvd-color-neutral-50);\n --_connotation-color-soft: var(--vvd-color-neutral-100);\n}\n@supports selector(:focus-visible) {\n .control:focus {\n outline: none;\n }\n}\n@supports (user-select: none) {\n .control {\n user-select: none;\n }\n}\n.control .toggleIcon {\n margin-inline-start: auto;\n}\n\n.control:not(:focus-visible) .focus-indicator {\n display: none;\n}\n\n.icon {\n font-size: 20px;\n}\n\n.content {\n border-inline-start: 1px solid var(--vvd-color-neutral-200);\n margin-inline-start: 20px;\n padding-inline-start: 12px;\n}\n\ndetails > summary {\n list-style: none;\n}\n\ndetails > summary::-webkit-details-marker {\n display: none;\n}";
20
20
 
21
21
  var _NavDisclosure_onToggle;
22
22
  class NavDisclosure extends FoundationElement {
23
23
  constructor() {
24
24
  super(...arguments);
25
25
  this.open = false;
26
-
27
26
  _NavDisclosure_onToggle.set(this, () => {
28
27
  this.open = this.details.open;
29
28
  this.$emit('toggle');
30
29
  });
31
30
  }
32
-
33
31
  connectedCallback() {
34
32
  super.connectedCallback();
35
33
  this.details.addEventListener('toggle', __classPrivateFieldGet(this, _NavDisclosure_onToggle, "f"));
36
34
  this.details.open = this.open;
37
35
  }
38
-
39
36
  disconnectedCallback() {
40
37
  super.disconnectedCallback();
41
38
  this.details.removeEventListener('toggle', __classPrivateFieldGet(this, _NavDisclosure_onToggle, "f"));
42
39
  }
43
-
44
40
  }
45
41
  _NavDisclosure_onToggle = new WeakMap();
46
-
47
42
  __decorate([attr, __metadata("design:type", String)], NavDisclosure.prototype, "label", void 0);
48
-
49
43
  __decorate([attr({
50
44
  mode: 'boolean'
51
45
  }), __metadata("design:type", Object)], NavDisclosure.prototype, "open", void 0);
52
-
53
46
  applyMixins(NavDisclosure, AffixIcon);
54
47
 
55
48
  let _ = t => t,
56
- _t,
57
- _t2,
58
- _t3;
49
+ _t,
50
+ _t2,
51
+ _t3;
59
52
  const NavDisclosureTemplate = context => {
60
53
  const affixIconTemplate = affixIconTemplateFactory(context);
61
54
  const focusTemplate = focusTemplateFactory(context);
package/nav-item/index.js CHANGED
@@ -21,13 +21,13 @@ import '../shared/start-end.js';
21
21
  import '../shared/ref.js';
22
22
  import '../shared/focus2.js';
23
23
 
24
- var css_248z = "/**\n * Do not edit directly\n * Generated on Sat, 29 Oct 2022 09:46:17 GMT\n */\n.control {\n position: relative;\n display: inline-flex;\n box-sizing: border-box;\n align-items: center;\n background-color: var(--_appearance-color-fill);\n border-radius: 6px;\n box-shadow: inset 0 0 0 1px var(--_appearance-color-outline);\n color: var(--_appearance-color-text);\n font: var(--vvd-typography-base);\n gap: 8px;\n hyphens: auto;\n inline-size: 100%;\n min-block-size: 40px;\n padding-block: 10px;\n padding-inline: 8px;\n text-decoration: none;\n vertical-align: middle;\n word-break: break-word;\n}\n.control {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.control:where(:hover, .hover):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-faint);\n --_appearance-color-outline: transparent;\n}\n.control:where(:active, .active):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-soft);\n --_appearance-color-outline: transparent;\n}\n.control:where(.selected, [aria-current]):where(:not(:disabled, .disabled, :hover, .hover)) {\n --_appearance-color-text: var(--_connotation-color-primary-text);\n --_appearance-color-fill: var(--_connotation-color-primary);\n --_appearance-color-outline: transparent;\n}\n.control {\n --_connotation-color-primary: var(--vvd-color-canvas-text);\n --_connotation-color-primary-text: var(--vvd-color-canvas);\n --_connotation-color-faint: var(--vvd-color-neutral-50);\n --_connotation-color-soft: var(--vvd-color-neutral-100);\n}\n@supports selector(:focus-visible) {\n .control:focus {\n outline: none;\n }\n}\n.control.icon-only {\n display: flex;\n block-size: 40px;\n inline-size: 40px;\n place-content: center;\n}\n\n.control:not(:focus-visible) .focus-indicator {\n display: none;\n}\n\n.icon {\n font-size: 20px;\n}";
24
+ var css_248z = "/**\n * Do not edit directly\n * Generated on Wed, 02 Nov 2022 12:59:38 GMT\n */\n.control {\n position: relative;\n display: inline-flex;\n box-sizing: border-box;\n align-items: center;\n background-color: var(--_appearance-color-fill);\n border-radius: 6px;\n box-shadow: inset 0 0 0 1px var(--_appearance-color-outline);\n color: var(--_appearance-color-text);\n font: var(--vvd-typography-base);\n gap: 8px;\n hyphens: auto;\n inline-size: 100%;\n min-block-size: 40px;\n padding-block: 10px;\n padding-inline: 8px;\n text-decoration: none;\n vertical-align: middle;\n word-break: break-word;\n}\n.control {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.control:where(:hover, .hover):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-faint);\n --_appearance-color-outline: transparent;\n}\n.control:where(:active, .active):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-soft);\n --_appearance-color-outline: transparent;\n}\n.control:where(.selected, [aria-current]):where(:not(:disabled, .disabled, :hover, .hover)) {\n --_appearance-color-text: var(--_connotation-color-primary-text);\n --_appearance-color-fill: var(--_connotation-color-primary);\n --_appearance-color-outline: transparent;\n}\n.control:where(.selected, [aria-current]):where(:hover, .hover) {\n --_appearance-color-text: var(--_connotation-color-primary-text);\n --_appearance-color-fill: var(--_connotation-color-primary-increment);\n --_appearance-color-outline: transparent;\n}\n.control {\n --_connotation-color-primary: var(--vvd-color-canvas-text);\n --_connotation-color-primary-text: var(--vvd-color-canvas);\n --_connotation-color-primary-increment: var(--vvd-color-neutral-800);\n --_connotation-color-faint: var(--vvd-color-neutral-50);\n --_connotation-color-soft: var(--vvd-color-neutral-100);\n}\n@supports selector(:focus-visible) {\n .control:focus {\n outline: none;\n }\n}\n.control.icon-only {\n display: flex;\n block-size: 40px;\n inline-size: 40px;\n place-content: center;\n}\n\n.control:not(:focus-visible) .focus-indicator {\n display: none;\n}\n\n.icon {\n font-size: 20px;\n}";
25
25
 
26
26
  class NavItem extends TextAnchor {}
27
27
  applyMixins(NavItem, AffixIcon);
28
28
 
29
29
  let _ = t => t,
30
- _t;
30
+ _t;
31
31
  const NavItemTemplate = (context, definition) => html(_t || (_t = _`
32
32
  ${0}
33
33
  `), textAnchorTemplate(context));
package/note/index.js CHANGED
@@ -14,38 +14,30 @@ import '../shared/iterators.js';
14
14
  import '../shared/to-string.js';
15
15
  import '../shared/_has.js';
16
16
 
17
- var css_248z = "/**\n * Do not edit directly\n * Generated on Sat, 29 Oct 2022 09:46:17 GMT\n */\n.base {\n display: flex;\n align-items: stretch;\n padding: 20px;\n border-left: 8px solid var(--_connotation-color-primary);\n background-color: var(--vvd-color-canvas);\n border-radius: 6px;\n box-shadow: inset 0 1px 0 0 var(--vvd-color-neutral-300), inset -1px 0 0 0 var(--vvd-color-neutral-300), inset 0 -1px 0 0 var(--vvd-color-neutral-300);\n color: var(--vvd-color-canvas-text);\n}\n.base.connotation-success {\n --_connotation-color-primary: var(--vvd-color-success-500);\n}\n.base.connotation-information {\n --_connotation-color-primary: var(--vvd-color-information-500);\n}\n.base.connotation-alert {\n --_connotation-color-primary: var(--vvd-color-alert-500);\n}\n.base.connotation-warning {\n --_connotation-color-primary: var(--vvd-color-warning-500);\n}\n.base:not(.connotation-success, .connotation-information, .connotation-alert, .connotation-warning) {\n --_connotation-color-primary: var(--vvd-color-announcement-500);\n}\n@supports (contain: content) {\n .base {\n contain: content;\n }\n}\n@supports not (contain: content) {\n .base {\n overflow: hidden;\n }\n}\n\n.icon {\n align-self: flex-start;\n font-size: 24px;\n margin-inline-end: 16px;\n}\n\n.text {\n display: flex;\n min-height: 24px;\n flex: 1;\n flex-direction: column;\n justify-content: center;\n gap: 4px;\n text-align: start;\n}\n.text .headline {\n font: var(--vvd-typography-base-bold);\n}\n.text .message {\n font: var(--vvd-typography-base);\n}";
17
+ var css_248z = "/**\n * Do not edit directly\n * Generated on Wed, 02 Nov 2022 12:59:38 GMT\n */\n.base {\n display: flex;\n align-items: stretch;\n padding: 20px;\n border-left: 8px solid var(--_connotation-color-primary);\n background-color: var(--vvd-color-canvas);\n border-radius: 6px;\n box-shadow: inset 0 1px 0 0 var(--vvd-color-neutral-300), inset -1px 0 0 0 var(--vvd-color-neutral-300), inset 0 -1px 0 0 var(--vvd-color-neutral-300);\n color: var(--vvd-color-canvas-text);\n}\n.base.connotation-success {\n --_connotation-color-primary: var(--vvd-color-success-500);\n}\n.base.connotation-information {\n --_connotation-color-primary: var(--vvd-color-information-500);\n}\n.base.connotation-alert {\n --_connotation-color-primary: var(--vvd-color-alert-500);\n}\n.base.connotation-warning {\n --_connotation-color-primary: var(--vvd-color-warning-500);\n}\n.base:not(.connotation-success, .connotation-information, .connotation-alert, .connotation-warning) {\n --_connotation-color-primary: var(--vvd-color-announcement-500);\n}\n@supports (contain: content) {\n .base {\n contain: content;\n }\n}\n@supports not (contain: content) {\n .base {\n overflow: hidden;\n }\n}\n\n.icon {\n align-self: flex-start;\n font-size: 24px;\n margin-inline-end: 16px;\n}\n\n.text {\n display: flex;\n min-height: 24px;\n flex: 1;\n flex-direction: column;\n justify-content: center;\n gap: 4px;\n text-align: start;\n}\n.text .headline {\n font: var(--vvd-typography-base-bold);\n}\n.text .message {\n font: var(--vvd-typography-base);\n}";
18
18
 
19
19
  class Note extends FoundationElement {}
20
-
21
20
  __decorate([attr, __metadata("design:type", String)], Note.prototype, "headline", void 0);
22
-
23
21
  __decorate([attr, __metadata("design:type", String)], Note.prototype, "connotation", void 0);
24
-
25
22
  applyMixins(Note, AffixIcon);
26
23
 
27
24
  let _ = t => t,
28
- _t,
29
- _t2,
30
- _t3;
25
+ _t,
26
+ _t2,
27
+ _t3;
31
28
  const connotationIconMap = new Map([[Connotation.Information, 'info-solid'], [Connotation.Announcement, 'megaphone-solid'], [Connotation.Success, 'check-circle-solid'], [Connotation.Warning, 'warning-solid'], [Connotation.Alert, 'error-solid']]);
32
-
33
29
  const getClasses = ({
34
30
  connotation
35
31
  }) => classNames('base', `connotation-${connotation}`);
36
-
37
32
  function getHeaderTemplate() {
38
33
  return html(_t || (_t = _`<div class="headline">${0}</div>`), x => x.headline);
39
34
  }
40
-
41
35
  function getIconType(note) {
42
36
  return note.icon ? note.icon : note.connotation ? connotationIconMap.get(note.connotation) : 'megaphone-solid';
43
37
  }
44
-
45
38
  function getIconTemplate() {
46
39
  return html(_t2 || (_t2 = _`<vwc-icon class="icon" type="${0}"></vwc-icon>`), getIconType);
47
40
  }
48
-
49
41
  const NoteTemplate = () => html(_t3 || (_t3 = _`
50
42
  <div class="${0}">
51
43
  ${0}
@@ -8,9 +8,8 @@ import { S as StartEnd } from '../shared/start-end.js';
8
8
  import { a as applyMixins } from '../shared/apply-mixins.js';
9
9
  import { F as FormAssociated } from '../shared/form-associated.js';
10
10
  import { e as keyArrowDown, d as keyArrowUp } from '../shared/key-codes.js';
11
- import { x as functionCall, q as hasOwnProperty_1, b as objectIsPrototypeOf, D as functionName, v as defineBuiltIn$1, e as fails$1, j as anObject$1 } from '../shared/export.js';
11
+ import { j as anObject$2, x as functionCall, q as hasOwnProperty_1, b as objectIsPrototypeOf, D as functionName, v as defineBuiltIn$1, e as fails$1 } from '../shared/export.js';
12
12
  import { t as toString } from '../shared/to-string.js';
13
- import { r as regexpFlags } from '../shared/regexp-flags.js';
14
13
  import { S as Shape, D as Density } from '../shared/enums.js';
15
14
  import { f as focusTemplateFactory } from '../shared/focus2.js';
16
15
  import { w as when } from '../shared/when.js';
@@ -323,21 +322,34 @@ __decorate([
323
322
  ], NumberField$1.prototype, "defaultSlottedNodes", void 0);
324
323
  applyMixins(NumberField$1, StartEnd, DelegatesARIATextbox);
325
324
 
326
- var css_248z = "/**\n * Do not edit directly\n * Generated on Sat, 29 Oct 2022 09:46:17 GMT\n */\n:host {\n display: inline-block;\n}\n\n.base {\n display: inline-grid;\n width: 100%;\n gap: 4px;\n grid-template-columns: min-content 1fr max-content;\n}\n.base {\n --_appearance-color-text: var(--vvd-color-canvas-text);\n --_appearance-color-fill: var(--vvd-color-canvas);\n --_appearance-color-outline: var(--vvd-color-neutral-400);\n}\n.base.appearance-ghost {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.base:where(:hover, .hover):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--vvd-color-canvas-text);\n --_appearance-color-fill: var(--vvd-color-canvas);\n --_appearance-color-outline: var(--vvd-color-canvas-text);\n}\n.base:where(:hover, .hover):where(:not(:disabled, .disabled)).appearance-ghost {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-faint);\n --_appearance-color-outline: transparent;\n}\n.base:where(:disabled, .disabled) {\n --_appearance-color-text: var(--vvd-color-neutral-400);\n --_appearance-color-fill: var(--vvd-color-neutral-100);\n --_appearance-color-outline: var(--vvd-color-neutral-400);\n}\n.base:where(:disabled, .disabled).appearance-ghost {\n --_appearance-color-text: var(--vvd-color-neutral-400);\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.base:where(:readonly, .readonly):where(:not(:disabled, .disabled, :hover, .hover, :active, .active)) {\n --_appearance-color-text: var(--vvd-color-canvas-text);\n --_appearance-color-fill: var(--vvd-color-neutral-100);\n --_appearance-color-outline: var(--vvd-color-neutral-400);\n}\n.base:where(:readonly, .readonly):where(:not(:disabled, .disabled, :hover, .hover, :active, .active)).appearance-ghost {\n --_appearance-color-text: var(--vvd-color-neutral-400);\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.base:where(.error):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--vvd-color-alert-500);\n --_appearance-color-fill: var(--vvd-color-alert-100);\n --_appearance-color-outline: var(--vvd-color-alert-500);\n}\n.base:where(.error):where(:not(:disabled, .disabled)).appearance-ghost {\n --_appearance-color-text: transparent;\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.base:where(.success):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--vvd-color-canvas-text);\n --_appearance-color-fill: var(--vvd-color-success-100);\n --_appearance-color-outline: var(--vvd-color-success-500);\n}\n.base:where(.success):where(:not(:disabled, .disabled)).appearance-ghost {\n --_appearance-color-text: transparent;\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n@supports (user-select: none) {\n .base {\n user-select: none;\n }\n}\n.base:not(.disabled) {\n --_low-ink-color: var(--vvd-color-neutral-600);\n}\n.base.disabled {\n --_low-ink-color: var(--vvd-color-neutral-400);\n}\n\n.label {\n contain: inline-size;\n font: var(--vvd-typography-base);\n grid-column: 1/4;\n grid-row: 1;\n}\n.char-count + .label {\n grid-column: 1/3;\n}\n.base:not(.disabled) .label {\n color: var(--vvd-color-canvas-text);\n}\n.base.disabled .label {\n color: var(--vvd-color-neutral-400);\n}\n\n.char-count {\n color: var(--_low-ink-color);\n font: var(--vvd-typography-base);\n grid-column: 3/4;\n}\n\n.fieldset {\n position: relative;\n display: flex;\n align-items: center;\n color: var(--_appearance-color-text);\n grid-column: 1/4;\n transition: color 0.2s;\n /* Size */\n /* Shape */\n}\n.success .fieldset {\n --focus-stroke-color: var(--vvd-color-success-500);\n}\n.error .fieldset {\n --focus-stroke-color: var(--vvd-color-alert-500);\n}\n.base:not(.density-extended) > .fieldset {\n block-size: 40px;\n}\n.base.density-extended > .fieldset {\n block-size: 48px;\n}\n.base:not(.shape-pill) .fieldset {\n border-radius: 6px;\n}\n.base.shape-pill .fieldset {\n border-radius: 24px;\n}\n\n.control {\n width: 100%;\n border: 0 none;\n background-color: var(--_appearance-color-fill);\n block-size: 100%;\n border-radius: inherit;\n box-shadow: inset 0 0 0 1px var(--_appearance-color-outline);\n color: inherit;\n font: var(--vvd-typography-base);\n padding-inline-end: 16px;\n padding-inline-start: 16px;\n transition: box-shadow 0.2s, background-color 0.2s;\n}\n@supports selector(:focus-visible) {\n .control:focus {\n outline: none;\n }\n}\n.control::placeholder {\n color: var(--_low-ink-color);\n}\n\n.icon {\n position: absolute;\n z-index: 1;\n color: var(--_low-ink-color);\n font-size: 20px;\n inset-inline-start: 16px;\n}\n.icon + .control {\n padding-inline-start: 44px;\n}\n\n.focus-indicator {\n --focus-stroke-gap-color: transparent;\n pointer-events: none;\n}\n.fieldset:not(:focus-visible, :focus-within) > .focus-indicator {\n display: none;\n}\n\n.control {\n padding-inline-end: 70px;\n}\n.control::-webkit-outer-spin-button, .control::-webkit-inner-spin-button {\n appearance: none;\n}\n.control-buttons {\n position: absolute;\n z-index: 1;\n right: 3px;\n display: flex;\n}\n.readonly .control-buttons, .disabled .control-buttons {\n pointer-events: none;\n}\n.control-buttons .divider {\n margin-block: 8px;\n}\n.control-buttons > * {\n flex-shrink: 0;\n}\n\n.disabled .focus-indicator {\n display: none;\n pointer-events: none;\n}";
325
+ var css_248z = "/**\n * Do not edit directly\n * Generated on Wed, 02 Nov 2022 12:59:38 GMT\n */\n:host {\n display: inline-block;\n}\n\n.base {\n display: inline-grid;\n width: 100%;\n gap: 4px;\n grid-template-columns: min-content 1fr max-content;\n}\n.base {\n --_appearance-color-text: var(--vvd-color-canvas-text);\n --_appearance-color-fill: var(--vvd-color-canvas);\n --_appearance-color-outline: var(--vvd-color-neutral-400);\n}\n.base.appearance-ghost {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.base:where(:hover, .hover):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--vvd-color-canvas-text);\n --_appearance-color-fill: var(--vvd-color-canvas);\n --_appearance-color-outline: var(--vvd-color-canvas-text);\n}\n.base:where(:hover, .hover):where(:not(:disabled, .disabled)).appearance-ghost {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-faint);\n --_appearance-color-outline: transparent;\n}\n.base:where(:disabled, .disabled) {\n --_appearance-color-text: var(--vvd-color-neutral-400);\n --_appearance-color-fill: var(--vvd-color-neutral-100);\n --_appearance-color-outline: var(--vvd-color-neutral-400);\n}\n.base:where(:disabled, .disabled).appearance-ghost {\n --_appearance-color-text: var(--vvd-color-neutral-400);\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.base:where(:readonly, .readonly):where(:not(:disabled, .disabled, :hover, .hover, :active, .active)) {\n --_appearance-color-text: var(--vvd-color-canvas-text);\n --_appearance-color-fill: var(--vvd-color-neutral-100);\n --_appearance-color-outline: var(--vvd-color-neutral-400);\n}\n.base:where(:readonly, .readonly):where(:not(:disabled, .disabled, :hover, .hover, :active, .active)).appearance-ghost {\n --_appearance-color-text: var(--vvd-color-neutral-400);\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.base:where(.error):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--vvd-color-alert-500);\n --_appearance-color-fill: var(--vvd-color-alert-100);\n --_appearance-color-outline: var(--vvd-color-alert-500);\n}\n.base:where(.error):where(:not(:disabled, .disabled)).appearance-ghost {\n --_appearance-color-text: transparent;\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.base:where(.success):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--vvd-color-canvas-text);\n --_appearance-color-fill: var(--vvd-color-success-100);\n --_appearance-color-outline: var(--vvd-color-success-500);\n}\n.base:where(.success):where(:not(:disabled, .disabled)).appearance-ghost {\n --_appearance-color-text: transparent;\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n@supports (user-select: none) {\n .base {\n user-select: none;\n }\n}\n.base:not(.disabled) {\n --_low-ink-color: var(--vvd-color-neutral-600);\n}\n.base.disabled {\n --_low-ink-color: var(--vvd-color-neutral-400);\n}\n\n.label {\n contain: inline-size;\n font: var(--vvd-typography-base);\n grid-column: 1/4;\n grid-row: 1;\n}\n.char-count + .label {\n grid-column: 1/3;\n}\n.base:not(.disabled) .label {\n color: var(--vvd-color-canvas-text);\n}\n.base.disabled .label {\n color: var(--vvd-color-neutral-400);\n}\n\n.char-count {\n color: var(--_low-ink-color);\n font: var(--vvd-typography-base);\n grid-column: 3/4;\n}\n\n.fieldset {\n position: relative;\n display: flex;\n align-items: center;\n color: var(--_appearance-color-text);\n grid-column: 1/4;\n transition: color 0.2s;\n /* Size */\n /* Shape */\n}\n.success .fieldset {\n --focus-stroke-color: var(--vvd-color-success-500);\n}\n.error .fieldset {\n --focus-stroke-color: var(--vvd-color-alert-500);\n}\n.base:not(.density-extended) > .fieldset {\n block-size: 40px;\n}\n.base.density-extended > .fieldset {\n block-size: 48px;\n}\n.base:not(.shape-pill) .fieldset {\n border-radius: 6px;\n}\n.base.shape-pill .fieldset {\n border-radius: 24px;\n}\n\n.control {\n width: 100%;\n border: 0 none;\n background-color: var(--_appearance-color-fill);\n block-size: 100%;\n border-radius: inherit;\n box-shadow: inset 0 0 0 1px var(--_appearance-color-outline);\n color: inherit;\n font: var(--vvd-typography-base);\n padding-inline-end: 16px;\n padding-inline-start: 16px;\n transition: box-shadow 0.2s, background-color 0.2s;\n}\n@supports selector(:focus-visible) {\n .control:focus {\n outline: none;\n }\n}\n.control::placeholder {\n color: var(--_low-ink-color);\n}\n\n.icon {\n position: absolute;\n z-index: 1;\n color: var(--_low-ink-color);\n font-size: 20px;\n inset-inline-start: 16px;\n}\n.icon + .control {\n padding-inline-start: 44px;\n}\n\n.focus-indicator {\n --focus-stroke-gap-color: transparent;\n pointer-events: none;\n}\n.fieldset:not(:focus-visible, :focus-within) > .focus-indicator {\n display: none;\n}\n\n.control {\n padding-inline-end: 70px;\n}\n.control::-webkit-outer-spin-button, .control::-webkit-inner-spin-button {\n appearance: none;\n}\n.control-buttons {\n position: absolute;\n z-index: 1;\n right: 3px;\n display: flex;\n}\n.readonly .control-buttons, .disabled .control-buttons {\n pointer-events: none;\n}\n.control-buttons .divider {\n margin-block: 8px;\n}\n.control-buttons > * {\n flex-shrink: 0;\n}\n\n.disabled .focus-indicator {\n display: none;\n pointer-events: none;\n}";
327
326
 
328
327
  let NumberField = class NumberField extends NumberField$1 {};
329
-
330
328
  __decorate([attr, __metadata("design:type", String)], NumberField.prototype, "density", void 0);
331
-
332
329
  __decorate([attr, __metadata("design:type", String)], NumberField.prototype, "appearance", void 0);
333
-
334
330
  __decorate([attr, __metadata("design:type", String)], NumberField.prototype, "shape", void 0);
335
-
336
331
  __decorate([attr, __metadata("design:type", String)], NumberField.prototype, "autoComplete", void 0);
337
-
338
332
  NumberField = __decorate([formElements], NumberField);
339
333
  applyMixins(NumberField, AffixIcon);
340
334
 
335
+ var anObject$1 = anObject$2;
336
+
337
+ // `RegExp.prototype.flags` getter implementation
338
+ // https://tc39.es/ecma262/#sec-get-regexp.prototype.flags
339
+ var regexpFlags = function () {
340
+ var that = anObject$1(this);
341
+ var result = '';
342
+ if (that.hasIndices) result += 'd';
343
+ if (that.global) result += 'g';
344
+ if (that.ignoreCase) result += 'i';
345
+ if (that.multiline) result += 'm';
346
+ if (that.dotAll) result += 's';
347
+ if (that.unicode) result += 'u';
348
+ if (that.unicodeSets) result += 'v';
349
+ if (that.sticky) result += 'y';
350
+ return result;
351
+ };
352
+
341
353
  var call = functionCall;
342
354
  var hasOwn = hasOwnProperty_1;
343
355
  var isPrototypeOf = objectIsPrototypeOf;
@@ -353,7 +365,7 @@ var regexpGetFlags = function (R) {
353
365
 
354
366
  var PROPER_FUNCTION_NAME = functionName.PROPER;
355
367
  var defineBuiltIn = defineBuiltIn$1;
356
- var anObject = anObject$1;
368
+ var anObject = anObject$2;
357
369
  var $toString = toString;
358
370
  var fails = fails$1;
359
371
  var getRegExpFlags = regexpGetFlags;
@@ -378,12 +390,11 @@ if (NOT_GENERIC || INCORRECT_NAME) {
378
390
  }
379
391
 
380
392
  let _ = t => t,
381
- _t,
382
- _t2,
383
- _t3;
393
+ _t,
394
+ _t2,
395
+ _t3;
384
396
  const ADD = 1;
385
397
  const SUBTRACT = -1;
386
-
387
398
  const getStateClasses = ({
388
399
  errorValidationMessage,
389
400
  disabled,
@@ -396,30 +407,24 @@ const getStateClasses = ({
396
407
  label,
397
408
  successText
398
409
  }) => classNames(['error', Boolean(errorValidationMessage)], ['disabled', disabled], ['has-value', Boolean(value)], ['readonly', readOnly], ['placeholder', Boolean(placeholder)], [`density-${density}`, Boolean(density)], [`appearance-${appearance}`, Boolean(appearance)], [`shape-${shape}`, Boolean(shape)], ['no-label', !label], ['success', !!successText]);
399
-
400
410
  function renderLabel() {
401
411
  return html(_t || (_t = _`
402
412
  <label for="control" class="label">
403
413
  ${0}
404
414
  </label>`), x => x.label);
405
415
  }
406
-
407
416
  function adjustValueByStep(numberField, direction = ADD) {
408
417
  numberField.value = (Number(numberField.value) + direction * (numberField.step ? numberField.step : 1)).toString();
409
418
  }
410
-
411
419
  function setControlButtonShape(numberField) {
412
420
  return numberField.shape === Shape.Pill ? Shape.Pill : null;
413
421
  }
414
-
415
422
  function setControlButtonDensity(numberField) {
416
423
  return numberField.density === Density.Extended ? Density.Normal : Density.Condensed;
417
424
  }
418
-
419
425
  function getTabIndex(numberField) {
420
426
  return numberField.disabled || numberField.readOnly ? '-1' : null;
421
427
  }
422
-
423
428
  function numberControlButtons(context) {
424
429
  const buttonTag = context.tagFor(Button);
425
430
  const dividerTag = context.tagFor(Divider);
@@ -442,7 +447,6 @@ function numberControlButtons(context) {
442
447
  </div>
443
448
  `), x => x.disabled || x.readOnly, buttonTag, setControlButtonShape, setControlButtonDensity, getTabIndex, x => adjustValueByStep(x, SUBTRACT), buttonTag, dividerTag, dividerTag, buttonTag, setControlButtonShape, setControlButtonDensity, getTabIndex, x => adjustValueByStep(x), buttonTag);
444
449
  }
445
-
446
450
  const NumberFieldTemplate = context => {
447
451
  const focusTemplate = focusTemplateFactory(context);
448
452
  return html(_t3 || (_t3 = _`
@@ -500,7 +504,6 @@ const NumberFieldTemplate = context => {
500
504
  </div>
501
505
  `), getStateClasses, when(x => x.label, renderLabel()), x => x.handleTextInput(), x => x.handleChange(), x => x.autofocus, x => x.disabled, x => x.list, x => x.step ? x.step : null, x => x.max, x => x.min, x => x.maxlength, x => x.minlength, x => x.placeholder, x => x.readOnly, x => x.required, x => x.size, x => x.autoComplete, x => x.name, x => x.spellcheck, x => x.value, x => x.ariaAtomic, x => x.ariaBusy, x => x.ariaControls, x => x.ariaCurrent, x => x.ariaDescribedby, x => x.ariaDetails, x => x.ariaDisabled, x => x.ariaErrormessage, x => x.ariaFlowto, x => x.ariaHaspopup, x => x.ariaHidden, x => x.ariaInvalid, x => x.ariaKeyshortcuts, x => x.ariaLabel, x => x.ariaLabelledby, x => x.ariaLive, x => x.ariaOwns, x => x.ariaRelevant, x => x.ariaRoledescription, ref('control'), () => focusTemplate, () => numberControlButtons(context), when(x => {
502
506
  var _a;
503
-
504
507
  return !x.successText && !x.errorValidationMessage && ((_a = x.helperText) === null || _a === void 0 ? void 0 : _a.length);
505
508
  }, getFeedbackTemplate('helper', context)), when(x => !x.successText && x.errorValidationMessage, getFeedbackTemplate('error', context)), when(x => x.successText, getFeedbackTemplate('success', context)));
506
509
  };
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@vonage/vivid",
3
- "version": "3.0.0-next.83",
3
+ "version": "3.0.0-next.85",
4
4
  "type": "module",
5
- "module": "./index.esm.js",
5
+ "module": "./index.js",
6
6
  "main": "./index.js",
7
7
  "homepage": "https://vivid.deno.dev",
8
8
  "repository": {
@@ -40,6 +40,7 @@
40
40
  "./nav-disclosure": "./nav-disclosure",
41
41
  "./nav-item": "./nav-item",
42
42
  "./note": "./note",
43
+ "./option": "./listbox-option",
43
44
  "./popup": "./popup",
44
45
  "./progress": "./progress",
45
46
  "./progress-ring": "./progress-ring",
@@ -51,14 +52,16 @@
51
52
  "./tooltip": "./tooltip",
52
53
  "./number-field": "./number-field"
53
54
  },
54
- "typings": "./index.d.ts",
55
+ "types": "./index.d.ts",
55
56
  "dependencies": {
56
- "@microsoft/fast-element": "^1.10.5",
57
- "@microsoft/fast-foundation": "^2.46.14",
58
- "@microsoft/fast-web-utilities": "^5.4.1",
59
- "ramda": "^0.27.2",
60
- "dialog-polyfill": "^0.5.6",
61
- "@floating-ui/dom": "^0.5.4"
57
+ "rollup-plugin-postcss": "4.0.2",
58
+ "@microsoft/fast-element": "1.11.0",
59
+ "@microsoft/fast-foundation": "2.47.0",
60
+ "@microsoft/fast-web-utilities": "5.4.1",
61
+ "ramda": "0.27.2",
62
+ "dialog-polyfill": "0.5.6",
63
+ "@floating-ui/dom": "0.5.4",
64
+ "markdown-it": "12.3.2"
62
65
  },
63
66
  "peerDependencies": {}
64
67
  }
package/popup/index.js CHANGED
@@ -24,4 +24,3 @@ import '../shared/start-end.js';
24
24
  import '../shared/ref.js';
25
25
  import '../shared/focus2.js';
26
26
  import '../shared/es.object.assign.js';
27
- import '../shared/regexp-flags.js';