@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
@@ -0,0 +1,381 @@
1
+ import { a as attr, o as observable, e as emptyArray, D as DOM } from './defineVividComponent.js';
2
+ import { k as keyEnter } from './key-codes2.js';
3
+
4
+ const proxySlotName = "form-associated-proxy";
5
+ const ElementInternalsKey = "ElementInternals";
6
+ /**
7
+ * @alpha
8
+ */
9
+ const supportsElementInternals = ElementInternalsKey in window &&
10
+ "setFormValue" in window[ElementInternalsKey].prototype;
11
+ const InternalsMap = new WeakMap();
12
+ /**
13
+ * Base function for providing Custom Element Form Association.
14
+ *
15
+ * @alpha
16
+ */
17
+ function FormAssociated(BaseCtor) {
18
+ const C = class extends BaseCtor {
19
+ constructor(...args) {
20
+ super(...args);
21
+ /**
22
+ * Track whether the value has been changed from the initial value
23
+ */
24
+ this.dirtyValue = false;
25
+ /**
26
+ * Sets the element's disabled state. A disabled element will not be included during form submission.
27
+ *
28
+ * @remarks
29
+ * HTML Attribute: disabled
30
+ */
31
+ this.disabled = false;
32
+ /**
33
+ * These are events that are still fired by the proxy
34
+ * element based on user / programmatic interaction.
35
+ *
36
+ * The proxy implementation should be transparent to
37
+ * the app author, so block these events from emitting.
38
+ */
39
+ this.proxyEventsToBlock = ["change", "click"];
40
+ this.proxyInitialized = false;
41
+ this.required = false;
42
+ this.initialValue = this.initialValue || "";
43
+ if (!this.elementInternals) {
44
+ // When elementInternals is not supported, formResetCallback is
45
+ // bound to an event listener, so ensure the handler's `this`
46
+ // context is correct.
47
+ this.formResetCallback = this.formResetCallback.bind(this);
48
+ }
49
+ }
50
+ /**
51
+ * Must evaluate to true to enable elementInternals.
52
+ * Feature detects API support and resolve respectively
53
+ *
54
+ * @internal
55
+ */
56
+ static get formAssociated() {
57
+ return supportsElementInternals;
58
+ }
59
+ /**
60
+ * Returns the validity state of the element
61
+ *
62
+ * @alpha
63
+ */
64
+ get validity() {
65
+ return this.elementInternals
66
+ ? this.elementInternals.validity
67
+ : this.proxy.validity;
68
+ }
69
+ /**
70
+ * Retrieve a reference to the associated form.
71
+ * Returns null if not associated to any form.
72
+ *
73
+ * @alpha
74
+ */
75
+ get form() {
76
+ return this.elementInternals ? this.elementInternals.form : this.proxy.form;
77
+ }
78
+ /**
79
+ * Retrieve the localized validation message,
80
+ * or custom validation message if set.
81
+ *
82
+ * @alpha
83
+ */
84
+ get validationMessage() {
85
+ return this.elementInternals
86
+ ? this.elementInternals.validationMessage
87
+ : this.proxy.validationMessage;
88
+ }
89
+ /**
90
+ * Whether the element will be validated when the
91
+ * form is submitted
92
+ */
93
+ get willValidate() {
94
+ return this.elementInternals
95
+ ? this.elementInternals.willValidate
96
+ : this.proxy.willValidate;
97
+ }
98
+ /**
99
+ * A reference to all associated label elements
100
+ */
101
+ get labels() {
102
+ if (this.elementInternals) {
103
+ return Object.freeze(Array.from(this.elementInternals.labels));
104
+ }
105
+ else if (this.proxy instanceof HTMLElement &&
106
+ this.proxy.ownerDocument &&
107
+ this.id) {
108
+ // Labels associated by wrapping the element: <label><custom-element></custom-element></label>
109
+ const parentLabels = this.proxy.labels;
110
+ // Labels associated using the `for` attribute
111
+ const forLabels = Array.from(this.proxy.getRootNode().querySelectorAll(`[for='${this.id}']`));
112
+ const labels = parentLabels
113
+ ? forLabels.concat(Array.from(parentLabels))
114
+ : forLabels;
115
+ return Object.freeze(labels);
116
+ }
117
+ else {
118
+ return emptyArray;
119
+ }
120
+ }
121
+ /**
122
+ * Invoked when the `value` property changes
123
+ * @param previous - the previous value
124
+ * @param next - the new value
125
+ *
126
+ * @remarks
127
+ * If elements extending `FormAssociated` implement a `valueChanged` method
128
+ * They must be sure to invoke `super.valueChanged(previous, next)` to ensure
129
+ * proper functioning of `FormAssociated`
130
+ */
131
+ valueChanged(previous, next) {
132
+ this.dirtyValue = true;
133
+ if (this.proxy instanceof HTMLElement) {
134
+ this.proxy.value = this.value;
135
+ }
136
+ this.currentValue = this.value;
137
+ this.setFormValue(this.value);
138
+ this.validate();
139
+ }
140
+ currentValueChanged() {
141
+ this.value = this.currentValue;
142
+ }
143
+ /**
144
+ * Invoked when the `initialValue` property changes
145
+ *
146
+ * @param previous - the previous value
147
+ * @param next - the new value
148
+ *
149
+ * @remarks
150
+ * If elements extending `FormAssociated` implement a `initialValueChanged` method
151
+ * They must be sure to invoke `super.initialValueChanged(previous, next)` to ensure
152
+ * proper functioning of `FormAssociated`
153
+ */
154
+ initialValueChanged(previous, next) {
155
+ // If the value is clean and the component is connected to the DOM
156
+ // then set value equal to the attribute value.
157
+ if (!this.dirtyValue) {
158
+ this.value = this.initialValue;
159
+ this.dirtyValue = false;
160
+ }
161
+ }
162
+ /**
163
+ * Invoked when the `disabled` property changes
164
+ *
165
+ * @param previous - the previous value
166
+ * @param next - the new value
167
+ *
168
+ * @remarks
169
+ * If elements extending `FormAssociated` implement a `disabledChanged` method
170
+ * They must be sure to invoke `super.disabledChanged(previous, next)` to ensure
171
+ * proper functioning of `FormAssociated`
172
+ */
173
+ disabledChanged(previous, next) {
174
+ if (this.proxy instanceof HTMLElement) {
175
+ this.proxy.disabled = this.disabled;
176
+ }
177
+ DOM.queueUpdate(() => this.classList.toggle("disabled", this.disabled));
178
+ }
179
+ /**
180
+ * Invoked when the `name` property changes
181
+ *
182
+ * @param previous - the previous value
183
+ * @param next - the new value
184
+ *
185
+ * @remarks
186
+ * If elements extending `FormAssociated` implement a `nameChanged` method
187
+ * They must be sure to invoke `super.nameChanged(previous, next)` to ensure
188
+ * proper functioning of `FormAssociated`
189
+ */
190
+ nameChanged(previous, next) {
191
+ if (this.proxy instanceof HTMLElement) {
192
+ this.proxy.name = this.name;
193
+ }
194
+ }
195
+ /**
196
+ * Invoked when the `required` property changes
197
+ *
198
+ * @param previous - the previous value
199
+ * @param next - the new value
200
+ *
201
+ * @remarks
202
+ * If elements extending `FormAssociated` implement a `requiredChanged` method
203
+ * They must be sure to invoke `super.requiredChanged(previous, next)` to ensure
204
+ * proper functioning of `FormAssociated`
205
+ */
206
+ requiredChanged(prev, next) {
207
+ if (this.proxy instanceof HTMLElement) {
208
+ this.proxy.required = this.required;
209
+ }
210
+ DOM.queueUpdate(() => this.classList.toggle("required", this.required));
211
+ this.validate();
212
+ }
213
+ /**
214
+ * The element internals object. Will only exist
215
+ * in browsers supporting the attachInternals API
216
+ */
217
+ get elementInternals() {
218
+ if (!supportsElementInternals) {
219
+ return null;
220
+ }
221
+ let internals = InternalsMap.get(this);
222
+ if (!internals) {
223
+ internals = this.attachInternals();
224
+ InternalsMap.set(this, internals);
225
+ }
226
+ return internals;
227
+ }
228
+ /**
229
+ * @internal
230
+ */
231
+ connectedCallback() {
232
+ super.connectedCallback();
233
+ this.addEventListener("keypress", this._keypressHandler);
234
+ if (!this.value) {
235
+ this.value = this.initialValue;
236
+ this.dirtyValue = false;
237
+ }
238
+ if (!this.elementInternals) {
239
+ this.attachProxy();
240
+ if (this.form) {
241
+ this.form.addEventListener("reset", this.formResetCallback);
242
+ }
243
+ }
244
+ }
245
+ /**
246
+ * @internal
247
+ */
248
+ disconnectedCallback() {
249
+ super.disconnectedCallback();
250
+ this.proxyEventsToBlock.forEach(name => this.proxy.removeEventListener(name, this.stopPropagation));
251
+ if (!this.elementInternals && this.form) {
252
+ this.form.removeEventListener("reset", this.formResetCallback);
253
+ }
254
+ }
255
+ /**
256
+ * Return the current validity of the element.
257
+ */
258
+ checkValidity() {
259
+ return this.elementInternals
260
+ ? this.elementInternals.checkValidity()
261
+ : this.proxy.checkValidity();
262
+ }
263
+ /**
264
+ * Return the current validity of the element.
265
+ * If false, fires an invalid event at the element.
266
+ */
267
+ reportValidity() {
268
+ return this.elementInternals
269
+ ? this.elementInternals.reportValidity()
270
+ : this.proxy.reportValidity();
271
+ }
272
+ /**
273
+ * Set the validity of the control. In cases when the elementInternals object is not
274
+ * available (and the proxy element is used to report validity), this function will
275
+ * do nothing unless a message is provided, at which point the setCustomValidity method
276
+ * of the proxy element will be invoked with the provided message.
277
+ * @param flags - Validity flags
278
+ * @param message - Optional message to supply
279
+ * @param anchor - Optional element used by UA to display an interactive validation UI
280
+ */
281
+ setValidity(flags, message, anchor) {
282
+ if (this.elementInternals) {
283
+ this.elementInternals.setValidity(flags, message, anchor);
284
+ }
285
+ else if (typeof message === "string") {
286
+ this.proxy.setCustomValidity(message);
287
+ }
288
+ }
289
+ /**
290
+ * Invoked when a connected component's form or fieldset has its disabled
291
+ * state changed.
292
+ * @param disabled - the disabled value of the form / fieldset
293
+ */
294
+ formDisabledCallback(disabled) {
295
+ this.disabled = disabled;
296
+ }
297
+ formResetCallback() {
298
+ this.value = this.initialValue;
299
+ this.dirtyValue = false;
300
+ }
301
+ /**
302
+ * Attach the proxy element to the DOM
303
+ */
304
+ attachProxy() {
305
+ var _a;
306
+ if (!this.proxyInitialized) {
307
+ this.proxyInitialized = true;
308
+ this.proxy.style.display = "none";
309
+ this.proxyEventsToBlock.forEach(name => this.proxy.addEventListener(name, this.stopPropagation));
310
+ // These are typically mapped to the proxy during
311
+ // property change callbacks, but during initialization
312
+ // on the initial call of the callback, the proxy is
313
+ // still undefined. We should find a better way to address this.
314
+ this.proxy.disabled = this.disabled;
315
+ this.proxy.required = this.required;
316
+ if (typeof this.name === "string") {
317
+ this.proxy.name = this.name;
318
+ }
319
+ if (typeof this.value === "string") {
320
+ this.proxy.value = this.value;
321
+ }
322
+ this.proxy.setAttribute("slot", proxySlotName);
323
+ this.proxySlot = document.createElement("slot");
324
+ this.proxySlot.setAttribute("name", proxySlotName);
325
+ }
326
+ (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.appendChild(this.proxySlot);
327
+ this.appendChild(this.proxy);
328
+ }
329
+ /**
330
+ * Detach the proxy element from the DOM
331
+ */
332
+ detachProxy() {
333
+ var _a;
334
+ this.removeChild(this.proxy);
335
+ (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.removeChild(this.proxySlot);
336
+ }
337
+ /** {@inheritDoc (FormAssociated:interface).validate} */
338
+ validate(anchor) {
339
+ if (this.proxy instanceof HTMLElement) {
340
+ this.setValidity(this.proxy.validity, this.proxy.validationMessage, anchor);
341
+ }
342
+ }
343
+ /**
344
+ * Associates the provided value (and optional state) with the parent form.
345
+ * @param value - The value to set
346
+ * @param state - The state object provided to during session restores and when autofilling.
347
+ */
348
+ setFormValue(value, state) {
349
+ if (this.elementInternals) {
350
+ this.elementInternals.setFormValue(value, state || value);
351
+ }
352
+ }
353
+ _keypressHandler(e) {
354
+ switch (e.key) {
355
+ case keyEnter:
356
+ if (this.form instanceof HTMLFormElement) {
357
+ // Implicit submission
358
+ const defaultButton = this.form.querySelector("[type=submit]");
359
+ defaultButton === null || defaultButton === void 0 ? void 0 : defaultButton.click();
360
+ }
361
+ break;
362
+ }
363
+ }
364
+ /**
365
+ * Used to stop propagation of proxy element events
366
+ * @param e - Event object
367
+ */
368
+ stopPropagation(e) {
369
+ e.stopPropagation();
370
+ }
371
+ };
372
+ attr({ mode: "boolean" })(C.prototype, "disabled");
373
+ attr({ mode: "fromView", attribute: "value" })(C.prototype, "initialValue");
374
+ attr({ attribute: "current-value" })(C.prototype, "currentValue");
375
+ attr(C.prototype, "name");
376
+ attr({ mode: "boolean" })(C.prototype, "required");
377
+ observable(C.prototype, "value");
378
+ return C;
379
+ }
380
+
381
+ export { FormAssociated as F };
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- const icon = require('./icon.cjs');
4
- const index = require('./index.cjs');
3
+ const definition = require('./definition27.cjs');
4
+ const defineVividComponent = require('./defineVividComponent.cjs');
5
5
  const slotted = require('./slotted.cjs');
6
6
  const classNames = require('./class-names.cjs');
7
7
  const when = require('./when.cjs');
@@ -20,15 +20,15 @@ var __decorateClass = (decorators, target, key, kind) => {
20
20
  class FormElementHelperText {
21
21
  }
22
22
  __decorateClass([
23
- index.attr({ attribute: "helper-text" })
23
+ defineVividComponent.attr({ attribute: "helper-text" })
24
24
  ], FormElementHelperText.prototype, "helperText");
25
25
  __decorateClass([
26
- index.observable
26
+ defineVividComponent.observable
27
27
  ], FormElementHelperText.prototype, "_helperTextSlottedContent");
28
28
  class FormElementSuccessText {
29
29
  }
30
30
  __decorateClass([
31
- index.attr({ attribute: "success-text" })
31
+ defineVividComponent.attr({ attribute: "success-text" })
32
32
  ], FormElementSuccessText.prototype, "successText");
33
33
  class FormElementCharCount {
34
34
  constructor() {
@@ -36,39 +36,12 @@ class FormElementCharCount {
36
36
  }
37
37
  }
38
38
  __decorateClass([
39
- index.attr({
39
+ defineVividComponent.attr({
40
40
  attribute: "char-count",
41
41
  mode: "boolean"
42
42
  })
43
43
  ], FormElementCharCount.prototype, "charCount");
44
44
  function formElements(constructor) {
45
- let currentPrototype = constructor.prototype;
46
- while (currentPrototype) {
47
- const parentPrototype = Object.getPrototypeOf(currentPrototype);
48
- if (currentPrototype.validate && !parentPrototype.validate) {
49
- currentPrototype.validate = function(anchor) {
50
- if (this.proxy instanceof HTMLElement && this.elementInternals) {
51
- const isValid = this.proxy.validity.valid;
52
- const controlIsInvalidDueToMinOrMaxLength = this.control && this.control.validity && !this.control.validity.valid && (this.control.validity.tooShort || this.control.validity.tooLong);
53
- if (isValid && controlIsInvalidDueToMinOrMaxLength) {
54
- this.setValidity(
55
- this.control.validity,
56
- this.control.validationMessage,
57
- anchor
58
- );
59
- } else {
60
- this.setValidity(
61
- this.proxy.validity,
62
- this.proxy.validationMessage,
63
- anchor
64
- );
65
- }
66
- }
67
- };
68
- break;
69
- }
70
- currentPrototype = parentPrototype;
71
- }
72
45
  class Decorated extends constructor {
73
46
  constructor(...args) {
74
47
  super(...args);
@@ -114,10 +87,10 @@ function formElements(constructor) {
114
87
  }
115
88
  }
116
89
  __decorateClass([
117
- index.attr
90
+ defineVividComponent.attr
118
91
  ], Decorated.prototype, "label");
119
92
  __decorateClass([
120
- index.observable
93
+ defineVividComponent.observable
121
94
  ], Decorated.prototype, "errorValidationMessage");
122
95
  return Decorated;
123
96
  }
@@ -148,7 +121,7 @@ const isFeedbackAvailable = (config, x) => Boolean(
148
121
  x[config.messageProperty] || config.slot && x[config.slot.slottedContentProperty]?.length
149
122
  );
150
123
  function getFeedbackTemplate(context) {
151
- return index.html`
124
+ return defineVividComponent.html`
152
125
  <style>
153
126
  ${messageStyles}
154
127
  </style>
@@ -170,14 +143,14 @@ function getFeedbackTemplate(context) {
170
143
  `;
171
144
  }
172
145
  function getFeedbackTypeTemplate(context, config, shouldShow) {
173
- const iconTag = context.tagFor(icon.Icon);
174
- const messageTemplate = index.html`${(x) => x[config.messageProperty]}`;
175
- const innerTemplate = config.slot ? index.html`<slot
146
+ const iconTag = context.tagFor(definition.Icon);
147
+ const messageTemplate = defineVividComponent.html`${(x) => x[config.messageProperty]}`;
148
+ const innerTemplate = config.slot ? defineVividComponent.html`<slot
176
149
  name="${config.slot.name}"
177
150
  ${slotted.slotted(config.slot.slottedContentProperty)}
178
151
  >${messageTemplate}</slot
179
152
  >` : messageTemplate;
180
- return index.html`<div
153
+ return defineVividComponent.html`<div
181
154
  class="${(x) => classNames.classNames(
182
155
  "message",
183
156
  `${config.className}-message`,
@@ -189,7 +162,7 @@ function getFeedbackTypeTemplate(context, config, shouldShow) {
189
162
  >
190
163
  ${when.when(
191
164
  (x) => shouldShow(x) && config.iconType,
192
- index.html`<${iconTag} class="message-icon" name="${config.iconType}"></${iconTag}>`
165
+ defineVividComponent.html`<${iconTag} class="message-icon" name="${config.iconType}"></${iconTag}>`
193
166
  )}
194
167
  <span class="message-text">${innerTemplate}</span>
195
168
  </div>`;
@@ -223,7 +196,7 @@ function errorText(constructor) {
223
196
  }
224
197
  }
225
198
  __decorateClass([
226
- index.attr({ attribute: "error-text" })
199
+ defineVividComponent.attr({ attribute: "error-text" })
227
200
  ], Decorated.prototype, "errorText");
228
201
  return Decorated;
229
202
  }
@@ -1,5 +1,5 @@
1
- import { I as Icon } from './icon.js';
2
- import { a as attr, o as observable, h as html } from './index.js';
1
+ import { I as Icon } from './definition27.js';
2
+ import { a as attr, o as observable, h as html } from './defineVividComponent.js';
3
3
  import { s as slotted } from './slotted.js';
4
4
  import { c as classNames } from './class-names.js';
5
5
  import { w as when } from './when.js';
@@ -40,33 +40,6 @@ __decorateClass([
40
40
  })
41
41
  ], FormElementCharCount.prototype, "charCount");
42
42
  function formElements(constructor) {
43
- let currentPrototype = constructor.prototype;
44
- while (currentPrototype) {
45
- const parentPrototype = Object.getPrototypeOf(currentPrototype);
46
- if (currentPrototype.validate && !parentPrototype.validate) {
47
- currentPrototype.validate = function(anchor) {
48
- if (this.proxy instanceof HTMLElement && this.elementInternals) {
49
- const isValid = this.proxy.validity.valid;
50
- const controlIsInvalidDueToMinOrMaxLength = this.control && this.control.validity && !this.control.validity.valid && (this.control.validity.tooShort || this.control.validity.tooLong);
51
- if (isValid && controlIsInvalidDueToMinOrMaxLength) {
52
- this.setValidity(
53
- this.control.validity,
54
- this.control.validationMessage,
55
- anchor
56
- );
57
- } else {
58
- this.setValidity(
59
- this.proxy.validity,
60
- this.proxy.validationMessage,
61
- anchor
62
- );
63
- }
64
- }
65
- };
66
- break;
67
- }
68
- currentPrototype = parentPrototype;
69
- }
70
43
  class Decorated extends constructor {
71
44
  constructor(...args) {
72
45
  super(...args);
@@ -8,6 +8,7 @@ export declare class Anchor {
8
8
  rel: string;
9
9
  target: '_self' | '_blank' | '_parent' | '_top';
10
10
  type: string;
11
+ control: HTMLAnchorElement | undefined;
11
12
  }
12
13
  export declare class DelegatesARIALink {
13
14
  ariaExpanded: 'true' | 'false' | string | null;
@@ -1,6 +1,6 @@
1
- import type { FoundationElementDefinition } from '@microsoft/fast-foundation';
1
+ import type { VividComponentDefinition } from '../../design-system/defineVividComponent';
2
2
  import { FormAssociatedButton } from './button.form-associated';
3
- export type ButtonOptions = FoundationElementDefinition;
3
+ export type ButtonOptions = VividComponentDefinition;
4
4
  export declare class VividFoundationButton extends FormAssociatedButton {
5
5
  autofocus: boolean;
6
6
  formId: string;
@@ -20,6 +20,7 @@ export declare class VividFoundationButton extends FormAssociatedButton {
20
20
  private handleSubmission;
21
21
  private handleFormReset;
22
22
  control: HTMLButtonElement;
23
+ private handleUnsupportedDelegatesFocus;
23
24
  }
24
25
  export declare class DelegatesARIAButton {
25
26
  ariaExpanded: 'true' | 'false' | string | null;
@@ -1,4 +1,2 @@
1
- import type { ViewTemplate } from '@microsoft/fast-element';
2
- import type { FoundationElementTemplate } from '@microsoft/fast-foundation';
3
- import type { ButtonOptions, VividFoundationButton } from './button';
4
- export declare const buttonTemplate: FoundationElementTemplate<ViewTemplate<VividFoundationButton>, ButtonOptions>;
1
+ import type { VividFoundationButton } from './button';
2
+ export declare const buttonTemplate: import("@microsoft/fast-element").ViewTemplate<VividFoundationButton, any>;
@@ -0,0 +1,51 @@
1
+ import type { Constructable, FASTElement } from '@microsoft/fast-element';
2
+ export declare const supportsElementInternals: boolean;
3
+ export interface FormAssociated extends Omit<ElementInternals, 'labels'> {
4
+ dirtyValue: boolean;
5
+ disabled: boolean;
6
+ readonly elementInternals: ElementInternals | null;
7
+ readonly formAssociated: boolean;
8
+ initialValue: string;
9
+ readonly labels: ReadonlyArray<Node[]>;
10
+ name: string;
11
+ required: boolean;
12
+ value: string;
13
+ currentValue: string;
14
+ attachProxy(): void;
15
+ detachProxy(): void;
16
+ disabledChanged?(previous: boolean, next: boolean): void;
17
+ formDisabledCallback?(disabled: boolean): void;
18
+ formResetCallback(): void;
19
+ initialValueChanged?(previous: string, next: string): void;
20
+ nameChanged?(previous: string, next: string): void;
21
+ requiredChanged(prev: boolean, next: boolean): void;
22
+ stopPropagation(e: Event): void;
23
+ validate(anchor?: HTMLElement): void;
24
+ valueChanged(previous: string, next: string): void;
25
+ }
26
+ export interface CheckableFormAssociated extends FormAssociated {
27
+ currentChecked: boolean;
28
+ dirtyChecked: boolean;
29
+ checkedAttribute: boolean;
30
+ defaultChecked: boolean;
31
+ defaultCheckedChanged(oldValue: boolean | undefined, newValue: boolean): void;
32
+ checked: boolean;
33
+ checkedChanged(oldValue: boolean | undefined, newValue: boolean): void;
34
+ }
35
+ export type ProxyElement = HTMLSelectElement | HTMLTextAreaElement | HTMLInputElement;
36
+ export interface FormAssociatedProxy {
37
+ proxy: ProxyElement;
38
+ disabledChanged?(previous: boolean, next: boolean): void;
39
+ formDisabledCallback?(disabled: boolean): void;
40
+ formResetCallback?(): void;
41
+ initialValueChanged?(previous: string, next: string): void;
42
+ valueChanged?(previous: string, next: string): void;
43
+ nameChanged?(previous: string, next: string): void;
44
+ }
45
+ export type FormAssociatedElement = FormAssociated & FASTElement & HTMLElement & FormAssociatedProxy;
46
+ export type CheckableFormAssociatedElement = FormAssociatedElement & CheckableFormAssociated & {
47
+ proxy: HTMLInputElement;
48
+ };
49
+ export type ConstructableFormAssociated = Constructable<HTMLElement & FASTElement>;
50
+ export declare function FormAssociated<T extends ConstructableFormAssociated>(BaseCtor: T): T;
51
+ export declare function CheckableFormAssociated<T extends ConstructableFormAssociated>(BaseCtor: T): T;
@@ -0,0 +1,22 @@
1
+ import { type ListboxOption } from '../../../lib/option/option';
2
+ import { ARIAGlobalStatesAndProperties } from '../patterns';
3
+ import { VividElement } from '../vivid-element/vivid-element';
4
+ export declare abstract class Listbox extends VividElement {
5
+ get length(): number;
6
+ get options(): ListboxOption[];
7
+ set options(value: ListboxOption[]);
8
+ disabled: boolean;
9
+ selectedIndex: number;
10
+ selectedOptions: ListboxOption[];
11
+ static slottedOptionFilter: (n: HTMLElement) => boolean;
12
+ selectFirstOption(): void;
13
+ protected setSelectedOptions(): void;
14
+ }
15
+ export declare class DelegatesARIAListbox {
16
+ ariaActiveDescendant: string | null;
17
+ ariaDisabled: 'true' | 'false' | string | null;
18
+ ariaExpanded: 'true' | 'false' | string | null;
19
+ ariaMultiSelectable: 'true' | 'false' | string | null;
20
+ }
21
+ export interface DelegatesARIAListbox extends ARIAGlobalStatesAndProperties {
22
+ }
@@ -0,0 +1,9 @@
1
+ import { FoundationElement } from '@microsoft/fast-foundation';
2
+ export declare class BaseProgress extends FoundationElement {
3
+ value: number | null;
4
+ min: number;
5
+ max: number;
6
+ maxChanged(): void;
7
+ paused: boolean;
8
+ private updatePercentComplete;
9
+ }
@@ -0,0 +1 @@
1
+ export declare function applyMixins(derivedCtor: any, ...baseCtors: any[]): void;
@@ -0,0 +1,3 @@
1
+ import { FASTElement } from '@microsoft/fast-element';
2
+ export declare class VividElement extends FASTElement {
3
+ }