@vonage/vivid 5.15.0 → 5.16.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 (730) hide show
  1. package/README.md +1 -1
  2. package/accordion/definition.cjs +7 -212
  3. package/accordion/definition.js +2 -204
  4. package/accordion/index.cjs +4 -4
  5. package/accordion/index.js +93 -138
  6. package/accordion-item/definition.cjs +6 -146
  7. package/accordion-item/definition.js +2 -139
  8. package/accordion-item/index.cjs +1 -1
  9. package/accordion-item/index.js +6 -2
  10. package/action-group/definition.cjs +5 -69
  11. package/action-group/definition.js +1 -62
  12. package/action-group/index.cjs +4 -4
  13. package/action-group/index.js +16 -46
  14. package/alert/definition.cjs +6 -201
  15. package/alert/definition.js +2 -194
  16. package/alert/index.cjs +15 -15
  17. package/alert/index.js +90 -136
  18. package/audio-player/definition.cjs +6 -463
  19. package/audio-player/definition.js +2 -456
  20. package/audio-player/index.cjs +49 -49
  21. package/audio-player/index.js +234 -308
  22. package/avatar/definition.cjs +6 -117
  23. package/avatar/definition.js +2 -110
  24. package/avatar/index.cjs +14 -14
  25. package/avatar/index.js +44 -84
  26. package/badge/definition.cjs +6 -85
  27. package/badge/definition.js +2 -78
  28. package/badge/index.cjs +4 -4
  29. package/badge/index.js +21 -65
  30. package/banner/definition.cjs +6 -160
  31. package/banner/definition.js +2 -153
  32. package/banner/index.cjs +13 -13
  33. package/banner/index.js +76 -109
  34. package/breadcrumb/definition.cjs +5 -98
  35. package/breadcrumb/definition.js +1 -91
  36. package/breadcrumb/index.cjs +4 -4
  37. package/breadcrumb/index.js +33 -60
  38. package/breadcrumb-item/definition.cjs +7 -47
  39. package/breadcrumb-item/definition.js +3 -40
  40. package/breadcrumb-item/index.cjs +5 -5
  41. package/breadcrumb-item/index.js +20 -32
  42. package/bundled/affix.cjs +10 -10
  43. package/bundled/affix.js +44 -57
  44. package/bundled/anchored.cjs +3 -3
  45. package/bundled/anchored.js +47 -65
  46. package/bundled/aria.cjs +1 -1
  47. package/bundled/aria.js +6 -6
  48. package/bundled/attribute-binding-behaviour.cjs +1 -1
  49. package/bundled/attribute-binding-behaviour.js +17 -30
  50. package/bundled/base-color-picker.cjs +10 -10
  51. package/bundled/base-color-picker.js +115 -202
  52. package/bundled/base-progress.cjs +1 -1
  53. package/bundled/base-progress.js +29 -59
  54. package/bundled/breadcrumb-item.cjs +1 -1
  55. package/bundled/breadcrumb-item.js +11 -20
  56. package/bundled/button.cjs +1 -1
  57. package/bundled/button.js +65 -109
  58. package/bundled/calendar-event.cjs +1 -1
  59. package/bundled/calendar-event.js +11 -34
  60. package/bundled/calendar-picker.template.cjs +77 -77
  61. package/bundled/calendar-picker.template.js +2881 -3297
  62. package/bundled/char-count.cjs +7 -7
  63. package/bundled/char-count.js +31 -46
  64. package/bundled/children.cjs +1 -1
  65. package/bundled/children.js +27 -45
  66. package/bundled/class-names.cjs +1 -1
  67. package/bundled/class-names.js +8 -8
  68. package/bundled/data-grid.options.cjs +1 -1
  69. package/bundled/data-grid.options.js +22 -26
  70. package/bundled/decorate.cjs +1 -0
  71. package/bundled/decorate.js +9 -0
  72. package/bundled/definition.cjs +1 -39
  73. package/bundled/definition.js +5 -122
  74. package/bundled/definition10.cjs +27 -69
  75. package/bundled/definition10.js +173 -362
  76. package/bundled/definition11.cjs +19 -12
  77. package/bundled/definition11.js +77 -93
  78. package/bundled/definition12.cjs +11 -11
  79. package/bundled/definition12.js +122 -217
  80. package/bundled/definition13.cjs +18 -9
  81. package/bundled/definition13.js +76 -42
  82. package/bundled/definition14.cjs +10 -1
  83. package/bundled/definition14.js +28 -19
  84. package/bundled/definition15.cjs +73 -5
  85. package/bundled/definition15.js +194 -28
  86. package/bundled/definition16.cjs +5 -30
  87. package/bundled/definition16.js +16 -79
  88. package/bundled/definition17.cjs +13 -19
  89. package/bundled/definition17.js +81 -105
  90. package/bundled/definition18.cjs +12 -13
  91. package/bundled/definition18.js +67 -147
  92. package/bundled/definition19.cjs +48 -48
  93. package/bundled/definition19.js +365 -699
  94. package/bundled/definition2.cjs +8 -8
  95. package/bundled/definition2.js +80 -124
  96. package/bundled/definition20.cjs +5 -20
  97. package/bundled/definition20.js +11 -106
  98. package/bundled/definition21.cjs +20 -5
  99. package/bundled/definition21.js +57 -18
  100. package/bundled/definition22.cjs +16 -16
  101. package/bundled/definition22.js +79 -141
  102. package/bundled/definition3.cjs +1 -29
  103. package/bundled/definition3.js +183 -195
  104. package/bundled/definition4.cjs +39 -6
  105. package/bundled/definition4.js +71 -41
  106. package/bundled/definition5.cjs +30 -1
  107. package/bundled/definition5.js +48 -351
  108. package/bundled/definition6.cjs +28 -30
  109. package/bundled/definition6.js +110 -265
  110. package/bundled/definition7.cjs +6 -30
  111. package/bundled/definition7.js +22 -291
  112. package/bundled/definition8.cjs +13 -18
  113. package/bundled/definition8.js +150 -143
  114. package/bundled/definition9.cjs +29 -13
  115. package/bundled/definition9.js +157 -232
  116. package/bundled/delegates-aria.cjs +1 -1
  117. package/bundled/delegates-aria.js +56 -90
  118. package/bundled/dialog.cjs +1 -0
  119. package/bundled/dialog.js +6 -0
  120. package/bundled/divider.cjs +1 -1
  121. package/bundled/divider.js +16 -33
  122. package/bundled/dom.cjs +1 -1
  123. package/bundled/dom.js +5 -5
  124. package/bundled/enums.cjs +1 -1
  125. package/bundled/enums.js +16 -9
  126. package/bundled/floating-ui.dom.cjs +1 -1
  127. package/bundled/floating-ui.dom.js +953 -1234
  128. package/bundled/form-associated.cjs +1 -1
  129. package/bundled/form-associated.js +165 -327
  130. package/bundled/form-element.cjs +1 -1
  131. package/bundled/form-element.js +33 -55
  132. package/bundled/host-semantics.cjs +1 -1
  133. package/bundled/host-semantics.js +46 -69
  134. package/bundled/key-codes.cjs +1 -1
  135. package/bundled/key-codes.js +4 -16
  136. package/bundled/linkable.cjs +6 -6
  137. package/bundled/linkable.js +25 -45
  138. package/bundled/listbox.cjs +1 -1
  139. package/bundled/listbox.js +176 -368
  140. package/bundled/localized.cjs +1 -1
  141. package/bundled/localized.js +451 -564
  142. package/bundled/mixins.cjs +20 -20
  143. package/bundled/mixins.js +162 -213
  144. package/bundled/normalize.cjs +1 -1
  145. package/bundled/normalize.js +6 -6
  146. package/bundled/numbers.cjs +1 -1
  147. package/bundled/numbers.js +9 -11
  148. package/bundled/picker-field.template.cjs +23 -23
  149. package/bundled/picker-field.template.js +108 -172
  150. package/bundled/playbackRates.cjs +1 -1
  151. package/bundled/playbackRates.js +10 -10
  152. package/bundled/ref.cjs +1 -1
  153. package/bundled/ref.js +10 -14
  154. package/bundled/repeat.cjs +1 -1
  155. package/bundled/repeat.js +421 -552
  156. package/bundled/scrollIntoView.cjs +1 -1
  157. package/bundled/scrollIntoView.js +26 -32
  158. package/bundled/single-date-picker.cjs +1 -1
  159. package/bundled/single-date-picker.js +23 -38
  160. package/bundled/single-value-picker.cjs +1 -1
  161. package/bundled/single-value-picker.js +58 -86
  162. package/bundled/slider.template.cjs +13 -13
  163. package/bundled/slider.template.js +67 -78
  164. package/bundled/slottable-request.cjs +4 -4
  165. package/bundled/slottable-request.js +1937 -2904
  166. package/bundled/slotted.cjs +1 -1
  167. package/bundled/slotted.js +47 -97
  168. package/bundled/strings.cjs +1 -1
  169. package/bundled/strings.js +6 -6
  170. package/bundled/text-field.cjs +1 -1
  171. package/bundled/text-field.js +4 -4
  172. package/bundled/time-selection-picker.template.cjs +26 -26
  173. package/bundled/time-selection-picker.template.js +355 -555
  174. package/bundled/trapped-focus.cjs +1 -1
  175. package/bundled/trapped-focus.js +18 -25
  176. package/bundled/vivid-element.cjs +4 -5
  177. package/bundled/vivid-element.js +1778 -2794
  178. package/bundled/when.cjs +1 -1
  179. package/bundled/when.js +10 -10
  180. package/bundled/with-contextual-help.cjs +1 -1
  181. package/bundled/with-contextual-help.js +15 -31
  182. package/bundled/with-error-text.cjs +1 -1
  183. package/bundled/with-error-text.js +25 -38
  184. package/bundled/with-success-text.cjs +1 -1
  185. package/bundled/with-success-text.js +8 -15
  186. package/button/definition.cjs +6 -14
  187. package/button/definition.js +3 -4
  188. package/button/index.cjs +1 -1
  189. package/button/index.js +6 -2
  190. package/calendar/definition.cjs +5 -360
  191. package/calendar/definition.js +1 -353
  192. package/calendar/index.cjs +20 -20
  193. package/calendar/index.js +346 -403
  194. package/calendar-event/definition.cjs +6 -58
  195. package/calendar-event/definition.js +2 -51
  196. package/calendar-event/index.cjs +7 -7
  197. package/calendar-event/index.js +25 -41
  198. package/card/definition.cjs +6 -194
  199. package/card/definition.js +2 -187
  200. package/card/index.cjs +34 -34
  201. package/card/index.js +80 -133
  202. package/checkbox/definition.cjs +6 -210
  203. package/checkbox/definition.js +2 -203
  204. package/checkbox/index.cjs +1 -1
  205. package/checkbox/index.js +6 -2
  206. package/color-picker/definition.cjs +6 -1180
  207. package/color-picker/definition.js +2 -1173
  208. package/color-picker/index.cjs +94 -94
  209. package/color-picker/index.js +605 -742
  210. package/combobox/definition.cjs +6 -653
  211. package/combobox/definition.js +2 -646
  212. package/combobox/index.cjs +37 -37
  213. package/combobox/index.js +254 -465
  214. package/contextual-help/definition.cjs +6 -63
  215. package/contextual-help/definition.js +2 -56
  216. package/contextual-help/index.cjs +1 -1
  217. package/contextual-help/index.js +6 -2
  218. package/country/definition.cjs +6 -340
  219. package/country/definition.js +2 -333
  220. package/country/index.cjs +6 -6
  221. package/country/index.js +1209 -308
  222. package/custom-elements.json +550 -1571
  223. package/data-grid/definition.cjs +10 -2363
  224. package/data-grid/definition.js +2 -2352
  225. package/data-grid/index.cjs +61 -61
  226. package/data-grid/index.js +642 -1024
  227. package/date-picker/definition.cjs +6 -152
  228. package/date-picker/definition.js +2 -145
  229. package/date-picker/index.cjs +1 -1
  230. package/date-picker/index.js +66 -114
  231. package/date-range-picker/definition.cjs +6 -469
  232. package/date-range-picker/definition.js +2 -462
  233. package/date-range-picker/index.cjs +1 -1
  234. package/date-range-picker/index.js +218 -338
  235. package/date-time-picker/definition.cjs +6 -285
  236. package/date-time-picker/definition.js +2 -278
  237. package/date-time-picker/index.cjs +4 -4
  238. package/date-time-picker/index.js +116 -211
  239. package/dial-pad/definition.cjs +6 -469
  240. package/dial-pad/definition.js +2 -462
  241. package/dial-pad/index.cjs +42 -42
  242. package/dial-pad/index.js +195 -311
  243. package/dialog/definition.cjs +6 -350
  244. package/dialog/definition.js +2 -343
  245. package/dialog/index.cjs +28 -28
  246. package/dialog/index.js +148 -230
  247. package/divider/definition.cjs +6 -42
  248. package/divider/definition.js +2 -35
  249. package/divider/index.cjs +1 -1
  250. package/divider/index.js +5 -2
  251. package/elevation/definition.cjs +4 -11
  252. package/elevation/definition.js +2 -2
  253. package/elevation/index.cjs +1 -1
  254. package/elevation/index.js +5 -2
  255. package/empty-state/definition.cjs +6 -86
  256. package/empty-state/definition.js +2 -79
  257. package/empty-state/index.cjs +9 -9
  258. package/empty-state/index.js +28 -60
  259. package/fab/definition.cjs +6 -106
  260. package/fab/definition.js +2 -99
  261. package/fab/index.cjs +17 -17
  262. package/fab/index.js +46 -82
  263. package/file-picker/definition.cjs +6 -526
  264. package/file-picker/definition.js +2 -519
  265. package/file-picker/index.cjs +25 -25
  266. package/file-picker/index.js +246 -354
  267. package/header/definition.cjs +5 -78
  268. package/header/definition.js +1 -71
  269. package/header/index.cjs +5 -5
  270. package/header/index.js +28 -42
  271. package/icon/definition.cjs +5 -200
  272. package/icon/definition.js +1 -193
  273. package/icon/index.cjs +1 -1
  274. package/icon/index.js +5 -2
  275. package/index.cjs +350 -356
  276. package/index.js +79 -78
  277. package/layout/definition.cjs +5 -72
  278. package/layout/definition.js +1 -65
  279. package/layout/index.cjs +2 -2
  280. package/layout/index.js +10 -51
  281. package/lib/alert/alert.d.ts +0 -1
  282. package/lib/audio-player/audio-player.d.ts +0 -1
  283. package/lib/banner/banner.d.ts +0 -2
  284. package/lib/button/button.d.ts +0 -1
  285. package/lib/calendar/calendar.d.ts +0 -1
  286. package/lib/card/card.d.ts +0 -2
  287. package/lib/combobox/combobox.d.ts +1 -1
  288. package/lib/data-grid/data-grid-cell.d.ts +0 -3
  289. package/lib/data-grid/data-grid-row.d.ts +0 -3
  290. package/lib/data-grid/data-grid.d.ts +0 -1
  291. package/lib/fab/fab.d.ts +0 -1
  292. package/lib/file-picker/file-picker.d.ts +1 -1
  293. package/lib/icon/icon.d.ts +0 -2
  294. package/lib/menu/menu.d.ts +0 -1
  295. package/lib/menu-item/menu-item.d.ts +0 -1
  296. package/lib/option/option.d.ts +4 -0
  297. package/lib/pagination/pagination.d.ts +0 -7
  298. package/lib/popover/popover.d.ts +0 -5
  299. package/lib/select/select.d.ts +2 -2
  300. package/lib/split-button/split-button.d.ts +0 -2
  301. package/lib/tab/tab.d.ts +0 -2
  302. package/lib/table/table-head.d.ts +1 -0
  303. package/lib/tabs/tabs.d.ts +0 -1
  304. package/lib/tag/tag.d.ts +0 -2
  305. package/lib/text-field/text-field.d.ts +0 -1
  306. package/lib/toggletip/toggletip.d.ts +0 -1
  307. package/lib/tree-item/tree-item.d.ts +0 -2
  308. package/lib/tree-view/tree-view.d.ts +0 -1
  309. package/locales/de-DE.cjs +382 -492
  310. package/locales/de-DE.js +383 -490
  311. package/locales/en-GB.cjs +271 -382
  312. package/locales/en-GB.js +272 -380
  313. package/locales/en-US.cjs +2 -552
  314. package/locales/en-US.js +1 -549
  315. package/locales/ja-JP.cjs +376 -492
  316. package/locales/ja-JP.js +377 -490
  317. package/locales/zh-CN.cjs +378 -495
  318. package/locales/zh-CN.js +379 -493
  319. package/menu/definition.cjs +6 -394
  320. package/menu/definition.js +2 -387
  321. package/menu/index.cjs +1 -1
  322. package/menu/index.js +6 -2
  323. package/menu-item/definition.cjs +7 -14
  324. package/menu-item/definition.js +3 -3
  325. package/menu-item/index.cjs +1 -1
  326. package/menu-item/index.js +6 -2
  327. package/nav/definition.cjs +5 -27
  328. package/nav/definition.js +1 -20
  329. package/nav/index.cjs +3 -3
  330. package/nav/index.js +7 -10
  331. package/nav-disclosure/definition.cjs +6 -122
  332. package/nav-disclosure/definition.js +2 -115
  333. package/nav-disclosure/index.cjs +8 -8
  334. package/nav-disclosure/index.js +49 -86
  335. package/nav-item/definition.cjs +6 -79
  336. package/nav-item/definition.js +2 -72
  337. package/nav-item/index.cjs +2 -2
  338. package/nav-item/index.js +33 -58
  339. package/note/definition.cjs +6 -61
  340. package/note/definition.js +2 -54
  341. package/note/index.cjs +5 -5
  342. package/note/index.js +24 -38
  343. package/number-field/definition.cjs +6 -440
  344. package/number-field/definition.js +2 -433
  345. package/number-field/index.cjs +31 -31
  346. package/number-field/index.js +160 -328
  347. package/option/definition.cjs +6 -13
  348. package/option/definition.js +3 -3
  349. package/option/index.cjs +1 -1
  350. package/option/index.js +6 -2
  351. package/package.json +24 -23
  352. package/pagination/definition.cjs +6 -256
  353. package/pagination/definition.js +2 -249
  354. package/pagination/index.cjs +37 -37
  355. package/pagination/index.js +148 -188
  356. package/popover/definition.cjs +6 -363
  357. package/popover/definition.js +2 -356
  358. package/popover/index.cjs +16 -16
  359. package/popover/index.js +161 -250
  360. package/popup/definition.cjs +5 -13
  361. package/popup/definition.js +3 -4
  362. package/popup/index.cjs +1 -1
  363. package/popup/index.js +6 -2
  364. package/progress/definition.cjs +5 -87
  365. package/progress/definition.js +1 -80
  366. package/progress/index.cjs +9 -9
  367. package/progress/index.js +33 -55
  368. package/progress-ring/definition.cjs +5 -95
  369. package/progress-ring/definition.js +1 -88
  370. package/progress-ring/index.cjs +1 -1
  371. package/progress-ring/index.js +5 -2
  372. package/radio/definition.cjs +5 -231
  373. package/radio/definition.js +1 -224
  374. package/radio/index.cjs +1 -1
  375. package/radio/index.js +5 -2
  376. package/radio-group/definition.cjs +6 -361
  377. package/radio-group/definition.js +2 -354
  378. package/radio-group/index.cjs +10 -10
  379. package/radio-group/index.js +160 -242
  380. package/range-slider/definition.cjs +6 -632
  381. package/range-slider/definition.js +2 -625
  382. package/range-slider/index.cjs +41 -41
  383. package/range-slider/index.js +259 -429
  384. package/rich-text-editor/definition.cjs +32 -15609
  385. package/rich-text-editor/definition.js +2 -15576
  386. package/rich-text-editor/index.cjs +17 -17
  387. package/rich-text-editor/index.js +9061 -11419
  388. package/rich-text-view/definition.cjs +5 -171
  389. package/rich-text-view/definition.js +1 -164
  390. package/rich-text-view/index.cjs +1 -1
  391. package/rich-text-view/index.js +68 -102
  392. package/searchable-select/definition.cjs +5 -1404
  393. package/searchable-select/definition.js +2 -1398
  394. package/searchable-select/index.cjs +94 -94
  395. package/searchable-select/index.js +600 -1019
  396. package/select/definition.cjs +6 -1012
  397. package/select/definition.js +2 -1005
  398. package/select/index.cjs +1 -1
  399. package/select/index.js +6 -2
  400. package/selectable-box/definition.cjs +6 -174
  401. package/selectable-box/definition.js +2 -167
  402. package/selectable-box/index.cjs +18 -18
  403. package/selectable-box/index.js +66 -127
  404. package/side-drawer/definition.cjs +5 -130
  405. package/side-drawer/definition.js +1 -123
  406. package/side-drawer/index.cjs +7 -7
  407. package/side-drawer/index.js +47 -92
  408. package/simple-color-picker/definition.cjs +6 -216
  409. package/simple-color-picker/definition.js +2 -209
  410. package/simple-color-picker/index.cjs +15 -15
  411. package/simple-color-picker/index.js +98 -135
  412. package/slider/definition.cjs +6 -504
  413. package/slider/definition.js +2 -497
  414. package/slider/index.cjs +1 -1
  415. package/slider/index.js +6 -2
  416. package/split-button/definition.cjs +6 -176
  417. package/split-button/definition.js +2 -169
  418. package/split-button/index.cjs +15 -15
  419. package/split-button/index.js +74 -135
  420. package/status/definition.cjs +6 -76
  421. package/status/definition.js +2 -69
  422. package/status/index.cjs +10 -7
  423. package/status/index.js +38 -48
  424. package/styles/core/all.css +6 -5
  425. package/styles/core/theme.css +6 -5
  426. package/styles/core/typography.css +1 -2
  427. package/styles/tokens/theme-dark.css +17 -21
  428. package/styles/tokens/theme-light.css +17 -21
  429. package/styles/tokens/vivid-2-compat.css +1 -2
  430. package/switch/definition.cjs +6 -149
  431. package/switch/definition.js +2 -142
  432. package/switch/index.cjs +8 -8
  433. package/switch/index.js +48 -93
  434. package/tab/definition.cjs +6 -127
  435. package/tab/definition.js +2 -120
  436. package/tab/index.cjs +1 -1
  437. package/tab/index.js +6 -2
  438. package/tab-panel/definition.cjs +5 -29
  439. package/tab-panel/definition.js +1 -22
  440. package/tab-panel/index.cjs +1 -1
  441. package/tab-panel/index.js +5 -2
  442. package/table/definition.cjs +15 -168
  443. package/table/definition.js +1 -151
  444. package/table/index.cjs +20 -16
  445. package/table/index.js +36 -85
  446. package/tabs/definition.cjs +7 -469
  447. package/tabs/definition.js +2 -461
  448. package/tabs/index.cjs +11 -11
  449. package/tabs/index.js +169 -298
  450. package/tag/definition.cjs +6 -176
  451. package/tag/definition.js +2 -169
  452. package/tag/index.cjs +26 -26
  453. package/tag/index.js +65 -126
  454. package/tag-group/definition.cjs +5 -40
  455. package/tag-group/definition.js +1 -33
  456. package/tag-group/index.cjs +4 -4
  457. package/tag-group/index.js +10 -21
  458. package/text-area/definition.cjs +6 -361
  459. package/text-area/definition.js +2 -354
  460. package/text-area/index.cjs +11 -11
  461. package/text-area/index.js +153 -266
  462. package/text-field/definition.cjs +6 -433
  463. package/text-field/definition.js +2 -426
  464. package/text-field/index.cjs +1 -1
  465. package/text-field/index.js +6 -2
  466. package/time-picker/definition.cjs +7 -43
  467. package/time-picker/definition.js +3 -36
  468. package/time-picker/index.cjs +1 -1
  469. package/time-picker/index.js +24 -29
  470. package/toggletip/definition.cjs +6 -161
  471. package/toggletip/definition.js +2 -154
  472. package/toggletip/index.cjs +1 -1
  473. package/toggletip/index.js +6 -2
  474. package/tooltip/definition.cjs +6 -140
  475. package/tooltip/definition.js +2 -133
  476. package/tooltip/index.cjs +1 -1
  477. package/tooltip/index.js +6 -2
  478. package/tree-item/definition.cjs +6 -13
  479. package/tree-item/definition.js +3 -3
  480. package/tree-item/index.cjs +1 -1
  481. package/tree-item/index.js +6 -2
  482. package/tree-view/definition.cjs +6 -318
  483. package/tree-view/definition.js +2 -311
  484. package/tree-view/index.cjs +11 -11
  485. package/tree-view/index.js +145 -190
  486. package/unbundled/affix.cjs +89 -62
  487. package/unbundled/affix.js +58 -55
  488. package/unbundled/anchored.cjs +87 -94
  489. package/unbundled/anchored.js +74 -90
  490. package/unbundled/attribute-binding-behaviour.cjs +37 -43
  491. package/unbundled/attribute-binding-behaviour.js +31 -41
  492. package/unbundled/base-color-picker.cjs +226 -278
  493. package/unbundled/base-color-picker.js +214 -275
  494. package/unbundled/base-progress.cjs +63 -81
  495. package/unbundled/base-progress.js +57 -79
  496. package/unbundled/breadcrumb-item.cjs +24 -28
  497. package/unbundled/breadcrumb-item.js +18 -26
  498. package/unbundled/button.cjs +115 -175
  499. package/unbundled/button.js +109 -173
  500. package/unbundled/calendar-event.cjs +28 -41
  501. package/unbundled/calendar-event.js +22 -39
  502. package/unbundled/calendar-picker.template.cjs +620 -785
  503. package/unbundled/calendar-picker.template.js +560 -774
  504. package/unbundled/char-count.cjs +50 -80
  505. package/unbundled/char-count.js +44 -78
  506. package/unbundled/chunk.cjs +50 -0
  507. package/unbundled/chunk.js +33 -0
  508. package/unbundled/data-grid.options.cjs +80 -29
  509. package/unbundled/data-grid.options.js +51 -23
  510. package/unbundled/decorate.cjs +14 -0
  511. package/unbundled/decorate.js +9 -0
  512. package/unbundled/definition.cjs +42 -226
  513. package/unbundled/definition.js +24 -221
  514. package/unbundled/definition10.cjs +253 -0
  515. package/unbundled/definition10.js +229 -0
  516. package/unbundled/definition11.cjs +397 -0
  517. package/unbundled/definition11.js +379 -0
  518. package/unbundled/definition12.cjs +317 -0
  519. package/unbundled/definition12.js +287 -0
  520. package/unbundled/definition13.cjs +328 -0
  521. package/unbundled/definition13.js +310 -0
  522. package/unbundled/definition14.cjs +406 -0
  523. package/unbundled/definition14.js +388 -0
  524. package/unbundled/definition15.cjs +107 -0
  525. package/unbundled/definition15.js +89 -0
  526. package/unbundled/definition16.cjs +63 -0
  527. package/unbundled/definition16.js +45 -0
  528. package/unbundled/definition17.cjs +151 -0
  529. package/unbundled/definition17.js +133 -0
  530. package/unbundled/definition18.cjs +47 -0
  531. package/unbundled/definition18.js +35 -0
  532. package/unbundled/definition19.cjs +98 -0
  533. package/unbundled/definition19.js +80 -0
  534. package/unbundled/definition2.cjs +179 -401
  535. package/unbundled/definition2.js +161 -395
  536. package/unbundled/definition20.cjs +56 -0
  537. package/unbundled/definition20.js +43 -0
  538. package/unbundled/definition21.cjs +305 -0
  539. package/unbundled/definition21.js +286 -0
  540. package/unbundled/definition22.cjs +174 -0
  541. package/unbundled/definition22.js +156 -0
  542. package/unbundled/definition23.cjs +161 -0
  543. package/unbundled/definition23.js +143 -0
  544. package/unbundled/definition24.cjs +1038 -0
  545. package/unbundled/definition24.js +1020 -0
  546. package/unbundled/definition25.cjs +360 -0
  547. package/unbundled/definition25.js +342 -0
  548. package/unbundled/definition26.cjs +137 -0
  549. package/unbundled/definition26.js +119 -0
  550. package/unbundled/definition27.cjs +235 -0
  551. package/unbundled/definition27.js +211 -0
  552. package/unbundled/definition28.cjs +546 -0
  553. package/unbundled/definition28.js +528 -0
  554. package/unbundled/definition29.cjs +157 -0
  555. package/unbundled/definition29.js +139 -0
  556. package/unbundled/definition3.cjs +131 -285
  557. package/unbundled/definition3.js +113 -280
  558. package/unbundled/definition30.cjs +75 -0
  559. package/unbundled/definition30.js +57 -0
  560. package/unbundled/definition31.cjs +1265 -0
  561. package/unbundled/definition31.js +1247 -0
  562. package/unbundled/definition32.cjs +1908 -0
  563. package/unbundled/definition32.js +1866 -0
  564. package/unbundled/definition33.cjs +261 -0
  565. package/unbundled/definition33.js +183 -0
  566. package/unbundled/definition34.cjs +46 -0
  567. package/unbundled/definition34.js +33 -0
  568. package/unbundled/definition35.cjs +152 -0
  569. package/unbundled/definition35.js +134 -0
  570. package/unbundled/definition36.cjs +426 -0
  571. package/unbundled/definition36.js +408 -0
  572. package/unbundled/definition37.cjs +243 -0
  573. package/unbundled/definition37.js +225 -0
  574. package/unbundled/definition38.cjs +409 -0
  575. package/unbundled/definition38.js +391 -0
  576. package/unbundled/definition39.cjs +298 -0
  577. package/unbundled/definition39.js +280 -0
  578. package/unbundled/definition4.cjs +186 -206
  579. package/unbundled/definition4.js +162 -201
  580. package/unbundled/definition40.cjs +81 -0
  581. package/unbundled/definition40.js +63 -0
  582. package/unbundled/definition41.cjs +100 -0
  583. package/unbundled/definition41.js +82 -0
  584. package/unbundled/definition42.cjs +457 -0
  585. package/unbundled/definition42.js +439 -0
  586. package/unbundled/definition43.cjs +86 -0
  587. package/unbundled/definition43.js +68 -0
  588. package/unbundled/definition44.cjs +60 -0
  589. package/unbundled/definition44.js +41 -0
  590. package/unbundled/definition45.cjs +124 -0
  591. package/unbundled/definition45.js +106 -0
  592. package/unbundled/definition46.cjs +85 -0
  593. package/unbundled/definition46.js +67 -0
  594. package/unbundled/definition47.cjs +52 -0
  595. package/unbundled/definition47.js +31 -0
  596. package/unbundled/definition48.cjs +69 -0
  597. package/unbundled/definition48.js +51 -0
  598. package/unbundled/definition49.cjs +377 -0
  599. package/unbundled/definition49.js +359 -0
  600. package/unbundled/definition5.cjs +69 -298
  601. package/unbundled/definition5.js +44 -293
  602. package/unbundled/definition50.cjs +246 -0
  603. package/unbundled/definition50.js +228 -0
  604. package/unbundled/definition51.cjs +337 -0
  605. package/unbundled/definition51.js +319 -0
  606. package/unbundled/definition52.cjs +86 -0
  607. package/unbundled/definition52.js +67 -0
  608. package/unbundled/definition53.cjs +193 -0
  609. package/unbundled/definition53.js +174 -0
  610. package/unbundled/definition54.cjs +297 -0
  611. package/unbundled/definition54.js +279 -0
  612. package/unbundled/definition55.cjs +510 -0
  613. package/unbundled/definition55.js +492 -0
  614. package/unbundled/definition56.cjs +12728 -0
  615. package/unbundled/definition56.js +12553 -0
  616. package/unbundled/definition57.cjs +837 -0
  617. package/unbundled/definition57.js +819 -0
  618. package/unbundled/definition58.cjs +146 -0
  619. package/unbundled/definition58.js +128 -0
  620. package/unbundled/definition59.cjs +1080 -0
  621. package/unbundled/definition59.js +1062 -0
  622. package/unbundled/definition6.cjs +88 -56
  623. package/unbundled/definition6.js +69 -52
  624. package/unbundled/definition60.cjs +149 -0
  625. package/unbundled/definition60.js +131 -0
  626. package/unbundled/definition61.cjs +116 -0
  627. package/unbundled/definition61.js +97 -0
  628. package/unbundled/definition62.cjs +213 -0
  629. package/unbundled/definition62.js +195 -0
  630. package/unbundled/definition63.cjs +159 -0
  631. package/unbundled/definition63.js +141 -0
  632. package/unbundled/definition64.cjs +86 -0
  633. package/unbundled/definition64.js +68 -0
  634. package/unbundled/definition65.cjs +126 -0
  635. package/unbundled/definition65.js +107 -0
  636. package/unbundled/definition66.cjs +49 -0
  637. package/unbundled/definition66.js +28 -0
  638. package/unbundled/definition67.cjs +119 -0
  639. package/unbundled/definition67.js +101 -0
  640. package/unbundled/definition68.cjs +374 -0
  641. package/unbundled/definition68.js +349 -0
  642. package/unbundled/definition69.cjs +57 -0
  643. package/unbundled/definition69.js +38 -0
  644. package/unbundled/definition7.cjs +190 -0
  645. package/unbundled/definition7.js +166 -0
  646. package/unbundled/definition70.cjs +155 -0
  647. package/unbundled/definition70.js +137 -0
  648. package/unbundled/definition71.cjs +302 -0
  649. package/unbundled/definition71.js +284 -0
  650. package/unbundled/definition72.cjs +49 -0
  651. package/unbundled/definition72.js +38 -0
  652. package/unbundled/definition73.cjs +171 -0
  653. package/unbundled/definition73.js +147 -0
  654. package/unbundled/definition74.cjs +232 -0
  655. package/unbundled/definition74.js +213 -0
  656. package/unbundled/definition75.cjs +52241 -0
  657. package/unbundled/definition75.js +52223 -0
  658. package/unbundled/definition8.cjs +63 -0
  659. package/unbundled/definition8.js +44 -0
  660. package/unbundled/definition9.cjs +183 -0
  661. package/unbundled/definition9.js +165 -0
  662. package/unbundled/delegates-aria.cjs +90 -131
  663. package/unbundled/delegates-aria.js +77 -127
  664. package/unbundled/dialog.cjs +15 -0
  665. package/unbundled/dialog.js +10 -0
  666. package/unbundled/divider.cjs +42 -50
  667. package/unbundled/divider.js +30 -47
  668. package/unbundled/en-US.cjs +447 -0
  669. package/unbundled/en-US.js +443 -0
  670. package/unbundled/enums.cjs +166 -107
  671. package/unbundled/enums.js +95 -94
  672. package/unbundled/form-associated.cjs +408 -464
  673. package/unbundled/form-associated.js +396 -461
  674. package/unbundled/form-element.cjs +74 -83
  675. package/unbundled/form-element.js +68 -81
  676. package/unbundled/host-semantics.cjs +70 -88
  677. package/unbundled/host-semantics.js +57 -84
  678. package/unbundled/key-codes.cjs +16 -10
  679. package/unbundled/key-codes.js +5 -7
  680. package/unbundled/linkable.cjs +35 -56
  681. package/unbundled/linkable.js +27 -52
  682. package/unbundled/listbox.cjs +363 -473
  683. package/unbundled/listbox.js +357 -471
  684. package/unbundled/localized.cjs +79 -74
  685. package/unbundled/localized.js +61 -70
  686. package/unbundled/mixins.cjs +222 -225
  687. package/unbundled/mixins.js +186 -213
  688. package/unbundled/picker-field.template.cjs +188 -218
  689. package/unbundled/picker-field.template.js +165 -209
  690. package/unbundled/playbackRates.cjs +18 -11
  691. package/unbundled/playbackRates.js +13 -9
  692. package/unbundled/scrollIntoView.cjs +38 -44
  693. package/unbundled/scrollIntoView.js +33 -42
  694. package/unbundled/single-date-picker.cjs +48 -45
  695. package/unbundled/single-date-picker.js +43 -43
  696. package/unbundled/single-value-picker.cjs +106 -114
  697. package/unbundled/single-value-picker.js +101 -112
  698. package/unbundled/slider.template.cjs +107 -73
  699. package/unbundled/slider.template.js +67 -62
  700. package/unbundled/slottable-request.cjs +3114 -3503
  701. package/unbundled/slottable-request.js +2995 -3484
  702. package/unbundled/text-field.cjs +9 -5
  703. package/unbundled/text-field.js +4 -3
  704. package/unbundled/time-selection-picker.template.cjs +611 -758
  705. package/unbundled/time-selection-picker.template.js +554 -745
  706. package/unbundled/trapped-focus.cjs +45 -35
  707. package/unbundled/trapped-focus.js +34 -32
  708. package/unbundled/vivid-element.cjs +281 -273
  709. package/unbundled/vivid-element.js +239 -265
  710. package/unbundled/with-contextual-help.cjs +35 -39
  711. package/unbundled/with-contextual-help.js +29 -37
  712. package/unbundled/with-error-text.cjs +45 -55
  713. package/unbundled/with-error-text.js +39 -53
  714. package/unbundled/with-success-text.cjs +18 -22
  715. package/unbundled/with-success-text.js +12 -20
  716. package/video-player/definition.cjs +5 -69602
  717. package/video-player/definition.js +1 -69595
  718. package/video-player/index.cjs +44 -55
  719. package/video-player/index.js +23548 -35488
  720. package/visually-hidden/definition.cjs +5 -30
  721. package/visually-hidden/definition.js +1 -23
  722. package/visually-hidden/index.cjs +1 -1
  723. package/visually-hidden/index.js +5 -2
  724. package/vivid.api.json +197 -2003
  725. package/bundled/index.cjs +0 -1
  726. package/bundled/index.js +0 -6
  727. package/unbundled/_commonjsHelpers.cjs +0 -36
  728. package/unbundled/_commonjsHelpers.js +0 -32
  729. package/unbundled/index.cjs +0 -11
  730. package/unbundled/index.js +0 -9
@@ -1,464 +1,399 @@
1
- import { attr, emptyArray, Updates } from '@microsoft/fast-element';
2
- import { keyEnter } from '@microsoft/fast-web-utilities';
3
-
4
- var __defProp = Object.defineProperty;
5
- var __decorateClass = (decorators, target, key, kind) => {
6
- var result = void 0 ;
7
- for (var i = decorators.length - 1, decorator; i >= 0; i--)
8
- if (decorator = decorators[i])
9
- result = (decorator(target, key, result) ) || result;
10
- if (result) __defProp(target, key, result);
11
- return result;
1
+ import { t as __decorate } from "./decorate.js";
2
+ import { Updates, attr, emptyArray } from "@microsoft/fast-element";
3
+ import { keyEnter } from "@microsoft/fast-web-utilities";
4
+ //#region src/shared/foundation/form-associated/form-associated.ts
5
+ var proxySlotName = "form-associated-proxy";
6
+ var ElementInternalsKey = "ElementInternals";
7
+ var supportsElementInternals = ElementInternalsKey in window && "setFormValue" in window[ElementInternalsKey].prototype;
8
+ var InternalsMap = /* @__PURE__ */ new WeakMap();
9
+ /**
10
+ * Mixin to associate components with a form.
11
+ * This mixin also provides the `value`/... properties.
12
+ */
13
+ var FormAssociated = (Base) => {
14
+ /**
15
+ * @testQuery value value
16
+ */
17
+ class FormAssociatedElement extends Base {
18
+ /**
19
+ * Must evaluate to true to enable elementInternals.
20
+ * Feature detects API support and resolve respectively
21
+ *
22
+ * @internal
23
+ */
24
+ static get formAssociated() {
25
+ return supportsElementInternals;
26
+ }
27
+ /**
28
+ * Returns the validity state of the element
29
+ */
30
+ get validity() {
31
+ return this.elementInternals ? this.elementInternals.validity : this.proxy.validity;
32
+ }
33
+ /**
34
+ * Retrieve a reference to the associated form.
35
+ * Returns null if not associated to any form.
36
+ */
37
+ get form() {
38
+ return this.elementInternals ? this.elementInternals.form : this.proxy.form;
39
+ }
40
+ /**
41
+ * Retrieve the localized validation message,
42
+ * or custom validation message if set.
43
+ */
44
+ get validationMessage() {
45
+ return this.elementInternals ? this.elementInternals.validationMessage : this.proxy.validationMessage;
46
+ }
47
+ /**
48
+ * Whether the element will be validated when the
49
+ * form is submitted
50
+ */
51
+ get willValidate() {
52
+ return this.elementInternals ? this.elementInternals.willValidate : this.proxy.willValidate;
53
+ }
54
+ /**
55
+ * A reference to all associated label elements
56
+ */
57
+ get labels() {
58
+ if (this.elementInternals) return Object.freeze(Array.from(this.elementInternals.labels));
59
+ else if (this.proxy instanceof HTMLElement && this.proxy.ownerDocument && this.id) {
60
+ const parentLabels = this.proxy.labels;
61
+ const forLabels = Array.from(this.proxy.getRootNode().querySelectorAll(`[for='${this.id}']`));
62
+ return Object.freeze(forLabels.concat(Array.from(parentLabels)));
63
+ } else return emptyArray;
64
+ }
65
+ /**
66
+ * @internal
67
+ */
68
+ valueChanged(_previous, _next) {
69
+ this.dirtyValue = true;
70
+ if (this.proxy instanceof HTMLElement) this.proxy.value = this.value;
71
+ this.setFormValue(this.value);
72
+ this.validate();
73
+ }
74
+ /**
75
+ * @internal
76
+ * @deprecated Use `value` instead.
77
+ */
78
+ get currentValue() {
79
+ return this.value;
80
+ }
81
+ set currentValue(value) {
82
+ this.value = value;
83
+ }
84
+ /**
85
+ * @internal
86
+ */
87
+ initialValueChanged(_previous, _next) {
88
+ if (!this.dirtyValue) {
89
+ this.value = this.initialValue;
90
+ this.dirtyValue = false;
91
+ }
92
+ }
93
+ /**
94
+ * @internal
95
+ */
96
+ disabledChanged(_previous, _next) {
97
+ if (this.proxy instanceof HTMLElement) this.proxy.disabled = this.disabled;
98
+ Updates.enqueue(() => this.classList.toggle("disabled", this.disabled));
99
+ }
100
+ /**
101
+ * @internal
102
+ */
103
+ nameChanged(_previous, _next) {
104
+ /* v8 ignore if -- @preserve */
105
+ if (this.proxy instanceof HTMLElement) this.proxy.name = this.name;
106
+ }
107
+ /**
108
+ * @internal
109
+ */
110
+ requiredChanged(_previous, _next) {
111
+ if (this.proxy instanceof HTMLElement) this.proxy.required = this.required;
112
+ Updates.enqueue(() => this.classList.toggle("required", this.required));
113
+ this.validate();
114
+ }
115
+ /**
116
+ * The element internals object. Will only exist
117
+ * in browsers supporting the attachInternals API
118
+ * @internal
119
+ */
120
+ get elementInternals() {
121
+ if (!supportsElementInternals) return null;
122
+ let internals = InternalsMap.get(this);
123
+ if (!internals) {
124
+ internals = this.attachInternals();
125
+ InternalsMap.set(this, internals);
126
+ }
127
+ return internals;
128
+ }
129
+ constructor(...args) {
130
+ super(...args);
131
+ this.dirtyValue = false;
132
+ this.disabled = false;
133
+ this.proxyEventsToBlock = ["change", "click"];
134
+ this.proxyInitialized = false;
135
+ this.required = false;
136
+ this.initialValue = this.initialValue || "";
137
+ if (!this.elementInternals) this.formResetCallback = this.formResetCallback.bind(this);
138
+ }
139
+ /**
140
+ * @internal
141
+ */
142
+ connectedCallback() {
143
+ super.connectedCallback();
144
+ this.addEventListener("keypress", this._keypressHandler);
145
+ if (!this.value) {
146
+ this.value = this.initialValue;
147
+ this.dirtyValue = false;
148
+ }
149
+ if (!this.elementInternals) {
150
+ this.attachProxy();
151
+ if (this.form) this.form.addEventListener("reset", this.formResetCallback);
152
+ }
153
+ }
154
+ /**
155
+ * @internal
156
+ */
157
+ disconnectedCallback() {
158
+ super.disconnectedCallback();
159
+ this.proxyEventsToBlock.forEach((name) => this.proxy.removeEventListener(name, this.stopPropagation));
160
+ if (!this.elementInternals && this.form) this.form.removeEventListener("reset", this.formResetCallback);
161
+ }
162
+ /**
163
+ * Return the current validity of the element.
164
+ */
165
+ checkValidity() {
166
+ return this.elementInternals ? this.elementInternals.checkValidity() : this.proxy.checkValidity();
167
+ }
168
+ /**
169
+ * Return the current validity of the element.
170
+ * If false, fires an invalid event at the element.
171
+ */
172
+ reportValidity() {
173
+ return this.elementInternals ? this.elementInternals.reportValidity() : this.proxy.reportValidity();
174
+ }
175
+ /**
176
+ * Set the validity of the control. In cases when the elementInternals object is not
177
+ * available (and the proxy element is used to report validity), this function will
178
+ * do nothing unless a message is provided, at which point the setCustomValidity method
179
+ * of the proxy element will be invoked with the provided message.
180
+ * @param flags - Validity flags
181
+ * @param message - Optional message to supply
182
+ * @param anchor - Optional element used by UA to display an interactive validation UI
183
+ * @internal
184
+ */
185
+ setValidity(flags, message, anchor) {
186
+ /**
187
+ * Strip 'valid' which is not supported by ElementInternals.setValidity()
188
+ * to avoid runtime TypeError in ElementInternals.setValidity on disabled elements
189
+ */
190
+ if ("valid" in flags && this.disabled) {
191
+ const { valid: _valid, ...cleanFlags } = flags;
192
+ flags = cleanFlags;
193
+ }
194
+ /* v8 ignore else -- @preserve */
195
+ if (this.elementInternals) this.elementInternals.setValidity(flags, message, anchor);
196
+ else if (typeof message === "string") this.proxy.setCustomValidity(message);
197
+ }
198
+ /**
199
+ * Invoked when a connected component's form or fieldset has its disabled
200
+ * state changed.
201
+ * @param disabled - the disabled value of the form / fieldset
202
+ * @internal
203
+ */
204
+ formDisabledCallback(disabled) {
205
+ this.disabled = disabled;
206
+ }
207
+ /**
208
+ * @internal
209
+ */
210
+ formResetCallback() {
211
+ this.value = this.initialValue;
212
+ this.dirtyValue = false;
213
+ }
214
+ /**
215
+ * Attach the proxy element to the DOM
216
+ * @internal
217
+ */
218
+ attachProxy() {
219
+ if (!this.proxyInitialized) {
220
+ this.proxyInitialized = true;
221
+ this.proxy.style.display = "none";
222
+ this.proxyEventsToBlock.forEach((name) => this.proxy.addEventListener(name, this.stopPropagation));
223
+ this.proxy.disabled = this.disabled;
224
+ this.proxy.required = this.required;
225
+ if (typeof this.name === "string") this.proxy.name = this.name;
226
+ /* v8 ignore else -- @preserve */
227
+ if (typeof this.value === "string") this.proxy.value = this.value;
228
+ this.proxy.setAttribute("slot", proxySlotName);
229
+ this.proxySlot = document.createElement("slot");
230
+ this.proxySlot.setAttribute("name", proxySlotName);
231
+ }
232
+ this.shadowRoot.appendChild(this.proxySlot);
233
+ this.appendChild(this.proxy);
234
+ }
235
+ /**
236
+ * Detach the proxy element from the DOM
237
+ * @internal
238
+ */
239
+ detachProxy() {
240
+ this.removeChild(this.proxy);
241
+ this.shadowRoot.removeChild(this.proxySlot);
242
+ }
243
+ /**
244
+ * Sets the validity of the custom element. By default this uses the proxy element to determine
245
+ * validity, but this can be extended or replaced in implementation.
246
+ *
247
+ * @param anchor - The anchor element to provide to ElementInternals.setValidity for surfacing the browser's constraint validation UI
248
+ * @internal
249
+ */
250
+ validate(anchor) {
251
+ if (this.proxy instanceof HTMLElement && this.elementInternals) {
252
+ const isValid = this.proxy.validity.valid;
253
+ const control = this.control;
254
+ /**
255
+ * Special handling of min/maxlength validation.
256
+ * HTML has the insane behaviour of min/maxlength constraints only being active after a user interacted with the
257
+ * field. Our proxy is never interacted with, so the constraint never applies.
258
+ * Therefore, we need to use the validity from the actual control in this case.
259
+ */
260
+ const controlIsInvalidDueToMinOrMaxLength = control && control.validity && !control.validity.valid && (control.validity.tooShort || control.validity.tooLong);
261
+ if (isValid && controlIsInvalidDueToMinOrMaxLength) this.setValidity(control.validity, control.validationMessage, anchor);
262
+ else this.setValidity(this.proxy.validity, this.proxy.validationMessage, anchor);
263
+ }
264
+ }
265
+ /**
266
+ * Associates the provided value (and optional state) with the parent form.
267
+ * @param value - The value to set
268
+ * @param state - The state object provided to during session restores and when autofilling.
269
+ * @internal
270
+ */
271
+ setFormValue(value, state) {
272
+ if (this.elementInternals) this.elementInternals.setFormValue(value, state || value);
273
+ }
274
+ /**
275
+ * @internal
276
+ */
277
+ _keypressHandler(e) {
278
+ switch (e.key) {
279
+ case keyEnter:
280
+ if (this.form instanceof HTMLFormElement) this.form.querySelector("[type=submit]")?.click();
281
+ break;
282
+ }
283
+ }
284
+ /**
285
+ * Used to stop propagation of proxy element events
286
+ * @param e - Event object
287
+ * @internal
288
+ */
289
+ stopPropagation(e) {
290
+ e.stopPropagation();
291
+ }
292
+ }
293
+ __decorate([attr({ attribute: "current-value" })], FormAssociatedElement.prototype, "value", void 0);
294
+ __decorate([attr({
295
+ mode: "fromView",
296
+ attribute: "value"
297
+ })], FormAssociatedElement.prototype, "initialValue", void 0);
298
+ __decorate([attr({ mode: "boolean" })], FormAssociatedElement.prototype, "disabled", void 0);
299
+ __decorate([attr], FormAssociatedElement.prototype, "name", void 0);
300
+ __decorate([attr({ mode: "boolean" })], FormAssociatedElement.prototype, "required", void 0);
301
+ return FormAssociatedElement;
12
302
  };
13
- const proxySlotName = "form-associated-proxy";
14
- const ElementInternalsKey = "ElementInternals";
15
- const supportsElementInternals = ElementInternalsKey in window && "setFormValue" in window[ElementInternalsKey].prototype;
16
- const InternalsMap = /* @__PURE__ */ new WeakMap();
17
- const FormAssociated = (Base) => {
18
- class FormAssociatedElement extends Base {
19
- constructor(...args) {
20
- super(...args);
21
- /**
22
- * Track whether the value has been changed from the initial value
23
- * @internal
24
- */
25
- this.dirtyValue = false;
26
- this.disabled = false;
27
- /**
28
- * These are events that are still fired by the proxy
29
- * element based on user / programmatic interaction.
30
- *
31
- * The proxy implementation should be transparent to
32
- * the app author, so block these events from emitting.
33
- * @internal
34
- */
35
- this.proxyEventsToBlock = ["change", "click"];
36
- /**
37
- * @internal
38
- */
39
- this.proxyInitialized = false;
40
- this.required = false;
41
- this.initialValue = this.initialValue || "";
42
- if (!this.elementInternals) {
43
- this.formResetCallback = this.formResetCallback.bind(this);
44
- }
45
- }
46
- /**
47
- * Must evaluate to true to enable elementInternals.
48
- * Feature detects API support and resolve respectively
49
- *
50
- * @internal
51
- */
52
- static get formAssociated() {
53
- return supportsElementInternals;
54
- }
55
- /**
56
- * Returns the validity state of the element
57
- */
58
- get validity() {
59
- return this.elementInternals ? this.elementInternals.validity : this.proxy.validity;
60
- }
61
- /**
62
- * Retrieve a reference to the associated form.
63
- * Returns null if not associated to any form.
64
- */
65
- get form() {
66
- return this.elementInternals ? this.elementInternals.form : this.proxy.form;
67
- }
68
- /**
69
- * Retrieve the localized validation message,
70
- * or custom validation message if set.
71
- */
72
- get validationMessage() {
73
- return this.elementInternals ? this.elementInternals.validationMessage : this.proxy.validationMessage;
74
- }
75
- /**
76
- * Whether the element will be validated when the
77
- * form is submitted
78
- */
79
- get willValidate() {
80
- return this.elementInternals ? this.elementInternals.willValidate : this.proxy.willValidate;
81
- }
82
- /**
83
- * A reference to all associated label elements
84
- */
85
- get labels() {
86
- if (this.elementInternals) {
87
- return Object.freeze(Array.from(this.elementInternals.labels));
88
- } else if (this.proxy instanceof HTMLElement && this.proxy.ownerDocument && this.id) {
89
- const parentLabels = this.proxy.labels;
90
- const forLabels = Array.from(
91
- this.proxy.getRootNode().querySelectorAll(`[for='${this.id}']`)
92
- );
93
- return Object.freeze(forLabels.concat(Array.from(parentLabels)));
94
- } else {
95
- return emptyArray;
96
- }
97
- }
98
- /**
99
- * @internal
100
- */
101
- valueChanged(_previous, _next) {
102
- this.dirtyValue = true;
103
- if (this.proxy instanceof HTMLElement) {
104
- this.proxy.value = this.value;
105
- }
106
- this.setFormValue(this.value);
107
- this.validate();
108
- }
109
- /**
110
- * @deprecated Use `value` instead.
111
- */
112
- get currentValue() {
113
- return this.value;
114
- }
115
- set currentValue(value) {
116
- this.value = value;
117
- }
118
- /**
119
- * @internal
120
- */
121
- initialValueChanged(_previous, _next) {
122
- if (!this.dirtyValue) {
123
- this.value = this.initialValue;
124
- this.dirtyValue = false;
125
- }
126
- }
127
- /**
128
- * @internal
129
- */
130
- disabledChanged(_previous, _next) {
131
- if (this.proxy instanceof HTMLElement) {
132
- this.proxy.disabled = this.disabled;
133
- }
134
- Updates.enqueue(() => this.classList.toggle("disabled", this.disabled));
135
- }
136
- /**
137
- * @internal
138
- */
139
- nameChanged(_previous, _next) {
140
- /* v8 ignore if -- @preserve */
141
- if (this.proxy instanceof HTMLElement) {
142
- this.proxy.name = this.name;
143
- }
144
- }
145
- /**
146
- * @internal
147
- */
148
- requiredChanged(_previous, _next) {
149
- if (this.proxy instanceof HTMLElement) {
150
- this.proxy.required = this.required;
151
- }
152
- Updates.enqueue(() => this.classList.toggle("required", this.required));
153
- this.validate();
154
- }
155
- /**
156
- * The element internals object. Will only exist
157
- * in browsers supporting the attachInternals API
158
- * @internal
159
- */
160
- get elementInternals() {
161
- if (!supportsElementInternals) {
162
- return null;
163
- }
164
- let internals = InternalsMap.get(this);
165
- if (!internals) {
166
- internals = this.attachInternals();
167
- InternalsMap.set(this, internals);
168
- }
169
- return internals;
170
- }
171
- /**
172
- * @internal
173
- */
174
- connectedCallback() {
175
- super.connectedCallback();
176
- this.addEventListener("keypress", this._keypressHandler);
177
- if (!this.value) {
178
- this.value = this.initialValue;
179
- this.dirtyValue = false;
180
- }
181
- if (!this.elementInternals) {
182
- this.attachProxy();
183
- if (this.form) {
184
- this.form.addEventListener("reset", this.formResetCallback);
185
- }
186
- }
187
- }
188
- /**
189
- * @internal
190
- */
191
- disconnectedCallback() {
192
- super.disconnectedCallback();
193
- this.proxyEventsToBlock.forEach(
194
- (name) => this.proxy.removeEventListener(name, this.stopPropagation)
195
- );
196
- if (!this.elementInternals && this.form) {
197
- this.form.removeEventListener("reset", this.formResetCallback);
198
- }
199
- }
200
- /**
201
- * Return the current validity of the element.
202
- */
203
- checkValidity() {
204
- return this.elementInternals ? this.elementInternals.checkValidity() : this.proxy.checkValidity();
205
- }
206
- /**
207
- * Return the current validity of the element.
208
- * If false, fires an invalid event at the element.
209
- */
210
- reportValidity() {
211
- return this.elementInternals ? this.elementInternals.reportValidity() : this.proxy.reportValidity();
212
- }
213
- /**
214
- * Set the validity of the control. In cases when the elementInternals object is not
215
- * available (and the proxy element is used to report validity), this function will
216
- * do nothing unless a message is provided, at which point the setCustomValidity method
217
- * of the proxy element will be invoked with the provided message.
218
- * @param flags - Validity flags
219
- * @param message - Optional message to supply
220
- * @param anchor - Optional element used by UA to display an interactive validation UI
221
- * @internal
222
- */
223
- setValidity(flags, message, anchor) {
224
- if ("valid" in flags && this.disabled) {
225
- const { valid, ...cleanFlags } = flags;
226
- flags = cleanFlags;
227
- }
228
- /* v8 ignore else -- @preserve */
229
- if (this.elementInternals) {
230
- this.elementInternals.setValidity(flags, message, anchor);
231
- } else if (typeof message === "string") {
232
- this.proxy.setCustomValidity(message);
233
- }
234
- }
235
- /**
236
- * Invoked when a connected component's form or fieldset has its disabled
237
- * state changed.
238
- * @param disabled - the disabled value of the form / fieldset
239
- * @internal
240
- */
241
- formDisabledCallback(disabled) {
242
- this.disabled = disabled;
243
- }
244
- /**
245
- * @internal
246
- */
247
- formResetCallback() {
248
- this.value = this.initialValue;
249
- this.dirtyValue = false;
250
- }
251
- /**
252
- * Attach the proxy element to the DOM
253
- * @internal
254
- */
255
- attachProxy() {
256
- if (!this.proxyInitialized) {
257
- this.proxyInitialized = true;
258
- this.proxy.style.display = "none";
259
- this.proxyEventsToBlock.forEach(
260
- (name) => this.proxy.addEventListener(name, this.stopPropagation)
261
- );
262
- this.proxy.disabled = this.disabled;
263
- this.proxy.required = this.required;
264
- if (typeof this.name === "string") {
265
- this.proxy.name = this.name;
266
- }
267
- /* v8 ignore else -- @preserve */
268
- if (typeof this.value === "string") {
269
- this.proxy.value = this.value;
270
- }
271
- this.proxy.setAttribute("slot", proxySlotName);
272
- this.proxySlot = document.createElement("slot");
273
- this.proxySlot.setAttribute("name", proxySlotName);
274
- }
275
- this.shadowRoot.appendChild(this.proxySlot);
276
- this.appendChild(this.proxy);
277
- }
278
- /**
279
- * Detach the proxy element from the DOM
280
- * @internal
281
- */
282
- detachProxy() {
283
- this.removeChild(this.proxy);
284
- this.shadowRoot.removeChild(this.proxySlot);
285
- }
286
- /**
287
- * Sets the validity of the custom element. By default this uses the proxy element to determine
288
- * validity, but this can be extended or replaced in implementation.
289
- *
290
- * @param anchor - The anchor element to provide to ElementInternals.setValidity for surfacing the browser's constraint validation UI
291
- * @internal
292
- */
293
- validate(anchor) {
294
- if (this.proxy instanceof HTMLElement && this.elementInternals) {
295
- const isValid = this.proxy.validity.valid;
296
- const control = this.control;
297
- const controlIsInvalidDueToMinOrMaxLength = control && control.validity && !control.validity.valid && (control.validity.tooShort || control.validity.tooLong);
298
- if (isValid && controlIsInvalidDueToMinOrMaxLength) {
299
- this.setValidity(control.validity, control.validationMessage, anchor);
300
- } else {
301
- this.setValidity(
302
- this.proxy.validity,
303
- this.proxy.validationMessage,
304
- anchor
305
- );
306
- }
307
- }
308
- }
309
- /**
310
- * Associates the provided value (and optional state) with the parent form.
311
- * @param value - The value to set
312
- * @param state - The state object provided to during session restores and when autofilling.
313
- * @internal
314
- */
315
- setFormValue(value, state) {
316
- if (this.elementInternals) {
317
- this.elementInternals.setFormValue(value, state || value);
318
- }
319
- }
320
- /**
321
- * @internal
322
- */
323
- _keypressHandler(e) {
324
- switch (e.key) {
325
- case keyEnter:
326
- if (this.form instanceof HTMLFormElement) {
327
- const defaultButton = this.form.querySelector(
328
- "[type=submit]"
329
- );
330
- defaultButton?.click();
331
- }
332
- break;
333
- }
334
- }
335
- /**
336
- * Used to stop propagation of proxy element events
337
- * @param e - Event object
338
- * @internal
339
- */
340
- stopPropagation(e) {
341
- e.stopPropagation();
342
- }
343
- }
344
- __decorateClass([
345
- attr({ attribute: "current-value" })
346
- ], FormAssociatedElement.prototype, "value");
347
- __decorateClass([
348
- attr({ mode: "fromView", attribute: "value" })
349
- ], FormAssociatedElement.prototype, "initialValue");
350
- __decorateClass([
351
- attr({ mode: "boolean" })
352
- ], FormAssociatedElement.prototype, "disabled");
353
- __decorateClass([
354
- attr
355
- ], FormAssociatedElement.prototype, "name");
356
- __decorateClass([
357
- attr({ mode: "boolean" })
358
- ], FormAssociatedElement.prototype, "required");
359
- return FormAssociatedElement;
303
+ /**
304
+ * `current-checked` is inexplicably not a boolean attribute, so we need to convert from "true"/"false" to boolean.
305
+ */
306
+ var currentCheckedConverter = {
307
+ fromView(value) {
308
+ if (typeof value === "string") return value.toLowerCase() === "true";
309
+ return !!value;
310
+ },
311
+ toView(value) {
312
+ return value ? "true" : "false";
313
+ }
360
314
  };
361
- const currentCheckedConverter = {
362
- fromView(value) {
363
- if (typeof value === "string") {
364
- return value.toLowerCase() === "true";
365
- }
366
- return !!value;
367
- },
368
- toView(value) {
369
- return value ? "true" : "false";
370
- }
315
+ /**
316
+ * Extends FormAssociated to provide `checked`/....
317
+ */
318
+ var CheckableFormAssociated = (Base) => {
319
+ class CheckableFormAssociatedElement extends FormAssociated(Base) {
320
+ constructor(..._args) {
321
+ super(..._args);
322
+ this.dirtyChecked = false;
323
+ this.defaultChecked = false;
324
+ }
325
+ /**
326
+ * @internal
327
+ */
328
+ defaultCheckedChanged() {
329
+ /* v8 ignore else -- @preserve */
330
+ if (!this.dirtyChecked) {
331
+ this.checked = this.defaultChecked;
332
+ this.dirtyChecked = false;
333
+ }
334
+ }
335
+ /**
336
+ * @internal
337
+ */
338
+ checkedChanged(prev, _next) {
339
+ if (!this.dirtyChecked) this.dirtyChecked = true;
340
+ this.updateForm();
341
+ if (this.proxy instanceof HTMLInputElement) this.proxy.checked = this.checked;
342
+ if (prev !== void 0) this.$emit("change");
343
+ this.validate();
344
+ }
345
+ /**
346
+ * @internal
347
+ * @deprecated Use `defaultChecked` instead.
348
+ */
349
+ get checkedAttribute() {
350
+ return this.defaultChecked;
351
+ }
352
+ set checkedAttribute(value) {
353
+ this.defaultChecked = value;
354
+ }
355
+ /**
356
+ * @internal
357
+ * @deprecated Use `checked` instead.
358
+ */
359
+ get currentChecked() {
360
+ return this.checked;
361
+ }
362
+ set currentChecked(value) {
363
+ this.checked = value;
364
+ }
365
+ /**
366
+ * @internal
367
+ */
368
+ updateForm() {
369
+ const value = this.checked ? this.value : null;
370
+ this.setFormValue(value, value);
371
+ }
372
+ /**
373
+ * @internal
374
+ */
375
+ connectedCallback() {
376
+ super.connectedCallback();
377
+ this.updateForm();
378
+ }
379
+ /**
380
+ * @internal
381
+ */
382
+ formResetCallback() {
383
+ super.formResetCallback();
384
+ this.checked = !!this.defaultChecked;
385
+ this.dirtyChecked = false;
386
+ }
387
+ }
388
+ __decorate([attr({
389
+ attribute: "checked",
390
+ mode: "boolean"
391
+ })], CheckableFormAssociatedElement.prototype, "defaultChecked", void 0);
392
+ __decorate([attr({
393
+ attribute: "current-checked",
394
+ converter: currentCheckedConverter
395
+ })], CheckableFormAssociatedElement.prototype, "checked", void 0);
396
+ return CheckableFormAssociatedElement;
371
397
  };
372
- const CheckableFormAssociated = (Base) => {
373
- class CheckableFormAssociatedElement extends FormAssociated(Base) {
374
- constructor() {
375
- super(...arguments);
376
- /**
377
- * Tracks whether the "checked" property has been changed.
378
- * This is necessary to provide consistent behavior with
379
- * normal input checkboxes
380
- * @internal
381
- */
382
- this.dirtyChecked = false;
383
- this.defaultChecked = false;
384
- }
385
- /**
386
- * @internal
387
- */
388
- defaultCheckedChanged() {
389
- /* v8 ignore else -- @preserve */
390
- if (!this.dirtyChecked) {
391
- this.checked = this.defaultChecked;
392
- this.dirtyChecked = false;
393
- }
394
- }
395
- /**
396
- * @internal
397
- */
398
- checkedChanged(prev, _next) {
399
- if (!this.dirtyChecked) {
400
- this.dirtyChecked = true;
401
- }
402
- this.updateForm();
403
- if (this.proxy instanceof HTMLInputElement) {
404
- this.proxy.checked = this.checked;
405
- }
406
- if (prev !== void 0) {
407
- this.$emit("change");
408
- }
409
- this.validate();
410
- }
411
- /**
412
- * @deprecated Use `defaultChecked` instead.
413
- */
414
- get checkedAttribute() {
415
- return this.defaultChecked;
416
- }
417
- set checkedAttribute(value) {
418
- this.defaultChecked = value;
419
- }
420
- /**
421
- * @deprecated Use `checked` instead.
422
- */
423
- get currentChecked() {
424
- return this.checked;
425
- }
426
- set currentChecked(value) {
427
- this.checked = value;
428
- }
429
- /**
430
- * @internal
431
- */
432
- updateForm() {
433
- const value = this.checked ? this.value : null;
434
- this.setFormValue(value, value);
435
- }
436
- /**
437
- * @internal
438
- */
439
- connectedCallback() {
440
- super.connectedCallback();
441
- this.updateForm();
442
- }
443
- /**
444
- * @internal
445
- */
446
- formResetCallback() {
447
- super.formResetCallback();
448
- this.checked = !!this.defaultChecked;
449
- this.dirtyChecked = false;
450
- }
451
- }
452
- __decorateClass([
453
- attr({
454
- attribute: "checked",
455
- mode: "boolean"
456
- })
457
- ], CheckableFormAssociatedElement.prototype, "defaultChecked");
458
- __decorateClass([
459
- attr({ attribute: "current-checked", converter: currentCheckedConverter })
460
- ], CheckableFormAssociatedElement.prototype, "checked");
461
- return CheckableFormAssociatedElement;
462
- };
463
-
464
- export { CheckableFormAssociated as C, FormAssociated as F };
398
+ //#endregion
399
+ export { FormAssociated as n, CheckableFormAssociated as t };