@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,409 +1,426 @@
1
1
  require("./chunk.cjs");
2
2
  const require_vivid_element = require("./vivid-element.cjs");
3
3
  const require_definition = require("./definition.cjs");
4
- const require_definition$1 = require("./definition2.cjs");
5
4
  const require_decorate = require("./decorate.cjs");
6
- const require_localized = require("./localized.cjs");
7
- const require_definition$2 = require("./definition7.cjs");
8
- const require_definition$3 = require("./definition25.cjs");
5
+ const require_definition$1 = require("./definition7.cjs");
6
+ const require_definition$2 = require("./definition10.cjs");
7
+ const require_definition$3 = require("./definition26.cjs");
8
+ const require_definition$4 = require("./definition36.cjs");
9
+ const require_picker_field_template = require("./picker-field.template.cjs");
10
+ const require_calendar_picker_template = require("./calendar-picker.template.cjs");
9
11
  let _microsoft_fast_element = require("@microsoft/fast-element");
10
- let _microsoft_fast_web_utilities = require("@microsoft/fast-web-utilities");
11
- //#region src/lib/dial-pad/dial-pad.scss?inline
12
- var dial_pad_default = ":host{inline-size:230px;margin:16px;display:inline-block}.base{box-sizing:border-box;grid-template-rows:80px 1fr auto;display:grid}.base.no-input{grid-template-rows:1fr auto}.digits{grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(3,1fr);gap:16px;inline-size:100%;display:grid}.phone-field{grid-column:1/-1;align-self:flex-start}.digit-btn{--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-pale)}@media (hover:hover){.digit-btn:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-firm-all)}}.digit-btn.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text:var(--_connotation-color-firm-all);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--_connotation-color-firm-all)}.digit-btn:disabled,.digit-btn.disabled{--_appearance-color-text:var(--vvd-color-neutral-300);--_appearance-color-fill:transparent;--_appearance-color-outline:var(--vvd-color-neutral-100)}.digit-btn{--_connotation-color-contrast:var(--vvd-dial-pad-accent-contrast,var(--vvd-color-neutral-800));--_connotation-color-soft:var(--vvd-dial-pad-accent-soft,var(--vvd-color-neutral-100));--_connotation-color-pale:var(--vvd-dial-pad-accent-pale,var(--vvd-color-neutral-300));--_connotation-color-fierce:var(--vvd-dial-pad-accent-fierce,var(--vvd-color-neutral-700));--_connotation-color-firm-all:var(--vvd-dial-pad-accent-firm-all,var(--vvd-color-neutral-600));--_connotation-color-faint:var(--vvd-dial-pad-accent-faint,var(--vvd-color-neutral-50));--_connotation-color-dim:var(--vvd-dial-pad-accent-dim,var(--vvd-color-neutral-200));--vvd-button-accent-firm:var(--_appearance-color-text);box-shadow:0 0 0 1px var(--_appearance-color-outline);border-radius:16px;flex-direction:column;inline-size:100%;display:flex;overflow:hidden}.digit-btn:not(.disabled) .digit-btn-num{color:var(--vvd-color-canvas-text)}.digit-btn:focus-within{--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))}.call-btn{grid-column:1/-1;margin-top:32px}";
12
+ //#region src/shared/datetime/presentationDateRange.ts
13
+ var formatRange = (from, to) => {
14
+ return `${from} ${to}`;
15
+ };
16
+ var formatPresentationDateRange = (dateRange, locale) => {
17
+ return formatRange(require_calendar_picker_template.formatPresentationDate(dateRange.start, locale), require_calendar_picker_template.formatPresentationDate(dateRange.end, locale));
18
+ };
19
+ /**
20
+ * Parse a presentation date range, which combines two presentation dates with a dash.
21
+ * Will throw if the range can't be parsed
22
+ */
23
+ var parsePresentationDateRange = (presentationDateRange, locale) => {
24
+ const fragments = presentationDateRange.trim().split(/[\s—–-]+/);
25
+ if (fragments.length !== 2) throw new Error(`Invalid date range: ${presentationDateRange}`);
26
+ const [start, end] = fragments.map((fragment) => require_calendar_picker_template.parsePresentationDate(fragment, locale));
27
+ return {
28
+ start,
29
+ end
30
+ };
31
+ };
13
32
  //#endregion
14
- //#region src/lib/dial-pad/dial-pad.ts
33
+ //#region src/lib/date-range-picker/date-range-picker.ts
34
+ var isFormAssociatedTryingToSetFormValue = (value) => typeof value === "string";
35
+ function isDefined(value) {
36
+ return !!value;
37
+ }
15
38
  /**
16
- * Base class for dial-pad
17
- *
18
39
  * @public
19
- * @component dial-pad
20
- * @event {CustomEvent<undefined>} change - Emitted when the text field value changes
21
- * @event {CustomEvent<undefined>} input - Emitted when the text field value changes
22
- * @event {CustomEvent<undefined>} blur - Emitted when the text field loses focus
23
- * @event {CustomEvent<undefined>} focus - Emitted when the text field receives focus
24
- * @event {CustomEvent<HTMLElement>}keypad-click - Emitted when a digit button is clicked
25
- * @event {CustomEvent<undefined>} dial - Emitted when the call button is clicked
26
- * @event {CustomEvent<undefined>} end-call - Emitted when the end call button is clicked
27
- * @vueModel modelValue value input `event.currentTarget.value`
28
- *
40
+ * @component date-range-picker
41
+ * @slot helper-text - Describes how to use the date-range-picker. Alternative to the `helper-text` attribute.
42
+ * @event {CustomEvent<undefined>} input:start - Event emitted when the start value changes
43
+ * @event {CustomEvent<undefined>} input:end - Event emitted when the end value changes
44
+ * @event {CustomEvent<undefined>} input - Emitted when either the start or end value changes
45
+ * @event {CustomEvent<undefined>} change - Emitted when either the start or end value changes
46
+ * @vueModel start start input:start `event.currentTarget.start`
47
+ * @vueModel end end input:end `event.currentTarget.end`
48
+ * @testAction selectDateRange selectDateRange
49
+ * @testQuery range range
29
50
  */
30
- var DialPad = class extends require_localized.Localized(require_vivid_element.VividElement) {
51
+ var DateRangePicker = class extends require_calendar_picker_template.MinMaxCalendarPicker(require_calendar_picker_template.CalendarPicker(require_picker_field_template.PickerField)) {
31
52
  constructor(..._args) {
32
53
  super(..._args);
33
- this.helperText = null;
34
- this.placeholder = null;
35
- this.value = "";
36
- this.pattern = "^[0-9#*]*$";
37
- this.disabled = false;
38
- this.pending = false;
39
- this.callActive = false;
40
- this.noCall = false;
41
- this.noInput = false;
42
- this.endCallButtonLabel = null;
43
- this.callButtonLabel = null;
44
- this.deleteAriaLabel = null;
45
- this._longPressTimeoutId = null;
46
- this._suppressNextClick = false;
47
- this._keyboardLongPressCompleted = false;
48
- this._onDial = () => {
49
- if (!this._textFieldEl.checkValidity()) this._announceValidationError(this._textFieldEl.errorValidationMessage ?? "");
50
- else this._clearErrorAnnouncement();
51
- this.callActive ? this.$emit("end-call") : this.$emit("dial");
54
+ this.initialStart = "";
55
+ this.initialEnd = "";
56
+ this.start = "";
57
+ this.end = "";
58
+ this.setFormValue = (value, state) => {
59
+ if (isFormAssociatedTryingToSetFormValue(value)) return;
60
+ super.setFormValue(value, state);
52
61
  };
53
- this.autofocus = false;
54
- this._errorAnnouncement = "";
55
- this._forceAnnouncementToggle = false;
56
- }
57
- valueChanged(_oldValue, newValue) {
58
- if (newValue !== void 0 && newValue !== null && this._textFieldEl && newValue !== this._textFieldEl.value) {
59
- this._textFieldEl.value = newValue;
60
- this._textFieldEl.reportValidity();
62
+ this._numCalendars = 2;
63
+ this._hideDatesOutsideMonth = true;
64
+ this._textFieldSize = "30";
65
+ }
66
+ /**
67
+ * @internal
68
+ */
69
+ initialStartChanged() {
70
+ if (!this.dirtyValue) {
71
+ this.start = this.initialStart;
72
+ this.dirtyValue = false;
61
73
  }
62
74
  }
63
75
  /**
64
76
  * @internal
65
77
  */
66
- _startLongPress(digit, event) {
67
- if (this.disabled || this.callActive || digit !== "0") return;
68
- this._clearLongPressTimer();
69
- const target = event.currentTarget;
70
- this._longPressTimeoutId = window.setTimeout(() => {
71
- this._suppressNextClick = true;
72
- this.value += "+";
73
- this.$emit("keypad-click", target);
74
- this.$emit("input");
75
- this.$emit("change");
76
- }, 600);
78
+ initialEndChanged() {
79
+ if (!this.dirtyValue) {
80
+ this.end = this.initialEnd;
81
+ this.dirtyValue = false;
82
+ }
77
83
  }
84
+ #isInternalValueUpdate = false;
78
85
  /**
79
86
  * @internal
80
87
  */
81
- _startKeyboardLongPress() {
82
- if (this.disabled || this.callActive) return;
83
- if (this._longPressTimeoutId !== null) return;
84
- this._keyboardLongPressCompleted = false;
85
- this._longPressTimeoutId = window.setTimeout(() => {
86
- this._keyboardLongPressCompleted = true;
87
- this.value += "+";
88
- this.$emit("input");
89
- this.$emit("change");
90
- }, 650);
88
+ startChanged() {
89
+ if (this.start && !require_calendar_picker_template.isValidDateStr(this.start)) {
90
+ this.start = "";
91
+ return;
92
+ }
93
+ this.currentStart = this.start;
94
+ this.dirtyValue = true;
95
+ if (!this.#isInternalValueUpdate) this.#handleChangedValues();
91
96
  }
92
97
  /**
93
98
  * @internal
94
99
  */
95
- _endLongPress() {
96
- this._clearLongPressTimer();
97
- window.setTimeout(() => {
98
- if (this._suppressNextClick) this._suppressNextClick = false;
99
- }, 0);
100
+ endChanged() {
101
+ if (this.end && !require_calendar_picker_template.isValidDateStr(this.end)) {
102
+ this.end = "";
103
+ return;
104
+ }
105
+ this.currentEnd = this.end;
106
+ this.dirtyValue = true;
107
+ if (!this.#isInternalValueUpdate) this.#handleChangedValues();
100
108
  }
101
109
  /**
102
110
  * @internal
103
- * @returns true if long press completed (timer fired), false otherwise
104
111
  */
105
- _endKeyboardLongPress() {
106
- const wasLongPress = this._keyboardLongPressCompleted;
107
- this._clearLongPressTimer();
108
- window.setTimeout(() => {
109
- this._keyboardLongPressCompleted = false;
110
- }, 0);
111
- return wasLongPress;
112
+ currentStartChanged() {
113
+ this.start = this.currentStart;
112
114
  }
113
115
  /**
114
116
  * @internal
115
117
  */
116
- _cancelLongPress() {
117
- this._clearLongPressTimer();
118
+ currentEndChanged() {
119
+ this.end = this.currentEnd;
118
120
  }
119
- _clearLongPressTimer() {
120
- if (this._longPressTimeoutId !== null) {
121
- clearTimeout(this._longPressTimeoutId);
122
- this._longPressTimeoutId = null;
121
+ #updateValues(range) {
122
+ this.#isInternalValueUpdate = true;
123
+ if (range.start !== void 0) {
124
+ this.start = range.start;
125
+ this.$emit("input:start");
126
+ }
127
+ if (range.end !== void 0) {
128
+ this.end = range.end;
129
+ this.$emit("input:end");
123
130
  }
131
+ this.#isInternalValueUpdate = false;
132
+ this.$emit("input");
133
+ this.$emit("change");
134
+ this.#handleChangedValues();
135
+ }
136
+ #handleChangedValues() {
137
+ if (this.start && this.end) {
138
+ if (require_calendar_picker_template.compareDateStr(this.start, this.end) > 0) {
139
+ this.#updateValues({
140
+ start: this.end,
141
+ end: this.start
142
+ });
143
+ return;
144
+ }
145
+ this.value = formatRange(this.start, this.end);
146
+ } else this.value = "";
147
+ this._updatePresentationValue();
148
+ const dateToEnsureVisibilityOf = this.start || this.end;
149
+ if (dateToEnsureVisibilityOf) this._adjustSelectedMonthToEnsureVisibilityOf(dateToEnsureVisibilityOf);
150
+ this.#updateFormValue();
124
151
  }
125
152
  /**
126
- * Moves focus into the Dial Pad. If `no-input` attribute is specified, it will be the first digit
127
- * button. Otherwise, the input field will be focused.
128
- *
129
- * @public
153
+ * @internal
130
154
  */
131
- focus() {
132
- const digitBtns = this.shadowRoot?.querySelectorAll(".digits .digit-btn");
133
- (this._textFieldEl || digitBtns?.[0])?.focus();
155
+ _updatePresentationValue() {
156
+ if (this.start && this.end) this._presentationValue = formatPresentationDateRange({
157
+ start: this.start,
158
+ end: this.end
159
+ }, this.locale.calendarPicker);
160
+ else this._presentationValue = "";
134
161
  }
135
162
  /**
136
163
  * @internal
137
164
  */
138
- _announceValidationError(message) {
139
- this._errorAnnouncement = "";
140
- window.queueMicrotask(() => {
141
- if (message) {
142
- this._forceAnnouncementToggle = !this._forceAnnouncementToggle;
143
- this._errorAnnouncement = `${message}${this._forceAnnouncementToggle ? "​" : ""}`;
144
- } else this._clearErrorAnnouncement();
145
- });
165
+ nameChanged(previous, next) {
166
+ super.nameChanged(previous, next);
167
+ this.#updateFormValue();
168
+ }
169
+ #updateFormValue() {
170
+ if (!this.name || !this.start || !this.end) this.setFormValue(null);
171
+ else {
172
+ const formData = new FormData();
173
+ formData.append(this.name, this.start);
174
+ formData.append(this.name, this.end);
175
+ this.setFormValue(formData);
176
+ }
146
177
  }
147
178
  /**
148
179
  * @internal
149
180
  */
150
- _clearErrorAnnouncement() {
151
- this._errorAnnouncement = "";
152
- this._forceAnnouncementToggle = false;
181
+ connectedCallback() {
182
+ super.connectedCallback();
183
+ /* v8 ignore else -- @preserve */
184
+ if (!this.start) this.start = this.initialStart;
185
+ /* v8 ignore else -- @preserve */
186
+ if (!this.end) this.end = this.initialEnd;
153
187
  }
154
- };
155
- require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ attribute: "helper-text" })], DialPad.prototype, "helperText", void 0);
156
- require_decorate.__decorate([_microsoft_fast_element.attr], DialPad.prototype, "placeholder", void 0);
157
- require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ mode: "fromView" })], DialPad.prototype, "value", void 0);
158
- require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ mode: "fromView" })], DialPad.prototype, "pattern", void 0);
159
- require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ mode: "boolean" })], DialPad.prototype, "disabled", void 0);
160
- require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ mode: "boolean" })], DialPad.prototype, "pending", void 0);
161
- require_decorate.__decorate([(0, _microsoft_fast_element.attr)({
162
- attribute: "call-active",
163
- mode: "boolean"
164
- })], DialPad.prototype, "callActive", void 0);
165
- require_decorate.__decorate([(0, _microsoft_fast_element.attr)({
166
- mode: "boolean",
167
- attribute: "no-call"
168
- })], DialPad.prototype, "noCall", void 0);
169
- require_decorate.__decorate([(0, _microsoft_fast_element.attr)({
170
- mode: "boolean",
171
- attribute: "no-input"
172
- })], DialPad.prototype, "noInput", void 0);
173
- require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ attribute: "end-call-button-label" })], DialPad.prototype, "endCallButtonLabel", void 0);
174
- require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ attribute: "call-button-label" })], DialPad.prototype, "callButtonLabel", void 0);
175
- require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ attribute: "delete-aria-label" })], DialPad.prototype, "deleteAriaLabel", void 0);
176
- require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ mode: "boolean" })], DialPad.prototype, "autofocus", void 0);
177
- require_decorate.__decorate([_microsoft_fast_element.observable], DialPad.prototype, "_errorAnnouncement", void 0);
178
- //#endregion
179
- //#region src/lib/dial-pad/dial-pad.template.ts
180
- var DialPadButton = class {
181
- constructor(value, label, ariaLabel, icon, id) {
182
- this.value = value;
183
- this.label = label;
184
- this.ariaLabel = ariaLabel;
185
- this.icon = icon;
186
- this.id = id;
188
+ #getVisibleRange() {
189
+ const candidates = [this.start, this.end].filter(isDefined);
190
+ const isPartialRange = candidates.length === 1;
191
+ if (this._hoverDate && isPartialRange) candidates.push(this._hoverDate);
192
+ const [start, end] = candidates.sort(require_calendar_picker_template.compareDateStr);
193
+ return {
194
+ start,
195
+ end
196
+ };
187
197
  }
188
- };
189
- var DIAL_PAD_BUTTONS = [
190
- new DialPadButton("1", "&nbsp;", "digitOneLabel", "one-solid", "btn1"),
191
- new DialPadButton("2", "ABC", "digitTwoLabel", "two-solid", "btn2"),
192
- new DialPadButton("3", "DEF", "digitThreeLabel", "three-solid", "btn3"),
193
- new DialPadButton("4", "GHI", "digitFourLabel", "four-solid", "btn4"),
194
- new DialPadButton("5", "JKL", "digitFiveLabel", "five-solid", "btn5"),
195
- new DialPadButton("6", "MNO", "digitSixLabel", "six-solid", "btn6"),
196
- new DialPadButton("7", "PQRS", "digitSevenLabel", "seven-solid", "btn7"),
197
- new DialPadButton("8", "TUV", "digitEightLabel", "eight-solid", "btn8"),
198
- new DialPadButton("9", "WXYZ", "digitNineLabel", "nine-solid", "btn9"),
199
- new DialPadButton("*", null, "digitAsteriskLabel", "asterisk-2-solid", "btnAsterisk"),
200
- new DialPadButton("0", "+", "digitZeroLabel", "zero-solid", "btn0"),
201
- new DialPadButton("#", null, "digitHashtagLabel", "hashtag-solid", "btnHashtag")
202
- ];
203
- var getClasses = ({ noInput }) => (0, _microsoft_fast_web_utilities.classNames)("base", ["no-input", Boolean(noInput)]);
204
- function handleKeyDown(x, e) {
205
- if (e.key === _microsoft_fast_web_utilities.keyEnter && !x.pending && !x.disabled && !x.callActive && !x.noCall && x.value.length > 0 && e.target instanceof HTMLInputElement) x._onDial();
206
- else if (e.key === " " || e.key === "Space") {
207
- /* v8 ignore else -- @preserve */
208
- if (e.target instanceof HTMLInputElement) {
209
- e.preventDefault();
210
- /* v8 ignore else -- @preserve */
211
- if (!e.repeat) x._startKeyboardLongPress();
198
+ /**
199
+ * @internal
200
+ */
201
+ _isDateAriaSelected(date) {
202
+ return this._isDateInSelectedRange(date);
203
+ }
204
+ /**
205
+ * @internal
206
+ */
207
+ _isDateInSelectedRange(date) {
208
+ const { start, end } = this.#getVisibleRange();
209
+ if (start && end) return require_calendar_picker_template.compareDateStr(date, start) >= 0 && require_calendar_picker_template.compareDateStr(date, end) <= 0;
210
+ return false;
211
+ }
212
+ /**
213
+ * @internal
214
+ */
215
+ _isDateRangeStart(date) {
216
+ return date === this.#getVisibleRange().start;
217
+ }
218
+ /**
219
+ * @internal
220
+ */
221
+ _isDateRangeEnd(date) {
222
+ return date === this.#getVisibleRange().end;
223
+ }
224
+ /**
225
+ * @internal
226
+ */
227
+ _getSelectedDates() {
228
+ const dates = [];
229
+ if (this.start) dates.push(this.start);
230
+ if (this.end) dates.push(this.end);
231
+ return dates;
232
+ }
233
+ /**
234
+ * @internal
235
+ */
236
+ _onDateClick(date) {
237
+ if (this.start && this.end) this.#updateValues({
238
+ start: date,
239
+ end: ""
240
+ });
241
+ else if (this.start) {
242
+ this.#updateValues({ end: date });
243
+ this._closePopup();
244
+ } else if (this.end) {
245
+ this.#updateValues({ start: date });
246
+ this._closePopup();
247
+ } else this.#updateValues({ start: date });
248
+ }
249
+ /**
250
+ * @internal
251
+ */
252
+ get _textFieldPlaceholder() {
253
+ return formatRange(this.locale.calendarPicker.dateFormatPlaceholder, this.locale.calendarPicker.dateFormatPlaceholder);
254
+ }
255
+ /**
256
+ * @internal
257
+ */
258
+ _onTextFieldChange() {
259
+ if (this._presentationValue === "") {
260
+ this.#updateValues({
261
+ start: "",
262
+ end: ""
263
+ });
264
+ return;
212
265
  }
213
- } else {
214
- const elementIndex = DIAL_PAD_BUTTONS.findIndex((x) => x.value === e.key);
215
- if (elementIndex > -1) {
216
- const digit = x.shadowRoot.querySelector(".digits").children[elementIndex];
217
- /* v8 ignore else -- @preserve */
218
- if (digit) {
219
- digit.active = true;
220
- setTimeout(() => {
221
- digit.active = false;
222
- }, 200);
223
- }
266
+ try {
267
+ const { start, end } = parsePresentationDateRange(this._presentationValue, this.locale.calendarPicker);
268
+ this.#updateValues({
269
+ start,
270
+ end
271
+ });
272
+ } catch (_) {
273
+ const invalidPresentationValue = this._presentationValue;
274
+ this.#updateValues({
275
+ start: "",
276
+ end: ""
277
+ });
278
+ this._presentationValue = invalidPresentationValue;
279
+ return;
224
280
  }
225
281
  }
226
- return true;
227
- }
228
- function handleKeyUp(x, e) {
229
- /* v8 ignore else -- @preserve */
230
- if (e.key === " " || e.key === "Space") {
231
- /* v8 ignore else -- @preserve */
232
- if (e.target instanceof HTMLInputElement) {
233
- e.preventDefault();
234
- if (!x._endKeyboardLongPress() && !x.disabled && !x.callActive) {
235
- x.value += " ";
236
- x.$emit("input");
237
- x.$emit("change");
238
- }
282
+ /**
283
+ * @internal
284
+ */
285
+ _onDateMouseEnter(date) {
286
+ this._hoverDate = date;
287
+ }
288
+ /**
289
+ * @internal
290
+ */
291
+ _onDateMouseLeave() {
292
+ this._hoverDate = void 0;
293
+ }
294
+ /**
295
+ * @internal
296
+ */
297
+ _getCustomValidationError() {
298
+ if (this._isPresentationValueInvalid()) return this.locale.calendarPicker.invalidDateRangeError;
299
+ if (this.min && this.start && require_calendar_picker_template.compareDateStr(this.start, this.min) < 0) return this.locale.calendarPicker.startDateAfterMinDateError(require_calendar_picker_template.formatPresentationDate(this.min, this.locale.calendarPicker));
300
+ if (this.max && this.end && require_calendar_picker_template.compareDateStr(this.end, this.max) > 0) return this.locale.calendarPicker.endDateBeforeMaxDateError(require_calendar_picker_template.formatPresentationDate(this.max, this.locale.calendarPicker));
301
+ return null;
302
+ }
303
+ /**
304
+ * @internal
305
+ */
306
+ _isPresentationValueInvalid() {
307
+ if (this._presentationValue === "") return false;
308
+ try {
309
+ parsePresentationDateRange(this._presentationValue, this.locale.calendarPicker);
310
+ return false;
311
+ } catch (_) {
312
+ return true;
239
313
  }
240
314
  }
241
- return true;
242
- }
243
- function handleButtonKeyDown(digit, { parent: dialPad, event }) {
244
- /* v8 ignore else -- @preserve */
245
- if ((event.key === " " || event.key === "Space") && digit.value === "0") {
246
- event.preventDefault();
247
- /* v8 ignore else -- @preserve */
248
- if (!event.repeat) dialPad._startKeyboardLongPress();
315
+ /**
316
+ * @internal
317
+ */
318
+ _onClearClick() {
319
+ this.#updateValues({
320
+ start: "",
321
+ end: ""
322
+ });
323
+ super._onClearClick();
249
324
  }
250
- return true;
251
- }
252
- function handleButtonKeyUp(digit, { parent: dialPad, event }) {
253
- /* v8 ignore else -- @preserve */
254
- if ((event.key === " " || event.key === "Space") && digit.value === "0") {
255
- event.preventDefault();
256
- /* v8 ignore else -- @preserve */
257
- if (!dialPad._endKeyboardLongPress() && !dialPad.disabled && !dialPad.callActive) onDigitClick(digit, {
258
- parent: dialPad,
259
- event: new MouseEvent("click", { bubbles: true })
325
+ /**
326
+ * @internal
327
+ */
328
+ formResetCallback() {
329
+ this.#updateValues({
330
+ start: this.initialStart,
331
+ end: this.initialEnd
260
332
  });
333
+ super.formResetCallback();
334
+ }
335
+ /**
336
+ * @internal
337
+ */
338
+ get _pickerButtonLabel() {
339
+ if (this.start && this.end) return this.locale.calendarPicker.changeDatesLabel(formatPresentationDateRange({
340
+ start: this.start,
341
+ end: this.end
342
+ }, this.locale.calendarPicker));
343
+ else return this.locale.calendarPicker.chooseDatesLabel;
344
+ }
345
+ /**
346
+ * @internal
347
+ */
348
+ get _dialogLabel() {
349
+ return this.locale.calendarPicker.chooseDatesLabel;
350
+ }
351
+ /**
352
+ * @internal
353
+ */
354
+ _focusableElsWithinDialog() {
355
+ return this._dialogEl.querySelectorAll("button, .vwc-button");
356
+ }
357
+ /**
358
+ * @internal
359
+ */
360
+ get _pickerButtonIcon() {
361
+ return "calendar-line";
261
362
  }
262
- return true;
263
- }
264
- function syncFieldAndPadValues(x) {
265
- x.value = x._textFieldEl.value;
266
- }
267
- function stopPropagation(_, { event: e }) {
268
- e.stopImmediatePropagation();
269
- }
270
- function deleteLastCharacter(dialPad) {
271
- dialPad.value = dialPad.value.slice(0, -1);
272
- dialPad.$emit("input");
273
- dialPad.$emit("change");
274
- if (dialPad.value === "") dialPad._textFieldEl?.focus();
275
- }
276
- function renderTextField(textFieldTag, buttonTag) {
277
- return _microsoft_fast_element.html`<${textFieldTag} ${(0, _microsoft_fast_element.ref)("_textFieldEl")} class="phone-field" internal-part type="tel"
278
- value="${(x) => x.value}" placeholder="${(x) => x.placeholder}"
279
- ?disabled="${(x) => x.disabled}" helper-text="${(x) => x.helperText}" pattern="${(x) => x.pattern}"
280
- aria-label="${(x) => x.locale.dialPad.inputLabel}"
281
- @keydown="${(x, c) => handleKeyDown(x, c.event)}"
282
- @keyup="${(x, c) => handleKeyUp(x, c.event)}"
283
- @input="${syncFieldAndPadValues}"
284
- @change="${syncFieldAndPadValues}"
285
- @focus="${stopPropagation}"
286
- @blur="${stopPropagation}"
287
- ?autofocus="${(x) => x.autofocus}"
288
- >
289
- ${(0, _microsoft_fast_element.when)((x) => x.value && x.value.length && x.value.length > 0, _microsoft_fast_element.html`<${buttonTag}
290
- slot="action-items"
291
- size='super-condensed'
292
- icon="backspace-line"
293
- aria-label="${(x) => x.deleteAriaLabel || x.locale.dialPad.deleteButtonLabel}"
294
- appearance='ghost'
295
- ?disabled="${(x) => x.disabled || x.callActive}"
296
- @click="${(x) => deleteLastCharacter(x)}">
297
- </${buttonTag}>`)}
298
- </${textFieldTag}>`;
299
- }
300
- function onDigitClick(digit, { parent: dialPad, event }) {
301
- if (dialPad._suppressNextClick) {
302
- dialPad._suppressNextClick = false;
303
- return;
304
- }
305
- dialPad.value += digit.value;
306
- dialPad.$emit("keypad-click", event.currentTarget);
307
- dialPad.$emit("input");
308
- dialPad.$emit("change");
309
- }
310
- function renderDigits(buttonTag, iconTag) {
311
- return _microsoft_fast_element.html`
312
- ${(0, _microsoft_fast_element.repeat)((_) => DIAL_PAD_BUTTONS, _microsoft_fast_element.html`
313
- <${buttonTag}
314
- id="${(x) => x.id}"
315
- value="${(x) => x.value}"
316
- stacked
317
- appearance="ghost-light"
318
- shape="pill"
319
- label="${(x) => x.label === "&nbsp;" ? "\xA0" : x.label}"
320
- size='condensed'
321
- class="digit-btn"
322
- ?autofocus="${(_, c) => c.parent.autofocus && c.parent.noInput && c.index === 0}"
323
- aria-label="${(x, c) => c.parent.locale.dialPad[x.ariaLabel]}"
324
- ?disabled="${(_, c) => c.parent.disabled}"
325
- @pointerdown="${(x, c) => c.parent._startLongPress(x.value, c.event)}"
326
- @pointerup="${(_, c) => c.parent._endLongPress()}"
327
- @pointercancel="${(_, c) => c.parent._cancelLongPress()}"
328
- @pointerleave="${(_, c) => c.parent._cancelLongPress()}"
329
- @keydown="${(x, c) => handleButtonKeyDown(x, {
330
- parent: c.parent,
331
- event: c.event
332
- })}"
333
- @keyup="${(x, c) => handleButtonKeyUp(x, {
334
- parent: c.parent,
335
- event: c.event
336
- })}"
337
- @click="${onDigitClick}">
338
- <${iconTag} slot="icon"
339
- name="${(x) => x.icon}"
340
- class="digit-btn-num"></${iconTag}>
341
- </${buttonTag}>
342
- `, { positioning: true })}
343
- `;
344
- }
345
- function renderDialButton(buttonTag) {
346
- return _microsoft_fast_element.html`<${buttonTag} class="call-btn"
347
- size="expanded"
348
- appearance="filled"
349
- icon="${(x) => x.callActive ? "disable-call-line" : "call-line"}"
350
- connotation="${(x) => x.callActive ? "alert" : "cta"}"
351
- ?disabled="${(x) => x.disabled}"
352
- ?pending="${(x) => x.pending}"
353
- @click="${(x) => x._onDial()}"
354
- label="${(x) => x.callActive ? x.endCallButtonLabel || x.locale.dialPad.endCallButtonLabel : x.callButtonLabel || x.locale.dialPad.callButtonLabel}">
355
- </${buttonTag}>`;
356
- }
357
- function renderErrorAnnouncement(visuallyHiddenTag) {
358
- return _microsoft_fast_element.html`<${visuallyHiddenTag} role="alert" aria-atomic="true">
359
- ${(x) => `${x.locale.dialPad.errorLabel} ${x._errorAnnouncement}`}
360
- </${visuallyHiddenTag}>`;
361
- }
362
- var DialPadTemplate = (context) => {
363
- const buttonTag = context.tagFor(require_definition$2.Button);
364
- const iconTag = context.tagFor(require_definition$1.Icon);
365
- const textFieldTag = context.tagFor(require_definition$3.TextField);
366
- const visuallyHiddenTag = context.tagFor(require_definition.VisuallyHidden);
367
- return _microsoft_fast_element.html` <div class="${getClasses}">
368
- ${(0, _microsoft_fast_element.when)((x) => !x.noInput, renderTextField(textFieldTag, buttonTag))}
369
- <div class="digits">${renderDigits(buttonTag, iconTag)}</div>
370
- ${(0, _microsoft_fast_element.when)((x) => !x.noCall, renderDialButton(buttonTag))}
371
- ${renderErrorAnnouncement(visuallyHiddenTag)}
372
- </div>`;
373
363
  };
364
+ require_decorate.__decorate([(0, _microsoft_fast_element.attr)({
365
+ mode: "fromView",
366
+ attribute: "start"
367
+ })], DateRangePicker.prototype, "initialStart", void 0);
368
+ require_decorate.__decorate([(0, _microsoft_fast_element.attr)({
369
+ mode: "fromView",
370
+ attribute: "end"
371
+ })], DateRangePicker.prototype, "initialEnd", void 0);
372
+ require_decorate.__decorate([_microsoft_fast_element.observable], DateRangePicker.prototype, "start", void 0);
373
+ require_decorate.__decorate([_microsoft_fast_element.observable], DateRangePicker.prototype, "end", void 0);
374
+ require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ attribute: "current-start" })], DateRangePicker.prototype, "currentStart", void 0);
375
+ require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ attribute: "current-end" })], DateRangePicker.prototype, "currentEnd", void 0);
376
+ require_decorate.__decorate([_microsoft_fast_element.observable], DateRangePicker.prototype, "_numCalendars", void 0);
377
+ require_decorate.__decorate([_microsoft_fast_element.observable], DateRangePicker.prototype, "_hoverDate", void 0);
378
+ require_decorate.__decorate([_microsoft_fast_element.volatile], DateRangePicker.prototype, "_pickerButtonLabel", null);
374
379
  //#endregion
375
- //#region src/lib/dial-pad/definition.ts
380
+ //#region src/lib/date-range-picker/date-range-picker.template.ts
381
+ var DateRangePickerTemplate = (context) => {
382
+ return require_picker_field_template.PickerFieldTemplate(context, require_calendar_picker_template.CalendarPickerTemplate(context), {
383
+ withSeparator: false,
384
+ padded: true
385
+ });
386
+ };
387
+ //#endregion
388
+ //#region src/lib/date-range-picker/definition.ts
376
389
  /**
377
390
  * @internal
378
391
  */
379
- var dialPadDefinition = require_vivid_element.defineVividComponent("dial-pad", DialPad, DialPadTemplate, [
380
- require_definition$2.buttonDefinition,
392
+ var dateRangePickerDefinition = require_vivid_element.defineVividComponent("date-range-picker", DateRangePicker, DateRangePickerTemplate, [
393
+ require_definition$1.buttonDefinition,
394
+ require_definition$2.popupDefinition,
381
395
  require_definition$3.textFieldDefinition,
382
- require_definition$1.iconDefinition,
396
+ require_definition$4.dividerDefinition,
383
397
  require_definition.visuallyHiddenDefinition
384
- ], { styles: dial_pad_default });
398
+ ], {
399
+ styles: [require_picker_field_template.picker_field_default, require_calendar_picker_template.calendar_picker_default],
400
+ shadowOptions: { delegatesFocus: true }
401
+ });
385
402
  /**
386
- * Registers the dial-pad element with the design system.
403
+ * Registers the date-range-picker element with the design system.
387
404
  *
388
405
  * @param prefix - the prefix to use for the component name
389
406
  */
390
- var registerDialPad = require_vivid_element.createRegisterFunction(dialPadDefinition);
407
+ var registerDateRangePicker = require_vivid_element.createRegisterFunction(dateRangePickerDefinition);
391
408
  //#endregion
392
- Object.defineProperty(exports, "DialPad", {
409
+ Object.defineProperty(exports, "DateRangePicker", {
393
410
  enumerable: true,
394
411
  get: function() {
395
- return DialPad;
412
+ return DateRangePicker;
396
413
  }
397
414
  });
398
- Object.defineProperty(exports, "dialPadDefinition", {
415
+ Object.defineProperty(exports, "dateRangePickerDefinition", {
399
416
  enumerable: true,
400
417
  get: function() {
401
- return dialPadDefinition;
418
+ return dateRangePickerDefinition;
402
419
  }
403
420
  });
404
- Object.defineProperty(exports, "registerDialPad", {
421
+ Object.defineProperty(exports, "registerDateRangePicker", {
405
422
  enumerable: true,
406
423
  get: function() {
407
- return registerDialPad;
424
+ return registerDateRangePicker;
408
425
  }
409
426
  });