@vonage/vivid 4.12.1 → 4.14.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 (523) hide show
  1. package/custom-elements.json +7489 -4858
  2. package/elevation/index.cjs +1 -1
  3. package/elevation/index.js +1 -1
  4. package/index.cjs +70 -136
  5. package/index.d.ts +0 -1
  6. package/index.js +60 -62
  7. package/lib/accordion/accordion.d.ts +2 -2
  8. package/lib/accordion/accordion.template.d.ts +1 -2
  9. package/lib/accordion/definition.d.ts +1 -1
  10. package/lib/accordion-item/accordion-item.d.ts +2 -2
  11. package/lib/accordion-item/accordion-item.template.d.ts +2 -3
  12. package/lib/accordion-item/definition.d.ts +1 -1
  13. package/lib/action-group/action-group.d.ts +2 -2
  14. package/lib/action-group/action-group.template.d.ts +1 -3
  15. package/lib/action-group/definition.d.ts +1 -1
  16. package/lib/alert/alert.d.ts +2 -2
  17. package/lib/alert/alert.template.d.ts +2 -3
  18. package/lib/alert/definition.d.ts +1 -1
  19. package/lib/audio-player/audio-player.d.ts +2 -2
  20. package/lib/audio-player/audio-player.template.d.ts +2 -3
  21. package/lib/audio-player/definition.d.ts +1 -3
  22. package/lib/avatar/avatar.d.ts +2 -2
  23. package/lib/avatar/avatar.template.d.ts +2 -3
  24. package/lib/avatar/definition.d.ts +1 -1
  25. package/lib/badge/badge.d.ts +2 -2
  26. package/lib/badge/badge.template.d.ts +2 -3
  27. package/lib/badge/definition.d.ts +1 -3
  28. package/lib/banner/banner.d.ts +2 -2
  29. package/lib/banner/banner.template.d.ts +2 -3
  30. package/lib/banner/definition.d.ts +1 -1
  31. package/lib/breadcrumb/breadcrumb.d.ts +2 -2
  32. package/lib/breadcrumb/breadcrumb.template.d.ts +3 -4
  33. package/lib/breadcrumb/definition.d.ts +1 -1
  34. package/lib/breadcrumb-item/breadcrumb-item.d.ts +2 -2
  35. package/lib/breadcrumb-item/breadcrumb-item.template.d.ts +2 -3
  36. package/lib/breadcrumb-item/definition.d.ts +1 -1
  37. package/lib/button/button.d.ts +2 -2
  38. package/lib/button/button.template.d.ts +2 -4
  39. package/lib/button/definition.d.ts +1 -1
  40. package/lib/calendar/calendar.d.ts +2 -2
  41. package/lib/calendar/calendar.template.d.ts +1 -3
  42. package/lib/calendar/definition.d.ts +1 -1
  43. package/lib/calendar-event/calendar-event.d.ts +2 -2
  44. package/lib/calendar-event/calendar-event.template.d.ts +1 -3
  45. package/lib/calendar-event/definition.d.ts +1 -1
  46. package/lib/card/card.d.ts +2 -2
  47. package/lib/card/card.template.d.ts +2 -3
  48. package/lib/card/definition.d.ts +1 -1
  49. package/lib/checkbox/checkbox.form-associated.d.ts +3 -2
  50. package/lib/checkbox/checkbox.template.d.ts +2 -3
  51. package/lib/checkbox/definition.d.ts +1 -1
  52. package/lib/combobox/combobox.d.ts +17 -2
  53. package/lib/combobox/combobox.options.d.ts +7 -0
  54. package/lib/combobox/combobox.template.d.ts +2 -3
  55. package/lib/combobox/definition.d.ts +1 -2
  56. package/lib/data-grid/data-grid-cell.d.ts +16 -13
  57. package/lib/data-grid/data-grid-cell.template.d.ts +2 -3
  58. package/lib/data-grid/data-grid-row.d.ts +19 -2
  59. package/lib/data-grid/data-grid-row.template.d.ts +2 -2
  60. package/lib/data-grid/data-grid.d.ts +45 -4
  61. package/lib/data-grid/data-grid.template.d.ts +2 -2
  62. package/lib/data-grid/definition.d.ts +1 -6
  63. package/lib/date-picker/definition.d.ts +1 -3
  64. package/lib/date-range-picker/definition.d.ts +1 -3
  65. package/lib/dial-pad/definition.d.ts +1 -3
  66. package/lib/dial-pad/dial-pad.d.ts +2 -2
  67. package/lib/dial-pad/dial-pad.template.d.ts +2 -3
  68. package/lib/dialog/definition.d.ts +1 -1
  69. package/lib/dialog/dialog.d.ts +2 -2
  70. package/lib/dialog/dialog.template.d.ts +2 -3
  71. package/lib/divider/definition.d.ts +1 -1
  72. package/lib/divider/divider.d.ts +2 -2
  73. package/lib/divider/divider.template.d.ts +1 -3
  74. package/lib/elevation/definition.d.ts +1 -1
  75. package/lib/elevation/elevation.d.ts +2 -2
  76. package/lib/elevation/elevation.template.d.ts +1 -3
  77. package/lib/empty-state/definition.d.ts +1 -3
  78. package/lib/empty-state/empty-state.d.ts +2 -2
  79. package/lib/empty-state/empty-state.template.d.ts +2 -3
  80. package/lib/fab/definition.d.ts +1 -3
  81. package/lib/fab/fab.template.d.ts +2 -3
  82. package/lib/file-picker/definition.d.ts +1 -3
  83. package/lib/file-picker/file-picker.d.ts +6 -0
  84. package/lib/file-picker/file-picker.form-associated.d.ts +3 -2
  85. package/lib/file-picker/file-picker.template.d.ts +2 -3
  86. package/lib/header/definition.d.ts +1 -3
  87. package/lib/header/header.d.ts +2 -2
  88. package/lib/header/header.template.d.ts +2 -3
  89. package/lib/icon/definition.d.ts +1 -3
  90. package/lib/icon/icon.d.ts +2 -2
  91. package/lib/icon/icon.template.d.ts +1 -3
  92. package/lib/layout/definition.d.ts +1 -3
  93. package/lib/layout/layout.d.ts +2 -2
  94. package/lib/layout/layout.template.d.ts +1 -3
  95. package/lib/listbox/definition.d.ts +1 -3
  96. package/lib/listbox/listbox.template.d.ts +1 -3
  97. package/lib/menu/definition.d.ts +1 -11
  98. package/lib/menu/menu.d.ts +16 -3
  99. package/lib/menu/menu.template.d.ts +3 -3
  100. package/lib/menu-item/definition.d.ts +1 -3
  101. package/lib/menu-item/menu-item.d.ts +10 -2
  102. package/lib/menu-item/menu-item.template.d.ts +2 -3
  103. package/lib/nav/definition.d.ts +1 -3
  104. package/lib/nav/nav.d.ts +2 -2
  105. package/lib/nav/nav.template.d.ts +1 -3
  106. package/lib/nav-disclosure/definition.d.ts +1 -3
  107. package/lib/nav-disclosure/nav-disclosure.d.ts +2 -2
  108. package/lib/nav-disclosure/nav-disclosure.template.d.ts +2 -3
  109. package/lib/nav-item/definition.d.ts +1 -3
  110. package/lib/nav-item/nav-item.template.d.ts +2 -3
  111. package/lib/note/definition.d.ts +1 -3
  112. package/lib/note/note.d.ts +2 -2
  113. package/lib/note/note.template.d.ts +2 -3
  114. package/lib/number-field/definition.d.ts +1 -4
  115. package/lib/number-field/number-field.form-associated.d.ts +3 -2
  116. package/lib/number-field/number-field.template.d.ts +2 -3
  117. package/lib/option/definition.d.ts +1 -3
  118. package/lib/option/option.d.ts +28 -7
  119. package/lib/option/option.template.d.ts +2 -3
  120. package/lib/pagination/definition.d.ts +1 -3
  121. package/lib/pagination/pagination.d.ts +2 -2
  122. package/lib/pagination/pagination.template.d.ts +2 -3
  123. package/lib/popup/definition.d.ts +1 -3
  124. package/lib/popup/popup.template.d.ts +2 -3
  125. package/lib/progress/definition.d.ts +1 -3
  126. package/lib/progress/progress.d.ts +1 -1
  127. package/lib/progress/progress.template.d.ts +1 -4
  128. package/lib/progress-ring/definition.d.ts +1 -3
  129. package/lib/progress-ring/progress-ring.d.ts +1 -1
  130. package/lib/progress-ring/progress-ring.template.d.ts +1 -3
  131. package/lib/radio/definition.d.ts +1 -3
  132. package/lib/radio/radio.form-associated.d.ts +3 -2
  133. package/lib/radio/radio.template.d.ts +1 -3
  134. package/lib/radio-group/definition.d.ts +1 -11
  135. package/lib/radio-group/radio-group.d.ts +2 -2
  136. package/lib/radio-group/radio-group.template.d.ts +2 -3
  137. package/lib/range-slider/definition.d.ts +1 -3
  138. package/lib/range-slider/range-slider.form-associated.d.ts +3 -2
  139. package/lib/range-slider/range-slider.template.d.ts +2 -3
  140. package/lib/searchable-select/definition.d.ts +1 -4
  141. package/lib/searchable-select/option-tag.template.d.ts +2 -3
  142. package/lib/searchable-select/searchable-select.form-associated.d.ts +3 -2
  143. package/lib/searchable-select/searchable-select.template.d.ts +2 -3
  144. package/lib/select/definition.d.ts +1 -3
  145. package/lib/select/select.d.ts +14 -4
  146. package/lib/select/select.form-associated.d.ts +11 -0
  147. package/lib/select/select.template.d.ts +2 -3
  148. package/lib/selectable-box/definition.d.ts +1 -3
  149. package/lib/selectable-box/selectable-box.d.ts +2 -2
  150. package/lib/selectable-box/selectable-box.template.d.ts +2 -3
  151. package/lib/side-drawer/definition.d.ts +1 -3
  152. package/lib/side-drawer/side-drawer.d.ts +2 -2
  153. package/lib/side-drawer/side-drawer.template.d.ts +1 -3
  154. package/lib/slider/definition.d.ts +1 -3
  155. package/lib/slider/slider.form-associated.d.ts +3 -2
  156. package/lib/slider/slider.template.d.ts +3 -4
  157. package/lib/split-button/definition.d.ts +1 -1
  158. package/lib/split-button/split-button.d.ts +2 -2
  159. package/lib/split-button/split-button.template.d.ts +2 -3
  160. package/lib/switch/definition.d.ts +1 -3
  161. package/lib/switch/switch.d.ts +5 -2
  162. package/lib/switch/switch.form-associated.d.ts +11 -0
  163. package/lib/switch/switch.template.d.ts +1 -3
  164. package/lib/tab/definition.d.ts +1 -3
  165. package/lib/tab/tab.d.ts +2 -2
  166. package/lib/tab/tab.template.d.ts +2 -2
  167. package/lib/tab-panel/definition.d.ts +1 -3
  168. package/lib/tab-panel/tab-panel.d.ts +2 -2
  169. package/lib/tab-panel/tab-panel.template.d.ts +1 -1
  170. package/lib/tabs/definition.d.ts +1 -3
  171. package/lib/tabs/tabs.d.ts +6 -4
  172. package/lib/tabs/tabs.template.d.ts +1 -1
  173. package/lib/tag/definition.d.ts +1 -4
  174. package/lib/tag/tag.d.ts +2 -2
  175. package/lib/tag/tag.template.d.ts +2 -3
  176. package/lib/tag-group/definition.d.ts +1 -3
  177. package/lib/tag-group/tag-group.d.ts +2 -2
  178. package/lib/tag-group/tag-group.template.d.ts +1 -3
  179. package/lib/text-anchor/definition.d.ts +1 -3
  180. package/lib/text-anchor/text-anchor.d.ts +4 -3
  181. package/lib/text-anchor/text-anchor.template.d.ts +2 -3
  182. package/lib/text-area/definition.d.ts +1 -3
  183. package/lib/text-area/text-area.d.ts +25 -3
  184. package/lib/text-area/text-area.form-associated.d.ts +11 -0
  185. package/lib/text-area/text-area.template.d.ts +2 -3
  186. package/lib/text-field/definition.d.ts +1 -3
  187. package/lib/text-field/text-field.d.ts +28 -3
  188. package/lib/text-field/text-field.form-associated.d.ts +11 -0
  189. package/lib/text-field/text-field.template.d.ts +2 -3
  190. package/lib/time-picker/definition.d.ts +1 -3
  191. package/lib/time-picker/time-picker.form-associated.d.ts +3 -2
  192. package/lib/time-picker/time-picker.template.d.ts +2 -2
  193. package/lib/toggletip/definition.d.ts +1 -3
  194. package/lib/toggletip/toggletip.d.ts +2 -2
  195. package/lib/toggletip/toggletip.template.d.ts +2 -3
  196. package/lib/tooltip/definition.d.ts +1 -3
  197. package/lib/tooltip/tooltip.d.ts +2 -2
  198. package/lib/tooltip/tooltip.template.d.ts +2 -3
  199. package/lib/tree-item/definition.d.ts +1 -3
  200. package/lib/tree-item/tree-item.d.ts +11 -2
  201. package/lib/tree-item/tree-item.template.d.ts +3 -3
  202. package/lib/tree-view/definition.d.ts +1 -3
  203. package/lib/tree-view/tree-view.d.ts +16 -2
  204. package/lib/tree-view/tree-view.template.d.ts +1 -1
  205. package/lib/video-player/definition.d.ts +1 -3
  206. package/lib/video-player/video-player.d.ts +2 -2
  207. package/lib/video-player/video-player.template.d.ts +1 -3
  208. package/listbox/index.cjs +37 -39
  209. package/listbox/index.js +37 -39
  210. package/menu/index.cjs +1 -1
  211. package/menu/index.js +1 -1
  212. package/nav/index.cjs +1 -1
  213. package/nav/index.js +1 -1
  214. package/nav-disclosure/index.cjs +1 -1
  215. package/nav-disclosure/index.js +1 -1
  216. package/nav-item/index.cjs +1 -1
  217. package/nav-item/index.js +1 -1
  218. package/note/index.cjs +1 -1
  219. package/note/index.js +1 -1
  220. package/number-field/index.cjs +1 -1
  221. package/number-field/index.js +1 -1
  222. package/option/index.cjs +1 -1
  223. package/option/index.js +1 -1
  224. package/package.json +1 -1
  225. package/pagination/index.cjs +1 -1
  226. package/pagination/index.js +1 -1
  227. package/popup/index.cjs +1 -1
  228. package/popup/index.js +1 -1
  229. package/progress/index.cjs +1 -1
  230. package/progress/index.js +1 -1
  231. package/progress-ring/index.cjs +1 -1
  232. package/progress-ring/index.js +1 -1
  233. package/radio/index.cjs +1 -1
  234. package/radio/index.js +1 -1
  235. package/radio-group/index.cjs +1 -1
  236. package/radio-group/index.js +1 -1
  237. package/range-slider/index.cjs +1 -1
  238. package/range-slider/index.js +1 -1
  239. package/searchable-select/index.cjs +1 -1
  240. package/searchable-select/index.js +1 -1
  241. package/select/index.cjs +1 -1
  242. package/select/index.js +1 -1
  243. package/selectable-box/index.cjs +1 -1
  244. package/selectable-box/index.js +1 -1
  245. package/shared/affix.cjs +10 -10
  246. package/shared/affix.js +2 -2
  247. package/shared/anchor.cjs +59 -0
  248. package/shared/anchor.js +57 -0
  249. package/shared/anchored.cjs +6 -6
  250. package/shared/anchored.js +2 -2
  251. package/shared/apply-mixins.cjs +15 -17
  252. package/shared/apply-mixins.js +15 -17
  253. package/shared/apply-mixins2.cjs +25 -0
  254. package/shared/apply-mixins2.js +23 -0
  255. package/shared/applyMixinsWithObservables.cjs +4 -4
  256. package/shared/applyMixinsWithObservables.js +2 -2
  257. package/shared/aria-global.cjs +86 -67
  258. package/shared/aria-global.js +86 -67
  259. package/shared/aria-global2.cjs +68 -86
  260. package/shared/aria-global2.js +68 -86
  261. package/shared/base-progress.cjs +70 -63
  262. package/shared/base-progress.js +69 -62
  263. package/shared/breadcrumb-item.cjs +7 -58
  264. package/shared/breadcrumb-item.js +4 -55
  265. package/shared/button.cjs +178 -0
  266. package/shared/button.js +176 -0
  267. package/shared/calendar-event.cjs +10 -9
  268. package/shared/calendar-event.js +3 -2
  269. package/shared/children.cjs +2 -2
  270. package/shared/children.js +1 -1
  271. package/shared/date-picker/date-picker-base.form-associated.d.ts +3 -2
  272. package/shared/date-picker/date-picker-base.template.d.ts +2 -3
  273. package/shared/defineVividComponent.cjs +2612 -0
  274. package/shared/defineVividComponent.js +2592 -0
  275. package/shared/definition.cjs +26 -24
  276. package/shared/definition.js +17 -14
  277. package/shared/definition10.cjs +15 -12
  278. package/shared/definition10.js +15 -11
  279. package/shared/definition11.cjs +53 -249
  280. package/shared/definition11.js +25 -219
  281. package/shared/definition12.cjs +18 -14
  282. package/shared/definition12.js +17 -12
  283. package/shared/definition13.cjs +20 -19
  284. package/shared/definition13.js +11 -9
  285. package/shared/definition14.cjs +36 -38
  286. package/shared/definition14.js +16 -17
  287. package/shared/definition15.cjs +28 -26
  288. package/shared/definition15.js +17 -14
  289. package/shared/definition16.cjs +478 -611
  290. package/shared/definition16.js +471 -603
  291. package/shared/definition17.cjs +934 -1113
  292. package/shared/definition17.js +913 -1091
  293. package/shared/definition18.cjs +16 -20
  294. package/shared/definition18.js +19 -22
  295. package/shared/definition19.cjs +26 -30
  296. package/shared/definition19.js +21 -24
  297. package/shared/definition2.cjs +20 -22
  298. package/shared/definition2.js +21 -22
  299. package/shared/definition20.cjs +53 -53
  300. package/shared/definition20.js +36 -35
  301. package/shared/definition21.cjs +43 -46
  302. package/shared/definition21.js +19 -21
  303. package/shared/definition22.cjs +16 -13
  304. package/shared/definition22.js +15 -11
  305. package/shared/definition23.cjs +22 -20
  306. package/shared/definition23.js +15 -12
  307. package/shared/definition24.cjs +20 -172
  308. package/shared/definition24.js +17 -168
  309. package/shared/definition25.cjs +48 -28
  310. package/shared/definition25.js +43 -22
  311. package/shared/definition26.cjs +17 -14
  312. package/shared/definition26.js +15 -11
  313. package/shared/definition27.cjs +265 -12
  314. package/shared/definition27.js +262 -10
  315. package/shared/definition28.cjs +19 -16
  316. package/shared/definition28.js +15 -11
  317. package/shared/definition29.cjs +478 -604
  318. package/shared/definition29.js +450 -578
  319. package/shared/definition3.cjs +21 -16
  320. package/shared/definition3.js +17 -11
  321. package/shared/definition30.cjs +100 -75
  322. package/shared/definition30.js +99 -73
  323. package/shared/definition31.cjs +24 -97
  324. package/shared/definition31.js +25 -97
  325. package/shared/definition32.cjs +10 -25
  326. package/shared/definition32.js +9 -23
  327. package/shared/definition33.cjs +53 -14
  328. package/shared/definition33.js +52 -12
  329. package/shared/definition34.cjs +641 -34
  330. package/shared/definition34.js +638 -30
  331. package/shared/definition35.cjs +205 -377
  332. package/shared/definition35.js +200 -373
  333. package/shared/definition36.cjs +204 -104
  334. package/shared/definition36.js +199 -97
  335. package/shared/definition37.cjs +79 -206
  336. package/shared/definition37.js +75 -202
  337. package/shared/definition38.cjs +50 -56
  338. package/shared/definition38.js +48 -52
  339. package/shared/definition39.cjs +260 -56
  340. package/shared/definition39.js +259 -54
  341. package/shared/definition4.cjs +33 -35
  342. package/shared/definition4.js +20 -21
  343. package/shared/definition40.cjs +112 -229
  344. package/shared/definition40.js +109 -226
  345. package/shared/definition41.cjs +627 -36
  346. package/shared/definition41.js +626 -34
  347. package/shared/definition42.cjs +975 -487
  348. package/shared/definition42.js +972 -482
  349. package/shared/definition43.cjs +725 -932
  350. package/shared/definition43.js +713 -918
  351. package/shared/definition44.cjs +116 -734
  352. package/shared/definition44.js +114 -731
  353. package/shared/definition45.cjs +93 -116
  354. package/shared/definition45.js +93 -115
  355. package/shared/definition46.cjs +469 -89
  356. package/shared/definition46.js +466 -86
  357. package/shared/definition47.cjs +119 -479
  358. package/shared/definition47.js +116 -474
  359. package/shared/definition48.cjs +114 -120
  360. package/shared/definition48.js +112 -117
  361. package/shared/definition49.cjs +18 -160
  362. package/shared/definition49.js +16 -157
  363. package/shared/definition5.cjs +48 -49
  364. package/shared/definition5.js +19 -19
  365. package/shared/definition50.cjs +112 -15
  366. package/shared/definition50.js +110 -12
  367. package/shared/definition51.cjs +847 -84
  368. package/shared/definition51.js +843 -79
  369. package/shared/definition52.cjs +31 -859
  370. package/shared/definition52.js +29 -856
  371. package/shared/definition53.cjs +126 -28
  372. package/shared/definition53.js +124 -25
  373. package/shared/definition54.cjs +268 -107
  374. package/shared/definition54.js +262 -100
  375. package/shared/definition55.cjs +63 -298
  376. package/shared/definition55.js +61 -295
  377. package/shared/definition56.cjs +799 -311
  378. package/shared/definition56.js +795 -306
  379. package/shared/definition57.cjs +108 -825
  380. package/shared/definition57.js +106 -822
  381. package/shared/definition58.cjs +74 -100
  382. package/shared/definition58.js +70 -95
  383. package/shared/definition59.cjs +181 -106
  384. package/shared/definition59.js +175 -101
  385. package/shared/definition6.cjs +23 -21
  386. package/shared/definition6.js +15 -12
  387. package/shared/definition60.cjs +273 -70
  388. package/shared/definition60.js +273 -69
  389. package/shared/definition61.cjs +66157 -271
  390. package/shared/definition61.js +66156 -269
  391. package/shared/definition62.cjs +36 -66174
  392. package/shared/definition62.js +33 -66171
  393. package/shared/definition63.cjs +2154 -27
  394. package/shared/definition63.js +2151 -25
  395. package/shared/definition7.cjs +19 -15
  396. package/shared/definition7.js +14 -10
  397. package/shared/definition8.cjs +26 -27
  398. package/shared/definition8.js +17 -17
  399. package/shared/definition9.cjs +21 -21
  400. package/shared/definition9.js +18 -17
  401. package/shared/design-system/createRegisterFunction.d.ts +2 -0
  402. package/shared/design-system/defineVividComponent.d.ts +15 -0
  403. package/shared/direction.cjs +10 -1
  404. package/shared/direction.js +10 -1
  405. package/shared/dom.cjs +0 -13
  406. package/shared/dom.js +1 -13
  407. package/shared/form-associated.cjs +422 -457
  408. package/shared/form-associated.js +422 -457
  409. package/shared/form-associated2.cjs +383 -0
  410. package/shared/form-associated2.js +381 -0
  411. package/shared/form-elements.cjs +15 -42
  412. package/shared/form-elements.js +2 -29
  413. package/shared/foundation/anchor/anchor.d.ts +1 -0
  414. package/shared/foundation/button/button.d.ts +3 -2
  415. package/shared/foundation/button/button.template.d.ts +2 -4
  416. package/shared/foundation/form-associated/form-associated.d.ts +51 -0
  417. package/shared/foundation/listbox/listbox.d.ts +22 -0
  418. package/shared/foundation/progress/base-progress.d.ts +9 -0
  419. package/shared/foundation/utilities/apply-mixins.d.ts +1 -0
  420. package/shared/foundation/vivid-element/vivid-element.d.ts +3 -0
  421. package/shared/foundation-element.cjs +1417 -0
  422. package/shared/foundation-element.js +1414 -0
  423. package/shared/index.cjs +7 -5097
  424. package/shared/index.js +7 -5079
  425. package/shared/key-codes.cjs +10 -0
  426. package/shared/key-codes.js +6 -1
  427. package/shared/key-codes2.cjs +50 -6
  428. package/shared/key-codes2.js +50 -4
  429. package/shared/listbox.cjs +409 -981
  430. package/shared/listbox.js +410 -979
  431. package/shared/listbox2.cjs +1268 -0
  432. package/shared/listbox2.js +1265 -0
  433. package/shared/localized.cjs +2 -2
  434. package/shared/localized.js +1 -1
  435. package/shared/numbers.cjs +12 -0
  436. package/shared/numbers.js +12 -1
  437. package/shared/patterns/affix.d.ts +2 -2
  438. package/shared/patterns/chevron.d.ts +2 -2
  439. package/shared/patterns/form-elements/form-elements.d.ts +2 -2
  440. package/shared/presentationDate.cjs +56 -55
  441. package/shared/presentationDate.js +8 -7
  442. package/shared/ref.cjs +2 -2
  443. package/shared/ref.js +1 -1
  444. package/shared/repeat.cjs +22 -22
  445. package/shared/repeat.js +1 -1
  446. package/shared/slider.template.cjs +5 -5
  447. package/shared/slider.template.js +2 -2
  448. package/shared/slotted.cjs +4 -4
  449. package/shared/slotted.js +1 -1
  450. package/shared/strings.cjs +0 -26
  451. package/shared/strings.js +1 -25
  452. package/shared/strings2.cjs +37 -0
  453. package/shared/strings2.js +33 -0
  454. package/shared/text-anchor.cjs +8 -89
  455. package/shared/text-anchor.js +5 -86
  456. package/shared/text-anchor.template.cjs +2 -2
  457. package/shared/text-anchor.template.js +1 -1
  458. package/shared/text-field2.cjs +539 -194
  459. package/shared/text-field2.js +539 -194
  460. package/shared/vivid-element.cjs +8 -0
  461. package/shared/vivid-element.js +6 -0
  462. package/side-drawer/index.cjs +1 -1
  463. package/side-drawer/index.js +1 -1
  464. package/slider/index.cjs +1 -1
  465. package/slider/index.js +1 -1
  466. package/split-button/index.cjs +1 -1
  467. package/split-button/index.js +1 -1
  468. package/styles/core/all.css +21 -1
  469. package/styles/core/theme.css +21 -1
  470. package/styles/core/typography.css +1 -1
  471. package/styles/tokens/theme-dark.css +4 -4
  472. package/styles/tokens/theme-light.css +4 -4
  473. package/styles/tokens/vivid-2-compat.css +1 -1
  474. package/switch/index.cjs +1 -1
  475. package/switch/index.js +1 -1
  476. package/tab/index.cjs +1 -1
  477. package/tab/index.js +1 -1
  478. package/tab-panel/index.cjs +1 -1
  479. package/tab-panel/index.js +1 -1
  480. package/tabs/index.cjs +1 -1
  481. package/tabs/index.js +1 -1
  482. package/tag/index.cjs +1 -1
  483. package/tag/index.js +1 -1
  484. package/tag-group/index.cjs +1 -1
  485. package/tag-group/index.js +1 -1
  486. package/text-anchor/index.cjs +10 -7
  487. package/text-anchor/index.js +10 -7
  488. package/text-area/index.cjs +1 -1
  489. package/text-area/index.js +1 -1
  490. package/text-field/index.cjs +1 -1
  491. package/text-field/index.js +1 -1
  492. package/time-picker/index.cjs +1 -1
  493. package/time-picker/index.js +1 -1
  494. package/toggletip/index.cjs +1 -1
  495. package/toggletip/index.js +1 -1
  496. package/tooltip/index.cjs +1 -1
  497. package/tooltip/index.js +1 -1
  498. package/tree-item/index.cjs +1 -1
  499. package/tree-item/index.js +1 -1
  500. package/tree-view/index.cjs +1 -1
  501. package/tree-view/index.js +1 -1
  502. package/video-player/index.cjs +1 -1
  503. package/video-player/index.js +1 -1
  504. package/vivid.api.json +2848 -7818
  505. package/shared/Reflector.cjs +0 -71
  506. package/shared/Reflector.js +0 -69
  507. package/shared/definition64.cjs +0 -2164
  508. package/shared/definition64.js +0 -2159
  509. package/shared/design-system/index.d.ts +0 -3
  510. package/shared/icon.cjs +0 -261
  511. package/shared/icon.js +0 -258
  512. package/shared/index2.cjs +0 -11
  513. package/shared/index2.js +0 -9
  514. package/shared/listbox-option.cjs +0 -204
  515. package/shared/listbox-option.js +0 -201
  516. package/shared/radio.cjs +0 -126
  517. package/shared/radio.js +0 -124
  518. package/shared/select.options.cjs +0 -12
  519. package/shared/select.options.js +0 -10
  520. package/shared/start-end.cjs +0 -52
  521. package/shared/start-end.js +0 -50
  522. package/shared/tree-item.cjs +0 -154
  523. package/shared/tree-item.js +0 -151
@@ -1,228 +1,573 @@
1
1
  'use strict';
2
2
 
3
- const index = require('./index.cjs');
4
3
  const applyMixins = require('./apply-mixins.cjs');
4
+ const defineVividComponent = require('./defineVividComponent.cjs');
5
+ const applyMixinsWithObservables = require('./applyMixinsWithObservables.cjs');
5
6
  const formAssociated = require('./form-associated.cjs');
7
+ const vividElement = require('./vivid-element.cjs');
8
+ const definition = require('./definition27.cjs');
9
+ const formElements = require('./form-elements.cjs');
6
10
  const ariaGlobal = require('./aria-global.cjs');
7
- const startEnd = require('./start-end.cjs');
11
+ const affix = require('./affix.cjs');
8
12
 
9
- class _TextField extends index.FoundationElement {
13
+ const byteToHex = [];
14
+ for (let i = 0; i < 256; ++i) {
15
+ byteToHex.push((i + 0x100).toString(16).slice(1));
10
16
  }
11
- /**
12
- * A form-associated base class for the {@link @microsoft/fast-foundation#(TextField:class)} component.
13
- *
14
- * @internal
15
- */
16
- class FormAssociatedTextField extends formAssociated.FormAssociated(_TextField) {
17
- constructor() {
18
- super(...arguments);
19
- this.proxy = document.createElement("input");
17
+ function unsafeStringify(arr, offset = 0) {
18
+ return (byteToHex[arr[offset + 0]] +
19
+ byteToHex[arr[offset + 1]] +
20
+ byteToHex[arr[offset + 2]] +
21
+ byteToHex[arr[offset + 3]] +
22
+ '-' +
23
+ byteToHex[arr[offset + 4]] +
24
+ byteToHex[arr[offset + 5]] +
25
+ '-' +
26
+ byteToHex[arr[offset + 6]] +
27
+ byteToHex[arr[offset + 7]] +
28
+ '-' +
29
+ byteToHex[arr[offset + 8]] +
30
+ byteToHex[arr[offset + 9]] +
31
+ '-' +
32
+ byteToHex[arr[offset + 10]] +
33
+ byteToHex[arr[offset + 11]] +
34
+ byteToHex[arr[offset + 12]] +
35
+ byteToHex[arr[offset + 13]] +
36
+ byteToHex[arr[offset + 14]] +
37
+ byteToHex[arr[offset + 15]]).toLowerCase();
38
+ }
39
+
40
+ let getRandomValues;
41
+ const rnds8 = new Uint8Array(16);
42
+ function rng() {
43
+ if (!getRandomValues) {
44
+ if (typeof crypto === 'undefined' || !crypto.getRandomValues) {
45
+ throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');
46
+ }
47
+ getRandomValues = crypto.getRandomValues.bind(crypto);
48
+ }
49
+ return getRandomValues(rnds8);
50
+ }
51
+
52
+ const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);
53
+ const native = { randomUUID };
54
+
55
+ function v4(options, buf, offset) {
56
+ if (native.randomUUID && !buf && !options) {
57
+ return native.randomUUID();
20
58
  }
59
+ options = options || {};
60
+ const rnds = options.random || (options.rng || rng)();
61
+ rnds[6] = (rnds[6] & 0x0f) | 0x40;
62
+ rnds[8] = (rnds[8] & 0x3f) | 0x80;
63
+ return unsafeStringify(rnds);
21
64
  }
22
65
 
23
- /**
24
- * Text field sub-types
25
- * @public
26
- */
66
+ const generateRandomId = () => v4();
67
+
68
+ class Reflector {
69
+ #reflectedProperties = /* @__PURE__ */ new Map();
70
+ #source;
71
+ #target;
72
+ constructor(source, target) {
73
+ this.#source = source;
74
+ this.#target = target;
75
+ }
76
+ attribute(propertyName, attributeName) {
77
+ this.#addReflectedProperty(propertyName, {
78
+ type: "attribute",
79
+ destination: attributeName
80
+ });
81
+ }
82
+ booleanAttribute(propertyName, attributeName) {
83
+ this.#addReflectedProperty(propertyName, {
84
+ type: "boolean-attribute",
85
+ destination: attributeName
86
+ });
87
+ }
88
+ property(propertyName, targetProperty, skipIfEqual = false) {
89
+ this.#addReflectedProperty(propertyName, {
90
+ type: "property",
91
+ destination: targetProperty,
92
+ skipIfEqual
93
+ });
94
+ }
95
+ destroy() {
96
+ const notifier = defineVividComponent.Observable.getNotifier(this.#source);
97
+ for (const prop of this.#reflectedProperties.keys()) {
98
+ notifier.unsubscribe(this.#propertyChangeHandler, prop);
99
+ }
100
+ this.#reflectedProperties.clear();
101
+ }
102
+ #addReflectedProperty(name, reflected) {
103
+ this.#reflectedProperties.set(name, reflected);
104
+ const notifier = defineVividComponent.Observable.getNotifier(this.#source);
105
+ notifier.subscribe(this.#propertyChangeHandler, name);
106
+ this.#propertyChangeHandler.handleChange(this.#source, name);
107
+ }
108
+ #propertyChangeHandler = {
109
+ handleChange: (source, propertyName) => {
110
+ const reflectedProperty = this.#reflectedProperties.get(propertyName);
111
+ const value = source[propertyName];
112
+ switch (reflectedProperty.type) {
113
+ case "boolean-attribute":
114
+ defineVividComponent.DOM.setBooleanAttribute(
115
+ this.#target,
116
+ reflectedProperty.destination,
117
+ Boolean(value)
118
+ );
119
+ break;
120
+ case "attribute":
121
+ defineVividComponent.DOM.setAttribute(this.#target, reflectedProperty.destination, value);
122
+ break;
123
+ case "property":
124
+ if (reflectedProperty.skipIfEqual && this.#target[reflectedProperty.destination] === value) {
125
+ return;
126
+ }
127
+ this.#target[reflectedProperty.destination] = value;
128
+ break;
129
+ }
130
+ }
131
+ };
132
+ }
133
+
134
+ class _TextField extends vividElement.VividElement {
135
+ }
136
+ class FormAssociatedTextField extends formAssociated.FormAssociated(_TextField) {
137
+ constructor() {
138
+ super(...arguments);
139
+ this.proxy = document.createElement("input");
140
+ }
141
+ }
142
+
143
+ var __defProp = Object.defineProperty;
144
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
145
+ var __typeError = (msg) => {
146
+ throw TypeError(msg);
147
+ };
148
+ var __decorateClass = (decorators, target, key, kind) => {
149
+ var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
150
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
151
+ if (decorator = decorators[i])
152
+ result = (kind ? decorator(target, key, result) : decorator(result)) || result;
153
+ if (kind && result) __defProp(target, key, result);
154
+ return result;
155
+ };
156
+ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
157
+ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
158
+ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
159
+ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), member.set(obj, value), value);
160
+ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
161
+ var _TextField_instances, handleLabelChange_fn, _reflectToInput, _helperTextMirrorEl, _helperTextSlotMutationObserver, updateHelperTextMutationObserver_fn, updateMirroredHelperText_fn;
27
162
  const TextFieldType = {
163
+ /**
164
+ * An email TextField
165
+ */
166
+ email: "email",
167
+ /**
168
+ * A password TextField
169
+ */
170
+ password: "password",
171
+ /**
172
+ * A telephone TextField
173
+ */
174
+ tel: "tel",
175
+ /**
176
+ * A text TextField
177
+ */
178
+ text: "text",
179
+ /**
180
+ * A URL TextField
181
+ */
182
+ url: "url"
183
+ };
184
+ const safariWorkaroundClassName = "_vvd-3-text-field-safari-workaround";
185
+ const getSafariWorkaroundStyleSheet = definition.memoizeWith(
186
+ () => "",
187
+ () => {
188
+ const styleSheet = new CSSStyleSheet();
189
+ const supportsReplaceSync = "replaceSync" in styleSheet;
190
+ if (supportsReplaceSync) {
191
+ styleSheet.replaceSync(`
192
+ .${safariWorkaroundClassName}::placeholder {
193
+ opacity: 1 !important;
194
+ -webkit-text-fill-color: var(--_low-ink-color) !important;
195
+ }`);
196
+ }
197
+ return styleSheet;
198
+ }
199
+ );
200
+ const installSafariWorkaroundStyle = (forElement) => {
201
+ const root = forElement.getRootNode();
202
+ const workaroundStyleSheet = getSafariWorkaroundStyleSheet();
203
+ const supportsAdoptedStyleSheets = "adoptedStyleSheets" in root;
204
+ if (!supportsAdoptedStyleSheets) {
205
+ return;
206
+ }
207
+ if (!root.adoptedStyleSheets.includes(workaroundStyleSheet)) {
208
+ root.adoptedStyleSheets = [
209
+ ...root.adoptedStyleSheets,
210
+ workaroundStyleSheet
211
+ ];
212
+ }
213
+ };
214
+ exports.TextField = class TextField extends FormAssociatedTextField {
215
+ constructor() {
216
+ super(...arguments);
217
+ __privateAdd(this, _TextField_instances);
218
+ // eslint-disable-next-line @nrwl/nx/workspace/no-attribute-default-value
219
+ this.type = TextFieldType.text;
28
220
  /**
29
- * An email TextField
30
- */
31
- email: "email",
32
- /**
33
- * A password TextField
34
- */
35
- password: "password",
36
- /**
37
- * A telephone TextField
38
- */
39
- tel: "tel",
40
- /**
41
- * A text TextField
42
- */
43
- text: "text",
44
- /**
45
- * A URL TextField
221
+ * @internal
46
222
  */
47
- url: "url",
48
- };
49
-
50
- /**
51
- * A Text Field Custom HTML Element.
52
- * Based largely on the {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/text | <input type="text" /> element }.
53
- *
54
- * @slot start - Content which can be provided before the number field input
55
- * @slot end - Content which can be provided after the number field input
56
- * @slot - The default slot for the label
57
- * @csspart label - The label
58
- * @csspart root - The element wrapping the control, including start and end slots
59
- * @csspart control - The text field element
60
- * @fires change - Fires a custom 'change' event when the value has changed
61
- *
62
- * @public
63
- */
64
- let TextField$1 = class TextField extends FormAssociatedTextField {
65
- constructor() {
66
- super(...arguments);
67
- /**
68
- * Allows setting a type or mode of text.
69
- * @public
70
- * @remarks
71
- * HTML Attribute: type
72
- */
73
- this.type = TextFieldType.text;
74
- }
75
- readOnlyChanged() {
76
- if (this.proxy instanceof HTMLInputElement) {
77
- this.proxy.readOnly = this.readOnly;
78
- this.validate();
79
- }
223
+ this._labelEl = null;
224
+ __privateAdd(this, _reflectToInput);
225
+ __privateAdd(this, _helperTextMirrorEl);
226
+ __privateAdd(this, _helperTextSlotMutationObserver);
227
+ }
228
+ /**
229
+ * @internal
230
+ */
231
+ readOnlyChanged() {
232
+ if (this.proxy instanceof HTMLInputElement) {
233
+ this.proxy.readOnly = this.readOnly;
234
+ this.validate();
80
235
  }
81
- autofocusChanged() {
82
- if (this.proxy instanceof HTMLInputElement) {
83
- this.proxy.autofocus = this.autofocus;
84
- this.validate();
85
- }
236
+ }
237
+ /**
238
+ * @internal
239
+ */
240
+ autofocusChanged() {
241
+ if (this.proxy instanceof HTMLInputElement) {
242
+ this.proxy.autofocus = this.autofocus;
243
+ this.validate();
86
244
  }
87
- placeholderChanged() {
88
- if (this.proxy instanceof HTMLInputElement) {
89
- this.proxy.placeholder = this.placeholder;
90
- }
245
+ }
246
+ /**
247
+ * @internal
248
+ */
249
+ placeholderChanged() {
250
+ if (this.proxy instanceof HTMLInputElement) {
251
+ this.proxy.placeholder = this.placeholder;
91
252
  }
92
- typeChanged() {
93
- if (this.proxy instanceof HTMLInputElement) {
94
- this.proxy.type = this.type;
95
- this.validate();
96
- }
253
+ }
254
+ /**
255
+ * @internal
256
+ */
257
+ typeChanged() {
258
+ if (this.proxy instanceof HTMLInputElement) {
259
+ this.proxy.type = this.type;
260
+ this.validate();
97
261
  }
98
- listChanged() {
99
- if (this.proxy instanceof HTMLInputElement) {
100
- this.proxy.setAttribute("list", this.list);
101
- this.validate();
102
- }
262
+ }
263
+ /**
264
+ * @internal
265
+ */
266
+ listChanged() {
267
+ if (this.proxy instanceof HTMLInputElement) {
268
+ this.proxy.setAttribute("list", this.list);
269
+ this.validate();
103
270
  }
104
- maxlengthChanged() {
105
- if (this.proxy instanceof HTMLInputElement) {
106
- this.proxy.maxLength = this.maxlength;
107
- this.validate();
108
- }
271
+ }
272
+ /**
273
+ * @internal
274
+ */
275
+ maxlengthChanged() {
276
+ if (this.proxy instanceof HTMLInputElement) {
277
+ this.proxy.maxLength = this.maxlength;
278
+ this.validate();
109
279
  }
110
- minlengthChanged() {
111
- if (this.proxy instanceof HTMLInputElement) {
112
- this.proxy.minLength = this.minlength;
113
- this.validate();
114
- }
280
+ }
281
+ /**
282
+ * @internal
283
+ */
284
+ minlengthChanged() {
285
+ if (this.proxy instanceof HTMLInputElement) {
286
+ this.proxy.minLength = this.minlength;
287
+ this.validate();
115
288
  }
116
- patternChanged() {
117
- if (this.proxy instanceof HTMLInputElement) {
118
- this.proxy.pattern = this.pattern;
119
- this.validate();
120
- }
289
+ }
290
+ /**
291
+ * @internal
292
+ */
293
+ patternChanged() {
294
+ if (this.proxy instanceof HTMLInputElement) {
295
+ this.proxy.pattern = this.pattern;
296
+ this.validate();
121
297
  }
122
- sizeChanged() {
123
- if (this.proxy instanceof HTMLInputElement) {
124
- this.proxy.size = this.size;
125
- }
298
+ }
299
+ /**
300
+ * @internal
301
+ */
302
+ sizeChanged() {
303
+ if (this.proxy instanceof HTMLInputElement) {
304
+ this.proxy.size = this.size;
126
305
  }
127
- spellcheckChanged() {
128
- if (this.proxy instanceof HTMLInputElement) {
129
- this.proxy.spellcheck = this.spellcheck;
130
- }
306
+ }
307
+ /**
308
+ * @internal
309
+ */
310
+ spellcheckChanged() {
311
+ if (this.proxy instanceof HTMLInputElement) {
312
+ this.proxy.spellcheck = this.spellcheck;
131
313
  }
132
- /**
133
- * @internal
134
- */
135
- connectedCallback() {
136
- super.connectedCallback();
137
- this.proxy.setAttribute("type", this.type);
138
- this.validate();
139
- if (this.autofocus) {
140
- index.DOM.queueUpdate(() => {
141
- this.focus();
142
- });
143
- }
314
+ }
315
+ /**
316
+ * Selects all the text in the text field
317
+ *
318
+ * @public
319
+ */
320
+ select() {
321
+ this.control.select();
322
+ }
323
+ /**
324
+ * Handles the internal control's `input` event
325
+ * @internal
326
+ */
327
+ handleTextInput() {
328
+ this.value = this.control.value;
329
+ }
330
+ /**
331
+ * Change event handler for inner control.
332
+ * @remarks
333
+ * "Change" events are not `composable` so they will not
334
+ * permeate the shadow DOM boundary. This fn effectively proxies
335
+ * the change event, emitting a `change` event whenever the internal
336
+ * control emits a `change` event
337
+ * @internal
338
+ */
339
+ handleChange() {
340
+ this.$emit("change");
341
+ }
342
+ /** {@inheritDoc (FormAssociated:interface).validate} */
343
+ validate() {
344
+ super.validate(this.control);
345
+ }
346
+ /**
347
+ * @internal
348
+ */
349
+ labelChanged() {
350
+ if (this._labelEl) {
351
+ __privateMethod(this, _TextField_instances, handleLabelChange_fn).call(this, this._labelEl);
144
352
  }
145
- /**
146
- * Selects all the text in the text field
147
- *
148
- * @public
149
- */
150
- select() {
151
- this.control.select();
152
- /**
153
- * The select event does not permeate the shadow DOM boundary.
154
- * This fn effectively proxies the select event,
155
- * emitting a `select` event whenever the internal
156
- * control emits a `select` event
157
- */
158
- this.$emit("select");
353
+ }
354
+ connectedCallback() {
355
+ super.connectedCallback();
356
+ this.proxy.setAttribute("type", this.type);
357
+ this.validate();
358
+ if (this.autofocus) {
359
+ defineVividComponent.DOM.queueUpdate(() => {
360
+ this.focus();
361
+ });
159
362
  }
160
- /**
161
- * Handles the internal control's `input` event
162
- * @internal
163
- */
164
- handleTextInput() {
165
- this.value = this.control.value;
363
+ if (!this.control) {
364
+ const uniqueId = this.id || generateRandomId();
365
+ const controlId = `vvd-text-field-control-${uniqueId}`;
366
+ const helperTextId = `vvd-text-field-helper-text-${uniqueId}`;
367
+ const input = document.createElement("input");
368
+ input.slot = "_control";
369
+ input.id = controlId;
370
+ input.className = safariWorkaroundClassName;
371
+ this.control = input;
372
+ input.addEventListener("input", () => {
373
+ this.handleTextInput();
374
+ });
375
+ input.addEventListener("change", () => {
376
+ this.handleChange();
377
+ });
378
+ input.addEventListener("blur", () => {
379
+ this.$emit("blur", void 0, { bubbles: false });
380
+ });
381
+ input.addEventListener("focus", () => {
382
+ this.$emit("focus", void 0, { bubbles: false });
383
+ });
384
+ this.appendChild(input);
385
+ const label = document.createElement("label");
386
+ label.slot = "_label";
387
+ label.htmlFor = controlId;
388
+ this._labelEl = label;
389
+ __privateMethod(this, _TextField_instances, handleLabelChange_fn).call(this, label);
390
+ __privateSet(this, _helperTextMirrorEl, document.createElement("div"));
391
+ __privateGet(this, _helperTextMirrorEl).id = helperTextId;
392
+ __privateGet(this, _helperTextMirrorEl).slot = "_mirrored-helper-text";
393
+ __privateMethod(this, _TextField_instances, updateMirroredHelperText_fn).call(this);
394
+ this.appendChild(__privateGet(this, _helperTextMirrorEl));
395
+ installSafariWorkaroundStyle(this);
166
396
  }
167
- /**
168
- * Change event handler for inner control.
169
- * @remarks
170
- * "Change" events are not `composable` so they will not
171
- * permeate the shadow DOM boundary. This fn effectively proxies
172
- * the change event, emitting a `change` event whenever the internal
173
- * control emits a `change` event
174
- * @internal
175
- */
176
- handleChange() {
177
- this.$emit("change");
397
+ __privateSet(this, _reflectToInput, new Reflector(this, this.control));
398
+ __privateGet(this, _reflectToInput).booleanAttribute("autofocus", "autofocus");
399
+ __privateGet(this, _reflectToInput).booleanAttribute("disabled", "disabled");
400
+ __privateGet(this, _reflectToInput).booleanAttribute("readOnly", "readonly");
401
+ __privateGet(this, _reflectToInput).booleanAttribute("required", "required");
402
+ __privateGet(this, _reflectToInput).booleanAttribute("spellcheck", "spellcheck");
403
+ __privateGet(this, _reflectToInput).attribute("list", "list");
404
+ __privateGet(this, _reflectToInput).attribute("maxlength", "maxlength");
405
+ __privateGet(this, _reflectToInput).attribute("minlength", "minlength");
406
+ __privateGet(this, _reflectToInput).attribute("pattern", "pattern");
407
+ __privateGet(this, _reflectToInput).attribute("placeholder", "placeholder");
408
+ __privateGet(this, _reflectToInput).attribute("size", "size");
409
+ __privateGet(this, _reflectToInput).attribute("autoComplete", "autocomplete");
410
+ __privateGet(this, _reflectToInput).attribute("type", "type");
411
+ __privateGet(this, _reflectToInput).attribute("inputMode", "inputmode");
412
+ __privateGet(this, _reflectToInput).attribute("ariaAtomic", "aria-atomic");
413
+ __privateGet(this, _reflectToInput).attribute("ariaBusy", "aria-busy");
414
+ __privateGet(this, _reflectToInput).attribute("ariaCurrent", "aria-current");
415
+ __privateGet(this, _reflectToInput).attribute("ariaDetails", "aria-details");
416
+ __privateGet(this, _reflectToInput).attribute("ariaDisabled", "aria-disabled");
417
+ __privateGet(this, _reflectToInput).attribute("ariaHaspopup", "aria-haspopup");
418
+ __privateGet(this, _reflectToInput).attribute("ariaHidden", "aria-hidden");
419
+ __privateGet(this, _reflectToInput).attribute("ariaInvalid", "aria-invalid");
420
+ __privateGet(this, _reflectToInput).attribute("ariaKeyshortcuts", "aria-keyshortcuts");
421
+ __privateGet(this, _reflectToInput).attribute("ariaLabel", "aria-label");
422
+ __privateGet(this, _reflectToInput).attribute("ariaLive", "aria-live");
423
+ __privateGet(this, _reflectToInput).attribute("ariaRelevant", "aria-relevant");
424
+ __privateGet(this, _reflectToInput).attribute(
425
+ "ariaRoledescription",
426
+ "aria-roledescription"
427
+ );
428
+ __privateGet(this, _reflectToInput).property("value", "value", true);
429
+ __privateMethod(this, _TextField_instances, updateHelperTextMutationObserver_fn).call(this);
430
+ }
431
+ disconnectedCallback() {
432
+ super.disconnectedCallback();
433
+ __privateGet(this, _reflectToInput).destroy();
434
+ __privateSet(this, _reflectToInput, void 0);
435
+ __privateMethod(this, _TextField_instances, updateHelperTextMutationObserver_fn).call(this);
436
+ }
437
+ focus() {
438
+ this.control?.focus();
439
+ }
440
+ /**
441
+ * @internal
442
+ */
443
+ helperTextChanged() {
444
+ __privateMethod(this, _TextField_instances, updateMirroredHelperText_fn).call(this);
445
+ }
446
+ /**
447
+ * @internal
448
+ */
449
+ _helperTextSlottedContentChanged() {
450
+ __privateMethod(this, _TextField_instances, updateMirroredHelperText_fn).call(this);
451
+ __privateMethod(this, _TextField_instances, updateHelperTextMutationObserver_fn).call(this);
452
+ }
453
+ };
454
+ _TextField_instances = new WeakSet();
455
+ handleLabelChange_fn = function(labelEl) {
456
+ if (!this.label) {
457
+ labelEl.remove();
458
+ } else {
459
+ labelEl.textContent = this.label;
460
+ if (!labelEl.isConnected) {
461
+ this.appendChild(labelEl);
178
462
  }
179
- /** {@inheritDoc (FormAssociated:interface).validate} */
180
- validate() {
181
- super.validate(this.control);
463
+ }
464
+ };
465
+ _reflectToInput = new WeakMap();
466
+ _helperTextMirrorEl = new WeakMap();
467
+ _helperTextSlotMutationObserver = new WeakMap();
468
+ updateHelperTextMutationObserver_fn = function() {
469
+ const usesHelperTextSlot = this._helperTextSlottedContent.length;
470
+ const shouldHaveMutationObserver = usesHelperTextSlot && this.isConnected;
471
+ if (shouldHaveMutationObserver && !__privateGet(this, _helperTextSlotMutationObserver)) {
472
+ __privateSet(this, _helperTextSlotMutationObserver, new MutationObserver((records) => {
473
+ if (records.some((record) => record.target !== __privateGet(this, _helperTextMirrorEl))) {
474
+ __privateMethod(this, _TextField_instances, updateMirroredHelperText_fn).call(this);
475
+ }
476
+ }));
477
+ __privateGet(this, _helperTextSlotMutationObserver).observe(this, {
478
+ subtree: true,
479
+ childList: true,
480
+ characterData: true
481
+ });
482
+ }
483
+ if (!shouldHaveMutationObserver && __privateGet(this, _helperTextSlotMutationObserver)) {
484
+ __privateGet(this, _helperTextSlotMutationObserver).disconnect();
485
+ __privateSet(this, _helperTextSlotMutationObserver, void 0);
486
+ }
487
+ };
488
+ updateMirroredHelperText_fn = function() {
489
+ let helperText = this.helperText ?? "";
490
+ if (this._helperTextSlottedContent?.length) {
491
+ helperText = this._helperTextSlottedContent.map((node) => node.innerText).join(" ");
492
+ }
493
+ if (__privateGet(this, _helperTextMirrorEl)) {
494
+ __privateGet(this, _helperTextMirrorEl).textContent = helperText;
495
+ if (helperText) {
496
+ this.control.setAttribute(
497
+ "aria-describedby",
498
+ __privateGet(this, _helperTextMirrorEl).id
499
+ );
500
+ } else {
501
+ this.control.removeAttribute("aria-describedby");
182
502
  }
503
+ }
183
504
  };
184
- index.__decorate([
185
- index.attr({ attribute: "readonly", mode: "boolean" })
186
- ], TextField$1.prototype, "readOnly", void 0);
187
- index.__decorate([
188
- index.attr({ mode: "boolean" })
189
- ], TextField$1.prototype, "autofocus", void 0);
190
- index.__decorate([
191
- index.attr
192
- ], TextField$1.prototype, "placeholder", void 0);
193
- index.__decorate([
194
- index.attr
195
- ], TextField$1.prototype, "type", void 0);
196
- index.__decorate([
197
- index.attr
198
- ], TextField$1.prototype, "list", void 0);
199
- index.__decorate([
200
- index.attr({ converter: index.nullableNumberConverter })
201
- ], TextField$1.prototype, "maxlength", void 0);
202
- index.__decorate([
203
- index.attr({ converter: index.nullableNumberConverter })
204
- ], TextField$1.prototype, "minlength", void 0);
205
- index.__decorate([
206
- index.attr
207
- ], TextField$1.prototype, "pattern", void 0);
208
- index.__decorate([
209
- index.attr({ converter: index.nullableNumberConverter })
210
- ], TextField$1.prototype, "size", void 0);
211
- index.__decorate([
212
- index.attr({ mode: "boolean" })
213
- ], TextField$1.prototype, "spellcheck", void 0);
214
- index.__decorate([
215
- index.observable
216
- ], TextField$1.prototype, "defaultSlottedNodes", void 0);
217
- /**
218
- * Includes ARIA states and properties relating to the ARIA textbox role
219
- *
220
- * @public
221
- */
505
+ __decorateClass([
506
+ defineVividComponent.attr({ attribute: "readonly", mode: "boolean" })
507
+ ], exports.TextField.prototype, "readOnly", 2);
508
+ __decorateClass([
509
+ defineVividComponent.attr({ mode: "boolean" })
510
+ ], exports.TextField.prototype, "autofocus", 2);
511
+ __decorateClass([
512
+ defineVividComponent.attr
513
+ ], exports.TextField.prototype, "placeholder", 2);
514
+ __decorateClass([
515
+ defineVividComponent.attr
516
+ ], exports.TextField.prototype, "type", 2);
517
+ __decorateClass([
518
+ defineVividComponent.attr
519
+ ], exports.TextField.prototype, "list", 2);
520
+ __decorateClass([
521
+ defineVividComponent.attr({ converter: defineVividComponent.nullableNumberConverter })
522
+ ], exports.TextField.prototype, "maxlength", 2);
523
+ __decorateClass([
524
+ defineVividComponent.attr({ converter: defineVividComponent.nullableNumberConverter })
525
+ ], exports.TextField.prototype, "minlength", 2);
526
+ __decorateClass([
527
+ defineVividComponent.attr
528
+ ], exports.TextField.prototype, "pattern", 2);
529
+ __decorateClass([
530
+ defineVividComponent.attr({ converter: defineVividComponent.nullableNumberConverter })
531
+ ], exports.TextField.prototype, "size", 2);
532
+ __decorateClass([
533
+ defineVividComponent.attr({ mode: "boolean" })
534
+ ], exports.TextField.prototype, "spellcheck", 2);
535
+ __decorateClass([
536
+ defineVividComponent.attr
537
+ ], exports.TextField.prototype, "appearance", 2);
538
+ __decorateClass([
539
+ defineVividComponent.attr
540
+ ], exports.TextField.prototype, "shape", 2);
541
+ __decorateClass([
542
+ defineVividComponent.attr
543
+ ], exports.TextField.prototype, "autoComplete", 2);
544
+ __decorateClass([
545
+ defineVividComponent.attr()
546
+ ], exports.TextField.prototype, "scale", 2);
547
+ __decorateClass([
548
+ defineVividComponent.attr({ attribute: "inputmode" })
549
+ ], exports.TextField.prototype, "inputMode", 2);
550
+ __decorateClass([
551
+ defineVividComponent.observable
552
+ ], exports.TextField.prototype, "actionItemsSlottedContent", 2);
553
+ __decorateClass([
554
+ defineVividComponent.observable
555
+ ], exports.TextField.prototype, "leadingActionItemsSlottedContent", 2);
556
+ exports.TextField = __decorateClass([
557
+ formElements.errorText,
558
+ formElements.formElements
559
+ ], exports.TextField);
222
560
  class DelegatesARIATextbox {
223
561
  }
224
562
  applyMixins.applyMixins(DelegatesARIATextbox, ariaGlobal.ARIAGlobalStatesAndProperties);
225
- applyMixins.applyMixins(TextField$1, startEnd.StartEnd, DelegatesARIATextbox);
563
+ applyMixinsWithObservables.applyMixinsWithObservables(
564
+ exports.TextField,
565
+ affix.AffixIcon,
566
+ formElements.FormElementCharCount,
567
+ formElements.FormElementHelperText,
568
+ formElements.FormElementSuccessText,
569
+ DelegatesARIATextbox
570
+ );
226
571
 
227
572
  exports.DelegatesARIATextbox = DelegatesARIATextbox;
228
- exports.TextField = TextField$1;
573
+ exports.Reflector = Reflector;