@vonage/vivid 4.24.0 → 4.26.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 (402) hide show
  1. package/custom-elements.json +23176 -14463
  2. package/elevation/index.cjs +1 -1
  3. package/elevation/index.js +1 -1
  4. package/index.cjs +112 -150
  5. package/index.js +37 -35
  6. package/lib/accordion-item/accordion-item.d.ts +7 -1
  7. package/lib/action-group/action-group.d.ts +7 -1
  8. package/lib/alert/alert.d.ts +22 -2
  9. package/lib/audio-player/audio-player.d.ts +7 -1
  10. package/lib/badge/badge.d.ts +10 -2
  11. package/lib/banner/banner.d.ts +28 -3
  12. package/lib/breadcrumb/breadcrumb.d.ts +7 -1
  13. package/lib/breadcrumb-item/breadcrumb-item.d.ts +64 -8
  14. package/lib/button/button.d.ts +733 -8
  15. package/lib/button/locale.d.ts +3 -0
  16. package/lib/calendar/calendar.d.ts +2 -0
  17. package/lib/calendar-event/calendar-event.d.ts +7 -1
  18. package/lib/card/card.d.ts +394 -2
  19. package/lib/card/card.template.d.ts +2 -1
  20. package/lib/checkbox/checkbox.d.ts +1830 -13
  21. package/lib/combobox/combobox.d.ts +1827 -20
  22. package/lib/data-grid/data-grid-cell.d.ts +342 -2
  23. package/lib/data-grid/data-grid-row.d.ts +1 -0
  24. package/lib/data-grid/data-grid.d.ts +1 -1
  25. package/lib/data-grid/locale.d.ts +5 -0
  26. package/lib/date-picker/date-picker.d.ts +1676 -207
  27. package/lib/date-range-picker/date-range-picker.d.ts +840 -107
  28. package/lib/date-time-picker/date-time-picker.d.ts +1678 -209
  29. package/lib/dial-pad/dial-pad.d.ts +9 -1
  30. package/lib/dialog/dialog.d.ts +15 -2
  31. package/lib/divider/divider.d.ts +7 -1
  32. package/lib/fab/fab.d.ts +7 -1
  33. package/lib/file-picker/file-picker.d.ts +1509 -31
  34. package/lib/header/header.d.ts +7 -1
  35. package/lib/icon/icon.d.ts +1 -0
  36. package/lib/icon/icon.template.d.ts +2 -1
  37. package/lib/menu/menu.d.ts +17 -8
  38. package/lib/menu/name.d.ts +1 -0
  39. package/lib/menu-item/menu-item.d.ts +16 -4
  40. package/lib/nav/nav.d.ts +7 -1
  41. package/lib/nav-disclosure/nav-disclosure.d.ts +15 -2
  42. package/lib/nav-item/nav-item.d.ts +406 -4
  43. package/lib/note/note.d.ts +7 -1
  44. package/lib/number-field/locale.d.ts +3 -2
  45. package/lib/number-field/number-field.d.ts +1859 -38
  46. package/lib/option/option.d.ts +14 -2
  47. package/lib/pagination/locale.d.ts +5 -0
  48. package/lib/pagination/pagination.d.ts +341 -2
  49. package/lib/popup/popup.d.ts +1 -0
  50. package/lib/progress/progress.d.ts +7 -1
  51. package/lib/progress-ring/progress-ring.d.ts +7 -1
  52. package/lib/radio/radio.d.ts +1137 -4
  53. package/lib/radio-group/radio-group.d.ts +21 -3
  54. package/lib/range-slider/range-slider.d.ts +765 -18
  55. package/lib/rich-text-editor/definition.d.ts +2 -2
  56. package/lib/rich-text-editor/facades/vivid-prose-mirror.facade.d.ts +3 -1
  57. package/lib/rich-text-editor/locale.d.ts +1 -0
  58. package/lib/rich-text-editor/menubar/menubar.d.ts +7 -1
  59. package/lib/rich-text-editor/rich-text-editor.d.ts +352 -2
  60. package/lib/searchable-select/option-tag.d.ts +7 -1
  61. package/lib/searchable-select/searchable-select.d.ts +1859 -38
  62. package/lib/select/select.d.ts +1844 -29
  63. package/lib/selectable-box/selectable-box.d.ts +7 -1
  64. package/lib/slider/slider.d.ts +386 -4
  65. package/lib/split-button/split-button.d.ts +21 -3
  66. package/lib/switch/switch.d.ts +387 -4
  67. package/lib/tab/tab.d.ts +21 -4
  68. package/lib/tab-panel/tab-panel.d.ts +7 -1
  69. package/lib/tag/tag.d.ts +14 -2
  70. package/lib/tag-group/tag-group.d.ts +7 -1
  71. package/lib/text-area/text-area.d.ts +2174 -19
  72. package/lib/text-field/text-field.d.ts +2197 -33
  73. package/lib/time-picker/time-picker.d.ts +839 -106
  74. package/lib/toggletip/toggletip.d.ts +10 -4
  75. package/lib/tooltip/tooltip.d.ts +10 -4
  76. package/lib/tree-item/tree-item.d.ts +14 -2
  77. package/lib/tree-view/tree-view.d.ts +7 -1
  78. package/lib/video-player/video-player.d.ts +7 -1
  79. package/lib/visually-hidden/definition.d.ts +4 -0
  80. package/lib/visually-hidden/visually-hidden.d.ts +3 -0
  81. package/lib/visually-hidden/visually-hidden.template.d.ts +3 -0
  82. package/locales/de-DE.cjs +54 -4
  83. package/locales/de-DE.js +54 -4
  84. package/locales/en-GB.cjs +54 -4
  85. package/locales/en-GB.js +54 -4
  86. package/locales/en-US.cjs +54 -4
  87. package/locales/en-US.js +54 -4
  88. package/locales/ja-JP.cjs +54 -4
  89. package/locales/ja-JP.js +54 -4
  90. package/locales/zh-CN.cjs +54 -4
  91. package/locales/zh-CN.js +54 -4
  92. package/menu/index.cjs +1 -1
  93. package/menu/index.js +1 -1
  94. package/nav/index.cjs +1 -1
  95. package/nav/index.js +1 -1
  96. package/nav-disclosure/index.cjs +1 -1
  97. package/nav-disclosure/index.js +1 -1
  98. package/nav-item/index.cjs +1 -1
  99. package/nav-item/index.js +1 -1
  100. package/note/index.cjs +1 -1
  101. package/note/index.js +1 -1
  102. package/number-field/index.cjs +1 -1
  103. package/number-field/index.js +1 -1
  104. package/option/index.cjs +1 -1
  105. package/option/index.js +1 -1
  106. package/package.json +1 -1
  107. package/pagination/index.cjs +1 -1
  108. package/pagination/index.js +1 -1
  109. package/popup/index.cjs +1 -1
  110. package/popup/index.js +1 -1
  111. package/progress/index.cjs +1 -1
  112. package/progress/index.js +1 -1
  113. package/progress-ring/index.cjs +1 -1
  114. package/progress-ring/index.js +1 -1
  115. package/radio/index.cjs +1 -1
  116. package/radio/index.js +1 -1
  117. package/radio-group/index.cjs +1 -1
  118. package/radio-group/index.js +1 -1
  119. package/range-slider/index.cjs +1 -1
  120. package/range-slider/index.js +1 -1
  121. package/rich-text-editor/index.cjs +1 -1
  122. package/rich-text-editor/index.js +1 -1
  123. package/searchable-select/index.cjs +1 -1
  124. package/searchable-select/index.js +1 -1
  125. package/select/index.cjs +1 -1
  126. package/select/index.js +1 -1
  127. package/selectable-box/index.cjs +1 -1
  128. package/selectable-box/index.js +1 -1
  129. package/shared/affix.cjs +13 -7
  130. package/shared/affix.js +13 -8
  131. package/shared/aria/delegates-aria.d.ts +7 -1
  132. package/shared/aria/host-semantics.d.ts +7 -1
  133. package/shared/breadcrumb-item.cjs +2 -5
  134. package/shared/breadcrumb-item.js +2 -5
  135. package/shared/button.cjs +13 -11
  136. package/shared/button.js +13 -11
  137. package/shared/calendar-picker.template.cjs +3 -3
  138. package/shared/calendar-picker.template.js +1 -1
  139. package/shared/char-count.cjs +92 -0
  140. package/shared/char-count.js +90 -0
  141. package/shared/definition.cjs +19 -3
  142. package/shared/definition.js +20 -4
  143. package/shared/definition10.js +1 -1
  144. package/shared/definition11.cjs +27 -44
  145. package/shared/definition11.js +28 -45
  146. package/shared/definition12.js +1 -1
  147. package/shared/definition13.cjs +25 -0
  148. package/shared/definition13.js +26 -1
  149. package/shared/definition14.cjs +53 -22
  150. package/shared/definition14.js +54 -23
  151. package/shared/definition15.cjs +32 -37
  152. package/shared/definition15.js +31 -37
  153. package/shared/definition16.cjs +44 -64
  154. package/shared/definition16.js +43 -64
  155. package/shared/definition17.cjs +608 -524
  156. package/shared/definition17.js +604 -520
  157. package/shared/definition18.cjs +10 -14
  158. package/shared/definition18.js +9 -14
  159. package/shared/definition19.cjs +85 -100
  160. package/shared/definition19.js +75 -91
  161. package/shared/definition2.js +1 -1
  162. package/shared/definition20.cjs +15 -20
  163. package/shared/definition20.js +14 -20
  164. package/shared/definition21.cjs +24 -5
  165. package/shared/definition21.js +25 -6
  166. package/shared/definition22.cjs +12 -6
  167. package/shared/definition22.js +13 -7
  168. package/shared/definition23.cjs +5 -38
  169. package/shared/definition23.js +5 -37
  170. package/shared/definition24.cjs +2 -7
  171. package/shared/definition24.js +3 -8
  172. package/shared/definition25.js +1 -1
  173. package/shared/definition26.cjs +157 -171
  174. package/shared/definition26.js +156 -171
  175. package/shared/definition27.cjs +1 -1
  176. package/shared/definition27.js +2 -2
  177. package/shared/definition28.cjs +33 -18
  178. package/shared/definition28.js +34 -19
  179. package/shared/definition29.js +1 -1
  180. package/shared/definition3.cjs +1 -1
  181. package/shared/definition3.js +2 -2
  182. package/shared/definition30.cjs +96 -482
  183. package/shared/definition30.js +99 -482
  184. package/shared/definition31.cjs +334 -57
  185. package/shared/definition31.js +333 -56
  186. package/shared/definition32.cjs +104 -19
  187. package/shared/definition32.js +105 -20
  188. package/shared/definition33.cjs +67 -15
  189. package/shared/definition33.js +66 -14
  190. package/shared/definition34.cjs +15 -50
  191. package/shared/definition34.js +14 -49
  192. package/shared/definition35.cjs +28 -397
  193. package/shared/definition35.js +27 -397
  194. package/shared/definition36.cjs +415 -54
  195. package/shared/definition36.js +415 -55
  196. package/shared/definition37.cjs +57 -234
  197. package/shared/definition37.js +57 -233
  198. package/shared/definition38.cjs +228 -66
  199. package/shared/definition38.js +227 -65
  200. package/shared/definition39.cjs +52 -44
  201. package/shared/definition39.js +51 -43
  202. package/shared/definition4.cjs +31 -24
  203. package/shared/definition4.js +33 -26
  204. package/shared/definition40.cjs +56 -266
  205. package/shared/definition40.js +55 -265
  206. package/shared/definition41.cjs +285 -142
  207. package/shared/definition41.js +285 -142
  208. package/shared/definition42.cjs +156 -564
  209. package/shared/definition42.js +156 -565
  210. package/shared/definition43.cjs +554 -14378
  211. package/shared/definition43.js +553 -14377
  212. package/shared/definition44.cjs +14418 -1155
  213. package/shared/definition44.js +14417 -1156
  214. package/shared/definition45.cjs +1049 -677
  215. package/shared/definition45.js +1050 -678
  216. package/shared/definition46.cjs +848 -113
  217. package/shared/definition46.js +847 -112
  218. package/shared/definition47.cjs +125 -90
  219. package/shared/definition47.js +124 -89
  220. package/shared/definition48.cjs +88 -455
  221. package/shared/definition48.js +87 -454
  222. package/shared/definition49.cjs +466 -109
  223. package/shared/definition49.js +466 -109
  224. package/shared/definition5.cjs +8 -7
  225. package/shared/definition5.js +6 -5
  226. package/shared/definition50.cjs +106 -106
  227. package/shared/definition50.js +105 -105
  228. package/shared/definition51.cjs +136 -15
  229. package/shared/definition51.js +135 -14
  230. package/shared/definition52.cjs +16 -115
  231. package/shared/definition52.js +15 -114
  232. package/shared/definition53.cjs +78 -412
  233. package/shared/definition53.js +77 -410
  234. package/shared/definition54.cjs +445 -23
  235. package/shared/definition54.js +443 -22
  236. package/shared/definition55.cjs +22 -136
  237. package/shared/definition55.js +21 -135
  238. package/shared/definition56.cjs +95 -291
  239. package/shared/definition56.js +95 -292
  240. package/shared/definition57.cjs +192 -480
  241. package/shared/definition57.js +190 -479
  242. package/shared/definition58.cjs +411 -24
  243. package/shared/definition58.js +410 -24
  244. package/shared/definition59.cjs +27 -144
  245. package/shared/definition59.js +27 -143
  246. package/shared/definition6.js +1 -1
  247. package/shared/definition60.cjs +83 -54
  248. package/shared/definition60.js +82 -53
  249. package/shared/definition61.cjs +78 -166
  250. package/shared/definition61.js +77 -164
  251. package/shared/definition62.cjs +143 -232
  252. package/shared/definition62.js +141 -231
  253. package/shared/definition63.cjs +234 -69417
  254. package/shared/definition63.js +233 -69416
  255. package/shared/definition64.cjs +69454 -28
  256. package/shared/definition64.js +69453 -27
  257. package/shared/definition65.cjs +28 -2168
  258. package/shared/definition65.js +27 -2166
  259. package/shared/definition66.cjs +27 -0
  260. package/shared/definition66.js +23 -0
  261. package/shared/definition67.cjs +2203 -0
  262. package/shared/definition67.js +2198 -0
  263. package/shared/definition7.cjs +11 -2
  264. package/shared/definition7.js +12 -3
  265. package/shared/definition8.cjs +24 -11
  266. package/shared/definition8.js +26 -13
  267. package/shared/definition9.cjs +1 -2
  268. package/shared/definition9.js +2 -3
  269. package/shared/delegates-aria.js +1 -1
  270. package/shared/deprecation/replaced-props.d.ts +20 -0
  271. package/shared/divider.cjs +41 -0
  272. package/shared/divider.js +38 -0
  273. package/shared/feedback/feedback-message.d.ts +345 -0
  274. package/shared/feedback/locale.d.ts +4 -0
  275. package/{lib/text-anchor/text-anchor.d.ts → shared/feedback/mixins.d.ts} +64 -41
  276. package/shared/form-associated.cjs +124 -100
  277. package/shared/form-associated.js +125 -101
  278. package/shared/form-element.cjs +84 -0
  279. package/shared/form-element.js +82 -0
  280. package/shared/foundation/button/button.d.ts +379 -3
  281. package/shared/foundation/form-associated/form-associated.d.ts +753 -49
  282. package/shared/foundation/listbox/listbox.d.ts +1 -1
  283. package/shared/foundation/vivid-element/vivid-element.d.ts +16 -0
  284. package/shared/host-semantics.js +1 -1
  285. package/shared/key-codes.js +1 -1
  286. package/shared/linkable.cjs +70 -0
  287. package/shared/linkable.js +68 -0
  288. package/shared/localization/Locale.d.ts +16 -0
  289. package/shared/mixins.cjs +309 -0
  290. package/shared/mixins.js +303 -0
  291. package/shared/patterns/affix.d.ts +18 -3
  292. package/shared/patterns/anchored.d.ts +20 -8
  293. package/shared/patterns/char-count/char-count.d.ts +351 -0
  294. package/shared/patterns/char-count/index.d.ts +1 -0
  295. package/shared/patterns/char-count/locale.d.ts +4 -0
  296. package/shared/patterns/form-elements/form-element.d.ts +744 -0
  297. package/shared/patterns/form-elements/index.d.ts +3 -1
  298. package/shared/patterns/form-elements/with-error-text.d.ts +1122 -0
  299. package/shared/patterns/form-elements/with-success-text.d.ts +341 -0
  300. package/shared/patterns/index.d.ts +2 -0
  301. package/shared/patterns/linkable.d.ts +394 -0
  302. package/shared/patterns/localized.d.ts +7 -1
  303. package/shared/patterns/trapped-focus.d.ts +7 -1
  304. package/shared/picker-field/mixins/calendar-picker.d.ts +420 -52
  305. package/shared/picker-field/mixins/calendar-picker.template.d.ts +420 -52
  306. package/shared/picker-field/mixins/inline-time-picker/inline-time-picker.d.ts +7 -1
  307. package/shared/picker-field/mixins/min-max-calendar-picker.d.ts +843 -107
  308. package/shared/picker-field/mixins/single-date-picker.d.ts +1259 -155
  309. package/shared/picker-field/mixins/single-value-picker.d.ts +417 -49
  310. package/shared/picker-field/mixins/time-selection-picker.d.ts +842 -106
  311. package/shared/picker-field/mixins/time-selection-picker.template.d.ts +839 -103
  312. package/shared/picker-field/picker-field.d.ts +1492 -16
  313. package/shared/picker-field.template.cjs +26 -35
  314. package/shared/picker-field.template.js +27 -36
  315. package/shared/repeat.js +1 -1
  316. package/shared/slider.template.cjs +1 -1
  317. package/shared/slider.template.js +1 -1
  318. package/shared/time-selection-picker.template.cjs +10 -15
  319. package/shared/time-selection-picker.template.js +10 -16
  320. package/shared/vivid-element.cjs +63 -4
  321. package/shared/vivid-element.js +63 -3
  322. package/shared/with-error-text.cjs +56 -0
  323. package/shared/with-error-text.js +54 -0
  324. package/shared/with-success-text.cjs +23 -0
  325. package/shared/with-success-text.js +21 -0
  326. package/side-drawer/index.cjs +1 -1
  327. package/side-drawer/index.js +1 -1
  328. package/slider/index.cjs +1 -1
  329. package/slider/index.js +1 -1
  330. package/split-button/index.cjs +1 -1
  331. package/split-button/index.js +1 -1
  332. package/styles/core/all.css +1 -1
  333. package/styles/core/theme.css +1 -1
  334. package/styles/core/typography.css +1 -1
  335. package/styles/tokens/theme-dark.css +4 -4
  336. package/styles/tokens/theme-light.css +4 -4
  337. package/styles/tokens/vivid-2-compat.css +1 -1
  338. package/switch/index.cjs +1 -1
  339. package/switch/index.js +1 -1
  340. package/tab/index.cjs +1 -1
  341. package/tab/index.js +1 -1
  342. package/tab-panel/index.cjs +1 -1
  343. package/tab-panel/index.js +1 -1
  344. package/tabs/index.cjs +1 -1
  345. package/tabs/index.js +1 -1
  346. package/tag/index.cjs +1 -1
  347. package/tag/index.js +1 -1
  348. package/tag-group/index.cjs +1 -1
  349. package/tag-group/index.js +1 -1
  350. package/text-area/index.cjs +1 -1
  351. package/text-area/index.js +1 -1
  352. package/text-field/index.cjs +1 -1
  353. package/text-field/index.js +1 -1
  354. package/time-picker/index.cjs +1 -1
  355. package/time-picker/index.js +1 -1
  356. package/toggletip/index.cjs +1 -1
  357. package/toggletip/index.js +1 -1
  358. package/tooltip/index.cjs +1 -1
  359. package/tooltip/index.js +1 -1
  360. package/tree-item/index.cjs +1 -1
  361. package/tree-item/index.js +1 -1
  362. package/tree-view/index.cjs +1 -1
  363. package/tree-view/index.js +1 -1
  364. package/video-player/index.cjs +1 -1
  365. package/video-player/index.js +1 -1
  366. package/visually-hidden/index.cjs +5 -0
  367. package/visually-hidden/index.js +3 -0
  368. package/vivid.api.json +845 -1503
  369. package/lib/checkbox/checkbox.form-associated.d.ts +0 -11
  370. package/lib/file-picker/file-picker.form-associated.d.ts +0 -11
  371. package/lib/number-field/number-field.form-associated.d.ts +0 -11
  372. package/lib/radio/radio.form-associated.d.ts +0 -13
  373. package/lib/range-slider/range-slider.form-associated.d.ts +0 -11
  374. package/lib/searchable-select/searchable-select.form-associated.d.ts +0 -11
  375. package/lib/select/select.form-associated.d.ts +0 -11
  376. package/lib/slider/slider.form-associated.d.ts +0 -11
  377. package/lib/switch/switch.form-associated.d.ts +0 -11
  378. package/lib/text-anchor/definition.d.ts +0 -2
  379. package/lib/text-anchor/text-anchor.template.d.ts +0 -3
  380. package/lib/text-area/text-area.form-associated.d.ts +0 -11
  381. package/lib/text-field/text-field.form-associated.d.ts +0 -11
  382. package/shared/anchor.cjs +0 -49
  383. package/shared/anchor.js +0 -47
  384. package/shared/apply-mixins.cjs +0 -23
  385. package/shared/apply-mixins.js +0 -21
  386. package/shared/applyMixinsWithObservables.cjs +0 -15
  387. package/shared/applyMixinsWithObservables.js +0 -13
  388. package/shared/direction.cjs +0 -17
  389. package/shared/direction.js +0 -15
  390. package/shared/form-elements.cjs +0 -209
  391. package/shared/form-elements.js +0 -202
  392. package/shared/foundation/anchor/anchor.d.ts +0 -11
  393. package/shared/foundation/utilities/apply-mixins.d.ts +0 -1
  394. package/shared/patterns/form-elements/form-elements.d.ts +0 -58
  395. package/shared/picker-field/picker-field.form-associated.d.ts +0 -11
  396. package/shared/text-anchor.cjs +0 -38
  397. package/shared/text-anchor.js +0 -36
  398. package/shared/text-anchor.template.cjs +0 -35
  399. package/shared/text-anchor.template.js +0 -33
  400. package/shared/utils/applyMixinsWithObservables.d.ts +0 -1
  401. package/text-anchor/index.cjs +0 -17
  402. package/text-anchor/index.js +0 -15
@@ -1,6 +1,6 @@
1
1
  import { type ListboxOption } from '../../../lib/option/option';
2
2
  import { VividElement } from '../vivid-element/vivid-element';
3
- export declare abstract class Listbox extends VividElement {
3
+ export declare class Listbox extends VividElement {
4
4
  get length(): number;
5
5
  get options(): ListboxOption[];
6
6
  set options(value: ListboxOption[]);
@@ -329,6 +329,20 @@ declare const VividElement_base: {
329
329
  ariaRowIndexText: string | null;
330
330
  ariaRelevant: string | null;
331
331
  };
332
+ } & {
333
+ new (...args: any[]): {
334
+ "__#1@#handleReplacedProp"(replacedProp: {
335
+ newPropertyName: string;
336
+ deprecatedPropertyName: string;
337
+ fromDeprecated: (v: any) => any;
338
+ toDeprecated?: ((v: any) => any) | undefined;
339
+ }): void;
340
+ readonly $fastController: import("@microsoft/fast-element").Controller;
341
+ $emit(type: string, detail?: any, options?: Omit<CustomEventInit<any>, "detail"> | undefined): boolean | void;
342
+ connectedCallback(): void;
343
+ disconnectedCallback(): void;
344
+ attributeChangedCallback(name: string, oldValue: string, newValue: string): void;
345
+ };
332
346
  } & (new () => HTMLElement & FASTElement) & {
333
347
  from<TBase extends {
334
348
  new (): HTMLElement;
@@ -338,5 +352,7 @@ declare const VividElement_base: {
338
352
  };
339
353
  export declare class VividElement extends VividElement_base {
340
354
  static VIVID_VERSION: string;
355
+ static componentName: string;
356
+ connectedCallback(): void;
341
357
  }
342
358
  export {};
@@ -1,4 +1,4 @@
1
- import { d as ariaAttributeName, f as ariaMixinProperties, A as AttachedBehaviorHTMLDirective } from './vivid-element.js';
1
+ import { b as ariaAttributeName, c as ariaMixinProperties, A as AttachedBehaviorHTMLDirective } from './vivid-element.js';
2
2
  import { A as AttributeBindingBehavior } from './attribute-binding-behaviour.js';
3
3
 
4
4
  class HostSemanticsBehavior {
@@ -15,4 +15,4 @@ const keyPageUp = "PageUp";
15
15
  const keySpace = " ";
16
16
  const keyTab = "Tab";
17
17
 
18
- export { keySpace as a, keyEscape as b, keyTab as c, keyEnd as d, keyArrowUp as e, keyArrowDown as f, keyHome as g, keyArrowLeft as h, keyArrowRight as i, keyPageDown as j, keyEnter as k, keyPageUp as l, keyFunction2 as m };
18
+ export { keySpace as a, keyEscape as b, keyTab as c, keyEnd as d, keyArrowUp as e, keyArrowDown as f, keyHome as g, keyArrowRight as h, keyArrowLeft as i, keyFunction2 as j, keyEnter as k, keyPageDown as l, keyPageUp as m };
@@ -0,0 +1,70 @@
1
+ 'use strict';
2
+
3
+ const delegatesAria = require('./delegates-aria.cjs');
4
+ const vividElement = require('./vivid-element.cjs');
5
+ const ref = require('./ref.cjs');
6
+
7
+ var __defProp = Object.defineProperty;
8
+ var __decorateClass = (decorators, target, key, kind) => {
9
+ var result = void 0 ;
10
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
11
+ if (decorator = decorators[i])
12
+ result = (decorator(target, key, result) ) || result;
13
+ if (result) __defProp(target, key, result);
14
+ return result;
15
+ };
16
+ const Linkable = (Base) => {
17
+ class LinkableElement extends delegatesAria.DelegatesAria(Base) {
18
+ constructor() {
19
+ super(...arguments);
20
+ /**
21
+ * Helper function for rendering link elements
22
+ * @internal
23
+ */
24
+ this._renderLinkElement = (content, cssClass, boundAriaProperties) => {
25
+ return vividElement.html`<a
26
+ class="${cssClass}"
27
+ download="${(x) => x.download}"
28
+ href="${(x) => x.href}"
29
+ hreflang="${(x) => x.hreflang}"
30
+ ping="${(x) => x.ping}"
31
+ referrerpolicy="${(x) => x.referrerpolicy}"
32
+ rel="${(x) => x.rel}"
33
+ target="${(x) => x.target}"
34
+ type="${(x) => x.type}"
35
+ ${ref.ref("control")}
36
+ ${delegatesAria.delegateAria(boundAriaProperties)}
37
+ >
38
+ ${content}
39
+ </a>`;
40
+ };
41
+ }
42
+ }
43
+ __decorateClass([
44
+ vividElement.attr
45
+ ], LinkableElement.prototype, "download");
46
+ __decorateClass([
47
+ vividElement.attr
48
+ ], LinkableElement.prototype, "href");
49
+ __decorateClass([
50
+ vividElement.attr
51
+ ], LinkableElement.prototype, "hreflang");
52
+ __decorateClass([
53
+ vividElement.attr
54
+ ], LinkableElement.prototype, "ping");
55
+ __decorateClass([
56
+ vividElement.attr
57
+ ], LinkableElement.prototype, "referrerpolicy");
58
+ __decorateClass([
59
+ vividElement.attr
60
+ ], LinkableElement.prototype, "rel");
61
+ __decorateClass([
62
+ vividElement.attr
63
+ ], LinkableElement.prototype, "target");
64
+ __decorateClass([
65
+ vividElement.attr
66
+ ], LinkableElement.prototype, "type");
67
+ return LinkableElement;
68
+ };
69
+
70
+ exports.Linkable = Linkable;
@@ -0,0 +1,68 @@
1
+ import { D as DelegatesAria, d as delegateAria } from './delegates-aria.js';
2
+ import { a as attr, h as html } from './vivid-element.js';
3
+ import { r as ref } from './ref.js';
4
+
5
+ var __defProp = Object.defineProperty;
6
+ var __decorateClass = (decorators, target, key, kind) => {
7
+ var result = void 0 ;
8
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
9
+ if (decorator = decorators[i])
10
+ result = (decorator(target, key, result) ) || result;
11
+ if (result) __defProp(target, key, result);
12
+ return result;
13
+ };
14
+ const Linkable = (Base) => {
15
+ class LinkableElement extends DelegatesAria(Base) {
16
+ constructor() {
17
+ super(...arguments);
18
+ /**
19
+ * Helper function for rendering link elements
20
+ * @internal
21
+ */
22
+ this._renderLinkElement = (content, cssClass, boundAriaProperties) => {
23
+ return html`<a
24
+ class="${cssClass}"
25
+ download="${(x) => x.download}"
26
+ href="${(x) => x.href}"
27
+ hreflang="${(x) => x.hreflang}"
28
+ ping="${(x) => x.ping}"
29
+ referrerpolicy="${(x) => x.referrerpolicy}"
30
+ rel="${(x) => x.rel}"
31
+ target="${(x) => x.target}"
32
+ type="${(x) => x.type}"
33
+ ${ref("control")}
34
+ ${delegateAria(boundAriaProperties)}
35
+ >
36
+ ${content}
37
+ </a>`;
38
+ };
39
+ }
40
+ }
41
+ __decorateClass([
42
+ attr
43
+ ], LinkableElement.prototype, "download");
44
+ __decorateClass([
45
+ attr
46
+ ], LinkableElement.prototype, "href");
47
+ __decorateClass([
48
+ attr
49
+ ], LinkableElement.prototype, "hreflang");
50
+ __decorateClass([
51
+ attr
52
+ ], LinkableElement.prototype, "ping");
53
+ __decorateClass([
54
+ attr
55
+ ], LinkableElement.prototype, "referrerpolicy");
56
+ __decorateClass([
57
+ attr
58
+ ], LinkableElement.prototype, "rel");
59
+ __decorateClass([
60
+ attr
61
+ ], LinkableElement.prototype, "target");
62
+ __decorateClass([
63
+ attr
64
+ ], LinkableElement.prototype, "type");
65
+ return LinkableElement;
66
+ };
67
+
68
+ export { Linkable as L };
@@ -15,6 +15,15 @@ import type { SearchableSelectLocale } from '../../lib/searchable-select/locale'
15
15
  import type { PickerFieldLocale } from '../picker-field/locale';
16
16
  import type { DateTimePickerLocale } from '../../lib/date-time-picker/locale';
17
17
  import type { RichTextEditorLocale } from '../../lib/rich-text-editor/locale';
18
+ import type { ButtonLocale } from '../../lib/button/locale';
19
+ import type { FeedbackMessageLocale } from '../feedback/locale';
20
+ import type { CharCountLocale } from '../patterns/char-count/locale';
21
+ import type { DataGridLocale } from '../../lib/data-grid/locale';
22
+ import type { PaginationLocale } from '../../lib/pagination/locale';
23
+ import type { Connotation } from '../../lib/enums';
24
+ type ConnotationAnnoncementLocale = {
25
+ [key in Connotation as `${key}Icon`]: string;
26
+ };
18
27
  export interface Locale {
19
28
  lang: string;
20
29
  common: {
@@ -37,4 +46,11 @@ export interface Locale {
37
46
  tab: TabLocale;
38
47
  searchableSelect: SearchableSelectLocale;
39
48
  richTextEditor: RichTextEditorLocale;
49
+ button: ButtonLocale;
50
+ feedbackMessage: FeedbackMessageLocale;
51
+ connotationAnnoncement: ConnotationAnnoncementLocale;
52
+ charCount: CharCountLocale;
53
+ dataGrid: DataGridLocale;
54
+ pagination: PaginationLocale;
40
55
  }
56
+ export {};
@@ -0,0 +1,309 @@
1
+ 'use strict';
2
+
3
+ const vividElement = require('./vivid-element.cjs');
4
+ const definition = require('./definition28.cjs');
5
+ const definition$1 = require('./definition66.cjs');
6
+ const classNames = require('./class-names.cjs');
7
+ const when = require('./when.cjs');
8
+ const localized = require('./localized.cjs');
9
+ const slotted = require('./slotted.cjs');
10
+
11
+ const styles = ":host{display:contents}.message{display:flex;contain:inline-size;font:var(--vvd-typography-base-condensed);gap:4px;grid-column:1/-1}.message.none-message{display:none}.message.helper-message{color:var(--_low-ink-color)}.message.error-message,.message.success-message{color:var(--vvd-color-canvas-text)}slot{display:inline}.icon{font-size:16px}.error-message .icon{color:var(--vvd-color-alert-500)}.success-message .icon{color:var(--vvd-color-success-500)}.announcement{display:contents}";
12
+
13
+ var __defProp$1 = Object.defineProperty;
14
+ var __decorateClass$1 = (decorators, target, key, kind) => {
15
+ var result = void 0 ;
16
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
17
+ if (decorator = decorators[i])
18
+ result = (decorator(target, key, result) ) || result;
19
+ if (result) __defProp$1(target, key, result);
20
+ return result;
21
+ };
22
+ class FeedbackMessage extends localized.Localized(vividElement.VividElement) {
23
+ constructor() {
24
+ super(...arguments);
25
+ this.type = "none";
26
+ }
27
+ }
28
+ __decorateClass$1([
29
+ vividElement.attr
30
+ ], FeedbackMessage.prototype, "type");
31
+ function iconTemplate(context, icon, textI18nKey) {
32
+ const iconTag = context.tagFor(definition.Icon);
33
+ return vividElement.html`<${iconTag} class="icon" name="${icon}" label="${(x) => x.locale.feedbackMessage[textI18nKey]}"></${iconTag}>`;
34
+ }
35
+ function iconForType(context) {
36
+ const iconTemplateForType = {
37
+ none: "",
38
+ helper: "",
39
+ error: iconTemplate(context, "info-line", "errorIconText"),
40
+ success: iconTemplate(context, "check-circle-line", "successIconText")
41
+ };
42
+ return vividElement.html`${(x) => iconTemplateForType[x.type]}`;
43
+ }
44
+ const shouldAnnounce = (type) => type === "error";
45
+ const FeedbackMessageTemplate = (ctx) => {
46
+ const message = vividElement.html`<div
47
+ class="${(x) => classNames.classNames("message", `${x.type}-message`)}"
48
+ >
49
+ ${iconForType(ctx)}<slot></slot>
50
+ </div>`;
51
+ return vividElement.html`${when.when((x) => !shouldAnnounce(x.type), message)}
52
+ <span class="announcement" role="status" aria-live="polite">
53
+ ${when.when((x) => shouldAnnounce(x.type), message)}
54
+ </span>`;
55
+ };
56
+ const feedbackMessageDefinition = vividElement.defineVividComponent(
57
+ "feedback-message",
58
+ FeedbackMessage,
59
+ FeedbackMessageTemplate,
60
+ [definition.iconDefinition, definition$1.visuallyHiddenDefinition],
61
+ {
62
+ styles
63
+ }
64
+ );
65
+
66
+ class RenderInLightDomBehaviour {
67
+ constructor(templateBinding, isTemplateBindingVolatile) {
68
+ this.source = null;
69
+ this.templateBindingObserver = vividElement.Observable.binding(
70
+ templateBinding,
71
+ this,
72
+ isTemplateBindingVolatile
73
+ );
74
+ }
75
+ bind(source, context) {
76
+ this.source = source;
77
+ this.context = context;
78
+ if (!this.insertionPoint) {
79
+ this.insertionPoint = document.createComment("");
80
+ source.appendChild(this.insertionPoint);
81
+ }
82
+ this.handleChange();
83
+ }
84
+ unbind() {
85
+ this.source = null;
86
+ this.view.unbind();
87
+ this.templateBindingObserver.disconnect();
88
+ }
89
+ /**
90
+ * Handles change of the template itself.
91
+ */
92
+ handleChange() {
93
+ this.instantiateTemplate(
94
+ this.templateBindingObserver.observe(this.source, this.context)
95
+ );
96
+ }
97
+ instantiateTemplate(template) {
98
+ if (this.view) {
99
+ this.view.dispose();
100
+ }
101
+ this.view = template.create();
102
+ this.view.bind(this.source, this.context);
103
+ this.view.insertBefore(this.insertionPoint);
104
+ }
105
+ }
106
+ class RenderInLightDomDirective extends vividElement.HTMLDirective {
107
+ constructor(templateBinding) {
108
+ super();
109
+ this.templateBinding = templateBinding;
110
+ this.createPlaceholder = vividElement.DOM.createBlockPlaceholder;
111
+ this.isTemplateBindingVolatile = vividElement.Observable.isVolatileBinding(templateBinding);
112
+ }
113
+ createBehavior() {
114
+ return new RenderInLightDomBehaviour(
115
+ this.templateBinding,
116
+ this.isTemplateBindingVolatile
117
+ );
118
+ }
119
+ }
120
+ function renderInLightDOM(templateOrTemplateBinding) {
121
+ const templateBinding = typeof templateOrTemplateBinding === "function" ? templateOrTemplateBinding : () => templateOrTemplateBinding;
122
+ return new RenderInLightDomDirective(templateBinding);
123
+ }
124
+
125
+ const byteToHex = [];
126
+ for (let i = 0; i < 256; ++i) {
127
+ byteToHex.push((i + 0x100).toString(16).slice(1));
128
+ }
129
+ function unsafeStringify(arr, offset = 0) {
130
+ return (byteToHex[arr[offset + 0]] +
131
+ byteToHex[arr[offset + 1]] +
132
+ byteToHex[arr[offset + 2]] +
133
+ byteToHex[arr[offset + 3]] +
134
+ '-' +
135
+ byteToHex[arr[offset + 4]] +
136
+ byteToHex[arr[offset + 5]] +
137
+ '-' +
138
+ byteToHex[arr[offset + 6]] +
139
+ byteToHex[arr[offset + 7]] +
140
+ '-' +
141
+ byteToHex[arr[offset + 8]] +
142
+ byteToHex[arr[offset + 9]] +
143
+ '-' +
144
+ byteToHex[arr[offset + 10]] +
145
+ byteToHex[arr[offset + 11]] +
146
+ byteToHex[arr[offset + 12]] +
147
+ byteToHex[arr[offset + 13]] +
148
+ byteToHex[arr[offset + 14]] +
149
+ byteToHex[arr[offset + 15]]).toLowerCase();
150
+ }
151
+
152
+ let getRandomValues;
153
+ const rnds8 = new Uint8Array(16);
154
+ function rng() {
155
+ if (!getRandomValues) {
156
+ if (typeof crypto === 'undefined' || !crypto.getRandomValues) {
157
+ throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');
158
+ }
159
+ getRandomValues = crypto.getRandomValues.bind(crypto);
160
+ }
161
+ return getRandomValues(rnds8);
162
+ }
163
+
164
+ const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);
165
+ const native = { randomUUID };
166
+
167
+ function v4(options, buf, offset) {
168
+ if (native.randomUUID && true && !options) {
169
+ return native.randomUUID();
170
+ }
171
+ options = options || {};
172
+ const rnds = options.random ?? options.rng?.() ?? rng();
173
+ if (rnds.length < 16) {
174
+ throw new Error('Random bytes length must be >= 16');
175
+ }
176
+ rnds[6] = (rnds[6] & 0x0f) | 0x40;
177
+ rnds[8] = (rnds[8] & 0x3f) | 0x80;
178
+ return unsafeStringify(rnds);
179
+ }
180
+
181
+ const generateRandomId = () => v4();
182
+
183
+ var __defProp = Object.defineProperty;
184
+ var __decorateClass = (decorators, target, key, kind) => {
185
+ var result = void 0 ;
186
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
187
+ if (decorator = decorators[i])
188
+ result = (decorator(target, key, result) ) || result;
189
+ if (result) __defProp(target, key, result);
190
+ return result;
191
+ };
192
+ const WithFeedback = (Base) => {
193
+ class ElementWithFeedback extends Base {
194
+ /**
195
+ * Ids of the feedback content that the control should use for aria-describedby.
196
+ *
197
+ * @internal
198
+ */
199
+ get _feedbackDescribedBy() {
200
+ return "feedback slotted-helper-text-feedback";
201
+ }
202
+ /**
203
+ * @internal
204
+ */
205
+ _internalFeedback() {
206
+ const helperText = this._helperTextSlottedContent?.length ? "" : this.helperText;
207
+ const errorText = this.errorValidationMessage;
208
+ const successText = this.successText;
209
+ if (successText) return { type: "success", message: successText };
210
+ if (errorText) return { type: "error", message: errorText };
211
+ if (helperText) return { type: "helper", message: helperText };
212
+ return { type: "none", message: "" };
213
+ }
214
+ /**
215
+ * @internal
216
+ */
217
+ _slottedHelperTextFeedbackType() {
218
+ const shouldShowSlottedHelperText = this._internalFeedback().type === "none" && this._helperTextSlottedContent?.length;
219
+ return shouldShowSlottedHelperText ? "helper" : "none";
220
+ }
221
+ /**
222
+ * @internal
223
+ */
224
+ _getFeedbackTemplate(ctx) {
225
+ const feedbackTag = ctx.tagFor(FeedbackMessage);
226
+ return vividElement.html`
227
+ <${feedbackTag} id="feedback" :type="${(x) => x._internalFeedback().type}">
228
+ ${(x) => x._internalFeedback().message}
229
+ </${feedbackTag}>
230
+ <${feedbackTag}
231
+ id="slotted-helper-text-feedback"
232
+ :type="${(x) => x._slottedHelperTextFeedbackType()}"
233
+ >
234
+ <slot name="helper-text" ${slotted.slotted("_helperTextSlottedContent")}></slot>
235
+ </${feedbackTag}>
236
+ `;
237
+ }
238
+ }
239
+ __decorateClass([
240
+ vividElement.attr({ attribute: "helper-text" })
241
+ ], ElementWithFeedback.prototype, "helperText");
242
+ __decorateClass([
243
+ vividElement.observable
244
+ ], ElementWithFeedback.prototype, "_helperTextSlottedContent");
245
+ return ElementWithFeedback;
246
+ };
247
+ const WithLightDOMFeedback = (Base) => {
248
+ const randomFeedbackId = () => `vvd-feedback-${generateRandomId()}`;
249
+ const randomSlottedContentId = () => `vvd-slotted-feedback-${generateRandomId()}`;
250
+ class ElementWithLightDOMFeedback extends WithFeedback(Base) {
251
+ constructor() {
252
+ super(...arguments);
253
+ this._slottedHelperTextIds = [];
254
+ /**
255
+ * @internal
256
+ */
257
+ this._feedbackId = randomFeedbackId();
258
+ }
259
+ /**
260
+ * @internal
261
+ */
262
+ _helperTextSlottedContentChanged(_, newContent) {
263
+ for (const el of newContent) {
264
+ if (!el.id) {
265
+ el.id = randomSlottedContentId();
266
+ }
267
+ }
268
+ this._slottedHelperTextIds = newContent.map((el) => el.id);
269
+ }
270
+ /**
271
+ * @internal
272
+ */
273
+ get _feedbackDescribedBy() {
274
+ return [this._feedbackId, ...this._slottedHelperTextIds].join(" ");
275
+ }
276
+ /**
277
+ * @internal
278
+ */
279
+ _getFeedbackTemplate(ctx) {
280
+ const feedbackTag = ctx.tagFor(FeedbackMessage);
281
+ return vividElement.html`
282
+ <slot name="_feedback"></slot>
283
+ ${renderInLightDOM(vividElement.html`<${feedbackTag}
284
+ slot="_feedback"
285
+ id="${(x) => x._feedbackId}"
286
+ :type="${(x) => x._internalFeedback().type}"
287
+ >
288
+ ${(x) => x._internalFeedback().message}
289
+ </${feedbackTag}>`)}
290
+ <${feedbackTag} :type="${(x) => x._slottedHelperTextFeedbackType()}">
291
+ <slot
292
+ name="helper-text"
293
+ ${slotted.slotted("_helperTextSlottedContent")}
294
+ ></slot>
295
+ </${feedbackTag}>
296
+ `;
297
+ }
298
+ }
299
+ __decorateClass([
300
+ vividElement.observable
301
+ ], ElementWithLightDOMFeedback.prototype, "_slottedHelperTextIds");
302
+ return ElementWithLightDOMFeedback;
303
+ };
304
+
305
+ exports.WithFeedback = WithFeedback;
306
+ exports.WithLightDOMFeedback = WithLightDOMFeedback;
307
+ exports.feedbackMessageDefinition = feedbackMessageDefinition;
308
+ exports.generateRandomId = generateRandomId;
309
+ exports.renderInLightDOM = renderInLightDOM;