@vonage/vivid 3.52.0 → 3.54.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (299) hide show
  1. package/README.md +1 -1
  2. package/accordion/index.cjs +1 -1
  3. package/accordion/index.js +1 -1
  4. package/accordion-item/index.cjs +1 -1
  5. package/accordion-item/index.js +1 -1
  6. package/alert/index.cjs +3 -3
  7. package/alert/index.js +3 -3
  8. package/appearance-ui/index.cjs +1 -1
  9. package/appearance-ui/index.js +1 -1
  10. package/audio-player/index.cjs +3 -3
  11. package/audio-player/index.js +3 -3
  12. package/avatar/index.cjs +1 -1
  13. package/avatar/index.js +1 -1
  14. package/badge/index.cjs +1 -1
  15. package/badge/index.js +1 -1
  16. package/banner/index.cjs +2 -2
  17. package/banner/index.js +2 -2
  18. package/breadcrumb-item/index.cjs +1 -1
  19. package/breadcrumb-item/index.js +1 -1
  20. package/button/index.cjs +2 -2
  21. package/button/index.js +2 -2
  22. package/card/index.cjs +2 -2
  23. package/card/index.js +2 -2
  24. package/checkbox/index.cjs +3 -2
  25. package/checkbox/index.js +3 -2
  26. package/combobox/index.cjs +5 -5
  27. package/combobox/index.js +5 -5
  28. package/custom-elements.json +1162 -99
  29. package/data-grid/index.cjs +1 -1
  30. package/data-grid/index.js +1 -1
  31. package/date-picker/index.cjs +7 -6
  32. package/date-picker/index.js +7 -6
  33. package/date-range-picker/index.cjs +7 -6
  34. package/date-range-picker/index.js +7 -6
  35. package/dial-pad/index.cjs +33 -0
  36. package/dial-pad/index.js +31 -0
  37. package/dialog/index.cjs +4 -4
  38. package/dialog/index.js +4 -4
  39. package/divider/index.cjs +1 -1
  40. package/divider/index.js +1 -1
  41. package/elevation/index.cjs +1 -1
  42. package/elevation/index.js +1 -1
  43. package/empty-state/index.cjs +2 -2
  44. package/empty-state/index.js +2 -2
  45. package/fab/index.cjs +2 -2
  46. package/fab/index.js +2 -2
  47. package/file-picker/index.cjs +4 -3
  48. package/file-picker/index.js +4 -3
  49. package/header/index.cjs +2 -2
  50. package/header/index.js +2 -2
  51. package/icon/index.cjs +1 -1
  52. package/icon/index.js +1 -1
  53. package/index.cjs +132 -122
  54. package/index.js +46 -43
  55. package/layout/index.cjs +1 -1
  56. package/layout/index.js +1 -1
  57. package/lib/appearance-ui/appearance-ui.d.ts +1 -1
  58. package/lib/audio-player/audio-player.d.ts +4 -0
  59. package/lib/audio-player/locale.d.ts +2 -0
  60. package/lib/components.d.ts +2 -0
  61. package/lib/dial-pad/definition.d.ts +3 -0
  62. package/lib/dial-pad/dial-pad.d.ts +17 -0
  63. package/lib/dial-pad/dial-pad.template.d.ts +4 -0
  64. package/lib/dial-pad/locale.d.ts +18 -0
  65. package/lib/enums.d.ts +7 -0
  66. package/lib/menu/menu.d.ts +1 -0
  67. package/lib/nav-disclosure/nav-disclosure.d.ts +5 -0
  68. package/lib/text-anchor/definition.d.ts +1 -0
  69. package/lib/text-anchor/text-anchor.d.ts +5 -0
  70. package/lib/video-player/definition.d.ts +3 -0
  71. package/lib/video-player/locale.d.ts +1 -0
  72. package/lib/video-player/video-player.d.ts +17 -0
  73. package/lib/video-player/video-player.template.d.ts +4 -0
  74. package/lib/video-player/vivid-video-svg.d.ts +1 -0
  75. package/listbox/index.cjs +2 -2
  76. package/listbox/index.js +2 -2
  77. package/locales/en-GB.cjs +33 -1
  78. package/locales/en-GB.js +33 -1
  79. package/locales/en-US.cjs +201 -1
  80. package/locales/en-US.js +201 -1
  81. package/locales/ja-JP.cjs +200 -1
  82. package/locales/ja-JP.js +200 -1
  83. package/locales/zh-CN.cjs +202 -1
  84. package/locales/zh-CN.js +202 -1
  85. package/menu/index.cjs +6 -6
  86. package/menu/index.js +6 -6
  87. package/menu-item/index.cjs +2 -2
  88. package/menu-item/index.js +2 -2
  89. package/nav/index.cjs +1 -1
  90. package/nav/index.js +1 -1
  91. package/nav-disclosure/index.cjs +2 -2
  92. package/nav-disclosure/index.js +2 -2
  93. package/nav-item/index.cjs +2 -2
  94. package/nav-item/index.js +2 -2
  95. package/note/index.cjs +2 -2
  96. package/note/index.js +2 -2
  97. package/number-field/index.cjs +5 -4
  98. package/number-field/index.js +5 -4
  99. package/option/index.cjs +2 -2
  100. package/option/index.js +2 -2
  101. package/package.json +1 -1
  102. package/pagination/index.cjs +3 -3
  103. package/pagination/index.js +3 -3
  104. package/popup/index.cjs +4 -4
  105. package/popup/index.js +4 -4
  106. package/progress/index.cjs +1 -1
  107. package/progress/index.js +1 -1
  108. package/progress-ring/index.cjs +1 -1
  109. package/progress-ring/index.js +1 -1
  110. package/radio/index.cjs +1 -1
  111. package/radio/index.js +1 -1
  112. package/radio-group/index.cjs +1 -1
  113. package/radio-group/index.js +1 -1
  114. package/range-slider/index.cjs +2 -2
  115. package/range-slider/index.js +2 -2
  116. package/select/index.cjs +7 -6
  117. package/select/index.js +7 -6
  118. package/selectable-box/index.cjs +5 -4
  119. package/selectable-box/index.js +5 -4
  120. package/shared/applyMixinsWithObservables.cjs +15 -0
  121. package/shared/applyMixinsWithObservables.js +13 -0
  122. package/shared/definition.cjs +1 -1
  123. package/shared/definition.js +1 -1
  124. package/shared/definition11.cjs +3 -3
  125. package/shared/definition11.js +3 -3
  126. package/shared/definition14.cjs +2 -2
  127. package/shared/definition14.js +2 -2
  128. package/shared/definition15.cjs +8 -9
  129. package/shared/definition15.js +8 -9
  130. package/shared/definition16.cjs +3 -3
  131. package/shared/definition16.js +3 -3
  132. package/shared/definition17.cjs +2 -2
  133. package/shared/definition17.js +3 -3
  134. package/shared/definition18.cjs +3 -3
  135. package/shared/definition18.js +3 -3
  136. package/shared/definition19.cjs +3 -3
  137. package/shared/definition19.js +3 -3
  138. package/shared/definition20.cjs +196 -224
  139. package/shared/definition20.js +191 -219
  140. package/shared/definition21.cjs +264 -67
  141. package/shared/definition21.js +263 -65
  142. package/shared/definition22.cjs +66 -57
  143. package/shared/definition22.js +64 -56
  144. package/shared/definition23.cjs +42 -76
  145. package/shared/definition23.js +41 -75
  146. package/shared/definition24.cjs +70 -2402
  147. package/shared/definition24.js +69 -2401
  148. package/shared/definition25.cjs +2402 -46
  149. package/shared/definition25.js +2401 -45
  150. package/shared/definition26.cjs +63 -30
  151. package/shared/definition26.js +62 -29
  152. package/shared/definition27.cjs +28 -56
  153. package/shared/definition27.js +27 -55
  154. package/shared/definition28.cjs +35 -881
  155. package/shared/definition28.js +34 -879
  156. package/shared/definition29.cjs +922 -60
  157. package/shared/definition29.js +922 -61
  158. package/shared/definition30.cjs +68 -86
  159. package/shared/definition30.js +67 -85
  160. package/shared/definition31.cjs +98 -21
  161. package/shared/definition31.js +98 -21
  162. package/shared/definition32.cjs +24 -12
  163. package/shared/definition32.js +23 -11
  164. package/shared/definition33.cjs +11 -50
  165. package/shared/definition33.js +10 -49
  166. package/shared/definition34.cjs +26 -515
  167. package/shared/definition34.js +26 -515
  168. package/shared/definition35.cjs +448 -194
  169. package/shared/definition35.js +448 -192
  170. package/shared/definition36.cjs +256 -202
  171. package/shared/definition36.js +253 -201
  172. package/shared/definition37.cjs +204 -65
  173. package/shared/definition37.js +203 -63
  174. package/shared/definition38.cjs +63 -57
  175. package/shared/definition38.js +60 -55
  176. package/shared/definition39.cjs +65 -432
  177. package/shared/definition39.js +64 -431
  178. package/shared/definition4.cjs +2 -2
  179. package/shared/definition4.js +2 -2
  180. package/shared/definition40.cjs +441 -34
  181. package/shared/definition40.js +438 -31
  182. package/shared/definition41.cjs +34 -576
  183. package/shared/definition41.js +33 -575
  184. package/shared/definition42.cjs +531 -654
  185. package/shared/definition42.js +531 -654
  186. package/shared/definition43.cjs +690 -114
  187. package/shared/definition43.js +689 -113
  188. package/shared/definition44.cjs +124 -79
  189. package/shared/definition44.js +122 -77
  190. package/shared/definition45.cjs +78 -520
  191. package/shared/definition45.js +77 -518
  192. package/shared/definition46.cjs +520 -119
  193. package/shared/definition46.js +518 -118
  194. package/shared/definition47.cjs +118 -135
  195. package/shared/definition47.js +117 -134
  196. package/shared/definition48.cjs +151 -19
  197. package/shared/definition48.js +150 -18
  198. package/shared/definition49.cjs +21 -84
  199. package/shared/definition49.js +20 -83
  200. package/shared/definition5.cjs +100 -19
  201. package/shared/definition5.js +100 -19
  202. package/shared/definition50.cjs +52 -505
  203. package/shared/definition50.js +51 -504
  204. package/shared/definition51.cjs +526 -28
  205. package/shared/definition51.js +525 -27
  206. package/shared/definition52.cjs +28 -123
  207. package/shared/definition52.js +26 -122
  208. package/shared/definition53.cjs +110 -309
  209. package/shared/definition53.js +110 -308
  210. package/shared/definition54.cjs +255 -271
  211. package/shared/definition54.js +255 -271
  212. package/shared/definition55.cjs +315 -776
  213. package/shared/definition55.js +314 -775
  214. package/shared/definition56.cjs +818 -107
  215. package/shared/definition56.js +817 -106
  216. package/shared/definition57.cjs +85 -55
  217. package/shared/definition57.js +84 -54
  218. package/shared/definition58.cjs +125 -72
  219. package/shared/definition58.js +124 -71
  220. package/shared/definition59.cjs +72 -285
  221. package/shared/definition59.js +73 -286
  222. package/shared/definition6.cjs +1 -1
  223. package/shared/definition6.js +1 -1
  224. package/shared/definition60.cjs +298 -39
  225. package/shared/definition60.js +297 -38
  226. package/shared/definition61.cjs +66044 -1687
  227. package/shared/definition61.js +66043 -1686
  228. package/shared/definition62.cjs +50 -0
  229. package/shared/definition62.js +46 -0
  230. package/shared/definition63.cjs +1828 -0
  231. package/shared/definition63.js +1824 -0
  232. package/shared/definition7.cjs +2 -2
  233. package/shared/definition7.js +2 -2
  234. package/shared/definition8.cjs +2 -2
  235. package/shared/definition8.js +2 -2
  236. package/shared/definition9.cjs +1 -1
  237. package/shared/definition9.js +1 -1
  238. package/shared/enums.cjs +9 -0
  239. package/shared/enums.js +9 -1
  240. package/shared/icon.cjs +20 -2
  241. package/shared/icon.js +21 -3
  242. package/shared/index2.cjs +73 -37
  243. package/shared/index2.js +73 -37
  244. package/shared/key-codes2.js +1 -1
  245. package/shared/listbox.cjs +1 -1
  246. package/shared/listbox.js +1 -1
  247. package/shared/localization/Locale.d.ts +4 -0
  248. package/shared/patterns/form-elements/form-elements.d.ts +2 -3
  249. package/shared/presentationDate.cjs +16 -5
  250. package/shared/presentationDate.js +16 -5
  251. package/shared/text-anchor.cjs +6 -0
  252. package/shared/text-anchor.js +6 -0
  253. package/shared/text-anchor.template.cjs +6 -1
  254. package/shared/text-anchor.template.js +6 -1
  255. package/shared/text-field.cjs +1 -1
  256. package/shared/text-field.js +1 -1
  257. package/shared/utils/applyMixinsWithObservables.d.ts +1 -0
  258. package/shared/utils/numberConverter.d.ts +2 -0
  259. package/side-drawer/index.cjs +1 -1
  260. package/side-drawer/index.js +1 -1
  261. package/slider/index.cjs +1 -1
  262. package/slider/index.js +1 -1
  263. package/split-button/index.cjs +2 -2
  264. package/split-button/index.js +2 -2
  265. package/styles/core/all.css +1 -1
  266. package/styles/core/theme.css +1 -1
  267. package/styles/core/typography.css +1 -1
  268. package/styles/tokens/theme-dark.css +4 -4
  269. package/styles/tokens/theme-light.css +4 -4
  270. package/styles/tokens/vivid-2-compat.css +1 -1
  271. package/switch/index.cjs +2 -2
  272. package/switch/index.js +2 -2
  273. package/tab/index.cjs +2 -2
  274. package/tab/index.js +2 -2
  275. package/tab-panel/index.cjs +1 -1
  276. package/tab-panel/index.js +1 -1
  277. package/tabs/index.cjs +4 -4
  278. package/tabs/index.js +4 -4
  279. package/tag/index.cjs +2 -2
  280. package/tag/index.js +2 -2
  281. package/tag-group/index.cjs +1 -1
  282. package/tag-group/index.js +1 -1
  283. package/text-area/index.cjs +4 -3
  284. package/text-area/index.js +4 -3
  285. package/text-field/index.cjs +4 -3
  286. package/text-field/index.js +4 -3
  287. package/time-picker/index.cjs +8 -7
  288. package/time-picker/index.js +8 -7
  289. package/toggletip/index.cjs +5 -5
  290. package/toggletip/index.js +5 -5
  291. package/tooltip/index.cjs +5 -5
  292. package/tooltip/index.js +5 -5
  293. package/tree-item/index.cjs +2 -2
  294. package/tree-item/index.js +2 -2
  295. package/tree-view/index.cjs +1 -1
  296. package/tree-view/index.js +1 -1
  297. package/video-player/index.cjs +17 -0
  298. package/video-player/index.js +15 -0
  299. package/vivid.api.json +332 -0
@@ -1,318 +1,14 @@
1
1
  'use strict';
2
2
 
3
3
  const index = require('./index.cjs');
4
- const definition = require('./definition11.cjs');
5
- const definition$1 = require('./definition21.cjs');
4
+ const definition = require('./definition27.cjs');
6
5
  const affix = require('./affix.cjs');
7
- const index$1 = require('./index2.cjs');
8
- const localized = require('./localized.cjs');
9
- const startEnd = require('./start-end.cjs');
6
+ require('./index2.cjs');
10
7
  const applyMixins = require('./apply-mixins.cjs');
11
- const textField = require('./text-field2.cjs');
12
- const formAssociated = require('./form-associated.cjs');
13
- const keyCodes = require('./key-codes.cjs');
14
- const enums = require('./enums.cjs');
15
8
  const when = require('./when.cjs');
16
- const ref = require('./ref.cjs');
17
9
  const classNames = require('./class-names.cjs');
18
10
 
19
- class _NumberField extends index.FoundationElement {
20
- }
21
- /**
22
- * A form-associated base class for the {@link @microsoft/fast-foundation#(NumberField:class)} component.
23
- *
24
- * @internal
25
- */
26
- class FormAssociatedNumberField extends formAssociated.FormAssociated(_NumberField) {
27
- constructor() {
28
- super(...arguments);
29
- this.proxy = document.createElement("input");
30
- }
31
- }
32
-
33
- /**
34
- * A Number Field Custom HTML Element.
35
- * Based largely on the {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/number | <input type="number" /> element }.
36
- *
37
- * @slot start - Content which can be provided before the number field input
38
- * @slot end - Content which can be provided after the number field input
39
- * @slot - The default slot for the label
40
- * @slot step-up-glyph - The glyph for the step up control
41
- * @slot step-down-glyph - The glyph for the step down control
42
- * @csspart label - The label
43
- * @csspart root - The element wrapping the control, including start and end slots
44
- * @csspart control - The element representing the input
45
- * @csspart controls - The step up and step down controls
46
- * @csspart step-up - The step up control
47
- * @csspart step-down - The step down control
48
- * @fires input - Fires a custom 'input' event when the value has changed
49
- * @fires change - Fires a custom 'change' event when the value has changed
50
- *
51
- * @public
52
- */
53
- let NumberField$1 = class NumberField extends FormAssociatedNumberField {
54
- constructor() {
55
- super(...arguments);
56
- /**
57
- * When true, spin buttons will not be rendered
58
- * @public
59
- * @remarks
60
- * HTML Attribute: autofocus
61
- */
62
- this.hideStep = false;
63
- /**
64
- * Amount to increment or decrement the value by
65
- * @public
66
- * @remarks
67
- * HTMLAttribute: step
68
- */
69
- this.step = 1;
70
- /**
71
- * Flag to indicate that the value change is from the user input
72
- * @internal
73
- */
74
- this.isUserInput = false;
75
- }
76
- /**
77
- * Ensures that the max is greater than the min and that the value
78
- * is less than the max
79
- * @param previous - the previous max value
80
- * @param next - updated max value
81
- *
82
- * @internal
83
- */
84
- maxChanged(previous, next) {
85
- var _a;
86
- this.max = Math.max(next, (_a = this.min) !== null && _a !== void 0 ? _a : next);
87
- const min = Math.min(this.min, this.max);
88
- if (this.min !== undefined && this.min !== min) {
89
- this.min = min;
90
- }
91
- this.value = this.getValidValue(this.value);
92
- }
93
- /**
94
- * Ensures that the min is less than the max and that the value
95
- * is greater than the min
96
- * @param previous - previous min value
97
- * @param next - updated min value
98
- *
99
- * @internal
100
- */
101
- minChanged(previous, next) {
102
- var _a;
103
- this.min = Math.min(next, (_a = this.max) !== null && _a !== void 0 ? _a : next);
104
- const max = Math.max(this.min, this.max);
105
- if (this.max !== undefined && this.max !== max) {
106
- this.max = max;
107
- }
108
- this.value = this.getValidValue(this.value);
109
- }
110
- /**
111
- * The value property, typed as a number.
112
- *
113
- * @public
114
- */
115
- get valueAsNumber() {
116
- return parseFloat(super.value);
117
- }
118
- set valueAsNumber(next) {
119
- this.value = next.toString();
120
- }
121
- /**
122
- * Validates that the value is a number between the min and max
123
- * @param previous - previous stored value
124
- * @param next - value being updated
125
- * @param updateControl - should the text field be updated with value, defaults to true
126
- * @internal
127
- */
128
- valueChanged(previous, next) {
129
- this.value = this.getValidValue(next);
130
- if (next !== this.value) {
131
- return;
132
- }
133
- if (this.control && !this.isUserInput) {
134
- this.control.value = this.value;
135
- }
136
- super.valueChanged(previous, this.value);
137
- if (previous !== undefined && !this.isUserInput) {
138
- this.$emit("input");
139
- this.$emit("change");
140
- }
141
- this.isUserInput = false;
142
- }
143
- /** {@inheritDoc (FormAssociated:interface).validate} */
144
- validate() {
145
- super.validate(this.control);
146
- }
147
- /**
148
- * Sets the internal value to a valid number between the min and max properties
149
- * @param value - user input
150
- *
151
- * @internal
152
- */
153
- getValidValue(value) {
154
- var _a, _b;
155
- let validValue = parseFloat(parseFloat(value).toPrecision(12));
156
- if (isNaN(validValue)) {
157
- validValue = "";
158
- }
159
- else {
160
- validValue = Math.min(validValue, (_a = this.max) !== null && _a !== void 0 ? _a : validValue);
161
- validValue = Math.max(validValue, (_b = this.min) !== null && _b !== void 0 ? _b : validValue).toString();
162
- }
163
- return validValue;
164
- }
165
- /**
166
- * Increments the value using the step value
167
- *
168
- * @public
169
- */
170
- stepUp() {
171
- const value = parseFloat(this.value);
172
- const stepUpValue = !isNaN(value)
173
- ? value + this.step
174
- : this.min > 0
175
- ? this.min
176
- : this.max < 0
177
- ? this.max
178
- : !this.min
179
- ? this.step
180
- : 0;
181
- this.value = stepUpValue.toString();
182
- }
183
- /**
184
- * Decrements the value using the step value
185
- *
186
- * @public
187
- */
188
- stepDown() {
189
- const value = parseFloat(this.value);
190
- const stepDownValue = !isNaN(value)
191
- ? value - this.step
192
- : this.min > 0
193
- ? this.min
194
- : this.max < 0
195
- ? this.max
196
- : !this.min
197
- ? 0 - this.step
198
- : 0;
199
- this.value = stepDownValue.toString();
200
- }
201
- /**
202
- * Sets up the initial state of the number field
203
- * @internal
204
- */
205
- connectedCallback() {
206
- super.connectedCallback();
207
- this.proxy.setAttribute("type", "number");
208
- this.validate();
209
- this.control.value = this.value;
210
- if (this.autofocus) {
211
- index.DOM.queueUpdate(() => {
212
- this.focus();
213
- });
214
- }
215
- }
216
- /**
217
- * Selects all the text in the number field
218
- *
219
- * @public
220
- */
221
- select() {
222
- this.control.select();
223
- /**
224
- * The select event does not permeate the shadow DOM boundary.
225
- * This fn effectively proxies the select event,
226
- * emitting a `select` event whenever the internal
227
- * control emits a `select` event
228
- */
229
- this.$emit("select");
230
- }
231
- /**
232
- * Handles the internal control's `input` event
233
- * @internal
234
- */
235
- handleTextInput() {
236
- this.control.value = this.control.value.replace(/[^0-9\-+e.]/g, "");
237
- this.isUserInput = true;
238
- this.value = this.control.value;
239
- }
240
- /**
241
- * Change event handler for inner control.
242
- * @remarks
243
- * "Change" events are not `composable` so they will not
244
- * permeate the shadow DOM boundary. This fn effectively proxies
245
- * the change event, emitting a `change` event whenever the internal
246
- * control emits a `change` event
247
- * @internal
248
- */
249
- handleChange() {
250
- this.$emit("change");
251
- }
252
- /**
253
- * Handles the internal control's `keydown` event
254
- * @internal
255
- */
256
- handleKeyDown(e) {
257
- const key = e.key;
258
- switch (key) {
259
- case keyCodes.keyArrowUp:
260
- this.stepUp();
261
- return false;
262
- case keyCodes.keyArrowDown:
263
- this.stepDown();
264
- return false;
265
- }
266
- return true;
267
- }
268
- /**
269
- * Handles populating the input field with a validated value when
270
- * leaving the input field.
271
- * @internal
272
- */
273
- handleBlur() {
274
- this.control.value = this.value;
275
- }
276
- };
277
- index.__decorate([
278
- index.attr({ attribute: "readonly", mode: "boolean" })
279
- ], NumberField$1.prototype, "readOnly", void 0);
280
- index.__decorate([
281
- index.attr({ mode: "boolean" })
282
- ], NumberField$1.prototype, "autofocus", void 0);
283
- index.__decorate([
284
- index.attr({ attribute: "hide-step", mode: "boolean" })
285
- ], NumberField$1.prototype, "hideStep", void 0);
286
- index.__decorate([
287
- index.attr
288
- ], NumberField$1.prototype, "placeholder", void 0);
289
- index.__decorate([
290
- index.attr
291
- ], NumberField$1.prototype, "list", void 0);
292
- index.__decorate([
293
- index.attr({ converter: index.nullableNumberConverter })
294
- ], NumberField$1.prototype, "maxlength", void 0);
295
- index.__decorate([
296
- index.attr({ converter: index.nullableNumberConverter })
297
- ], NumberField$1.prototype, "minlength", void 0);
298
- index.__decorate([
299
- index.attr({ converter: index.nullableNumberConverter })
300
- ], NumberField$1.prototype, "size", void 0);
301
- index.__decorate([
302
- index.attr({ converter: index.nullableNumberConverter })
303
- ], NumberField$1.prototype, "step", void 0);
304
- index.__decorate([
305
- index.attr({ converter: index.nullableNumberConverter })
306
- ], NumberField$1.prototype, "max", void 0);
307
- index.__decorate([
308
- index.attr({ converter: index.nullableNumberConverter })
309
- ], NumberField$1.prototype, "min", void 0);
310
- index.__decorate([
311
- index.observable
312
- ], NumberField$1.prototype, "defaultSlottedNodes", void 0);
313
- applyMixins.applyMixins(NumberField$1, startEnd.StartEnd, textField.DelegatesARIATextbox);
314
-
315
- const styles = ":host{display:inline-block}.base{--_text-field-gutter-start:calc(1px*(40 + 4*clamp(-1, var(--vvd-size-density, 0), 2))*.4);--_text-field-gutter-end:calc(1px*(40 + 4*clamp(-1, var(--vvd-size-density, 0), 2))*.4);--_text-field-icon-size:calc(1px*(40 + 4*clamp(-1, var(--vvd-size-density, 0), 2))/2);display:inline-grid;width:100%;gap:4px;grid-template-columns:min-content 1fr max-content}.base{--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-canvas);--_appearance-color-outline: var(--_connotation-color-intermediate)}.base.appearance-ghost{--_appearance-color-text: var(--_connotation-color-primary);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-canvas);--_appearance-color-outline: var(--_connotation-color-fierce)}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)).appearance-ghost{--_appearance-color-text: var(--_connotation-color-primary);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.base:where(.disabled,:disabled){--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-100);--_appearance-color-outline: var(--vvd-color-neutral-300)}.base:where(.disabled,:disabled).appearance-ghost{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base:where(.readonly):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-neutral-200);--_appearance-color-outline: var(--vvd-color-neutral-400)}.base:where(.readonly):where(:not(.disabled,:disabled)).appearance-ghost{--_appearance-color-text: var(--vvd-color-neutral-600);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base:where(.error):where(:not(.disabled,:disabled)){--_appearance-color-text: notSet;--_appearance-color-fill: var(--vvd-color-alert-50);--_appearance-color-outline: var(--vvd-color-alert-500)}.base:where(.error):where(:not(.disabled,:disabled)).appearance-ghost{--_appearance-color-text: notSet;--_appearance-color-fill: var(--vvd-color-alert-50);--_appearance-color-outline: transparent}.base:where(.success):where(:not(.disabled,:disabled)){--_appearance-color-text: notSet;--_appearance-color-fill: var(--vvd-color-success-50);--_appearance-color-outline: var(--vvd-color-success-500)}.base:where(.success):where(:not(.disabled,:disabled)).appearance-ghost{--_appearance-color-text: notSet;--_appearance-color-fill: var(--vvd-color-success-50);--_appearance-color-outline: transparent}.base{--_connotation-color-primary: var(--vvd-text-field-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-primary-text: var(--vvd-text-field-accent-primary-text, var(--vvd-color-canvas));--_connotation-color-primary-increment: var(--vvd-text-field-accent-primary-increment, var(--vvd-color-neutral-800));--_connotation-color-intermediate: var(--vvd-text-field-accent-intermediate, var(--vvd-color-neutral-500));--_connotation-color-firm: var(--vvd-text-field-accent-firm, var(--vvd-color-canvas-text));--_connotation-color-fierce: var(--vvd-text-field-accent-fierce, var(--vvd-color-neutral-700));--_connotation-color-faint: var(--vvd-text-field-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-soft: var(--vvd-text-field-accent-soft, var(--vvd-color-neutral-100))}@supports (user-select: none){.base{user-select:none}}.base:not(.disabled){--_low-ink-color: var(--vvd-color-neutral-600)}.base.disabled{--_low-ink-color: var(--_appearance-color-text)}.label:not(slot),.label::slotted(label){box-sizing:initial!important;padding:initial!important;margin:initial!important;color:var(--vvd-color-canvas-text)!important;contain:inline-size!important;font:var(--vvd-typography-base);grid-column:1/4;grid-row:1}.char-count+.label:not(slot),.char-count+.label::slotted(label){grid-column:1/3}.char-count{color:var(--_low-ink-color);font:var(--vvd-typography-base);grid-column:3/4}.fieldset{position:relative;display:flex;align-items:center;background-color:var(--_appearance-color-fill);font:var(--vvd-typography-base);grid-column:1/4;padding-block:0;transition:color .2s,background-color .2s}.fieldset:after{position:absolute;display:block;border-radius:inherit;block-size:100%;box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);content:\"\";inline-size:100%;pointer-events:none;transition:box-shadow .2s}.fieldset:focus-visible{outline:none}.base>.fieldset{block-size:calc(1px*(40 + 4*clamp(-1,var(--vvd-size-density, 0),2)))}.base:not(.shape-pill) .fieldset{border-radius:8px}.base.shape-pill .fieldset{border-radius:24px}.wrapper{border-radius:inherit;block-size:100%;inline-size:100%}.control{border-radius:inherit}.control:not(slot),.control::slotted(input){width:100%!important;box-sizing:border-box!important;border:0 none!important;border-radius:inherit!important;margin:initial!important;appearance:none!important;background-color:transparent!important;block-size:100%!important;color:inherit!important;font:inherit;outline:transparent;padding-block:0!important;padding-inline:var(--_text-field-gutter-start) var(--_text-field-gutter-end)!important}.control:not(slot):disabled,.control::slotted(input:disabled){cursor:not-allowed!important;opacity:1!important;-webkit-text-fill-color:var(--_appearance-color-text)!important}.control:not(slot)::placeholder{opacity:1!important;-webkit-text-fill-color:var(--_low-ink-color)!important}.control::slotted(input:-webkit-autofill),.control:not(slot):-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--_appearance-color-fill) inset;-webkit-text-fill-color:var(--_appearance-color-text)!important}.has-icon .control:not(slot),.has-icon .control::slotted(input){padding-inline-start:calc(var(--_text-field-icon-size) + var(--_text-field-gutter-start) * 2)!important}.icon{position:absolute;z-index:1;color:var(--_low-ink-color);font-size:var(--_text-field-icon-size);inset-block-start:50%;inset-inline-start:calc(100% + var(--_text-field-gutter-start));line-height:1;transform:translateY(-50%)}.leading-items-wrapper{position:relative}.base.no-leading .leading-items-wrapper{display:none}.action-items-wrapper{margin-inline-end:4px}.base:not(.action-items) .action-items-wrapper{display:none}@supports selector(:has(*)){.fieldset:has(.wrapper .control:focus-within):after{--focus-stroke-gap-color: transparent;box-shadow:inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:2px solid var(--focus-stroke-color, var(--vvd-color-canvas-text));outline-offset:calc(-2px - var(--focus-inset, 0px))}}@supports not selector(:has(*)){.wrapper:focus-within:after{box-shadow:inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:2px solid var(--focus-stroke-color, var(--vvd-color-canvas-text));outline-offset:calc(-2px - var(--focus-inset, 0px));--focus-stroke-gap-color: transparent;position:absolute;z-index:1;display:block;border-radius:inherit;content:\"\";inset:0}}.base{--_text-field-gutter-end: 70px}.control::-webkit-outer-spin-button,.control::-webkit-inner-spin-button{appearance:none}.control-buttons{position:absolute;z-index:1;right:3px;display:flex}.readonly .control-buttons,.disabled .control-buttons{pointer-events:none}.control-buttons .divider{margin-block:8px}.control-buttons>*{flex-shrink:0}\n";
11
+ const styles = ".base{display:flex;align-items:flex-start;padding:calc(1px*(20 + 4*clamp(-1,var(--vvd-size-density, 0),2)));border-radius:8px;background-color:var(--_appearance-color-fill);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--vvd-color-canvas-text);column-gap:16px}.base.connotation-success{--_connotation-color-intermediate: var(--vvd-note-success-intermediate, var(--vvd-color-success-500));--_connotation-color-faint: var(--vvd-note-success-faint, var(--vvd-color-success-50));--_connotation-color-fierce: var(--vvd-note-success-fierce, var(--vvd-color-success-700))}.base.connotation-information{--_connotation-color-intermediate: var(--vvd-note-information-intermediate, var(--vvd-color-information-500));--_connotation-color-faint: var(--vvd-note-information-faint, var(--vvd-color-information-50));--_connotation-color-fierce: var(--vvd-note-information-fierce, var(--vvd-color-information-700))}.base.connotation-alert{--_connotation-color-intermediate: var(--vvd-note-alert-intermediate, var(--vvd-color-alert-500));--_connotation-color-faint: var(--vvd-note-alert-faint, var(--vvd-color-alert-50));--_connotation-color-fierce: var(--vvd-note-alert-fierce, var(--vvd-color-alert-700))}.base.connotation-warning{--_connotation-color-intermediate: var(--vvd-note-warning-intermediate, var(--vvd-color-warning-300));--_connotation-color-faint: var(--vvd-note-warning-faint, var(--vvd-color-warning-50));--_connotation-color-fierce: var(--vvd-note-warning-fierce, var(--vvd-color-warning-700))}.base:not(.connotation-success,.connotation-information,.connotation-alert,.connotation-warning){--_connotation-color-intermediate: var(--vvd-note-accent-intermediate, var(--vvd-color-neutral-500));--_connotation-color-faint: var(--vvd-note-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-fierce: var(--vvd-note-accent-fierce, var(--vvd-color-neutral-700))}.base{--_appearance-color-text: var(--_connotation-color-fierce);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: var(--_connotation-color-intermediate)}@supports (contain: content){.base{contain:content}}@supports not (contain: content){.base{overflow:hidden}}slot[name=icon]{color:var(--_appearance-color-outline);font-size:calc(1px*(24 + 4*clamp(-1,var(--vvd-size-density, 0),2)))}.text{display:flex;min-height:24px;flex-direction:column;flex-grow:1;align-items:flex-start;justify-content:center;gap:4px;text-align:start}.text .headline{font:var(--vvd-typography-base-bold)}.text .message{font:var(--vvd-typography-base)}\n";
316
12
 
317
13
  var __defProp = Object.defineProperty;
318
14
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -325,226 +21,41 @@ var __decorateClass = (decorators, target, key, kind) => {
325
21
  __defProp(target, key, result);
326
22
  return result;
327
23
  };
328
- const STEP_DIRECTION = {
329
- up: 1,
330
- down: -1
331
- };
332
- const PROXY_REFLECTED_ATTRIBUTES = {
333
- max: true,
334
- min: true
335
- };
336
- function makeStep(element, direction) {
337
- const value = parseFloat(element.value);
338
- const stepUpValue = !isNaN(value) ? value + direction * element.step : element.min > 0 ? element.min : element.max < 0 ? element.max : !element.min ? direction * element.step : 0;
339
- element.value = Number(stepUpValue.toFixed(12)).toString();
24
+ class Note extends index.FoundationElement {
340
25
  }
341
- let NumberField = class extends NumberField$1 {
342
- constructor() {
343
- super(...arguments);
344
- this.incrementButtonAriaLabel = null;
345
- this.decrementButtonAriaLabel = null;
346
- }
347
- stepChanged(_previous, next) {
348
- this.proxy.setAttribute(
349
- "step",
350
- Number.isFinite(next) ? next.toString() : ""
351
- );
352
- }
353
- attributeChangedCallback(name, previous, next) {
354
- super.attributeChangedCallback(name, previous, next);
355
- if (PROXY_REFLECTED_ATTRIBUTES[name]) {
356
- this.proxy.setAttribute(name, next);
357
- }
358
- }
359
- stepUp() {
360
- makeStep(this, STEP_DIRECTION.up);
361
- }
362
- stepDown() {
363
- makeStep(this, STEP_DIRECTION.down);
364
- }
365
- };
366
- __decorateClass([
367
- index.attr({ attribute: "increment-button-aria-label" })
368
- ], NumberField.prototype, "incrementButtonAriaLabel", 2);
369
- __decorateClass([
370
- index.attr({ attribute: "decrement-button-aria-label" })
371
- ], NumberField.prototype, "decrementButtonAriaLabel", 2);
372
- __decorateClass([
373
- index.attr
374
- ], NumberField.prototype, "appearance", 2);
375
26
  __decorateClass([
376
27
  index.attr
377
- ], NumberField.prototype, "shape", 2);
28
+ ], Note.prototype, "headline", 2);
378
29
  __decorateClass([
379
30
  index.attr
380
- ], NumberField.prototype, "autoComplete", 2);
381
- NumberField = __decorateClass([
382
- index$1.errorText,
383
- index$1.formElements
384
- ], NumberField);
385
- const numberInput = document.createElement("input");
386
- numberInput.type = "number";
387
- NumberField.prototype.getValidValue = function(value) {
388
- if (!this.isUserInput) {
389
- numberInput.value = value;
390
- return numberInput.value;
391
- }
392
- if (value === "" || value === "-" || value === ".") {
393
- return value;
394
- }
395
- const decimalSplit = value.split(".");
396
- let valueSuffix = "";
397
- if (decimalSplit.length === 2 && decimalSplit[1] === "") {
398
- valueSuffix = ".";
399
- numberInput.value = value.slice(0, -1);
400
- } else {
401
- numberInput.value = value;
402
- }
403
- if (numberInput.value === "") {
404
- return this.currentValue;
405
- }
406
- return numberInput.value + valueSuffix;
407
- };
408
- applyMixins.applyMixins(
409
- NumberField,
410
- localized.Localized,
411
- affix.AffixIcon,
412
- index$1.FormElementCharCount,
413
- index$1.FormElementHelperText,
414
- index$1.FormElementSuccessText
415
- );
31
+ ], Note.prototype, "connotation", 2);
32
+ applyMixins.applyMixins(Note, affix.AffixIcon);
416
33
 
417
- const getStateClasses = ({
418
- errorValidationMessage,
419
- disabled,
420
- value,
421
- readOnly,
422
- placeholder,
423
- appearance,
424
- shape,
425
- label,
426
- successText
427
- }) => classNames.classNames(
428
- ["error", Boolean(errorValidationMessage)],
429
- ["disabled", disabled],
430
- ["has-value", Boolean(value)],
431
- ["readonly", readOnly],
432
- ["placeholder", Boolean(placeholder)],
433
- [`appearance-${appearance}`, Boolean(appearance)],
434
- [`shape-${shape}`, Boolean(shape)],
435
- ["no-label", !label],
436
- ["success", !!successText]
437
- );
438
- function renderLabel() {
439
- return index.html` <label for="control" class="label">
440
- ${(x) => x.label}
441
- </label>`;
442
- }
443
- function setControlButtonShape(numberField) {
444
- return numberField.shape === enums.Shape.Pill ? enums.Shape.Pill : null;
445
- }
446
- function getTabIndex(numberField) {
447
- return numberField.disabled || numberField.readOnly ? "-1" : null;
448
- }
449
- function numberControlButtons(context) {
450
- const buttonTag = context.tagFor(definition.Button);
451
- const dividerTag = context.tagFor(definition$1.Divider);
452
- return index.html`
453
- <div class="control-buttons"
454
- ?inert="${(x) => x.disabled || x.readOnly}">
455
- <${buttonTag} id="subtract" icon="minus-line"
456
- aria-label=${(x) => x.decrementButtonAriaLabel || x.locale.numberField.decrementButtonLabel}
457
- shape="${setControlButtonShape}"
458
- type="button"
459
- size="condensed"
460
- tabindex="${getTabIndex}"
461
- @click="${(x) => x.stepDown()}"></${buttonTag}>
462
- <${dividerTag} class="divider" orientation="vertical"></${dividerTag}>
463
- <${buttonTag} id="add" icon="plus-line"
464
- aria-label=${(x) => x.incrementButtonAriaLabel || x.locale.numberField.incrementButtonLabel}
465
- shape="${setControlButtonShape}"
466
- type="button"
467
- size="condensed"
468
- tabindex="${getTabIndex}"
469
- @click="${(x) => x.stepUp()}"></${buttonTag}>
470
- </div>
471
- `;
34
+ const getClasses = ({ connotation }) => classNames.classNames("base", `connotation-${connotation}`);
35
+ function getHeaderTemplate() {
36
+ return index.html`<div class="headline">${(x) => x.headline}</div>`;
472
37
  }
473
- const NumberFieldTemplate = (context) => {
38
+ const NoteTemplate = (context) => {
39
+ const affixIconTemplate = affix.affixIconTemplateFactory(context);
474
40
  return index.html`
475
- <div class="base ${getStateClasses}">
476
- ${when.when((x) => x.label, renderLabel())}
477
- <div class="fieldset">
478
- <div class="wrapper">
479
- <input
480
- class="control"
481
- id="control"
482
- @input="${(x) => x.handleTextInput()}"
483
- @change="${(x) => x.handleChange()}"
484
- ?autofocus="${(x) => x.autofocus}"
485
- ?disabled="${(x) => x.disabled}"
486
- list="${(x) => x.list}"
487
- step="${(x) => x.step ? x.step : null}"
488
- max="${(x) => x.max}"
489
- min="${(x) => x.min}"
490
- maxlength="${(x) => x.maxlength}"
491
- minlength="${(x) => x.minlength}"
492
- placeholder="${(x) => x.placeholder}"
493
- ?readonly="${(x) => x.readOnly}"
494
- ?required="${(x) => x.required}"
495
- size="${(x) => x.size}"
496
- autocomplete="${(x) => x.autoComplete}"
497
- name="${(x) => x.name}"
498
- ?spellcheck="${(x) => x.spellcheck}"
499
- :value="${(x) => x.value}"
500
- type="text"
501
- aria-atomic="${(x) => x.ariaAtomic}"
502
- aria-busy="${(x) => x.ariaBusy}"
503
- aria-current="${(x) => x.ariaCurrent}"
504
- aria-details="${(x) => x.ariaDetails}"
505
- aria-disabled="${(x) => x.ariaDisabled}"
506
- aria-errormessage="${(x) => x.ariaErrormessage}"
507
- aria-haspopup="${(x) => x.ariaHaspopup}"
508
- aria-hidden="${(x) => x.ariaHidden}"
509
- aria-invalid="${(x) => x.ariaInvalid}"
510
- aria-keyshortcuts="${(x) => x.ariaKeyshortcuts}"
511
- aria-label="${(x) => x.ariaLabel}"
512
- aria-live="${(x) => x.ariaLive}"
513
- aria-relevant="${(x) => x.ariaRelevant}"
514
- aria-roledescription="${(x) => x.ariaRoledescription}"
515
- ${ref.ref("control")}
516
- />
517
- </div>
518
- ${() => numberControlButtons(context)}
41
+ <div class="${getClasses}">
42
+ ${(x) => affixIconTemplate(x.icon, affix.IconWrapper.Slot)}
43
+ <div class="text">
44
+ ${when.when((x) => x.headline, getHeaderTemplate())}
45
+ <slot class="message"></slot>
519
46
  </div>
520
- ${when.when(
521
- (x) => !x.successText && !x.errorValidationMessage && x.helperText?.length,
522
- index$1.getFeedbackTemplate("helper", context)
523
- )}
524
- ${when.when(
525
- (x) => !x.successText && x.errorValidationMessage,
526
- index$1.getFeedbackTemplate("error", context)
527
- )}
528
- ${when.when((x) => x.successText, index$1.getFeedbackTemplate("success", context))}
529
47
  </div>
530
48
  `;
531
49
  };
532
50
 
533
- const numberFieldDefinition = NumberField.compose({
534
- baseName: "number-field",
535
- template: NumberFieldTemplate,
536
- styles,
537
- shadowOptions: {
538
- delegatesFocus: true
539
- }
51
+ const noteDefinition = Note.compose({
52
+ baseName: "note",
53
+ template: NoteTemplate,
54
+ styles
540
55
  });
541
- const numberFieldRegistries = [
542
- numberFieldDefinition(),
543
- ...definition.buttonRegistries,
544
- ...definition$1.dividerRegistries
545
- ];
546
- const registerNumberField = index.registerFactory(numberFieldRegistries);
56
+ const noteRegistries = [noteDefinition(), ...definition.iconRegistries];
57
+ const registerNote = index.registerFactory(noteRegistries);
547
58
 
548
- exports.numberFieldDefinition = numberFieldDefinition;
549
- exports.numberFieldRegistries = numberFieldRegistries;
550
- exports.registerNumberField = registerNumberField;
59
+ exports.noteDefinition = noteDefinition;
60
+ exports.noteRegistries = noteRegistries;
61
+ exports.registerNote = registerNote;