@vonage/vivid 5.16.0 → 5.18.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 (564) hide show
  1. package/accordion/definition.cjs +6 -6
  2. package/accordion/definition.js +1 -1
  3. package/accordion/index.cjs +1 -1
  4. package/accordion/index.js +2 -2
  5. package/accordion-item/definition.cjs +5 -5
  6. package/accordion-item/definition.js +1 -1
  7. package/accordion-item/index.cjs +1 -1
  8. package/accordion-item/index.js +2 -2
  9. package/action-group/index.cjs +3 -3
  10. package/action-group/index.js +5 -5
  11. package/alert/definition.cjs +5 -5
  12. package/alert/definition.js +1 -1
  13. package/alert/index.cjs +3 -3
  14. package/alert/index.js +15 -14
  15. package/audio-player/definition.cjs +5 -5
  16. package/audio-player/definition.js +1 -1
  17. package/audio-player/index.cjs +16 -16
  18. package/audio-player/index.js +29 -28
  19. package/avatar/definition.cjs +5 -5
  20. package/avatar/definition.js +1 -1
  21. package/avatar/index.cjs +4 -4
  22. package/avatar/index.js +12 -11
  23. package/badge/definition.cjs +5 -5
  24. package/badge/definition.js +1 -1
  25. package/badge/index.cjs +1 -4
  26. package/badge/index.js +4 -20
  27. package/banner/definition.cjs +5 -5
  28. package/banner/definition.js +1 -1
  29. package/banner/index.cjs +3 -3
  30. package/banner/index.js +14 -13
  31. package/breadcrumb-item/definition.cjs +4 -4
  32. package/breadcrumb-item/definition.js +1 -1
  33. package/breadcrumb-item/index.cjs +1 -1
  34. package/breadcrumb-item/index.js +1 -0
  35. package/bundled/affix.cjs +1 -1
  36. package/bundled/affix.js +5 -5
  37. package/bundled/base-color-picker.cjs +2 -2
  38. package/bundled/base-color-picker.js +5 -5
  39. package/bundled/button.cjs +1 -1
  40. package/bundled/button.js +2 -2
  41. package/bundled/calendar-picker.template.cjs +2 -2
  42. package/bundled/calendar-picker.template.js +498 -498
  43. package/bundled/definition10.cjs +18 -30
  44. package/bundled/definition10.js +53 -155
  45. package/bundled/definition11.cjs +10 -19
  46. package/bundled/definition11.js +25 -74
  47. package/bundled/definition12.cjs +72 -18
  48. package/bundled/definition12.js +171 -107
  49. package/bundled/definition13.cjs +18 -17
  50. package/bundled/definition13.js +46 -66
  51. package/bundled/definition14.cjs +5 -10
  52. package/bundled/definition14.js +9 -27
  53. package/bundled/definition15.cjs +17 -71
  54. package/bundled/definition15.js +64 -181
  55. package/bundled/definition16.cjs +12 -4
  56. package/bundled/definition16.js +79 -14
  57. package/bundled/definition17.cjs +19 -13
  58. package/bundled/definition17.js +118 -69
  59. package/bundled/definition18.cjs +87 -12
  60. package/bundled/definition18.js +409 -52
  61. package/bundled/definition19.cjs +5 -87
  62. package/bundled/definition19.js +14 -422
  63. package/bundled/definition2.cjs +3 -14
  64. package/bundled/definition2.js +16 -49
  65. package/bundled/definition20.cjs +30 -5
  66. package/bundled/definition20.js +159 -9
  67. package/bundled/definition21.cjs +28 -19
  68. package/bundled/definition21.js +164 -47
  69. package/bundled/definition22.cjs +4 -24
  70. package/bundled/definition22.js +18 -88
  71. package/bundled/definition23.cjs +12 -0
  72. package/bundled/definition23.js +37 -0
  73. package/bundled/definition24.cjs +39 -0
  74. package/bundled/definition24.js +72 -0
  75. package/bundled/definition3.cjs +1 -1
  76. package/bundled/definition3.js +24 -21
  77. package/bundled/definition4.cjs +23 -38
  78. package/bundled/definition4.js +81 -63
  79. package/bundled/definition5.cjs +2 -2
  80. package/bundled/definition5.js +5 -5
  81. package/bundled/definition6.cjs +11 -11
  82. package/bundled/definition6.js +57 -41
  83. package/bundled/definition9.cjs +12 -30
  84. package/bundled/definition9.js +55 -148
  85. package/bundled/divider.cjs +1 -1
  86. package/bundled/divider.js +5 -5
  87. package/bundled/listbox.cjs +1 -1
  88. package/bundled/listbox.js +1 -1
  89. package/bundled/localized.cjs +1 -1
  90. package/bundled/localized.js +1 -0
  91. package/bundled/mixins.cjs +5 -5
  92. package/bundled/mixins.js +49 -49
  93. package/bundled/numberConverter.cjs +12 -0
  94. package/bundled/numberConverter.js +38 -0
  95. package/bundled/picker-field.template.cjs +8 -7
  96. package/bundled/picker-field.template.js +16 -15
  97. package/bundled/slider.template.cjs +7 -7
  98. package/bundled/slider.template.js +12 -12
  99. package/bundled/slottable-request.cjs +1 -1
  100. package/bundled/slottable-request.js +8 -38
  101. package/bundled/time-selection-picker.template.cjs +4 -4
  102. package/bundled/time-selection-picker.template.js +35 -35
  103. package/bundled/utils.cjs +1 -0
  104. package/bundled/utils.js +1420 -0
  105. package/bundled/vivid-element.cjs +1 -1
  106. package/bundled/vivid-element.js +1 -1
  107. package/button/definition.cjs +5 -5
  108. package/button/definition.js +1 -1
  109. package/button/index.cjs +1 -1
  110. package/button/index.js +1 -1
  111. package/calendar/index.cjs +11 -11
  112. package/calendar/index.js +30 -237
  113. package/calendar-event/index.cjs +3 -3
  114. package/calendar-event/index.js +4 -4
  115. package/card/definition.cjs +5 -5
  116. package/card/definition.js +1 -1
  117. package/card/index.cjs +15 -12
  118. package/card/index.js +17 -13
  119. package/checkbox/definition.cjs +5 -5
  120. package/checkbox/definition.js +1 -1
  121. package/checkbox/index.cjs +1 -1
  122. package/checkbox/index.js +2 -2
  123. package/color-picker/definition.cjs +5 -5
  124. package/color-picker/definition.js +2 -2
  125. package/color-picker/index.cjs +10 -10
  126. package/color-picker/index.js +58 -57
  127. package/combobox/definition.cjs +5 -5
  128. package/combobox/definition.js +2 -2
  129. package/combobox/index.cjs +9 -8
  130. package/combobox/index.js +40 -35
  131. package/contextual-help/definition.cjs +5 -5
  132. package/contextual-help/definition.js +2 -2
  133. package/contextual-help/index.cjs +1 -1
  134. package/contextual-help/index.js +2 -2
  135. package/country/definition.cjs +5 -5
  136. package/country/definition.js +1 -1
  137. package/country/index.cjs +1 -12
  138. package/country/index.js +4 -1216
  139. package/country-group/definition.cjs +6 -0
  140. package/country-group/definition.js +3 -0
  141. package/country-group/index.cjs +43 -0
  142. package/country-group/index.js +166 -0
  143. package/custom-elements.json +1274 -200
  144. package/data-grid/definition.cjs +9 -9
  145. package/data-grid/definition.js +2 -2
  146. package/data-grid/index.cjs +18 -18
  147. package/data-grid/index.js +260 -262
  148. package/date-picker/definition.cjs +5 -5
  149. package/date-picker/definition.js +2 -2
  150. package/date-picker/index.cjs +1 -1
  151. package/date-picker/index.js +13 -13
  152. package/date-range-picker/definition.cjs +5 -5
  153. package/date-range-picker/definition.js +2 -2
  154. package/date-range-picker/index.cjs +1 -1
  155. package/date-range-picker/index.js +8 -8
  156. package/date-time-picker/definition.cjs +5 -5
  157. package/date-time-picker/definition.js +2 -2
  158. package/date-time-picker/index.cjs +4 -4
  159. package/date-time-picker/index.js +25 -25
  160. package/dial-pad/definition.cjs +5 -5
  161. package/dial-pad/definition.js +2 -2
  162. package/dial-pad/index.cjs +6 -5
  163. package/dial-pad/index.js +14 -12
  164. package/dialog/definition.cjs +5 -5
  165. package/dialog/definition.js +2 -2
  166. package/dialog/index.cjs +6 -6
  167. package/dialog/index.js +17 -16
  168. package/divider/definition.cjs +1 -1
  169. package/divider/definition.js +1 -1
  170. package/divider/index.cjs +1 -1
  171. package/divider/index.js +1 -1
  172. package/empty-state/definition.cjs +5 -5
  173. package/empty-state/definition.js +2 -2
  174. package/empty-state/index.cjs +2 -2
  175. package/empty-state/index.js +6 -5
  176. package/fab/definition.cjs +5 -5
  177. package/fab/definition.js +2 -2
  178. package/fab/index.cjs +4 -4
  179. package/fab/index.js +13 -12
  180. package/file-picker/definition.cjs +5 -5
  181. package/file-picker/definition.js +2 -2
  182. package/file-picker/index.cjs +20 -17
  183. package/file-picker/index.js +40 -36
  184. package/flag/definition.cjs +6 -0
  185. package/flag/definition.js +3 -0
  186. package/flag/index.cjs +10 -0
  187. package/flag/index.js +61 -0
  188. package/header/definition.cjs +1 -1
  189. package/header/definition.js +1 -1
  190. package/header/index.cjs +4 -4
  191. package/header/index.js +5 -5
  192. package/icon/definition.cjs +1 -0
  193. package/icon/definition.js +1 -0
  194. package/icon/index.cjs +1 -1
  195. package/icon/index.js +1 -0
  196. package/index.cjs +204 -192
  197. package/index.js +55 -52
  198. package/layout/definition.cjs +1 -1
  199. package/layout/definition.js +1 -1
  200. package/lib/button/button.d.ts +1 -0
  201. package/lib/combobox/combobox.d.ts +0 -3
  202. package/lib/components.d.ts +2 -0
  203. package/lib/country/countries-data.d.ts +1 -0
  204. package/lib/country/{country-code-to-flag-icon.d.ts → utils.d.ts} +0 -3
  205. package/lib/country-group/country-group.d.ts +829 -0
  206. package/lib/country-group/country-group.template.d.ts +3 -0
  207. package/lib/country-group/definition.d.ts +3 -0
  208. package/lib/country-group/index.d.ts +1 -0
  209. package/lib/country-group/locale.d.ts +3 -0
  210. package/lib/date-picker/date-picker.d.ts +4 -0
  211. package/lib/date-range-picker/date-range-picker.d.ts +2 -0
  212. package/lib/date-time-picker/date-time-picker.d.ts +4 -4
  213. package/lib/dial-pad/dial-pad.d.ts +6 -2
  214. package/lib/dialog/dialog.d.ts +0 -1
  215. package/lib/flag/definition.d.ts +3 -0
  216. package/lib/flag/flag.d.ts +8 -0
  217. package/lib/flag/flag.template.d.ts +3 -0
  218. package/lib/flag/index.d.ts +1 -0
  219. package/lib/icon/icon.d.ts +1 -2
  220. package/lib/menu/menu.d.ts +0 -1
  221. package/lib/option/option.d.ts +0 -1
  222. package/lib/rich-text-editor/rte/exports.d.ts +1 -0
  223. package/lib/rich-text-editor/rte/features/alignment.d.ts +1 -1
  224. package/lib/rich-text-editor/rte/features/character-count.d.ts +21 -0
  225. package/lib/rich-text-editor/rte/features/font-size-picker.d.ts +1 -1
  226. package/lib/rich-text-editor/rte/features/internal/basic-text-blocks.d.ts +1 -1
  227. package/lib/rich-text-editor/rte/features/keyboard-shortcuts.d.ts +1 -1
  228. package/lib/rich-text-editor/rte/features/text-color-picker.d.ts +1 -1
  229. package/lib/rich-text-editor/rte/public-interface.d.ts +6 -0
  230. package/lib/searchable-select/option-tag.d.ts +3 -2
  231. package/lib/searchable-select/searchable-select.d.ts +3 -1
  232. package/lib/table/definition.d.ts +2 -1
  233. package/lib/table/table-header-cell.d.ts +3 -0
  234. package/lib/table/table-sorting-button.d.ts +415 -0
  235. package/lib/table/table-sorting-button.template.d.ts +3 -0
  236. package/lib/tag-name-map.d.ts +2 -1
  237. package/lib/time-picker/time-picker.d.ts +2 -0
  238. package/locales/de-DE.cjs +5 -178
  239. package/locales/de-DE.js +3 -179
  240. package/locales/en-GB.cjs +5 -9
  241. package/locales/en-GB.js +3 -10
  242. package/locales/en-US.cjs +269 -2
  243. package/locales/en-US.js +266 -1
  244. package/locales/ja-JP.cjs +5 -171
  245. package/locales/ja-JP.js +3 -172
  246. package/locales/zh-CN.cjs +5 -172
  247. package/locales/zh-CN.js +3 -173
  248. package/menu/definition.cjs +5 -5
  249. package/menu/definition.js +1 -1
  250. package/menu/index.cjs +1 -1
  251. package/menu/index.js +2 -2
  252. package/menu-item/definition.cjs +6 -6
  253. package/menu-item/definition.js +1 -1
  254. package/menu-item/index.cjs +1 -1
  255. package/menu-item/index.js +2 -2
  256. package/nav/definition.cjs +1 -1
  257. package/nav/definition.js +1 -1
  258. package/nav-disclosure/definition.cjs +5 -5
  259. package/nav-disclosure/definition.js +2 -2
  260. package/nav-disclosure/index.cjs +4 -4
  261. package/nav-disclosure/index.js +13 -12
  262. package/nav-item/definition.cjs +5 -5
  263. package/nav-item/definition.js +2 -2
  264. package/nav-item/index.cjs +2 -2
  265. package/nav-item/index.js +12 -11
  266. package/note/definition.cjs +5 -5
  267. package/note/definition.js +2 -2
  268. package/note/index.cjs +3 -3
  269. package/note/index.js +11 -10
  270. package/number-field/definition.cjs +5 -5
  271. package/number-field/definition.js +2 -2
  272. package/number-field/index.cjs +4 -4
  273. package/number-field/index.js +29 -28
  274. package/option/definition.cjs +5 -5
  275. package/option/definition.js +2 -2
  276. package/option/index.cjs +1 -1
  277. package/option/index.js +2 -2
  278. package/package.json +9 -10
  279. package/pagination/definition.cjs +5 -5
  280. package/pagination/definition.js +2 -2
  281. package/pagination/index.cjs +3 -3
  282. package/pagination/index.js +16 -16
  283. package/popover/definition.cjs +5 -5
  284. package/popover/definition.js +2 -2
  285. package/popover/index.cjs +7 -7
  286. package/popover/index.js +12 -11
  287. package/popup/definition.cjs +4 -4
  288. package/popup/definition.js +1 -1
  289. package/popup/index.cjs +1 -1
  290. package/popup/index.js +1 -1
  291. package/progress/definition.cjs +1 -1
  292. package/progress/definition.js +1 -1
  293. package/progress/index.cjs +2 -2
  294. package/progress/index.js +5 -5
  295. package/radio/definition.cjs +1 -1
  296. package/radio/definition.js +1 -1
  297. package/radio/index.cjs +1 -1
  298. package/radio/index.js +1 -1
  299. package/radio-group/definition.cjs +5 -5
  300. package/radio-group/definition.js +2 -2
  301. package/radio-group/index.cjs +4 -4
  302. package/radio-group/index.js +11 -11
  303. package/range-slider/definition.cjs +5 -5
  304. package/range-slider/definition.js +2 -2
  305. package/range-slider/index.cjs +4 -4
  306. package/range-slider/index.js +39 -36
  307. package/rich-text-editor/definition.cjs +32 -31
  308. package/rich-text-editor/definition.js +3 -3
  309. package/rich-text-editor/index.cjs +13 -13
  310. package/rich-text-editor/index.js +1887 -1830
  311. package/rich-text-view/definition.cjs +1 -1
  312. package/rich-text-view/definition.js +1 -1
  313. package/rich-text-view/index.cjs +1 -1
  314. package/rich-text-view/index.js +8 -8
  315. package/searchable-select/definition.cjs +4 -4
  316. package/searchable-select/definition.js +2 -2
  317. package/searchable-select/index.cjs +15 -13
  318. package/searchable-select/index.js +75 -72
  319. package/select/definition.cjs +5 -5
  320. package/select/definition.js +2 -2
  321. package/select/index.cjs +1 -1
  322. package/select/index.js +2 -2
  323. package/selectable-box/definition.cjs +5 -5
  324. package/selectable-box/definition.js +2 -2
  325. package/selectable-box/index.cjs +7 -7
  326. package/selectable-box/index.js +12 -12
  327. package/shared/foundation/test-utilities/fixture.d.ts +1 -1
  328. package/shared/icon/utils.d.ts +1 -0
  329. package/shared/localization/Locale.d.ts +2 -0
  330. package/shared/patterns/linkable.d.ts +1 -1
  331. package/shared/picker-field/mixins/calendar-picker.d.ts +1 -0
  332. package/shared/picker-field/mixins/calendar-picker.template.d.ts +1 -0
  333. package/shared/picker-field/mixins/min-max-calendar-picker.d.ts +1 -0
  334. package/shared/picker-field/mixins/single-date-picker.d.ts +1 -0
  335. package/shared/picker-field/mixins/single-value-picker.d.ts +1 -0
  336. package/shared/picker-field/mixins/time-selection-picker.d.ts +1 -0
  337. package/shared/picker-field/mixins/time-selection-picker.template.d.ts +2 -0
  338. package/shared/picker-field/picker-field.d.ts +2 -0
  339. package/side-drawer/definition.cjs +1 -1
  340. package/side-drawer/definition.js +1 -1
  341. package/simple-color-picker/definition.cjs +5 -5
  342. package/simple-color-picker/definition.js +2 -2
  343. package/simple-color-picker/index.cjs +3 -3
  344. package/simple-color-picker/index.js +15 -14
  345. package/slider/definition.cjs +5 -5
  346. package/slider/definition.js +1 -1
  347. package/slider/index.cjs +1 -1
  348. package/slider/index.js +1 -1
  349. package/split-button/definition.cjs +5 -5
  350. package/split-button/definition.js +2 -2
  351. package/split-button/index.cjs +6 -6
  352. package/split-button/index.js +17 -16
  353. package/status/definition.cjs +5 -5
  354. package/status/definition.js +2 -2
  355. package/status/index.cjs +2 -2
  356. package/status/index.js +11 -10
  357. package/switch/definition.cjs +5 -5
  358. package/switch/definition.js +2 -2
  359. package/switch/index.cjs +4 -4
  360. package/switch/index.js +11 -10
  361. package/tab/definition.cjs +5 -5
  362. package/tab/definition.js +2 -2
  363. package/tab/index.cjs +1 -1
  364. package/tab/index.js +2 -2
  365. package/tab-panel/definition.cjs +1 -1
  366. package/tab-panel/definition.js +1 -1
  367. package/tab-panel/index.cjs +1 -1
  368. package/tab-panel/index.js +1 -1
  369. package/table/definition.cjs +4 -1
  370. package/table/definition.js +3 -2
  371. package/table/index.cjs +19 -10
  372. package/table/index.js +70 -21
  373. package/tabs/definition.cjs +6 -6
  374. package/tabs/definition.js +2 -2
  375. package/tabs/index.cjs +2 -2
  376. package/tabs/index.js +5 -5
  377. package/tag/definition.cjs +5 -5
  378. package/tag/definition.js +2 -2
  379. package/tag/index.cjs +8 -8
  380. package/tag/index.js +14 -13
  381. package/tag-group/definition.cjs +1 -1
  382. package/tag-group/definition.js +1 -1
  383. package/tag-group/index.cjs +3 -3
  384. package/tag-group/index.js +5 -5
  385. package/text-area/definition.cjs +5 -5
  386. package/text-area/definition.js +2 -2
  387. package/text-area/index.cjs +2 -2
  388. package/text-area/index.js +13 -13
  389. package/text-field/definition.cjs +5 -5
  390. package/text-field/definition.js +2 -2
  391. package/text-field/index.cjs +1 -1
  392. package/text-field/index.js +2 -2
  393. package/time-picker/definition.cjs +4 -4
  394. package/time-picker/definition.js +2 -2
  395. package/time-picker/index.cjs +1 -1
  396. package/time-picker/index.js +2 -2
  397. package/toggletip/definition.cjs +5 -5
  398. package/toggletip/definition.js +2 -2
  399. package/toggletip/index.cjs +1 -1
  400. package/toggletip/index.js +2 -2
  401. package/tooltip/definition.cjs +5 -5
  402. package/tooltip/definition.js +2 -2
  403. package/tooltip/index.cjs +1 -1
  404. package/tooltip/index.js +2 -2
  405. package/tree-item/definition.cjs +5 -5
  406. package/tree-item/definition.js +2 -2
  407. package/tree-item/index.cjs +1 -1
  408. package/tree-item/index.js +2 -2
  409. package/tree-view/definition.cjs +5 -5
  410. package/tree-view/definition.js +2 -2
  411. package/tree-view/index.cjs +3 -3
  412. package/tree-view/index.js +18 -18
  413. package/unbundled/button.cjs +2 -2
  414. package/unbundled/button.js +2 -2
  415. package/unbundled/calendar-picker.template.cjs +4347 -9
  416. package/unbundled/calendar-picker.template.js +4345 -7
  417. package/unbundled/chunk.cjs +0 -22
  418. package/unbundled/definition11.cjs +6 -0
  419. package/unbundled/definition11.js +6 -0
  420. package/unbundled/definition13.cjs +1 -8
  421. package/unbundled/definition13.js +1 -8
  422. package/unbundled/definition14.cjs +3 -2
  423. package/unbundled/definition14.js +3 -2
  424. package/unbundled/definition2.cjs +5 -75
  425. package/unbundled/definition2.js +1 -71
  426. package/unbundled/definition21.cjs +1 -2
  427. package/unbundled/definition21.js +1 -2
  428. package/unbundled/definition22.cjs +7 -2
  429. package/unbundled/definition22.js +7 -2
  430. package/unbundled/definition24.cjs +98 -979
  431. package/unbundled/definition24.js +93 -974
  432. package/unbundled/definition25.cjs +37 -322
  433. package/unbundled/definition25.js +33 -318
  434. package/unbundled/definition26.cjs +317 -91
  435. package/unbundled/definition26.js +313 -87
  436. package/unbundled/definition27.cjs +94 -192
  437. package/unbundled/definition27.js +91 -183
  438. package/unbundled/definition28.cjs +388 -395
  439. package/unbundled/definition28.js +388 -395
  440. package/unbundled/definition29.cjs +189 -110
  441. package/unbundled/definition29.js +180 -107
  442. package/unbundled/definition30.cjs +520 -36
  443. package/unbundled/definition30.js +519 -35
  444. package/unbundled/definition31.cjs +2 -1189
  445. package/unbundled/definition31.js +1 -1188
  446. package/unbundled/definition32.cjs +207 -1835
  447. package/unbundled/definition32.js +203 -1807
  448. package/unbundled/definition33.cjs +85 -228
  449. package/unbundled/definition33.js +82 -165
  450. package/unbundled/definition34.cjs +1887 -25
  451. package/unbundled/definition34.js +1857 -24
  452. package/unbundled/definition35.cjs +315 -121
  453. package/unbundled/definition35.js +236 -114
  454. package/unbundled/definition36.cjs +25 -405
  455. package/unbundled/definition36.js +22 -397
  456. package/unbundled/definition37.cjs +49 -140
  457. package/unbundled/definition37.js +46 -137
  458. package/unbundled/definition38.cjs +346 -329
  459. package/unbundled/definition38.js +343 -326
  460. package/unbundled/definition39.cjs +183 -234
  461. package/unbundled/definition39.js +181 -232
  462. package/unbundled/definition40.cjs +377 -47
  463. package/unbundled/definition40.js +372 -42
  464. package/unbundled/definition41.cjs +256 -57
  465. package/unbundled/definition41.js +255 -56
  466. package/unbundled/definition42.cjs +45 -421
  467. package/unbundled/definition42.js +41 -417
  468. package/unbundled/definition43.cjs +63 -49
  469. package/unbundled/definition43.js +61 -47
  470. package/unbundled/definition44.cjs +438 -30
  471. package/unbundled/definition44.js +434 -25
  472. package/unbundled/definition45.cjs +46 -84
  473. package/unbundled/definition45.js +43 -81
  474. package/unbundled/definition46.cjs +29 -54
  475. package/unbundled/definition46.js +24 -50
  476. package/unbundled/definition47.cjs +93 -21
  477. package/unbundled/definition47.js +91 -16
  478. package/unbundled/definition48.cjs +49 -33
  479. package/unbundled/definition48.js +46 -30
  480. package/unbundled/definition49.cjs +22 -347
  481. package/unbundled/definition49.js +16 -344
  482. package/unbundled/definition50.cjs +34 -211
  483. package/unbundled/definition50.js +30 -207
  484. package/unbundled/definition51.cjs +282 -242
  485. package/unbundled/definition51.js +275 -235
  486. package/unbundled/definition52.cjs +211 -51
  487. package/unbundled/definition52.js +209 -48
  488. package/unbundled/definition53.cjs +275 -131
  489. package/unbundled/definition53.js +272 -127
  490. package/unbundled/definition54.cjs +50 -261
  491. package/unbundled/definition54.js +48 -260
  492. package/unbundled/definition55.cjs +126 -443
  493. package/unbundled/definition55.js +123 -441
  494. package/unbundled/definition56.cjs +238 -12669
  495. package/unbundled/definition56.js +232 -12506
  496. package/unbundled/definition57.cjs +408 -729
  497. package/unbundled/definition57.js +406 -727
  498. package/unbundled/definition58.cjs +3619 -106
  499. package/unbundled/definition58.js +3449 -99
  500. package/unbundled/definition59.cjs +625 -868
  501. package/unbundled/definition59.js +620 -863
  502. package/unbundled/definition60.cjs +106 -108
  503. package/unbundled/definition60.js +102 -104
  504. package/unbundled/definition61.cjs +1040 -71
  505. package/unbundled/definition61.js +1035 -65
  506. package/unbundled/definition62.cjs +105 -169
  507. package/unbundled/definition62.js +101 -165
  508. package/unbundled/definition63.cjs +70 -113
  509. package/unbundled/definition63.js +65 -109
  510. package/unbundled/definition64.cjs +181 -53
  511. package/unbundled/definition64.js +178 -50
  512. package/unbundled/definition65.cjs +109 -76
  513. package/unbundled/definition65.js +109 -75
  514. package/unbundled/definition66.cjs +58 -21
  515. package/unbundled/definition66.js +55 -15
  516. package/unbundled/definition67.cjs +81 -74
  517. package/unbundled/definition67.js +79 -73
  518. package/unbundled/definition68.cjs +19 -344
  519. package/unbundled/definition68.js +14 -335
  520. package/unbundled/definition69.cjs +88 -26
  521. package/unbundled/definition69.js +85 -22
  522. package/unbundled/definition7.cjs +18 -3
  523. package/unbundled/definition7.js +18 -3
  524. package/unbundled/definition70.cjs +330 -111
  525. package/unbundled/definition70.js +320 -108
  526. package/unbundled/definition71.cjs +26 -271
  527. package/unbundled/definition71.js +21 -267
  528. package/unbundled/definition72.cjs +134 -28
  529. package/unbundled/definition72.js +125 -26
  530. package/unbundled/definition73.cjs +245 -113
  531. package/unbundled/definition73.js +242 -104
  532. package/unbundled/definition74.cjs +28 -212
  533. package/unbundled/definition74.js +26 -202
  534. package/unbundled/definition75.cjs +120 -52190
  535. package/unbundled/definition75.js +112 -52188
  536. package/unbundled/definition76.cjs +232 -0
  537. package/unbundled/definition76.js +213 -0
  538. package/unbundled/definition77.cjs +533 -0
  539. package/unbundled/definition77.js +513 -0
  540. package/unbundled/listbox.cjs +1 -1
  541. package/unbundled/listbox.js +1 -1
  542. package/unbundled/localized.cjs +2 -2
  543. package/unbundled/localized.js +1 -1
  544. package/unbundled/numberConverter.cjs +91 -0
  545. package/unbundled/numberConverter.js +74 -0
  546. package/unbundled/picker-field.template.cjs +3 -1
  547. package/unbundled/picker-field.template.js +3 -1
  548. package/unbundled/slottable-request.cjs +2 -3168
  549. package/unbundled/slottable-request.js +3 -3097
  550. package/unbundled/time-selection-picker.template.cjs +1 -1
  551. package/unbundled/time-selection-picker.template.js +1 -1
  552. package/unbundled/utils.cjs +1439 -0
  553. package/unbundled/utils.js +1428 -0
  554. package/unbundled/vivid-element.cjs +1 -1
  555. package/unbundled/vivid-element.js +1 -1
  556. package/video-player/definition.cjs +1 -1
  557. package/video-player/definition.js +1 -1
  558. package/video-player/index.cjs +3 -3
  559. package/video-player/index.js +9 -9
  560. package/vivid.api.json +860 -409
  561. package/unbundled/chunk.js +0 -33
  562. package/unbundled/en-US.cjs +0 -447
  563. package/unbundled/en-US.js +0 -443
  564. /package/{lib/icon/icon.placeholder.d.ts → shared/icon/icon-placeholder.d.ts} +0 -0
@@ -2,85 +2,213 @@ require("./chunk.cjs");
2
2
  const require_vivid_element = require("./vivid-element.cjs");
3
3
  const require_definition = require("./definition2.cjs");
4
4
  const require_decorate = require("./decorate.cjs");
5
- const require_affix = require("./affix.cjs");
6
- const require_enums = require("./enums.cjs");
5
+ const require_dialog = require("./dialog.cjs");
6
+ const require_definition$1 = require("./definition10.cjs");
7
+ const require_anchored = require("./anchored.cjs");
8
+ const require_definition$2 = require("./definition27.cjs");
9
+ const require_base_color_picker = require("./base-color-picker.cjs");
7
10
  let _microsoft_fast_element = require("@microsoft/fast-element");
8
11
  let _microsoft_fast_web_utilities = require("@microsoft/fast-web-utilities");
9
- //#region src/lib/status/status.scss?inline
10
- var status_default = ".base.connotation-information{--_connotation-color-intermediate:var(--vvd-status-information-intermediate,var(--vvd-color-information-500));--_connotation-color-faint:var(--vvd-status-information-faint,var(--vvd-color-information-50));--_connotation-color-fierce:var(--vvd-status-information-fierce,var(--vvd-color-information-700))}.base.connotation-warning{--_connotation-color-intermediate:var(--vvd-status-warning-intermediate,var(--vvd-color-warning-300));--_connotation-color-faint:var(--vvd-status-warning-faint,var(--vvd-color-warning-50));--_connotation-color-fierce:var(--vvd-status-warning-fierce,var(--vvd-color-warning-700))}.base.connotation-alert{--_connotation-color-intermediate:var(--vvd-status-alert-intermediate,var(--vvd-color-alert-500));--_connotation-color-faint:var(--vvd-status-alert-faint,var(--vvd-color-alert-50));--_connotation-color-fierce:var(--vvd-status-alert-fierce,var(--vvd-color-alert-700))}.base:not(.connotation-information,.connotation-warning,.connotation-alert){--_connotation-color-intermediate:var(--vvd-status-success-intermediate,var(--vvd-color-success-500));--_connotation-color-faint:var(--vvd-status-success-faint,var(--vvd-color-success-50));--_connotation-color-fierce:var(--vvd-status-success-fierce,var(--vvd-color-success-700))}.base{--_appearance-color-text:var(--_connotation-color-fierce);--_appearance-color-fill:var(--_connotation-color-faint);--_appearance-color-outline:var(--_connotation-color-intermediate);align-items:center;column-gap:8px;display:inline-flex}slot[name=icon],.icon{color:var(--_appearance-color-outline);font-size:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 20)) * .8)}.text{text-align:start;flex-direction:column;flex-grow:1;justify-content:center;align-items:flex-start;gap:4px;min-width:0;display:flex}.headline{color:var(--_appearance-color-outline);font:var(--vvd-typography-base-condensed-bold)}.description{color:var(--vvd-color-neutral-600);font:var(--vvd-typography-base-condensed)}.description[data-has-description=false]{display:none}";
12
+ //#region src/lib/simple-color-picker/simple-color-picker.scss?inline
13
+ var simple_color_picker_default = ".palette{grid-template-columns:repeat(var(--swatches-per-row,7), var(--_color-swatch-size,24px));display:grid}.swatch{background-color:var(--swatch-color);block-size:var(--_color-swatch-size,24px);color:var(--vvd-color-canvas);cursor:pointer;inline-size:var(--_color-swatch-size,24px);border-radius:4px;padding:0;position:relative}.swatch:not(.contrast){border:none}.swatch.contrast{border:1px solid var(--vvd-color-neutral-400);color:var(--vvd-color-canvas-text)}.swatch:focus-visible{box-shadow:0 0 0 4px color-mix(in srgb, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:none;outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px));--focus-stroke-gap-color:transparent;--focus-inset:-3px}:host :host{display:var(--_popup-display,inline)}:host :host([slotted-anchor]){--_popup-display:contents}.palette{padding:var(--_color-palette-spacing,16px);gap:var(--_color-palette-gap,12px)}::part(popup-base){block-size:max-content;max-block-size:100vh;inline-size:max-content;max-inline-size:100vw;min-block-size:var(--_color-swatch-size,24px);min-inline-size:var(--_color-swatch-size,24px)}";
11
14
  //#endregion
12
- //#region src/lib/status/status.ts
15
+ //#region src/lib/simple-color-picker/simple-color-picker.ts
13
16
  /**
14
17
  * @public
15
- * @component status
16
- * @slot - Description text below the title.
17
- * @slot icon - Optional custom icon. When not set, icon is derived from connotation.
18
+ * @component simple-color-picker
19
+ * @slot anchor - Slot for attaching the toggle button
20
+ * @event {CustomEvent<undefined>} change - Fires when the value changes
21
+ * @event {Event} input - Fires when the value of the element changes.
22
+ * @vueModel modelValue value input,@lazy:change `event.currentTarget.value`
18
23
  */
19
- var Status = class extends require_affix.AffixIcon(require_vivid_element.VividElement) {};
20
- require_decorate.__decorate([_microsoft_fast_element.attr], Status.prototype, "status", void 0);
21
- require_decorate.__decorate([_microsoft_fast_element.attr], Status.prototype, "connotation", void 0);
22
- require_decorate.__decorate([_microsoft_fast_element.observable], Status.prototype, "descriptionSlottedContent", void 0);
23
- //#endregion
24
- //#region src/lib/status/status.template.ts
25
- var DEFAULT_ICON_BY_CONNOTATION = {
26
- [require_enums.Connotation.Success]: "check-circle-solid",
27
- [require_enums.Connotation.Information]: "info-solid",
28
- [require_enums.Connotation.Warning]: "warning-solid",
29
- [require_enums.Connotation.Alert]: "error-solid"
24
+ var SimpleColorPicker = class extends require_anchored.Anchored(require_base_color_picker.BaseColorPicker(require_vivid_element.VividElement)) {
25
+ constructor(..._args) {
26
+ super(..._args);
27
+ this.placement = "top-start";
28
+ this.swatchesPerRow = 7;
29
+ this._closeOnClickOutside = (e) => {
30
+ const clickedOutside = !this.contains(e.target);
31
+ const clickedOnAnchor = this._anchorEl?.contains(e.target);
32
+ /* v8 ignore else -- @preserve */
33
+ if (clickedOutside || clickedOnAnchor) this.open = false;
34
+ };
35
+ this._closeOnEscape = (e) => {
36
+ /* v8 ignore else -- @preserve */
37
+ if (e.key === "Escape") this.open = false;
38
+ };
39
+ }
40
+ /**
41
+ * @internal
42
+ */
43
+ openChanged(_oldValue, newValue) {
44
+ this._updateListeners();
45
+ if (this._anchorEl) this.#updateAnchor(this._anchorEl);
46
+ if (newValue && this.isConnected) requestAnimationFrame(() => {
47
+ this._refreshCanvasColor();
48
+ if (this.#openedByKeyboard) {
49
+ const selectedIndex = this.swatches.findIndex((swatch) => swatch.value === this.value);
50
+ const targetIndex = selectedIndex >= 0 ? selectedIndex : 0;
51
+ this._focusSwatchByIndex(targetIndex);
52
+ }
53
+ this.#openedByKeyboard = false;
54
+ });
55
+ }
56
+ /**
57
+ * @internal
58
+ */
59
+ _getRowLength() {
60
+ return this.swatchesPerRow;
61
+ }
62
+ connectedCallback() {
63
+ super.connectedCallback();
64
+ this._updateListeners();
65
+ }
66
+ disconnectedCallback() {
67
+ super.disconnectedCallback();
68
+ this._updateListeners();
69
+ }
70
+ /**
71
+ * @internal
72
+ */
73
+ _updateListeners() {
74
+ document.removeEventListener("click", this._closeOnClickOutside);
75
+ document.removeEventListener("keydown", this._closeOnEscape);
76
+ if (this.open && this.isConnected) {
77
+ document.addEventListener("click", this._closeOnClickOutside);
78
+ document.addEventListener("keydown", this._closeOnEscape);
79
+ }
80
+ }
81
+ /**
82
+ * @internal
83
+ */
84
+ _getFocusReturnEl() {
85
+ return this._anchorEl ?? null;
86
+ }
87
+ /**
88
+ * @internal
89
+ */
90
+ _anchorElChanged(oldValue, newValue) {
91
+ if (oldValue) this.#cleanupAnchor(oldValue);
92
+ if (newValue) this.#setupAnchor(newValue);
93
+ }
94
+ /**
95
+ * @internal
96
+ */
97
+ #updateAnchor(a) {
98
+ a.setAttribute("aria-expanded", this.open.toString());
99
+ a.setAttribute("data-expanded", this.open.toString());
100
+ }
101
+ /**
102
+ * @internal
103
+ */
104
+ #setupAnchor(a) {
105
+ this.#updateAnchor(a);
106
+ a.addEventListener("click", this.#openPopup, true);
107
+ a.addEventListener("keydown", this.#handleAnchorKeydown);
108
+ a.setAttribute("aria-haspopup", "true");
109
+ }
110
+ /**
111
+ * @internal
112
+ */
113
+ #cleanupAnchor(a) {
114
+ a.removeEventListener("click", this.#openPopup, true);
115
+ a.removeEventListener("keydown", this.#handleAnchorKeydown);
116
+ a.removeAttribute("aria-expanded");
117
+ a.removeAttribute("data-expanded");
118
+ a.removeAttribute("aria-haspopup");
119
+ }
120
+ /**
121
+ * @internal
122
+ */
123
+ #openedByKeyboard = false;
124
+ /**
125
+ * @internal
126
+ */
127
+ #openPopup = () => {
128
+ if (!this.open) {
129
+ this.#openedByKeyboard = false;
130
+ _microsoft_fast_element.Updates.enqueue(() => this.open = true);
131
+ }
132
+ };
133
+ /**
134
+ * @internal
135
+ */
136
+ #handleAnchorKeydown = (event) => {
137
+ /* v8 ignore next -- @preserve */
138
+ if (event.key === "Enter" || event.key === " ") {
139
+ if (!this.open) {
140
+ this.#openedByKeyboard = true;
141
+ _microsoft_fast_element.Updates.enqueue(() => this.open = true);
142
+ }
143
+ event.preventDefault();
144
+ }
145
+ };
30
146
  };
31
- var getClasses = ({ connotation }) => (0, _microsoft_fast_web_utilities.classNames)("base", connotation ? `connotation-${connotation}` : "");
32
- function getEffectiveIcon(status) {
33
- if (status.icon) return status.icon;
34
- return status.connotation ? DEFAULT_ICON_BY_CONNOTATION[status.connotation] : void 0;
35
- }
36
- function getHeaderTemplate() {
37
- return _microsoft_fast_element.html`<div class="headline">${(x) => x.status}</div>`;
38
- }
39
- var StatusTemplate = (context) => {
40
- const affixIconTemplate = require_affix.affixIconTemplateFactory(context);
147
+ require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ mode: "fromView" })], SimpleColorPicker.prototype, "placement", void 0);
148
+ require_decorate.__decorate([(0, _microsoft_fast_element.attr)({
149
+ attribute: "swatches-per-row",
150
+ mode: "fromView",
151
+ converter: _microsoft_fast_element.nullableNumberConverter
152
+ })], SimpleColorPicker.prototype, "swatchesPerRow", void 0);
153
+ //#endregion
154
+ //#region src/lib/simple-color-picker/simple-color-picker.template.ts
155
+ var getClasses = (_) => (0, _microsoft_fast_web_utilities.classNames)("control");
156
+ var SimpleColorPickerTemplate = (context) => {
157
+ const popupTag = context.tagFor(require_definition$1.Popup);
158
+ const iconTag = context.tagFor(require_definition.Icon);
159
+ const tooltipTag = context.tagFor(require_definition$2.Tooltip);
41
160
  return _microsoft_fast_element.html`
42
- <div class="${getClasses}">
43
- ${(x) => affixIconTemplate(getEffectiveIcon(x), require_affix.IconWrapper.Slot)}
44
- <div class="text">
45
- ${(0, _microsoft_fast_element.when)((x) => x.status, getHeaderTemplate())}
46
- <div
47
- class="description"
48
- data-has-description="${(x) => (x.descriptionSlottedContent?.length ?? 0) > 0}"
49
- >
50
- <slot ${(0, _microsoft_fast_element.slotted)("descriptionSlottedContent")}></slot>
51
- </div>
161
+ ${require_anchored.anchorSlotTemplateFactory()}
162
+ <${popupTag}
163
+ class="${getClasses}"
164
+ :anchor="${(x) => x._anchorEl}"
165
+ :open="${(x) => x.open}"
166
+ placement="${(x) => x.placement}"
167
+ offset="4"
168
+ @keydown="${(x, { event }) => {
169
+ if (x.open && require_dialog.handleEscapeKeyAndStopPropogation(event)) return false;
170
+ return true;
171
+ }}"
172
+ >
173
+ <div class="palette" role="grid"
174
+ aria-rowcount="${(x) => Math.ceil(x.swatches.length / x._getRowLength())}"
175
+ aria-colcount="${(x) => x._getRowLength()}"
176
+ style="--swatches-per-row: ${(x) => x._getRowLength()};"
177
+ aria-label="${(x) => x.locale.simpleColorPicker.colorPaletteLabel}">
178
+ ${(0, _microsoft_fast_element.repeat)((x) => x.swatches, (x) => x._renderColorSwatch(iconTag, tooltipTag), { positioning: true })}
52
179
  </div>
53
- </div>
180
+ </${popupTag}>
54
181
  `;
55
182
  };
56
183
  //#endregion
57
- //#region src/lib/status/definition.ts
58
- /**
59
- * @internal
60
- */
61
- var statusDefinition = require_vivid_element.defineVividComponent("status", Status, StatusTemplate, [require_definition.iconDefinition], { styles: status_default });
184
+ //#region src/lib/simple-color-picker/definition.ts
185
+ var simpleColorPickerDefinition = require_vivid_element.defineVividComponent("simple-color-picker", SimpleColorPicker, SimpleColorPickerTemplate, [
186
+ require_definition$1.popupDefinition,
187
+ require_definition.iconDefinition,
188
+ require_definition$2.tooltipDefinition
189
+ ], { styles: simple_color_picker_default });
62
190
  /**
63
- * Registers the status element with the design system.
191
+ * Registers the simple-color-picker element with the design system.
64
192
  *
65
193
  * @param prefix - the prefix to use for the component name
66
194
  */
67
- var registerStatus = require_vivid_element.createRegisterFunction(statusDefinition);
195
+ var registerSimpleColorPicker = require_vivid_element.createRegisterFunction(simpleColorPickerDefinition);
68
196
  //#endregion
69
- Object.defineProperty(exports, "Status", {
197
+ Object.defineProperty(exports, "SimpleColorPicker", {
70
198
  enumerable: true,
71
199
  get: function() {
72
- return Status;
200
+ return SimpleColorPicker;
73
201
  }
74
202
  });
75
- Object.defineProperty(exports, "registerStatus", {
203
+ Object.defineProperty(exports, "registerSimpleColorPicker", {
76
204
  enumerable: true,
77
205
  get: function() {
78
- return registerStatus;
206
+ return registerSimpleColorPicker;
79
207
  }
80
208
  });
81
- Object.defineProperty(exports, "statusDefinition", {
209
+ Object.defineProperty(exports, "simpleColorPickerDefinition", {
82
210
  enumerable: true,
83
211
  get: function() {
84
- return statusDefinition;
212
+ return simpleColorPickerDefinition;
85
213
  }
86
214
  });
@@ -1,68 +1,196 @@
1
1
  import { o as defineVividComponent, s as createRegisterFunction, t as VividElement } from "./vivid-element.js";
2
- import { t as iconDefinition } from "./definition2.js";
2
+ import { r as Icon, t as iconDefinition } from "./definition2.js";
3
3
  import { t as __decorate } from "./decorate.js";
4
- import { a as affixIconTemplateFactory, i as IconWrapper, t as AffixIcon } from "./affix.js";
5
- import { r as Connotation } from "./enums.js";
6
- import { attr, html, observable, slotted, when } from "@microsoft/fast-element";
4
+ import { t as handleEscapeKeyAndStopPropogation } from "./dialog.js";
5
+ import { i as Popup, t as popupDefinition } from "./definition10.js";
6
+ import { n as anchorSlotTemplateFactory, t as Anchored } from "./anchored.js";
7
+ import { n as tooltipDefinition, r as Tooltip } from "./definition27.js";
8
+ import { t as BaseColorPicker } from "./base-color-picker.js";
9
+ import { Updates, attr, html, nullableNumberConverter, repeat } from "@microsoft/fast-element";
7
10
  import { classNames } from "@microsoft/fast-web-utilities";
8
- //#region src/lib/status/status.scss?inline
9
- var status_default = ".base.connotation-information{--_connotation-color-intermediate:var(--vvd-status-information-intermediate,var(--vvd-color-information-500));--_connotation-color-faint:var(--vvd-status-information-faint,var(--vvd-color-information-50));--_connotation-color-fierce:var(--vvd-status-information-fierce,var(--vvd-color-information-700))}.base.connotation-warning{--_connotation-color-intermediate:var(--vvd-status-warning-intermediate,var(--vvd-color-warning-300));--_connotation-color-faint:var(--vvd-status-warning-faint,var(--vvd-color-warning-50));--_connotation-color-fierce:var(--vvd-status-warning-fierce,var(--vvd-color-warning-700))}.base.connotation-alert{--_connotation-color-intermediate:var(--vvd-status-alert-intermediate,var(--vvd-color-alert-500));--_connotation-color-faint:var(--vvd-status-alert-faint,var(--vvd-color-alert-50));--_connotation-color-fierce:var(--vvd-status-alert-fierce,var(--vvd-color-alert-700))}.base:not(.connotation-information,.connotation-warning,.connotation-alert){--_connotation-color-intermediate:var(--vvd-status-success-intermediate,var(--vvd-color-success-500));--_connotation-color-faint:var(--vvd-status-success-faint,var(--vvd-color-success-50));--_connotation-color-fierce:var(--vvd-status-success-fierce,var(--vvd-color-success-700))}.base{--_appearance-color-text:var(--_connotation-color-fierce);--_appearance-color-fill:var(--_connotation-color-faint);--_appearance-color-outline:var(--_connotation-color-intermediate);align-items:center;column-gap:8px;display:inline-flex}slot[name=icon],.icon{color:var(--_appearance-color-outline);font-size:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 20)) * .8)}.text{text-align:start;flex-direction:column;flex-grow:1;justify-content:center;align-items:flex-start;gap:4px;min-width:0;display:flex}.headline{color:var(--_appearance-color-outline);font:var(--vvd-typography-base-condensed-bold)}.description{color:var(--vvd-color-neutral-600);font:var(--vvd-typography-base-condensed)}.description[data-has-description=false]{display:none}";
11
+ //#region src/lib/simple-color-picker/simple-color-picker.scss?inline
12
+ var simple_color_picker_default = ".palette{grid-template-columns:repeat(var(--swatches-per-row,7), var(--_color-swatch-size,24px));display:grid}.swatch{background-color:var(--swatch-color);block-size:var(--_color-swatch-size,24px);color:var(--vvd-color-canvas);cursor:pointer;inline-size:var(--_color-swatch-size,24px);border-radius:4px;padding:0;position:relative}.swatch:not(.contrast){border:none}.swatch.contrast{border:1px solid var(--vvd-color-neutral-400);color:var(--vvd-color-canvas-text)}.swatch:focus-visible{box-shadow:0 0 0 4px color-mix(in srgb, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:none;outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px));--focus-stroke-gap-color:transparent;--focus-inset:-3px}:host :host{display:var(--_popup-display,inline)}:host :host([slotted-anchor]){--_popup-display:contents}.palette{padding:var(--_color-palette-spacing,16px);gap:var(--_color-palette-gap,12px)}::part(popup-base){block-size:max-content;max-block-size:100vh;inline-size:max-content;max-inline-size:100vw;min-block-size:var(--_color-swatch-size,24px);min-inline-size:var(--_color-swatch-size,24px)}";
10
13
  //#endregion
11
- //#region src/lib/status/status.ts
14
+ //#region src/lib/simple-color-picker/simple-color-picker.ts
12
15
  /**
13
16
  * @public
14
- * @component status
15
- * @slot - Description text below the title.
16
- * @slot icon - Optional custom icon. When not set, icon is derived from connotation.
17
+ * @component simple-color-picker
18
+ * @slot anchor - Slot for attaching the toggle button
19
+ * @event {CustomEvent<undefined>} change - Fires when the value changes
20
+ * @event {Event} input - Fires when the value of the element changes.
21
+ * @vueModel modelValue value input,@lazy:change `event.currentTarget.value`
17
22
  */
18
- var Status = class extends AffixIcon(VividElement) {};
19
- __decorate([attr], Status.prototype, "status", void 0);
20
- __decorate([attr], Status.prototype, "connotation", void 0);
21
- __decorate([observable], Status.prototype, "descriptionSlottedContent", void 0);
22
- //#endregion
23
- //#region src/lib/status/status.template.ts
24
- var DEFAULT_ICON_BY_CONNOTATION = {
25
- [Connotation.Success]: "check-circle-solid",
26
- [Connotation.Information]: "info-solid",
27
- [Connotation.Warning]: "warning-solid",
28
- [Connotation.Alert]: "error-solid"
23
+ var SimpleColorPicker = class extends Anchored(BaseColorPicker(VividElement)) {
24
+ constructor(..._args) {
25
+ super(..._args);
26
+ this.placement = "top-start";
27
+ this.swatchesPerRow = 7;
28
+ this._closeOnClickOutside = (e) => {
29
+ const clickedOutside = !this.contains(e.target);
30
+ const clickedOnAnchor = this._anchorEl?.contains(e.target);
31
+ /* v8 ignore else -- @preserve */
32
+ if (clickedOutside || clickedOnAnchor) this.open = false;
33
+ };
34
+ this._closeOnEscape = (e) => {
35
+ /* v8 ignore else -- @preserve */
36
+ if (e.key === "Escape") this.open = false;
37
+ };
38
+ }
39
+ /**
40
+ * @internal
41
+ */
42
+ openChanged(_oldValue, newValue) {
43
+ this._updateListeners();
44
+ if (this._anchorEl) this.#updateAnchor(this._anchorEl);
45
+ if (newValue && this.isConnected) requestAnimationFrame(() => {
46
+ this._refreshCanvasColor();
47
+ if (this.#openedByKeyboard) {
48
+ const selectedIndex = this.swatches.findIndex((swatch) => swatch.value === this.value);
49
+ const targetIndex = selectedIndex >= 0 ? selectedIndex : 0;
50
+ this._focusSwatchByIndex(targetIndex);
51
+ }
52
+ this.#openedByKeyboard = false;
53
+ });
54
+ }
55
+ /**
56
+ * @internal
57
+ */
58
+ _getRowLength() {
59
+ return this.swatchesPerRow;
60
+ }
61
+ connectedCallback() {
62
+ super.connectedCallback();
63
+ this._updateListeners();
64
+ }
65
+ disconnectedCallback() {
66
+ super.disconnectedCallback();
67
+ this._updateListeners();
68
+ }
69
+ /**
70
+ * @internal
71
+ */
72
+ _updateListeners() {
73
+ document.removeEventListener("click", this._closeOnClickOutside);
74
+ document.removeEventListener("keydown", this._closeOnEscape);
75
+ if (this.open && this.isConnected) {
76
+ document.addEventListener("click", this._closeOnClickOutside);
77
+ document.addEventListener("keydown", this._closeOnEscape);
78
+ }
79
+ }
80
+ /**
81
+ * @internal
82
+ */
83
+ _getFocusReturnEl() {
84
+ return this._anchorEl ?? null;
85
+ }
86
+ /**
87
+ * @internal
88
+ */
89
+ _anchorElChanged(oldValue, newValue) {
90
+ if (oldValue) this.#cleanupAnchor(oldValue);
91
+ if (newValue) this.#setupAnchor(newValue);
92
+ }
93
+ /**
94
+ * @internal
95
+ */
96
+ #updateAnchor(a) {
97
+ a.setAttribute("aria-expanded", this.open.toString());
98
+ a.setAttribute("data-expanded", this.open.toString());
99
+ }
100
+ /**
101
+ * @internal
102
+ */
103
+ #setupAnchor(a) {
104
+ this.#updateAnchor(a);
105
+ a.addEventListener("click", this.#openPopup, true);
106
+ a.addEventListener("keydown", this.#handleAnchorKeydown);
107
+ a.setAttribute("aria-haspopup", "true");
108
+ }
109
+ /**
110
+ * @internal
111
+ */
112
+ #cleanupAnchor(a) {
113
+ a.removeEventListener("click", this.#openPopup, true);
114
+ a.removeEventListener("keydown", this.#handleAnchorKeydown);
115
+ a.removeAttribute("aria-expanded");
116
+ a.removeAttribute("data-expanded");
117
+ a.removeAttribute("aria-haspopup");
118
+ }
119
+ /**
120
+ * @internal
121
+ */
122
+ #openedByKeyboard = false;
123
+ /**
124
+ * @internal
125
+ */
126
+ #openPopup = () => {
127
+ if (!this.open) {
128
+ this.#openedByKeyboard = false;
129
+ Updates.enqueue(() => this.open = true);
130
+ }
131
+ };
132
+ /**
133
+ * @internal
134
+ */
135
+ #handleAnchorKeydown = (event) => {
136
+ /* v8 ignore next -- @preserve */
137
+ if (event.key === "Enter" || event.key === " ") {
138
+ if (!this.open) {
139
+ this.#openedByKeyboard = true;
140
+ Updates.enqueue(() => this.open = true);
141
+ }
142
+ event.preventDefault();
143
+ }
144
+ };
29
145
  };
30
- var getClasses = ({ connotation }) => classNames("base", connotation ? `connotation-${connotation}` : "");
31
- function getEffectiveIcon(status) {
32
- if (status.icon) return status.icon;
33
- return status.connotation ? DEFAULT_ICON_BY_CONNOTATION[status.connotation] : void 0;
34
- }
35
- function getHeaderTemplate() {
36
- return html`<div class="headline">${(x) => x.status}</div>`;
37
- }
38
- var StatusTemplate = (context) => {
39
- const affixIconTemplate = affixIconTemplateFactory(context);
146
+ __decorate([attr({ mode: "fromView" })], SimpleColorPicker.prototype, "placement", void 0);
147
+ __decorate([attr({
148
+ attribute: "swatches-per-row",
149
+ mode: "fromView",
150
+ converter: nullableNumberConverter
151
+ })], SimpleColorPicker.prototype, "swatchesPerRow", void 0);
152
+ //#endregion
153
+ //#region src/lib/simple-color-picker/simple-color-picker.template.ts
154
+ var getClasses = (_) => classNames("control");
155
+ var SimpleColorPickerTemplate = (context) => {
156
+ const popupTag = context.tagFor(Popup);
157
+ const iconTag = context.tagFor(Icon);
158
+ const tooltipTag = context.tagFor(Tooltip);
40
159
  return html`
41
- <div class="${getClasses}">
42
- ${(x) => affixIconTemplate(getEffectiveIcon(x), IconWrapper.Slot)}
43
- <div class="text">
44
- ${when((x) => x.status, getHeaderTemplate())}
45
- <div
46
- class="description"
47
- data-has-description="${(x) => (x.descriptionSlottedContent?.length ?? 0) > 0}"
48
- >
49
- <slot ${slotted("descriptionSlottedContent")}></slot>
50
- </div>
160
+ ${anchorSlotTemplateFactory()}
161
+ <${popupTag}
162
+ class="${getClasses}"
163
+ :anchor="${(x) => x._anchorEl}"
164
+ :open="${(x) => x.open}"
165
+ placement="${(x) => x.placement}"
166
+ offset="4"
167
+ @keydown="${(x, { event }) => {
168
+ if (x.open && handleEscapeKeyAndStopPropogation(event)) return false;
169
+ return true;
170
+ }}"
171
+ >
172
+ <div class="palette" role="grid"
173
+ aria-rowcount="${(x) => Math.ceil(x.swatches.length / x._getRowLength())}"
174
+ aria-colcount="${(x) => x._getRowLength()}"
175
+ style="--swatches-per-row: ${(x) => x._getRowLength()};"
176
+ aria-label="${(x) => x.locale.simpleColorPicker.colorPaletteLabel}">
177
+ ${repeat((x) => x.swatches, (x) => x._renderColorSwatch(iconTag, tooltipTag), { positioning: true })}
51
178
  </div>
52
- </div>
179
+ </${popupTag}>
53
180
  `;
54
181
  };
55
182
  //#endregion
56
- //#region src/lib/status/definition.ts
57
- /**
58
- * @internal
59
- */
60
- var statusDefinition = defineVividComponent("status", Status, StatusTemplate, [iconDefinition], { styles: status_default });
183
+ //#region src/lib/simple-color-picker/definition.ts
184
+ var simpleColorPickerDefinition = defineVividComponent("simple-color-picker", SimpleColorPicker, SimpleColorPickerTemplate, [
185
+ popupDefinition,
186
+ iconDefinition,
187
+ tooltipDefinition
188
+ ], { styles: simple_color_picker_default });
61
189
  /**
62
- * Registers the status element with the design system.
190
+ * Registers the simple-color-picker element with the design system.
63
191
  *
64
192
  * @param prefix - the prefix to use for the component name
65
193
  */
66
- var registerStatus = createRegisterFunction(statusDefinition);
194
+ var registerSimpleColorPicker = createRegisterFunction(simpleColorPickerDefinition);
67
195
  //#endregion
68
- export { statusDefinition as n, Status as r, registerStatus as t };
196
+ export { simpleColorPickerDefinition as n, SimpleColorPicker as r, registerSimpleColorPicker as t };