@vonage/vivid 3.0.0-next.93 → 3.0.0-next.95

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 (65) hide show
  1. package/accordion/index.js +1 -1
  2. package/accordion-item/index.js +2 -1
  3. package/action-group/index.js +1 -1
  4. package/avatar/index.js +2 -1
  5. package/badge/index.js +2 -1
  6. package/banner/index.js +2 -1
  7. package/breadcrumb-item/index.js +2 -1
  8. package/button/index.js +1 -0
  9. package/calendar/index.js +1 -1
  10. package/calendar-event/index.js +1 -1
  11. package/card/index.js +2 -1
  12. package/checkbox/index.js +2 -1
  13. package/dialog/index.js +2 -1
  14. package/fab/index.js +2 -1
  15. package/focus/index.js +1 -1
  16. package/header/index.js +1 -1
  17. package/icon/index.js +1 -0
  18. package/index.js +5 -0
  19. package/lib/components.d.ts +2 -0
  20. package/lib/slider/index.d.ts +3 -0
  21. package/lib/slider/slider.d.ts +4 -0
  22. package/lib/slider/slider.template.d.ts +4 -0
  23. package/lib/switch/index.d.ts +4 -0
  24. package/lib/switch/switch.d.ts +7 -0
  25. package/lib/switch/switch.template.d.ts +4 -0
  26. package/listbox/index.js +3 -18
  27. package/listbox-option/index.js +1 -0
  28. package/menu/index.js +1 -0
  29. package/menu-item/index.js +1 -0
  30. package/nav-disclosure/index.js +2 -1
  31. package/nav-item/index.js +2 -1
  32. package/note/index.js +2 -1
  33. package/number-field/index.js +5 -60
  34. package/package.json +6 -4
  35. package/popup/index.js +1 -0
  36. package/progress/index.js +1 -1
  37. package/progress-ring/index.js +1 -1
  38. package/radio/index.js +1 -1
  39. package/radio-group/index.js +1 -1
  40. package/shared/es.object.assign.js +1 -1
  41. package/shared/es.regexp.to-string.js +59 -0
  42. package/shared/export.js +1 -1
  43. package/shared/form-elements.js +1 -1
  44. package/shared/icon.js +10 -45
  45. package/shared/index2.js +1 -1
  46. package/shared/index4.js +1 -1
  47. package/shared/index5.js +1 -1
  48. package/shared/index7.js +1 -1
  49. package/shared/numbers.js +25 -0
  50. package/shared/object-keys.js +1 -1
  51. package/shared/patterns/form-elements/form-elements.d.ts +1 -1
  52. package/shared/string-trim.js +40 -0
  53. package/shared/web.dom-collections.iterator.js +1 -1
  54. package/side-drawer/index.js +1 -1
  55. package/slider/index.js +596 -0
  56. package/styles/core/all.css +1 -1
  57. package/styles/core/theme.css +1 -1
  58. package/styles/core/typography.css +1 -1
  59. package/styles/tokens/theme-dark.css +4 -4
  60. package/styles/tokens/theme-light.css +4 -4
  61. package/switch/index.js +153 -0
  62. package/text-anchor/index.js +1 -0
  63. package/text-area/index.js +2 -1
  64. package/text-field/index.js +2 -1
  65. package/tooltip/index.js +2 -1
@@ -1,18 +1,18 @@
1
1
  /**
2
2
  * Do not edit directly
3
- * Generated on Mon, 07 Nov 2022 11:12:43 GMT
3
+ * Generated on Tue, 08 Nov 2022 19:42:32 GMT
4
4
  */
5
5
  /**
6
6
  * Do not edit directly
7
- * Generated on Mon, 07 Nov 2022 11:12:43 GMT
7
+ * Generated on Tue, 08 Nov 2022 19:42:32 GMT
8
8
  */
9
9
  /**
10
10
  * Do not edit directly
11
- * Generated on Mon, 07 Nov 2022 11:12:43 GMT
11
+ * Generated on Tue, 08 Nov 2022 19:42:32 GMT
12
12
  */
13
13
  /**
14
14
  * Do not edit directly
15
- * Generated on Mon, 07 Nov 2022 11:12:43 GMT
15
+ * Generated on Tue, 08 Nov 2022 19:42:32 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 Mon, 07 Nov 2022 11:12:43 GMT
3
+ * Generated on Tue, 08 Nov 2022 19:42:32 GMT
4
4
  */
5
5
  /**
6
6
  * Do not edit directly
7
- * Generated on Mon, 07 Nov 2022 11:12:43 GMT
7
+ * Generated on Tue, 08 Nov 2022 19:42:32 GMT
8
8
  */
9
9
  /**
10
10
  * Do not edit directly
11
- * Generated on Mon, 07 Nov 2022 11:12:43 GMT
11
+ * Generated on Tue, 08 Nov 2022 19:42:32 GMT
12
12
  */
13
13
  /**
14
14
  * Do not edit directly
15
- * Generated on Mon, 07 Nov 2022 11:12:43 GMT
15
+ * Generated on Tue, 08 Nov 2022 19:42:32 GMT
16
16
  */
17
17
  @property --vvd-size-density {
18
18
  syntax: "<integer>";
@@ -0,0 +1,153 @@
1
+ import '../focus/index.js';
2
+ import { F as FoundationElement, _ as __decorate, a as attr, o as observable, b as __metadata, h as html, d as designSystem } from '../shared/index.js';
3
+ import { C as CheckableFormAssociated } from '../shared/form-associated.js';
4
+ import { a as keySpace, k as keyEnter } from '../shared/key-codes.js';
5
+ import '../shared/affix.js';
6
+ import { f as focusTemplateFactory } from '../shared/focus2.js';
7
+ import '../shared/web.dom-collections.iterator.js';
8
+ import '../shared/icon.js';
9
+ import { w as when } from '../shared/when.js';
10
+ import { c as classNames } from '../shared/class-names.js';
11
+ import '../shared/focus.js';
12
+ import '../shared/export.js';
13
+ import '../shared/object-keys.js';
14
+ import '../shared/iterators.js';
15
+ import '../shared/to-string.js';
16
+ import '../shared/string-trim.js';
17
+ import '../shared/_has.js';
18
+
19
+ class _Switch extends FoundationElement {
20
+ }
21
+ /**
22
+ * A form-associated base class for the {@link @microsoft/fast-foundation#(Switch:class)} component.
23
+ *
24
+ * @internal
25
+ */
26
+ class FormAssociatedSwitch extends CheckableFormAssociated(_Switch) {
27
+ constructor() {
28
+ super(...arguments);
29
+ this.proxy = document.createElement("input");
30
+ }
31
+ }
32
+
33
+ /**
34
+ * A Switch Custom HTML Element.
35
+ * Implements the {@link https://www.w3.org/TR/wai-aria-1.1/#switch | ARIA switch }.
36
+ *
37
+ * @slot - The deafult slot for the label
38
+ * @slot checked-message - The message when in a checked state
39
+ * @slot unchecked-message - The message when in an unchecked state
40
+ * @csspart label - The label
41
+ * @csspart switch - The element representing the switch, which wraps the indicator
42
+ * @csspart status-message - The wrapper for the status messages
43
+ * @csspart checked-message - The checked message
44
+ * @csspart unchecked-message - The unchecked message
45
+ * @fires change - Emits a custom change event when the checked state changes
46
+ *
47
+ * @public
48
+ */
49
+ class Switch$1 extends FormAssociatedSwitch {
50
+ constructor() {
51
+ super();
52
+ /**
53
+ * The element's value to be included in form submission when checked.
54
+ * Default to "on" to reach parity with input[type="checkbox"]
55
+ *
56
+ * @internal
57
+ */
58
+ this.initialValue = "on";
59
+ /**
60
+ * @internal
61
+ */
62
+ this.keypressHandler = (e) => {
63
+ if (this.readOnly) {
64
+ return;
65
+ }
66
+ switch (e.key) {
67
+ case keyEnter:
68
+ case keySpace:
69
+ this.checked = !this.checked;
70
+ break;
71
+ }
72
+ };
73
+ /**
74
+ * @internal
75
+ */
76
+ this.clickHandler = (e) => {
77
+ if (!this.disabled && !this.readOnly) {
78
+ this.checked = !this.checked;
79
+ }
80
+ };
81
+ this.proxy.setAttribute("type", "checkbox");
82
+ }
83
+ readOnlyChanged() {
84
+ if (this.proxy instanceof HTMLInputElement) {
85
+ this.proxy.readOnly = this.readOnly;
86
+ }
87
+ this.readOnly
88
+ ? this.classList.add("readonly")
89
+ : this.classList.remove("readonly");
90
+ }
91
+ /**
92
+ * @internal
93
+ */
94
+ checkedChanged(prev, next) {
95
+ super.checkedChanged(prev, next);
96
+ /**
97
+ * @deprecated - this behavior already exists in the template and should not exist in the class.
98
+ */
99
+ this.checked ? this.classList.add("checked") : this.classList.remove("checked");
100
+ }
101
+ }
102
+ __decorate([
103
+ attr({ attribute: "readonly", mode: "boolean" })
104
+ ], Switch$1.prototype, "readOnly", void 0);
105
+ __decorate([
106
+ observable
107
+ ], Switch$1.prototype, "defaultSlottedNodes", void 0);
108
+
109
+ var css_248z = "/**\n * Do not edit directly\n * Generated on Tue, 08 Nov 2022 19:42:32 GMT\n */\n.control {\n display: inline-flex;\n}\n.control.connotation-cta {\n --_connotation-color-primary: var(--vvd-color-cta-500);\n --_connotation-color-primary-text: var(--vvd-color-canvas);\n --_connotation-color-contrast: var(--vvd-color-cta-800);\n}\n.control.connotation-alert {\n --_connotation-color-primary: var(--vvd-color-alert-500);\n --_connotation-color-primary-text: var(--vvd-color-canvas);\n --_connotation-color-contrast: var(--vvd-color-alert-800);\n}\n.control:not(.connotation-cta, .connotation-alert) {\n --_connotation-color-primary: var(--vvd-color-canvas-text);\n --_connotation-color-primary-text: var(--vvd-color-canvas);\n --_connotation-color-contrast: var(--vvd-color-neutral-800);\n}\n.control {\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(:disabled, .disabled) {\n --_appearance-color-text: var(--vvd-color-neutral-400);\n --_appearance-color-fill: var(--vvd-color-neutral-200);\n --_appearance-color-outline: transparent;\n}\n.control: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-200);\n --_appearance-color-outline: transparent;\n}\n.control:where(.error):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: transparent;\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.control:where(.success):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: transparent;\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n@supports selector(:focus-visible) {\n .control:focus {\n outline: none;\n }\n}\n.control:hover:not(.connotation-cta, .connotation-alert) {\n --_appearance-color-fill: var(--vvd-color-neutral-800);\n}\n.control:hover.connotation-cta {\n --_appearance-color-fill: var(--vvd-color-cta-600);\n}\n.control:hover.connotation-alert {\n --_appearance-color-fill: var(--vvd-color-alert-600);\n}\n\n.switch {\n --switch-block-size: 20px;\n position: relative;\n box-sizing: border-box;\n border-width: 1px;\n border-style: solid;\n block-size: var(--switch-block-size);\n border-radius: 10px;\n inline-size: 36px;\n}\n.disabled .switch {\n border-color: var(--vvd-color-neutral-200);\n}\n[aria-checked=true] .switch {\n border-color: var(--_appearance-color-fill);\n background-color: var(--_appearance-color-fill);\n}\n.control:not(.disabled, [aria-checked=true]) .switch {\n border-color: var(--vvd-color-neutral-500);\n}\n.control:not(.disabled, [aria-checked=true]) .switch:hover {\n border-color: var(--vvd-color-neutral-700);\n}\n\n.checked-indicator {\n --checked-indicator-size: 12px;\n position: absolute;\n margin-top: calc((20px - var(--checked-indicator-size)) / 2 - 1px);\n background-color: var(--vvd-color-neutral-500);\n block-size: var(--checked-indicator-size);\n border-radius: inherit;\n inline-size: var(--checked-indicator-size);\n transform: translateX(4px);\n transition: all 0.2s ease-in-out 0s;\n}\n:hover .checked-indicator {\n background-color: var(--vvd-color-neutral-700);\n}\n.disabled .checked-indicator {\n background-color: var(--vvd-color-neutral-200);\n}\n[aria-checked=true] .checked-indicator {\n --checked-indicator-size: 14px;\n background-color: var(--vvd-color-neutral-100);\n transform: translateX(18px);\n}\n.disabled [aria-checked=true] .checked-indicator {\n background-color: var(--vvd-color-neutral-50);\n}\n:hover [aria-checked=true] .checked-indicator {\n background-color: var(--vvd-color-neutral-100);\n}\n\n.label {\n margin-left: 8px;\n font: var(--vvd-typography-base);\n}\n\n.focus-indicator {\n --focus-inset: -4px;\n --focus-stroke-gap-color: transparent;\n border-radius: 14px;\n}\n.control:not(:focus-visible) .focus-indicator {\n display: none;\n}";
110
+
111
+ class Switch extends Switch$1 {}
112
+ __decorate([attr, __metadata("design:type", String)], Switch.prototype, "label", void 0);
113
+ __decorate([attr, __metadata("design:type", String)], Switch.prototype, "connotation", void 0);
114
+
115
+ let _2 = t => t,
116
+ _t,
117
+ _t2;
118
+ const getClasses = _ => classNames('control', ['disabled', _.disabled], ['readonly', _.readOnly], [`connotation-${_.connotation}`, Boolean(_.connotation)]);
119
+ const SwitchTemplate = context => {
120
+ const focusTemplate = focusTemplateFactory(context);
121
+ return html(_t || (_t = _2`
122
+ <div
123
+ class="${0}"
124
+ role="switch"
125
+ aria-checked="${0}"
126
+ aria-disabled="${0}"
127
+ aria-readonly="${0}"
128
+ tabindex="${0}"
129
+ @keypress="${0}"
130
+ @click="${0}"
131
+ >
132
+ <div class="switch">
133
+ <span class="checked-indicator"></span>
134
+ ${0}
135
+ </div>
136
+ ${0}
137
+ </div>
138
+ `), getClasses, x => x.checked, x => x.disabled, x => x.readOnly, x => x.disabled ? null : 0, (x, c) => x.keypressHandler(c.event), (x, c) => x.clickHandler(c.event), () => focusTemplate, when(x => x.label, html(_t2 || (_t2 = _2`<div class="label">
139
+ ${0}
140
+ </div>`), x => x.label)));
141
+ };
142
+
143
+ const vividSwitch = Switch.compose({
144
+ baseName: 'switch',
145
+ template: SwitchTemplate,
146
+ styles: css_248z,
147
+ shadowOptions: {
148
+ delegatesFocus: true
149
+ }
150
+ });
151
+ designSystem.register(vividSwitch());
152
+
153
+ export { vividSwitch };
@@ -8,6 +8,7 @@ import '../shared/object-keys.js';
8
8
  import '../shared/iterators.js';
9
9
  import '../shared/icon.js';
10
10
  import '../shared/to-string.js';
11
+ import '../shared/string-trim.js';
11
12
  import '../shared/_has.js';
12
13
  import '../shared/anchor.js';
13
14
  import '../shared/apply-mixins.js';
@@ -14,6 +14,7 @@ import '../shared/icon.js';
14
14
  import '../shared/export.js';
15
15
  import '../shared/iterators.js';
16
16
  import '../shared/to-string.js';
17
+ import '../shared/string-trim.js';
17
18
  import '../shared/_has.js';
18
19
  import '../shared/web.dom-collections.iterator.js';
19
20
  import '../shared/object-keys.js';
@@ -198,7 +199,7 @@ __decorate([
198
199
  ], TextArea$1.prototype, "defaultSlottedNodes", void 0);
199
200
  applyMixins(TextArea$1, DelegatesARIATextbox);
200
201
 
201
- var css_248z = "/**\n * Do not edit directly\n * Generated on Mon, 07 Nov 2022 11:12:43 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: 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.base {\n --_connotation-color-primary: var(--vvd-color-canvas-text);\n --_connotation-color-underpin: var(--vvd-color-neutral-400);\n --_connotation-color-faint: var(--vvd-color-neutral-50);\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 pointer-events: none;\n}\n\n.label {\n contain: inline-size;\n font: var(--vvd-typography-base);\n grid-column: 1/3;\n grid-row: 1;\n line-height: 20px;\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.fieldset {\n position: relative;\n display: flex;\n align-items: center;\n border-radius: 6px;\n grid-column: 1/3;\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\n.control {\n width: 100%;\n padding: 8px 16px;\n border: 0 none;\n background-color: var(--_appearance-color-fill);\n border-radius: inherit;\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 min-block-size: calc(1px * (40 + 8 * clamp(-1, var(--vvd-size-density, 0), 1)));\n transition: box-shadow 0.2s, background-color 0.2s, 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.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}";
202
+ var css_248z = "/**\n * Do not edit directly\n * Generated on Tue, 08 Nov 2022 19:42:32 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: 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.base {\n --_connotation-color-primary: var(--vvd-color-canvas-text);\n --_connotation-color-underpin: var(--vvd-color-neutral-400);\n --_connotation-color-faint: var(--vvd-color-neutral-50);\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 pointer-events: none;\n}\n\n.label {\n contain: inline-size;\n font: var(--vvd-typography-base);\n grid-column: 1/3;\n grid-row: 1;\n line-height: 20px;\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.fieldset {\n position: relative;\n display: flex;\n align-items: center;\n border-radius: 6px;\n grid-column: 1/3;\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\n.control {\n width: 100%;\n padding: 8px 16px;\n border: 0 none;\n background-color: var(--_appearance-color-fill);\n border-radius: inherit;\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 min-block-size: calc(1px * (40 + 8 * clamp(-1, var(--vvd-size-density, 0), 1)));\n transition: box-shadow 0.2s, background-color 0.2s, 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.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}";
202
203
 
203
204
  let TextArea = class TextArea extends TextArea$1 {};
204
205
  __decorate([attr, __metadata("design:type", String)], TextArea.prototype, "wrap", void 0);
@@ -13,6 +13,7 @@ import '../shared/icon.js';
13
13
  import '../shared/export.js';
14
14
  import '../shared/iterators.js';
15
15
  import '../shared/to-string.js';
16
+ import '../shared/string-trim.js';
16
17
  import '../shared/_has.js';
17
18
  import '../shared/web.dom-collections.iterator.js';
18
19
  import '../shared/object-keys.js';
@@ -28,7 +29,7 @@ __decorate([attr, __metadata("design:type", String)], TextField.prototype, "auto
28
29
  TextField = __decorate([formElements], TextField);
29
30
  applyMixins(TextField, AffixIcon);
30
31
 
31
- var css_248z = "/**\n * Do not edit directly\n * Generated on Mon, 07 Nov 2022 11:12:43 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.base {\n --_connotation-color-primary: var(--vvd-color-canvas-text);\n --_connotation-color-underpin: var(--vvd-color-neutral-400);\n --_connotation-color-faint: var(--vvd-color-neutral-50);\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 /* 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 > .fieldset {\n block-size: calc(1px * (40 + 8 * clamp(-1, var(--vvd-size-density, 0), 1)));\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}";
32
+ var css_248z = "/**\n * Do not edit directly\n * Generated on Tue, 08 Nov 2022 19:42:32 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.base {\n --_connotation-color-primary: var(--vvd-color-canvas-text);\n --_connotation-color-underpin: var(--vvd-color-neutral-400);\n --_connotation-color-faint: var(--vvd-color-neutral-50);\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 /* 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 > .fieldset {\n block-size: calc(1px * (40 + 8 * clamp(-1, var(--vvd-size-density, 0), 1)));\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}";
32
33
 
33
34
  let _ = t => t,
34
35
  _t,
package/tooltip/index.js CHANGED
@@ -9,6 +9,7 @@ import '../shared/icon.js';
9
9
  import '../shared/export.js';
10
10
  import '../shared/iterators.js';
11
11
  import '../shared/to-string.js';
12
+ import '../shared/string-trim.js';
12
13
  import '../shared/_has.js';
13
14
  import '../shared/when.js';
14
15
  import '../focus/index.js';
@@ -25,7 +26,7 @@ import '../shared/focus2.js';
25
26
  import '../shared/es.object.assign.js';
26
27
  import '../shared/object-keys.js';
27
28
 
28
- var css_248z = "/**\n * Do not edit directly\n * Generated on Mon, 07 Nov 2022 11:12:43 GMT\n */\n.control {\n pointer-events: none;\n}\n\n.tooltip {\n width: var(--tooltip-inline-size, 240px);\n}\n.tooltip-text {\n padding: 8px 12px;\n color: var(--vvd-color-canvas-text);\n font: var(--vvd-typography-base-bold);\n}";
29
+ var css_248z = "/**\n * Do not edit directly\n * Generated on Tue, 08 Nov 2022 19:42:32 GMT\n */\n.control {\n pointer-events: none;\n}\n\n.tooltip {\n width: var(--tooltip-inline-size, 240px);\n}\n.tooltip-text {\n padding: 8px 12px;\n color: var(--vvd-color-canvas-text);\n font: var(--vvd-typography-base-bold);\n}";
29
30
 
30
31
  class Tooltip extends FoundationElement {
31
32
  constructor() {