@dialpad/dialtone 9.133.0-next.2 → 9.134.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 (1082) hide show
  1. package/dist/css/dialtone-default-theme.css +2980 -2995
  2. package/dist/css/dialtone-default-theme.min.css +1 -1
  3. package/dist/css/dialtone-docs.json +1 -1
  4. package/dist/css/dialtone.css +1964 -2041
  5. package/dist/css/dialtone.min.css +1 -1
  6. package/dist/css/tokens-docs.json +1 -1
  7. package/dist/tokens/doc.json +64053 -64053
  8. package/dist/vue2/common/constants/index.cjs.map +1 -1
  9. package/dist/vue2/common/constants/index.js.map +1 -1
  10. package/dist/vue2/common/dates/index.cjs.map +1 -1
  11. package/dist/vue2/common/dates/index.js +3 -3
  12. package/dist/vue2/common/dates/index.js.map +1 -1
  13. package/dist/vue2/common/emoji/index.cjs +1 -1
  14. package/dist/vue2/common/emoji/index.cjs.map +1 -1
  15. package/dist/vue2/common/emoji/index.js +46 -39
  16. package/dist/vue2/common/emoji/index.js.map +1 -1
  17. package/dist/vue2/common/mixins/dom.cjs.map +1 -1
  18. package/dist/vue2/common/mixins/dom.js.map +1 -1
  19. package/dist/vue2/common/mixins/input-group.cjs.map +1 -1
  20. package/dist/vue2/common/mixins/input-group.js +5 -5
  21. package/dist/vue2/common/mixins/input-group.js.map +1 -1
  22. package/dist/vue2/common/mixins/input.cjs.map +1 -1
  23. package/dist/vue2/common/mixins/input.js.map +1 -1
  24. package/dist/vue2/common/mixins/keyboard-list-navigation.cjs.map +1 -1
  25. package/dist/vue2/common/mixins/keyboard-list-navigation.js.map +1 -1
  26. package/dist/vue2/common/mixins/modal.cjs.map +1 -1
  27. package/dist/vue2/common/mixins/modal.js.map +1 -1
  28. package/dist/vue2/common/mixins/skeleton.cjs.map +1 -1
  29. package/dist/vue2/common/mixins/skeleton.js.map +1 -1
  30. package/dist/vue2/common/utils/index.cjs.map +1 -1
  31. package/dist/vue2/common/utils/index.js.map +1 -1
  32. package/dist/vue2/common/validators/index.cjs.map +1 -1
  33. package/dist/vue2/common/validators/index.js.map +1 -1
  34. package/dist/vue2/dialtone-vue.cjs +1 -1
  35. package/dist/vue2/dialtone-vue.js +360 -359
  36. package/dist/vue2/lib/attachment-carousel/attachment-carousel.cjs +1 -1
  37. package/dist/vue2/lib/attachment-carousel/attachment-carousel.cjs.map +1 -1
  38. package/dist/vue2/lib/attachment-carousel/attachment-carousel.js +4 -4
  39. package/dist/vue2/lib/avatar/avatar-constants.cjs.map +1 -1
  40. package/dist/vue2/lib/avatar/avatar-constants.js.map +1 -1
  41. package/dist/vue2/lib/avatar/avatar.cjs.map +1 -1
  42. package/dist/vue2/lib/avatar/avatar.js +11 -11
  43. package/dist/vue2/lib/avatar/avatar.js.map +1 -1
  44. package/dist/vue2/lib/avatar/utils.cjs.map +1 -1
  45. package/dist/vue2/lib/avatar/utils.js.map +1 -1
  46. package/dist/vue2/lib/badge/badge.cjs.map +1 -1
  47. package/dist/vue2/lib/badge/badge.js +7 -7
  48. package/dist/vue2/lib/badge/badge.js.map +1 -1
  49. package/dist/vue2/lib/banner/banner.cjs +1 -1
  50. package/dist/vue2/lib/banner/banner.cjs.map +1 -1
  51. package/dist/vue2/lib/banner/banner.js +4 -4
  52. package/dist/vue2/lib/breadcrumbs/breadcrumb-item.cjs.map +1 -1
  53. package/dist/vue2/lib/breadcrumbs/breadcrumbs.cjs.map +1 -1
  54. package/dist/vue2/lib/button/button-constants.cjs.map +1 -1
  55. package/dist/vue2/lib/button/button-constants.js.map +1 -1
  56. package/dist/vue2/lib/button/button.cjs.map +1 -1
  57. package/dist/vue2/lib/button/button.js +12 -12
  58. package/dist/vue2/lib/button-group/button-group.cjs.map +1 -1
  59. package/dist/vue2/lib/button-group/buttons-decorator.cjs.map +1 -1
  60. package/dist/vue2/lib/callbar-button/callbar-button-constants.cjs.map +1 -1
  61. package/dist/vue2/lib/callbar-button/callbar-button-constants.js.map +1 -1
  62. package/dist/vue2/lib/callbar-button/callbar-button.cjs +1 -1
  63. package/dist/vue2/lib/callbar-button/callbar-button.cjs.map +1 -1
  64. package/dist/vue2/lib/callbar-button/callbar-button.js +3 -3
  65. package/dist/vue2/lib/callbar-button/callbar-button.js.map +1 -1
  66. package/dist/vue2/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs +1 -1
  67. package/dist/vue2/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs.map +1 -1
  68. package/dist/vue2/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js +6 -6
  69. package/dist/vue2/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js.map +1 -1
  70. package/dist/vue2/lib/callbar-button-with-popover/callbar-button-with-popover.cjs +1 -1
  71. package/dist/vue2/lib/callbar-button-with-popover/callbar-button-with-popover.cjs.map +1 -1
  72. package/dist/vue2/lib/callbar-button-with-popover/callbar-button-with-popover.js +6 -6
  73. package/dist/vue2/lib/callbar-button-with-popover/callbar-button-with-popover.js.map +1 -1
  74. package/dist/vue2/lib/callbox/callbox-constants.cjs.map +1 -1
  75. package/dist/vue2/lib/callbox/callbox-constants.js.map +1 -1
  76. package/dist/vue2/lib/callbox/callbox.cjs.map +1 -1
  77. package/dist/vue2/lib/callbox/callbox.js +5 -5
  78. package/dist/vue2/lib/checkbox/checkbox-constants.cjs.map +1 -1
  79. package/dist/vue2/lib/checkbox/checkbox-constants.js.map +1 -1
  80. package/dist/vue2/lib/checkbox/checkbox.cjs.map +1 -1
  81. package/dist/vue2/lib/checkbox-group/checkbox-group.cjs.map +1 -1
  82. package/dist/vue2/lib/checkbox-group/checkbox-group.js.map +1 -1
  83. package/dist/vue2/lib/checkbox-group/checkboxes-decorator.cjs.map +1 -1
  84. package/dist/vue2/lib/chip/chip-constants.cjs.map +1 -1
  85. package/dist/vue2/lib/chip/chip-constants.js.map +1 -1
  86. package/dist/vue2/lib/chip/chip.cjs.map +1 -1
  87. package/dist/vue2/lib/chip/chip.js +3 -3
  88. package/dist/vue2/lib/collapsible/collapsible.cjs +1 -1
  89. package/dist/vue2/lib/collapsible/collapsible.cjs.map +1 -1
  90. package/dist/vue2/lib/collapsible/collapsible.js +7 -7
  91. package/dist/vue2/lib/combobox/combobox-constants.cjs.map +1 -1
  92. package/dist/vue2/lib/combobox/combobox-constants.js.map +1 -1
  93. package/dist/vue2/lib/combobox/combobox-empty-list.cjs.map +1 -1
  94. package/dist/vue2/lib/combobox/combobox-loading-list.cjs +1 -1
  95. package/dist/vue2/lib/combobox/combobox-loading-list.cjs.map +1 -1
  96. package/dist/vue2/lib/combobox/combobox-loading-list.js +3 -3
  97. package/dist/vue2/lib/combobox/combobox.cjs.map +1 -1
  98. package/dist/vue2/lib/combobox/combobox.js.map +1 -1
  99. package/dist/vue2/lib/combobox-multi-select/combobox-multi-select-constants.cjs.map +1 -1
  100. package/dist/vue2/lib/combobox-multi-select/combobox-multi-select-constants.js.map +1 -1
  101. package/dist/vue2/lib/combobox-multi-select/combobox-multi-select-story-constants.cjs.map +1 -1
  102. package/dist/vue2/lib/combobox-multi-select/combobox-multi-select-story-constants.js.map +1 -1
  103. package/dist/vue2/lib/combobox-multi-select/combobox-multi-select.cjs.map +1 -1
  104. package/dist/vue2/lib/combobox-multi-select/combobox-multi-select.js +3 -3
  105. package/dist/vue2/lib/combobox-multi-select/combobox-multi-select.js.map +1 -1
  106. package/dist/vue2/lib/combobox-with-popover/combobox-with-popover.cjs +1 -1
  107. package/dist/vue2/lib/combobox-with-popover/combobox-with-popover.cjs.map +1 -1
  108. package/dist/vue2/lib/combobox-with-popover/combobox-with-popover.js +9 -9
  109. package/dist/vue2/lib/contact-centers-row/contact-centers-row.cjs +1 -1
  110. package/dist/vue2/lib/contact-centers-row/contact-centers-row.cjs.map +1 -1
  111. package/dist/vue2/lib/contact-centers-row/contact-centers-row.js +7 -7
  112. package/dist/vue2/lib/contact-centers-row/contact-centers-row.js.map +1 -1
  113. package/dist/vue2/lib/contact-info/contact-info.cjs.map +1 -1
  114. package/dist/vue2/lib/contact-row/contact-row.cjs +1 -1
  115. package/dist/vue2/lib/contact-row/contact-row.cjs.map +1 -1
  116. package/dist/vue2/lib/contact-row/contact-row.js +4 -4
  117. package/dist/vue2/lib/datepicker/datepicker.cjs +1 -1
  118. package/dist/vue2/lib/datepicker/datepicker.cjs.map +1 -1
  119. package/dist/vue2/lib/datepicker/datepicker.js +21 -21
  120. package/dist/vue2/lib/datepicker/datepicker.js.map +1 -1
  121. package/dist/vue2/lib/datepicker/formatUtils.cjs.map +1 -1
  122. package/dist/vue2/lib/datepicker/formatUtils.js.map +1 -1
  123. package/dist/vue2/lib/datepicker/utils.cjs.map +1 -1
  124. package/dist/vue2/lib/datepicker/utils.js.map +1 -1
  125. package/dist/vue2/lib/description-list/description-list.cjs.map +1 -1
  126. package/dist/vue2/lib/dropdown/dropdown-constants.cjs.map +1 -1
  127. package/dist/vue2/lib/dropdown/dropdown-constants.js.map +1 -1
  128. package/dist/vue2/lib/dropdown/dropdown-story-constants.cjs.map +1 -1
  129. package/dist/vue2/lib/dropdown/dropdown-story-constants.js.map +1 -1
  130. package/dist/vue2/lib/dropdown/dropdown.cjs +1 -1
  131. package/dist/vue2/lib/dropdown/dropdown.cjs.map +1 -1
  132. package/dist/vue2/lib/dropdown/dropdown.js +1 -1
  133. package/dist/vue2/lib/dropdown/dropdown.js.map +1 -1
  134. package/dist/vue2/lib/editor/editor-constants.cjs.map +1 -1
  135. package/dist/vue2/lib/editor/editor-constants.js.map +1 -1
  136. package/dist/vue2/lib/editor/editor.cjs +1 -1
  137. package/dist/vue2/lib/editor/editor.cjs.map +1 -1
  138. package/dist/vue2/lib/editor/editor.js +44 -44
  139. package/dist/vue2/lib/editor/editor.js.map +1 -1
  140. package/dist/vue2/lib/emoji/emoji.cjs.map +1 -1
  141. package/dist/vue2/lib/emoji/emoji.js +4 -4
  142. package/dist/vue2/lib/emoji-picker/emoji-picker-constants.cjs.map +1 -1
  143. package/dist/vue2/lib/emoji-picker/emoji-picker-constants.js.map +1 -1
  144. package/dist/vue2/lib/emoji-picker/emoji-picker.cjs +1 -1
  145. package/dist/vue2/lib/emoji-picker/emoji-picker.cjs.map +1 -1
  146. package/dist/vue2/lib/emoji-picker/emoji-picker.js +9 -9
  147. package/dist/vue2/lib/emoji-picker/emoji-picker.js.map +1 -1
  148. package/dist/vue2/lib/emoji-row/emoji-row-constants.cjs.map +1 -1
  149. package/dist/vue2/lib/emoji-row/emoji-row-constants.js.map +1 -1
  150. package/dist/vue2/lib/emoji-row/emoji-row.cjs +1 -1
  151. package/dist/vue2/lib/emoji-row/emoji-row.cjs.map +1 -1
  152. package/dist/vue2/lib/emoji-row/emoji-row.js +30 -30
  153. package/dist/vue2/lib/emoji-row/emoji-row.js.map +1 -1
  154. package/dist/vue2/lib/emoji-text-wrapper/emoji-text-wrapper.cjs.map +1 -1
  155. package/dist/vue2/lib/empty-state/empty-state-constants.cjs.map +1 -1
  156. package/dist/vue2/lib/empty-state/empty-state-constants.js.map +1 -1
  157. package/dist/vue2/lib/empty-state/empty-state.cjs.map +1 -1
  158. package/dist/vue2/lib/empty-state/empty-state.js +3 -3
  159. package/dist/vue2/lib/empty-state/empty-state.js.map +1 -1
  160. package/dist/vue2/lib/feed-item-pill/feed-item-pill-constants.cjs.map +1 -1
  161. package/dist/vue2/lib/feed-item-pill/feed-item-pill-constants.js.map +1 -1
  162. package/dist/vue2/lib/feed-item-pill/feed-item-pill.cjs +1 -1
  163. package/dist/vue2/lib/feed-item-pill/feed-item-pill.cjs.map +1 -1
  164. package/dist/vue2/lib/feed-item-pill/feed-item-pill.js +3 -3
  165. package/dist/vue2/lib/feed-item-row/feed-item-row-constants.cjs.map +1 -1
  166. package/dist/vue2/lib/feed-item-row/feed-item-row-constants.js.map +1 -1
  167. package/dist/vue2/lib/feed-item-row/feed-item-row.cjs +1 -1
  168. package/dist/vue2/lib/feed-item-row/feed-item-row.cjs.map +1 -1
  169. package/dist/vue2/lib/feed-item-row/feed-item-row.js +8 -8
  170. package/dist/vue2/lib/general-row/general-row-constants.cjs.map +1 -1
  171. package/dist/vue2/lib/general-row/general-row-constants.js.map +1 -1
  172. package/dist/vue2/lib/general-row/general-row.cjs +1 -1
  173. package/dist/vue2/lib/general-row/general-row.cjs.map +1 -1
  174. package/dist/vue2/lib/general-row/general-row.js +14 -14
  175. package/dist/vue2/lib/general-row/general-row.js.map +1 -1
  176. package/dist/vue2/lib/general-row/leftbar-general-row-icon.cjs.map +1 -1
  177. package/dist/vue2/lib/general-row/leftbar-general-row-icon.js +30 -30
  178. package/dist/vue2/lib/group-row/group-row.cjs.map +1 -1
  179. package/dist/vue2/lib/grouped-chip/grouped-chip.cjs.map +1 -1
  180. package/dist/vue2/lib/hovercard/hovercard.cjs +1 -1
  181. package/dist/vue2/lib/hovercard/hovercard.cjs.map +1 -1
  182. package/dist/vue2/lib/hovercard/hovercard.js +7 -7
  183. package/dist/vue2/lib/hovercard/hovercard.js.map +1 -1
  184. package/dist/vue2/lib/icon/icon-constants.cjs.map +1 -1
  185. package/dist/vue2/lib/icon/icon-constants.js.map +1 -1
  186. package/dist/vue2/lib/icon/icon.js +3 -3
  187. package/dist/vue2/lib/illustration/illustration-constants.cjs.map +1 -1
  188. package/dist/vue2/lib/illustration/illustration-constants.js.map +1 -1
  189. package/dist/vue2/lib/image-viewer/image-viewer.cjs.map +1 -1
  190. package/dist/vue2/lib/image-viewer/image-viewer.js.map +1 -1
  191. package/dist/vue2/lib/input/input-constants.cjs.map +1 -1
  192. package/dist/vue2/lib/input/input-constants.js.map +1 -1
  193. package/dist/vue2/lib/input/input.cjs.map +1 -1
  194. package/dist/vue2/lib/input/input.js +8 -8
  195. package/dist/vue2/lib/input/input.js.map +1 -1
  196. package/dist/vue2/lib/input-group/input-group.cjs.map +1 -1
  197. package/dist/vue2/lib/ivr-node/ivr-node-constants.cjs.map +1 -1
  198. package/dist/vue2/lib/ivr-node/ivr-node-constants.js.map +1 -1
  199. package/dist/vue2/lib/ivr-node/ivr-node.cjs +1 -1
  200. package/dist/vue2/lib/ivr-node/ivr-node.cjs.map +1 -1
  201. package/dist/vue2/lib/ivr-node/ivr-node.js +27 -27
  202. package/dist/vue2/lib/keyboard-shortcut/keyboard-shortcut.cjs.map +1 -1
  203. package/dist/vue2/lib/keyboard-shortcut/keyboard-shortcut.js +13 -13
  204. package/dist/vue2/lib/link/link-constants.cjs.map +1 -1
  205. package/dist/vue2/lib/link/link-constants.js.map +1 -1
  206. package/dist/vue2/lib/link/link.cjs.map +1 -1
  207. package/dist/vue2/lib/link/link.js +3 -3
  208. package/dist/vue2/lib/list-item/list-item-constants.cjs.map +1 -1
  209. package/dist/vue2/lib/list-item/list-item-constants.js.map +1 -1
  210. package/dist/vue2/lib/list-item/list-item.cjs.map +1 -1
  211. package/dist/vue2/lib/list-item/list-item.js +1 -1
  212. package/dist/vue2/lib/list-item/list-item.js.map +1 -1
  213. package/dist/vue2/lib/list-item-group/list-item-group-constants.cjs.map +1 -1
  214. package/dist/vue2/lib/list-item-group/list-item-group-constants.js.map +1 -1
  215. package/dist/vue2/lib/list-item-group/list-item-group.cjs.map +1 -1
  216. package/dist/vue2/lib/loader/loader.cjs.map +1 -1
  217. package/dist/vue2/lib/message-input/last-active-nodes.cjs.map +1 -1
  218. package/dist/vue2/lib/message-input/last-active-nodes.js.map +1 -1
  219. package/dist/vue2/lib/message-input/message-input-button.cjs +1 -1
  220. package/dist/vue2/lib/message-input/message-input-button.cjs.map +1 -1
  221. package/dist/vue2/lib/message-input/message-input-button.js +8 -8
  222. package/dist/vue2/lib/message-input/message-input-constants.cjs.map +1 -1
  223. package/dist/vue2/lib/message-input/message-input-constants.js.map +1 -1
  224. package/dist/vue2/lib/message-input/message-input-link.cjs +1 -1
  225. package/dist/vue2/lib/message-input/message-input-link.cjs.map +1 -1
  226. package/dist/vue2/lib/message-input/message-input-link.js +8 -8
  227. package/dist/vue2/lib/message-input/message-input-topbar.cjs.map +1 -1
  228. package/dist/vue2/lib/message-input/message-input-topbar.js +9 -9
  229. package/dist/vue2/lib/message-input/message-input.cjs +1 -1
  230. package/dist/vue2/lib/message-input/message-input.cjs.map +1 -1
  231. package/dist/vue2/lib/message-input/message-input.js +26 -26
  232. package/dist/vue2/lib/message-input/message-input.js.map +1 -1
  233. package/dist/vue2/lib/modal/modal.cjs +1 -1
  234. package/dist/vue2/lib/modal/modal.cjs.map +1 -1
  235. package/dist/vue2/lib/modal/modal.js +12 -12
  236. package/dist/vue2/lib/modal/modal.js.map +1 -1
  237. package/dist/vue2/lib/notice/notice-action.cjs.map +1 -1
  238. package/dist/vue2/lib/notice/notice-constants.cjs.map +1 -1
  239. package/dist/vue2/lib/notice/notice-constants.js.map +1 -1
  240. package/dist/vue2/lib/notice/notice-icon.cjs.map +1 -1
  241. package/dist/vue2/lib/notice/notice-icon.js +9 -9
  242. package/dist/vue2/lib/notice/notice.cjs.map +1 -1
  243. package/dist/vue2/lib/notice/notice.js +3 -3
  244. package/dist/vue2/lib/pagination/pagination.cjs.map +1 -1
  245. package/dist/vue2/lib/pagination/pagination.js +3 -3
  246. package/dist/vue2/lib/pagination/pagination.js.map +1 -1
  247. package/dist/vue2/lib/popover/popover-constants.cjs.map +1 -1
  248. package/dist/vue2/lib/popover/popover-constants.js.map +1 -1
  249. package/dist/vue2/lib/popover/popover-header-footer.cjs.map +1 -1
  250. package/dist/vue2/lib/popover/popover.cjs.map +1 -1
  251. package/dist/vue2/lib/popover/popover.js +14 -14
  252. package/dist/vue2/lib/popover/popover.js.map +1 -1
  253. package/dist/vue2/lib/popover/tippy-utils.cjs.map +1 -1
  254. package/dist/vue2/lib/popover/tippy-utils.js.map +1 -1
  255. package/dist/vue2/lib/presence/presence.cjs.map +1 -1
  256. package/dist/vue2/lib/radio/radio-constants.cjs.map +1 -1
  257. package/dist/vue2/lib/radio/radio-constants.js.map +1 -1
  258. package/dist/vue2/lib/radio/radio.cjs.map +1 -1
  259. package/dist/vue2/lib/radio-group/radio-group.cjs.map +1 -1
  260. package/dist/vue2/lib/radio-group/radios-decorator.cjs.map +1 -1
  261. package/dist/vue2/lib/recipes/eslint.config.cjs.map +1 -1
  262. package/dist/vue2/lib/recipes/eslint.config.js.map +1 -1
  263. package/dist/vue2/lib/rich-text-editor/channel-suggestion.cjs.map +1 -1
  264. package/dist/vue2/lib/rich-text-editor/channel-suggestion.js.map +1 -1
  265. package/dist/vue2/lib/rich-text-editor/mention-suggestion.cjs.map +1 -1
  266. package/dist/vue2/lib/rich-text-editor/mention-suggestion.js.map +1 -1
  267. package/dist/vue2/lib/rich-text-editor/rich-text-editor-constants.cjs.map +1 -1
  268. package/dist/vue2/lib/rich-text-editor/rich-text-editor-constants.js.map +1 -1
  269. package/dist/vue2/lib/rich-text-editor/rich-text-editor.cjs.map +1 -1
  270. package/dist/vue2/lib/rich-text-editor/rich-text-editor.js +21 -21
  271. package/dist/vue2/lib/rich-text-editor/rich-text-editor.js.map +1 -1
  272. package/dist/vue2/lib/rich-text-editor/slash-command-suggestion.cjs.map +1 -1
  273. package/dist/vue2/lib/rich-text-editor/slash-command-suggestion.js.map +1 -1
  274. package/dist/vue2/lib/root-layout/root-layout-constants.cjs.map +1 -1
  275. package/dist/vue2/lib/root-layout/root-layout-constants.js.map +1 -1
  276. package/dist/vue2/lib/root-layout/root-layout.cjs.map +1 -1
  277. package/dist/vue2/lib/root-layout/root-layout.js +1 -1
  278. package/dist/vue2/lib/scrollbar-directive/scrollbar.cjs.map +1 -1
  279. package/dist/vue2/lib/scrollbar-directive/scrollbar.js.map +1 -1
  280. package/dist/vue2/lib/select-menu/select-menu-constants.cjs.map +1 -1
  281. package/dist/vue2/lib/select-menu/select-menu-constants.js.map +1 -1
  282. package/dist/vue2/lib/select-menu/select-menu.cjs.map +1 -1
  283. package/dist/vue2/lib/select-menu/select-menu.js +7 -7
  284. package/dist/vue2/lib/settings-menu-button/settings-menu-button.cjs.map +1 -1
  285. package/dist/vue2/lib/skeleton/skeleton-constants.cjs.map +1 -1
  286. package/dist/vue2/lib/skeleton/skeleton-constants.js.map +1 -1
  287. package/dist/vue2/lib/skeleton/skeleton-list-item.cjs.map +1 -1
  288. package/dist/vue2/lib/skeleton/skeleton-paragraph.cjs.map +1 -1
  289. package/dist/vue2/lib/skeleton/skeleton-paragraph.js.map +1 -1
  290. package/dist/vue2/lib/skeleton/skeleton-shape.cjs.map +1 -1
  291. package/dist/vue2/lib/skeleton/skeleton-shape.js +1 -1
  292. package/dist/vue2/lib/skeleton/skeleton-text.cjs.map +1 -1
  293. package/dist/vue2/lib/skeleton/skeleton.cjs.map +1 -1
  294. package/dist/vue2/lib/split-button/split-button-alpha.cjs.map +1 -1
  295. package/dist/vue2/lib/split-button/split-button-constants.cjs.map +1 -1
  296. package/dist/vue2/lib/split-button/split-button-constants.js.map +1 -1
  297. package/dist/vue2/lib/split-button/split-button-omega.cjs.map +1 -1
  298. package/dist/vue2/lib/split-button/split-button.cjs.map +1 -1
  299. package/dist/vue2/lib/split-button/split-button.js +5 -5
  300. package/dist/vue2/lib/split-button/split-button.js.map +1 -1
  301. package/dist/vue2/lib/stack/stack-constants.cjs.map +1 -1
  302. package/dist/vue2/lib/stack/stack-constants.js.map +1 -1
  303. package/dist/vue2/lib/stack/stack.cjs.map +1 -1
  304. package/dist/vue2/lib/stack/stack.js +9 -9
  305. package/dist/vue2/lib/stack/utils.cjs.map +1 -1
  306. package/dist/vue2/lib/stack/utils.js.map +1 -1
  307. package/dist/vue2/lib/stack/validators.cjs.map +1 -1
  308. package/dist/vue2/lib/stack/validators.js.map +1 -1
  309. package/dist/vue2/lib/tab/tab-group.cjs.map +1 -1
  310. package/dist/vue2/lib/tab/tab-group.js +5 -5
  311. package/dist/vue2/lib/tab/tab-group.js.map +1 -1
  312. package/dist/vue2/lib/tab/tab.cjs.map +1 -1
  313. package/dist/vue2/lib/toast/toast-constants.cjs.map +1 -1
  314. package/dist/vue2/lib/toast/toast-constants.js.map +1 -1
  315. package/dist/vue2/lib/toast/toast.cjs +1 -1
  316. package/dist/vue2/lib/toast/toast.cjs.map +1 -1
  317. package/dist/vue2/lib/toast/toast.js +11 -11
  318. package/dist/vue2/lib/toggle/toggle-constants.cjs.map +1 -1
  319. package/dist/vue2/lib/toggle/toggle-constants.js.map +1 -1
  320. package/dist/vue2/lib/toggle/toggle.cjs.map +1 -1
  321. package/dist/vue2/lib/tooltip/tooltip-constants.cjs.map +1 -1
  322. package/dist/vue2/lib/tooltip/tooltip-constants.js.map +1 -1
  323. package/dist/vue2/lib/tooltip/tooltip.cjs +1 -1
  324. package/dist/vue2/lib/tooltip/tooltip.cjs.map +1 -1
  325. package/dist/vue2/lib/tooltip/tooltip.js +62 -63
  326. package/dist/vue2/lib/tooltip/tooltip.js.map +1 -1
  327. package/dist/vue2/lib/tooltip-directive/tooltip.cjs.map +1 -1
  328. package/dist/vue2/lib/tooltip-directive/tooltip.js.map +1 -1
  329. package/dist/vue2/lib/top-banner-info/top-banner-info-constants.cjs.map +1 -1
  330. package/dist/vue2/lib/top-banner-info/top-banner-info-constants.js.map +1 -1
  331. package/dist/vue2/lib/top-banner-info/top-banner-info.cjs.map +1 -1
  332. package/dist/vue2/lib/unread-pill/unread-pill-constants.cjs.map +1 -1
  333. package/dist/vue2/lib/unread-pill/unread-pill-constants.js.map +1 -1
  334. package/dist/vue2/lib/unread-pill/unread-pill.cjs.map +1 -1
  335. package/dist/vue2/lib/unread-pill/unread-pill.js +6 -6
  336. package/dist/vue2/lib/validation-messages/validation-messages.cjs.map +1 -1
  337. package/dist/vue2/lib/validation-messages/validation-messages.js +3 -3
  338. package/dist/vue2/localization/de-DE.cjs.map +1 -1
  339. package/dist/vue2/localization/de-DE.js.map +1 -1
  340. package/dist/vue2/localization/en-US.cjs +1 -1
  341. package/dist/vue2/localization/en-US.cjs.map +1 -1
  342. package/dist/vue2/localization/en-US.js +1 -1
  343. package/dist/vue2/localization/en-US.js.map +1 -1
  344. package/dist/vue2/localization/es-LA.cjs.map +1 -1
  345. package/dist/vue2/localization/es-LA.js.map +1 -1
  346. package/dist/vue2/localization/fr-FR.cjs.map +1 -1
  347. package/dist/vue2/localization/fr-FR.js.map +1 -1
  348. package/dist/vue2/localization/index.cjs.map +1 -1
  349. package/dist/vue2/localization/index.js.map +1 -1
  350. package/dist/vue2/localization/it-IT.cjs.map +1 -1
  351. package/dist/vue2/localization/it-IT.js.map +1 -1
  352. package/dist/vue2/localization/ja-JP.cjs.map +1 -1
  353. package/dist/vue2/localization/ja-JP.js.map +1 -1
  354. package/dist/vue2/localization/nl-NL.cjs.map +1 -1
  355. package/dist/vue2/localization/nl-NL.js.map +1 -1
  356. package/dist/vue2/localization/pt-BR.cjs.map +1 -1
  357. package/dist/vue2/localization/pt-BR.js.map +1 -1
  358. package/dist/vue2/localization/ru-RU.cjs.map +1 -1
  359. package/dist/vue2/localization/ru-RU.js.map +1 -1
  360. package/dist/vue2/localization/zh-CN.cjs.map +1 -1
  361. package/dist/vue2/localization/zh-CN.js.map +1 -1
  362. package/dist/vue2/node_modules/@linusborg/vue-simple-portal.cjs.map +1 -1
  363. package/dist/vue2/node_modules/@linusborg/vue-simple-portal.js.map +1 -1
  364. package/dist/vue2/node_modules/@tiptap/vue-2.cjs.map +1 -1
  365. package/dist/vue2/node_modules/@tiptap/vue-2.js.map +1 -1
  366. package/dist/vue2/shared/sr_only_close_button.cjs.map +1 -1
  367. package/dist/vue2/types/common/constants/index.d.ts.map +1 -1
  368. package/dist/vue2/types/common/dates/index.d.ts.map +1 -1
  369. package/dist/vue2/types/common/emoji/index.d.ts +1 -0
  370. package/dist/vue2/types/common/emoji/index.d.ts.map +1 -1
  371. package/dist/vue2/types/common/mixins/dom.d.ts.map +1 -1
  372. package/dist/vue2/types/common/mixins/input.d.ts +7 -7
  373. package/dist/vue2/types/common/mixins/input.d.ts.map +1 -1
  374. package/dist/vue2/types/common/mixins/input_group.d.ts +3 -3
  375. package/dist/vue2/types/common/mixins/modal.d.ts.map +1 -1
  376. package/dist/vue2/types/common/utils/index.d.ts.map +1 -1
  377. package/dist/vue2/types/components/avatar/avatar.vue.d.ts +8 -8
  378. package/dist/vue2/types/components/badge/badge.vue.d.ts +3 -3
  379. package/dist/vue2/types/components/banner/banner.vue.d.ts +2 -2
  380. package/dist/vue2/types/components/banner/banner.vue.d.ts.map +1 -1
  381. package/dist/vue2/types/components/breadcrumbs/breadcrumbs.vue.d.ts +1 -1
  382. package/dist/vue2/types/components/breadcrumbs/breadcrumbs_constants.d.ts.map +1 -1
  383. package/dist/vue2/types/components/button/button.vue.d.ts +2 -2
  384. package/dist/vue2/types/components/button/button_constants.d.ts.map +1 -1
  385. package/dist/vue2/types/components/card/card.vue.d.ts +8 -8
  386. package/dist/vue2/types/components/checkbox/checkbox.vue.d.ts +7 -7
  387. package/dist/vue2/types/components/checkbox_group/checkbox_group.vue.d.ts +3 -3
  388. package/dist/vue2/types/components/chip/chip.vue.d.ts +6 -6
  389. package/dist/vue2/types/components/collapsible/collapsible.vue.d.ts +4 -4
  390. package/dist/vue2/types/components/combobox/combobox.vue.d.ts +3 -3
  391. package/dist/vue2/types/components/combobox/combobox_empty-list.vue.d.ts +2 -2
  392. package/dist/vue2/types/components/datepicker/datepicker_constants.d.ts.map +1 -1
  393. package/dist/vue2/types/components/datepicker/formatUtils.d.ts +5 -5
  394. package/dist/vue2/types/components/datepicker/formatUtils.d.ts.map +1 -1
  395. package/dist/vue2/types/components/description_list/description_list.vue.d.ts +4 -4
  396. package/dist/vue2/types/components/dropdown/dropdown.vue.d.ts +8 -8
  397. package/dist/vue2/types/components/emoji/emoji.vue.d.ts +2 -2
  398. package/dist/vue2/types/components/emoji_picker/emoji_picker_constants.d.ts.map +1 -1
  399. package/dist/vue2/types/components/emoji_text_wrapper/emoji_text_wrapper.vue.d.ts.map +1 -1
  400. package/dist/vue2/types/components/image_viewer/image_viewer.vue.d.ts.map +1 -1
  401. package/dist/vue2/types/components/input/input.vue.d.ts +7 -7
  402. package/dist/vue2/types/components/input_group/input_group.vue.d.ts +3 -3
  403. package/dist/vue2/types/components/item_layout/item_layout.vue.d.ts +1 -1
  404. package/dist/vue2/types/components/link/link_constants.d.ts.map +1 -1
  405. package/dist/vue2/types/components/list_item/list_item.vue.d.ts +2 -2
  406. package/dist/vue2/types/components/list_item_group/list_item_group.vue.d.ts +4 -4
  407. package/dist/vue2/types/components/modal/modal.vue.d.ts +13 -13
  408. package/dist/vue2/types/components/modal/modal.vue.d.ts.map +1 -1
  409. package/dist/vue2/types/components/notice/notice.vue.d.ts +2 -2
  410. package/dist/vue2/types/components/popover/popover.vue.d.ts +20 -20
  411. package/dist/vue2/types/components/popover/popover.vue.d.ts.map +1 -1
  412. package/dist/vue2/types/components/popover/popover_header_footer.vue.d.ts +2 -2
  413. package/dist/vue2/types/components/popover/tippy_utils.d.ts +1 -1
  414. package/dist/vue2/types/components/radio/radio.vue.d.ts +7 -7
  415. package/dist/vue2/types/components/radio_group/radio_group.vue.d.ts +3 -3
  416. package/dist/vue2/types/components/rich_text_editor/extensions/slash_command/slash_command.d.ts +1 -1
  417. package/dist/vue2/types/components/rich_text_editor/extensions/slash_command/slash_command.d.ts.map +1 -1
  418. package/dist/vue2/types/components/rich_text_editor/rich_text_editor.vue.d.ts +11 -11
  419. package/dist/vue2/types/components/root_layout/root_layout.vue.d.ts +8 -8
  420. package/dist/vue2/types/components/select_menu/select_menu.vue.d.ts +10 -10
  421. package/dist/vue2/types/components/skeleton/skeleton-list-item.vue.d.ts +1 -1
  422. package/dist/vue2/types/components/skeleton/skeleton-paragraph.vue.d.ts +1 -1
  423. package/dist/vue2/types/components/skeleton/skeleton-shape.vue.d.ts +3 -3
  424. package/dist/vue2/types/components/skeleton/skeleton-text.vue.d.ts +1 -1
  425. package/dist/vue2/types/components/skeleton/skeleton.vue.d.ts +7 -7
  426. package/dist/vue2/types/components/skeleton/skeleton_constants.d.ts.map +1 -1
  427. package/dist/vue2/types/components/split_button/split_button-alpha.vue.d.ts +3 -3
  428. package/dist/vue2/types/components/split_button/split_button-omega.vue.d.ts +1 -1
  429. package/dist/vue2/types/components/split_button/split_button.vue.d.ts +2 -2
  430. package/dist/vue2/types/components/tab/tab.vue.d.ts +2 -2
  431. package/dist/vue2/types/components/tab/tab_group.vue.d.ts +2 -2
  432. package/dist/vue2/types/components/tab/tab_panel.vue.d.ts +2 -2
  433. package/dist/vue2/types/components/tab/tab_panel.vue.d.ts.map +1 -1
  434. package/dist/vue2/types/components/toast/layouts/toast_layout_alternate.vue.d.ts +2 -2
  435. package/dist/vue2/types/components/toast/layouts/toast_layout_default.vue.d.ts +2 -2
  436. package/dist/vue2/types/components/toast/toast.vue.d.ts +7 -7
  437. package/dist/vue2/types/components/toast/toast_constants.d.ts.map +1 -1
  438. package/dist/vue2/types/components/toggle/toggle.vue.d.ts +4 -4
  439. package/dist/vue2/types/components/tooltip/tooltip.vue.d.ts +8 -8
  440. package/dist/vue2/types/components/tooltip/tooltip_constants.d.ts.map +1 -1
  441. package/dist/vue2/types/components/validation_messages/validation_messages.vue.d.ts +0 -1
  442. package/dist/vue2/types/components/validation_messages/validation_messages.vue.d.ts.map +1 -1
  443. package/dist/vue2/types/recipes/buttons/callbar_button/callbar_button.vue.d.ts +6 -6
  444. package/dist/vue2/types/recipes/buttons/callbar_button_with_dropdown/callbar_button_with_dropdown.vue.d.ts +5 -5
  445. package/dist/vue2/types/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts +6 -6
  446. package/dist/vue2/types/recipes/cards/ivr_node/ivr_node_constants.d.ts.map +1 -1
  447. package/dist/vue2/types/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.d.ts +1 -1
  448. package/dist/vue2/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts +7 -7
  449. package/dist/vue2/types/recipes/conversation_view/editor/editor.vue.d.ts +3 -3
  450. package/dist/vue2/types/recipes/conversation_view/editor/editor_constants.d.ts.map +1 -1
  451. package/dist/vue2/types/recipes/conversation_view/emoji_row/emoji_row.vue.d.ts.map +1 -1
  452. package/dist/vue2/types/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts +4 -4
  453. package/dist/vue2/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +1 -1
  454. package/dist/vue2/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts.map +1 -1
  455. package/dist/vue2/types/recipes/conversation_view/feed_item_row/feed_item_row_constants.d.ts.map +1 -1
  456. package/dist/vue2/types/recipes/conversation_view/message_input/last_active_nodes.d.ts.map +1 -1
  457. package/dist/vue2/types/recipes/conversation_view/message_input/message_input.vue.d.ts +15 -15
  458. package/dist/vue2/types/recipes/item_layout/contact_info/contact_info.vue.d.ts +1 -1
  459. package/dist/vue2/types/recipes/leftbar/callbox/callbox.vue.d.ts +1 -1
  460. package/dist/vue2/types/recipes/leftbar/contact_centers_row/contact_centers_row.vue.d.ts +1 -1
  461. package/dist/vue2/types/recipes/leftbar/general_row/general_row.vue.d.ts +1 -1
  462. package/dist/vue3/common/constants/index.cjs.map +1 -1
  463. package/dist/vue3/common/constants/index.js.map +1 -1
  464. package/dist/vue3/common/dates/index.cjs.map +1 -1
  465. package/dist/vue3/common/dates/index.js +3 -3
  466. package/dist/vue3/common/dates/index.js.map +1 -1
  467. package/dist/vue3/common/emoji/index.cjs +1 -1
  468. package/dist/vue3/common/emoji/index.cjs.map +1 -1
  469. package/dist/vue3/common/emoji/index.js +46 -39
  470. package/dist/vue3/common/emoji/index.js.map +1 -1
  471. package/dist/vue3/common/mixins/dom.cjs.map +1 -1
  472. package/dist/vue3/common/mixins/dom.js.map +1 -1
  473. package/dist/vue3/common/mixins/input-group.cjs.map +1 -1
  474. package/dist/vue3/common/mixins/input-group.js +5 -5
  475. package/dist/vue3/common/mixins/input-group.js.map +1 -1
  476. package/dist/vue3/common/mixins/input.cjs.map +1 -1
  477. package/dist/vue3/common/mixins/input.js.map +1 -1
  478. package/dist/vue3/common/mixins/keyboard-list-navigation.cjs.map +1 -1
  479. package/dist/vue3/common/mixins/keyboard-list-navigation.js.map +1 -1
  480. package/dist/vue3/common/mixins/modal.cjs.map +1 -1
  481. package/dist/vue3/common/mixins/modal.js.map +1 -1
  482. package/dist/vue3/common/mixins/skeleton.cjs.map +1 -1
  483. package/dist/vue3/common/mixins/skeleton.js.map +1 -1
  484. package/dist/vue3/common/utils/index.cjs.map +1 -1
  485. package/dist/vue3/common/utils/index.js +3 -3
  486. package/dist/vue3/common/utils/index.js.map +1 -1
  487. package/dist/vue3/common/validators/index.cjs.map +1 -1
  488. package/dist/vue3/common/validators/index.js.map +1 -1
  489. package/dist/vue3/dialtone-vue.cjs +1 -1
  490. package/dist/vue3/dialtone-vue.js +363 -362
  491. package/dist/vue3/lib/attachment-carousel/attachment-carousel.cjs +1 -1
  492. package/dist/vue3/lib/attachment-carousel/attachment-carousel.cjs.map +1 -1
  493. package/dist/vue3/lib/attachment-carousel/attachment-carousel.js +5 -5
  494. package/dist/vue3/lib/attachment-carousel/attachment-carousel.js.map +1 -1
  495. package/dist/vue3/lib/avatar/avatar-constants.cjs.map +1 -1
  496. package/dist/vue3/lib/avatar/avatar-constants.js.map +1 -1
  497. package/dist/vue3/lib/avatar/avatar.cjs.map +1 -1
  498. package/dist/vue3/lib/avatar/avatar.js +11 -11
  499. package/dist/vue3/lib/avatar/avatar.js.map +1 -1
  500. package/dist/vue3/lib/avatar/utils.cjs.map +1 -1
  501. package/dist/vue3/lib/avatar/utils.js.map +1 -1
  502. package/dist/vue3/lib/badge/badge.cjs.map +1 -1
  503. package/dist/vue3/lib/badge/badge.js +12 -12
  504. package/dist/vue3/lib/badge/badge.js.map +1 -1
  505. package/dist/vue3/lib/banner/banner.cjs +1 -1
  506. package/dist/vue3/lib/banner/banner.cjs.map +1 -1
  507. package/dist/vue3/lib/banner/banner.js +7 -7
  508. package/dist/vue3/lib/banner/banner.js.map +1 -1
  509. package/dist/vue3/lib/breadcrumbs/breadcrumb-item.cjs.map +1 -1
  510. package/dist/vue3/lib/breadcrumbs/breadcrumb-item.js +5 -5
  511. package/dist/vue3/lib/breadcrumbs/breadcrumb-item.js.map +1 -1
  512. package/dist/vue3/lib/breadcrumbs/breadcrumbs.cjs.map +1 -1
  513. package/dist/vue3/lib/breadcrumbs/breadcrumbs.js +1 -1
  514. package/dist/vue3/lib/breadcrumbs/breadcrumbs.js.map +1 -1
  515. package/dist/vue3/lib/button/button-constants.cjs.map +1 -1
  516. package/dist/vue3/lib/button/button-constants.js.map +1 -1
  517. package/dist/vue3/lib/button/button.cjs.map +1 -1
  518. package/dist/vue3/lib/button/button.js +22 -22
  519. package/dist/vue3/lib/button/button.js.map +1 -1
  520. package/dist/vue3/lib/button-group/button-group.cjs.map +1 -1
  521. package/dist/vue3/lib/button-group/button-group.js +2 -2
  522. package/dist/vue3/lib/button-group/button-group.js.map +1 -1
  523. package/dist/vue3/lib/button-group/buttons-decorator.cjs.map +1 -1
  524. package/dist/vue3/lib/button-group/buttons-decorator.js +2 -2
  525. package/dist/vue3/lib/button-group/buttons-decorator.js.map +1 -1
  526. package/dist/vue3/lib/callbar-button/callbar-button-constants.cjs.map +1 -1
  527. package/dist/vue3/lib/callbar-button/callbar-button-constants.js.map +1 -1
  528. package/dist/vue3/lib/callbar-button/callbar-button.cjs +1 -1
  529. package/dist/vue3/lib/callbar-button/callbar-button.cjs.map +1 -1
  530. package/dist/vue3/lib/callbar-button/callbar-button.js +13 -13
  531. package/dist/vue3/lib/callbar-button/callbar-button.js.map +1 -1
  532. package/dist/vue3/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs +1 -1
  533. package/dist/vue3/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs.map +1 -1
  534. package/dist/vue3/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js +13 -13
  535. package/dist/vue3/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js.map +1 -1
  536. package/dist/vue3/lib/callbar-button-with-popover/callbar-button-with-popover.cjs +1 -1
  537. package/dist/vue3/lib/callbar-button-with-popover/callbar-button-with-popover.cjs.map +1 -1
  538. package/dist/vue3/lib/callbar-button-with-popover/callbar-button-with-popover.js +13 -13
  539. package/dist/vue3/lib/callbar-button-with-popover/callbar-button-with-popover.js.map +1 -1
  540. package/dist/vue3/lib/callbox/callbox-constants.cjs.map +1 -1
  541. package/dist/vue3/lib/callbox/callbox-constants.js.map +1 -1
  542. package/dist/vue3/lib/callbox/callbox.cjs.map +1 -1
  543. package/dist/vue3/lib/callbox/callbox.js +6 -6
  544. package/dist/vue3/lib/callbox/callbox.js.map +1 -1
  545. package/dist/vue3/lib/card/card.cjs.map +1 -1
  546. package/dist/vue3/lib/card/card.js +4 -4
  547. package/dist/vue3/lib/card/card.js.map +1 -1
  548. package/dist/vue3/lib/checkbox/checkbox-constants.cjs.map +1 -1
  549. package/dist/vue3/lib/checkbox/checkbox-constants.js.map +1 -1
  550. package/dist/vue3/lib/checkbox/checkbox.cjs.map +1 -1
  551. package/dist/vue3/lib/checkbox/checkbox.js +8 -8
  552. package/dist/vue3/lib/checkbox/checkbox.js.map +1 -1
  553. package/dist/vue3/lib/checkbox-group/checkbox-group.cjs.map +1 -1
  554. package/dist/vue3/lib/checkbox-group/checkbox-group.js.map +1 -1
  555. package/dist/vue3/lib/checkbox-group/checkboxes-decorator.cjs.map +1 -1
  556. package/dist/vue3/lib/checkbox-group/checkboxes-decorator.js +1 -1
  557. package/dist/vue3/lib/checkbox-group/checkboxes-decorator.js.map +1 -1
  558. package/dist/vue3/lib/chip/chip-constants.cjs.map +1 -1
  559. package/dist/vue3/lib/chip/chip-constants.js.map +1 -1
  560. package/dist/vue3/lib/chip/chip.cjs.map +1 -1
  561. package/dist/vue3/lib/chip/chip.js +13 -13
  562. package/dist/vue3/lib/chip/chip.js.map +1 -1
  563. package/dist/vue3/lib/codeblock/codeblock.cjs.map +1 -1
  564. package/dist/vue3/lib/codeblock/codeblock.js +2 -2
  565. package/dist/vue3/lib/codeblock/codeblock.js.map +1 -1
  566. package/dist/vue3/lib/collapsible/collapsible-lazy-show.cjs.map +1 -1
  567. package/dist/vue3/lib/collapsible/collapsible-lazy-show.js +3 -3
  568. package/dist/vue3/lib/collapsible/collapsible-lazy-show.js.map +1 -1
  569. package/dist/vue3/lib/collapsible/collapsible.cjs +1 -1
  570. package/dist/vue3/lib/collapsible/collapsible.cjs.map +1 -1
  571. package/dist/vue3/lib/collapsible/collapsible.js +18 -18
  572. package/dist/vue3/lib/collapsible/collapsible.js.map +1 -1
  573. package/dist/vue3/lib/combobox/combobox-constants.cjs.map +1 -1
  574. package/dist/vue3/lib/combobox/combobox-constants.js.map +1 -1
  575. package/dist/vue3/lib/combobox/combobox-empty-list.cjs.map +1 -1
  576. package/dist/vue3/lib/combobox/combobox-empty-list.js +2 -2
  577. package/dist/vue3/lib/combobox/combobox-empty-list.js.map +1 -1
  578. package/dist/vue3/lib/combobox/combobox-loading-list.cjs +1 -1
  579. package/dist/vue3/lib/combobox/combobox-loading-list.cjs.map +1 -1
  580. package/dist/vue3/lib/combobox/combobox-loading-list.js +6 -6
  581. package/dist/vue3/lib/combobox/combobox-loading-list.js.map +1 -1
  582. package/dist/vue3/lib/combobox/combobox.cjs.map +1 -1
  583. package/dist/vue3/lib/combobox/combobox.js +7 -7
  584. package/dist/vue3/lib/combobox/combobox.js.map +1 -1
  585. package/dist/vue3/lib/combobox-multi-select/combobox-multi-select-constants.cjs.map +1 -1
  586. package/dist/vue3/lib/combobox-multi-select/combobox-multi-select-constants.js.map +1 -1
  587. package/dist/vue3/lib/combobox-multi-select/combobox-multi-select-story-constants.cjs.map +1 -1
  588. package/dist/vue3/lib/combobox-multi-select/combobox-multi-select-story-constants.js.map +1 -1
  589. package/dist/vue3/lib/combobox-multi-select/combobox-multi-select.cjs.map +1 -1
  590. package/dist/vue3/lib/combobox-multi-select/combobox-multi-select.js +15 -15
  591. package/dist/vue3/lib/combobox-multi-select/combobox-multi-select.js.map +1 -1
  592. package/dist/vue3/lib/combobox-with-popover/combobox-with-popover.cjs +1 -1
  593. package/dist/vue3/lib/combobox-with-popover/combobox-with-popover.cjs.map +1 -1
  594. package/dist/vue3/lib/combobox-with-popover/combobox-with-popover.js +13 -13
  595. package/dist/vue3/lib/combobox-with-popover/combobox-with-popover.js.map +1 -1
  596. package/dist/vue3/lib/contact-centers-row/contact-centers-row.cjs +1 -1
  597. package/dist/vue3/lib/contact-centers-row/contact-centers-row.cjs.map +1 -1
  598. package/dist/vue3/lib/contact-centers-row/contact-centers-row.js +19 -19
  599. package/dist/vue3/lib/contact-centers-row/contact-centers-row.js.map +1 -1
  600. package/dist/vue3/lib/contact-info/contact-info.cjs.map +1 -1
  601. package/dist/vue3/lib/contact-info/contact-info.js +1 -1
  602. package/dist/vue3/lib/contact-info/contact-info.js.map +1 -1
  603. package/dist/vue3/lib/contact-row/contact-row.cjs +1 -1
  604. package/dist/vue3/lib/contact-row/contact-row.cjs.map +1 -1
  605. package/dist/vue3/lib/contact-row/contact-row.js +12 -12
  606. package/dist/vue3/lib/contact-row/contact-row.js.map +1 -1
  607. package/dist/vue3/lib/datepicker/datepicker.cjs.map +1 -1
  608. package/dist/vue3/lib/datepicker/datepicker.js +5 -5
  609. package/dist/vue3/lib/datepicker/datepicker.js.map +1 -1
  610. package/dist/vue3/lib/datepicker/formatUtils.cjs.map +1 -1
  611. package/dist/vue3/lib/datepicker/formatUtils.js.map +1 -1
  612. package/dist/vue3/lib/datepicker/utils.cjs.map +1 -1
  613. package/dist/vue3/lib/datepicker/utils.js.map +1 -1
  614. package/dist/vue3/lib/description-list/description-list.cjs.map +1 -1
  615. package/dist/vue3/lib/description-list/description-list.js +3 -3
  616. package/dist/vue3/lib/description-list/description-list.js.map +1 -1
  617. package/dist/vue3/lib/dropdown/dropdown-constants.cjs.map +1 -1
  618. package/dist/vue3/lib/dropdown/dropdown-constants.js.map +1 -1
  619. package/dist/vue3/lib/dropdown/dropdown-list.cjs.map +1 -1
  620. package/dist/vue3/lib/dropdown/dropdown-list.js +5 -5
  621. package/dist/vue3/lib/dropdown/dropdown-list.js.map +1 -1
  622. package/dist/vue3/lib/dropdown/dropdown-separator.cjs.map +1 -1
  623. package/dist/vue3/lib/dropdown/dropdown-separator.js +2 -2
  624. package/dist/vue3/lib/dropdown/dropdown-separator.js.map +1 -1
  625. package/dist/vue3/lib/dropdown/dropdown-story-constants.cjs.map +1 -1
  626. package/dist/vue3/lib/dropdown/dropdown-story-constants.js.map +1 -1
  627. package/dist/vue3/lib/dropdown/dropdown.cjs +1 -1
  628. package/dist/vue3/lib/dropdown/dropdown.cjs.map +1 -1
  629. package/dist/vue3/lib/dropdown/dropdown.js +3 -3
  630. package/dist/vue3/lib/dropdown/dropdown.js.map +1 -1
  631. package/dist/vue3/lib/editor/editor-constants.cjs.map +1 -1
  632. package/dist/vue3/lib/editor/editor-constants.js.map +1 -1
  633. package/dist/vue3/lib/editor/editor.cjs +1 -1
  634. package/dist/vue3/lib/editor/editor.cjs.map +1 -1
  635. package/dist/vue3/lib/editor/editor.js +48 -48
  636. package/dist/vue3/lib/editor/editor.js.map +1 -1
  637. package/dist/vue3/lib/emoji/emoji.cjs.map +1 -1
  638. package/dist/vue3/lib/emoji/emoji.js +6 -6
  639. package/dist/vue3/lib/emoji/emoji.js.map +1 -1
  640. package/dist/vue3/lib/emoji-picker/emoji-picker-constants.cjs.map +1 -1
  641. package/dist/vue3/lib/emoji-picker/emoji-picker-constants.js.map +1 -1
  642. package/dist/vue3/lib/emoji-picker/emoji-picker.cjs.map +1 -1
  643. package/dist/vue3/lib/emoji-picker/emoji-picker.js +2 -2
  644. package/dist/vue3/lib/emoji-picker/emoji-picker.js.map +1 -1
  645. package/dist/vue3/lib/emoji-row/emoji-row-constants.cjs.map +1 -1
  646. package/dist/vue3/lib/emoji-row/emoji-row-constants.js.map +1 -1
  647. package/dist/vue3/lib/emoji-row/emoji-row.cjs +1 -1
  648. package/dist/vue3/lib/emoji-row/emoji-row.cjs.map +1 -1
  649. package/dist/vue3/lib/emoji-row/emoji-row.js +59 -50
  650. package/dist/vue3/lib/emoji-row/emoji-row.js.map +1 -1
  651. package/dist/vue3/lib/emoji-text-wrapper/emoji-text-wrapper.cjs +1 -1
  652. package/dist/vue3/lib/emoji-text-wrapper/emoji-text-wrapper.cjs.map +1 -1
  653. package/dist/vue3/lib/emoji-text-wrapper/emoji-text-wrapper.js +1 -0
  654. package/dist/vue3/lib/emoji-text-wrapper/emoji-text-wrapper.js.map +1 -1
  655. package/dist/vue3/lib/empty-state/empty-state-constants.cjs.map +1 -1
  656. package/dist/vue3/lib/empty-state/empty-state-constants.js.map +1 -1
  657. package/dist/vue3/lib/empty-state/empty-state.cjs.map +1 -1
  658. package/dist/vue3/lib/empty-state/empty-state.js +7 -7
  659. package/dist/vue3/lib/feed-item-pill/feed-item-pill-constants.cjs.map +1 -1
  660. package/dist/vue3/lib/feed-item-pill/feed-item-pill-constants.js.map +1 -1
  661. package/dist/vue3/lib/feed-item-pill/feed-item-pill.cjs +1 -1
  662. package/dist/vue3/lib/feed-item-pill/feed-item-pill.cjs.map +1 -1
  663. package/dist/vue3/lib/feed-item-pill/feed-item-pill.js +6 -6
  664. package/dist/vue3/lib/feed-item-pill/feed-item-pill.js.map +1 -1
  665. package/dist/vue3/lib/feed-item-row/feed-item-row-constants.cjs.map +1 -1
  666. package/dist/vue3/lib/feed-item-row/feed-item-row-constants.js.map +1 -1
  667. package/dist/vue3/lib/feed-item-row/feed-item-row.cjs +1 -1
  668. package/dist/vue3/lib/feed-item-row/feed-item-row.cjs.map +1 -1
  669. package/dist/vue3/lib/feed-item-row/feed-item-row.js +29 -29
  670. package/dist/vue3/lib/feed-item-row/feed-item-row.js.map +1 -1
  671. package/dist/vue3/lib/general-row/general-row-constants.cjs.map +1 -1
  672. package/dist/vue3/lib/general-row/general-row-constants.js.map +1 -1
  673. package/dist/vue3/lib/general-row/general-row.cjs +1 -1
  674. package/dist/vue3/lib/general-row/general-row.cjs.map +1 -1
  675. package/dist/vue3/lib/general-row/general-row.js +30 -30
  676. package/dist/vue3/lib/general-row/general-row.js.map +1 -1
  677. package/dist/vue3/lib/general-row/leftbar-general-row-icon.cjs.map +1 -1
  678. package/dist/vue3/lib/general-row/leftbar-general-row-icon.js +35 -35
  679. package/dist/vue3/lib/general-row/leftbar-general-row-icon.js.map +1 -1
  680. package/dist/vue3/lib/group-row/group-row.cjs.map +1 -1
  681. package/dist/vue3/lib/group-row/group-row.js +3 -3
  682. package/dist/vue3/lib/group-row/group-row.js.map +1 -1
  683. package/dist/vue3/lib/grouped-chip/grouped-chip.cjs.map +1 -1
  684. package/dist/vue3/lib/grouped-chip/grouped-chip.js +14 -14
  685. package/dist/vue3/lib/grouped-chip/grouped-chip.js.map +1 -1
  686. package/dist/vue3/lib/hovercard/hovercard.cjs +1 -1
  687. package/dist/vue3/lib/hovercard/hovercard.cjs.map +1 -1
  688. package/dist/vue3/lib/hovercard/hovercard.js +6 -6
  689. package/dist/vue3/lib/hovercard/hovercard.js.map +1 -1
  690. package/dist/vue3/lib/icon/icon-constants.cjs.map +1 -1
  691. package/dist/vue3/lib/icon/icon-constants.js.map +1 -1
  692. package/dist/vue3/lib/icon/icon.cjs.map +1 -1
  693. package/dist/vue3/lib/icon/icon.js +6 -6
  694. package/dist/vue3/lib/icon/icon.js.map +1 -1
  695. package/dist/vue3/lib/illustration/illustration-constants.cjs.map +1 -1
  696. package/dist/vue3/lib/illustration/illustration-constants.js.map +1 -1
  697. package/dist/vue3/lib/illustration/illustration.cjs.map +1 -1
  698. package/dist/vue3/lib/illustration/illustration.js +3 -3
  699. package/dist/vue3/lib/image-viewer/image-viewer.cjs.map +1 -1
  700. package/dist/vue3/lib/image-viewer/image-viewer.js +12 -12
  701. package/dist/vue3/lib/image-viewer/image-viewer.js.map +1 -1
  702. package/dist/vue3/lib/input/input-constants.cjs.map +1 -1
  703. package/dist/vue3/lib/input/input-constants.js.map +1 -1
  704. package/dist/vue3/lib/input/input.cjs.map +1 -1
  705. package/dist/vue3/lib/input/input.js +20 -20
  706. package/dist/vue3/lib/input/input.js.map +1 -1
  707. package/dist/vue3/lib/input-group/input-group.cjs.map +1 -1
  708. package/dist/vue3/lib/input-group/input-group.js +8 -8
  709. package/dist/vue3/lib/input-group/input-group.js.map +1 -1
  710. package/dist/vue3/lib/item-layout/item-layout.cjs.map +1 -1
  711. package/dist/vue3/lib/item-layout/item-layout.js +13 -13
  712. package/dist/vue3/lib/item-layout/item-layout.js.map +1 -1
  713. package/dist/vue3/lib/ivr-node/ivr-node-constants.cjs.map +1 -1
  714. package/dist/vue3/lib/ivr-node/ivr-node-constants.js.map +1 -1
  715. package/dist/vue3/lib/ivr-node/ivr-node.cjs +1 -1
  716. package/dist/vue3/lib/ivr-node/ivr-node.cjs.map +1 -1
  717. package/dist/vue3/lib/ivr-node/ivr-node.js +36 -36
  718. package/dist/vue3/lib/ivr-node/ivr-node.js.map +1 -1
  719. package/dist/vue3/lib/keyboard-shortcut/keyboard-shortcut.cjs.map +1 -1
  720. package/dist/vue3/lib/keyboard-shortcut/keyboard-shortcut.js +15 -15
  721. package/dist/vue3/lib/keyboard-shortcut/keyboard-shortcut.js.map +1 -1
  722. package/dist/vue3/lib/lazy-show/lazy-show.cjs.map +1 -1
  723. package/dist/vue3/lib/lazy-show/lazy-show.js +2 -2
  724. package/dist/vue3/lib/lazy-show/lazy-show.js.map +1 -1
  725. package/dist/vue3/lib/link/link-constants.cjs.map +1 -1
  726. package/dist/vue3/lib/link/link-constants.js.map +1 -1
  727. package/dist/vue3/lib/link/link.cjs.map +1 -1
  728. package/dist/vue3/lib/link/link.js +5 -5
  729. package/dist/vue3/lib/link/link.js.map +1 -1
  730. package/dist/vue3/lib/list-item/list-item-constants.cjs.map +1 -1
  731. package/dist/vue3/lib/list-item/list-item-constants.js.map +1 -1
  732. package/dist/vue3/lib/list-item/list-item.cjs.map +1 -1
  733. package/dist/vue3/lib/list-item/list-item.js +4 -4
  734. package/dist/vue3/lib/list-item/list-item.js.map +1 -1
  735. package/dist/vue3/lib/list-item-group/list-item-group-constants.cjs.map +1 -1
  736. package/dist/vue3/lib/list-item-group/list-item-group-constants.js.map +1 -1
  737. package/dist/vue3/lib/list-item-group/list-item-group.cjs.map +1 -1
  738. package/dist/vue3/lib/list-item-group/list-item-group.js +5 -5
  739. package/dist/vue3/lib/list-item-group/list-item-group.js.map +1 -1
  740. package/dist/vue3/lib/loader/loader.cjs.map +1 -1
  741. package/dist/vue3/lib/loader/loader.js +2 -2
  742. package/dist/vue3/lib/loader/loader.js.map +1 -1
  743. package/dist/vue3/lib/message-input/last-active-nodes.cjs.map +1 -1
  744. package/dist/vue3/lib/message-input/last-active-nodes.js.map +1 -1
  745. package/dist/vue3/lib/message-input/message-input-button.cjs +1 -1
  746. package/dist/vue3/lib/message-input/message-input-button.cjs.map +1 -1
  747. package/dist/vue3/lib/message-input/message-input-button.js +14 -14
  748. package/dist/vue3/lib/message-input/message-input-button.js.map +1 -1
  749. package/dist/vue3/lib/message-input/message-input-constants.cjs.map +1 -1
  750. package/dist/vue3/lib/message-input/message-input-constants.js.map +1 -1
  751. package/dist/vue3/lib/message-input/message-input-link.cjs +1 -1
  752. package/dist/vue3/lib/message-input/message-input-link.cjs.map +1 -1
  753. package/dist/vue3/lib/message-input/message-input-link.js +10 -10
  754. package/dist/vue3/lib/message-input/message-input-link.js.map +1 -1
  755. package/dist/vue3/lib/message-input/message-input-topbar.cjs.map +1 -1
  756. package/dist/vue3/lib/message-input/message-input-topbar.js +11 -11
  757. package/dist/vue3/lib/message-input/message-input-topbar.js.map +1 -1
  758. package/dist/vue3/lib/message-input/message-input.cjs +1 -1
  759. package/dist/vue3/lib/message-input/message-input.cjs.map +1 -1
  760. package/dist/vue3/lib/message-input/message-input.js +30 -30
  761. package/dist/vue3/lib/message-input/message-input.js.map +1 -1
  762. package/dist/vue3/lib/modal/modal.cjs +1 -1
  763. package/dist/vue3/lib/modal/modal.cjs.map +1 -1
  764. package/dist/vue3/lib/modal/modal.js +14 -14
  765. package/dist/vue3/lib/modal/modal.js.map +1 -1
  766. package/dist/vue3/lib/notice/notice-action.cjs.map +1 -1
  767. package/dist/vue3/lib/notice/notice-action.js +1 -1
  768. package/dist/vue3/lib/notice/notice-action.js.map +1 -1
  769. package/dist/vue3/lib/notice/notice-constants.cjs.map +1 -1
  770. package/dist/vue3/lib/notice/notice-constants.js.map +1 -1
  771. package/dist/vue3/lib/notice/notice-content.cjs.map +1 -1
  772. package/dist/vue3/lib/notice/notice-content.js +6 -6
  773. package/dist/vue3/lib/notice/notice-content.js.map +1 -1
  774. package/dist/vue3/lib/notice/notice-icon.cjs.map +1 -1
  775. package/dist/vue3/lib/notice/notice-icon.js +13 -13
  776. package/dist/vue3/lib/notice/notice-icon.js.map +1 -1
  777. package/dist/vue3/lib/notice/notice.cjs.map +1 -1
  778. package/dist/vue3/lib/notice/notice.js +4 -4
  779. package/dist/vue3/lib/notice/notice.js.map +1 -1
  780. package/dist/vue3/lib/pagination/pagination.cjs.map +1 -1
  781. package/dist/vue3/lib/pagination/pagination.js +4 -4
  782. package/dist/vue3/lib/pagination/pagination.js.map +1 -1
  783. package/dist/vue3/lib/popover/popover-constants.cjs.map +1 -1
  784. package/dist/vue3/lib/popover/popover-constants.js.map +1 -1
  785. package/dist/vue3/lib/popover/popover-header-footer.cjs.map +1 -1
  786. package/dist/vue3/lib/popover/popover-header-footer.js +6 -6
  787. package/dist/vue3/lib/popover/popover-header-footer.js.map +1 -1
  788. package/dist/vue3/lib/popover/popover.cjs.map +1 -1
  789. package/dist/vue3/lib/popover/popover.js +15 -15
  790. package/dist/vue3/lib/popover/popover.js.map +1 -1
  791. package/dist/vue3/lib/popover/tippy-utils.cjs.map +1 -1
  792. package/dist/vue3/lib/popover/tippy-utils.js.map +1 -1
  793. package/dist/vue3/lib/presence/presence.cjs.map +1 -1
  794. package/dist/vue3/lib/presence/presence.js +4 -4
  795. package/dist/vue3/lib/presence/presence.js.map +1 -1
  796. package/dist/vue3/lib/radio/radio-constants.cjs.map +1 -1
  797. package/dist/vue3/lib/radio/radio-constants.js.map +1 -1
  798. package/dist/vue3/lib/radio/radio.cjs.map +1 -1
  799. package/dist/vue3/lib/radio/radio.js +13 -13
  800. package/dist/vue3/lib/radio/radio.js.map +1 -1
  801. package/dist/vue3/lib/radio-group/radio-group.cjs.map +1 -1
  802. package/dist/vue3/lib/radio-group/radio-group.js.map +1 -1
  803. package/dist/vue3/lib/radio-group/radios-decorator.cjs.map +1 -1
  804. package/dist/vue3/lib/radio-group/radios-decorator.js +1 -1
  805. package/dist/vue3/lib/radio-group/radios-decorator.js.map +1 -1
  806. package/dist/vue3/lib/recipes/eslint.config.cjs.map +1 -1
  807. package/dist/vue3/lib/recipes/eslint.config.js.map +1 -1
  808. package/dist/vue3/lib/rich-text-editor/channel-suggestion.cjs.map +1 -1
  809. package/dist/vue3/lib/rich-text-editor/channel-suggestion.js.map +1 -1
  810. package/dist/vue3/lib/rich-text-editor/mention-suggestion.cjs.map +1 -1
  811. package/dist/vue3/lib/rich-text-editor/mention-suggestion.js.map +1 -1
  812. package/dist/vue3/lib/rich-text-editor/rich-text-editor-constants.cjs.map +1 -1
  813. package/dist/vue3/lib/rich-text-editor/rich-text-editor-constants.js.map +1 -1
  814. package/dist/vue3/lib/rich-text-editor/rich-text-editor.cjs.map +1 -1
  815. package/dist/vue3/lib/rich-text-editor/rich-text-editor.js +22 -22
  816. package/dist/vue3/lib/rich-text-editor/rich-text-editor.js.map +1 -1
  817. package/dist/vue3/lib/rich-text-editor/slash-command-suggestion.cjs.map +1 -1
  818. package/dist/vue3/lib/rich-text-editor/slash-command-suggestion.js.map +1 -1
  819. package/dist/vue3/lib/root-layout/root-layout-constants.cjs.map +1 -1
  820. package/dist/vue3/lib/root-layout/root-layout-constants.js.map +1 -1
  821. package/dist/vue3/lib/root-layout/root-layout.cjs.map +1 -1
  822. package/dist/vue3/lib/root-layout/root-layout.js +3 -3
  823. package/dist/vue3/lib/root-layout/root-layout.js.map +1 -1
  824. package/dist/vue3/lib/scrollbar-directive/scrollbar.cjs.map +1 -1
  825. package/dist/vue3/lib/scrollbar-directive/scrollbar.js.map +1 -1
  826. package/dist/vue3/lib/scroller/scroller.cjs +1 -1
  827. package/dist/vue3/lib/scroller/scroller.cjs.map +1 -1
  828. package/dist/vue3/lib/scroller/scroller.js +2 -2
  829. package/dist/vue3/lib/scroller/scroller.js.map +1 -1
  830. package/dist/vue3/lib/select-menu/select-menu-constants.cjs.map +1 -1
  831. package/dist/vue3/lib/select-menu/select-menu-constants.js.map +1 -1
  832. package/dist/vue3/lib/select-menu/select-menu.cjs.map +1 -1
  833. package/dist/vue3/lib/select-menu/select-menu.js +21 -21
  834. package/dist/vue3/lib/select-menu/select-menu.js.map +1 -1
  835. package/dist/vue3/lib/settings-menu-button/settings-menu-button.cjs.map +1 -1
  836. package/dist/vue3/lib/settings-menu-button/settings-menu-button.js +3 -3
  837. package/dist/vue3/lib/settings-menu-button/settings-menu-button.js.map +1 -1
  838. package/dist/vue3/lib/skeleton/skeleton-constants.cjs.map +1 -1
  839. package/dist/vue3/lib/skeleton/skeleton-constants.js.map +1 -1
  840. package/dist/vue3/lib/skeleton/skeleton-list-item.cjs.map +1 -1
  841. package/dist/vue3/lib/skeleton/skeleton-list-item.js +2 -2
  842. package/dist/vue3/lib/skeleton/skeleton-list-item.js.map +1 -1
  843. package/dist/vue3/lib/skeleton/skeleton-paragraph.cjs.map +1 -1
  844. package/dist/vue3/lib/skeleton/skeleton-paragraph.js +1 -1
  845. package/dist/vue3/lib/skeleton/skeleton-paragraph.js.map +1 -1
  846. package/dist/vue3/lib/skeleton/skeleton-shape.cjs.map +1 -1
  847. package/dist/vue3/lib/skeleton/skeleton-shape.js +5 -5
  848. package/dist/vue3/lib/skeleton/skeleton-shape.js.map +1 -1
  849. package/dist/vue3/lib/skeleton/skeleton-text.cjs.map +1 -1
  850. package/dist/vue3/lib/skeleton/skeleton-text.js +7 -7
  851. package/dist/vue3/lib/skeleton/skeleton-text.js.map +1 -1
  852. package/dist/vue3/lib/skeleton/skeleton.cjs.map +1 -1
  853. package/dist/vue3/lib/skeleton/skeleton.js +1 -1
  854. package/dist/vue3/lib/skeleton/skeleton.js.map +1 -1
  855. package/dist/vue3/lib/split-button/split-button-alpha.cjs.map +1 -1
  856. package/dist/vue3/lib/split-button/split-button-alpha.js +2 -2
  857. package/dist/vue3/lib/split-button/split-button-alpha.js.map +1 -1
  858. package/dist/vue3/lib/split-button/split-button-constants.cjs.map +1 -1
  859. package/dist/vue3/lib/split-button/split-button-constants.js.map +1 -1
  860. package/dist/vue3/lib/split-button/split-button-omega.cjs.map +1 -1
  861. package/dist/vue3/lib/split-button/split-button-omega.js +2 -2
  862. package/dist/vue3/lib/split-button/split-button-omega.js.map +1 -1
  863. package/dist/vue3/lib/split-button/split-button.cjs.map +1 -1
  864. package/dist/vue3/lib/split-button/split-button.js +19 -19
  865. package/dist/vue3/lib/split-button/split-button.js.map +1 -1
  866. package/dist/vue3/lib/stack/stack-constants.cjs.map +1 -1
  867. package/dist/vue3/lib/stack/stack-constants.js.map +1 -1
  868. package/dist/vue3/lib/stack/stack.cjs.map +1 -1
  869. package/dist/vue3/lib/stack/stack.js +11 -11
  870. package/dist/vue3/lib/stack/stack.js.map +1 -1
  871. package/dist/vue3/lib/stack/utils.cjs.map +1 -1
  872. package/dist/vue3/lib/stack/utils.js.map +1 -1
  873. package/dist/vue3/lib/stack/validators.cjs.map +1 -1
  874. package/dist/vue3/lib/stack/validators.js +5 -5
  875. package/dist/vue3/lib/stack/validators.js.map +1 -1
  876. package/dist/vue3/lib/tab/tab-group.cjs.map +1 -1
  877. package/dist/vue3/lib/tab/tab-group.js +7 -7
  878. package/dist/vue3/lib/tab/tab-group.js.map +1 -1
  879. package/dist/vue3/lib/tab/tab-panel.cjs.map +1 -1
  880. package/dist/vue3/lib/tab/tab-panel.js +2 -2
  881. package/dist/vue3/lib/tab/tab-panel.js.map +1 -1
  882. package/dist/vue3/lib/tab/tab.cjs.map +1 -1
  883. package/dist/vue3/lib/tab/tab.js +2 -2
  884. package/dist/vue3/lib/tab/tab.js.map +1 -1
  885. package/dist/vue3/lib/time-pill/time-pill.cjs.map +1 -1
  886. package/dist/vue3/lib/time-pill/time-pill.js +2 -2
  887. package/dist/vue3/lib/time-pill/time-pill.js.map +1 -1
  888. package/dist/vue3/lib/toast/toast-constants.cjs.map +1 -1
  889. package/dist/vue3/lib/toast/toast-constants.js.map +1 -1
  890. package/dist/vue3/lib/toast/toast.cjs +1 -1
  891. package/dist/vue3/lib/toast/toast.cjs.map +1 -1
  892. package/dist/vue3/lib/toast/toast.js +91 -83
  893. package/dist/vue3/lib/toast/toast.js.map +1 -1
  894. package/dist/vue3/lib/toggle/toggle-constants.cjs.map +1 -1
  895. package/dist/vue3/lib/toggle/toggle-constants.js.map +1 -1
  896. package/dist/vue3/lib/toggle/toggle.cjs.map +1 -1
  897. package/dist/vue3/lib/toggle/toggle.js +11 -11
  898. package/dist/vue3/lib/toggle/toggle.js.map +1 -1
  899. package/dist/vue3/lib/tooltip/tooltip-constants.cjs.map +1 -1
  900. package/dist/vue3/lib/tooltip/tooltip-constants.js.map +1 -1
  901. package/dist/vue3/lib/tooltip/tooltip.cjs +1 -1
  902. package/dist/vue3/lib/tooltip/tooltip.cjs.map +1 -1
  903. package/dist/vue3/lib/tooltip/tooltip.js +20 -21
  904. package/dist/vue3/lib/tooltip/tooltip.js.map +1 -1
  905. package/dist/vue3/lib/tooltip-directive/tooltip.cjs.map +1 -1
  906. package/dist/vue3/lib/tooltip-directive/tooltip.js +1 -1
  907. package/dist/vue3/lib/tooltip-directive/tooltip.js.map +1 -1
  908. package/dist/vue3/lib/top-banner-info/top-banner-info-constants.cjs.map +1 -1
  909. package/dist/vue3/lib/top-banner-info/top-banner-info-constants.js.map +1 -1
  910. package/dist/vue3/lib/top-banner-info/top-banner-info.cjs.map +1 -1
  911. package/dist/vue3/lib/top-banner-info/top-banner-info.js +2 -2
  912. package/dist/vue3/lib/top-banner-info/top-banner-info.js.map +1 -1
  913. package/dist/vue3/lib/unread-pill/unread-pill-constants.cjs.map +1 -1
  914. package/dist/vue3/lib/unread-pill/unread-pill-constants.js.map +1 -1
  915. package/dist/vue3/lib/unread-pill/unread-pill.cjs.map +1 -1
  916. package/dist/vue3/lib/unread-pill/unread-pill.js +7 -7
  917. package/dist/vue3/lib/unread-pill/unread-pill.js.map +1 -1
  918. package/dist/vue3/lib/validation-messages/validation-messages.cjs.map +1 -1
  919. package/dist/vue3/lib/validation-messages/validation-messages.js +9 -9
  920. package/dist/vue3/lib/validation-messages/validation-messages.js.map +1 -1
  921. package/dist/vue3/localization/de-DE.cjs.map +1 -1
  922. package/dist/vue3/localization/de-DE.js.map +1 -1
  923. package/dist/vue3/localization/en-US.cjs +1 -1
  924. package/dist/vue3/localization/en-US.cjs.map +1 -1
  925. package/dist/vue3/localization/en-US.js +1 -1
  926. package/dist/vue3/localization/en-US.js.map +1 -1
  927. package/dist/vue3/localization/es-LA.cjs.map +1 -1
  928. package/dist/vue3/localization/es-LA.js.map +1 -1
  929. package/dist/vue3/localization/fr-FR.cjs.map +1 -1
  930. package/dist/vue3/localization/fr-FR.js.map +1 -1
  931. package/dist/vue3/localization/index.cjs.map +1 -1
  932. package/dist/vue3/localization/index.js.map +1 -1
  933. package/dist/vue3/localization/it-IT.cjs.map +1 -1
  934. package/dist/vue3/localization/it-IT.js.map +1 -1
  935. package/dist/vue3/localization/ja-JP.cjs.map +1 -1
  936. package/dist/vue3/localization/ja-JP.js.map +1 -1
  937. package/dist/vue3/localization/nl-NL.cjs.map +1 -1
  938. package/dist/vue3/localization/nl-NL.js.map +1 -1
  939. package/dist/vue3/localization/pt-BR.cjs.map +1 -1
  940. package/dist/vue3/localization/pt-BR.js.map +1 -1
  941. package/dist/vue3/localization/ru-RU.cjs.map +1 -1
  942. package/dist/vue3/localization/ru-RU.js.map +1 -1
  943. package/dist/vue3/localization/zh-CN.cjs.map +1 -1
  944. package/dist/vue3/localization/zh-CN.js.map +1 -1
  945. package/dist/vue3/node_modules/@tiptap/vue-3.cjs.map +1 -1
  946. package/dist/vue3/node_modules/@tiptap/vue-3.js +3 -3
  947. package/dist/vue3/node_modules/@tiptap/vue-3.js.map +1 -1
  948. package/dist/vue3/shared/sr_only_close_button.cjs.map +1 -1
  949. package/dist/vue3/shared/sr_only_close_button.js +2 -2
  950. package/dist/vue3/shared/sr_only_close_button.js.map +1 -1
  951. package/dist/vue3/types/common/constants/index.d.ts.map +1 -1
  952. package/dist/vue3/types/common/dates/index.d.ts.map +1 -1
  953. package/dist/vue3/types/common/emoji/index.d.ts +1 -0
  954. package/dist/vue3/types/common/emoji/index.d.ts.map +1 -1
  955. package/dist/vue3/types/common/mixins/dom.d.ts.map +1 -1
  956. package/dist/vue3/types/common/mixins/input.d.ts +6 -6
  957. package/dist/vue3/types/common/mixins/input.d.ts.map +1 -1
  958. package/dist/vue3/types/common/mixins/input_group.d.ts +2 -2
  959. package/dist/vue3/types/common/mixins/modal.d.ts.map +1 -1
  960. package/dist/vue3/types/common/utils/index.d.ts.map +1 -1
  961. package/dist/vue3/types/components/avatar/avatar.vue.d.ts +12 -12
  962. package/dist/vue3/types/components/badge/badge.vue.d.ts +4 -4
  963. package/dist/vue3/types/components/banner/banner.vue.d.ts +1 -1
  964. package/dist/vue3/types/components/banner/banner.vue.d.ts.map +1 -1
  965. package/dist/vue3/types/components/breadcrumbs/breadcrumbs_constants.d.ts.map +1 -1
  966. package/dist/vue3/types/components/button/button.vue.d.ts +3 -3
  967. package/dist/vue3/types/components/button/button_constants.d.ts.map +1 -1
  968. package/dist/vue3/types/components/card/card.vue.d.ts +12 -12
  969. package/dist/vue3/types/components/checkbox/checkbox.vue.d.ts +6 -6
  970. package/dist/vue3/types/components/checkbox_group/checkbox_group.vue.d.ts +2 -2
  971. package/dist/vue3/types/components/chip/chip.vue.d.ts +6 -6
  972. package/dist/vue3/types/components/collapsible/collapsible.vue.d.ts +6 -6
  973. package/dist/vue3/types/components/combobox/combobox.vue.d.ts +4 -4
  974. package/dist/vue3/types/components/combobox/combobox_empty-list.vue.d.ts +3 -3
  975. package/dist/vue3/types/components/datepicker/datepicker_constants.d.ts.map +1 -1
  976. package/dist/vue3/types/components/datepicker/formatUtils.d.ts +5 -5
  977. package/dist/vue3/types/components/datepicker/formatUtils.d.ts.map +1 -1
  978. package/dist/vue3/types/components/datepicker/modules/calendar.vue.d.ts +1 -1
  979. package/dist/vue3/types/components/datepicker/modules/month-year-picker.vue.d.ts +1 -1
  980. package/dist/vue3/types/components/description_list/description_list.vue.d.ts +6 -6
  981. package/dist/vue3/types/components/dropdown/dropdown.vue.d.ts +10 -10
  982. package/dist/vue3/types/components/emoji/emoji.vue.d.ts +3 -3
  983. package/dist/vue3/types/components/emoji_picker/emoji_picker_constants.d.ts.map +1 -1
  984. package/dist/vue3/types/components/emoji_picker/modules/emoji_search.vue.d.ts.map +1 -1
  985. package/dist/vue3/types/components/emoji_picker/modules/emoji_selector.vue.d.ts.map +1 -1
  986. package/dist/vue3/types/components/emoji_picker/modules/emoji_skin_selector.vue.d.ts.map +1 -1
  987. package/dist/vue3/types/components/emoji_picker/modules/emoji_tabset.vue.d.ts.map +1 -1
  988. package/dist/vue3/types/components/emoji_text_wrapper/emoji_text_wrapper.vue.d.ts.map +1 -1
  989. package/dist/vue3/types/components/empty_state/empty_state.vue.d.ts +7 -11
  990. package/dist/vue3/types/components/empty_state/empty_state.vue.d.ts.map +1 -1
  991. package/dist/vue3/types/components/hovercard/hovercard.vue.d.ts +686 -11
  992. package/dist/vue3/types/components/hovercard/hovercard.vue.d.ts.map +1 -1
  993. package/dist/vue3/types/components/image_viewer/image_viewer.vue.d.ts.map +1 -1
  994. package/dist/vue3/types/components/input/input.vue.d.ts +8 -8
  995. package/dist/vue3/types/components/input_group/input_group.vue.d.ts +2 -2
  996. package/dist/vue3/types/components/item_layout/item_layout.vue.d.ts +1 -1
  997. package/dist/vue3/types/components/keyboard_shortcut/keyboard_shortcut.vue.d.ts +7 -210
  998. package/dist/vue3/types/components/lazy_show/lazy_show.vue.d.ts +1 -1
  999. package/dist/vue3/types/components/link/link_constants.d.ts.map +1 -1
  1000. package/dist/vue3/types/components/list_item/list_item.vue.d.ts +3 -3
  1001. package/dist/vue3/types/components/list_item_group/list_item_group.vue.d.ts +6 -6
  1002. package/dist/vue3/types/components/modal/modal.vue.d.ts +16 -16
  1003. package/dist/vue3/types/components/modal/modal.vue.d.ts.map +1 -1
  1004. package/dist/vue3/types/components/notice/notice.vue.d.ts +1 -1
  1005. package/dist/vue3/types/components/notice/notice_icon.vue.d.ts +1 -30
  1006. package/dist/vue3/types/components/notice/notice_icon.vue.d.ts.map +1 -1
  1007. package/dist/vue3/types/components/popover/popover.vue.d.ts +24 -24
  1008. package/dist/vue3/types/components/popover/popover.vue.d.ts.map +1 -1
  1009. package/dist/vue3/types/components/popover/popover_header_footer.vue.d.ts +3 -3
  1010. package/dist/vue3/types/components/popover/tippy_utils.d.ts +1 -1
  1011. package/dist/vue3/types/components/radio/radio.vue.d.ts +6 -6
  1012. package/dist/vue3/types/components/radio_group/radio_group.vue.d.ts +2 -2
  1013. package/dist/vue3/types/components/rich_text_editor/extensions/channels/ChannelComponent.vue.d.ts +22 -22
  1014. package/dist/vue3/types/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.d.ts +22 -22
  1015. package/dist/vue3/types/components/rich_text_editor/extensions/mentions/MentionComponent.vue.d.ts +22 -22
  1016. package/dist/vue3/types/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.d.ts +22 -22
  1017. package/dist/vue3/types/components/rich_text_editor/extensions/slash_command/slash_command.d.ts +1 -1
  1018. package/dist/vue3/types/components/rich_text_editor/extensions/slash_command/slash_command.d.ts.map +1 -1
  1019. package/dist/vue3/types/components/rich_text_editor/rich_text_editor.vue.d.ts +6 -6
  1020. package/dist/vue3/types/components/root_layout/root_layout.vue.d.ts +15 -15
  1021. package/dist/vue3/types/components/scroller/modules/core_scroller.vue.d.ts +26 -16
  1022. package/dist/vue3/types/components/scroller/modules/core_scroller.vue.d.ts.map +1 -1
  1023. package/dist/vue3/types/components/scroller/modules/scroller_item.vue.d.ts +1 -1
  1024. package/dist/vue3/types/components/scroller/scroller.vue.d.ts +245 -12
  1025. package/dist/vue3/types/components/scroller/scroller.vue.d.ts.map +1 -1
  1026. package/dist/vue3/types/components/select_menu/select_menu.vue.d.ts +13 -13
  1027. package/dist/vue3/types/components/skeleton/skeleton-list-item.vue.d.ts +1 -1
  1028. package/dist/vue3/types/components/skeleton/skeleton-paragraph.vue.d.ts +3 -3
  1029. package/dist/vue3/types/components/skeleton/skeleton-shape.vue.d.ts +4 -4
  1030. package/dist/vue3/types/components/skeleton/skeleton-text.vue.d.ts +1 -1
  1031. package/dist/vue3/types/components/skeleton/skeleton.vue.d.ts +1 -1
  1032. package/dist/vue3/types/components/skeleton/skeleton_constants.d.ts.map +1 -1
  1033. package/dist/vue3/types/components/split_button/split_button-alpha.vue.d.ts +3 -3
  1034. package/dist/vue3/types/components/split_button/split_button.vue.d.ts +3 -3
  1035. package/dist/vue3/types/components/tab/tab.vue.d.ts +3 -3
  1036. package/dist/vue3/types/components/tab/tab_group.vue.d.ts +3 -3
  1037. package/dist/vue3/types/components/tab/tab_panel.vue.d.ts +3 -3
  1038. package/dist/vue3/types/components/tab/tab_panel.vue.d.ts.map +1 -1
  1039. package/dist/vue3/types/components/toast/layouts/toast_layout_alternate.vue.d.ts +4 -1
  1040. package/dist/vue3/types/components/toast/layouts/toast_layout_alternate.vue.d.ts.map +1 -1
  1041. package/dist/vue3/types/components/toast/layouts/toast_layout_alternate_icon.vue.d.ts +1 -30
  1042. package/dist/vue3/types/components/toast/layouts/toast_layout_default.vue.d.ts +4 -1
  1043. package/dist/vue3/types/components/toast/layouts/toast_layout_default.vue.d.ts.map +1 -1
  1044. package/dist/vue3/types/components/toast/toast.vue.d.ts +10 -4
  1045. package/dist/vue3/types/components/toast/toast_constants.d.ts.map +1 -1
  1046. package/dist/vue3/types/components/toggle/toggle.vue.d.ts +7 -7
  1047. package/dist/vue3/types/components/tooltip/tooltip.vue.d.ts +10 -10
  1048. package/dist/vue3/types/components/tooltip/tooltip_constants.d.ts.map +1 -1
  1049. package/dist/vue3/types/components/validation_messages/validation_messages.vue.d.ts +0 -1
  1050. package/dist/vue3/types/components/validation_messages/validation_messages.vue.d.ts.map +1 -1
  1051. package/dist/vue3/types/recipes/buttons/callbar_button/callbar_button.vue.d.ts +7 -7
  1052. package/dist/vue3/types/recipes/buttons/callbar_button_with_dropdown/callbar_button_with_dropdown.vue.d.ts +7 -7
  1053. package/dist/vue3/types/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts +9 -9
  1054. package/dist/vue3/types/recipes/cards/ivr_node/ivr_node.vue.d.ts +1 -30
  1055. package/dist/vue3/types/recipes/cards/ivr_node/ivr_node.vue.d.ts.map +1 -1
  1056. package/dist/vue3/types/recipes/cards/ivr_node/ivr_node_constants.d.ts.map +1 -1
  1057. package/dist/vue3/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts +9 -9
  1058. package/dist/vue3/types/recipes/conversation_view/editor/editor.vue.d.ts +9 -241
  1059. package/dist/vue3/types/recipes/conversation_view/editor/editor.vue.d.ts.map +1 -1
  1060. package/dist/vue3/types/recipes/conversation_view/editor/editor_constants.d.ts.map +1 -1
  1061. package/dist/vue3/types/recipes/conversation_view/emoji_row/emoji_row.vue.d.ts.map +1 -1
  1062. package/dist/vue3/types/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts +7 -36
  1063. package/dist/vue3/types/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts.map +1 -1
  1064. package/dist/vue3/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +1 -1
  1065. package/dist/vue3/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts.map +1 -1
  1066. package/dist/vue3/types/recipes/conversation_view/feed_item_row/feed_item_row_constants.d.ts.map +1 -1
  1067. package/dist/vue3/types/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.d.ts +22 -22
  1068. package/dist/vue3/types/recipes/conversation_view/message_input/last_active_nodes.d.ts.map +1 -1
  1069. package/dist/vue3/types/recipes/conversation_view/message_input/message_input.vue.d.ts +7 -7
  1070. package/dist/vue3/types/recipes/item_layout/contact_info/contact_info.vue.d.ts +1 -1
  1071. package/dist/vue3/types/recipes/leftbar/general_row/leftbar_general_row_icon.vue.d.ts +1 -30
  1072. package/package.json +3 -3
  1073. package/dist/vue2/types/components/rich_text_editor/extensions/channels/ChannelComponent.vue.d.ts +0 -47
  1074. package/dist/vue2/types/components/rich_text_editor/extensions/channels/ChannelComponent.vue.d.ts.map +0 -1
  1075. package/dist/vue2/types/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.d.ts +0 -45
  1076. package/dist/vue2/types/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.d.ts.map +0 -1
  1077. package/dist/vue2/types/components/rich_text_editor/extensions/mentions/MentionComponent.vue.d.ts +0 -47
  1078. package/dist/vue2/types/components/rich_text_editor/extensions/mentions/MentionComponent.vue.d.ts.map +0 -1
  1079. package/dist/vue2/types/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.d.ts +0 -47
  1080. package/dist/vue2/types/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.d.ts.map +0 -1
  1081. package/dist/vue2/types/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.d.ts +0 -52
  1082. package/dist/vue2/types/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"contact-info.js","sources":["../../../recipes/item_layout/contact_info/contact_info.vue"],"sourcesContent":["<template>\n <dt-item-layout\n :role=\"role\"\n data-qa=\"contact-info\"\n class=\"d-recipe-contact-info\"\n content-class=\"d-recipe-contact-info__content\"\n right-class=\"d-recipe-contact-info__right\"\n unstyled\n >\n <template\n v-if=\"showAvatar\"\n #left\n >\n <button\n class=\"d-recipe-contact-info__left\"\n data-qa=\"contact-info-left\"\n :aria-labelledby=\"avatarLabelledBy\"\n @click=\"avatarClick\"\n >\n <span\n v-if=\"avatarList\"\n class=\"d-recipe-contact-info__avatars\"\n >\n <dt-avatar\n v-for=\"(avatar, index) in avatarList\"\n :key=\"index\"\n :size=\"avatarSize\"\n :seed=\"avatar.seed\"\n :full-name=\"avatar.fullName\"\n :image-src=\"avatar.src\"\n image-alt=\"\"\n :overlay-text=\"avatar.text\"\n :avatar-class=\"[\n {\n 'd-recipe-contact-info__avatar-stacked': index > 0,\n 'd-recipe-contact-info__avatar-halo': !!avatar.halo,\n },\n ]\"\n >\n <template #icon=\"{ iconSize }\">\n <!-- @slot Slot for avatar icon in a list -->\n <slot\n name=\"avatarIcon\"\n :icon-size=\"iconSize\"\n />\n </template>\n <template\n v-if=\"avatar.icon\"\n #overlayIcon\n >\n <component :is=\"avatar.icon\" />\n </template>\n </dt-avatar>\n </span>\n <dt-avatar\n v-else\n :size=\"avatarSize\"\n :full-name=\"avatarFullName\"\n :image-src=\"avatarSrc\"\n image-alt=\"\"\n :seed=\"avatarSeed\"\n :color=\"avatarColor\"\n :presence=\"presence\"\n >\n <template #icon=\"{ iconSize }\">\n <!-- @slot Slot for avatar icon in a list -->\n <slot\n name=\"avatarIcon\"\n :icon-size=\"iconSize\"\n />\n </template>\n </dt-avatar>\n </button>\n </template>\n <template #default>\n <div\n class=\"d-recipe-contact-info__header\"\n data-qa=\"contact-info-header\"\n >\n <!-- @slot Slot for header information -->\n <slot name=\"header\" />\n </div>\n </template>\n\n <template #subtitle>\n <div\n class=\"d-recipe-contact-info__subtitle\"\n data-qa=\"contact-info-subtitle\"\n >\n <!-- @slot Slot for subtitle information -->\n <slot name=\"subtitle\" />\n </div>\n </template>\n\n <template\n v-if=\"$slots.bottom\"\n #bottom\n >\n <div\n class=\"d-recipe-contact-info__bottom\"\n data-qa=\"contact-info-bottom\"\n >\n <!-- @slot Slot for information at the bottom -->\n <slot name=\"bottom\" />\n </div>\n </template>\n\n <template\n v-if=\"$slots.right\"\n #right\n >\n <div data-qa=\"contact-info-right\">\n <!-- @slot Slot for the right content -->\n <slot name=\"right\" />\n </div>\n </template>\n </dt-item-layout>\n</template>\n\n<script>\nimport DtItemLayout from '@/components/item_layout/item_layout.vue';\nimport DtAvatar from '@/components/avatar/avatar.vue';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeContactInfo',\n\n components: {\n DtAvatar,\n DtItemLayout,\n },\n\n /* inheritAttrs: false is generally an option we want to set on library\n components. This allows any attributes passed in that are not recognized\n as props to be passed down to another element or component using v-bind:$attrs\n more info: https://vuejs.org/v2/api/#inheritAttrs */\n // inheritAttrs: false,\n\n props: {\n /**\n * String to use for the item's role.\n */\n role: {\n type: String,\n default: '',\n },\n\n /**\n * Display avatar if `showAvatar` property is true.\n */\n showAvatar: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Optional avatar image url.\n */\n avatarSrc: {\n type: String,\n default: '',\n },\n\n /**\n * Avatar seed, set this to the user's ID to get the same avatar background gradient each time it is displayed.\n */\n avatarSeed: {\n type: String,\n default: null,\n },\n\n /**\n * Avatar's full name, used to extract initials\n * to display in avatar if `avatarSrc` and `avatarIcon` are empty.\n */\n avatarFullName: {\n type: String,\n default: '',\n },\n\n /**\n * The size of the avatar\n * @values xs, sm, md, lg, xl\n */\n avatarSize: {\n type: String,\n default: 'lg',\n },\n\n /**\n * The aria-labelledby of the button containing avatars\n */\n avatarLabelledBy: {\n type: String,\n default: '',\n },\n\n /**\n * Avatar color to display if `avatarSrc` is empty.\n */\n avatarColor: {\n type: String,\n default: null,\n },\n\n /**\n * Determines whether to show the presence indicator for\n * Avatar - accepts PRESENCE_STATES values: 'busy', 'away', 'offline',\n * or 'active'. By default, it's null and nothing is shown.\n * @values null, busy, away, offline, active\n */\n presence: {\n type: String,\n default: null,\n },\n\n /**\n * Showing multiple avatars in contact info.\n * The props of array items are: <br>\n * `src` - avatar image url (optional) <br>\n * `fullName` - full name, used to extract initials to display in avatar<br>\n * if `avatarSrc` and `avatarIcon` are empty<br>\n * `seed` - determines uniqueness of avatar background <br>\n * `text` - text that overlays the avatar (optional) <br>\n * `icon` - icon that overlays the avatar (optional) <br>\n * `halo` - halo highlight around the avatar. boolean true/false\n */\n avatarList: {\n type: Array,\n default: null,\n },\n },\n\n emits: ['avatar-click'],\n\n methods: {\n avatarClick () {\n this.$emit('avatar-click');\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtAvatar","DtItemLayout","_hoisted_1","_hoisted_6","_createBlock","_component_dt_item_layout","$props","_createSlots","_createElementVNode","_hoisted_3","_renderSlot","_ctx","_hoisted_4","_withCtx","$options","args","_openBlock","_createElementBlock","_hoisted_2","_Fragment","_renderList","avatar","index","_component_dt_avatar","iconSize","_resolveDynamicComponent","_hoisted_5"],"mappings":"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"}
1
+ {"version":3,"file":"contact-info.js","sources":["../../../recipes/item_layout/contact_info/contact_info.vue"],"sourcesContent":["<template>\n <dt-item-layout\n :role=\"role\"\n data-qa=\"contact-info\"\n class=\"d-recipe-contact-info\"\n content-class=\"d-recipe-contact-info__content\"\n right-class=\"d-recipe-contact-info__right\"\n unstyled\n >\n <template\n v-if=\"showAvatar\"\n #left\n >\n <button\n class=\"d-recipe-contact-info__left\"\n data-qa=\"contact-info-left\"\n :aria-labelledby=\"avatarLabelledBy\"\n @click=\"avatarClick\"\n >\n <span\n v-if=\"avatarList\"\n class=\"d-recipe-contact-info__avatars\"\n >\n <dt-avatar\n v-for=\"(avatar, index) in avatarList\"\n :key=\"index\"\n :size=\"avatarSize\"\n :seed=\"avatar.seed\"\n :full-name=\"avatar.fullName\"\n :image-src=\"avatar.src\"\n image-alt=\"\"\n :overlay-text=\"avatar.text\"\n :avatar-class=\"[\n {\n 'd-recipe-contact-info__avatar-stacked': index > 0,\n 'd-recipe-contact-info__avatar-halo': !!avatar.halo,\n },\n ]\"\n >\n <template #icon=\"{ iconSize }\">\n <!-- @slot Slot for avatar icon in a list -->\n <slot\n name=\"avatarIcon\"\n :icon-size=\"iconSize\"\n />\n </template>\n <template\n v-if=\"avatar.icon\"\n #overlayIcon\n >\n <component :is=\"avatar.icon\" />\n </template>\n </dt-avatar>\n </span>\n <dt-avatar\n v-else\n :size=\"avatarSize\"\n :full-name=\"avatarFullName\"\n :image-src=\"avatarSrc\"\n image-alt=\"\"\n :seed=\"avatarSeed\"\n :color=\"avatarColor\"\n :presence=\"presence\"\n >\n <template #icon=\"{ iconSize }\">\n <!-- @slot Slot for avatar icon in a list -->\n <slot\n name=\"avatarIcon\"\n :icon-size=\"iconSize\"\n />\n </template>\n </dt-avatar>\n </button>\n </template>\n <template #default>\n <div\n class=\"d-recipe-contact-info__header\"\n data-qa=\"contact-info-header\"\n >\n <!-- @slot Slot for header information -->\n <slot name=\"header\" />\n </div>\n </template>\n\n <template #subtitle>\n <div\n class=\"d-recipe-contact-info__subtitle\"\n data-qa=\"contact-info-subtitle\"\n >\n <!-- @slot Slot for subtitle information -->\n <slot name=\"subtitle\" />\n </div>\n </template>\n\n <template\n v-if=\"$slots.bottom\"\n #bottom\n >\n <div\n class=\"d-recipe-contact-info__bottom\"\n data-qa=\"contact-info-bottom\"\n >\n <!-- @slot Slot for information at the bottom -->\n <slot name=\"bottom\" />\n </div>\n </template>\n\n <template\n v-if=\"$slots.right\"\n #right\n >\n <div data-qa=\"contact-info-right\">\n <!-- @slot Slot for the right content -->\n <slot name=\"right\" />\n </div>\n </template>\n </dt-item-layout>\n</template>\n\n<script>\nimport DtItemLayout from '@/components/item_layout/item_layout.vue';\nimport DtAvatar from '@/components/avatar/avatar.vue';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeContactInfo',\n\n components: {\n DtAvatar,\n DtItemLayout,\n },\n\n /* inheritAttrs: false is generally an option we want to set on library\n components. This allows any attributes passed in that are not recognized\n as props to be passed down to another element or component using v-bind:$attrs\n more info: https://vuejs.org/v2/api/#inheritAttrs */\n // inheritAttrs: false,\n\n props: {\n /**\n * String to use for the item's role.\n */\n role: {\n type: String,\n default: '',\n },\n\n /**\n * Display avatar if `showAvatar` property is true.\n */\n showAvatar: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Optional avatar image url.\n */\n avatarSrc: {\n type: String,\n default: '',\n },\n\n /**\n * Avatar seed, set this to the user's ID to get the same avatar background gradient each time it is displayed.\n */\n avatarSeed: {\n type: String,\n default: null,\n },\n\n /**\n * Avatar's full name, used to extract initials\n * to display in avatar if `avatarSrc` and `avatarIcon` are empty.\n */\n avatarFullName: {\n type: String,\n default: '',\n },\n\n /**\n * The size of the avatar\n * @values xs, sm, md, lg, xl\n */\n avatarSize: {\n type: String,\n default: 'lg',\n },\n\n /**\n * The aria-labelledby of the button containing avatars\n */\n avatarLabelledBy: {\n type: String,\n default: '',\n },\n\n /**\n * Avatar color to display if `avatarSrc` is empty.\n */\n avatarColor: {\n type: String,\n default: null,\n },\n\n /**\n * Determines whether to show the presence indicator for\n * Avatar - accepts PRESENCE_STATES values: 'busy', 'away', 'offline',\n * or 'active'. By default, it's null and nothing is shown.\n * @values null, busy, away, offline, active\n */\n presence: {\n type: String,\n default: null,\n },\n\n /**\n * Showing multiple avatars in contact info.\n * The props of array items are: <br>\n * `src` - avatar image url (optional) <br>\n * `fullName` - full name, used to extract initials to display in avatar<br>\n * if `avatarSrc` and `avatarIcon` are empty<br>\n * `seed` - determines uniqueness of avatar background <br>\n * `text` - text that overlays the avatar (optional) <br>\n * `icon` - icon that overlays the avatar (optional) <br>\n * `halo` - halo highlight around the avatar. boolean true/false\n */\n avatarList: {\n type: Array,\n default: null,\n },\n },\n\n emits: ['avatar-click'],\n\n methods: {\n avatarClick () {\n this.$emit('avatar-click');\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtAvatar","DtItemLayout","_hoisted_1","_hoisted_6","_createBlock","_component_dt_item_layout","$props","_createSlots","_createElementVNode","_hoisted_3","_renderSlot","_ctx","_hoisted_4","_withCtx","$options","args","_openBlock","_createElementBlock","_hoisted_2","_Fragment","_renderList","avatar","index","_component_dt_avatar","iconSize","_resolveDynamicComponent","_hoisted_5"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("../../common/utils/index.cjs"),d=require("@dialpad/dialtone-icons/vue3"),e=require("vue"),p=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),m=require("../avatar/avatar.cjs"),_=require("../general-row/general-row.cjs"),f=require("../emoji-text-wrapper/emoji-text-wrapper.cjs"),y={compatConfig:{MODE:3},name:"DtRecipeContactRow",components:{DtAvatar:m.default,DtRecipeGeneralRow:_.default,DtEmojiTextWrapper:f.default,DtIconUser:d.DtIconUser},inheritAttrs:!1,props:{avatarSrc:{type:String,default:""},avatarPresence:{type:String,default:null},avatarSeed:{type:String,default:null},avatarColor:{type:String,default:null},presenceText:{type:String,default:""},name:{type:String,required:!0},userStatus:{type:String,default:""},muted:{type:Boolean,default:!1},unreadCount:{type:String,default:null},hasUnreads:{type:Boolean,default:!1},selected:{type:Boolean,default:!1},noInitials:{type:Boolean,default:!1},isTyping:{type:Boolean,default:!1},hasCallButton:{type:Boolean,default:!0}},emits:["call"],computed:{presenceFontColorClass(){return{active:"d-recipe-contact-row--active",busy:"d-recipe-contact-row--busy",away:"d-recipe-contact-row--away"}[this.avatarPresence]},contactRowListeners(){return s.extractVueListeners(this.$attrs)},contactDescription(){return s.safeConcatStrings([this.name,this.presenceText,this.userStatus])}}},w={class:"d-recipe-leftbar-row__status"};function g(a,n,t,v,S,r){const c=e.resolveComponent("dt-icon-user"),l=e.resolveComponent("dt-avatar"),o=e.resolveComponent("dt-emoji-text-wrapper"),i=e.resolveComponent("dt-recipe-general-row");return e.openBlock(),e.createBlock(i,e.mergeProps({"unread-count":t.unreadCount,description:r.contactDescription,"has-unreads":t.hasUnreads,selected:t.selected,"has-call-button":t.hasCallButton,muted:t.muted,"is-typing":t.isTyping},a.$attrs,{"data-qa":"contact-row"},e.toHandlers(r.contactRowListeners),{onCall:n[0]||(n[0]=u=>a.$emit("call",u))}),{left:e.withCtx(()=>[e.createVNode(l,{"full-name":t.name,"image-src":t.avatarSrc,color:t.avatarColor,"image-alt":"",size:"sm",seed:t.avatarSeed,presence:t.avatarPresence},e.createSlots({_:2},[t.noInitials?{name:"icon",fn:e.withCtx(()=>[e.createVNode(c,{size:"200"})]),key:"0"}:void 0]),1032,["full-name","image-src","color","seed","presence"])]),label:e.withCtx(()=>[e.createVNode(o,{class:"d-recipe-leftbar-row__description","data-qa":"dt-recipe-leftbar-row-description",size:"200"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.name),1)]),_:1}),e.createElementVNode("div",w,[t.presenceText?(e.openBlock(),e.createElementBlock("span",{key:0,"data-qa":"dt-recipe-leftbar-row-presence-text",class:e.normalizeClass(["d-recipe-leftbar-row__meta-context",r.presenceFontColorClass])},e.toDisplayString(t.presenceText),3)):e.createCommentVNode("",!0),t.userStatus?(e.openBlock(),e.createBlock(o,{key:1,size:"100","element-type":"span","data-qa":"dt-recipe-leftbar-row-user-status",class:"d-recipe-leftbar-row__meta-custom"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.userStatus),1)]),_:1})):e.createCommentVNode("",!0)])]),_:1},16,["unread-count","description","has-unreads","selected","has-call-button","muted","is-typing"])}const C=p._(y,[["render",g]]);exports.default=C;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("../../common/utils/index.cjs"),d=require("@dialpad/dialtone-icons/vue3"),e=require("vue"),p=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),m=require("../emoji-text-wrapper/emoji-text-wrapper.cjs"),_=require("../general-row/general-row.cjs"),f=require("../avatar/avatar.cjs"),y={compatConfig:{MODE:3},name:"DtRecipeContactRow",components:{DtAvatar:f.default,DtRecipeGeneralRow:_.default,DtEmojiTextWrapper:m.default,DtIconUser:d.DtIconUser},inheritAttrs:!1,props:{avatarSrc:{type:String,default:""},avatarPresence:{type:String,default:null},avatarSeed:{type:String,default:null},avatarColor:{type:String,default:null},presenceText:{type:String,default:""},name:{type:String,required:!0},userStatus:{type:String,default:""},muted:{type:Boolean,default:!1},unreadCount:{type:String,default:null},hasUnreads:{type:Boolean,default:!1},selected:{type:Boolean,default:!1},noInitials:{type:Boolean,default:!1},isTyping:{type:Boolean,default:!1},hasCallButton:{type:Boolean,default:!0}},emits:["call"],computed:{presenceFontColorClass(){return{active:"d-recipe-contact-row--active",busy:"d-recipe-contact-row--busy",away:"d-recipe-contact-row--away"}[this.avatarPresence]},contactRowListeners(){return s.extractVueListeners(this.$attrs)},contactDescription(){return s.safeConcatStrings([this.name,this.presenceText,this.userStatus])}}},w={class:"d-recipe-leftbar-row__status"};function g(a,n,t,v,S,r){const c=e.resolveComponent("dt-icon-user"),l=e.resolveComponent("dt-avatar"),o=e.resolveComponent("dt-emoji-text-wrapper"),i=e.resolveComponent("dt-recipe-general-row");return e.openBlock(),e.createBlock(i,e.mergeProps({"unread-count":t.unreadCount,description:r.contactDescription,"has-unreads":t.hasUnreads,selected:t.selected,"has-call-button":t.hasCallButton,muted:t.muted,"is-typing":t.isTyping},a.$attrs,{"data-qa":"contact-row"},e.toHandlers(r.contactRowListeners),{onCall:n[0]||(n[0]=u=>a.$emit("call",u))}),{left:e.withCtx(()=>[e.createVNode(l,{"full-name":t.name,"image-src":t.avatarSrc,color:t.avatarColor,"image-alt":"",size:"sm",seed:t.avatarSeed,presence:t.avatarPresence},e.createSlots({_:2},[t.noInitials?{name:"icon",fn:e.withCtx(()=>[e.createVNode(c,{size:"200"})]),key:"0"}:void 0]),1032,["full-name","image-src","color","seed","presence"])]),label:e.withCtx(()=>[e.createVNode(o,{class:"d-recipe-leftbar-row__description","data-qa":"dt-recipe-leftbar-row-description",size:"200"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.name),1)]),_:1}),e.createElementVNode("div",w,[t.presenceText?(e.openBlock(),e.createElementBlock("span",{key:0,"data-qa":"dt-recipe-leftbar-row-presence-text",class:e.normalizeClass(["d-recipe-leftbar-row__meta-context",r.presenceFontColorClass])},e.toDisplayString(t.presenceText),3)):e.createCommentVNode("",!0),t.userStatus?(e.openBlock(),e.createBlock(o,{key:1,size:"100","element-type":"span","data-qa":"dt-recipe-leftbar-row-user-status",class:"d-recipe-leftbar-row__meta-custom"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.userStatus),1)]),_:1})):e.createCommentVNode("",!0)])]),_:1},16,["unread-count","description","has-unreads","selected","has-call-button","muted","is-typing"])}const C=p._(y,[["render",g]]);exports.default=C;
2
2
  //# sourceMappingURL=contact-row.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"contact-row.cjs","sources":["../../../recipes/leftbar/contact_row/contact_row.vue"],"sourcesContent":["<template>\n <dt-recipe-general-row\n :unread-count=\"unreadCount\"\n :description=\"contactDescription\"\n :has-unreads=\"hasUnreads\"\n :selected=\"selected\"\n :has-call-button=\"hasCallButton\"\n :muted=\"muted\"\n :is-typing=\"isTyping\"\n v-bind=\"$attrs\"\n data-qa=\"contact-row\"\n v-on=\"contactRowListeners\"\n @call=\"$emit('call', $event)\"\n >\n <template #left>\n <dt-avatar\n :full-name=\"name\"\n :image-src=\"avatarSrc\"\n :color=\"avatarColor\"\n image-alt=\"\"\n size=\"sm\"\n :seed=\"avatarSeed\"\n :presence=\"avatarPresence\"\n >\n <template\n v-if=\"noInitials\"\n #icon\n >\n <dt-icon-user\n size=\"200\"\n />\n </template>\n </dt-avatar>\n </template>\n <template #label>\n <dt-emoji-text-wrapper\n class=\"d-recipe-leftbar-row__description\"\n data-qa=\"dt-recipe-leftbar-row-description\"\n size=\"200\"\n >\n {{ name }}\n </dt-emoji-text-wrapper>\n <div class=\"d-recipe-leftbar-row__status\">\n <span\n v-if=\"presenceText\"\n data-qa=\"dt-recipe-leftbar-row-presence-text\"\n :class=\"['d-recipe-leftbar-row__meta-context', presenceFontColorClass]\"\n >\n {{ presenceText }}\n </span>\n <dt-emoji-text-wrapper\n v-if=\"userStatus\"\n size=\"100\"\n element-type=\"span\"\n data-qa=\"dt-recipe-leftbar-row-user-status\"\n class=\"d-recipe-leftbar-row__meta-custom\"\n >\n {{ userStatus }}\n </dt-emoji-text-wrapper>\n </div>\n </template>\n </dt-recipe-general-row>\n</template>\n\n<script>\nimport { DtRecipeGeneralRow } from '@/recipes/leftbar/general_row';\nimport { DtEmojiTextWrapper } from '@/components/emoji_text_wrapper';\nimport { DtAvatar } from '@/components/avatar';\nimport { extractVueListeners, safeConcatStrings } from '@/common/utils';\nimport { DtIconUser } from '@dialpad/dialtone-icons/vue3';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeContactRow',\n\n components: {\n DtAvatar,\n DtRecipeGeneralRow,\n DtEmojiTextWrapper,\n DtIconUser,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Optional avatar image url.\n * If not provided it will use the initial of the name.\n */\n avatarSrc: {\n type: String,\n default: '',\n },\n\n /**\n * Determines whether to show the presence indicator for\n * Avatar - accepts PRESENCE_STATES values: 'busy', 'away', 'offline',\n * or 'active'. By default, it's null and nothing is shown.\n * defer validation to avatar component.\n * @values null, busy, away, offline, active\n */\n avatarPresence: {\n type: String,\n default: null,\n },\n\n /**\n * Avatar seed, set this to the user's ID to get the same avatar background gradient each time it is displayed.\n */\n avatarSeed: {\n type: String,\n default: null,\n },\n\n /**\n * Avatar color to display if `avatarSrc` is empty.\n */\n avatarColor: {\n type: String,\n default: null,\n },\n\n /**\n * Text describing the user's presence, such as \"in a meeting\"\n */\n presenceText: {\n type: String,\n default: '',\n },\n\n /**\n * Name of the contact\n */\n name: {\n type: String,\n required: true,\n },\n\n /**\n * Status as set by the user.\n */\n userStatus: {\n type: String,\n default: '',\n },\n\n /**\n * Gives a faded style to be used when muted\n */\n muted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Number of unread messages\n */\n unreadCount: {\n type: String,\n default: null,\n },\n\n /**\n * Styles the row with an increased font weight to convey it has unreads. This must be true to see\n * the unread count badge.\n */\n hasUnreads: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Determines if the row is selected\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Initials will never be shown. Instead it will show a \"User\" icon.\n */\n noInitials: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Shows an \"is typing\" animation over the avatar when true.\n */\n isTyping: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Whether the contact row should display a call button when hovered.\n */\n hasCallButton: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n /**\n * Call button clicked\n *\n * @event call\n * @type {PointerEvent | KeyboardEvent}\n */\n 'call',\n ],\n\n computed: {\n presenceFontColorClass () {\n const presenceFontColors = {\n active: 'd-recipe-contact-row--active',\n busy: 'd-recipe-contact-row--busy',\n away: 'd-recipe-contact-row--away',\n };\n\n return presenceFontColors[this.avatarPresence];\n },\n\n contactRowListeners () {\n return extractVueListeners(this.$attrs);\n },\n\n contactDescription () {\n return safeConcatStrings([this.name, this.presenceText, this.userStatus]);\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtAvatar","DtRecipeGeneralRow","DtEmojiTextWrapper","DtIconUser","extractVueListeners","safeConcatStrings","_hoisted_1","_openBlock","_createBlock","_component_dt_recipe_general_row","_mergeProps","$props","$options","_ctx","_toHandlers","_cache","$event","_createVNode","_component_dt_avatar","_createSlots","_withCtx","_component_dt_icon_user","_component_dt_emoji_text_wrapper","_createTextVNode","_toDisplayString","_createElementVNode","_createElementBlock","_normalizeClass","_createCommentVNode"],"mappings":"yZAuEKA,EAAU,CACb,aAAc,CAAE,KAAM,CAAG,EACzB,KAAM,qBAEN,WAAY,CACV,SAAAC,EAAQ,QACR,mBAAAC,EAAkB,QAClB,mBAAAC,EAAkB,mBAClBC,EAAU,UACX,EAED,aAAc,GAEd,MAAO,CAKL,UAAW,CACT,KAAM,OACN,QAAS,EACV,EASD,eAAgB,CACd,KAAM,OACN,QAAS,IACV,EAKD,WAAY,CACV,KAAM,OACN,QAAS,IACV,EAKD,YAAa,CACX,KAAM,OACN,QAAS,IACV,EAKD,aAAc,CACZ,KAAM,OACN,QAAS,EACV,EAKD,KAAM,CACJ,KAAM,OACN,SAAU,EACX,EAKD,WAAY,CACV,KAAM,OACN,QAAS,EACV,EAKD,MAAO,CACL,KAAM,QACN,QAAS,EACV,EAKD,YAAa,CACX,KAAM,OACN,QAAS,IACV,EAMD,WAAY,CACV,KAAM,QACN,QAAS,EACV,EAKD,SAAU,CACR,KAAM,QACN,QAAS,EACV,EAKD,WAAY,CACV,KAAM,QACN,QAAS,EACV,EAKD,SAAU,CACR,KAAM,QACN,QAAS,EACV,EAKD,cAAe,CACb,KAAM,QACN,QAAS,EACV,CACF,EAED,MAAO,CAOL,MACD,EAED,SAAU,CACR,wBAA0B,CAOxB,MAN2B,CACzB,OAAQ,+BACR,KAAM,6BACN,KAAM,8BAGkB,KAAK,cAAc,CAC9C,EAED,qBAAuB,CACrB,OAAOC,EAAmB,oBAAC,KAAK,MAAM,CACvC,EAED,oBAAsB,CACpB,OAAOC,EAAiB,kBAAC,CAAC,KAAK,KAAM,KAAK,aAAc,KAAK,UAAU,CAAC,CACzE,CACF,CACH,EA/LWC,EAAA,CAAA,MAAM,8BAA8B,mMAzC7C,OAAAC,YAAA,EAAAC,cA4DwBC,EA5DxBC,EAAAA,WA4DwB,CA3DrB,eAAcC,EAAW,YACzB,YAAaC,EAAkB,mBAC/B,cAAaD,EAAU,WACvB,SAAUA,EAAQ,SAClB,kBAAiBA,EAAa,cAC9B,MAAOA,EAAK,MACZ,YAAWA,EAAQ,QACZ,EAAAE,EAAA,QACR,UAAQ,aAAa,EACrBC,EAAA,WAA0BF,EAAD,mBAAA,EAAA,CACxB,OAAIG,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAEH,EAAK,MAAA,OAASG,CAAM,MAEhB,eACT,IAiBY,CAjBZC,EAAAA,YAiBYC,EAAA,CAhBT,YAAWP,EAAI,KACf,YAAWA,EAAS,UACpB,MAAOA,EAAW,YACnB,YAAU,GACV,KAAK,KACJ,KAAMA,EAAU,WAChB,SAAUA,EAAc,cAtBjC,EAAAQ,cAAA,CAAA,EAAA,GAAA,CAyBgBR,EAAU,YAzB1B,KA0BW,OA1BX,GAAAS,EAAA,QA4BU,IAEE,CAFFH,EAAAA,YAEEI,EAAA,CADA,KAAK,KAAK,CAAA,IA7BtB,IAAA,KAAA,qEAkCe,gBACT,IAMwB,CANxBJ,EAAAA,YAMwBK,EAAA,CALtB,MAAM,oCACN,UAAQ,oCACR,KAAK,QAtCb,QAAAF,EAAA,QAwCQ,IAAU,CAxClBG,EAAAA,gBAAAC,EAAAA,gBAwCWb,EAAI,IAAA,EAAA,CAAA,IAxCf,EAAA,IA0CMc,EAAA,mBAiBM,MAjBNnB,EAiBM,CAfIK,EAAY,4BADpBe,EAMO,mBAAA,OAAA,CAjDf,IAAA,EA6CU,UAAQ,sCACP,MA9CXC,EAAAA,qDA8CyDf,EAAsB,sBAAA,CAAA,qBAElED,EAAY,YAAA,EAAA,CAAA,GAhDzBiB,EAAA,mBAAA,GAAA,EAAA,EAmDgBjB,EAAU,0BADlBH,EAQwB,YAAAc,EAAA,CA1DhC,IAAA,EAoDU,KAAK,MACL,eAAa,OACb,UAAQ,oCACR,MAAM,sCAvDhB,QAAAF,EAAA,QAyDU,IAAgB,CAzD1BG,EAAAA,gBAAAC,EAAAA,gBAyDab,EAAU,UAAA,EAAA,CAAA,IAzDvB,EAAA,KAAAiB,EAAA,mBAAA,GAAA,EAAA,MAAA,EAAA"}
1
+ {"version":3,"file":"contact-row.cjs","sources":["../../../recipes/leftbar/contact_row/contact_row.vue"],"sourcesContent":["<template>\n <dt-recipe-general-row\n :unread-count=\"unreadCount\"\n :description=\"contactDescription\"\n :has-unreads=\"hasUnreads\"\n :selected=\"selected\"\n :has-call-button=\"hasCallButton\"\n :muted=\"muted\"\n :is-typing=\"isTyping\"\n v-bind=\"$attrs\"\n data-qa=\"contact-row\"\n v-on=\"contactRowListeners\"\n @call=\"$emit('call', $event)\"\n >\n <template #left>\n <dt-avatar\n :full-name=\"name\"\n :image-src=\"avatarSrc\"\n :color=\"avatarColor\"\n image-alt=\"\"\n size=\"sm\"\n :seed=\"avatarSeed\"\n :presence=\"avatarPresence\"\n >\n <template\n v-if=\"noInitials\"\n #icon\n >\n <dt-icon-user\n size=\"200\"\n />\n </template>\n </dt-avatar>\n </template>\n <template #label>\n <dt-emoji-text-wrapper\n class=\"d-recipe-leftbar-row__description\"\n data-qa=\"dt-recipe-leftbar-row-description\"\n size=\"200\"\n >\n {{ name }}\n </dt-emoji-text-wrapper>\n <div class=\"d-recipe-leftbar-row__status\">\n <span\n v-if=\"presenceText\"\n data-qa=\"dt-recipe-leftbar-row-presence-text\"\n :class=\"['d-recipe-leftbar-row__meta-context', presenceFontColorClass]\"\n >\n {{ presenceText }}\n </span>\n <dt-emoji-text-wrapper\n v-if=\"userStatus\"\n size=\"100\"\n element-type=\"span\"\n data-qa=\"dt-recipe-leftbar-row-user-status\"\n class=\"d-recipe-leftbar-row__meta-custom\"\n >\n {{ userStatus }}\n </dt-emoji-text-wrapper>\n </div>\n </template>\n </dt-recipe-general-row>\n</template>\n\n<script>\nimport { DtRecipeGeneralRow } from '@/recipes/leftbar/general_row';\nimport { DtEmojiTextWrapper } from '@/components/emoji_text_wrapper';\nimport { DtAvatar } from '@/components/avatar';\nimport { extractVueListeners, safeConcatStrings } from '@/common/utils';\nimport { DtIconUser } from '@dialpad/dialtone-icons/vue3';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeContactRow',\n\n components: {\n DtAvatar,\n DtRecipeGeneralRow,\n DtEmojiTextWrapper,\n DtIconUser,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Optional avatar image url.\n * If not provided it will use the initial of the name.\n */\n avatarSrc: {\n type: String,\n default: '',\n },\n\n /**\n * Determines whether to show the presence indicator for\n * Avatar - accepts PRESENCE_STATES values: 'busy', 'away', 'offline',\n * or 'active'. By default, it's null and nothing is shown.\n * defer validation to avatar component.\n * @values null, busy, away, offline, active\n */\n avatarPresence: {\n type: String,\n default: null,\n },\n\n /**\n * Avatar seed, set this to the user's ID to get the same avatar background gradient each time it is displayed.\n */\n avatarSeed: {\n type: String,\n default: null,\n },\n\n /**\n * Avatar color to display if `avatarSrc` is empty.\n */\n avatarColor: {\n type: String,\n default: null,\n },\n\n /**\n * Text describing the user's presence, such as \"in a meeting\"\n */\n presenceText: {\n type: String,\n default: '',\n },\n\n /**\n * Name of the contact\n */\n name: {\n type: String,\n required: true,\n },\n\n /**\n * Status as set by the user.\n */\n userStatus: {\n type: String,\n default: '',\n },\n\n /**\n * Gives a faded style to be used when muted\n */\n muted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Number of unread messages\n */\n unreadCount: {\n type: String,\n default: null,\n },\n\n /**\n * Styles the row with an increased font weight to convey it has unreads. This must be true to see\n * the unread count badge.\n */\n hasUnreads: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Determines if the row is selected\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Initials will never be shown. Instead it will show a \"User\" icon.\n */\n noInitials: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Shows an \"is typing\" animation over the avatar when true.\n */\n isTyping: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Whether the contact row should display a call button when hovered.\n */\n hasCallButton: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n /**\n * Call button clicked\n *\n * @event call\n * @type {PointerEvent | KeyboardEvent}\n */\n 'call',\n ],\n\n computed: {\n presenceFontColorClass () {\n const presenceFontColors = {\n active: 'd-recipe-contact-row--active',\n busy: 'd-recipe-contact-row--busy',\n away: 'd-recipe-contact-row--away',\n };\n\n return presenceFontColors[this.avatarPresence];\n },\n\n contactRowListeners () {\n return extractVueListeners(this.$attrs);\n },\n\n contactDescription () {\n return safeConcatStrings([this.name, this.presenceText, this.userStatus]);\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtAvatar","DtRecipeGeneralRow","DtEmojiTextWrapper","DtIconUser","extractVueListeners","safeConcatStrings","_hoisted_1","_openBlock","_createBlock","_component_dt_recipe_general_row","_mergeProps","$props","$options","_ctx","_toHandlers","_cache","$event","_createVNode","_component_dt_avatar","_createSlots","_withCtx","_component_dt_icon_user","_component_dt_emoji_text_wrapper","_createTextVNode","_toDisplayString","_createElementVNode","_createElementBlock","_normalizeClass","_createCommentVNode"],"mappings":"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"}
@@ -1,17 +1,17 @@
1
- import { extractVueListeners as w, safeConcatStrings as g } from "../../common/utils/index.js";
1
+ import { safeConcatStrings as w, extractVueListeners as g } from "../../common/utils/index.js";
2
2
  import { DtIconUser as C } from "@dialpad/dialtone-icons/vue3";
3
- import { resolveComponent as a, openBlock as o, createBlock as d, mergeProps as S, toHandlers as v, withCtx as t, createVNode as s, createSlots as h, createTextVNode as u, toDisplayString as c, createElementVNode as x, createElementBlock as b, normalizeClass as B, createCommentVNode as m } from "vue";
3
+ import { resolveComponent as a, createBlock as d, openBlock as o, mergeProps as S, toHandlers as v, withCtx as t, createVNode as s, createElementVNode as h, createTextVNode as u, toDisplayString as c, createElementBlock as x, createCommentVNode as m, normalizeClass as b, createSlots as B } from "vue";
4
4
  import { _ as D } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
5
- import T from "../avatar/avatar.js";
5
+ import T from "../emoji-text-wrapper/emoji-text-wrapper.js";
6
6
  import k from "../general-row/general-row.js";
7
- import R from "../emoji-text-wrapper/emoji-text-wrapper.js";
7
+ import R from "../avatar/avatar.js";
8
8
  const q = {
9
9
  compatConfig: { MODE: 3 },
10
10
  name: "DtRecipeContactRow",
11
11
  components: {
12
- DtAvatar: T,
12
+ DtAvatar: R,
13
13
  DtRecipeGeneralRow: k,
14
- DtEmojiTextWrapper: R,
14
+ DtEmojiTextWrapper: T,
15
15
  DtIconUser: C
16
16
  },
17
17
  inheritAttrs: !1,
@@ -139,10 +139,10 @@ const q = {
139
139
  }[this.avatarPresence];
140
140
  },
141
141
  contactRowListeners() {
142
- return w(this.$attrs);
142
+ return g(this.$attrs);
143
143
  },
144
144
  contactDescription() {
145
- return g([this.name, this.presenceText, this.userStatus]);
145
+ return w([this.name, this.presenceText, this.userStatus]);
146
146
  }
147
147
  }
148
148
  }, z = { class: "d-recipe-leftbar-row__status" };
@@ -168,7 +168,7 @@ function V(r, l, e, E, F, n) {
168
168
  size: "sm",
169
169
  seed: e.avatarSeed,
170
170
  presence: e.avatarPresence
171
- }, h({ _: 2 }, [
171
+ }, B({ _: 2 }, [
172
172
  e.noInitials ? {
173
173
  name: "icon",
174
174
  fn: t(() => [
@@ -189,11 +189,11 @@ function V(r, l, e, E, F, n) {
189
189
  ]),
190
190
  _: 1
191
191
  }),
192
- x("div", z, [
193
- e.presenceText ? (o(), b("span", {
192
+ h("div", z, [
193
+ e.presenceText ? (o(), x("span", {
194
194
  key: 0,
195
195
  "data-qa": "dt-recipe-leftbar-row-presence-text",
196
- class: B(["d-recipe-leftbar-row__meta-context", n.presenceFontColorClass])
196
+ class: b(["d-recipe-leftbar-row__meta-context", n.presenceFontColorClass])
197
197
  }, c(e.presenceText), 3)) : m("", !0),
198
198
  e.userStatus ? (o(), d(i, {
199
199
  key: 1,
@@ -1 +1 @@
1
- {"version":3,"file":"contact-row.js","sources":["../../../recipes/leftbar/contact_row/contact_row.vue"],"sourcesContent":["<template>\n <dt-recipe-general-row\n :unread-count=\"unreadCount\"\n :description=\"contactDescription\"\n :has-unreads=\"hasUnreads\"\n :selected=\"selected\"\n :has-call-button=\"hasCallButton\"\n :muted=\"muted\"\n :is-typing=\"isTyping\"\n v-bind=\"$attrs\"\n data-qa=\"contact-row\"\n v-on=\"contactRowListeners\"\n @call=\"$emit('call', $event)\"\n >\n <template #left>\n <dt-avatar\n :full-name=\"name\"\n :image-src=\"avatarSrc\"\n :color=\"avatarColor\"\n image-alt=\"\"\n size=\"sm\"\n :seed=\"avatarSeed\"\n :presence=\"avatarPresence\"\n >\n <template\n v-if=\"noInitials\"\n #icon\n >\n <dt-icon-user\n size=\"200\"\n />\n </template>\n </dt-avatar>\n </template>\n <template #label>\n <dt-emoji-text-wrapper\n class=\"d-recipe-leftbar-row__description\"\n data-qa=\"dt-recipe-leftbar-row-description\"\n size=\"200\"\n >\n {{ name }}\n </dt-emoji-text-wrapper>\n <div class=\"d-recipe-leftbar-row__status\">\n <span\n v-if=\"presenceText\"\n data-qa=\"dt-recipe-leftbar-row-presence-text\"\n :class=\"['d-recipe-leftbar-row__meta-context', presenceFontColorClass]\"\n >\n {{ presenceText }}\n </span>\n <dt-emoji-text-wrapper\n v-if=\"userStatus\"\n size=\"100\"\n element-type=\"span\"\n data-qa=\"dt-recipe-leftbar-row-user-status\"\n class=\"d-recipe-leftbar-row__meta-custom\"\n >\n {{ userStatus }}\n </dt-emoji-text-wrapper>\n </div>\n </template>\n </dt-recipe-general-row>\n</template>\n\n<script>\nimport { DtRecipeGeneralRow } from '@/recipes/leftbar/general_row';\nimport { DtEmojiTextWrapper } from '@/components/emoji_text_wrapper';\nimport { DtAvatar } from '@/components/avatar';\nimport { extractVueListeners, safeConcatStrings } from '@/common/utils';\nimport { DtIconUser } from '@dialpad/dialtone-icons/vue3';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeContactRow',\n\n components: {\n DtAvatar,\n DtRecipeGeneralRow,\n DtEmojiTextWrapper,\n DtIconUser,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Optional avatar image url.\n * If not provided it will use the initial of the name.\n */\n avatarSrc: {\n type: String,\n default: '',\n },\n\n /**\n * Determines whether to show the presence indicator for\n * Avatar - accepts PRESENCE_STATES values: 'busy', 'away', 'offline',\n * or 'active'. By default, it's null and nothing is shown.\n * defer validation to avatar component.\n * @values null, busy, away, offline, active\n */\n avatarPresence: {\n type: String,\n default: null,\n },\n\n /**\n * Avatar seed, set this to the user's ID to get the same avatar background gradient each time it is displayed.\n */\n avatarSeed: {\n type: String,\n default: null,\n },\n\n /**\n * Avatar color to display if `avatarSrc` is empty.\n */\n avatarColor: {\n type: String,\n default: null,\n },\n\n /**\n * Text describing the user's presence, such as \"in a meeting\"\n */\n presenceText: {\n type: String,\n default: '',\n },\n\n /**\n * Name of the contact\n */\n name: {\n type: String,\n required: true,\n },\n\n /**\n * Status as set by the user.\n */\n userStatus: {\n type: String,\n default: '',\n },\n\n /**\n * Gives a faded style to be used when muted\n */\n muted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Number of unread messages\n */\n unreadCount: {\n type: String,\n default: null,\n },\n\n /**\n * Styles the row with an increased font weight to convey it has unreads. This must be true to see\n * the unread count badge.\n */\n hasUnreads: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Determines if the row is selected\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Initials will never be shown. Instead it will show a \"User\" icon.\n */\n noInitials: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Shows an \"is typing\" animation over the avatar when true.\n */\n isTyping: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Whether the contact row should display a call button when hovered.\n */\n hasCallButton: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n /**\n * Call button clicked\n *\n * @event call\n * @type {PointerEvent | KeyboardEvent}\n */\n 'call',\n ],\n\n computed: {\n presenceFontColorClass () {\n const presenceFontColors = {\n active: 'd-recipe-contact-row--active',\n busy: 'd-recipe-contact-row--busy',\n away: 'd-recipe-contact-row--away',\n };\n\n return presenceFontColors[this.avatarPresence];\n },\n\n contactRowListeners () {\n return extractVueListeners(this.$attrs);\n },\n\n contactDescription () {\n return safeConcatStrings([this.name, this.presenceText, this.userStatus]);\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtAvatar","DtRecipeGeneralRow","DtEmojiTextWrapper","DtIconUser","extractVueListeners","safeConcatStrings","_hoisted_1","_openBlock","_createBlock","_component_dt_recipe_general_row","_mergeProps","$props","$options","_ctx","_toHandlers","_cache","$event","_createVNode","_component_dt_avatar","_createSlots","_withCtx","_component_dt_icon_user","_component_dt_emoji_text_wrapper","_createTextVNode","_toDisplayString","_createElementVNode","_createElementBlock","_normalizeClass","_createCommentVNode"],"mappings":"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"}
1
+ {"version":3,"file":"contact-row.js","sources":["../../../recipes/leftbar/contact_row/contact_row.vue"],"sourcesContent":["<template>\n <dt-recipe-general-row\n :unread-count=\"unreadCount\"\n :description=\"contactDescription\"\n :has-unreads=\"hasUnreads\"\n :selected=\"selected\"\n :has-call-button=\"hasCallButton\"\n :muted=\"muted\"\n :is-typing=\"isTyping\"\n v-bind=\"$attrs\"\n data-qa=\"contact-row\"\n v-on=\"contactRowListeners\"\n @call=\"$emit('call', $event)\"\n >\n <template #left>\n <dt-avatar\n :full-name=\"name\"\n :image-src=\"avatarSrc\"\n :color=\"avatarColor\"\n image-alt=\"\"\n size=\"sm\"\n :seed=\"avatarSeed\"\n :presence=\"avatarPresence\"\n >\n <template\n v-if=\"noInitials\"\n #icon\n >\n <dt-icon-user\n size=\"200\"\n />\n </template>\n </dt-avatar>\n </template>\n <template #label>\n <dt-emoji-text-wrapper\n class=\"d-recipe-leftbar-row__description\"\n data-qa=\"dt-recipe-leftbar-row-description\"\n size=\"200\"\n >\n {{ name }}\n </dt-emoji-text-wrapper>\n <div class=\"d-recipe-leftbar-row__status\">\n <span\n v-if=\"presenceText\"\n data-qa=\"dt-recipe-leftbar-row-presence-text\"\n :class=\"['d-recipe-leftbar-row__meta-context', presenceFontColorClass]\"\n >\n {{ presenceText }}\n </span>\n <dt-emoji-text-wrapper\n v-if=\"userStatus\"\n size=\"100\"\n element-type=\"span\"\n data-qa=\"dt-recipe-leftbar-row-user-status\"\n class=\"d-recipe-leftbar-row__meta-custom\"\n >\n {{ userStatus }}\n </dt-emoji-text-wrapper>\n </div>\n </template>\n </dt-recipe-general-row>\n</template>\n\n<script>\nimport { DtRecipeGeneralRow } from '@/recipes/leftbar/general_row';\nimport { DtEmojiTextWrapper } from '@/components/emoji_text_wrapper';\nimport { DtAvatar } from '@/components/avatar';\nimport { extractVueListeners, safeConcatStrings } from '@/common/utils';\nimport { DtIconUser } from '@dialpad/dialtone-icons/vue3';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeContactRow',\n\n components: {\n DtAvatar,\n DtRecipeGeneralRow,\n DtEmojiTextWrapper,\n DtIconUser,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Optional avatar image url.\n * If not provided it will use the initial of the name.\n */\n avatarSrc: {\n type: String,\n default: '',\n },\n\n /**\n * Determines whether to show the presence indicator for\n * Avatar - accepts PRESENCE_STATES values: 'busy', 'away', 'offline',\n * or 'active'. By default, it's null and nothing is shown.\n * defer validation to avatar component.\n * @values null, busy, away, offline, active\n */\n avatarPresence: {\n type: String,\n default: null,\n },\n\n /**\n * Avatar seed, set this to the user's ID to get the same avatar background gradient each time it is displayed.\n */\n avatarSeed: {\n type: String,\n default: null,\n },\n\n /**\n * Avatar color to display if `avatarSrc` is empty.\n */\n avatarColor: {\n type: String,\n default: null,\n },\n\n /**\n * Text describing the user's presence, such as \"in a meeting\"\n */\n presenceText: {\n type: String,\n default: '',\n },\n\n /**\n * Name of the contact\n */\n name: {\n type: String,\n required: true,\n },\n\n /**\n * Status as set by the user.\n */\n userStatus: {\n type: String,\n default: '',\n },\n\n /**\n * Gives a faded style to be used when muted\n */\n muted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Number of unread messages\n */\n unreadCount: {\n type: String,\n default: null,\n },\n\n /**\n * Styles the row with an increased font weight to convey it has unreads. This must be true to see\n * the unread count badge.\n */\n hasUnreads: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Determines if the row is selected\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Initials will never be shown. Instead it will show a \"User\" icon.\n */\n noInitials: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Shows an \"is typing\" animation over the avatar when true.\n */\n isTyping: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Whether the contact row should display a call button when hovered.\n */\n hasCallButton: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n /**\n * Call button clicked\n *\n * @event call\n * @type {PointerEvent | KeyboardEvent}\n */\n 'call',\n ],\n\n computed: {\n presenceFontColorClass () {\n const presenceFontColors = {\n active: 'd-recipe-contact-row--active',\n busy: 'd-recipe-contact-row--busy',\n away: 'd-recipe-contact-row--away',\n };\n\n return presenceFontColors[this.avatarPresence];\n },\n\n contactRowListeners () {\n return extractVueListeners(this.$attrs);\n },\n\n contactDescription () {\n return safeConcatStrings([this.name, this.presenceText, this.userStatus]);\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtAvatar","DtRecipeGeneralRow","DtEmojiTextWrapper","DtIconUser","extractVueListeners","safeConcatStrings","_hoisted_1","_openBlock","_createBlock","_component_dt_recipe_general_row","_mergeProps","$props","$options","_ctx","_toHandlers","_cache","$event","_createVNode","_component_dt_avatar","_createSlots","_withCtx","_component_dt_icon_user","_component_dt_emoji_text_wrapper","_createTextVNode","_toDisplayString","_createElementVNode","_createElementBlock","_normalizeClass","_createCommentVNode"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"datepicker.cjs","sources":["../../../components/datepicker/composables/useMonthYearPicker.js","../../../components/datepicker/modules/month-year-picker.vue","../../../components/datepicker/composables/useCalendar.js","../../../components/datepicker/modules/calendar.vue","../../../components/datepicker/datepicker.vue"],"sourcesContent":["import { computed, ref, watch } from 'vue';\nimport { addMonths, getDate, getMonth, getYear, set, subMonths } from 'date-fns';\nimport { formatMonth, getCalendarDays } from '../utils.js';\nimport { INTL_MONTH_FORMAT } from '../datepicker_constants';\nimport { returnFirstEl } from '@/common/utils';\nimport { DialtoneLocalization } from '@/localization';\n\nexport function useMonthYearPicker (props, emits) {\n const selectMonth = ref(getMonth(props.selectedDate));\n const selectYear = ref(getYear(props.selectedDate));\n const highlightedDay = ref(null);\n const focusPicker = ref(0);\n const focusRefs = ref([]);\n const i18n = new DialtoneLocalization();\n\n const calendarDays = computed(() => {\n return getCalendarDays(selectMonth.value, selectYear.value, highlightedDay.value);\n });\n\n watch(selectMonth, () => {\n highlightDay();\n emits('calendar-days', calendarDays.value);\n }, { immediate: true });\n\n watch(selectYear, () => {\n highlightDay();\n emits('calendar-days', calendarDays.value);\n }, { immediate: true });\n\n function formattedMonth (month) {\n return formatMonth(month, INTL_MONTH_FORMAT, i18n.currentLocale);\n }\n\n function setDayRef (el) {\n if (!focusRefs.value.includes(el)) {\n focusRefs.value.push(el);\n }\n }\n\n function focusMonthYearPicker () {\n returnFirstEl(focusRefs.value[0].$el).focus();\n }\n\n function handleKeyDown (event) {\n switch (event.key) {\n case 'ArrowLeft':\n event.preventDefault();\n if (focusPicker.value === 0) {\n focusPicker.value = 3;\n returnFirstEl(focusRefs.value[focusPicker.value].$el).focus();\n } else {\n focusPicker.value--;\n returnFirstEl(focusRefs.value[focusPicker.value].$el).focus();\n }\n break;\n\n case 'ArrowRight':\n event.preventDefault();\n if (focusPicker.value === 3) {\n focusPicker.value = 0;\n returnFirstEl(focusRefs.value[focusPicker.value].$el).focus();\n } else {\n focusPicker.value++;\n returnFirstEl(focusRefs.value[focusPicker.value].$el).focus();\n }\n break;\n\n case 'ArrowDown':\n event.preventDefault();\n emits('focus-first-day');\n break;\n\n case 'Tab':\n event.preventDefault();\n emits('focus-first-day');\n break;\n\n case 'Escape':\n emits('close-datepicker');\n break;\n }\n }\n\n function highlightDay () {\n const year = getYear(props.selectedDate);\n const month = getMonth(props.selectedDate);\n\n if (year !== selectYear.value || month !== selectMonth.value) {\n highlightedDay.value = null;\n } else {\n highlightedDay.value = getDate(props.selectedDate);\n }\n }\n\n function changeMonth (value) {\n // Adjust year when changing from January to December or vice versa\n if ((selectMonth.value === 0 && value === -1) || (selectMonth.value === 11 && value === 1)) {\n selectYear.value += value;\n }\n\n // Calculate the new date by adding or subtracting months\n const initialDate = set(props.selectedDate, { month: selectMonth.value, year: selectYear.value });\n const newDate = value === 1 ? addMonths(initialDate, 1) : subMonths(initialDate, 1);\n\n // Update the selected month\n selectMonth.value = getMonth(newDate);\n }\n\n function changeYear (value) {\n selectYear.value = selectYear.value + value;\n }\n\n function goToNextMonth () {\n changeMonth(1);\n }\n\n function goToPrevMonth () {\n changeMonth(-1);\n }\n\n function previousYearAriaLabel () {\n return `${i18n.$t('DIALTONE_DATEPICKER_CHANGE_TO')} ${i18n.$t('DIALTONE_DATEPICKER_PREVIOUS_YEAR')} ${selectYear.value - 1}`;\n }\n\n function previousMonthAriaLabel () {\n return `${i18n.$t('DIALTONE_DATEPICKER_CHANGE_TO')} ${i18n.$t('DIALTONE_DATEPICKER_PREVIOUS_MONTH')} ${formattedMonth(selectMonth.value - 1)}`;\n }\n\n function nextYearAriaLabel () {\n return `${i18n.$t('DIALTONE_DATEPICKER_CHANGE_TO')} ${i18n.$t('DIALTONE_DATEPICKER_NEXT_YEAR')} ${selectYear.value + 1}`;\n }\n\n function nextMonthAriaLabel () {\n return `${i18n.$t('DIALTONE_DATEPICKER_CHANGE_TO')} ${i18n.$t('DIALTONE_DATEPICKER_NEXT_MONTH')} ${formattedMonth(selectMonth.value + 1)}`;\n }\n\n return {\n selectMonth,\n selectYear,\n formattedMonth,\n setDayRef,\n focusMonthYearPicker,\n handleKeyDown,\n changeMonth,\n changeYear,\n goToNextMonth,\n goToPrevMonth,\n previousYearAriaLabel,\n previousMonthAriaLabel,\n nextYearAriaLabel,\n nextMonthAriaLabel,\n };\n}\n","<template>\n <dt-stack\n class=\"d-datepicker__month-year\"\n direction=\"row\"\n gap=\"300\"\n >\n <dt-stack\n as=\"nav\"\n class=\"d-datepicker__nav\"\n direction=\"row\"\n gap=\"200\"\n >\n <dt-tooltip\n :fallback-placements=\"['top-start', 'auto']\"\n :message=\"i18n.$t('DIALTONE_DATEPICKER_PREVIOUS_YEAR')\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n id=\"prevYearButton\"\n :ref=\"el => { if (el) setDayRef(el) }\"\n :aria-label=\"previousYearAriaLabel()\"\n :circle=\"true\"\n class=\"d-datepicker__nav-btn\"\n importance=\"clear\"\n kind=\"muted\"\n size=\"xs\"\n type=\"button\"\n @click=\"changeYear(-1)\"\n @keydown=\"handleKeyDown($event)\"\n >\n <dt-icon-chevrons-left\n size=\"200\"\n />\n </dt-button>\n </template>\n </dt-tooltip>\n <dt-tooltip\n :fallback-placements=\"['top-start', 'auto']\"\n :message=\"i18n.$t('DIALTONE_DATEPICKER_PREVIOUS_MONTH')\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n id=\"prevMonthButton\"\n :ref=\"el => { if (el) setDayRef(el) }\"\n :aria-label=\"previousMonthAriaLabel()\"\n :circle=\"true\"\n class=\"d-datepicker__nav-btn\"\n importance=\"clear\"\n kind=\"muted\"\n size=\"xs\"\n type=\"button\"\n @click=\"changeMonth(-1)\"\n @keydown=\"handleKeyDown($event)\"\n >\n <dt-icon-chevron-left\n size=\"200\"\n />\n </dt-button>\n </template>\n </dt-tooltip>\n </dt-stack>\n <div\n id=\"calendar-heading\"\n class=\"d-datepicker__month-year-title\"\n >\n {{ formattedMonth(selectMonth) }}\n\n {{ selectYear }}\n </div>\n <dt-stack\n as=\"nav\"\n class=\"d-datepicker__nav\"\n direction=\"row\"\n gap=\"200\"\n >\n <dt-tooltip\n :fallback-placements=\"['top-end', 'auto']\"\n :message=\"i18n.$t('DIALTONE_DATEPICKER_NEXT_MONTH')\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n id=\"nextMonthButton\"\n :ref=\"el => { if (el) setDayRef(el) }\"\n :aria-label=\"nextMonthAriaLabel()\"\n :circle=\"true\"\n class=\"d-datepicker__nav-btn\"\n importance=\"clear\"\n kind=\"muted\"\n size=\"xs\"\n type=\"button\"\n @click=\"changeMonth(1)\"\n @keydown=\"handleKeyDown($event)\"\n >\n <dt-icon-chevron-right\n size=\"200\"\n />\n </dt-button>\n </template>\n </dt-tooltip>\n <dt-tooltip\n :fallback-placements=\"['top-end', 'auto']\"\n :message=\"i18n.$t('DIALTONE_DATEPICKER_NEXT_YEAR')\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n id=\"nextYearButton\"\n :ref=\"el => { if (el) setDayRef(el) }\"\n :aria-label=\"nextYearAriaLabel()\"\n :circle=\"true\"\n class=\"d-datepicker__nav-btn\"\n importance=\"clear\"\n kind=\"muted\"\n size=\"xs\"\n type=\"button\"\n @click=\"changeYear(1)\"\n @keydown=\"handleKeyDown($event)\"\n >\n <dt-icon-chevrons-right\n size=\"200\"\n />\n </dt-button>\n </template>\n </dt-tooltip>\n </dt-stack>\n </dt-stack>\n</template>\n\n<script setup>\nimport {\n DtIconChevronLeft,\n DtIconChevronsLeft,\n DtIconChevronRight,\n DtIconChevronsRight,\n} from '@dialpad/dialtone-icons/vue3';\nimport { DtStack } from '@/components/stack';\nimport { DtButton } from '@/components/button';\nimport { DtTooltip } from '@/components/tooltip';\nimport { onMounted } from 'vue';\nimport { useMonthYearPicker } from '../composables/useMonthYearPicker.js';\nimport { DialtoneLocalization } from '@/localization';\n\nconst props = defineProps({\n selectedDate: {\n type: Date,\n required: true,\n },\n});\n\nconst emits = defineEmits([\n /**\n * Will retrieve the calendar days of the given date\n *\n * @event calendar-days\n * @type {Array}\n */\n 'calendar-days',\n\n /**\n * Will focus first day in calendar\n *\n * @event focus-first-day\n */\n 'focus-first-day',\n\n /**\n * Will focus last day in calendar\n *\n * @event focus-last-day\n */\n 'focus-last-day',\n\n /**\n * Will close the datepicker\n *\n * @event close-datepicker\n */\n 'close-datepicker',\n]);\n\nconst i18n = new DialtoneLocalization();\n\nconst {\n selectMonth,\n selectYear,\n formattedMonth,\n setDayRef,\n focusMonthYearPicker,\n handleKeyDown,\n changeMonth,\n changeYear,\n goToNextMonth,\n goToPrevMonth,\n previousYearAriaLabel,\n previousMonthAriaLabel,\n nextMonthAriaLabel,\n nextYearAriaLabel,\n} = useMonthYearPicker(props, emits);\n\nonMounted(() => {\n focusMonthYearPicker();\n});\n\ndefineExpose({\n focusMonthYearPicker,\n goToNextMonth,\n goToPrevMonth,\n});\n</script>\n","import { computed, ref, watch, nextTick } from 'vue';\nimport { getWeekDayNames, calculateNextFocusDate, calculatePrevFocusDate, formatDate } from '../utils.js';\nimport { INTL_MONTH_FORMAT, WEEK_START } from '../datepicker_constants.js';\nimport { returnFirstEl } from '@/common/utils';\nimport { DialtoneLocalization } from '@/localization';\n\nexport function useCalendar (props, emits) {\n const selectedDay = ref(null);\n const focusDay = ref(0);\n const daysRef = ref([]);\n const i18n = new DialtoneLocalization();\n\n const weekDays = computed(() => {\n return getWeekDayNames(props.locale, WEEK_START);\n });\n\n watch(() => props.calendarDays, () => {\n focusDay.value = 0;\n daysRef.value = [];\n selectedDay.value = null;\n });\n\n function dayAriaLabel (day) {\n return i18n.$t('DIALTONE_DATEPICKER_SELECT_DAY') + ` ${formatDate(day.value, INTL_MONTH_FORMAT, i18n.currentLocale)}`;\n }\n\n function setDayRef (el, day) {\n if (!daysRef.value.some(day => day.el === el) && day.currentMonth) {\n daysRef.value.push({ el, day });\n }\n }\n\n function handleKeyDown (event) {\n switch (event.key) {\n case 'ArrowUp':\n event.preventDefault();\n focusDay.value -= 7;\n try {\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n } catch {\n const prevFocusDate = calculatePrevFocusDate(daysRef.value[focusDay.value + 7].day.value);\n emits('go-to-prev-month');\n\n nextTick(() => {\n returnFirstEl(daysRef.value[prevFocusDate - 1].el.$el).focus();\n focusDay.value += prevFocusDate - 1;\n });\n }\n break;\n\n case 'ArrowDown':\n event.preventDefault();\n focusDay.value += 7;\n try {\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n } catch {\n const nextFocusDate = calculateNextFocusDate(daysRef.value[focusDay.value - 7].day.value);\n emits('go-to-next-month');\n\n nextTick(() => {\n returnFirstEl(daysRef.value[nextFocusDate - 1].el.$el).focus();\n focusDay.value += nextFocusDate - 1;\n });\n }\n break;\n\n case 'ArrowLeft':\n event.preventDefault();\n if (focusDay.value > 0) {\n focusDay.value -= 1;\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n } else {\n // if we are on month first day, jump to last day of prev month\n emits('go-to-prev-month');\n focusLastDay();\n }\n break;\n\n case 'ArrowRight':\n event.preventDefault();\n if (focusDay.value < daysRef.value.length - 1) {\n focusDay.value += 1;\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n } else {\n // if we are on month last day, jump to first day of next month\n emits('go-to-next-month');\n\n focusFirstDay();\n }\n break;\n\n case 'Tab':\n event.preventDefault();\n emits('focus-month-year-picker');\n break;\n\n case 'Escape':\n emits('close-datepicker');\n break;\n }\n }\n\n function focusFirstDay () {\n focusDay.value = 0;\n\n nextTick(() => {\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n });\n }\n\n function focusLastDay () {\n nextTick(() => {\n focusDay.value = daysRef.value.length - 1;\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n });\n }\n\n function selectDay (day) {\n if (!day.currentMonth) { return; }\n\n // local selectedDay is updated when a day is selected\n selectedDay.value = day.text;\n emits('select-date', day.value);\n }\n\n return {\n selectedDay,\n weekDays,\n dayAriaLabel,\n setDayRef,\n handleKeyDown,\n focusFirstDay,\n selectDay,\n };\n}\n","<template>\n <table\n class=\"d-datepicker__calendar\"\n aria-labelledby=\"calendar-heading\"\n >\n <thead>\n <tr>\n <th\n v-for=\"day in weekDays\"\n :key=\"day\"\n scope=\"col\"\n class=\"d-datepicker__cell d-datepicker__cell--header\"\n >\n <span\n class=\"d-datepicker__weekday\"\n :title=\"day\"\n :aria-label=\"day\"\n > {{ day }}</span>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr\n v-for=\"(week, indexWeek) in calendarDays\"\n :key=\"indexWeek\"\n >\n <td\n v-for=\"(day, indexDays) in week.days\"\n :key=\"indexWeek + indexDays\"\n class=\"d-datepicker__cell\"\n role=\"listbox\"\n >\n <dt-button\n :ref=\"el => { if (el) setDayRef(el, day) }\"\n class=\"d-datepicker__day\"\n :circle=\"true\"\n size=\"sm\"\n importance=\"clear\"\n :disabled=\"!day.currentMonth\"\n :class=\"{\n 'd-datepicker__day--disabled': !day.currentMonth,\n 'd-datepicker__day--selected': selectedDay\n ? ((day.text === selectedDay) && day.currentMonth)\n : day.selected,\n }\"\n type=\"button\"\n :aria-selected=\"!!selectedDay ? ((day.text === selectedDay) && day.currentMonth) : day.selected\"\n :aria-label=\"dayAriaLabel(day)\"\n role=\"option\"\n @click=\"selectDay(day)\"\n @keydown=\"handleKeyDown($event)\"\n >\n {{ day.text }}\n </dt-button>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script setup>\nimport { useCalendar } from '../composables/useCalendar.js';\nimport { DtButton } from '@/components/button';\n\nconst props = defineProps({\n calendarDays: {\n type: Array,\n required: true,\n },\n});\n\nconst emits = defineEmits([\n /**\n * Event fired when a date is selected\n *\n * @event select-date\n * @type {Date}\n */\n 'select-date',\n\n /**\n * Will focus the month and year picker\n *\n * @event focus-month-year-picker\n */\n 'focus-month-year-picker',\n\n /**\n * Will close the datepicker\n *\n * @event close-datepicker\n */\n 'close-datepicker',\n\n /**\n * Will go to the next month\n *\n * @event go-to-next-month\n */\n 'go-to-next-month',\n\n /**\n * Will go to the previous month\n *\n * @event go-to-prev-month\n */\n 'go-to-prev-month',\n]);\n\nconst {\n selectedDay,\n weekDays,\n dayAriaLabel,\n setDayRef,\n handleKeyDown,\n focusFirstDay,\n selectDay,\n} = useCalendar(props, emits);\n\ndefineExpose({\n focusFirstDay,\n});\n</script>\n","<!-- eslint-disable vue/multi-word-component-names -->\n<template>\n <dt-stack\n class=\"d-datepicker\"\n gap=\"400\"\n >\n <div class=\"d-datepicker__hd\">\n <month-year-picker\n ref=\"monthYearPicker\"\n :selected-date=\"selectedDate\"\n @calendar-days=\"updateCalendarDays\"\n @focus-first-day=\"$refs.calendar.focusFirstDay()\"\n @focus-last-day=\"$refs.calendar.focusLastDay()\"\n @close-datepicker=\"$emit('close-datepicker')\"\n />\n </div>\n <div class=\"d-datepicker__bd\">\n <calendar\n ref=\"calendar\"\n :calendar-days=\"calendarDays\"\n @select-date=\"$emit('selected-date', $event)\"\n @focus-month-year-picker=\"$refs.monthYearPicker.focusMonthYearPicker()\"\n @close-datepicker=\"$emit('close-datepicker')\"\n @go-to-next-month=\"$refs.monthYearPicker.goToNextMonth()\"\n @go-to-prev-month=\"$refs.monthYearPicker.goToPrevMonth()\"\n />\n </div>\n </dt-stack>\n</template>\n\n<script setup>\nimport MonthYearPicker from './modules/month-year-picker.vue';\nimport Calendar from './modules/calendar.vue';\nimport { DtStack } from '@/components/stack';\nimport { returnFirstEl, warnIfUnmounted } from '@/common/utils';\nimport { onMounted, ref, getCurrentInstance } from 'vue';\n\ndefineProps({\n /**\n * Selected date\n *\n * @type {Date}\n */\n selectedDate: {\n type: Date,\n default: () => (new Date()),\n },\n});\n\ndefineEmits([\n /**\n * Event fired when a date is selected\n *\n * @event selected-date\n * @type {Date}\n */\n 'selected-date',\n\n /**\n * Event fired when user presses the esc key\n *\n * @event close-datepicker\n */\n 'close-datepicker',\n]);\n\nconst calendarDays = ref([]);\n\nfunction updateCalendarDays (days) {\n calendarDays.value = days;\n}\n\nonMounted(() => {\n const instance = getCurrentInstance();\n warnIfUnmounted(returnFirstEl(instance.proxy.$el), 'datepicker');\n});\n</script>\n"],"names":["useMonthYearPicker","props","emits","selectMonth","ref","getMonth","selectYear","getYear","highlightedDay","focusPicker","focusRefs","i18n","DialtoneLocalization","calendarDays","computed","getCalendarDays","watch","highlightDay","formattedMonth","month","formatMonth","INTL_MONTH_FORMAT","setDayRef","el","focusMonthYearPicker","returnFirstEl","handleKeyDown","event","year","getDate","changeMonth","value","initialDate","set","newDate","addMonths","subMonths","changeYear","goToNextMonth","goToPrevMonth","previousYearAriaLabel","previousMonthAriaLabel","nextYearAriaLabel","nextMonthAriaLabel","__props","__emit","onMounted","__expose","useCalendar","selectedDay","focusDay","daysRef","weekDays","getWeekDayNames","WEEK_START","dayAriaLabel","day","formatDate","prevFocusDate","calculatePrevFocusDate","nextTick","nextFocusDate","calculateNextFocusDate","focusLastDay","focusFirstDay","selectDay","updateCalendarDays","days","instance","getCurrentInstance","warnIfUnmounted"],"mappings":"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"}
1
+ {"version":3,"file":"datepicker.cjs","sources":["../../../components/datepicker/composables/useMonthYearPicker.js","../../../components/datepicker/modules/month-year-picker.vue","../../../components/datepicker/composables/useCalendar.js","../../../components/datepicker/modules/calendar.vue","../../../components/datepicker/datepicker.vue"],"sourcesContent":["import { computed, ref, watch } from 'vue';\nimport { addMonths, getDate, getMonth, getYear, set, subMonths } from 'date-fns';\nimport { formatMonth, getCalendarDays } from '../utils.js';\nimport { INTL_MONTH_FORMAT } from '../datepicker_constants';\nimport { returnFirstEl } from '@/common/utils';\nimport { DialtoneLocalization } from '@/localization';\n\nexport function useMonthYearPicker (props, emits) {\n const selectMonth = ref(getMonth(props.selectedDate));\n const selectYear = ref(getYear(props.selectedDate));\n const highlightedDay = ref(null);\n const focusPicker = ref(0);\n const focusRefs = ref([]);\n const i18n = new DialtoneLocalization();\n\n const calendarDays = computed(() => {\n return getCalendarDays(selectMonth.value, selectYear.value, highlightedDay.value);\n });\n\n watch(selectMonth, () => {\n highlightDay();\n emits('calendar-days', calendarDays.value);\n }, { immediate: true });\n\n watch(selectYear, () => {\n highlightDay();\n emits('calendar-days', calendarDays.value);\n }, { immediate: true });\n\n function formattedMonth (month) {\n return formatMonth(month, INTL_MONTH_FORMAT, i18n.currentLocale);\n }\n\n function setDayRef (el) {\n if (!focusRefs.value.includes(el)) {\n focusRefs.value.push(el);\n }\n }\n\n function focusMonthYearPicker () {\n returnFirstEl(focusRefs.value[0].$el).focus();\n }\n\n function handleKeyDown (event) {\n switch (event.key) {\n case 'ArrowLeft':\n event.preventDefault();\n if (focusPicker.value === 0) {\n focusPicker.value = 3;\n returnFirstEl(focusRefs.value[focusPicker.value].$el).focus();\n } else {\n focusPicker.value--;\n returnFirstEl(focusRefs.value[focusPicker.value].$el).focus();\n }\n break;\n\n case 'ArrowRight':\n event.preventDefault();\n if (focusPicker.value === 3) {\n focusPicker.value = 0;\n returnFirstEl(focusRefs.value[focusPicker.value].$el).focus();\n } else {\n focusPicker.value++;\n returnFirstEl(focusRefs.value[focusPicker.value].$el).focus();\n }\n break;\n\n case 'ArrowDown':\n event.preventDefault();\n emits('focus-first-day');\n break;\n\n case 'Tab':\n event.preventDefault();\n emits('focus-first-day');\n break;\n\n case 'Escape':\n emits('close-datepicker');\n break;\n }\n }\n\n function highlightDay () {\n const year = getYear(props.selectedDate);\n const month = getMonth(props.selectedDate);\n\n if (year !== selectYear.value || month !== selectMonth.value) {\n highlightedDay.value = null;\n } else {\n highlightedDay.value = getDate(props.selectedDate);\n }\n }\n\n function changeMonth (value) {\n // Adjust year when changing from January to December or vice versa\n if ((selectMonth.value === 0 && value === -1) || (selectMonth.value === 11 && value === 1)) {\n selectYear.value += value;\n }\n\n // Calculate the new date by adding or subtracting months\n const initialDate = set(props.selectedDate, { month: selectMonth.value, year: selectYear.value });\n const newDate = value === 1 ? addMonths(initialDate, 1) : subMonths(initialDate, 1);\n\n // Update the selected month\n selectMonth.value = getMonth(newDate);\n }\n\n function changeYear (value) {\n selectYear.value = selectYear.value + value;\n }\n\n function goToNextMonth () {\n changeMonth(1);\n }\n\n function goToPrevMonth () {\n changeMonth(-1);\n }\n\n function previousYearAriaLabel () {\n return `${i18n.$t('DIALTONE_DATEPICKER_CHANGE_TO')} ${i18n.$t('DIALTONE_DATEPICKER_PREVIOUS_YEAR')} ${selectYear.value - 1}`;\n }\n\n function previousMonthAriaLabel () {\n return `${i18n.$t('DIALTONE_DATEPICKER_CHANGE_TO')} ${i18n.$t('DIALTONE_DATEPICKER_PREVIOUS_MONTH')} ${formattedMonth(selectMonth.value - 1)}`;\n }\n\n function nextYearAriaLabel () {\n return `${i18n.$t('DIALTONE_DATEPICKER_CHANGE_TO')} ${i18n.$t('DIALTONE_DATEPICKER_NEXT_YEAR')} ${selectYear.value + 1}`;\n }\n\n function nextMonthAriaLabel () {\n return `${i18n.$t('DIALTONE_DATEPICKER_CHANGE_TO')} ${i18n.$t('DIALTONE_DATEPICKER_NEXT_MONTH')} ${formattedMonth(selectMonth.value + 1)}`;\n }\n\n return {\n selectMonth,\n selectYear,\n formattedMonth,\n setDayRef,\n focusMonthYearPicker,\n handleKeyDown,\n changeMonth,\n changeYear,\n goToNextMonth,\n goToPrevMonth,\n previousYearAriaLabel,\n previousMonthAriaLabel,\n nextYearAriaLabel,\n nextMonthAriaLabel,\n };\n}\n","<template>\n <dt-stack\n class=\"d-datepicker__month-year\"\n direction=\"row\"\n gap=\"300\"\n >\n <dt-stack\n as=\"nav\"\n class=\"d-datepicker__nav\"\n direction=\"row\"\n gap=\"200\"\n >\n <dt-tooltip\n :fallback-placements=\"['top-start', 'auto']\"\n :message=\"i18n.$t('DIALTONE_DATEPICKER_PREVIOUS_YEAR')\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n id=\"prevYearButton\"\n :ref=\"el => { if (el) setDayRef(el) }\"\n :aria-label=\"previousYearAriaLabel()\"\n :circle=\"true\"\n class=\"d-datepicker__nav-btn\"\n importance=\"clear\"\n kind=\"muted\"\n size=\"xs\"\n type=\"button\"\n @click=\"changeYear(-1)\"\n @keydown=\"handleKeyDown($event)\"\n >\n <dt-icon-chevrons-left\n size=\"200\"\n />\n </dt-button>\n </template>\n </dt-tooltip>\n <dt-tooltip\n :fallback-placements=\"['top-start', 'auto']\"\n :message=\"i18n.$t('DIALTONE_DATEPICKER_PREVIOUS_MONTH')\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n id=\"prevMonthButton\"\n :ref=\"el => { if (el) setDayRef(el) }\"\n :aria-label=\"previousMonthAriaLabel()\"\n :circle=\"true\"\n class=\"d-datepicker__nav-btn\"\n importance=\"clear\"\n kind=\"muted\"\n size=\"xs\"\n type=\"button\"\n @click=\"changeMonth(-1)\"\n @keydown=\"handleKeyDown($event)\"\n >\n <dt-icon-chevron-left\n size=\"200\"\n />\n </dt-button>\n </template>\n </dt-tooltip>\n </dt-stack>\n <div\n id=\"calendar-heading\"\n class=\"d-datepicker__month-year-title\"\n >\n {{ formattedMonth(selectMonth) }}\n\n {{ selectYear }}\n </div>\n <dt-stack\n as=\"nav\"\n class=\"d-datepicker__nav\"\n direction=\"row\"\n gap=\"200\"\n >\n <dt-tooltip\n :fallback-placements=\"['top-end', 'auto']\"\n :message=\"i18n.$t('DIALTONE_DATEPICKER_NEXT_MONTH')\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n id=\"nextMonthButton\"\n :ref=\"el => { if (el) setDayRef(el) }\"\n :aria-label=\"nextMonthAriaLabel()\"\n :circle=\"true\"\n class=\"d-datepicker__nav-btn\"\n importance=\"clear\"\n kind=\"muted\"\n size=\"xs\"\n type=\"button\"\n @click=\"changeMonth(1)\"\n @keydown=\"handleKeyDown($event)\"\n >\n <dt-icon-chevron-right\n size=\"200\"\n />\n </dt-button>\n </template>\n </dt-tooltip>\n <dt-tooltip\n :fallback-placements=\"['top-end', 'auto']\"\n :message=\"i18n.$t('DIALTONE_DATEPICKER_NEXT_YEAR')\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n id=\"nextYearButton\"\n :ref=\"el => { if (el) setDayRef(el) }\"\n :aria-label=\"nextYearAriaLabel()\"\n :circle=\"true\"\n class=\"d-datepicker__nav-btn\"\n importance=\"clear\"\n kind=\"muted\"\n size=\"xs\"\n type=\"button\"\n @click=\"changeYear(1)\"\n @keydown=\"handleKeyDown($event)\"\n >\n <dt-icon-chevrons-right\n size=\"200\"\n />\n </dt-button>\n </template>\n </dt-tooltip>\n </dt-stack>\n </dt-stack>\n</template>\n\n<script setup>\nimport {\n DtIconChevronLeft,\n DtIconChevronsLeft,\n DtIconChevronRight,\n DtIconChevronsRight,\n} from '@dialpad/dialtone-icons/vue3';\nimport { DtStack } from '@/components/stack';\nimport { DtButton } from '@/components/button';\nimport { DtTooltip } from '@/components/tooltip';\nimport { onMounted } from 'vue';\nimport { useMonthYearPicker } from '../composables/useMonthYearPicker.js';\nimport { DialtoneLocalization } from '@/localization';\n\nconst props = defineProps({\n selectedDate: {\n type: Date,\n required: true,\n },\n});\n\nconst emits = defineEmits([\n /**\n * Will retrieve the calendar days of the given date\n *\n * @event calendar-days\n * @type {Array}\n */\n 'calendar-days',\n\n /**\n * Will focus first day in calendar\n *\n * @event focus-first-day\n */\n 'focus-first-day',\n\n /**\n * Will focus last day in calendar\n *\n * @event focus-last-day\n */\n 'focus-last-day',\n\n /**\n * Will close the datepicker\n *\n * @event close-datepicker\n */\n 'close-datepicker',\n]);\n\nconst i18n = new DialtoneLocalization();\n\nconst {\n selectMonth,\n selectYear,\n formattedMonth,\n setDayRef,\n focusMonthYearPicker,\n handleKeyDown,\n changeMonth,\n changeYear,\n goToNextMonth,\n goToPrevMonth,\n previousYearAriaLabel,\n previousMonthAriaLabel,\n nextMonthAriaLabel,\n nextYearAriaLabel,\n} = useMonthYearPicker(props, emits);\n\nonMounted(() => {\n focusMonthYearPicker();\n});\n\ndefineExpose({\n focusMonthYearPicker,\n goToNextMonth,\n goToPrevMonth,\n});\n</script>\n","import { computed, ref, watch, nextTick } from 'vue';\nimport { getWeekDayNames, calculateNextFocusDate, calculatePrevFocusDate, formatDate } from '../utils.js';\nimport { INTL_MONTH_FORMAT, WEEK_START } from '../datepicker_constants.js';\nimport { returnFirstEl } from '@/common/utils';\nimport { DialtoneLocalization } from '@/localization';\n\nexport function useCalendar (props, emits) {\n const selectedDay = ref(null);\n const focusDay = ref(0);\n const daysRef = ref([]);\n const i18n = new DialtoneLocalization();\n\n const weekDays = computed(() => {\n return getWeekDayNames(props.locale, WEEK_START);\n });\n\n watch(() => props.calendarDays, () => {\n focusDay.value = 0;\n daysRef.value = [];\n selectedDay.value = null;\n });\n\n function dayAriaLabel (day) {\n return i18n.$t('DIALTONE_DATEPICKER_SELECT_DAY') + ` ${formatDate(day.value, INTL_MONTH_FORMAT, i18n.currentLocale)}`;\n }\n\n function setDayRef (el, day) {\n if (!daysRef.value.some(day => day.el === el) && day.currentMonth) {\n daysRef.value.push({ el, day });\n }\n }\n\n function handleKeyDown (event) {\n switch (event.key) {\n case 'ArrowUp':\n event.preventDefault();\n focusDay.value -= 7;\n try {\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n } catch {\n const prevFocusDate = calculatePrevFocusDate(daysRef.value[focusDay.value + 7].day.value);\n emits('go-to-prev-month');\n\n nextTick(() => {\n returnFirstEl(daysRef.value[prevFocusDate - 1].el.$el).focus();\n focusDay.value += prevFocusDate - 1;\n });\n }\n break;\n\n case 'ArrowDown':\n event.preventDefault();\n focusDay.value += 7;\n try {\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n } catch {\n const nextFocusDate = calculateNextFocusDate(daysRef.value[focusDay.value - 7].day.value);\n emits('go-to-next-month');\n\n nextTick(() => {\n returnFirstEl(daysRef.value[nextFocusDate - 1].el.$el).focus();\n focusDay.value += nextFocusDate - 1;\n });\n }\n break;\n\n case 'ArrowLeft':\n event.preventDefault();\n if (focusDay.value > 0) {\n focusDay.value -= 1;\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n } else {\n // if we are on month first day, jump to last day of prev month\n emits('go-to-prev-month');\n focusLastDay();\n }\n break;\n\n case 'ArrowRight':\n event.preventDefault();\n if (focusDay.value < daysRef.value.length - 1) {\n focusDay.value += 1;\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n } else {\n // if we are on month last day, jump to first day of next month\n emits('go-to-next-month');\n\n focusFirstDay();\n }\n break;\n\n case 'Tab':\n event.preventDefault();\n emits('focus-month-year-picker');\n break;\n\n case 'Escape':\n emits('close-datepicker');\n break;\n }\n }\n\n function focusFirstDay () {\n focusDay.value = 0;\n\n nextTick(() => {\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n });\n }\n\n function focusLastDay () {\n nextTick(() => {\n focusDay.value = daysRef.value.length - 1;\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n });\n }\n\n function selectDay (day) {\n if (!day.currentMonth) { return; }\n\n // local selectedDay is updated when a day is selected\n selectedDay.value = day.text;\n emits('select-date', day.value);\n }\n\n return {\n selectedDay,\n weekDays,\n dayAriaLabel,\n setDayRef,\n handleKeyDown,\n focusFirstDay,\n selectDay,\n };\n}\n","<template>\n <table\n class=\"d-datepicker__calendar\"\n aria-labelledby=\"calendar-heading\"\n >\n <thead>\n <tr>\n <th\n v-for=\"day in weekDays\"\n :key=\"day\"\n scope=\"col\"\n class=\"d-datepicker__cell d-datepicker__cell--header\"\n >\n <span\n class=\"d-datepicker__weekday\"\n :title=\"day\"\n :aria-label=\"day\"\n > {{ day }}</span>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr\n v-for=\"(week, indexWeek) in calendarDays\"\n :key=\"indexWeek\"\n >\n <td\n v-for=\"(day, indexDays) in week.days\"\n :key=\"indexWeek + indexDays\"\n class=\"d-datepicker__cell\"\n role=\"listbox\"\n >\n <dt-button\n :ref=\"el => { if (el) setDayRef(el, day) }\"\n class=\"d-datepicker__day\"\n :circle=\"true\"\n size=\"sm\"\n importance=\"clear\"\n :disabled=\"!day.currentMonth\"\n :class=\"{\n 'd-datepicker__day--disabled': !day.currentMonth,\n 'd-datepicker__day--selected': selectedDay\n ? ((day.text === selectedDay) && day.currentMonth)\n : day.selected,\n }\"\n type=\"button\"\n :aria-selected=\"!!selectedDay ? ((day.text === selectedDay) && day.currentMonth) : day.selected\"\n :aria-label=\"dayAriaLabel(day)\"\n role=\"option\"\n @click=\"selectDay(day)\"\n @keydown=\"handleKeyDown($event)\"\n >\n {{ day.text }}\n </dt-button>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script setup>\nimport { useCalendar } from '../composables/useCalendar.js';\nimport { DtButton } from '@/components/button';\n\nconst props = defineProps({\n calendarDays: {\n type: Array,\n required: true,\n },\n});\n\nconst emits = defineEmits([\n /**\n * Event fired when a date is selected\n *\n * @event select-date\n * @type {Date}\n */\n 'select-date',\n\n /**\n * Will focus the month and year picker\n *\n * @event focus-month-year-picker\n */\n 'focus-month-year-picker',\n\n /**\n * Will close the datepicker\n *\n * @event close-datepicker\n */\n 'close-datepicker',\n\n /**\n * Will go to the next month\n *\n * @event go-to-next-month\n */\n 'go-to-next-month',\n\n /**\n * Will go to the previous month\n *\n * @event go-to-prev-month\n */\n 'go-to-prev-month',\n]);\n\nconst {\n selectedDay,\n weekDays,\n dayAriaLabel,\n setDayRef,\n handleKeyDown,\n focusFirstDay,\n selectDay,\n} = useCalendar(props, emits);\n\ndefineExpose({\n focusFirstDay,\n});\n</script>\n","<!-- eslint-disable vue/multi-word-component-names -->\n<template>\n <dt-stack\n class=\"d-datepicker\"\n gap=\"400\"\n >\n <div class=\"d-datepicker__hd\">\n <month-year-picker\n ref=\"monthYearPicker\"\n :selected-date=\"selectedDate\"\n @calendar-days=\"updateCalendarDays\"\n @focus-first-day=\"$refs.calendar.focusFirstDay()\"\n @focus-last-day=\"$refs.calendar.focusLastDay()\"\n @close-datepicker=\"$emit('close-datepicker')\"\n />\n </div>\n <div class=\"d-datepicker__bd\">\n <calendar\n ref=\"calendar\"\n :calendar-days=\"calendarDays\"\n @select-date=\"$emit('selected-date', $event)\"\n @focus-month-year-picker=\"$refs.monthYearPicker.focusMonthYearPicker()\"\n @close-datepicker=\"$emit('close-datepicker')\"\n @go-to-next-month=\"$refs.monthYearPicker.goToNextMonth()\"\n @go-to-prev-month=\"$refs.monthYearPicker.goToPrevMonth()\"\n />\n </div>\n </dt-stack>\n</template>\n\n<script setup>\nimport MonthYearPicker from './modules/month-year-picker.vue';\nimport Calendar from './modules/calendar.vue';\nimport { DtStack } from '@/components/stack';\nimport { returnFirstEl, warnIfUnmounted } from '@/common/utils';\nimport { onMounted, ref, getCurrentInstance } from 'vue';\n\ndefineProps({\n /**\n * Selected date\n *\n * @type {Date}\n */\n selectedDate: {\n type: Date,\n default: () => (new Date()),\n },\n});\n\ndefineEmits([\n /**\n * Event fired when a date is selected\n *\n * @event selected-date\n * @type {Date}\n */\n 'selected-date',\n\n /**\n * Event fired when user presses the esc key\n *\n * @event close-datepicker\n */\n 'close-datepicker',\n]);\n\nconst calendarDays = ref([]);\n\nfunction updateCalendarDays (days) {\n calendarDays.value = days;\n}\n\nonMounted(() => {\n const instance = getCurrentInstance();\n warnIfUnmounted(returnFirstEl(instance.proxy.$el), 'datepicker');\n});\n</script>\n"],"names":["useMonthYearPicker","props","emits","selectMonth","ref","getMonth","selectYear","getYear","highlightedDay","focusPicker","focusRefs","i18n","DialtoneLocalization","calendarDays","computed","getCalendarDays","watch","highlightDay","formattedMonth","month","formatMonth","INTL_MONTH_FORMAT","setDayRef","el","focusMonthYearPicker","returnFirstEl","handleKeyDown","event","year","getDate","changeMonth","value","initialDate","set","newDate","addMonths","subMonths","changeYear","goToNextMonth","goToPrevMonth","previousYearAriaLabel","previousMonthAriaLabel","nextYearAriaLabel","nextMonthAriaLabel","__props","__emit","onMounted","__expose","useCalendar","selectedDay","focusDay","daysRef","weekDays","getWeekDayNames","WEEK_START","dayAriaLabel","day","formatDate","prevFocusDate","calculatePrevFocusDate","nextTick","nextFocusDate","calculateNextFocusDate","focusLastDay","focusFirstDay","selectDay","updateCalendarDays","days","instance","getCurrentInstance","warnIfUnmounted"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { ref as E, computed as B, watch as F, onMounted as V, openBlock as $, createBlock as G, unref as e, withCtx as m, createVNode as i, createElementVNode as M, toDisplayString as P, nextTick as N, createElementBlock as g, Fragment as x, renderList as Y, normalizeClass as q, createTextVNode as W, getCurrentInstance as j } from "vue";
1
+ import { ref as E, computed as B, watch as F, onMounted as V, createBlock as G, openBlock as $, unref as e, withCtx as m, createVNode as i, createElementVNode as M, toDisplayString as P, nextTick as N, createElementBlock as g, Fragment as x, renderList as Y, normalizeClass as q, createTextVNode as W, getCurrentInstance as j } from "vue";
2
2
  import { DtIconChevronsLeft as J, DtIconChevronLeft as Q, DtIconChevronRight as Z, DtIconChevronsRight as ee } from "@dialpad/dialtone-icons/vue3";
3
3
  import { getMonth as K, getYear as S, getDate as te, set as ae, addMonths as ne, subMonths as re } from "date-fns";
4
- import { getCalendarDays as le, formatMonth as oe, getWeekDayNames as se, formatDate as ce, calculateNextFocusDate as ue, calculatePrevFocusDate as ie } from "./utils.js";
4
+ import { getCalendarDays as le, formatMonth as oe, getWeekDayNames as se, calculateNextFocusDate as ce, calculatePrevFocusDate as ue, formatDate as ie } from "./utils.js";
5
5
  import { INTL_MONTH_FORMAT as U, WEEK_START as de } from "./datepicker-constants.js";
6
6
  import { returnFirstEl as p, warnIfUnmounted as fe } from "../../common/utils/index.js";
7
7
  import { DialtoneLocalization as z } from "../../localization/index.js";
@@ -305,7 +305,7 @@ function me(d, s) {
305
305
  t.value = 0, n.value = [], c.value = null;
306
306
  });
307
307
  function v(l) {
308
- return r.$t("DIALTONE_DATEPICKER_SELECT_DAY") + ` ${ce(l.value, U, r.currentLocale)}`;
308
+ return r.$t("DIALTONE_DATEPICKER_SELECT_DAY") + ` ${ie(l.value, U, r.currentLocale)}`;
309
309
  }
310
310
  function b(l, o) {
311
311
  !n.value.some((T) => T.el === l) && o.currentMonth && n.value.push({ el: l, day: o });
@@ -317,7 +317,7 @@ function me(d, s) {
317
317
  try {
318
318
  p(n.value[t.value].el.$el).focus();
319
319
  } catch {
320
- const o = ie(n.value[t.value + 7].day.value);
320
+ const o = ue(n.value[t.value + 7].day.value);
321
321
  s("go-to-prev-month"), N(() => {
322
322
  p(n.value[o - 1].el.$el).focus(), t.value += o - 1;
323
323
  });
@@ -328,7 +328,7 @@ function me(d, s) {
328
328
  try {
329
329
  p(n.value[t.value].el.$el).focus();
330
330
  } catch {
331
- const o = ue(n.value[t.value - 7].day.value);
331
+ const o = ce(n.value[t.value - 7].day.value);
332
332
  s("go-to-next-month"), N(() => {
333
333
  p(n.value[o - 1].el.$el).focus(), t.value += o - 1;
334
334
  });
@@ -1 +1 @@
1
- {"version":3,"file":"datepicker.js","sources":["../../../components/datepicker/composables/useMonthYearPicker.js","../../../components/datepicker/modules/month-year-picker.vue","../../../components/datepicker/composables/useCalendar.js","../../../components/datepicker/modules/calendar.vue","../../../components/datepicker/datepicker.vue"],"sourcesContent":["import { computed, ref, watch } from 'vue';\nimport { addMonths, getDate, getMonth, getYear, set, subMonths } from 'date-fns';\nimport { formatMonth, getCalendarDays } from '../utils.js';\nimport { INTL_MONTH_FORMAT } from '../datepicker_constants';\nimport { returnFirstEl } from '@/common/utils';\nimport { DialtoneLocalization } from '@/localization';\n\nexport function useMonthYearPicker (props, emits) {\n const selectMonth = ref(getMonth(props.selectedDate));\n const selectYear = ref(getYear(props.selectedDate));\n const highlightedDay = ref(null);\n const focusPicker = ref(0);\n const focusRefs = ref([]);\n const i18n = new DialtoneLocalization();\n\n const calendarDays = computed(() => {\n return getCalendarDays(selectMonth.value, selectYear.value, highlightedDay.value);\n });\n\n watch(selectMonth, () => {\n highlightDay();\n emits('calendar-days', calendarDays.value);\n }, { immediate: true });\n\n watch(selectYear, () => {\n highlightDay();\n emits('calendar-days', calendarDays.value);\n }, { immediate: true });\n\n function formattedMonth (month) {\n return formatMonth(month, INTL_MONTH_FORMAT, i18n.currentLocale);\n }\n\n function setDayRef (el) {\n if (!focusRefs.value.includes(el)) {\n focusRefs.value.push(el);\n }\n }\n\n function focusMonthYearPicker () {\n returnFirstEl(focusRefs.value[0].$el).focus();\n }\n\n function handleKeyDown (event) {\n switch (event.key) {\n case 'ArrowLeft':\n event.preventDefault();\n if (focusPicker.value === 0) {\n focusPicker.value = 3;\n returnFirstEl(focusRefs.value[focusPicker.value].$el).focus();\n } else {\n focusPicker.value--;\n returnFirstEl(focusRefs.value[focusPicker.value].$el).focus();\n }\n break;\n\n case 'ArrowRight':\n event.preventDefault();\n if (focusPicker.value === 3) {\n focusPicker.value = 0;\n returnFirstEl(focusRefs.value[focusPicker.value].$el).focus();\n } else {\n focusPicker.value++;\n returnFirstEl(focusRefs.value[focusPicker.value].$el).focus();\n }\n break;\n\n case 'ArrowDown':\n event.preventDefault();\n emits('focus-first-day');\n break;\n\n case 'Tab':\n event.preventDefault();\n emits('focus-first-day');\n break;\n\n case 'Escape':\n emits('close-datepicker');\n break;\n }\n }\n\n function highlightDay () {\n const year = getYear(props.selectedDate);\n const month = getMonth(props.selectedDate);\n\n if (year !== selectYear.value || month !== selectMonth.value) {\n highlightedDay.value = null;\n } else {\n highlightedDay.value = getDate(props.selectedDate);\n }\n }\n\n function changeMonth (value) {\n // Adjust year when changing from January to December or vice versa\n if ((selectMonth.value === 0 && value === -1) || (selectMonth.value === 11 && value === 1)) {\n selectYear.value += value;\n }\n\n // Calculate the new date by adding or subtracting months\n const initialDate = set(props.selectedDate, { month: selectMonth.value, year: selectYear.value });\n const newDate = value === 1 ? addMonths(initialDate, 1) : subMonths(initialDate, 1);\n\n // Update the selected month\n selectMonth.value = getMonth(newDate);\n }\n\n function changeYear (value) {\n selectYear.value = selectYear.value + value;\n }\n\n function goToNextMonth () {\n changeMonth(1);\n }\n\n function goToPrevMonth () {\n changeMonth(-1);\n }\n\n function previousYearAriaLabel () {\n return `${i18n.$t('DIALTONE_DATEPICKER_CHANGE_TO')} ${i18n.$t('DIALTONE_DATEPICKER_PREVIOUS_YEAR')} ${selectYear.value - 1}`;\n }\n\n function previousMonthAriaLabel () {\n return `${i18n.$t('DIALTONE_DATEPICKER_CHANGE_TO')} ${i18n.$t('DIALTONE_DATEPICKER_PREVIOUS_MONTH')} ${formattedMonth(selectMonth.value - 1)}`;\n }\n\n function nextYearAriaLabel () {\n return `${i18n.$t('DIALTONE_DATEPICKER_CHANGE_TO')} ${i18n.$t('DIALTONE_DATEPICKER_NEXT_YEAR')} ${selectYear.value + 1}`;\n }\n\n function nextMonthAriaLabel () {\n return `${i18n.$t('DIALTONE_DATEPICKER_CHANGE_TO')} ${i18n.$t('DIALTONE_DATEPICKER_NEXT_MONTH')} ${formattedMonth(selectMonth.value + 1)}`;\n }\n\n return {\n selectMonth,\n selectYear,\n formattedMonth,\n setDayRef,\n focusMonthYearPicker,\n handleKeyDown,\n changeMonth,\n changeYear,\n goToNextMonth,\n goToPrevMonth,\n previousYearAriaLabel,\n previousMonthAriaLabel,\n nextYearAriaLabel,\n nextMonthAriaLabel,\n };\n}\n","<template>\n <dt-stack\n class=\"d-datepicker__month-year\"\n direction=\"row\"\n gap=\"300\"\n >\n <dt-stack\n as=\"nav\"\n class=\"d-datepicker__nav\"\n direction=\"row\"\n gap=\"200\"\n >\n <dt-tooltip\n :fallback-placements=\"['top-start', 'auto']\"\n :message=\"i18n.$t('DIALTONE_DATEPICKER_PREVIOUS_YEAR')\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n id=\"prevYearButton\"\n :ref=\"el => { if (el) setDayRef(el) }\"\n :aria-label=\"previousYearAriaLabel()\"\n :circle=\"true\"\n class=\"d-datepicker__nav-btn\"\n importance=\"clear\"\n kind=\"muted\"\n size=\"xs\"\n type=\"button\"\n @click=\"changeYear(-1)\"\n @keydown=\"handleKeyDown($event)\"\n >\n <dt-icon-chevrons-left\n size=\"200\"\n />\n </dt-button>\n </template>\n </dt-tooltip>\n <dt-tooltip\n :fallback-placements=\"['top-start', 'auto']\"\n :message=\"i18n.$t('DIALTONE_DATEPICKER_PREVIOUS_MONTH')\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n id=\"prevMonthButton\"\n :ref=\"el => { if (el) setDayRef(el) }\"\n :aria-label=\"previousMonthAriaLabel()\"\n :circle=\"true\"\n class=\"d-datepicker__nav-btn\"\n importance=\"clear\"\n kind=\"muted\"\n size=\"xs\"\n type=\"button\"\n @click=\"changeMonth(-1)\"\n @keydown=\"handleKeyDown($event)\"\n >\n <dt-icon-chevron-left\n size=\"200\"\n />\n </dt-button>\n </template>\n </dt-tooltip>\n </dt-stack>\n <div\n id=\"calendar-heading\"\n class=\"d-datepicker__month-year-title\"\n >\n {{ formattedMonth(selectMonth) }}\n\n {{ selectYear }}\n </div>\n <dt-stack\n as=\"nav\"\n class=\"d-datepicker__nav\"\n direction=\"row\"\n gap=\"200\"\n >\n <dt-tooltip\n :fallback-placements=\"['top-end', 'auto']\"\n :message=\"i18n.$t('DIALTONE_DATEPICKER_NEXT_MONTH')\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n id=\"nextMonthButton\"\n :ref=\"el => { if (el) setDayRef(el) }\"\n :aria-label=\"nextMonthAriaLabel()\"\n :circle=\"true\"\n class=\"d-datepicker__nav-btn\"\n importance=\"clear\"\n kind=\"muted\"\n size=\"xs\"\n type=\"button\"\n @click=\"changeMonth(1)\"\n @keydown=\"handleKeyDown($event)\"\n >\n <dt-icon-chevron-right\n size=\"200\"\n />\n </dt-button>\n </template>\n </dt-tooltip>\n <dt-tooltip\n :fallback-placements=\"['top-end', 'auto']\"\n :message=\"i18n.$t('DIALTONE_DATEPICKER_NEXT_YEAR')\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n id=\"nextYearButton\"\n :ref=\"el => { if (el) setDayRef(el) }\"\n :aria-label=\"nextYearAriaLabel()\"\n :circle=\"true\"\n class=\"d-datepicker__nav-btn\"\n importance=\"clear\"\n kind=\"muted\"\n size=\"xs\"\n type=\"button\"\n @click=\"changeYear(1)\"\n @keydown=\"handleKeyDown($event)\"\n >\n <dt-icon-chevrons-right\n size=\"200\"\n />\n </dt-button>\n </template>\n </dt-tooltip>\n </dt-stack>\n </dt-stack>\n</template>\n\n<script setup>\nimport {\n DtIconChevronLeft,\n DtIconChevronsLeft,\n DtIconChevronRight,\n DtIconChevronsRight,\n} from '@dialpad/dialtone-icons/vue3';\nimport { DtStack } from '@/components/stack';\nimport { DtButton } from '@/components/button';\nimport { DtTooltip } from '@/components/tooltip';\nimport { onMounted } from 'vue';\nimport { useMonthYearPicker } from '../composables/useMonthYearPicker.js';\nimport { DialtoneLocalization } from '@/localization';\n\nconst props = defineProps({\n selectedDate: {\n type: Date,\n required: true,\n },\n});\n\nconst emits = defineEmits([\n /**\n * Will retrieve the calendar days of the given date\n *\n * @event calendar-days\n * @type {Array}\n */\n 'calendar-days',\n\n /**\n * Will focus first day in calendar\n *\n * @event focus-first-day\n */\n 'focus-first-day',\n\n /**\n * Will focus last day in calendar\n *\n * @event focus-last-day\n */\n 'focus-last-day',\n\n /**\n * Will close the datepicker\n *\n * @event close-datepicker\n */\n 'close-datepicker',\n]);\n\nconst i18n = new DialtoneLocalization();\n\nconst {\n selectMonth,\n selectYear,\n formattedMonth,\n setDayRef,\n focusMonthYearPicker,\n handleKeyDown,\n changeMonth,\n changeYear,\n goToNextMonth,\n goToPrevMonth,\n previousYearAriaLabel,\n previousMonthAriaLabel,\n nextMonthAriaLabel,\n nextYearAriaLabel,\n} = useMonthYearPicker(props, emits);\n\nonMounted(() => {\n focusMonthYearPicker();\n});\n\ndefineExpose({\n focusMonthYearPicker,\n goToNextMonth,\n goToPrevMonth,\n});\n</script>\n","import { computed, ref, watch, nextTick } from 'vue';\nimport { getWeekDayNames, calculateNextFocusDate, calculatePrevFocusDate, formatDate } from '../utils.js';\nimport { INTL_MONTH_FORMAT, WEEK_START } from '../datepicker_constants.js';\nimport { returnFirstEl } from '@/common/utils';\nimport { DialtoneLocalization } from '@/localization';\n\nexport function useCalendar (props, emits) {\n const selectedDay = ref(null);\n const focusDay = ref(0);\n const daysRef = ref([]);\n const i18n = new DialtoneLocalization();\n\n const weekDays = computed(() => {\n return getWeekDayNames(props.locale, WEEK_START);\n });\n\n watch(() => props.calendarDays, () => {\n focusDay.value = 0;\n daysRef.value = [];\n selectedDay.value = null;\n });\n\n function dayAriaLabel (day) {\n return i18n.$t('DIALTONE_DATEPICKER_SELECT_DAY') + ` ${formatDate(day.value, INTL_MONTH_FORMAT, i18n.currentLocale)}`;\n }\n\n function setDayRef (el, day) {\n if (!daysRef.value.some(day => day.el === el) && day.currentMonth) {\n daysRef.value.push({ el, day });\n }\n }\n\n function handleKeyDown (event) {\n switch (event.key) {\n case 'ArrowUp':\n event.preventDefault();\n focusDay.value -= 7;\n try {\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n } catch {\n const prevFocusDate = calculatePrevFocusDate(daysRef.value[focusDay.value + 7].day.value);\n emits('go-to-prev-month');\n\n nextTick(() => {\n returnFirstEl(daysRef.value[prevFocusDate - 1].el.$el).focus();\n focusDay.value += prevFocusDate - 1;\n });\n }\n break;\n\n case 'ArrowDown':\n event.preventDefault();\n focusDay.value += 7;\n try {\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n } catch {\n const nextFocusDate = calculateNextFocusDate(daysRef.value[focusDay.value - 7].day.value);\n emits('go-to-next-month');\n\n nextTick(() => {\n returnFirstEl(daysRef.value[nextFocusDate - 1].el.$el).focus();\n focusDay.value += nextFocusDate - 1;\n });\n }\n break;\n\n case 'ArrowLeft':\n event.preventDefault();\n if (focusDay.value > 0) {\n focusDay.value -= 1;\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n } else {\n // if we are on month first day, jump to last day of prev month\n emits('go-to-prev-month');\n focusLastDay();\n }\n break;\n\n case 'ArrowRight':\n event.preventDefault();\n if (focusDay.value < daysRef.value.length - 1) {\n focusDay.value += 1;\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n } else {\n // if we are on month last day, jump to first day of next month\n emits('go-to-next-month');\n\n focusFirstDay();\n }\n break;\n\n case 'Tab':\n event.preventDefault();\n emits('focus-month-year-picker');\n break;\n\n case 'Escape':\n emits('close-datepicker');\n break;\n }\n }\n\n function focusFirstDay () {\n focusDay.value = 0;\n\n nextTick(() => {\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n });\n }\n\n function focusLastDay () {\n nextTick(() => {\n focusDay.value = daysRef.value.length - 1;\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n });\n }\n\n function selectDay (day) {\n if (!day.currentMonth) { return; }\n\n // local selectedDay is updated when a day is selected\n selectedDay.value = day.text;\n emits('select-date', day.value);\n }\n\n return {\n selectedDay,\n weekDays,\n dayAriaLabel,\n setDayRef,\n handleKeyDown,\n focusFirstDay,\n selectDay,\n };\n}\n","<template>\n <table\n class=\"d-datepicker__calendar\"\n aria-labelledby=\"calendar-heading\"\n >\n <thead>\n <tr>\n <th\n v-for=\"day in weekDays\"\n :key=\"day\"\n scope=\"col\"\n class=\"d-datepicker__cell d-datepicker__cell--header\"\n >\n <span\n class=\"d-datepicker__weekday\"\n :title=\"day\"\n :aria-label=\"day\"\n > {{ day }}</span>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr\n v-for=\"(week, indexWeek) in calendarDays\"\n :key=\"indexWeek\"\n >\n <td\n v-for=\"(day, indexDays) in week.days\"\n :key=\"indexWeek + indexDays\"\n class=\"d-datepicker__cell\"\n role=\"listbox\"\n >\n <dt-button\n :ref=\"el => { if (el) setDayRef(el, day) }\"\n class=\"d-datepicker__day\"\n :circle=\"true\"\n size=\"sm\"\n importance=\"clear\"\n :disabled=\"!day.currentMonth\"\n :class=\"{\n 'd-datepicker__day--disabled': !day.currentMonth,\n 'd-datepicker__day--selected': selectedDay\n ? ((day.text === selectedDay) && day.currentMonth)\n : day.selected,\n }\"\n type=\"button\"\n :aria-selected=\"!!selectedDay ? ((day.text === selectedDay) && day.currentMonth) : day.selected\"\n :aria-label=\"dayAriaLabel(day)\"\n role=\"option\"\n @click=\"selectDay(day)\"\n @keydown=\"handleKeyDown($event)\"\n >\n {{ day.text }}\n </dt-button>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script setup>\nimport { useCalendar } from '../composables/useCalendar.js';\nimport { DtButton } from '@/components/button';\n\nconst props = defineProps({\n calendarDays: {\n type: Array,\n required: true,\n },\n});\n\nconst emits = defineEmits([\n /**\n * Event fired when a date is selected\n *\n * @event select-date\n * @type {Date}\n */\n 'select-date',\n\n /**\n * Will focus the month and year picker\n *\n * @event focus-month-year-picker\n */\n 'focus-month-year-picker',\n\n /**\n * Will close the datepicker\n *\n * @event close-datepicker\n */\n 'close-datepicker',\n\n /**\n * Will go to the next month\n *\n * @event go-to-next-month\n */\n 'go-to-next-month',\n\n /**\n * Will go to the previous month\n *\n * @event go-to-prev-month\n */\n 'go-to-prev-month',\n]);\n\nconst {\n selectedDay,\n weekDays,\n dayAriaLabel,\n setDayRef,\n handleKeyDown,\n focusFirstDay,\n selectDay,\n} = useCalendar(props, emits);\n\ndefineExpose({\n focusFirstDay,\n});\n</script>\n","<!-- eslint-disable vue/multi-word-component-names -->\n<template>\n <dt-stack\n class=\"d-datepicker\"\n gap=\"400\"\n >\n <div class=\"d-datepicker__hd\">\n <month-year-picker\n ref=\"monthYearPicker\"\n :selected-date=\"selectedDate\"\n @calendar-days=\"updateCalendarDays\"\n @focus-first-day=\"$refs.calendar.focusFirstDay()\"\n @focus-last-day=\"$refs.calendar.focusLastDay()\"\n @close-datepicker=\"$emit('close-datepicker')\"\n />\n </div>\n <div class=\"d-datepicker__bd\">\n <calendar\n ref=\"calendar\"\n :calendar-days=\"calendarDays\"\n @select-date=\"$emit('selected-date', $event)\"\n @focus-month-year-picker=\"$refs.monthYearPicker.focusMonthYearPicker()\"\n @close-datepicker=\"$emit('close-datepicker')\"\n @go-to-next-month=\"$refs.monthYearPicker.goToNextMonth()\"\n @go-to-prev-month=\"$refs.monthYearPicker.goToPrevMonth()\"\n />\n </div>\n </dt-stack>\n</template>\n\n<script setup>\nimport MonthYearPicker from './modules/month-year-picker.vue';\nimport Calendar from './modules/calendar.vue';\nimport { DtStack } from '@/components/stack';\nimport { returnFirstEl, warnIfUnmounted } from '@/common/utils';\nimport { onMounted, ref, getCurrentInstance } from 'vue';\n\ndefineProps({\n /**\n * Selected date\n *\n * @type {Date}\n */\n selectedDate: {\n type: Date,\n default: () => (new Date()),\n },\n});\n\ndefineEmits([\n /**\n * Event fired when a date is selected\n *\n * @event selected-date\n * @type {Date}\n */\n 'selected-date',\n\n /**\n * Event fired when user presses the esc key\n *\n * @event close-datepicker\n */\n 'close-datepicker',\n]);\n\nconst calendarDays = ref([]);\n\nfunction updateCalendarDays (days) {\n calendarDays.value = days;\n}\n\nonMounted(() => {\n const instance = getCurrentInstance();\n warnIfUnmounted(returnFirstEl(instance.proxy.$el), 'datepicker');\n});\n</script>\n"],"names":["useMonthYearPicker","props","emits","selectMonth","ref","getMonth","selectYear","getYear","highlightedDay","focusPicker","focusRefs","i18n","DialtoneLocalization","calendarDays","computed","getCalendarDays","watch","highlightDay","formattedMonth","month","formatMonth","INTL_MONTH_FORMAT","setDayRef","el","focusMonthYearPicker","returnFirstEl","handleKeyDown","event","year","getDate","changeMonth","value","initialDate","set","newDate","addMonths","subMonths","changeYear","goToNextMonth","goToPrevMonth","previousYearAriaLabel","previousMonthAriaLabel","nextYearAriaLabel","nextMonthAriaLabel","__props","__emit","onMounted","__expose","useCalendar","selectedDay","focusDay","daysRef","weekDays","getWeekDayNames","WEEK_START","dayAriaLabel","day","formatDate","prevFocusDate","calculatePrevFocusDate","nextTick","nextFocusDate","calculateNextFocusDate","focusLastDay","focusFirstDay","selectDay","updateCalendarDays","days","instance","getCurrentInstance","warnIfUnmounted"],"mappings":"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"}
1
+ {"version":3,"file":"datepicker.js","sources":["../../../components/datepicker/composables/useMonthYearPicker.js","../../../components/datepicker/modules/month-year-picker.vue","../../../components/datepicker/composables/useCalendar.js","../../../components/datepicker/modules/calendar.vue","../../../components/datepicker/datepicker.vue"],"sourcesContent":["import { computed, ref, watch } from 'vue';\nimport { addMonths, getDate, getMonth, getYear, set, subMonths } from 'date-fns';\nimport { formatMonth, getCalendarDays } from '../utils.js';\nimport { INTL_MONTH_FORMAT } from '../datepicker_constants';\nimport { returnFirstEl } from '@/common/utils';\nimport { DialtoneLocalization } from '@/localization';\n\nexport function useMonthYearPicker (props, emits) {\n const selectMonth = ref(getMonth(props.selectedDate));\n const selectYear = ref(getYear(props.selectedDate));\n const highlightedDay = ref(null);\n const focusPicker = ref(0);\n const focusRefs = ref([]);\n const i18n = new DialtoneLocalization();\n\n const calendarDays = computed(() => {\n return getCalendarDays(selectMonth.value, selectYear.value, highlightedDay.value);\n });\n\n watch(selectMonth, () => {\n highlightDay();\n emits('calendar-days', calendarDays.value);\n }, { immediate: true });\n\n watch(selectYear, () => {\n highlightDay();\n emits('calendar-days', calendarDays.value);\n }, { immediate: true });\n\n function formattedMonth (month) {\n return formatMonth(month, INTL_MONTH_FORMAT, i18n.currentLocale);\n }\n\n function setDayRef (el) {\n if (!focusRefs.value.includes(el)) {\n focusRefs.value.push(el);\n }\n }\n\n function focusMonthYearPicker () {\n returnFirstEl(focusRefs.value[0].$el).focus();\n }\n\n function handleKeyDown (event) {\n switch (event.key) {\n case 'ArrowLeft':\n event.preventDefault();\n if (focusPicker.value === 0) {\n focusPicker.value = 3;\n returnFirstEl(focusRefs.value[focusPicker.value].$el).focus();\n } else {\n focusPicker.value--;\n returnFirstEl(focusRefs.value[focusPicker.value].$el).focus();\n }\n break;\n\n case 'ArrowRight':\n event.preventDefault();\n if (focusPicker.value === 3) {\n focusPicker.value = 0;\n returnFirstEl(focusRefs.value[focusPicker.value].$el).focus();\n } else {\n focusPicker.value++;\n returnFirstEl(focusRefs.value[focusPicker.value].$el).focus();\n }\n break;\n\n case 'ArrowDown':\n event.preventDefault();\n emits('focus-first-day');\n break;\n\n case 'Tab':\n event.preventDefault();\n emits('focus-first-day');\n break;\n\n case 'Escape':\n emits('close-datepicker');\n break;\n }\n }\n\n function highlightDay () {\n const year = getYear(props.selectedDate);\n const month = getMonth(props.selectedDate);\n\n if (year !== selectYear.value || month !== selectMonth.value) {\n highlightedDay.value = null;\n } else {\n highlightedDay.value = getDate(props.selectedDate);\n }\n }\n\n function changeMonth (value) {\n // Adjust year when changing from January to December or vice versa\n if ((selectMonth.value === 0 && value === -1) || (selectMonth.value === 11 && value === 1)) {\n selectYear.value += value;\n }\n\n // Calculate the new date by adding or subtracting months\n const initialDate = set(props.selectedDate, { month: selectMonth.value, year: selectYear.value });\n const newDate = value === 1 ? addMonths(initialDate, 1) : subMonths(initialDate, 1);\n\n // Update the selected month\n selectMonth.value = getMonth(newDate);\n }\n\n function changeYear (value) {\n selectYear.value = selectYear.value + value;\n }\n\n function goToNextMonth () {\n changeMonth(1);\n }\n\n function goToPrevMonth () {\n changeMonth(-1);\n }\n\n function previousYearAriaLabel () {\n return `${i18n.$t('DIALTONE_DATEPICKER_CHANGE_TO')} ${i18n.$t('DIALTONE_DATEPICKER_PREVIOUS_YEAR')} ${selectYear.value - 1}`;\n }\n\n function previousMonthAriaLabel () {\n return `${i18n.$t('DIALTONE_DATEPICKER_CHANGE_TO')} ${i18n.$t('DIALTONE_DATEPICKER_PREVIOUS_MONTH')} ${formattedMonth(selectMonth.value - 1)}`;\n }\n\n function nextYearAriaLabel () {\n return `${i18n.$t('DIALTONE_DATEPICKER_CHANGE_TO')} ${i18n.$t('DIALTONE_DATEPICKER_NEXT_YEAR')} ${selectYear.value + 1}`;\n }\n\n function nextMonthAriaLabel () {\n return `${i18n.$t('DIALTONE_DATEPICKER_CHANGE_TO')} ${i18n.$t('DIALTONE_DATEPICKER_NEXT_MONTH')} ${formattedMonth(selectMonth.value + 1)}`;\n }\n\n return {\n selectMonth,\n selectYear,\n formattedMonth,\n setDayRef,\n focusMonthYearPicker,\n handleKeyDown,\n changeMonth,\n changeYear,\n goToNextMonth,\n goToPrevMonth,\n previousYearAriaLabel,\n previousMonthAriaLabel,\n nextYearAriaLabel,\n nextMonthAriaLabel,\n };\n}\n","<template>\n <dt-stack\n class=\"d-datepicker__month-year\"\n direction=\"row\"\n gap=\"300\"\n >\n <dt-stack\n as=\"nav\"\n class=\"d-datepicker__nav\"\n direction=\"row\"\n gap=\"200\"\n >\n <dt-tooltip\n :fallback-placements=\"['top-start', 'auto']\"\n :message=\"i18n.$t('DIALTONE_DATEPICKER_PREVIOUS_YEAR')\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n id=\"prevYearButton\"\n :ref=\"el => { if (el) setDayRef(el) }\"\n :aria-label=\"previousYearAriaLabel()\"\n :circle=\"true\"\n class=\"d-datepicker__nav-btn\"\n importance=\"clear\"\n kind=\"muted\"\n size=\"xs\"\n type=\"button\"\n @click=\"changeYear(-1)\"\n @keydown=\"handleKeyDown($event)\"\n >\n <dt-icon-chevrons-left\n size=\"200\"\n />\n </dt-button>\n </template>\n </dt-tooltip>\n <dt-tooltip\n :fallback-placements=\"['top-start', 'auto']\"\n :message=\"i18n.$t('DIALTONE_DATEPICKER_PREVIOUS_MONTH')\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n id=\"prevMonthButton\"\n :ref=\"el => { if (el) setDayRef(el) }\"\n :aria-label=\"previousMonthAriaLabel()\"\n :circle=\"true\"\n class=\"d-datepicker__nav-btn\"\n importance=\"clear\"\n kind=\"muted\"\n size=\"xs\"\n type=\"button\"\n @click=\"changeMonth(-1)\"\n @keydown=\"handleKeyDown($event)\"\n >\n <dt-icon-chevron-left\n size=\"200\"\n />\n </dt-button>\n </template>\n </dt-tooltip>\n </dt-stack>\n <div\n id=\"calendar-heading\"\n class=\"d-datepicker__month-year-title\"\n >\n {{ formattedMonth(selectMonth) }}\n\n {{ selectYear }}\n </div>\n <dt-stack\n as=\"nav\"\n class=\"d-datepicker__nav\"\n direction=\"row\"\n gap=\"200\"\n >\n <dt-tooltip\n :fallback-placements=\"['top-end', 'auto']\"\n :message=\"i18n.$t('DIALTONE_DATEPICKER_NEXT_MONTH')\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n id=\"nextMonthButton\"\n :ref=\"el => { if (el) setDayRef(el) }\"\n :aria-label=\"nextMonthAriaLabel()\"\n :circle=\"true\"\n class=\"d-datepicker__nav-btn\"\n importance=\"clear\"\n kind=\"muted\"\n size=\"xs\"\n type=\"button\"\n @click=\"changeMonth(1)\"\n @keydown=\"handleKeyDown($event)\"\n >\n <dt-icon-chevron-right\n size=\"200\"\n />\n </dt-button>\n </template>\n </dt-tooltip>\n <dt-tooltip\n :fallback-placements=\"['top-end', 'auto']\"\n :message=\"i18n.$t('DIALTONE_DATEPICKER_NEXT_YEAR')\"\n placement=\"top\"\n >\n <template #anchor>\n <dt-button\n id=\"nextYearButton\"\n :ref=\"el => { if (el) setDayRef(el) }\"\n :aria-label=\"nextYearAriaLabel()\"\n :circle=\"true\"\n class=\"d-datepicker__nav-btn\"\n importance=\"clear\"\n kind=\"muted\"\n size=\"xs\"\n type=\"button\"\n @click=\"changeYear(1)\"\n @keydown=\"handleKeyDown($event)\"\n >\n <dt-icon-chevrons-right\n size=\"200\"\n />\n </dt-button>\n </template>\n </dt-tooltip>\n </dt-stack>\n </dt-stack>\n</template>\n\n<script setup>\nimport {\n DtIconChevronLeft,\n DtIconChevronsLeft,\n DtIconChevronRight,\n DtIconChevronsRight,\n} from '@dialpad/dialtone-icons/vue3';\nimport { DtStack } from '@/components/stack';\nimport { DtButton } from '@/components/button';\nimport { DtTooltip } from '@/components/tooltip';\nimport { onMounted } from 'vue';\nimport { useMonthYearPicker } from '../composables/useMonthYearPicker.js';\nimport { DialtoneLocalization } from '@/localization';\n\nconst props = defineProps({\n selectedDate: {\n type: Date,\n required: true,\n },\n});\n\nconst emits = defineEmits([\n /**\n * Will retrieve the calendar days of the given date\n *\n * @event calendar-days\n * @type {Array}\n */\n 'calendar-days',\n\n /**\n * Will focus first day in calendar\n *\n * @event focus-first-day\n */\n 'focus-first-day',\n\n /**\n * Will focus last day in calendar\n *\n * @event focus-last-day\n */\n 'focus-last-day',\n\n /**\n * Will close the datepicker\n *\n * @event close-datepicker\n */\n 'close-datepicker',\n]);\n\nconst i18n = new DialtoneLocalization();\n\nconst {\n selectMonth,\n selectYear,\n formattedMonth,\n setDayRef,\n focusMonthYearPicker,\n handleKeyDown,\n changeMonth,\n changeYear,\n goToNextMonth,\n goToPrevMonth,\n previousYearAriaLabel,\n previousMonthAriaLabel,\n nextMonthAriaLabel,\n nextYearAriaLabel,\n} = useMonthYearPicker(props, emits);\n\nonMounted(() => {\n focusMonthYearPicker();\n});\n\ndefineExpose({\n focusMonthYearPicker,\n goToNextMonth,\n goToPrevMonth,\n});\n</script>\n","import { computed, ref, watch, nextTick } from 'vue';\nimport { getWeekDayNames, calculateNextFocusDate, calculatePrevFocusDate, formatDate } from '../utils.js';\nimport { INTL_MONTH_FORMAT, WEEK_START } from '../datepicker_constants.js';\nimport { returnFirstEl } from '@/common/utils';\nimport { DialtoneLocalization } from '@/localization';\n\nexport function useCalendar (props, emits) {\n const selectedDay = ref(null);\n const focusDay = ref(0);\n const daysRef = ref([]);\n const i18n = new DialtoneLocalization();\n\n const weekDays = computed(() => {\n return getWeekDayNames(props.locale, WEEK_START);\n });\n\n watch(() => props.calendarDays, () => {\n focusDay.value = 0;\n daysRef.value = [];\n selectedDay.value = null;\n });\n\n function dayAriaLabel (day) {\n return i18n.$t('DIALTONE_DATEPICKER_SELECT_DAY') + ` ${formatDate(day.value, INTL_MONTH_FORMAT, i18n.currentLocale)}`;\n }\n\n function setDayRef (el, day) {\n if (!daysRef.value.some(day => day.el === el) && day.currentMonth) {\n daysRef.value.push({ el, day });\n }\n }\n\n function handleKeyDown (event) {\n switch (event.key) {\n case 'ArrowUp':\n event.preventDefault();\n focusDay.value -= 7;\n try {\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n } catch {\n const prevFocusDate = calculatePrevFocusDate(daysRef.value[focusDay.value + 7].day.value);\n emits('go-to-prev-month');\n\n nextTick(() => {\n returnFirstEl(daysRef.value[prevFocusDate - 1].el.$el).focus();\n focusDay.value += prevFocusDate - 1;\n });\n }\n break;\n\n case 'ArrowDown':\n event.preventDefault();\n focusDay.value += 7;\n try {\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n } catch {\n const nextFocusDate = calculateNextFocusDate(daysRef.value[focusDay.value - 7].day.value);\n emits('go-to-next-month');\n\n nextTick(() => {\n returnFirstEl(daysRef.value[nextFocusDate - 1].el.$el).focus();\n focusDay.value += nextFocusDate - 1;\n });\n }\n break;\n\n case 'ArrowLeft':\n event.preventDefault();\n if (focusDay.value > 0) {\n focusDay.value -= 1;\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n } else {\n // if we are on month first day, jump to last day of prev month\n emits('go-to-prev-month');\n focusLastDay();\n }\n break;\n\n case 'ArrowRight':\n event.preventDefault();\n if (focusDay.value < daysRef.value.length - 1) {\n focusDay.value += 1;\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n } else {\n // if we are on month last day, jump to first day of next month\n emits('go-to-next-month');\n\n focusFirstDay();\n }\n break;\n\n case 'Tab':\n event.preventDefault();\n emits('focus-month-year-picker');\n break;\n\n case 'Escape':\n emits('close-datepicker');\n break;\n }\n }\n\n function focusFirstDay () {\n focusDay.value = 0;\n\n nextTick(() => {\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n });\n }\n\n function focusLastDay () {\n nextTick(() => {\n focusDay.value = daysRef.value.length - 1;\n returnFirstEl(daysRef.value[focusDay.value].el.$el).focus();\n });\n }\n\n function selectDay (day) {\n if (!day.currentMonth) { return; }\n\n // local selectedDay is updated when a day is selected\n selectedDay.value = day.text;\n emits('select-date', day.value);\n }\n\n return {\n selectedDay,\n weekDays,\n dayAriaLabel,\n setDayRef,\n handleKeyDown,\n focusFirstDay,\n selectDay,\n };\n}\n","<template>\n <table\n class=\"d-datepicker__calendar\"\n aria-labelledby=\"calendar-heading\"\n >\n <thead>\n <tr>\n <th\n v-for=\"day in weekDays\"\n :key=\"day\"\n scope=\"col\"\n class=\"d-datepicker__cell d-datepicker__cell--header\"\n >\n <span\n class=\"d-datepicker__weekday\"\n :title=\"day\"\n :aria-label=\"day\"\n > {{ day }}</span>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr\n v-for=\"(week, indexWeek) in calendarDays\"\n :key=\"indexWeek\"\n >\n <td\n v-for=\"(day, indexDays) in week.days\"\n :key=\"indexWeek + indexDays\"\n class=\"d-datepicker__cell\"\n role=\"listbox\"\n >\n <dt-button\n :ref=\"el => { if (el) setDayRef(el, day) }\"\n class=\"d-datepicker__day\"\n :circle=\"true\"\n size=\"sm\"\n importance=\"clear\"\n :disabled=\"!day.currentMonth\"\n :class=\"{\n 'd-datepicker__day--disabled': !day.currentMonth,\n 'd-datepicker__day--selected': selectedDay\n ? ((day.text === selectedDay) && day.currentMonth)\n : day.selected,\n }\"\n type=\"button\"\n :aria-selected=\"!!selectedDay ? ((day.text === selectedDay) && day.currentMonth) : day.selected\"\n :aria-label=\"dayAriaLabel(day)\"\n role=\"option\"\n @click=\"selectDay(day)\"\n @keydown=\"handleKeyDown($event)\"\n >\n {{ day.text }}\n </dt-button>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script setup>\nimport { useCalendar } from '../composables/useCalendar.js';\nimport { DtButton } from '@/components/button';\n\nconst props = defineProps({\n calendarDays: {\n type: Array,\n required: true,\n },\n});\n\nconst emits = defineEmits([\n /**\n * Event fired when a date is selected\n *\n * @event select-date\n * @type {Date}\n */\n 'select-date',\n\n /**\n * Will focus the month and year picker\n *\n * @event focus-month-year-picker\n */\n 'focus-month-year-picker',\n\n /**\n * Will close the datepicker\n *\n * @event close-datepicker\n */\n 'close-datepicker',\n\n /**\n * Will go to the next month\n *\n * @event go-to-next-month\n */\n 'go-to-next-month',\n\n /**\n * Will go to the previous month\n *\n * @event go-to-prev-month\n */\n 'go-to-prev-month',\n]);\n\nconst {\n selectedDay,\n weekDays,\n dayAriaLabel,\n setDayRef,\n handleKeyDown,\n focusFirstDay,\n selectDay,\n} = useCalendar(props, emits);\n\ndefineExpose({\n focusFirstDay,\n});\n</script>\n","<!-- eslint-disable vue/multi-word-component-names -->\n<template>\n <dt-stack\n class=\"d-datepicker\"\n gap=\"400\"\n >\n <div class=\"d-datepicker__hd\">\n <month-year-picker\n ref=\"monthYearPicker\"\n :selected-date=\"selectedDate\"\n @calendar-days=\"updateCalendarDays\"\n @focus-first-day=\"$refs.calendar.focusFirstDay()\"\n @focus-last-day=\"$refs.calendar.focusLastDay()\"\n @close-datepicker=\"$emit('close-datepicker')\"\n />\n </div>\n <div class=\"d-datepicker__bd\">\n <calendar\n ref=\"calendar\"\n :calendar-days=\"calendarDays\"\n @select-date=\"$emit('selected-date', $event)\"\n @focus-month-year-picker=\"$refs.monthYearPicker.focusMonthYearPicker()\"\n @close-datepicker=\"$emit('close-datepicker')\"\n @go-to-next-month=\"$refs.monthYearPicker.goToNextMonth()\"\n @go-to-prev-month=\"$refs.monthYearPicker.goToPrevMonth()\"\n />\n </div>\n </dt-stack>\n</template>\n\n<script setup>\nimport MonthYearPicker from './modules/month-year-picker.vue';\nimport Calendar from './modules/calendar.vue';\nimport { DtStack } from '@/components/stack';\nimport { returnFirstEl, warnIfUnmounted } from '@/common/utils';\nimport { onMounted, ref, getCurrentInstance } from 'vue';\n\ndefineProps({\n /**\n * Selected date\n *\n * @type {Date}\n */\n selectedDate: {\n type: Date,\n default: () => (new Date()),\n },\n});\n\ndefineEmits([\n /**\n * Event fired when a date is selected\n *\n * @event selected-date\n * @type {Date}\n */\n 'selected-date',\n\n /**\n * Event fired when user presses the esc key\n *\n * @event close-datepicker\n */\n 'close-datepicker',\n]);\n\nconst calendarDays = ref([]);\n\nfunction updateCalendarDays (days) {\n calendarDays.value = days;\n}\n\nonMounted(() => {\n const instance = getCurrentInstance();\n warnIfUnmounted(returnFirstEl(instance.proxy.$el), 'datepicker');\n});\n</script>\n"],"names":["useMonthYearPicker","props","emits","selectMonth","ref","getMonth","selectYear","getYear","highlightedDay","focusPicker","focusRefs","i18n","DialtoneLocalization","calendarDays","computed","getCalendarDays","watch","highlightDay","formattedMonth","month","formatMonth","INTL_MONTH_FORMAT","setDayRef","el","focusMonthYearPicker","returnFirstEl","handleKeyDown","event","year","getDate","changeMonth","value","initialDate","set","newDate","addMonths","subMonths","changeYear","goToNextMonth","goToPrevMonth","previousYearAriaLabel","previousMonthAriaLabel","nextYearAriaLabel","nextMonthAriaLabel","__props","__emit","onMounted","__expose","useCalendar","selectedDay","focusDay","daysRef","weekDays","getWeekDayNames","WEEK_START","dayAriaLabel","day","formatDate","prevFocusDate","calculatePrevFocusDate","nextTick","nextFocusDate","calculateNextFocusDate","focusLastDay","focusFirstDay","selectDay","updateCalendarDays","days","instance","getCurrentInstance","warnIfUnmounted"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"formatUtils.cjs","sources":["../../../components/datepicker/formatUtils.js"],"sourcesContent":["import { DialtoneLocalization } from '@/localization';\n\n/**\n * Formats a date into a long format using the specified locale.\n *\n * @param {Date} date - The date to format.\n * @param {string} [locale='default'] - The locale to use for formatting. Defaults to 'default'.\n * @returns {string} The formatted date string.\n */\nexport function formatLong (date, locale = null) {\n return new Intl.DateTimeFormat(locale || DialtoneLocalization.getPreferredLocale(), { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' }).format(date);\n}\n\n/**\n * Formats the given date in medium format.\n *\n * @param {Date} date - The date to be formatted.\n * @param {string} [locale='default'] - The locale to be used for formatting. Defaults to 'default'.\n * @returns {string} The formatted date string in medium format.\n */\nexport function formatMedium (date, locale = null) {\n return new Intl.DateTimeFormat(locale || DialtoneLocalization.getPreferredLocale(), { year: 'numeric', month: 'long', day: 'numeric' }).format(date);\n}\n\n/**\n * Formats a date into a short string representation.\n * @param {Date} date - The date to format.\n * @param {string} [locale='default'] - The locale to use for formatting. Defaults to 'default'.\n * @param {boolean} [showWeekday=true] - Whether to include the weekday in the formatted string. Defaults to true.\n * @returns {string} The formatted date string.\n */\nexport function formatShort (date, locale = null, showWeekday = true) {\n const options = showWeekday ? { weekday: 'short', year: 'numeric', month: 'short', day: 'numeric' } : { year: 'numeric', month: 'short', day: 'numeric' };\n return new Intl.DateTimeFormat(locale || DialtoneLocalization.getPreferredLocale(), options).format(date);\n}\n\n/**\n * Formats a date without the year.\n *\n * @param {Date} date - The date to format.\n * @param {string} [locale='default'] - The locale to use for formatting. Defaults to 'default'.\n * @param {boolean} [abbreviated=false] - Whether to use abbreviated month names. Defaults to false.\n * @returns {string} The formatted date without the year.\n */\nexport function formatNoYear (date, locale = null, abbreviated = false) {\n const monthFormat = abbreviated ? 'short' : 'long';\n return new Intl.DateTimeFormat(locale || DialtoneLocalization.getPreferredLocale(), { month: monthFormat, day: 'numeric' }).format(date);\n}\n\n/**\n * Formats a date into a numerical string representation.\n *\n * @param {Date} date - The date to format.\n * @param {string} [locale='default'] - The locale to use for formatting. Defaults to 'default'.\n * @returns {string} The formatted numerical date string.\n */\nexport function formatNumerical (date, locale = null) {\n return new Intl.DateTimeFormat(locale || DialtoneLocalization.getPreferredLocale(), { year: '2-digit', month: '2-digit', day: '2-digit' }).format(date);\n}\n\nexport default {\n formatLong,\n formatMedium,\n formatShort,\n formatNoYear,\n formatNumerical,\n};\n"],"names":["formatLong","date","locale","DialtoneLocalization","formatMedium","formatShort","showWeekday","options","formatNoYear","abbreviated","monthFormat","formatNumerical","formatUtils"],"mappings":"4JASO,SAASA,EAAYC,EAAMC,EAAS,KAAM,CAC/C,OAAO,IAAI,KAAK,eAAeA,GAAUC,EAAoB,qBAAC,mBAAoB,EAAE,CAAE,QAAS,OAAQ,KAAM,UAAW,MAAO,OAAQ,IAAK,SAAS,CAAE,EAAE,OAAOF,CAAI,CACtK,CASO,SAASG,EAAcH,EAAMC,EAAS,KAAM,CACjD,OAAO,IAAI,KAAK,eAAeA,GAAUC,EAAAA,qBAAqB,mBAAoB,EAAE,CAAE,KAAM,UAAW,MAAO,OAAQ,IAAK,SAAW,CAAA,EAAE,OAAOF,CAAI,CACrJ,CASO,SAASI,EAAaJ,EAAMC,EAAS,KAAMI,EAAc,GAAM,CACpE,MAAMC,EAAUD,EAAc,CAAE,QAAS,QAAS,KAAM,UAAW,MAAO,QAAS,IAAK,SAAW,EAAG,CAAE,KAAM,UAAW,MAAO,QAAS,IAAK,WAC9I,OAAO,IAAI,KAAK,eAAeJ,GAAUC,EAAoB,qBAAC,mBAAoB,EAAEI,CAAO,EAAE,OAAON,CAAI,CAC1G,CAUO,SAASO,EAAcP,EAAMC,EAAS,KAAMO,EAAc,GAAO,CACtE,MAAMC,EAAcD,EAAc,QAAU,OAC5C,OAAO,IAAI,KAAK,eAAeP,GAAUC,EAAoB,qBAAC,mBAAkB,EAAI,CAAE,MAAOO,EAAa,IAAK,SAAS,CAAE,EAAE,OAAOT,CAAI,CACzI,CASO,SAASU,EAAiBV,EAAMC,EAAS,KAAM,CACpD,OAAO,IAAI,KAAK,eAAeA,GAAUC,EAAAA,qBAAqB,mBAAoB,EAAE,CAAE,KAAM,UAAW,MAAO,UAAW,IAAK,SAAW,CAAA,EAAE,OAAOF,CAAI,CACxJ,CAEA,MAAeW,EAAA,CACb,WAAAZ,EACA,aAAAI,EACA,YAAAC,EACA,aAAAG,EACA,gBAAAG,CACF"}
1
+ {"version":3,"file":"formatUtils.cjs","sources":["../../../components/datepicker/formatUtils.js"],"sourcesContent":["import { DialtoneLocalization } from '@/localization';\n\n/**\n * Formats a date into a long format using the specified locale.\n *\n * @param {Date} date - The date to format.\n * @param {string} [locale='default'] - The locale to use for formatting. Defaults to 'default'.\n * @returns {string} The formatted date string.\n */\nexport function formatLong (date, locale = null) {\n return new Intl.DateTimeFormat(locale || DialtoneLocalization.getPreferredLocale(), { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' }).format(date);\n}\n\n/**\n * Formats the given date in medium format.\n *\n * @param {Date} date - The date to be formatted.\n * @param {string} [locale='default'] - The locale to be used for formatting. Defaults to 'default'.\n * @returns {string} The formatted date string in medium format.\n */\nexport function formatMedium (date, locale = null) {\n return new Intl.DateTimeFormat(locale || DialtoneLocalization.getPreferredLocale(), { year: 'numeric', month: 'long', day: 'numeric' }).format(date);\n}\n\n/**\n * Formats a date into a short string representation.\n * @param {Date} date - The date to format.\n * @param {string} [locale='default'] - The locale to use for formatting. Defaults to 'default'.\n * @param {boolean} [showWeekday=true] - Whether to include the weekday in the formatted string. Defaults to true.\n * @returns {string} The formatted date string.\n */\nexport function formatShort (date, locale = null, showWeekday = true) {\n const options = showWeekday ? { weekday: 'short', year: 'numeric', month: 'short', day: 'numeric' } : { year: 'numeric', month: 'short', day: 'numeric' };\n return new Intl.DateTimeFormat(locale || DialtoneLocalization.getPreferredLocale(), options).format(date);\n}\n\n/**\n * Formats a date without the year.\n *\n * @param {Date} date - The date to format.\n * @param {string} [locale='default'] - The locale to use for formatting. Defaults to 'default'.\n * @param {boolean} [abbreviated=false] - Whether to use abbreviated month names. Defaults to false.\n * @returns {string} The formatted date without the year.\n */\nexport function formatNoYear (date, locale = null, abbreviated = false) {\n const monthFormat = abbreviated ? 'short' : 'long';\n return new Intl.DateTimeFormat(locale || DialtoneLocalization.getPreferredLocale(), { month: monthFormat, day: 'numeric' }).format(date);\n}\n\n/**\n * Formats a date into a numerical string representation.\n *\n * @param {Date} date - The date to format.\n * @param {string} [locale='default'] - The locale to use for formatting. Defaults to 'default'.\n * @returns {string} The formatted numerical date string.\n */\nexport function formatNumerical (date, locale = null) {\n return new Intl.DateTimeFormat(locale || DialtoneLocalization.getPreferredLocale(), { year: '2-digit', month: '2-digit', day: '2-digit' }).format(date);\n}\n\nexport default {\n formatLong,\n formatMedium,\n formatShort,\n formatNoYear,\n formatNumerical,\n};\n"],"names":["formatLong","date","locale","DialtoneLocalization","formatMedium","formatShort","showWeekday","options","formatNoYear","abbreviated","monthFormat","formatNumerical","formatUtils"],"mappings":"4JASO,SAASA,EAAYC,EAAMC,EAAS,KAAM,CAC/C,OAAO,IAAI,KAAK,eAAeA,GAAUC,EAAAA,qBAAqB,mBAAkB,EAAI,CAAE,QAAS,OAAQ,KAAM,UAAW,MAAO,OAAQ,IAAK,UAAW,EAAE,OAAOF,CAAI,CACtK,CASO,SAASG,EAAcH,EAAMC,EAAS,KAAM,CACjD,OAAO,IAAI,KAAK,eAAeA,GAAUC,EAAAA,qBAAqB,mBAAkB,EAAI,CAAE,KAAM,UAAW,MAAO,OAAQ,IAAK,SAAS,CAAE,EAAE,OAAOF,CAAI,CACrJ,CASO,SAASI,EAAaJ,EAAMC,EAAS,KAAMI,EAAc,GAAM,CACpE,MAAMC,EAAUD,EAAc,CAAE,QAAS,QAAS,KAAM,UAAW,MAAO,QAAS,IAAK,SAAS,EAAK,CAAE,KAAM,UAAW,MAAO,QAAS,IAAK,SAAS,EACvJ,OAAO,IAAI,KAAK,eAAeJ,GAAUC,EAAAA,qBAAqB,mBAAkB,EAAII,CAAO,EAAE,OAAON,CAAI,CAC1G,CAUO,SAASO,EAAcP,EAAMC,EAAS,KAAMO,EAAc,GAAO,CACtE,MAAMC,EAAcD,EAAc,QAAU,OAC5C,OAAO,IAAI,KAAK,eAAeP,GAAUC,EAAAA,qBAAqB,mBAAkB,EAAI,CAAE,MAAOO,EAAa,IAAK,SAAS,CAAE,EAAE,OAAOT,CAAI,CACzI,CASO,SAASU,EAAiBV,EAAMC,EAAS,KAAM,CACpD,OAAO,IAAI,KAAK,eAAeA,GAAUC,EAAAA,qBAAqB,mBAAkB,EAAI,CAAE,KAAM,UAAW,MAAO,UAAW,IAAK,SAAS,CAAE,EAAE,OAAOF,CAAI,CACxJ,CAEA,MAAAW,EAAe,CACb,WAAAZ,EACA,aAAAI,EACA,YAAAC,EACA,aAAAG,EACA,gBAAAG,CACF"}