@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
@@ -1,1020 +1,139 @@
1
1
  import { o as defineVividComponent, s as createRegisterFunction, t as VividElement } from "./vivid-element.js";
2
- import { r as Icon, t as iconDefinition } from "./definition2.js";
3
2
  import { t as __decorate } from "./decorate.js";
4
- import { n as delegateAria, t as DelegatesAria } from "./delegates-aria.js";
5
- import { t as WithSuccessText } from "./with-success-text.js";
6
- import { t as WithErrorText } from "./with-error-text.js";
7
- import { t as WithContextualHelp } from "./with-contextual-help.js";
8
- import { t as TrappedFocus } from "./trapped-focus.js";
9
- import { i as Button, t as buttonDefinition } from "./definition7.js";
3
+ import { t as Localized } from "./localized.js";
10
4
  import { t as handleEscapeKeyAndStopPropogation } from "./dialog.js";
11
5
  import { i as Popup, t as popupDefinition } from "./definition10.js";
12
- import { a as feedbackMessageDefinition, t as WithFeedback } from "./mixins.js";
13
- import { n as isValidHexColor, t as BaseColorPicker } from "./base-color-picker.js";
14
- import { n as textFieldDefinition, r as TextField } from "./definition25.js";
15
- import { n as tooltipDefinition, r as Tooltip } from "./definition26.js";
16
- import { attr, html, nullableNumberConverter, observable, ref, repeat, slotted, when } from "@microsoft/fast-element";
6
+ import { n as anchorSlotTemplateFactory, t as Anchored } from "./anchored.js";
7
+ import { Updates, attr, html, when } from "@microsoft/fast-element";
17
8
  import { classNames } from "@microsoft/fast-web-utilities";
18
- //#region src/lib/color-picker/color-picker.scss?inline
19
- var color_picker_default$1 = ".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{--_low-ink-color:var(--vvd-color-neutral-600);display:inline-block}.base{min-inline-size:var(--_color-picker-min-inline-size,280px);display:inline-block}.control{inline-size:100%}.button{box-sizing:border-box;background-color:var(--button-color,var(--vvd-color-canvas-text));block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8));color:var(--vvd-color-canvas);inline-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8));padding-inline:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8)) / 4);vertical-align:middle;border:0;border-radius:4px;align-items:center;margin:0;text-decoration:none;display:inline-flex}.button.contrast{color:var(--vvd-color-canvas-text)}.button:not(.disabled){cursor:pointer}.button.disabled{background-color:var(--vvd-color-neutral-300);color:var(--vvd-color-neutral-500);cursor:not-allowed}.button:focus-visible{--focus-stroke-gap-color:transparent;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:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px))}.button [data-vvd-component=icon]{font-size:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8)) / 2);line-height:1}.dialog{min-inline-size:var(--_color-picker-popup-min-inline-size,264px);flex-direction:column;display:flex}.dialog .header{justify-content:space-between;align-items:center;padding-block:8px;padding-inline:16px;display:inline-flex}.dialog .header-title{font:var(--vvd-typography-base-extended-bold);margin-block:0}.dialog .body{flex-direction:column;gap:16px;margin-block-end:16px;padding-inline:16px;display:flex}.dialog .hex-input-wrapper{align-items:stretch;gap:8px;display:flex}.dialog .hex-input-wrapper [data-vvd-component=button]{flex:none}.dialog .footer{border-top:1px solid var(--vvd-color-neutral-200);padding:16px}.dialog .footer-header{margin-block-end:8px}.dialog .swatches-count{color:var(--_low-ink-color);font:var(--vvd-typography-base)}.dialog .palette{gap:var(--_color-swatches-gap,8px)}vvd-hex-input{flex:auto;min-width:0}vvd-hex-input::part(input),vvd-hex-input>input{box-sizing:border-box;background-color:var(--vvd-color-canvas);width:100%;height:100%;box-shadow:inset 0 0 0 1px var(--vvd-color-neutral-500);font:var(--vvd-typography-base);padding-inline:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2.5);border:0;border-radius:8px;outline:#0000}vvd-hex-input::part(input):focus-visible,vvd-hex-input>input: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:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px));--focus-stroke-gap-color:transparent}vvd-hex-picker{width:auto;height:auto;gap:16px;inline-size:100%}vvd-hex-picker::part(saturation){border-radius:8px;block-size:120px}vvd-hex-picker::part(hue){border-radius:8px;flex:0 0 8px}vvd-hex-picker::part(hue-pointer){width:10px;height:10px}vvd-hex-picker::part(saturation-pointer){width:18px;height:18px}::part(popup-base){inline-size:max-content;min-block-size:var(--_color-picker-popup-min-inline-size,264px);min-inline-size:var(--_color-picker-popup-min-inline-size,264px)}.visually-hidden{clip:rect(0 0 0 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}";
9
+ //#region src/lib/toggletip/toggletip.scss?inline
10
+ var toggletip_default = ":host :host{display:var(--_popup-display,inline)}:host :host([slotted-anchor]){--_popup-display:contents}.content-wrapper{width:var(--toggletip-inline-size,auto);max-inline-size:var(--toggletip-max-inline-size,30ch);padding:16px}.headline{font:var(--vvd-typography-base-bold);margin:0}.action-items{justify-content:flex-end;gap:10px;display:flex}::slotted([slot=action-items]){margin-block-start:16px}";
20
11
  //#endregion
21
- //#region ../../node_modules/.pnpm/vanilla-colorful@0.7.2/node_modules/vanilla-colorful/lib/utils/math.js
22
- var clamp = (number, min = 0, max = 1) => {
23
- return number > max ? max : number < min ? min : number;
24
- };
25
- var round = (number, digits = 0, base = Math.pow(10, digits)) => {
26
- return Math.round(base * number) / base;
27
- };
28
- 360 / (Math.PI * 2);
29
- var hexToHsva = (hex) => rgbaToHsva(hexToRgba(hex));
30
- var hexToRgba = (hex) => {
31
- if (hex[0] === "#") hex = hex.substring(1);
32
- if (hex.length < 6) return {
33
- r: parseInt(hex[0] + hex[0], 16),
34
- g: parseInt(hex[1] + hex[1], 16),
35
- b: parseInt(hex[2] + hex[2], 16),
36
- a: hex.length === 4 ? round(parseInt(hex[3] + hex[3], 16) / 255, 2) : 1
37
- };
38
- return {
39
- r: parseInt(hex.substring(0, 2), 16),
40
- g: parseInt(hex.substring(2, 4), 16),
41
- b: parseInt(hex.substring(4, 6), 16),
42
- a: hex.length === 8 ? round(parseInt(hex.substring(6, 8), 16) / 255, 2) : 1
43
- };
44
- };
45
- var hsvaToHex = (hsva) => rgbaToHex(hsvaToRgba(hsva));
46
- var hsvaToHsla = ({ h, s, v, a }) => {
47
- const hh = (200 - s) * v / 100;
48
- return {
49
- h: round(h),
50
- s: round(hh > 0 && hh < 200 ? s * v / 100 / (hh <= 100 ? hh : 200 - hh) * 100 : 0),
51
- l: round(hh / 2),
52
- a: round(a, 2)
53
- };
54
- };
55
- var hsvaToHslString = (hsva) => {
56
- const { h, s, l } = hsvaToHsla(hsva);
57
- return `hsl(${h}, ${s}%, ${l}%)`;
58
- };
59
- var hsvaToRgba = ({ h, s, v, a }) => {
60
- h = h / 360 * 6;
61
- s = s / 100;
62
- v = v / 100;
63
- const hh = Math.floor(h), b = v * (1 - s), c = v * (1 - (h - hh) * s), d = v * (1 - (1 - h + hh) * s), module = hh % 6;
64
- return {
65
- r: round([
66
- v,
67
- c,
68
- b,
69
- b,
70
- d,
71
- v
72
- ][module] * 255),
73
- g: round([
74
- d,
75
- v,
76
- v,
77
- c,
78
- b,
79
- b
80
- ][module] * 255),
81
- b: round([
82
- b,
83
- b,
84
- d,
85
- v,
86
- v,
87
- c
88
- ][module] * 255),
89
- a: round(a, 2)
90
- };
91
- };
92
- var format = (number) => {
93
- const hex = number.toString(16);
94
- return hex.length < 2 ? "0" + hex : hex;
95
- };
96
- var rgbaToHex = ({ r, g, b, a }) => {
97
- const alphaHex = a < 1 ? format(round(a * 255)) : "";
98
- return "#" + format(r) + format(g) + format(b) + alphaHex;
99
- };
100
- var rgbaToHsva = ({ r, g, b, a }) => {
101
- const max = Math.max(r, g, b);
102
- const delta = max - Math.min(r, g, b);
103
- const hh = delta ? max === r ? (g - b) / delta : max === g ? 2 + (b - r) / delta : 4 + (r - g) / delta : 0;
104
- return {
105
- h: round(60 * (hh < 0 ? hh + 6 : hh)),
106
- s: round(max ? delta / max * 100 : 0),
107
- v: round(max / 255 * 100),
108
- a
109
- };
110
- };
111
- //#endregion
112
- //#region ../../node_modules/.pnpm/vanilla-colorful@0.7.2/node_modules/vanilla-colorful/lib/utils/compare.js
113
- var equalColorObjects = (first, second) => {
114
- if (first === second) return true;
115
- for (const prop in first) if (first[prop] !== second[prop]) return false;
116
- return true;
117
- };
118
- var equalHex = (first, second) => {
119
- if (first.toLowerCase() === second.toLowerCase()) return true;
120
- return equalColorObjects(hexToRgba(first), hexToRgba(second));
121
- };
122
- //#endregion
123
- //#region ../../node_modules/.pnpm/vanilla-colorful@0.7.2/node_modules/vanilla-colorful/lib/utils/dom.js
124
- var cache = {};
125
- var tpl = (html) => {
126
- let template = cache[html];
127
- if (!template) {
128
- template = document.createElement("template");
129
- template.innerHTML = html;
130
- cache[html] = template;
131
- }
132
- return template;
133
- };
134
- var fire = (target, type, detail) => {
135
- target.dispatchEvent(new CustomEvent(type, {
136
- bubbles: true,
137
- detail
138
- }));
139
- };
140
- //#endregion
141
- //#region ../../node_modules/.pnpm/vanilla-colorful@0.7.2/node_modules/vanilla-colorful/lib/components/slider.js
142
- var hasTouched = false;
143
- var isTouch = (e) => "touches" in e;
144
- var isValid = (event) => {
145
- if (hasTouched && !isTouch(event)) return false;
146
- if (!hasTouched) hasTouched = isTouch(event);
147
- return true;
148
- };
149
- var pointerMove = (target, event) => {
150
- const pointer = isTouch(event) ? event.touches[0] : event;
151
- const rect = target.el.getBoundingClientRect();
152
- fire(target.el, "move", target.getMove({
153
- x: clamp((pointer.pageX - (rect.left + window.pageXOffset)) / rect.width),
154
- y: clamp((pointer.pageY - (rect.top + window.pageYOffset)) / rect.height)
155
- }));
156
- };
157
- var keyMove = (target, event) => {
158
- const keyCode = event.keyCode;
159
- if (keyCode > 40 || target.xy && keyCode < 37 || keyCode < 33) return;
160
- event.preventDefault();
161
- fire(target.el, "move", target.getMove({
162
- x: keyCode === 39 ? .01 : keyCode === 37 ? -.01 : keyCode === 34 ? .05 : keyCode === 33 ? -.05 : keyCode === 35 ? 1 : keyCode === 36 ? -1 : 0,
163
- y: keyCode === 40 ? .01 : keyCode === 38 ? -.01 : 0
164
- }, true));
165
- };
166
- var Slider = class {
167
- constructor(root, part, aria, xy) {
168
- const template = tpl(`<div role="slider" tabindex="0" part="${part}" ${aria}><div part="${part}-pointer"></div></div>`);
169
- root.appendChild(template.content.cloneNode(true));
170
- const el = root.querySelector(`[part=${part}]`);
171
- el.addEventListener("mousedown", this);
172
- el.addEventListener("touchstart", this);
173
- el.addEventListener("keydown", this);
174
- this.el = el;
175
- this.xy = xy;
176
- this.nodes = [el.firstChild, el];
177
- }
178
- set dragging(state) {
179
- const toggleEvent = state ? document.addEventListener : document.removeEventListener;
180
- toggleEvent(hasTouched ? "touchmove" : "mousemove", this);
181
- toggleEvent(hasTouched ? "touchend" : "mouseup", this);
182
- }
183
- handleEvent(event) {
184
- switch (event.type) {
185
- case "mousedown":
186
- case "touchstart":
187
- event.preventDefault();
188
- if (!isValid(event) || !hasTouched && event.button != 0) return;
189
- this.el.focus();
190
- pointerMove(this, event);
191
- this.dragging = true;
192
- break;
193
- case "mousemove":
194
- case "touchmove":
195
- event.preventDefault();
196
- pointerMove(this, event);
197
- break;
198
- case "mouseup":
199
- case "touchend":
200
- this.dragging = false;
201
- break;
202
- case "keydown":
203
- keyMove(this, event);
204
- break;
205
- }
206
- }
207
- style(styles) {
208
- styles.forEach((style, i) => {
209
- for (const p in style) this.nodes[i].style.setProperty(p, style[p]);
210
- });
211
- }
212
- };
213
- //#endregion
214
- //#region ../../node_modules/.pnpm/vanilla-colorful@0.7.2/node_modules/vanilla-colorful/lib/components/hue.js
215
- var Hue = class extends Slider {
216
- constructor(root) {
217
- super(root, "hue", "aria-label=\"Hue\" aria-valuemin=\"0\" aria-valuemax=\"360\"", false);
218
- }
219
- update({ h }) {
220
- this.h = h;
221
- this.style([{
222
- left: `${h / 360 * 100}%`,
223
- color: hsvaToHslString({
224
- h,
225
- s: 100,
226
- v: 100,
227
- a: 1
228
- })
229
- }]);
230
- this.el.setAttribute("aria-valuenow", `${round(h)}`);
231
- }
232
- getMove(offset, key) {
233
- return { h: key ? clamp(this.h + offset.x * 360, 0, 360) : 360 * offset.x };
234
- }
235
- };
236
- //#endregion
237
- //#region ../../node_modules/.pnpm/vanilla-colorful@0.7.2/node_modules/vanilla-colorful/lib/components/saturation.js
238
- var Saturation = class extends Slider {
239
- constructor(root) {
240
- super(root, "saturation", "aria-label=\"Color\"", true);
241
- }
242
- update(hsva) {
243
- this.hsva = hsva;
244
- this.style([{
245
- top: `${100 - hsva.v}%`,
246
- left: `${hsva.s}%`,
247
- color: hsvaToHslString(hsva)
248
- }, { "background-color": hsvaToHslString({
249
- h: hsva.h,
250
- s: 100,
251
- v: 100,
252
- a: 1
253
- }) }]);
254
- this.el.setAttribute("aria-valuetext", `Saturation ${round(hsva.s)}%, Brightness ${round(hsva.v)}%`);
255
- }
256
- getMove(offset, key) {
257
- return {
258
- s: key ? clamp(this.hsva.s + offset.x * 100, 0, 100) : offset.x * 100,
259
- v: key ? clamp(this.hsva.v - offset.y * 100, 0, 100) : Math.round(100 - offset.y * 100)
260
- };
261
- }
262
- };
263
- //#endregion
264
- //#region ../../node_modules/.pnpm/vanilla-colorful@0.7.2/node_modules/vanilla-colorful/lib/styles/color-picker.js
265
- var color_picker_default = `:host{display:flex;flex-direction:column;position:relative;width:200px;height:200px;user-select:none;-webkit-user-select:none;cursor:default}:host([hidden]){display:none!important}[role=slider]{position:relative;touch-action:none;user-select:none;-webkit-user-select:none;outline:0}[role=slider]:last-child{border-radius:0 0 8px 8px}[part$=pointer]{position:absolute;z-index:1;box-sizing:border-box;width:28px;height:28px;display:flex;place-content:center center;transform:translate(-50%,-50%);background-color:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}[part$=pointer]::after{content:"";width:100%;height:100%;border-radius:inherit;background-color:currentColor}[role=slider]:focus [part$=pointer]{transform:translate(-50%,-50%) scale(1.1)}`;
266
- //#endregion
267
- //#region ../../node_modules/.pnpm/vanilla-colorful@0.7.2/node_modules/vanilla-colorful/lib/styles/hue.js
268
- var hue_default = `[part=hue]{flex:0 0 24px;background:linear-gradient(to right,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%)}[part=hue-pointer]{top:50%;z-index:2}`;
269
- //#endregion
270
- //#region ../../node_modules/.pnpm/vanilla-colorful@0.7.2/node_modules/vanilla-colorful/lib/styles/saturation.js
271
- var saturation_default = `[part=saturation]{flex-grow:1;border-color:transparent;border-bottom:12px solid #000;border-radius:8px 8px 0 0;background-image:linear-gradient(to top,#000,transparent),linear-gradient(to right,#fff,rgba(255,255,255,0));box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}[part=saturation-pointer]{z-index:3}`;
272
- //#endregion
273
- //#region ../../node_modules/.pnpm/vanilla-colorful@0.7.2/node_modules/vanilla-colorful/lib/components/color-picker.js
274
- var $isSame = Symbol("same");
275
- var $color$1 = Symbol("color");
276
- var $hsva = Symbol("hsva");
277
- var $update$1 = Symbol("update");
278
- var $parts = Symbol("parts");
279
- var $css = Symbol("css");
280
- var $sliders = Symbol("sliders");
281
- var ColorPicker$1 = class extends HTMLElement {
282
- static get observedAttributes() {
283
- return ["color"];
284
- }
285
- get [$css]() {
286
- return [
287
- color_picker_default,
288
- hue_default,
289
- saturation_default
290
- ];
291
- }
292
- get [$sliders]() {
293
- return [Saturation, Hue];
294
- }
295
- get color() {
296
- return this[$color$1];
297
- }
298
- set color(newColor) {
299
- if (!this[$isSame](newColor)) {
300
- const newHsva = this.colorModel.toHsva(newColor);
301
- this[$update$1](newHsva);
302
- this[$color$1] = newColor;
303
- }
304
- }
305
- constructor() {
306
- super();
307
- const template = tpl(`<style>${this[$css].join("")}</style>`);
308
- const root = this.attachShadow({ mode: "open" });
309
- root.appendChild(template.content.cloneNode(true));
310
- root.addEventListener("move", this);
311
- this[$parts] = this[$sliders].map((slider) => new slider(root));
312
- }
313
- connectedCallback() {
314
- if (this.hasOwnProperty("color")) {
315
- const value = this.color;
316
- delete this["color"];
317
- this.color = value;
318
- } else if (!this.color) this.color = this.colorModel.defaultColor;
319
- }
320
- attributeChangedCallback(_attr, _oldVal, newVal) {
321
- const color = this.colorModel.fromAttr(newVal);
322
- if (!this[$isSame](color)) this.color = color;
323
- }
324
- handleEvent(event) {
325
- const oldHsva = this[$hsva];
326
- const newHsva = {
327
- ...oldHsva,
328
- ...event.detail
329
- };
330
- this[$update$1](newHsva);
331
- let newColor;
332
- if (!equalColorObjects(newHsva, oldHsva) && !this[$isSame](newColor = this.colorModel.fromHsva(newHsva))) {
333
- this[$color$1] = newColor;
334
- fire(this, "color-changed", { value: newColor });
335
- }
336
- }
337
- [$isSame](color) {
338
- return this.color && this.colorModel.equal(color, this.color);
339
- }
340
- [$update$1](hsva) {
341
- this[$hsva] = hsva;
342
- this[$parts].forEach((part) => part.update(hsva));
343
- }
344
- };
345
- //#endregion
346
- //#region ../../node_modules/.pnpm/vanilla-colorful@0.7.2/node_modules/vanilla-colorful/lib/entrypoints/hex.js
347
- var colorModel = {
348
- defaultColor: "#000",
349
- toHsva: hexToHsva,
350
- fromHsva: ({ h, s, v }) => hsvaToHex({
351
- h,
352
- s,
353
- v,
354
- a: 1
355
- }),
356
- equal: equalHex,
357
- fromAttr: (color) => color
358
- };
359
- var HexBase = class extends ColorPicker$1 {
360
- get colorModel() {
361
- return colorModel;
362
- }
363
- };
364
- //#endregion
365
- //#region ../../node_modules/.pnpm/vanilla-colorful@0.7.2/node_modules/vanilla-colorful/hex-color-picker.js
366
- /**
367
- * A color picker custom element that uses HEX format.
368
- *
369
- * @element hex-color-picker
370
- *
371
- * @prop {string} color - Selected color in HEX format.
372
- * @attr {string} color - Selected color in HEX format.
373
- *
374
- * @fires color-changed - Event fired when color property changes.
375
- *
376
- * @csspart hue - A hue selector container.
377
- * @csspart saturation - A saturation selector container
378
- * @csspart hue-pointer - A hue pointer element.
379
- * @csspart saturation-pointer - A saturation pointer element.
380
- */
381
- var HexColorPicker = class extends HexBase {};
382
- customElements.define("hex-color-picker", HexColorPicker);
383
- //#endregion
384
- //#region ../../node_modules/.pnpm/vanilla-colorful@0.7.2/node_modules/vanilla-colorful/lib/utils/validate.js
385
- var matcher = /^#?([0-9A-F]{3,8})$/i;
386
- var validHex = (value, alpha) => {
387
- const match = matcher.exec(value);
388
- const length = match ? match[1].length : 0;
389
- return length === 3 || length === 6 || !!alpha && length === 4 || !!alpha && length === 8;
390
- };
391
- //#endregion
392
- //#region ../../node_modules/.pnpm/vanilla-colorful@0.7.2/node_modules/vanilla-colorful/lib/entrypoints/hex-input.js
393
- var template = tpl("<slot><input part=\"input\" spellcheck=\"false\"></slot>");
394
- var escape = (hex, alpha) => hex.replace(/([^0-9A-F]+)/gi, "").substring(0, alpha ? 8 : 6);
395
- var $alpha = Symbol("alpha");
396
- var $color = Symbol("color");
397
- var $saved = Symbol("saved");
398
- var $input = Symbol("input");
399
- var $init = Symbol("init");
400
- var $prefix = Symbol("prefix");
401
- var $update = Symbol("update");
402
- var HexInputBase = class extends HTMLElement {
403
- static get observedAttributes() {
404
- return [
405
- "alpha",
406
- "color",
407
- "prefixed"
408
- ];
409
- }
410
- get color() {
411
- return this[$color];
412
- }
413
- set color(hex) {
414
- this[$color] = hex;
415
- this[$update](hex);
416
- }
417
- get alpha() {
418
- return this[$alpha];
419
- }
420
- set alpha(alpha) {
421
- this[$alpha] = alpha;
422
- this.toggleAttribute("alpha", alpha);
423
- const color = this.color;
424
- if (color && !validHex(color, alpha)) this.color = color.startsWith("#") ? color.substring(0, color.length === 5 ? 4 : 7) : color.substring(0, color.length === 4 ? 3 : 6);
425
- }
426
- get prefixed() {
427
- return this[$prefix];
428
- }
429
- set prefixed(prefixed) {
430
- this[$prefix] = prefixed;
431
- this.toggleAttribute("prefixed", prefixed);
432
- this[$update](this.color);
433
- }
434
- constructor() {
435
- super();
436
- const root = this.attachShadow({ mode: "open" });
437
- root.appendChild(template.content.cloneNode(true));
438
- root.firstElementChild.addEventListener("slotchange", () => this[$init](root));
439
- }
440
- connectedCallback() {
441
- this[$init](this.shadowRoot);
442
- if (this.hasOwnProperty("alpha")) {
443
- const value = this.alpha;
444
- delete this["alpha"];
445
- this.alpha = value;
446
- } else this.alpha = this.hasAttribute("alpha");
447
- if (this.hasOwnProperty("prefixed")) {
448
- const value = this.prefixed;
449
- delete this["prefixed"];
450
- this.prefixed = value;
451
- } else this.prefixed = this.hasAttribute("prefixed");
452
- if (this.hasOwnProperty("color")) {
453
- const value = this.color;
454
- delete this["color"];
455
- this.color = value;
456
- } else if (this.color == null) this.color = this.getAttribute("color") || "";
457
- else if (this[$color]) this[$update](this[$color]);
458
- }
459
- handleEvent(event) {
460
- const { value } = event.target;
461
- switch (event.type) {
462
- case "input":
463
- const hex = escape(value, this.alpha);
464
- this[$saved] = this.color;
465
- if (validHex(hex, this.alpha) || value === "") {
466
- this.color = hex;
467
- this.dispatchEvent(new CustomEvent("color-changed", {
468
- bubbles: true,
469
- detail: { value: hex ? "#" + hex : "" }
470
- }));
471
- }
472
- break;
473
- case "blur": if (value && !validHex(value, this.alpha)) this.color = this[$saved];
474
- }
475
- }
476
- attributeChangedCallback(attr, _oldVal, newVal) {
477
- if (attr === "color" && this.color !== newVal) this.color = newVal;
478
- const hasBooleanAttr = newVal != null;
479
- if (attr === "alpha") {
480
- if (this.alpha !== hasBooleanAttr) this.alpha = hasBooleanAttr;
481
- }
482
- if (attr === "prefixed") {
483
- if (this.prefixed !== hasBooleanAttr) this.prefixed = hasBooleanAttr;
484
- }
485
- }
486
- [$init](root) {
487
- let input = this.querySelector("input");
488
- if (!input) {
489
- let c;
490
- while (c = this.firstChild) c.remove();
491
- input = root.querySelector("input");
492
- }
493
- input.addEventListener("input", this);
494
- input.addEventListener("blur", this);
495
- this[$input] = input;
496
- this[$update](this.color);
497
- }
498
- [$update](hex) {
499
- if (this[$input]) this[$input].value = hex == null || hex == "" ? "" : (this.prefixed ? "#" : "") + escape(hex, this.alpha);
500
- }
501
- };
502
- //#endregion
503
- //#region ../../node_modules/.pnpm/vanilla-colorful@0.7.2/node_modules/vanilla-colorful/hex-input.js
504
- /**
505
- * A custom element for entering color in HEX format.
506
- *
507
- * @element hex-input
508
- *
509
- * @prop {string} color - Color in HEX format.
510
- * @attr {string} color - Selected color in HEX format.
511
- * @prop {boolean} alpha - When true, `#rgba` and `#rrggbbaa` color formats are allowed.
512
- * @attr {boolean} alpha - Allows `#rgba` and `#rrggbbaa` color formats.
513
- * @prop {boolean} prefixed - When true, `#` prefix is displayed in the input.
514
- * @attr {boolean} prefixed - Enables `#` prefix displaying.
515
- *
516
- * @fires color-changed - Event fired when color is changed.
517
- *
518
- * @csspart input - A native input element.
519
- */
520
- var HexInput = class extends HexInputBase {};
521
- customElements.define("hex-input", HexInput);
522
- //#endregion
523
- //#region src/lib/color-picker/color-picker.ts
524
- var VC_HEX_PICKER_TAG = "vvd-hex-picker";
525
- var VC_HEX_INPUT_TAG = "vvd-hex-input";
526
- var VvdHexPicker = class extends HexColorPicker {
527
- static {
528
- this.displayName = "VvdHexPicker";
529
- }
530
- };
531
- var VvdHexInput = class extends HexInput {
532
- static {
533
- this.displayName = "VvdHexInput";
534
- }
535
- };
536
- /* v8 ignore if -- @preserve */
537
- if (!customElements.get(VC_HEX_PICKER_TAG)) customElements.define(VC_HEX_PICKER_TAG, VvdHexPicker);
538
- /* v8 ignore if -- @preserve */
539
- if (!customElements.get(VC_HEX_INPUT_TAG)) customElements.define(VC_HEX_INPUT_TAG, VvdHexInput);
540
- var vcPickerTag = VC_HEX_PICKER_TAG;
541
- var vcInputTag = VC_HEX_INPUT_TAG;
12
+ //#region src/lib/toggletip/toggletip.ts
542
13
  /**
543
14
  * @public
544
- * @component color-picker
545
- * @slot helper-text - Describes how to use the text-field. Alternative to the `helper-text` attribute.
546
- * @slot popup-text - Overrides the default "Color Picker" title of the Popup window.
547
- * @slot swatches-text - Overrides the default "Saved colors:" text above color swatches.
548
- * @event {CustomEvent<undefined>} change - Fires when the value changes
549
- * @vueModel modelValue value input `event.currentTarget.value`
15
+ * @component toggletip
16
+ * @slot - The content to display in the toggletip.
17
+ * @slot anchor - Used to set the anchor element for the toggletip.
18
+ * @slot action-items - The content to display in the toggletip action items.
19
+ * @testSelector byHeadline byHeadline
20
+ * @testQuery open open true
21
+ * @testQuery closed open false
550
22
  */
551
- var ColorPicker = class extends WithContextualHelp(WithFeedback(WithErrorText(WithSuccessText(DelegatesAria(TrappedFocus(BaseColorPicker(VividElement))))))) {
23
+ var Toggletip = class extends Localized(Anchored(VividElement)) {
552
24
  constructor(..._args) {
553
25
  super(..._args);
554
- this.disableSavedColors = false;
555
- this.savedColors = [];
556
- this.maxSwatches = 6;
557
- this.copyIconName = "copy-2-line";
558
- this._copyValueToClipboard = async (value) => {
559
- try {
560
- await navigator.clipboard.writeText(value);
561
- this._setTemporaryCopyIcon("check-circle-line");
562
- this._ariaLiveDescription = this.locale.colorPicker.copySuccessMessage(value);
563
- } catch {
564
- alert(this.locale.colorPicker.copyErrorText);
565
- this._setTemporaryCopyIcon("error-line");
566
- this._ariaLiveDescription = this.locale.colorPicker.copyErrorText;
567
- }
568
- };
569
- this._ariaLiveDescription = "";
570
- }
571
- static {
572
- this.HEX_COLOR_PATTERN = /^#(([0-9a-fA-F]{2}){3}|([0-9a-fA-F]){3})$/;
573
- }
574
- /**
575
- * @internal
576
- */
577
- placeholderChanged() {
578
- /* v8 ignore if -- @preserve */
579
- if (this.proxy instanceof HTMLInputElement) this.proxy.placeholder = this.placeholder;
580
- }
581
- /**
582
- * Change event handler for inner control.
583
- * @remarks
584
- * @internal
585
- */
586
- handleChange() {
587
- this.$emit("change");
588
- }
589
- /**
590
- * @internal
591
- */
592
- openChanged(_oldValue, newValue) {
593
- if (newValue && this.isConnected) requestAnimationFrame(() => {
594
- this._refreshCanvasColor();
595
- });
596
- }
597
- /**
598
- * @internal
599
- */
600
- savedColorsKeyChanged() {
601
- this.savedColors = this._loadSavedColors();
602
- }
603
- /**
604
- * @internal
605
- */
606
- get _savedColorsStorageKey() {
607
- if (this.savedColorsKey) return this.savedColorsKey;
608
- return `vvd-saved-colors:${this.tagName.toLowerCase()}`;
609
- }
610
- /**
611
- * @internal
612
- */
613
- _handleColorSaving() {
614
- this._saveCurrentColor();
615
- }
616
- /**
617
- * @internal
618
- */
619
- _saveCurrentColor() {
620
- const value = this.value;
621
- if (typeof value !== "string" || !isValidHexColor(value)) return;
622
- const swatches = Array.isArray(this.savedColors) ? [...this.savedColors] : [];
623
- const idx = swatches.findIndex((s) => s?.value === value);
624
- if (idx !== -1) swatches.splice(idx, 1);
625
- swatches.unshift({ value });
626
- this.savedColors = swatches.slice(0, this._maxSwatchesNormalized);
627
- this._setSavedColors(this.savedColors);
628
- }
629
- /**
630
- * @internal
631
- */
632
- _loadSavedColors() {
633
- try {
634
- const savedColors = localStorage.getItem(this._savedColorsStorageKey);
635
- if (!savedColors) return [];
636
- const parsed = JSON.parse(savedColors);
637
- if (!Array.isArray(parsed)) return [];
638
- return parsed.filter((x) => x && typeof x.value === "string" && isValidHexColor(x.value)).map((x) => ({
639
- value: x.value,
640
- label: typeof x.label === "string" ? x.label : void 0
641
- }));
642
- } catch {
643
- return [];
644
- }
645
- }
646
- /**
647
- * @internal
648
- */
649
- _setSavedColors(swatches) {
650
- try {
651
- localStorage.setItem(this._savedColorsStorageKey, JSON.stringify(swatches));
652
- } catch {}
653
- }
654
- /**
655
- * Get all color swatches combined, both from swatches property and saved colors
656
- * @internal
657
- */
658
- get allSwatches() {
659
- const predefinedColors = Array.isArray(this.swatches) ? this.swatches : [];
660
- const savedColors = Array.isArray(this.savedColors) ? this.savedColors : [];
661
- const seen = /* @__PURE__ */ new Set();
662
- const merged = [];
663
- const appendIfUniqueAndValid = (swatch) => {
664
- if (!swatch || typeof swatch.value !== "string") return;
665
- if (!isValidHexColor(swatch.value) || seen.has(swatch.value)) return;
666
- seen.add(swatch.value);
667
- merged.push(swatch);
668
- };
669
- if (!this.disableSavedColors) savedColors.forEach(appendIfUniqueAndValid);
670
- predefinedColors.forEach(appendIfUniqueAndValid);
671
- return merged.slice(0, this._maxSwatchesNormalized);
672
- }
673
- /**
674
- * @internal
675
- */
676
- get _maxSwatchesNormalized() {
677
- return Number.isFinite(this.maxSwatches) ? Math.max(0, Math.floor(this.maxSwatches)) : 0;
678
- }
679
- /**
680
- * @internal
681
- */
682
- maxSwatchesChanged() {
683
- const maxCount = this._maxSwatchesNormalized;
684
- if (this.savedColors?.length > maxCount) {
685
- this.savedColors = this.savedColors.slice(0, maxCount);
686
- this._setSavedColors(this.savedColors);
687
- }
688
- }
689
- /**
690
- * @internal
691
- */
692
- _onPickerColorChanged(e) {
693
- if (typeof e.detail?.value === "string") this.value = e.detail?.value;
694
- }
695
- /**
696
- * @internal
697
- */
698
- valueChanged(_oldVal, newVal) {
699
- if (this._vcHexPickerEl && typeof newVal === "string") this._vcHexPickerEl.color = newVal;
700
- if (this._vcHexInputEl && typeof newVal === "string") this._vcHexInputEl.color = newVal;
701
- }
702
- /**
703
- * @internal
704
- */
705
- _onTextFieldInput(event) {
706
- this.value = event.currentTarget.value;
707
- }
708
- /**
709
- * @internal
710
- */
711
- get _buttonColor() {
712
- /* v8 ignore else -- @preserve */
713
- if (!this._canvasColor) this._refreshCanvasColor();
714
- if (this.value && isValidHexColor(this.value)) return this.value;
715
- return "var(--vvd-color-canvas-text)";
716
- }
717
- /**
718
- * @internal
719
- */
720
- _onButtonClick() {
721
- this.open = !this.open;
722
- }
723
- /**
724
- * @internal
725
- */
726
- _handleCloseRequest() {
26
+ this.alternate = false;
27
+ this.placement = "right";
727
28
  this.open = false;
728
29
  }
30
+ #originalAriaLabel = null;
729
31
  /**
730
32
  * @internal
731
33
  */
732
- _isInPath(e, el) {
733
- if (!el) return false;
734
- const path = e.composedPath?.();
735
- return !!(path && path.includes(el));
34
+ openChanged(oldValue, newValue) {
35
+ if (oldValue === void 0) return;
36
+ if (newValue) this.setAttribute("role", "status");
37
+ else this.removeAttribute("role");
38
+ this.#updateListeners();
39
+ if (this._anchorEl) this.#updateAnchor(this._anchorEl);
736
40
  }
737
- /**
738
- * @internal
739
- */
740
- #closeOnPointerOutside = (e) => {
741
- if (this._isInPath(e, this._buttonEl) || this._isInPath(e, this._popupEl)) return;
742
- this.open = false;
743
- };
744
41
  connectedCallback() {
745
42
  super.connectedCallback();
746
- this.savedColors = this._loadSavedColors();
747
- document.addEventListener("mousedown", this.#closeOnPointerOutside, true);
43
+ this.#updateListeners();
748
44
  }
749
45
  disconnectedCallback() {
750
46
  super.disconnectedCallback();
751
- document.removeEventListener("mousedown", this.#closeOnPointerOutside, true);
47
+ this.#updateListeners();
752
48
  }
753
- #iconResetTimer = null;
754
49
  /**
755
50
  * @internal
756
51
  */
757
- _setTemporaryCopyIcon(name, ms = 2e3) {
758
- this.copyIconName = name;
759
- if (this.#iconResetTimer) clearTimeout(this.#iconResetTimer);
760
- this.#iconResetTimer = setTimeout(() => {
761
- this.copyIconName = "copy-2-line";
762
- this.#iconResetTimer = null;
763
- }, ms);
52
+ _anchorElChanged(oldValue, newValue) {
53
+ if (oldValue) this.#cleanupAnchor(oldValue);
54
+ if (newValue) this.#setupAnchor(newValue);
764
55
  }
765
- /**
766
- * @internal
767
- */
768
- _onBaseKeydown(event) {
769
- if (this.open && handleEscapeKeyAndStopPropogation(event)) {
770
- this.open = false;
771
- return false;
772
- }
773
- if (this._trappedFocus(event, () => this._focusableElsWithinDialog())) return false;
774
- return true;
56
+ #setupAnchor(a) {
57
+ a.addEventListener("click", this.#openIfClosed, true);
58
+ this.#originalAriaLabel = a.ariaLabel;
59
+ a.ariaLabel = `${this.locale.toggletip.anchorLabel(a.ariaLabel || "")}`;
60
+ this.#updateAnchor(a);
775
61
  }
776
- /**
777
- * @internal
778
- */
779
- _focusableElsWithinDialog() {
780
- return this._popupEl.querySelectorAll("button:not([role=\"gridcell\"]), [data-vvd-component=\"button\"], vwc-button:not([role=\"gridcell\"])");
62
+ #updateAnchor(a) {
63
+ a.setAttribute("aria-expanded", this.open.toString());
64
+ a.setAttribute("data-expanded", this.open.toString());
781
65
  }
782
- /**
783
- * @internal
784
- */
785
- _handleCellKeydown(event, value, index, isSaveCell) {
786
- if (event.key === "Tab") {
787
- event.preventDefault();
788
- const focusableEls = this._focusableElsWithinDialog();
789
- const idx = Array.prototype.indexOf.call(focusableEls, event.currentTarget);
790
- focusableEls[event.shiftKey ? (idx - 1 + focusableEls.length) % focusableEls.length : (idx + 1) % focusableEls.length]?.focus();
791
- return false;
66
+ #cleanupAnchor(a) {
67
+ a.removeEventListener("click", this.#openIfClosed, true);
68
+ a.removeAttribute("aria-expanded");
69
+ a.removeAttribute("data-expanded");
70
+ /* v8 ignore else -- @preserve */
71
+ if (a.ariaLabel) a.ariaLabel = this.#originalAriaLabel;
72
+ }
73
+ #openIfClosed = () => {
74
+ if (!this.open) Updates.enqueue(() => this.open = true);
75
+ };
76
+ #updateListeners() {
77
+ document.removeEventListener("click", this.#closeOnClickOutside);
78
+ document.removeEventListener("keydown", this.#closeOnEscape);
79
+ if (this.open && this.isConnected) {
80
+ document.addEventListener("click", this.#closeOnClickOutside);
81
+ document.addEventListener("keydown", this.#closeOnEscape);
792
82
  }
793
- return super._handleCellKeydown(event, value, index, isSaveCell);
794
83
  }
795
- /**
796
- * @internal
797
- */
798
- _handleSwatchSelection(value) {
84
+ #closeOnClickOutside = (e) => {
85
+ const clickedOutside = !this.contains(e.target);
86
+ const clickedOnAnchor = this._anchorEl?.contains(e.target);
87
+ if (clickedOutside || clickedOnAnchor) this.open = false;
88
+ };
89
+ #closeOnEscape = (e) => {
799
90
  /* v8 ignore else -- @preserve */
800
- if (this.value !== value) this._ariaLiveDescription = this.locale.colorPicker.selectionSuccessMessage(value);
801
- super._handleSwatchSelection(value);
802
- }
91
+ if (e.key === "Escape") this.open = false;
92
+ };
803
93
  };
804
- __decorate([attr], ColorPicker.prototype, "placeholder", void 0);
805
- __decorate([attr({ attribute: "saved-colors-key" })], ColorPicker.prototype, "savedColorsKey", void 0);
806
- __decorate([attr({
807
- mode: "boolean",
808
- attribute: "disable-saved-colors"
809
- })], ColorPicker.prototype, "disableSavedColors", void 0);
810
- __decorate([observable], ColorPicker.prototype, "savedColors", void 0);
811
- __decorate([attr({
812
- attribute: "max-swatches",
813
- mode: "fromView",
814
- converter: nullableNumberConverter
815
- })], ColorPicker.prototype, "maxSwatches", void 0);
816
- __decorate([observable], ColorPicker.prototype, "copyIconName", void 0);
817
- __decorate([observable], ColorPicker.prototype, "_ariaLiveDescription", void 0);
94
+ __decorate([attr], Toggletip.prototype, "headline", void 0);
95
+ __decorate([attr({ mode: "boolean" })], Toggletip.prototype, "alternate", void 0);
96
+ __decorate([attr({ mode: "fromView" })], Toggletip.prototype, "placement", void 0);
97
+ __decorate([attr({ mode: "boolean" })], Toggletip.prototype, "open", void 0);
818
98
  //#endregion
819
- //#region src/lib/color-picker/color-picker.template.ts
820
- function renderTextField(textFieldTag, iconTag) {
821
- const getClasses = (_) => classNames("control");
99
+ //#region src/lib/toggletip/toggletip.template.ts
100
+ var getClasses = (_) => classNames("control");
101
+ var ToggletipTemplate = (context) => {
102
+ const popup = context.tagFor(Popup);
822
103
  return html`
823
- <${textFieldTag}
824
- id="text-field"
825
- class="${getClasses}"
826
- pattern="${ColorPicker.HEX_COLOR_PATTERN.source}"
827
- maxlength="7"
828
- label="${(x) => x.label}"
829
- :value="${(x) => x.value}"
830
- placeholder="${(x) => x.placeholder}"
831
- helper-text="${(x) => x.helperText}"
832
- error-text="${(x) => x.errorValidationMessage}"
833
- success-text="${(x) => x.successText}"
834
- ?disabled="${(x) => x.disabled}"
835
- ?required="${(x) => x.required}"
836
- @input='${(x, c) => x._onTextFieldInput(c.event)}'
837
- @change="${(x) => x.handleChange()}"
838
- @blur="${(x) => {
839
- x.$emit("blur", void 0, { bubbles: false });
840
- }}"
841
- @focus="${(x) => {
842
- x.$emit("focus", void 0, { bubbles: false });
104
+ ${anchorSlotTemplateFactory()}
105
+ <${popup}
106
+ @keydown="${(x, { event }) => {
107
+ if (x.open && handleEscapeKeyAndStopPropogation(event)) return false;
108
+ return true;
843
109
  }}"
844
- ${delegateAria()}
845
- ${ref("_textFieldEl")}
110
+ class="${getClasses}"
111
+ arrow
112
+ :anchor="${(x) => x._anchorEl}"
113
+ :open="${(x) => x.open}"
114
+ ?alternate="${(x) => !x.alternate}"
115
+ placement="${(x) => x.placement}"
116
+ exportparts="vvd-theme-alternate"
846
117
  >
847
- <button
848
- aria-label="${(x) => x.locale.colorPicker.pickerButtonLabel}"
849
- aria-expanded="${(x) => x.open}"
850
- aria-haspopup="dialog"
851
- class="button ${(x) => classNames(x._applyContrastClass(x._buttonColor) ? "contrast" : "", x.disabled ? "disabled" : "")}"
852
- style="--button-color: ${(x) => x._buttonColor};"
853
- ?disabled="${(x) => x.disabled}"
854
- @click="${(x) => x._onButtonClick()}"
855
- slot="action-items"
856
- ${ref("_buttonEl")}>
857
- <${iconTag} name="edit-line"></${iconTag}>
858
- </button>
859
- <slot
860
- slot="${(x) => x._helperTextSlottedContent?.length ? "helper-text" : void 0}"
861
- name="helper-text"
862
- ${slotted("_helperTextSlottedContent")}
863
- ></slot>
864
- <slot
865
- slot='${(x) => x._contextualHelpSlottedContent?.length ? "contextual-help" : void 0}'
866
- name='contextual-help'
867
- ${slotted("_contextualHelpSlottedContent")}
868
- ></slot>
869
- </${textFieldTag}>
870
- `;
871
- }
872
- function renderPopupHeader(buttonTag, iconTag) {
873
- return html`
874
- <div class="header">
875
- <h2 class="header-title" id="color-picker-title">
876
- <slot name="popup-text">${(x) => x.locale.colorPicker.popupLabel}</slot>
877
- </h2>
878
- <${buttonTag} size="condensed"
879
- aria-label="${(x) => x.locale.colorPicker.closeButtonLabel}"
880
- @click="${(x) => x._handleCloseRequest()}">
881
- <${iconTag} slot="icon" name="close-line"></${iconTag}>
882
- </${buttonTag}>
883
- </div>
884
- `;
885
- }
886
- function renderPopupBody(buttonTag, iconTag, tooltipTag) {
887
- return html`
888
- <div class="body">
889
- <${html.partial(vcPickerTag)}
890
- part="hex-picker"
891
- color="${(x) => x.value}"
892
- @color-changed="${(x, c) => x._onPickerColorChanged(c.event)}"
893
- ${ref("_vcHexPickerEl")}
894
- ></${html.partial(vcPickerTag)}>
895
- <div class="hex-input-wrapper">
896
- <${html.partial(vcInputTag)}
897
- part="hex-input"
898
- prefixed
899
- color="${(x) => x.value}"
900
- @color-changed="${(x, c) => x._onPickerColorChanged(c.event)}"
901
- ${ref("_vcHexInputEl")}
902
- >
903
- <input name="hex-code-input" aria-label="${(x) => x.locale.colorPicker.hexInputLabel}"
904
- placeholder="${(x) => x.placeholder}"
905
- @blur="${(x, c) => c.event.stopImmediatePropagation()}"
906
- part="input">
907
- </${html.partial(vcInputTag)}>
908
- <${tooltipTag} placement="top"
909
- text="${(x) => x.locale.colorPicker.copyButtonLabel}"
910
- exportparts="vvd-theme-alternate">
911
- <${buttonTag}
912
- slot="anchor" size="normal"
913
- aria-label="${(x) => x.locale.colorPicker.copyButtonLabel}"
914
- @click="${(x) => x._copyValueToClipboard(x.value)}">
915
- <${iconTag} slot="icon" name="${(x) => x.copyIconName}"></${iconTag}>
916
- </${buttonTag}>
917
- </${tooltipTag}>
918
- </div>
919
- </div>
920
- `;
921
- }
922
- function renderPopupFooter(buttonTag, iconTag, tooltipTag) {
923
- return html`
924
- <div class="footer">
925
- <div class="footer-header">
926
- <span class="footer-title" id="color-picker-footer-title"
927
- ><slot name="swatches-text"
928
- >${(x) => x.locale.colorPicker.swatchesLabel}</slot
929
- ></span
930
- >
931
- ${when((x) => !x.disableSavedColors, renderSwatchesCount())}
932
- </div>
933
- <div
934
- class="palette"
935
- role="grid"
936
- aria-rowcount="${(x) => Math.ceil(x.allSwatches.length / x._getRowLength())}"
937
- aria-colcount="${(x) => x._getRowLength()}"
938
- style="--swatches-per-row: ${(x) => x._getRowLength()};"
939
- aria-labelledby="color-picker-footer-title"
940
- >
941
- ${repeat((x) => x.allSwatches, (x) => x._renderColorSwatch(iconTag, tooltipTag), { positioning: true })}
942
- ${when((x) => !x.disableSavedColors, html`
943
- <${tooltipTag} placement="top"
944
- text="${(x) => x.locale.colorPicker.saveButtonLabel}"
945
- exportparts="vvd-theme-alternate">
946
- <${buttonTag}
947
- slot="anchor"
948
- appearance="outlined"
949
- size="super-condensed"
950
- role="gridcell"
951
- tabindex="${(x) => x.allSwatches.length ? "-1" : "0"}"
952
- aria-label="${(x) => x.locale.colorPicker.saveButtonLabel}"
953
- @click="${(x) => x._saveCurrentColor()}"
954
- @keydown="${(x, c) => x._handleCellKeydown(c.event, x.value, x.allSwatches.length, true)}">
955
- <${iconTag} slot="icon" name="plus-line"></${iconTag}>
956
- </${buttonTag}>
957
- </${tooltipTag}>
958
- `)}
118
+ <div class="content-wrapper">
119
+ ${when((x) => x.headline, html`<h2 class="headline">${(x) => x.headline}</h2>`)}
120
+ <slot></slot>
121
+ <div class="action-items"><slot name="action-items"></slot></div>
959
122
  </div>
960
- </div>
961
- `;
962
- }
963
- function renderSwatchesCount() {
964
- return html`
965
- <span
966
- id="swatches-count"
967
- class="swatches-count"
968
- aria-label="${(x) => x.locale.colorPicker.maxSwatchesMessage(x.allSwatches.length, x.maxSwatches)}"
969
- >${(x) => `${x.allSwatches.length}/${x.maxSwatches}`}</span
970
- >
971
- `;
972
- }
973
- var ColorPickerTemplate = (context) => {
974
- const textFieldTag = context.tagFor(TextField);
975
- const iconTag = context.tagFor(Icon);
976
- const popupTag = context.tagFor(Popup);
977
- const buttonTag = context.tagFor(Button);
978
- const tooltipTag = context.tagFor(Tooltip);
979
- return html`
980
- <div class="base" @keydown="${(x, { event }) => x._onBaseKeydown(event)}">
981
- <span aria-live="assertive" aria-relevant="text" class="visually-hidden">
982
- ${(x) => x._ariaLiveDescription}
983
- </span>
984
- ${renderTextField(textFieldTag, iconTag)}
985
- <${popupTag}
986
- :open="${(x) => x.open}"
987
- :anchor="${(x) => x._buttonEl}"
988
- placement="top"
989
- offset="10"
990
- ${ref("_popupEl")}>
991
- <div class="dialog"
992
- role="dialog"
993
- aria-modal="true"
994
- aria-labelledby="color-picker-title">
995
- ${renderPopupHeader(buttonTag, iconTag)}
996
- ${renderPopupBody(buttonTag, iconTag, tooltipTag)}
997
- ${when((x) => !x.disableSavedColors || x.allSwatches.length > 0, renderPopupFooter(buttonTag, iconTag, tooltipTag))}
998
- </div>
999
- </${popupTag}>
1000
- </div>
123
+ </${popup}>
1001
124
  `;
1002
125
  };
1003
126
  //#endregion
1004
- //#region src/lib/color-picker/definition.ts
1005
- var colorPickerDefinition = defineVividComponent("color-picker", ColorPicker, ColorPickerTemplate, [
1006
- popupDefinition,
1007
- iconDefinition,
1008
- textFieldDefinition,
1009
- buttonDefinition,
1010
- tooltipDefinition,
1011
- feedbackMessageDefinition
1012
- ], { styles: color_picker_default$1 });
127
+ //#region src/lib/toggletip/definition.ts
128
+ /**
129
+ * @internal
130
+ */
131
+ var toggletipDefinition = defineVividComponent("toggletip", Toggletip, ToggletipTemplate, [popupDefinition], { styles: toggletip_default });
1013
132
  /**
1014
- * Registers the color-picker element with the design system.
133
+ * Registers the toggletip element with the design system.
1015
134
  *
1016
135
  * @param prefix - the prefix to use for the component name
1017
136
  */
1018
- var registerColorPicker = createRegisterFunction(colorPickerDefinition);
137
+ var registerToggletip = createRegisterFunction(toggletipDefinition);
1019
138
  //#endregion
1020
- export { registerColorPicker as n, ColorPicker as r, colorPickerDefinition as t };
139
+ export { toggletipDefinition as n, Toggletip as r, registerToggletip as t };