@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,225 +1,570 @@
1
- import { F as FoundationElement, D as DOM, _ as __decorate, a as attr, n as nullableNumberConverter, o as observable } from './index.js';
2
1
  import { a as applyMixins } from './apply-mixins.js';
2
+ import { O as Observable, D as DOM, a as attr, n as nullableNumberConverter, o as observable } from './defineVividComponent.js';
3
+ import { a as applyMixinsWithObservables } from './applyMixinsWithObservables.js';
3
4
  import { F as FormAssociated } from './form-associated.js';
5
+ import { V as VividElement } from './vivid-element.js';
6
+ import { m as memoizeWith } from './definition27.js';
7
+ import { e as errorText, f as formElements, F as FormElementSuccessText, a as FormElementHelperText, b as FormElementCharCount } from './form-elements.js';
4
8
  import { A as ARIAGlobalStatesAndProperties } from './aria-global.js';
5
- import { S as StartEnd } from './start-end.js';
9
+ import { A as AffixIcon } from './affix.js';
6
10
 
7
- class _TextField extends FoundationElement {
11
+ const byteToHex = [];
12
+ for (let i = 0; i < 256; ++i) {
13
+ byteToHex.push((i + 0x100).toString(16).slice(1));
8
14
  }
9
- /**
10
- * A form-associated base class for the {@link @microsoft/fast-foundation#(TextField:class)} component.
11
- *
12
- * @internal
13
- */
14
- class FormAssociatedTextField extends FormAssociated(_TextField) {
15
- constructor() {
16
- super(...arguments);
17
- this.proxy = document.createElement("input");
15
+ function unsafeStringify(arr, offset = 0) {
16
+ return (byteToHex[arr[offset + 0]] +
17
+ byteToHex[arr[offset + 1]] +
18
+ byteToHex[arr[offset + 2]] +
19
+ byteToHex[arr[offset + 3]] +
20
+ '-' +
21
+ byteToHex[arr[offset + 4]] +
22
+ byteToHex[arr[offset + 5]] +
23
+ '-' +
24
+ byteToHex[arr[offset + 6]] +
25
+ byteToHex[arr[offset + 7]] +
26
+ '-' +
27
+ byteToHex[arr[offset + 8]] +
28
+ byteToHex[arr[offset + 9]] +
29
+ '-' +
30
+ byteToHex[arr[offset + 10]] +
31
+ byteToHex[arr[offset + 11]] +
32
+ byteToHex[arr[offset + 12]] +
33
+ byteToHex[arr[offset + 13]] +
34
+ byteToHex[arr[offset + 14]] +
35
+ byteToHex[arr[offset + 15]]).toLowerCase();
36
+ }
37
+
38
+ let getRandomValues;
39
+ const rnds8 = new Uint8Array(16);
40
+ function rng() {
41
+ if (!getRandomValues) {
42
+ if (typeof crypto === 'undefined' || !crypto.getRandomValues) {
43
+ throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');
44
+ }
45
+ getRandomValues = crypto.getRandomValues.bind(crypto);
46
+ }
47
+ return getRandomValues(rnds8);
48
+ }
49
+
50
+ const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);
51
+ const native = { randomUUID };
52
+
53
+ function v4(options, buf, offset) {
54
+ if (native.randomUUID && !buf && !options) {
55
+ return native.randomUUID();
18
56
  }
57
+ options = options || {};
58
+ const rnds = options.random || (options.rng || rng)();
59
+ rnds[6] = (rnds[6] & 0x0f) | 0x40;
60
+ rnds[8] = (rnds[8] & 0x3f) | 0x80;
61
+ return unsafeStringify(rnds);
19
62
  }
20
63
 
21
- /**
22
- * Text field sub-types
23
- * @public
24
- */
64
+ const generateRandomId = () => v4();
65
+
66
+ class Reflector {
67
+ #reflectedProperties = /* @__PURE__ */ new Map();
68
+ #source;
69
+ #target;
70
+ constructor(source, target) {
71
+ this.#source = source;
72
+ this.#target = target;
73
+ }
74
+ attribute(propertyName, attributeName) {
75
+ this.#addReflectedProperty(propertyName, {
76
+ type: "attribute",
77
+ destination: attributeName
78
+ });
79
+ }
80
+ booleanAttribute(propertyName, attributeName) {
81
+ this.#addReflectedProperty(propertyName, {
82
+ type: "boolean-attribute",
83
+ destination: attributeName
84
+ });
85
+ }
86
+ property(propertyName, targetProperty, skipIfEqual = false) {
87
+ this.#addReflectedProperty(propertyName, {
88
+ type: "property",
89
+ destination: targetProperty,
90
+ skipIfEqual
91
+ });
92
+ }
93
+ destroy() {
94
+ const notifier = Observable.getNotifier(this.#source);
95
+ for (const prop of this.#reflectedProperties.keys()) {
96
+ notifier.unsubscribe(this.#propertyChangeHandler, prop);
97
+ }
98
+ this.#reflectedProperties.clear();
99
+ }
100
+ #addReflectedProperty(name, reflected) {
101
+ this.#reflectedProperties.set(name, reflected);
102
+ const notifier = Observable.getNotifier(this.#source);
103
+ notifier.subscribe(this.#propertyChangeHandler, name);
104
+ this.#propertyChangeHandler.handleChange(this.#source, name);
105
+ }
106
+ #propertyChangeHandler = {
107
+ handleChange: (source, propertyName) => {
108
+ const reflectedProperty = this.#reflectedProperties.get(propertyName);
109
+ const value = source[propertyName];
110
+ switch (reflectedProperty.type) {
111
+ case "boolean-attribute":
112
+ DOM.setBooleanAttribute(
113
+ this.#target,
114
+ reflectedProperty.destination,
115
+ Boolean(value)
116
+ );
117
+ break;
118
+ case "attribute":
119
+ DOM.setAttribute(this.#target, reflectedProperty.destination, value);
120
+ break;
121
+ case "property":
122
+ if (reflectedProperty.skipIfEqual && this.#target[reflectedProperty.destination] === value) {
123
+ return;
124
+ }
125
+ this.#target[reflectedProperty.destination] = value;
126
+ break;
127
+ }
128
+ }
129
+ };
130
+ }
131
+
132
+ class _TextField extends VividElement {
133
+ }
134
+ class FormAssociatedTextField extends FormAssociated(_TextField) {
135
+ constructor() {
136
+ super(...arguments);
137
+ this.proxy = document.createElement("input");
138
+ }
139
+ }
140
+
141
+ var __defProp = Object.defineProperty;
142
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
143
+ var __typeError = (msg) => {
144
+ throw TypeError(msg);
145
+ };
146
+ var __decorateClass = (decorators, target, key, kind) => {
147
+ var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
148
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
149
+ if (decorator = decorators[i])
150
+ result = (kind ? decorator(target, key, result) : decorator(result)) || result;
151
+ if (kind && result) __defProp(target, key, result);
152
+ return result;
153
+ };
154
+ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
155
+ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
156
+ 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);
157
+ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), member.set(obj, value), value);
158
+ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
159
+ var _TextField_instances, handleLabelChange_fn, _reflectToInput, _helperTextMirrorEl, _helperTextSlotMutationObserver, updateHelperTextMutationObserver_fn, updateMirroredHelperText_fn;
25
160
  const TextFieldType = {
161
+ /**
162
+ * An email TextField
163
+ */
164
+ email: "email",
165
+ /**
166
+ * A password TextField
167
+ */
168
+ password: "password",
169
+ /**
170
+ * A telephone TextField
171
+ */
172
+ tel: "tel",
173
+ /**
174
+ * A text TextField
175
+ */
176
+ text: "text",
177
+ /**
178
+ * A URL TextField
179
+ */
180
+ url: "url"
181
+ };
182
+ const safariWorkaroundClassName = "_vvd-3-text-field-safari-workaround";
183
+ const getSafariWorkaroundStyleSheet = memoizeWith(
184
+ () => "",
185
+ () => {
186
+ const styleSheet = new CSSStyleSheet();
187
+ const supportsReplaceSync = "replaceSync" in styleSheet;
188
+ if (supportsReplaceSync) {
189
+ styleSheet.replaceSync(`
190
+ .${safariWorkaroundClassName}::placeholder {
191
+ opacity: 1 !important;
192
+ -webkit-text-fill-color: var(--_low-ink-color) !important;
193
+ }`);
194
+ }
195
+ return styleSheet;
196
+ }
197
+ );
198
+ const installSafariWorkaroundStyle = (forElement) => {
199
+ const root = forElement.getRootNode();
200
+ const workaroundStyleSheet = getSafariWorkaroundStyleSheet();
201
+ const supportsAdoptedStyleSheets = "adoptedStyleSheets" in root;
202
+ if (!supportsAdoptedStyleSheets) {
203
+ return;
204
+ }
205
+ if (!root.adoptedStyleSheets.includes(workaroundStyleSheet)) {
206
+ root.adoptedStyleSheets = [
207
+ ...root.adoptedStyleSheets,
208
+ workaroundStyleSheet
209
+ ];
210
+ }
211
+ };
212
+ let TextField = class extends FormAssociatedTextField {
213
+ constructor() {
214
+ super(...arguments);
215
+ __privateAdd(this, _TextField_instances);
216
+ // eslint-disable-next-line @nrwl/nx/workspace/no-attribute-default-value
217
+ this.type = TextFieldType.text;
26
218
  /**
27
- * An email TextField
28
- */
29
- email: "email",
30
- /**
31
- * A password TextField
32
- */
33
- password: "password",
34
- /**
35
- * A telephone TextField
36
- */
37
- tel: "tel",
38
- /**
39
- * A text TextField
40
- */
41
- text: "text",
42
- /**
43
- * A URL TextField
219
+ * @internal
44
220
  */
45
- url: "url",
46
- };
47
-
48
- /**
49
- * A Text Field Custom HTML Element.
50
- * Based largely on the {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/text | <input type="text" /> element }.
51
- *
52
- * @slot start - Content which can be provided before the number field input
53
- * @slot end - Content which can be provided after the number field input
54
- * @slot - The default slot for the label
55
- * @csspart label - The label
56
- * @csspart root - The element wrapping the control, including start and end slots
57
- * @csspart control - The text field element
58
- * @fires change - Fires a custom 'change' event when the value has changed
59
- *
60
- * @public
61
- */
62
- let TextField$1 = class TextField extends FormAssociatedTextField {
63
- constructor() {
64
- super(...arguments);
65
- /**
66
- * Allows setting a type or mode of text.
67
- * @public
68
- * @remarks
69
- * HTML Attribute: type
70
- */
71
- this.type = TextFieldType.text;
72
- }
73
- readOnlyChanged() {
74
- if (this.proxy instanceof HTMLInputElement) {
75
- this.proxy.readOnly = this.readOnly;
76
- this.validate();
77
- }
221
+ this._labelEl = null;
222
+ __privateAdd(this, _reflectToInput);
223
+ __privateAdd(this, _helperTextMirrorEl);
224
+ __privateAdd(this, _helperTextSlotMutationObserver);
225
+ }
226
+ /**
227
+ * @internal
228
+ */
229
+ readOnlyChanged() {
230
+ if (this.proxy instanceof HTMLInputElement) {
231
+ this.proxy.readOnly = this.readOnly;
232
+ this.validate();
78
233
  }
79
- autofocusChanged() {
80
- if (this.proxy instanceof HTMLInputElement) {
81
- this.proxy.autofocus = this.autofocus;
82
- this.validate();
83
- }
234
+ }
235
+ /**
236
+ * @internal
237
+ */
238
+ autofocusChanged() {
239
+ if (this.proxy instanceof HTMLInputElement) {
240
+ this.proxy.autofocus = this.autofocus;
241
+ this.validate();
84
242
  }
85
- placeholderChanged() {
86
- if (this.proxy instanceof HTMLInputElement) {
87
- this.proxy.placeholder = this.placeholder;
88
- }
243
+ }
244
+ /**
245
+ * @internal
246
+ */
247
+ placeholderChanged() {
248
+ if (this.proxy instanceof HTMLInputElement) {
249
+ this.proxy.placeholder = this.placeholder;
89
250
  }
90
- typeChanged() {
91
- if (this.proxy instanceof HTMLInputElement) {
92
- this.proxy.type = this.type;
93
- this.validate();
94
- }
251
+ }
252
+ /**
253
+ * @internal
254
+ */
255
+ typeChanged() {
256
+ if (this.proxy instanceof HTMLInputElement) {
257
+ this.proxy.type = this.type;
258
+ this.validate();
95
259
  }
96
- listChanged() {
97
- if (this.proxy instanceof HTMLInputElement) {
98
- this.proxy.setAttribute("list", this.list);
99
- this.validate();
100
- }
260
+ }
261
+ /**
262
+ * @internal
263
+ */
264
+ listChanged() {
265
+ if (this.proxy instanceof HTMLInputElement) {
266
+ this.proxy.setAttribute("list", this.list);
267
+ this.validate();
101
268
  }
102
- maxlengthChanged() {
103
- if (this.proxy instanceof HTMLInputElement) {
104
- this.proxy.maxLength = this.maxlength;
105
- this.validate();
106
- }
269
+ }
270
+ /**
271
+ * @internal
272
+ */
273
+ maxlengthChanged() {
274
+ if (this.proxy instanceof HTMLInputElement) {
275
+ this.proxy.maxLength = this.maxlength;
276
+ this.validate();
107
277
  }
108
- minlengthChanged() {
109
- if (this.proxy instanceof HTMLInputElement) {
110
- this.proxy.minLength = this.minlength;
111
- this.validate();
112
- }
278
+ }
279
+ /**
280
+ * @internal
281
+ */
282
+ minlengthChanged() {
283
+ if (this.proxy instanceof HTMLInputElement) {
284
+ this.proxy.minLength = this.minlength;
285
+ this.validate();
113
286
  }
114
- patternChanged() {
115
- if (this.proxy instanceof HTMLInputElement) {
116
- this.proxy.pattern = this.pattern;
117
- this.validate();
118
- }
287
+ }
288
+ /**
289
+ * @internal
290
+ */
291
+ patternChanged() {
292
+ if (this.proxy instanceof HTMLInputElement) {
293
+ this.proxy.pattern = this.pattern;
294
+ this.validate();
119
295
  }
120
- sizeChanged() {
121
- if (this.proxy instanceof HTMLInputElement) {
122
- this.proxy.size = this.size;
123
- }
296
+ }
297
+ /**
298
+ * @internal
299
+ */
300
+ sizeChanged() {
301
+ if (this.proxy instanceof HTMLInputElement) {
302
+ this.proxy.size = this.size;
124
303
  }
125
- spellcheckChanged() {
126
- if (this.proxy instanceof HTMLInputElement) {
127
- this.proxy.spellcheck = this.spellcheck;
128
- }
304
+ }
305
+ /**
306
+ * @internal
307
+ */
308
+ spellcheckChanged() {
309
+ if (this.proxy instanceof HTMLInputElement) {
310
+ this.proxy.spellcheck = this.spellcheck;
129
311
  }
130
- /**
131
- * @internal
132
- */
133
- connectedCallback() {
134
- super.connectedCallback();
135
- this.proxy.setAttribute("type", this.type);
136
- this.validate();
137
- if (this.autofocus) {
138
- DOM.queueUpdate(() => {
139
- this.focus();
140
- });
141
- }
312
+ }
313
+ /**
314
+ * Selects all the text in the text field
315
+ *
316
+ * @public
317
+ */
318
+ select() {
319
+ this.control.select();
320
+ }
321
+ /**
322
+ * Handles the internal control's `input` event
323
+ * @internal
324
+ */
325
+ handleTextInput() {
326
+ this.value = this.control.value;
327
+ }
328
+ /**
329
+ * Change event handler for inner control.
330
+ * @remarks
331
+ * "Change" events are not `composable` so they will not
332
+ * permeate the shadow DOM boundary. This fn effectively proxies
333
+ * the change event, emitting a `change` event whenever the internal
334
+ * control emits a `change` event
335
+ * @internal
336
+ */
337
+ handleChange() {
338
+ this.$emit("change");
339
+ }
340
+ /** {@inheritDoc (FormAssociated:interface).validate} */
341
+ validate() {
342
+ super.validate(this.control);
343
+ }
344
+ /**
345
+ * @internal
346
+ */
347
+ labelChanged() {
348
+ if (this._labelEl) {
349
+ __privateMethod(this, _TextField_instances, handleLabelChange_fn).call(this, this._labelEl);
142
350
  }
143
- /**
144
- * Selects all the text in the text field
145
- *
146
- * @public
147
- */
148
- select() {
149
- this.control.select();
150
- /**
151
- * The select event does not permeate the shadow DOM boundary.
152
- * This fn effectively proxies the select event,
153
- * emitting a `select` event whenever the internal
154
- * control emits a `select` event
155
- */
156
- this.$emit("select");
351
+ }
352
+ connectedCallback() {
353
+ super.connectedCallback();
354
+ this.proxy.setAttribute("type", this.type);
355
+ this.validate();
356
+ if (this.autofocus) {
357
+ DOM.queueUpdate(() => {
358
+ this.focus();
359
+ });
157
360
  }
158
- /**
159
- * Handles the internal control's `input` event
160
- * @internal
161
- */
162
- handleTextInput() {
163
- this.value = this.control.value;
361
+ if (!this.control) {
362
+ const uniqueId = this.id || generateRandomId();
363
+ const controlId = `vvd-text-field-control-${uniqueId}`;
364
+ const helperTextId = `vvd-text-field-helper-text-${uniqueId}`;
365
+ const input = document.createElement("input");
366
+ input.slot = "_control";
367
+ input.id = controlId;
368
+ input.className = safariWorkaroundClassName;
369
+ this.control = input;
370
+ input.addEventListener("input", () => {
371
+ this.handleTextInput();
372
+ });
373
+ input.addEventListener("change", () => {
374
+ this.handleChange();
375
+ });
376
+ input.addEventListener("blur", () => {
377
+ this.$emit("blur", void 0, { bubbles: false });
378
+ });
379
+ input.addEventListener("focus", () => {
380
+ this.$emit("focus", void 0, { bubbles: false });
381
+ });
382
+ this.appendChild(input);
383
+ const label = document.createElement("label");
384
+ label.slot = "_label";
385
+ label.htmlFor = controlId;
386
+ this._labelEl = label;
387
+ __privateMethod(this, _TextField_instances, handleLabelChange_fn).call(this, label);
388
+ __privateSet(this, _helperTextMirrorEl, document.createElement("div"));
389
+ __privateGet(this, _helperTextMirrorEl).id = helperTextId;
390
+ __privateGet(this, _helperTextMirrorEl).slot = "_mirrored-helper-text";
391
+ __privateMethod(this, _TextField_instances, updateMirroredHelperText_fn).call(this);
392
+ this.appendChild(__privateGet(this, _helperTextMirrorEl));
393
+ installSafariWorkaroundStyle(this);
164
394
  }
165
- /**
166
- * Change event handler for inner control.
167
- * @remarks
168
- * "Change" events are not `composable` so they will not
169
- * permeate the shadow DOM boundary. This fn effectively proxies
170
- * the change event, emitting a `change` event whenever the internal
171
- * control emits a `change` event
172
- * @internal
173
- */
174
- handleChange() {
175
- this.$emit("change");
395
+ __privateSet(this, _reflectToInput, new Reflector(this, this.control));
396
+ __privateGet(this, _reflectToInput).booleanAttribute("autofocus", "autofocus");
397
+ __privateGet(this, _reflectToInput).booleanAttribute("disabled", "disabled");
398
+ __privateGet(this, _reflectToInput).booleanAttribute("readOnly", "readonly");
399
+ __privateGet(this, _reflectToInput).booleanAttribute("required", "required");
400
+ __privateGet(this, _reflectToInput).booleanAttribute("spellcheck", "spellcheck");
401
+ __privateGet(this, _reflectToInput).attribute("list", "list");
402
+ __privateGet(this, _reflectToInput).attribute("maxlength", "maxlength");
403
+ __privateGet(this, _reflectToInput).attribute("minlength", "minlength");
404
+ __privateGet(this, _reflectToInput).attribute("pattern", "pattern");
405
+ __privateGet(this, _reflectToInput).attribute("placeholder", "placeholder");
406
+ __privateGet(this, _reflectToInput).attribute("size", "size");
407
+ __privateGet(this, _reflectToInput).attribute("autoComplete", "autocomplete");
408
+ __privateGet(this, _reflectToInput).attribute("type", "type");
409
+ __privateGet(this, _reflectToInput).attribute("inputMode", "inputmode");
410
+ __privateGet(this, _reflectToInput).attribute("ariaAtomic", "aria-atomic");
411
+ __privateGet(this, _reflectToInput).attribute("ariaBusy", "aria-busy");
412
+ __privateGet(this, _reflectToInput).attribute("ariaCurrent", "aria-current");
413
+ __privateGet(this, _reflectToInput).attribute("ariaDetails", "aria-details");
414
+ __privateGet(this, _reflectToInput).attribute("ariaDisabled", "aria-disabled");
415
+ __privateGet(this, _reflectToInput).attribute("ariaHaspopup", "aria-haspopup");
416
+ __privateGet(this, _reflectToInput).attribute("ariaHidden", "aria-hidden");
417
+ __privateGet(this, _reflectToInput).attribute("ariaInvalid", "aria-invalid");
418
+ __privateGet(this, _reflectToInput).attribute("ariaKeyshortcuts", "aria-keyshortcuts");
419
+ __privateGet(this, _reflectToInput).attribute("ariaLabel", "aria-label");
420
+ __privateGet(this, _reflectToInput).attribute("ariaLive", "aria-live");
421
+ __privateGet(this, _reflectToInput).attribute("ariaRelevant", "aria-relevant");
422
+ __privateGet(this, _reflectToInput).attribute(
423
+ "ariaRoledescription",
424
+ "aria-roledescription"
425
+ );
426
+ __privateGet(this, _reflectToInput).property("value", "value", true);
427
+ __privateMethod(this, _TextField_instances, updateHelperTextMutationObserver_fn).call(this);
428
+ }
429
+ disconnectedCallback() {
430
+ super.disconnectedCallback();
431
+ __privateGet(this, _reflectToInput).destroy();
432
+ __privateSet(this, _reflectToInput, void 0);
433
+ __privateMethod(this, _TextField_instances, updateHelperTextMutationObserver_fn).call(this);
434
+ }
435
+ focus() {
436
+ this.control?.focus();
437
+ }
438
+ /**
439
+ * @internal
440
+ */
441
+ helperTextChanged() {
442
+ __privateMethod(this, _TextField_instances, updateMirroredHelperText_fn).call(this);
443
+ }
444
+ /**
445
+ * @internal
446
+ */
447
+ _helperTextSlottedContentChanged() {
448
+ __privateMethod(this, _TextField_instances, updateMirroredHelperText_fn).call(this);
449
+ __privateMethod(this, _TextField_instances, updateHelperTextMutationObserver_fn).call(this);
450
+ }
451
+ };
452
+ _TextField_instances = new WeakSet();
453
+ handleLabelChange_fn = function(labelEl) {
454
+ if (!this.label) {
455
+ labelEl.remove();
456
+ } else {
457
+ labelEl.textContent = this.label;
458
+ if (!labelEl.isConnected) {
459
+ this.appendChild(labelEl);
176
460
  }
177
- /** {@inheritDoc (FormAssociated:interface).validate} */
178
- validate() {
179
- super.validate(this.control);
461
+ }
462
+ };
463
+ _reflectToInput = new WeakMap();
464
+ _helperTextMirrorEl = new WeakMap();
465
+ _helperTextSlotMutationObserver = new WeakMap();
466
+ updateHelperTextMutationObserver_fn = function() {
467
+ const usesHelperTextSlot = this._helperTextSlottedContent.length;
468
+ const shouldHaveMutationObserver = usesHelperTextSlot && this.isConnected;
469
+ if (shouldHaveMutationObserver && !__privateGet(this, _helperTextSlotMutationObserver)) {
470
+ __privateSet(this, _helperTextSlotMutationObserver, new MutationObserver((records) => {
471
+ if (records.some((record) => record.target !== __privateGet(this, _helperTextMirrorEl))) {
472
+ __privateMethod(this, _TextField_instances, updateMirroredHelperText_fn).call(this);
473
+ }
474
+ }));
475
+ __privateGet(this, _helperTextSlotMutationObserver).observe(this, {
476
+ subtree: true,
477
+ childList: true,
478
+ characterData: true
479
+ });
480
+ }
481
+ if (!shouldHaveMutationObserver && __privateGet(this, _helperTextSlotMutationObserver)) {
482
+ __privateGet(this, _helperTextSlotMutationObserver).disconnect();
483
+ __privateSet(this, _helperTextSlotMutationObserver, void 0);
484
+ }
485
+ };
486
+ updateMirroredHelperText_fn = function() {
487
+ let helperText = this.helperText ?? "";
488
+ if (this._helperTextSlottedContent?.length) {
489
+ helperText = this._helperTextSlottedContent.map((node) => node.innerText).join(" ");
490
+ }
491
+ if (__privateGet(this, _helperTextMirrorEl)) {
492
+ __privateGet(this, _helperTextMirrorEl).textContent = helperText;
493
+ if (helperText) {
494
+ this.control.setAttribute(
495
+ "aria-describedby",
496
+ __privateGet(this, _helperTextMirrorEl).id
497
+ );
498
+ } else {
499
+ this.control.removeAttribute("aria-describedby");
180
500
  }
501
+ }
181
502
  };
182
- __decorate([
183
- attr({ attribute: "readonly", mode: "boolean" })
184
- ], TextField$1.prototype, "readOnly", void 0);
185
- __decorate([
186
- attr({ mode: "boolean" })
187
- ], TextField$1.prototype, "autofocus", void 0);
188
- __decorate([
189
- attr
190
- ], TextField$1.prototype, "placeholder", void 0);
191
- __decorate([
192
- attr
193
- ], TextField$1.prototype, "type", void 0);
194
- __decorate([
195
- attr
196
- ], TextField$1.prototype, "list", void 0);
197
- __decorate([
198
- attr({ converter: nullableNumberConverter })
199
- ], TextField$1.prototype, "maxlength", void 0);
200
- __decorate([
201
- attr({ converter: nullableNumberConverter })
202
- ], TextField$1.prototype, "minlength", void 0);
203
- __decorate([
204
- attr
205
- ], TextField$1.prototype, "pattern", void 0);
206
- __decorate([
207
- attr({ converter: nullableNumberConverter })
208
- ], TextField$1.prototype, "size", void 0);
209
- __decorate([
210
- attr({ mode: "boolean" })
211
- ], TextField$1.prototype, "spellcheck", void 0);
212
- __decorate([
213
- observable
214
- ], TextField$1.prototype, "defaultSlottedNodes", void 0);
215
- /**
216
- * Includes ARIA states and properties relating to the ARIA textbox role
217
- *
218
- * @public
219
- */
503
+ __decorateClass([
504
+ attr({ attribute: "readonly", mode: "boolean" })
505
+ ], TextField.prototype, "readOnly", 2);
506
+ __decorateClass([
507
+ attr({ mode: "boolean" })
508
+ ], TextField.prototype, "autofocus", 2);
509
+ __decorateClass([
510
+ attr
511
+ ], TextField.prototype, "placeholder", 2);
512
+ __decorateClass([
513
+ attr
514
+ ], TextField.prototype, "type", 2);
515
+ __decorateClass([
516
+ attr
517
+ ], TextField.prototype, "list", 2);
518
+ __decorateClass([
519
+ attr({ converter: nullableNumberConverter })
520
+ ], TextField.prototype, "maxlength", 2);
521
+ __decorateClass([
522
+ attr({ converter: nullableNumberConverter })
523
+ ], TextField.prototype, "minlength", 2);
524
+ __decorateClass([
525
+ attr
526
+ ], TextField.prototype, "pattern", 2);
527
+ __decorateClass([
528
+ attr({ converter: nullableNumberConverter })
529
+ ], TextField.prototype, "size", 2);
530
+ __decorateClass([
531
+ attr({ mode: "boolean" })
532
+ ], TextField.prototype, "spellcheck", 2);
533
+ __decorateClass([
534
+ attr
535
+ ], TextField.prototype, "appearance", 2);
536
+ __decorateClass([
537
+ attr
538
+ ], TextField.prototype, "shape", 2);
539
+ __decorateClass([
540
+ attr
541
+ ], TextField.prototype, "autoComplete", 2);
542
+ __decorateClass([
543
+ attr()
544
+ ], TextField.prototype, "scale", 2);
545
+ __decorateClass([
546
+ attr({ attribute: "inputmode" })
547
+ ], TextField.prototype, "inputMode", 2);
548
+ __decorateClass([
549
+ observable
550
+ ], TextField.prototype, "actionItemsSlottedContent", 2);
551
+ __decorateClass([
552
+ observable
553
+ ], TextField.prototype, "leadingActionItemsSlottedContent", 2);
554
+ TextField = __decorateClass([
555
+ errorText,
556
+ formElements
557
+ ], TextField);
220
558
  class DelegatesARIATextbox {
221
559
  }
222
560
  applyMixins(DelegatesARIATextbox, ARIAGlobalStatesAndProperties);
223
- applyMixins(TextField$1, StartEnd, DelegatesARIATextbox);
561
+ applyMixinsWithObservables(
562
+ TextField,
563
+ AffixIcon,
564
+ FormElementCharCount,
565
+ FormElementHelperText,
566
+ FormElementSuccessText,
567
+ DelegatesARIATextbox
568
+ );
224
569
 
225
- export { DelegatesARIATextbox as D, TextField$1 as T };
570
+ export { DelegatesARIATextbox as D, Reflector as R, TextField as T };