@dialpad/dialtone-vue 3.210.0 → 3.211.0-next.1

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 (437) hide show
  1. package/dist/common/constants/index.cjs +1 -1
  2. package/dist/common/constants/index.cjs.map +1 -1
  3. package/dist/common/constants/index.js +10 -10
  4. package/dist/common/constants/index.js.map +1 -1
  5. package/dist/common/mixins/keyboard-list-navigation.cjs +1 -1
  6. package/dist/common/mixins/keyboard-list-navigation.cjs.map +1 -1
  7. package/dist/common/mixins/keyboard-list-navigation.js +7 -7
  8. package/dist/common/mixins/keyboard-list-navigation.js.map +1 -1
  9. package/dist/component-documentation.json +1 -1
  10. package/dist/dialtone-vue.cjs +1 -1
  11. package/dist/dialtone-vue.js +425 -387
  12. package/dist/dialtone-vue.js.map +1 -1
  13. package/dist/lib/attachment-carousel/attachment-carousel.cjs +1 -1
  14. package/dist/lib/attachment-carousel/attachment-carousel.cjs.map +1 -1
  15. package/dist/lib/attachment-carousel/attachment-carousel.js +64 -117
  16. package/dist/lib/attachment-carousel/attachment-carousel.js.map +1 -1
  17. package/dist/lib/avatar/avatar-constants.cjs +1 -1
  18. package/dist/lib/avatar/avatar-constants.cjs.map +1 -1
  19. package/dist/lib/avatar/avatar-constants.js +169 -43
  20. package/dist/lib/avatar/avatar-constants.js.map +1 -1
  21. package/dist/lib/avatar/avatar.cjs +1 -1
  22. package/dist/lib/avatar/avatar.cjs.map +1 -1
  23. package/dist/lib/avatar/avatar.js +185 -100
  24. package/dist/lib/avatar/avatar.js.map +1 -1
  25. package/dist/lib/avatar/index.cjs +1 -1
  26. package/dist/lib/avatar/index.js +16 -10
  27. package/dist/lib/badge/badge.cjs +1 -1
  28. package/dist/lib/badge/badge.cjs.map +1 -1
  29. package/dist/lib/badge/badge.js +47 -35
  30. package/dist/lib/badge/badge.js.map +1 -1
  31. package/dist/lib/button/button-constants.cjs +1 -1
  32. package/dist/lib/button/button-constants.cjs.map +1 -1
  33. package/dist/lib/button/button-constants.js +23 -19
  34. package/dist/lib/button/button-constants.js.map +1 -1
  35. package/dist/lib/button/button.cjs +1 -1
  36. package/dist/lib/button/button.cjs.map +1 -1
  37. package/dist/lib/button/button.js +171 -66
  38. package/dist/lib/button/button.js.map +1 -1
  39. package/dist/lib/callbar-button/callbar-button.cjs +1 -1
  40. package/dist/lib/callbar-button/callbar-button.cjs.map +1 -1
  41. package/dist/lib/callbar-button/callbar-button.js +13 -14
  42. package/dist/lib/callbar-button/callbar-button.js.map +1 -1
  43. package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs +1 -1
  44. package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs.map +1 -1
  45. package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js +42 -30
  46. package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js.map +1 -1
  47. package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.cjs +1 -1
  48. package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.cjs.map +1 -1
  49. package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.js +38 -26
  50. package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.js.map +1 -1
  51. package/dist/lib/callbox/callbox.cjs +1 -1
  52. package/dist/lib/callbox/callbox.cjs.map +1 -1
  53. package/dist/lib/callbox/callbox.js +47 -47
  54. package/dist/lib/callbox/callbox.js.map +1 -1
  55. package/dist/lib/chip/chip.cjs +1 -1
  56. package/dist/lib/chip/chip.cjs.map +1 -1
  57. package/dist/lib/chip/chip.js +1 -1
  58. package/dist/lib/chip/chip.js.map +1 -1
  59. package/dist/lib/combobox-multi-select/combobox-multi-select.cjs +1 -1
  60. package/dist/lib/combobox-multi-select/combobox-multi-select.cjs.map +1 -1
  61. package/dist/lib/combobox-multi-select/combobox-multi-select.js +31 -31
  62. package/dist/lib/combobox-multi-select/combobox-multi-select.js.map +1 -1
  63. package/dist/lib/contact-centers-row/contact-centers-row.cjs +1 -1
  64. package/dist/lib/contact-centers-row/contact-centers-row.cjs.map +1 -1
  65. package/dist/lib/contact-centers-row/contact-centers-row.js +33 -33
  66. package/dist/lib/contact-centers-row/contact-centers-row.js.map +1 -1
  67. package/dist/lib/contact-info/contact-info.cjs +1 -1
  68. package/dist/lib/contact-info/contact-info.cjs.map +1 -1
  69. package/dist/lib/contact-info/contact-info.js +56 -56
  70. package/dist/lib/contact-info/contact-info.js.map +1 -1
  71. package/dist/lib/contact-row/contact-row.cjs +1 -1
  72. package/dist/lib/contact-row/contact-row.cjs.map +1 -1
  73. package/dist/lib/contact-row/contact-row.js +1 -1
  74. package/dist/lib/contact-row/contact-row.js.map +1 -1
  75. package/dist/lib/datepicker/datepicker.cjs +1 -1
  76. package/dist/lib/datepicker/datepicker.cjs.map +1 -1
  77. package/dist/lib/datepicker/datepicker.js +11 -11
  78. package/dist/lib/datepicker/datepicker.js.map +1 -1
  79. package/dist/lib/editor/editor.cjs.map +1 -1
  80. package/dist/lib/editor/editor.js.map +1 -1
  81. package/dist/lib/emoji-picker/emoji-picker.cjs +1 -1
  82. package/dist/lib/emoji-picker/emoji-picker.cjs.map +1 -1
  83. package/dist/lib/emoji-picker/emoji-picker.js +2 -2
  84. package/dist/lib/emoji-picker/emoji-picker.js.map +1 -1
  85. package/dist/lib/feed-item-pill/feed-item-pill.cjs +1 -1
  86. package/dist/lib/feed-item-pill/feed-item-pill.cjs.map +1 -1
  87. package/dist/lib/feed-item-pill/feed-item-pill.js +56 -53
  88. package/dist/lib/feed-item-pill/feed-item-pill.js.map +1 -1
  89. package/dist/lib/feed-item-row/feed-item-row.cjs +1 -1
  90. package/dist/lib/feed-item-row/feed-item-row.cjs.map +1 -1
  91. package/dist/lib/feed-item-row/feed-item-row.js +11 -11
  92. package/dist/lib/feed-item-row/feed-item-row.js.map +1 -1
  93. package/dist/lib/filter-pill/filter-pill.cjs +2 -0
  94. package/dist/lib/filter-pill/filter-pill.cjs.map +1 -0
  95. package/dist/lib/filter-pill/filter-pill.js +346 -0
  96. package/dist/lib/filter-pill/filter-pill.js.map +1 -0
  97. package/dist/lib/filter-pill/index.cjs +2 -0
  98. package/dist/lib/filter-pill/index.cjs.map +1 -0
  99. package/dist/lib/filter-pill/index.js +5 -0
  100. package/dist/lib/filter-pill/index.js.map +1 -0
  101. package/dist/lib/general-row/general-row.cjs +1 -1
  102. package/dist/lib/general-row/general-row.cjs.map +1 -1
  103. package/dist/lib/general-row/general-row.js +153 -99
  104. package/dist/lib/general-row/general-row.js.map +1 -1
  105. package/dist/lib/group-row/group-row.cjs +1 -1
  106. package/dist/lib/group-row/group-row.cjs.map +1 -1
  107. package/dist/lib/group-row/group-row.js +1 -1
  108. package/dist/lib/group-row/group-row.js.map +1 -1
  109. package/dist/lib/grouped-chip/grouped-chip.cjs +1 -1
  110. package/dist/lib/grouped-chip/grouped-chip.cjs.map +1 -1
  111. package/dist/lib/grouped-chip/grouped-chip.js +31 -31
  112. package/dist/lib/grouped-chip/grouped-chip.js.map +1 -1
  113. package/dist/lib/input/input.cjs +1 -1
  114. package/dist/lib/input/input.cjs.map +1 -1
  115. package/dist/lib/input/input.js +53 -42
  116. package/dist/lib/input/input.js.map +1 -1
  117. package/dist/lib/item-layout/item-layout.cjs +3 -3
  118. package/dist/lib/item-layout/item-layout.cjs.map +1 -1
  119. package/dist/lib/item-layout/item-layout.js +74 -39
  120. package/dist/lib/item-layout/item-layout.js.map +1 -1
  121. package/dist/lib/kitchen-sink/kitchen-sink-view.cjs +2 -0
  122. package/dist/lib/kitchen-sink/kitchen-sink-view.cjs.map +1 -0
  123. package/dist/lib/kitchen-sink/kitchen-sink-view.js +263 -0
  124. package/dist/lib/kitchen-sink/kitchen-sink-view.js.map +1 -0
  125. package/dist/lib/link/link.cjs +1 -1
  126. package/dist/lib/link/link.cjs.map +1 -1
  127. package/dist/lib/link/link.js +21 -12
  128. package/dist/lib/link/link.js.map +1 -1
  129. package/dist/lib/list-item/list-item.cjs +1 -1
  130. package/dist/lib/list-item/list-item.cjs.map +1 -1
  131. package/dist/lib/list-item/list-item.js +25 -15
  132. package/dist/lib/list-item/list-item.js.map +1 -1
  133. package/dist/lib/loader/loader.cjs +13 -1
  134. package/dist/lib/loader/loader.cjs.map +1 -1
  135. package/dist/lib/loader/loader.js +31 -20
  136. package/dist/lib/loader/loader.js.map +1 -1
  137. package/dist/lib/message-input/message-input.cjs +1 -1
  138. package/dist/lib/message-input/message-input.cjs.map +1 -1
  139. package/dist/lib/message-input/message-input.js +39 -39
  140. package/dist/lib/message-input/message-input.js.map +1 -1
  141. package/dist/lib/mode-island/index.cjs +2 -0
  142. package/dist/lib/mode-island/index.cjs.map +1 -0
  143. package/dist/lib/mode-island/index.js +7 -0
  144. package/dist/lib/mode-island/index.js.map +1 -0
  145. package/dist/lib/mode-island/mode-island-constants.cjs +2 -0
  146. package/dist/lib/mode-island/mode-island-constants.cjs.map +1 -0
  147. package/dist/lib/mode-island/mode-island-constants.js +12 -0
  148. package/dist/lib/mode-island/mode-island-constants.js.map +1 -0
  149. package/dist/lib/mode-island/mode-island.cjs +2 -0
  150. package/dist/lib/mode-island/mode-island.cjs.map +1 -0
  151. package/dist/lib/mode-island/mode-island.js +130 -0
  152. package/dist/lib/mode-island/mode-island.js.map +1 -0
  153. package/dist/lib/mode-island/utils.cjs +2 -0
  154. package/dist/lib/mode-island/utils.cjs.map +1 -0
  155. package/dist/lib/mode-island/utils.js +32 -0
  156. package/dist/lib/mode-island/utils.js.map +1 -0
  157. package/dist/lib/mode-island/validators.cjs +2 -0
  158. package/dist/lib/mode-island/validators.cjs.map +1 -0
  159. package/dist/lib/mode-island/validators.js +12 -0
  160. package/dist/lib/mode-island/validators.js.map +1 -0
  161. package/dist/lib/notice/notice-action.cjs +1 -1
  162. package/dist/lib/notice/notice-action.cjs.map +1 -1
  163. package/dist/lib/notice/notice-action.js +7 -7
  164. package/dist/lib/notice/notice-action.js.map +1 -1
  165. package/dist/lib/pagination/pagination.cjs +1 -1
  166. package/dist/lib/pagination/pagination.cjs.map +1 -1
  167. package/dist/lib/pagination/pagination.js +15 -14
  168. package/dist/lib/pagination/pagination.js.map +1 -1
  169. package/dist/lib/popover/popover.cjs +1 -1
  170. package/dist/lib/popover/popover.cjs.map +1 -1
  171. package/dist/lib/popover/popover.js +1 -1
  172. package/dist/lib/popover/popover.js.map +1 -1
  173. package/dist/lib/progress-circle/index.cjs +2 -0
  174. package/dist/lib/progress-circle/index.cjs.map +1 -0
  175. package/dist/lib/progress-circle/index.js +10 -0
  176. package/dist/lib/progress-circle/index.js.map +1 -0
  177. package/dist/lib/progress-circle/progress-circle-constants.cjs +2 -0
  178. package/dist/lib/progress-circle/progress-circle-constants.cjs.map +1 -0
  179. package/dist/lib/progress-circle/progress-circle-constants.js +25 -0
  180. package/dist/lib/progress-circle/progress-circle-constants.js.map +1 -0
  181. package/dist/lib/progress-circle/progress-circle.cjs +2 -0
  182. package/dist/lib/progress-circle/progress-circle.cjs.map +1 -0
  183. package/dist/lib/progress-circle/progress-circle.js +136 -0
  184. package/dist/lib/progress-circle/progress-circle.js.map +1 -0
  185. package/dist/lib/rich-text-editor/rich-text-editor.cjs.map +1 -1
  186. package/dist/lib/rich-text-editor/rich-text-editor.js.map +1 -1
  187. package/dist/lib/root-layout/root-layout-constants.cjs +1 -1
  188. package/dist/lib/root-layout/root-layout-constants.cjs.map +1 -1
  189. package/dist/lib/root-layout/root-layout-constants.js +4 -2
  190. package/dist/lib/root-layout/root-layout-constants.js.map +1 -1
  191. package/dist/lib/root-layout/root-layout.cjs +1 -1
  192. package/dist/lib/root-layout/root-layout.cjs.map +1 -1
  193. package/dist/lib/root-layout/root-layout.js +9 -10
  194. package/dist/lib/root-layout/root-layout.js.map +1 -1
  195. package/dist/lib/settings-menu-button/settings-menu-button.cjs +1 -1
  196. package/dist/lib/settings-menu-button/settings-menu-button.cjs.map +1 -1
  197. package/dist/lib/settings-menu-button/settings-menu-button.js +14 -15
  198. package/dist/lib/settings-menu-button/settings-menu-button.js.map +1 -1
  199. package/dist/lib/split-button/split-button-alpha.cjs +1 -1
  200. package/dist/lib/split-button/split-button-alpha.cjs.map +1 -1
  201. package/dist/lib/split-button/split-button-alpha.js +86 -33
  202. package/dist/lib/split-button/split-button-alpha.js.map +1 -1
  203. package/dist/lib/split-button/split-button.cjs +1 -1
  204. package/dist/lib/split-button/split-button.cjs.map +1 -1
  205. package/dist/lib/split-button/split-button.js +282 -92
  206. package/dist/lib/split-button/split-button.js.map +1 -1
  207. package/dist/lib/tab/index.cjs +1 -1
  208. package/dist/lib/tab/index.js +13 -11
  209. package/dist/lib/tab/tab-group.cjs +1 -1
  210. package/dist/lib/tab/tab-group.cjs.map +1 -1
  211. package/dist/lib/tab/tab-group.js +107 -46
  212. package/dist/lib/tab/tab-group.js.map +1 -1
  213. package/dist/lib/tab/tab.cjs +1 -1
  214. package/dist/lib/tab/tab.cjs.map +1 -1
  215. package/dist/lib/tab/tab.js +128 -37
  216. package/dist/lib/tab/tab.js.map +1 -1
  217. package/dist/lib/tab/tabs-constants.cjs +1 -1
  218. package/dist/lib/tab/tabs-constants.cjs.map +1 -1
  219. package/dist/lib/tab/tabs-constants.js +13 -11
  220. package/dist/lib/tab/tabs-constants.js.map +1 -1
  221. package/dist/lib/text/index.cjs +2 -0
  222. package/dist/lib/text/index.cjs.map +1 -0
  223. package/dist/lib/text/index.js +20 -0
  224. package/dist/lib/text/index.js.map +1 -0
  225. package/dist/lib/text/text-constants.cjs +2 -0
  226. package/dist/lib/text/text-constants.cjs.map +1 -0
  227. package/dist/lib/text/text-constants.js +69 -0
  228. package/dist/lib/text/text-constants.js.map +1 -0
  229. package/dist/lib/text/text-tone-tokens.cjs +2 -0
  230. package/dist/lib/text/text-tone-tokens.cjs.map +1 -0
  231. package/dist/lib/text/text-tone-tokens.js +33 -0
  232. package/dist/lib/text/text-tone-tokens.js.map +1 -0
  233. package/dist/lib/text/text.cjs +2 -0
  234. package/dist/lib/text/text.cjs.map +1 -0
  235. package/dist/lib/text/text.js +203 -0
  236. package/dist/lib/text/text.js.map +1 -0
  237. package/dist/lib/top-banner-info/top-banner-info.cjs +1 -1
  238. package/dist/lib/top-banner-info/top-banner-info.cjs.map +1 -1
  239. package/dist/lib/top-banner-info/top-banner-info.js +16 -16
  240. package/dist/lib/top-banner-info/top-banner-info.js.map +1 -1
  241. package/dist/localization/en-US.cjs +2 -0
  242. package/dist/localization/en-US.cjs.map +1 -1
  243. package/dist/localization/en-US.js +2 -0
  244. package/dist/localization/en-US.js.map +1 -1
  245. package/dist/localization/es-LA.cjs +1 -1
  246. package/dist/localization/es-LA.cjs.map +1 -1
  247. package/dist/localization/es-LA.js +1 -1
  248. package/dist/localization/es-LA.js.map +1 -1
  249. package/dist/localization/it-IT.cjs +3 -3
  250. package/dist/localization/it-IT.cjs.map +1 -1
  251. package/dist/localization/it-IT.js +3 -3
  252. package/dist/localization/it-IT.js.map +1 -1
  253. package/dist/localization/nl-NL.cjs +2 -2
  254. package/dist/localization/nl-NL.cjs.map +1 -1
  255. package/dist/localization/nl-NL.js +2 -2
  256. package/dist/localization/nl-NL.js.map +1 -1
  257. package/dist/localization/ru-RU.cjs +1 -1
  258. package/dist/localization/ru-RU.cjs.map +1 -1
  259. package/dist/localization/ru-RU.js +1 -1
  260. package/dist/localization/ru-RU.js.map +1 -1
  261. package/dist/localization/zh-CN.cjs +1 -1
  262. package/dist/localization/zh-CN.cjs.map +1 -1
  263. package/dist/localization/zh-CN.js +1 -1
  264. package/dist/localization/zh-CN.js.map +1 -1
  265. package/dist/node_modules/@tiptap/vue-3.cjs.map +1 -1
  266. package/dist/node_modules/@tiptap/vue-3.js.map +1 -1
  267. package/dist/style.css +1 -1
  268. package/dist/types/common/mixins/keyboard_list_navigation.d.ts.map +1 -1
  269. package/dist/types/common/sr_only_close_button.vue.d.ts +38 -2
  270. package/dist/types/components/avatar/avatar.vue.d.ts +71 -25
  271. package/dist/types/components/avatar/avatar.vue.d.ts.map +1 -1
  272. package/dist/types/components/avatar/avatar_constants.d.ts +86 -29
  273. package/dist/types/components/avatar/avatar_constants.d.ts.map +1 -1
  274. package/dist/types/components/avatar/index.d.ts +1 -1
  275. package/dist/types/components/badge/badge.vue.d.ts.map +1 -1
  276. package/dist/types/components/banner/banner.vue.d.ts +76 -4
  277. package/dist/types/components/banner/banner.vue.d.ts.map +1 -1
  278. package/dist/types/components/breadcrumbs/breadcrumb_item.vue.d.ts +9 -0
  279. package/dist/types/components/breadcrumbs/breadcrumb_item.vue.d.ts.map +1 -1
  280. package/dist/types/components/breadcrumbs/breadcrumbs.vue.d.ts +9 -0
  281. package/dist/types/components/button/button.vue.d.ts +38 -2
  282. package/dist/types/components/button/button.vue.d.ts.map +1 -1
  283. package/dist/types/components/button/button_constants.d.ts +4 -0
  284. package/dist/types/components/button/button_constants.d.ts.map +1 -1
  285. package/dist/types/components/chip/chip.vue.d.ts +38 -2
  286. package/dist/types/components/chip/chip.vue.d.ts.map +1 -1
  287. package/dist/types/components/collapsible/collapsible.vue.d.ts +38 -2
  288. package/dist/types/components/collapsible/collapsible.vue.d.ts.map +1 -1
  289. package/dist/types/components/combobox/combobox.vue.d.ts +79 -13
  290. package/dist/types/components/combobox/combobox.vue.d.ts.map +1 -1
  291. package/dist/types/components/combobox/combobox_empty-list.vue.d.ts +39 -6
  292. package/dist/types/components/combobox/combobox_empty-list.vue.d.ts.map +1 -1
  293. package/dist/types/components/combobox/combobox_loading-list.vue.d.ts +39 -6
  294. package/dist/types/components/combobox/combobox_loading-list.vue.d.ts.map +1 -1
  295. package/dist/types/components/dropdown/dropdown.vue.d.ts +76 -4
  296. package/dist/types/components/dropdown/dropdown.vue.d.ts.map +1 -1
  297. package/dist/types/components/filter_pill/filter_pill.vue.d.ts +2070 -0
  298. package/dist/types/components/filter_pill/filter_pill.vue.d.ts.map +1 -0
  299. package/dist/types/components/filter_pill/index.d.ts +2 -0
  300. package/dist/types/components/filter_pill/index.d.ts.map +1 -0
  301. package/dist/types/components/hovercard/hovercard.vue.d.ts +152 -8
  302. package/dist/types/components/hovercard/hovercard.vue.d.ts.map +1 -1
  303. package/dist/types/components/image_viewer/image_viewer.vue.d.ts +76 -4
  304. package/dist/types/components/image_viewer/image_viewer.vue.d.ts.map +1 -1
  305. package/dist/types/components/input/input.vue.d.ts.map +1 -1
  306. package/dist/types/components/item_layout/item_layout.vue.d.ts +36 -5
  307. package/dist/types/components/item_layout/item_layout.vue.d.ts.map +1 -1
  308. package/dist/types/components/link/link.vue.d.ts +9 -0
  309. package/dist/types/components/list_item/list_item.vue.d.ts +39 -6
  310. package/dist/types/components/list_item/list_item.vue.d.ts.map +1 -1
  311. package/dist/types/components/loader/loader.vue.d.ts +1 -32
  312. package/dist/types/components/loader/loader.vue.d.ts.map +1 -1
  313. package/dist/types/components/modal/modal.vue.d.ts +76 -4
  314. package/dist/types/components/modal/modal.vue.d.ts.map +1 -1
  315. package/dist/types/components/mode_island/index.d.ts +3 -0
  316. package/dist/types/components/mode_island/index.d.ts.map +1 -0
  317. package/dist/types/components/mode_island/mode_island.vue.d.ts +3 -0
  318. package/dist/types/components/mode_island/mode_island.vue.d.ts.map +1 -0
  319. package/dist/types/components/mode_island/mode_island_constants.d.ts +10 -0
  320. package/dist/types/components/mode_island/mode_island_constants.d.ts.map +1 -0
  321. package/dist/types/components/mode_island/utils.d.ts +12 -0
  322. package/dist/types/components/mode_island/utils.d.ts.map +1 -0
  323. package/dist/types/components/mode_island/validators.d.ts +6 -0
  324. package/dist/types/components/mode_island/validators.d.ts.map +1 -0
  325. package/dist/types/components/notice/notice.vue.d.ts +76 -4
  326. package/dist/types/components/notice/notice.vue.d.ts.map +1 -1
  327. package/dist/types/components/notice/notice_action.vue.d.ts +76 -4
  328. package/dist/types/components/notice/notice_action.vue.d.ts.map +1 -1
  329. package/dist/types/components/pagination/pagination.vue.d.ts +38 -2
  330. package/dist/types/components/pagination/pagination.vue.d.ts.map +1 -1
  331. package/dist/types/components/popover/popover.vue.d.ts +76 -4
  332. package/dist/types/components/popover/popover.vue.d.ts.map +1 -1
  333. package/dist/types/components/popover/popover_header_footer.vue.d.ts +38 -2
  334. package/dist/types/components/popover/popover_header_footer.vue.d.ts.map +1 -1
  335. package/dist/types/components/progress_circle/index.d.ts +3 -0
  336. package/dist/types/components/progress_circle/index.d.ts.map +1 -0
  337. package/dist/types/components/progress_circle/progress_circle.vue.d.ts +70 -0
  338. package/dist/types/components/progress_circle/progress_circle.vue.d.ts.map +1 -0
  339. package/dist/types/components/progress_circle/progress_circle_constants.d.ts +23 -0
  340. package/dist/types/components/progress_circle/progress_circle_constants.d.ts.map +1 -0
  341. package/dist/types/components/rich_text_editor/extensions/channels/ChannelComponent.vue.d.ts +9 -0
  342. package/dist/types/components/rich_text_editor/extensions/channels/ChannelComponent.vue.d.ts.map +1 -1
  343. package/dist/types/components/rich_text_editor/extensions/mentions/MentionComponent.vue.d.ts +9 -0
  344. package/dist/types/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.d.ts +71 -25
  345. package/dist/types/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.d.ts +39 -6
  346. package/dist/types/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.d.ts.map +1 -1
  347. package/dist/types/components/rich_text_editor/extensions/variable/VariableComponent.vue.d.ts +114 -6
  348. package/dist/types/components/rich_text_editor/extensions/variable/VariableComponent.vue.d.ts.map +1 -1
  349. package/dist/types/components/root_layout/root_layout_constants.d.ts +2 -0
  350. package/dist/types/components/root_layout/root_layout_constants.d.ts.map +1 -1
  351. package/dist/types/components/split_button/split_button-alpha.vue.d.ts +57 -3
  352. package/dist/types/components/split_button/split_button-alpha.vue.d.ts.map +1 -1
  353. package/dist/types/components/split_button/split_button-omega.vue.d.ts +38 -2
  354. package/dist/types/components/split_button/split_button-omega.vue.d.ts.map +1 -1
  355. package/dist/types/components/split_button/split_button.vue.d.ts +342 -28
  356. package/dist/types/components/split_button/split_button.vue.d.ts.map +1 -1
  357. package/dist/types/components/tab/index.d.ts +1 -1
  358. package/dist/types/components/tab/tab.vue.d.ts +73 -7
  359. package/dist/types/components/tab/tab.vue.d.ts.map +1 -1
  360. package/dist/types/components/tab/tab_group.vue.d.ts +42 -0
  361. package/dist/types/components/tab/tab_group.vue.d.ts.map +1 -1
  362. package/dist/types/components/tab/tabs_constants.d.ts +5 -3
  363. package/dist/types/components/tab/tabs_constants.d.ts.map +1 -1
  364. package/dist/types/components/text/index.d.ts +3 -0
  365. package/dist/types/components/text/index.d.ts.map +1 -0
  366. package/dist/types/components/text/scripts/update-text-tone-tokens.d.cts +3 -0
  367. package/dist/types/components/text/scripts/update-text-tone-tokens.d.cts.map +1 -0
  368. package/dist/types/components/text/scripts/update_text_tone_tokens.d.cts +3 -0
  369. package/dist/types/components/text/scripts/update_text_tone_tokens.d.cts.map +1 -0
  370. package/dist/types/components/text/scripts/update_text_tone_tokens.d.ts +1 -0
  371. package/dist/types/components/text/scripts/update_text_tone_tokens.d.ts.map +1 -0
  372. package/dist/types/components/text/text.vue.d.ts +141 -0
  373. package/dist/types/components/text/text.vue.d.ts.map +1 -0
  374. package/dist/types/components/text/text_constants.d.ts +73 -0
  375. package/dist/types/components/text/text_constants.d.ts.map +1 -0
  376. package/dist/types/components/text/text_tone_tokens.d.ts +3 -0
  377. package/dist/types/components/text/text_tone_tokens.d.ts.map +1 -0
  378. package/dist/types/components/toast/layouts/toast_layout_alternate.vue.d.ts +76 -4
  379. package/dist/types/components/toast/layouts/toast_layout_alternate.vue.d.ts.map +1 -1
  380. package/dist/types/components/toast/layouts/toast_layout_default.vue.d.ts +76 -4
  381. package/dist/types/components/toast/layouts/toast_layout_default.vue.d.ts.map +1 -1
  382. package/dist/types/components/toast/toast.vue.d.ts +304 -16
  383. package/dist/types/components/toast/toast.vue.d.ts.map +1 -1
  384. package/dist/types/index.d.ts +4 -0
  385. package/dist/types/recipes/buttons/callbar_button/callbar_button.vue.d.ts +38 -2
  386. package/dist/types/recipes/buttons/callbar_button/callbar_button.vue.d.ts.map +1 -1
  387. package/dist/types/recipes/buttons/callbar_button_with_dropdown/callbar_button_with_dropdown.vue.d.ts +152 -8
  388. package/dist/types/recipes/buttons/callbar_button_with_dropdown/callbar_button_with_dropdown.vue.d.ts.map +1 -1
  389. package/dist/types/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts +152 -8
  390. package/dist/types/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts.map +1 -1
  391. package/dist/types/recipes/cards/ivr_node/ivr_node.vue.d.ts +114 -6
  392. package/dist/types/recipes/cards/ivr_node/ivr_node.vue.d.ts.map +1 -1
  393. package/dist/types/recipes/chips/grouped_chip/grouped_chip.vue.d.ts +38 -2
  394. package/dist/types/recipes/chips/grouped_chip/grouped_chip.vue.d.ts.map +1 -1
  395. package/dist/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts +234 -30
  396. package/dist/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts.map +1 -1
  397. package/dist/types/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.d.ts +196 -12
  398. package/dist/types/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.d.ts.map +1 -1
  399. package/dist/types/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.d.ts +158 -10
  400. package/dist/types/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.d.ts.map +1 -1
  401. package/dist/types/recipes/conversation_view/editor/EditorToolbarButton.vue.d.ts +38 -2
  402. package/dist/types/recipes/conversation_view/editor/EditorToolbarDropdownButton.vue.d.ts +114 -6
  403. package/dist/types/recipes/conversation_view/editor/EditorToolbarDropdownButton.vue.d.ts.map +1 -1
  404. package/dist/types/recipes/conversation_view/editor/EditorToolbarPopoverButton.vue.d.ts +114 -6
  405. package/dist/types/recipes/conversation_view/editor/EditorToolbarPopoverButton.vue.d.ts.map +1 -1
  406. package/dist/types/recipes/conversation_view/emoji_row/emoji_row.vue.d.ts +38 -2
  407. package/dist/types/recipes/conversation_view/emoji_row/emoji_row.vue.d.ts.map +1 -1
  408. package/dist/types/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts +74 -7
  409. package/dist/types/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts.map +1 -1
  410. package/dist/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +110 -31
  411. package/dist/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts.map +1 -1
  412. package/dist/types/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.d.ts +74 -7
  413. package/dist/types/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.d.ts.map +1 -1
  414. package/dist/types/recipes/conversation_view/message_input/message_input_button.vue.d.ts +38 -2
  415. package/dist/types/recipes/conversation_view/message_input/message_input_button.vue.d.ts.map +1 -1
  416. package/dist/types/recipes/conversation_view/message_input/message_input_link.vue.d.ts +152 -8
  417. package/dist/types/recipes/conversation_view/message_input/message_input_link.vue.d.ts.map +1 -1
  418. package/dist/types/recipes/conversation_view/message_input/message_input_topbar.vue.d.ts +38 -2
  419. package/dist/types/recipes/conversation_view/message_input/message_input_topbar.vue.d.ts.map +1 -1
  420. package/dist/types/recipes/header/settings_menu_button/settings_menu_button.vue.d.ts +38 -2
  421. package/dist/types/recipes/header/settings_menu_button/settings_menu_button.vue.d.ts.map +1 -1
  422. package/dist/types/recipes/item_layout/contact_info/contact_info.vue.d.ts +107 -30
  423. package/dist/types/recipes/item_layout/contact_info/contact_info.vue.d.ts.map +1 -1
  424. package/dist/types/recipes/leftbar/callbox/callbox.vue.d.ts +71 -25
  425. package/dist/types/recipes/leftbar/callbox/callbox.vue.d.ts.map +1 -1
  426. package/dist/types/recipes/leftbar/contact_centers_row/contact_centers_row.vue.d.ts +38 -2
  427. package/dist/types/recipes/leftbar/contact_centers_row/contact_centers_row.vue.d.ts.map +1 -1
  428. package/dist/types/recipes/leftbar/contact_row/contact_row.vue.d.ts +467 -28
  429. package/dist/types/recipes/leftbar/contact_row/contact_row.vue.d.ts.map +1 -1
  430. package/dist/types/recipes/leftbar/general_row/general_row.vue.d.ts +396 -3
  431. package/dist/types/recipes/leftbar/general_row/general_row.vue.d.ts.map +1 -1
  432. package/dist/types/recipes/leftbar/group_row/group_row.vue.d.ts +396 -3
  433. package/dist/types/recipes/leftbar/group_row/group_row.vue.d.ts.map +1 -1
  434. package/dist/types/recipes/notices/top_banner_info/top_banner_info.vue.d.ts.map +1 -1
  435. package/package.json +7 -6
  436. package/dist/types/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.d.ts +0 -30
  437. package/dist/types/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"dialtone-vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"dialtone-vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const u=require("@dialpad/dialtone-icons/vue3"),h=require("../../localization/index.cjs"),e=require("vue"),d=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),p=require("../button/button.cjs"),f=require("../image-viewer/image-viewer.cjs"),g={compatConfig:{MODE:3},name:"DtProgressBar",props:{ariaLabel:{type:String,required:!0},progress:{type:Number,default:20}},data:()=>({circleCircumference:50}),computed:{cssVars(){return{"--stroke-dashoffset":this.circleCircumference-this.circleCircumference*this.progress/100,"--stroke-dasharray":this.circleCircumference}}},mounted(){this.circleCircumference=this.$refs.progressbarCircle.getTotalLength()}},w=["aria-label","aria-valuenow"],A={ref:"progressbarCircle",r:"8",cx:"12",cy:"12",class:"d-recipe-attachment-carousel__progress-bar-circle"};function C(t,a,o,_,c,r){return e.openBlock(),e.createElementBlock("div",{role:"progressbar","aria-label":o.ariaLabel,tabindex:"-1","aria-valuenow":o.progress,"aria-valuemin":"0","aria-valuemax":"100"},[(e.openBlock(),e.createElementBlock("svg",{class:"d-recipe-attachment-carousel__progress-bar",style:e.normalizeStyle(r.cssVars)},[e.createElementVNode("circle",A,null,512),a[0]||(a[0]=e.createElementVNode("circle",{r:"8",cx:"12",cy:"12",class:"d-recipe-attachment-carousel__progress-bar-circle"},null,-1))],4))],8,w)}const b=d._(g,[["render",C]]),v={compatConfig:{MODE:3},name:"DtImageCarousel",components:{DtImageViewer:f.default,DtButton:p.default,DtIconClose:u.DtIconClose,DtProgressBar:b},props:{mediaItem:{type:Object,required:!0},index:{type:Number,required:!0}},emits:["remove-media"],data(){return{i18n:new h.DialtoneLocalization}},computed:{closeButtonTitle(){return this.i18n.$t("DIALTONE_CLOSE_BUTTON")}},methods:{removeMediaItem(t){this.$emit("remove-media",t)}}},L={class:"d-recipe-attachment-carousel__image"},E={class:"d-recipe-attachment-carousel__image-top-right"};function I(t,a,o,_,c,r){const n=e.resolveComponent("dt-image-viewer"),s=e.resolveComponent("dt-progress-bar"),m=e.resolveComponent("dt-icon-close"),i=e.resolveComponent("dt-button");return e.openBlock(),e.createElementBlock("li",L,[e.createVNode(n,{"image-button-class":"d-recipe-attachment-carousel__image-viewer","image-src":o.mediaItem.path,"image-alt":o.mediaItem.altText,"aria-label":c.i18n.$t("DIALTONE_IMAGE_CAROUSEL_CLICK_TO_OPEN_ARIA_LABEL")},null,8,["image-src","image-alt","aria-label"]),e.createElementVNode("div",E,[o.mediaItem.isUploading?(e.openBlock(),e.createBlock(s,{key:0,class:"d-recipe-attachment-carousel__image-progress-bar",progress:o.mediaItem.progress,"aria-label":c.i18n.$t("DIALTONE_IMAGE_CAROUSEL_PROGRESS_BAR_ARIA_LABEL")},null,8,["progress","aria-label"])):e.createCommentVNode("",!0),e.createVNode(i,{id:`closeButton-${o.index}`,tabindex:"0",class:"d-recipe-attachment-carousel__image-close-button",circle:"",size:"xs",importance:"clear","aria-label":r.closeButtonTitle,title:r.closeButtonTitle,onClick:a[0]||(a[0]=l=>r.removeMediaItem(o.index))},{icon:e.withCtx(()=>[e.createVNode(m,{size:"200"})]),_:1},8,["id","aria-label","title"])])])}const B=d._(v,[["render",I]]),D=64,T={compatConfig:{MODE:3},name:"DtRecipeAttachmentCarousel",components:{DtButton:p.default,DtIconArrowRight:u.DtIconArrowRight,DtIconArrowLeft:u.DtIconArrowLeft,DtImageCarousel:B},props:{mediaList:{type:Array,default:()=>[]}},emits:["remove-media"],data(){return{showCloseButton:{},showRightArrow:!0,showLeftArrow:!1,isMounted:!1,i18n:new h.DialtoneLocalization}},computed:{filteredMediaList(){return this.mediaList.filter(t=>t.type==="image"||t.type==="video")}},mounted:function(){this.showLeftArrow=this.$refs.carousel.scrollLeft>0,this.showRightArrow=this.$refs.carousel.scrollWidth>this.$refs.carousel.clientWidth},methods:{onItemFocus(t){t.currentTarget.scrollIntoView({behavior:"smooth"})},mediaComponent(t){switch(t){case"image":return"dt-image-carousel";default:return null}},removeMediaItem(t){this.showRightArrow=this.$refs.carousel.scrollWidth>this.$refs.carousel.clientWidth+D,this.$emit("remove-media",t)},closeButton(t,a){this.showCloseButton[a]=t},handleScroll(){const t=this.$refs.carousel;this.showLeftArrow=t.scrollLeft>0,this.showRightArrow=t.scrollLeft+t.clientWidth!==t.scrollWidth},leftScroll(){this.$refs.carousel.scrollTo({left:this.$refs.carousel.scrollLeft-100,behavior:"smooth"})},rightScroll(){this.$refs.carousel.scrollTo({left:this.$refs.carousel.scrollLeft+100,behavior:"smooth"})}}},k={class:"d-recipe-attachment-carousel",role:"presentation"};function R(t,a,o,_,c,r){const n=e.resolveComponent("dt-icon-arrow-left"),s=e.resolveComponent("dt-button"),m=e.resolveComponent("dt-icon-arrow-right");return e.openBlock(),e.createElementBlock("div",k,[o.mediaList.length>0?(e.openBlock(),e.createElementBlock("ul",{key:0,ref:"carousel",class:"d-recipe-attachment-carousel__media-list",onScroll:a[0]||(a[0]=(...i)=>r.handleScroll&&r.handleScroll(...i))},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.filteredMediaList,(i,l)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.mediaComponent(i.type)),{key:`media-${l}`,index:l,"media-item":i,onRemoveMedia:x=>r.removeMediaItem(l),onFocusin:r.onItemFocus},null,40,["index","media-item","onRemoveMedia","onFocusin"]))),128))],544)):e.createCommentVNode("",!0),e.withDirectives(e.createVNode(s,{tabindex:"-1","aria-label":c.i18n.$t("DIALTONE_ATTACHMENT_CAROUSEL_LEFT_ARROW_ARIA_LABEL"),class:"d-recipe-attachment-carousel__arrow d-recipe-attachment-carousel__arrow--left",circle:"",size:"xs",importance:"clear",onClick:r.leftScroll},{icon:e.withCtx(()=>[e.createVNode(n,{size:"100"})]),_:1},8,["aria-label","onClick"]),[[e.vShow,c.showLeftArrow]]),e.withDirectives(e.createVNode(s,{tabindex:"-1","aria-label":c.i18n.$t("DIALTONE_ATTACHMENT_CAROUSEL_RIGHT_ARROW_ARIA_LABEL"),class:"d-recipe-attachment-carousel__arrow d-recipe-attachment-carousel__arrow--right",circle:"",size:"xs",importance:"clear",onClick:r.rightScroll},{icon:e.withCtx(()=>[e.createVNode(m,{size:"100"})]),_:1},8,["aria-label","onClick"]),[[e.vShow,c.showRightArrow]])])}const N=d._(T,[["render",R]]);exports.default=N;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const d=require("@dialpad/dialtone-icons/vue3"),_=require("../../localization/index.cjs"),e=require("vue"),u=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),f=require("../progress-circle/progress-circle.cjs"),h=require("../button/button.cjs"),g=require("../image-viewer/image-viewer.cjs"),w={compatConfig:{MODE:3},name:"DtImageCarousel",components:{DtImageViewer:g.default,DtButton:h.default,DtIconClose:d.DtIconClose,DtProgressCircle:f.default},props:{mediaItem:{type:Object,required:!0},index:{type:Number,required:!0}},emits:["remove-media"],data(){return{i18n:new _.DialtoneLocalization}},computed:{closeButtonTitle(){return this.i18n.$t("DIALTONE_CLOSE_BUTTON")}},methods:{removeMediaItem(t){this.$emit("remove-media",t)}}},A={class:"d-recipe-attachment-carousel__image"},C={class:"d-recipe-attachment-carousel__image-top-right"},L={class:"d-recipe-attachment-carousel__image-progress-bar"};function v(t,i,r,p,c,o){const s=e.resolveComponent("dt-image-viewer"),a=e.resolveComponent("dt-progress-circle"),m=e.resolveComponent("dt-icon-close"),l=e.resolveComponent("dt-button");return e.openBlock(),e.createElementBlock("li",A,[e.createVNode(s,{"image-button-class":"d-recipe-attachment-carousel__image-viewer","image-src":r.mediaItem.path,"image-alt":r.mediaItem.altText,"aria-label":c.i18n.$t("DIALTONE_IMAGE_CAROUSEL_CLICK_TO_OPEN_ARIA_LABEL")},null,8,["image-src","image-alt","aria-label"]),e.createElementVNode("div",C,[e.createElementVNode("span",L,[r.mediaItem.isUploading?(e.openBlock(),e.createBlock(a,{key:0,kind:"brand",size:"400",progress:r.mediaItem.progress,"aria-label":c.i18n.$t("DIALTONE_IMAGE_CAROUSEL_PROGRESS_BAR_ARIA_LABEL")},null,8,["progress","aria-label"])):e.createCommentVNode("",!0)]),e.createVNode(l,{id:`closeButton-${r.index}`,tabindex:"0",class:"d-recipe-attachment-carousel__image-close-button",circle:"",size:"xs",importance:"clear","aria-label":o.closeButtonTitle,title:o.closeButtonTitle,onClick:i[0]||(i[0]=n=>o.removeMediaItem(r.index))},{icon:e.withCtx(()=>[e.createVNode(m,{size:"200"})]),_:1},8,["id","aria-label","title"])])])}const I=u._(w,[["render",v]]),b=64,E={compatConfig:{MODE:3},name:"DtRecipeAttachmentCarousel",components:{DtButton:h.default,DtIconArrowRight:d.DtIconArrowRight,DtIconArrowLeft:d.DtIconArrowLeft,DtImageCarousel:I},props:{mediaList:{type:Array,default:()=>[]}},emits:["remove-media"],data(){return{showCloseButton:{},showRightArrow:!0,showLeftArrow:!1,isMounted:!1,i18n:new _.DialtoneLocalization}},computed:{filteredMediaList(){return this.mediaList.filter(t=>t.type==="image"||t.type==="video")}},mounted:function(){this.showLeftArrow=this.$refs.carousel.scrollLeft>0,this.showRightArrow=this.$refs.carousel.scrollWidth>this.$refs.carousel.clientWidth},methods:{onItemFocus(t){t.currentTarget.scrollIntoView({behavior:"smooth"})},mediaComponent(t){switch(t){case"image":return"dt-image-carousel";default:return null}},removeMediaItem(t){this.showRightArrow=this.$refs.carousel.scrollWidth>this.$refs.carousel.clientWidth+b,this.$emit("remove-media",t)},closeButton(t,i){this.showCloseButton[i]=t},handleScroll(){const t=this.$refs.carousel;this.showLeftArrow=t.scrollLeft>0,this.showRightArrow=t.scrollLeft+t.clientWidth!==t.scrollWidth},leftScroll(){this.$refs.carousel.scrollTo({left:this.$refs.carousel.scrollLeft-100,behavior:"smooth"})},rightScroll(){this.$refs.carousel.scrollTo({left:this.$refs.carousel.scrollLeft+100,behavior:"smooth"})}}},B={class:"d-recipe-attachment-carousel",role:"presentation"};function D(t,i,r,p,c,o){const s=e.resolveComponent("dt-icon-arrow-left"),a=e.resolveComponent("dt-button"),m=e.resolveComponent("dt-icon-arrow-right");return e.openBlock(),e.createElementBlock("div",B,[r.mediaList.length>0?(e.openBlock(),e.createElementBlock("ul",{key:0,ref:"carousel",class:"d-recipe-attachment-carousel__media-list",onScroll:i[0]||(i[0]=(...l)=>o.handleScroll&&o.handleScroll(...l))},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.filteredMediaList,(l,n)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.mediaComponent(l.type)),{key:`media-${n}`,index:n,"media-item":l,onRemoveMedia:T=>o.removeMediaItem(n),onFocusin:o.onItemFocus},null,40,["index","media-item","onRemoveMedia","onFocusin"]))),128))],544)):e.createCommentVNode("",!0),e.withDirectives(e.createVNode(a,{tabindex:"-1","aria-label":c.i18n.$t("DIALTONE_ATTACHMENT_CAROUSEL_LEFT_ARROW_ARIA_LABEL"),class:"d-recipe-attachment-carousel__arrow d-recipe-attachment-carousel__arrow--left",circle:"",size:"xs",importance:"clear",onClick:o.leftScroll},{icon:e.withCtx(()=>[e.createVNode(s,{size:"100"})]),_:1},8,["aria-label","onClick"]),[[e.vShow,c.showLeftArrow]]),e.withDirectives(e.createVNode(a,{tabindex:"-1","aria-label":c.i18n.$t("DIALTONE_ATTACHMENT_CAROUSEL_RIGHT_ARROW_ARIA_LABEL"),class:"d-recipe-attachment-carousel__arrow d-recipe-attachment-carousel__arrow--right",circle:"",size:"xs",importance:"clear",onClick:o.rightScroll},{icon:e.withCtx(()=>[e.createVNode(m,{size:"100"})]),_:1},8,["aria-label","onClick"]),[[e.vShow,c.showRightArrow]])])}const R=u._(E,[["render",D]]);exports.default=R;
2
2
  //# sourceMappingURL=attachment-carousel.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"attachment-carousel.cjs","sources":["../../../recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue","../../../recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue","../../../recipes/conversation_view/attachment_carousel/attachment_carousel.vue"],"sourcesContent":["<script>\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtProgressBar',\n props: {\n ariaLabel: {\n type: String,\n required: true,\n },\n\n progress: {\n type: Number,\n default: 20,\n },\n },\n\n data: () => ({\n circleCircumference: 50,\n }),\n\n computed: {\n cssVars () {\n return {\n '--stroke-dashoffset':\n (this.circleCircumference - (this.circleCircumference * this.progress / 100)),\n\n '--stroke-dasharray': this.circleCircumference,\n };\n },\n },\n\n mounted () {\n this.circleCircumference = this.$refs.progressbarCircle.getTotalLength();\n },\n};\n</script>\n\n<template>\n <div\n role=\"progressbar\"\n :aria-label=\"ariaLabel\"\n tabindex=\"-1\"\n :aria-valuenow=\"progress\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n >\n <svg\n class=\"d-recipe-attachment-carousel__progress-bar\"\n :style=\"cssVars\"\n >\n <circle\n ref=\"progressbarCircle\"\n r=\"8\"\n cx=\"12\"\n cy=\"12\"\n class=\"d-recipe-attachment-carousel__progress-bar-circle\"\n />\n <circle\n r=\"8\"\n cx=\"12\"\n cy=\"12\"\n class=\"d-recipe-attachment-carousel__progress-bar-circle\"\n />\n </svg>\n </div>\n</template>\n","<template>\n <li\n class=\"d-recipe-attachment-carousel__image\"\n >\n <dt-image-viewer\n image-button-class=\"d-recipe-attachment-carousel__image-viewer\"\n :image-src=\"mediaItem.path\"\n :image-alt=\"mediaItem.altText\"\n :aria-label=\"i18n.$t('DIALTONE_IMAGE_CAROUSEL_CLICK_TO_OPEN_ARIA_LABEL')\"\n />\n\n <!-- Loader / Close button -->\n <div\n class=\"d-recipe-attachment-carousel__image-top-right\"\n >\n <dt-progress-bar\n v-if=\"mediaItem.isUploading\"\n class=\"d-recipe-attachment-carousel__image-progress-bar\"\n :progress=\"mediaItem.progress\"\n :aria-label=\"i18n.$t('DIALTONE_IMAGE_CAROUSEL_PROGRESS_BAR_ARIA_LABEL')\"\n />\n <dt-button\n :id=\"`closeButton-${index}`\"\n tabindex=\"0\"\n class=\"d-recipe-attachment-carousel__image-close-button\"\n circle\n size=\"xs\"\n importance=\"clear\"\n :aria-label=\"closeButtonTitle\"\n :title=\"closeButtonTitle\"\n @click=\"removeMediaItem(index)\"\n >\n <template #icon>\n <dt-icon-close\n size=\"200\"\n />\n </template>\n </dt-button>\n </div>\n </li>\n</template>\n\n<script>\nimport { DtImageViewer } from '@/components/image_viewer';\nimport { DtButton } from '@/components/button';\nimport { DtIconClose } from '@dialpad/dialtone-icons/vue3';\nimport { DialtoneLocalization } from '@/localization';\n\nimport DtProgressBar from './progress_bar.vue';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtImageCarousel',\n\n components: {\n DtImageViewer,\n DtButton,\n DtIconClose,\n DtProgressBar,\n },\n\n props: {\n mediaItem: {\n type: Object,\n required: true,\n },\n\n index: {\n type: Number,\n required: true,\n },\n },\n\n emits: [\n /**\n * Emitted when media close button is clicked to remove the image\n *\n * @event remove-media\n * @type {Number}\n */\n 'remove-media',\n ],\n\n data () {\n return {\n i18n: new DialtoneLocalization(),\n };\n },\n\n computed: {\n closeButtonTitle () {\n return this.i18n.$t('DIALTONE_CLOSE_BUTTON');\n },\n },\n\n methods: {\n removeMediaItem (index) {\n this.$emit('remove-media', index);\n },\n },\n};\n</script>\n","<template>\n <div\n class=\"d-recipe-attachment-carousel\"\n role=\"presentation\"\n >\n <ul\n v-if=\"mediaList.length > 0\"\n ref=\"carousel\"\n class=\"d-recipe-attachment-carousel__media-list\"\n @scroll=\"handleScroll\"\n >\n <!-- media list -->\n <component\n :is=\"mediaComponent(mediaItem.type)\"\n v-for=\"(mediaItem, index) in filteredMediaList\"\n :key=\"`media-${index}`\"\n :index=\"index\"\n :media-item=\"mediaItem\"\n @remove-media=\"removeMediaItem(index)\"\n @focusin=\"onItemFocus\"\n />\n </ul>\n\n <!-- Carousel Arrows -->\n <dt-button\n v-show=\"showLeftArrow\"\n tabindex=\"-1\"\n :aria-label=\"i18n.$t('DIALTONE_ATTACHMENT_CAROUSEL_LEFT_ARROW_ARIA_LABEL')\"\n class=\"d-recipe-attachment-carousel__arrow d-recipe-attachment-carousel__arrow--left\"\n circle\n size=\"xs\"\n importance=\"clear\"\n @click=\"leftScroll\"\n >\n <template #icon>\n <dt-icon-arrow-left\n size=\"100\"\n />\n </template>\n </dt-button>\n <dt-button\n v-show=\"showRightArrow\"\n tabindex=\"-1\"\n :aria-label=\"i18n.$t('DIALTONE_ATTACHMENT_CAROUSEL_RIGHT_ARROW_ARIA_LABEL')\"\n class=\"d-recipe-attachment-carousel__arrow d-recipe-attachment-carousel__arrow--right\"\n circle\n size=\"xs\"\n importance=\"clear\"\n @click=\"rightScroll\"\n >\n <template #icon>\n <dt-icon-arrow-right\n size=\"100\"\n />\n </template>\n </dt-button>\n </div>\n</template>\n\n<script>\nimport { DtIconArrowRight, DtIconArrowLeft } from '@dialpad/dialtone-icons/vue3';\nimport { DtButton } from '@/components/button';\nimport { DialtoneLocalization } from '@/localization';\n\nimport DtImageCarousel from './media_components/image_carousel.vue';\n\nconst MEDIA_ITEM_WIDTH = 64;\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeAttachmentCarousel',\n\n components: {\n DtButton,\n DtIconArrowRight,\n DtIconArrowLeft,\n DtImageCarousel,\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 * media - object array of media objects\n * @type {Array}\n *\n * Object: {\n * path: String,\n * altText: String | null,\n * }\n */\n mediaList: {\n type: Array,\n default: () => [],\n },\n },\n\n emits: [\n /**\n * Emitted when popover is shown or hidden\n *\n * @event remove-media\n * @type {Number}\n */\n 'remove-media',\n ],\n\n data () {\n return {\n showCloseButton: {},\n showRightArrow: true,\n showLeftArrow: false,\n isMounted: false,\n i18n: new DialtoneLocalization(),\n };\n },\n\n computed: {\n filteredMediaList () {\n return this.mediaList.filter((mediaItem) => mediaItem.type === 'image' || mediaItem.type === 'video');\n },\n },\n\n mounted: function () {\n this.showLeftArrow = this.$refs.carousel.scrollLeft > 0;\n this.showRightArrow = this.$refs.carousel.scrollWidth > this.$refs.carousel.clientWidth;\n },\n\n methods: {\n onItemFocus (e) {\n e.currentTarget.scrollIntoView({ behavior: 'smooth' });\n },\n\n mediaComponent (type) {\n switch (type) {\n case 'image':\n return 'dt-image-carousel';\n default:\n // unknown media type\n return null;\n }\n },\n\n removeMediaItem (index) {\n // make sure the carousel arrows is updated. 64 is the width of each media item\n this.showRightArrow = this.$refs.carousel.scrollWidth > (this.$refs.carousel.clientWidth + MEDIA_ITEM_WIDTH);\n this.$emit('remove-media', index);\n },\n\n closeButton (val, index) {\n this.showCloseButton[index] = val;\n },\n\n handleScroll () {\n const carousel = this.$refs.carousel;\n this.showLeftArrow = carousel.scrollLeft > 0;\n this.showRightArrow = !((carousel.scrollLeft + carousel.clientWidth) === carousel.scrollWidth);\n },\n\n leftScroll () {\n this.$refs.carousel.scrollTo({\n left: this.$refs.carousel.scrollLeft - 100,\n behavior: 'smooth',\n });\n },\n\n rightScroll () {\n this.$refs.carousel.scrollTo({\n left: this.$refs.carousel.scrollLeft + 100,\n behavior: 'smooth',\n });\n },\n },\n};\n</script>\n"],"names":["_sfc_main","_createElementBlock","$props","$options","_createElementVNode","_hoisted_2","DtImageViewer","DtButton","DtIconClose","DtProgressBar","DialtoneLocalization","index","_hoisted_1","_openBlock","_createVNode","_component_dt_image_viewer","$data","_createBlock","_component_dt_progress_bar","_component_dt_button","_cache","$event","_component_dt_icon_close","MEDIA_ITEM_WIDTH","DtIconArrowRight","DtIconArrowLeft","DtImageCarousel","mediaItem","e","type","val","carousel","args","_Fragment","_renderList","_resolveDynamicComponent","_component_dt_icon_arrow_left","_component_dt_icon_arrow_right"],"mappings":"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"}
1
+ {"version":3,"file":"attachment-carousel.cjs","sources":["../../../recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue","../../../recipes/conversation_view/attachment_carousel/attachment_carousel.vue"],"sourcesContent":["<template>\n <li\n class=\"d-recipe-attachment-carousel__image\"\n >\n <dt-image-viewer\n image-button-class=\"d-recipe-attachment-carousel__image-viewer\"\n :image-src=\"mediaItem.path\"\n :image-alt=\"mediaItem.altText\"\n :aria-label=\"i18n.$t('DIALTONE_IMAGE_CAROUSEL_CLICK_TO_OPEN_ARIA_LABEL')\"\n />\n\n <!-- Loader / Close button -->\n <div\n class=\"d-recipe-attachment-carousel__image-top-right\"\n >\n <span\n class=\"d-recipe-attachment-carousel__image-progress-bar\"\n >\n <dt-progress-circle\n v-if=\"mediaItem.isUploading\"\n kind=\"brand\"\n size=\"400\"\n :progress=\"mediaItem.progress\"\n :aria-label=\"i18n.$t('DIALTONE_IMAGE_CAROUSEL_PROGRESS_BAR_ARIA_LABEL')\"\n />\n </span>\n <dt-button\n :id=\"`closeButton-${index}`\"\n tabindex=\"0\"\n class=\"d-recipe-attachment-carousel__image-close-button\"\n circle\n size=\"xs\"\n importance=\"clear\"\n :aria-label=\"closeButtonTitle\"\n :title=\"closeButtonTitle\"\n @click=\"removeMediaItem(index)\"\n >\n <template #icon>\n <dt-icon-close\n size=\"200\"\n />\n </template>\n </dt-button>\n </div>\n </li>\n</template>\n\n<script>\nimport { DtImageViewer } from '@/components/image_viewer';\nimport { DtButton } from '@/components/button';\nimport { DtIconClose } from '@dialpad/dialtone-icons/vue3';\nimport { DialtoneLocalization } from '@/localization';\n\nimport { DtProgressCircle } from '@/components/progress_circle';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtImageCarousel',\n\n components: {\n DtImageViewer,\n DtButton,\n DtIconClose,\n DtProgressCircle,\n },\n\n props: {\n mediaItem: {\n type: Object,\n required: true,\n },\n\n index: {\n type: Number,\n required: true,\n },\n },\n\n emits: [\n /**\n * Emitted when media close button is clicked to remove the image\n *\n * @event remove-media\n * @type {Number}\n */\n 'remove-media',\n ],\n\n data () {\n return {\n i18n: new DialtoneLocalization(),\n };\n },\n\n computed: {\n closeButtonTitle () {\n return this.i18n.$t('DIALTONE_CLOSE_BUTTON');\n },\n },\n\n methods: {\n removeMediaItem (index) {\n this.$emit('remove-media', index);\n },\n },\n};\n</script>\n","<template>\n <div\n class=\"d-recipe-attachment-carousel\"\n role=\"presentation\"\n >\n <ul\n v-if=\"mediaList.length > 0\"\n ref=\"carousel\"\n class=\"d-recipe-attachment-carousel__media-list\"\n @scroll=\"handleScroll\"\n >\n <!-- media list -->\n <component\n :is=\"mediaComponent(mediaItem.type)\"\n v-for=\"(mediaItem, index) in filteredMediaList\"\n :key=\"`media-${index}`\"\n :index=\"index\"\n :media-item=\"mediaItem\"\n @remove-media=\"removeMediaItem(index)\"\n @focusin=\"onItemFocus\"\n />\n </ul>\n\n <!-- Carousel Arrows -->\n <dt-button\n v-show=\"showLeftArrow\"\n tabindex=\"-1\"\n :aria-label=\"i18n.$t('DIALTONE_ATTACHMENT_CAROUSEL_LEFT_ARROW_ARIA_LABEL')\"\n class=\"d-recipe-attachment-carousel__arrow d-recipe-attachment-carousel__arrow--left\"\n circle\n size=\"xs\"\n importance=\"clear\"\n @click=\"leftScroll\"\n >\n <template #icon>\n <dt-icon-arrow-left\n size=\"100\"\n />\n </template>\n </dt-button>\n <dt-button\n v-show=\"showRightArrow\"\n tabindex=\"-1\"\n :aria-label=\"i18n.$t('DIALTONE_ATTACHMENT_CAROUSEL_RIGHT_ARROW_ARIA_LABEL')\"\n class=\"d-recipe-attachment-carousel__arrow d-recipe-attachment-carousel__arrow--right\"\n circle\n size=\"xs\"\n importance=\"clear\"\n @click=\"rightScroll\"\n >\n <template #icon>\n <dt-icon-arrow-right\n size=\"100\"\n />\n </template>\n </dt-button>\n </div>\n</template>\n\n<script>\nimport { DtIconArrowRight, DtIconArrowLeft } from '@dialpad/dialtone-icons/vue3';\nimport { DtButton } from '@/components/button';\nimport { DialtoneLocalization } from '@/localization';\n\nimport DtImageCarousel from './media_components/image_carousel.vue';\n\nconst MEDIA_ITEM_WIDTH = 64;\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeAttachmentCarousel',\n\n components: {\n DtButton,\n DtIconArrowRight,\n DtIconArrowLeft,\n DtImageCarousel,\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 * media - object array of media objects\n * @type {Array}\n *\n * Object: {\n * path: String,\n * altText: String | null,\n * }\n */\n mediaList: {\n type: Array,\n default: () => [],\n },\n },\n\n emits: [\n /**\n * Emitted when popover is shown or hidden\n *\n * @event remove-media\n * @type {Number}\n */\n 'remove-media',\n ],\n\n data () {\n return {\n showCloseButton: {},\n showRightArrow: true,\n showLeftArrow: false,\n isMounted: false,\n i18n: new DialtoneLocalization(),\n };\n },\n\n computed: {\n filteredMediaList () {\n return this.mediaList.filter((mediaItem) => mediaItem.type === 'image' || mediaItem.type === 'video');\n },\n },\n\n mounted: function () {\n this.showLeftArrow = this.$refs.carousel.scrollLeft > 0;\n this.showRightArrow = this.$refs.carousel.scrollWidth > this.$refs.carousel.clientWidth;\n },\n\n methods: {\n onItemFocus (e) {\n e.currentTarget.scrollIntoView({ behavior: 'smooth' });\n },\n\n mediaComponent (type) {\n switch (type) {\n case 'image':\n return 'dt-image-carousel';\n default:\n // unknown media type\n return null;\n }\n },\n\n removeMediaItem (index) {\n // make sure the carousel arrows is updated. 64 is the width of each media item\n this.showRightArrow = this.$refs.carousel.scrollWidth > (this.$refs.carousel.clientWidth + MEDIA_ITEM_WIDTH);\n this.$emit('remove-media', index);\n },\n\n closeButton (val, index) {\n this.showCloseButton[index] = val;\n },\n\n handleScroll () {\n const carousel = this.$refs.carousel;\n this.showLeftArrow = carousel.scrollLeft > 0;\n this.showRightArrow = !((carousel.scrollLeft + carousel.clientWidth) === carousel.scrollWidth);\n },\n\n leftScroll () {\n this.$refs.carousel.scrollTo({\n left: this.$refs.carousel.scrollLeft - 100,\n behavior: 'smooth',\n });\n },\n\n rightScroll () {\n this.$refs.carousel.scrollTo({\n left: this.$refs.carousel.scrollLeft + 100,\n behavior: 'smooth',\n });\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtImageViewer","DtButton","DtIconClose","DtProgressCircle","DialtoneLocalization","index","_hoisted_1","_hoisted_2","_hoisted_3","_openBlock","_createElementBlock","_createVNode","_component_dt_image_viewer","$props","$data","_createElementVNode","_createBlock","_component_dt_progress_circle","_component_dt_button","$options","_cache","$event","_component_dt_icon_close","MEDIA_ITEM_WIDTH","DtIconArrowRight","DtIconArrowLeft","DtImageCarousel","mediaItem","e","type","val","carousel","args","_Fragment","_renderList","_resolveDynamicComponent","_component_dt_icon_arrow_left","_component_dt_icon_arrow_right"],"mappings":"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"}
@@ -1,74 +1,18 @@
1
- import { DtIconClose as v, DtIconArrowLeft as E, DtIconArrowRight as T } from "@dialpad/dialtone-icons/vue3";
2
- import { DialtoneLocalization as L } from "../../localization/index.js";
3
- import { openBlock as i, createElementBlock as n, normalizeStyle as R, createElementVNode as h, resolveComponent as s, createVNode as c, createBlock as b, createCommentVNode as C, withCtx as f, Fragment as D, renderList as x, resolveDynamicComponent as O, withDirectives as A, vShow as w } from "vue";
4
- import { _ as p } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
5
- import I from "../button/button.js";
6
- import B from "../image-viewer/image-viewer.js";
7
- const y = {
8
- compatConfig: { MODE: 3 },
9
- name: "DtProgressBar",
10
- props: {
11
- ariaLabel: {
12
- type: String,
13
- required: !0
14
- },
15
- progress: {
16
- type: Number,
17
- default: 20
18
- }
19
- },
20
- data: () => ({
21
- circleCircumference: 50
22
- }),
23
- computed: {
24
- cssVars() {
25
- return {
26
- "--stroke-dashoffset": this.circleCircumference - this.circleCircumference * this.progress / 100,
27
- "--stroke-dasharray": this.circleCircumference
28
- };
29
- }
30
- },
31
- mounted() {
32
- this.circleCircumference = this.$refs.progressbarCircle.getTotalLength();
33
- }
34
- }, M = ["aria-label", "aria-valuenow"], S = {
35
- ref: "progressbarCircle",
36
- r: "8",
37
- cx: "12",
38
- cy: "12",
39
- class: "d-recipe-attachment-carousel__progress-bar-circle"
40
- };
41
- function N(e, o, r, g, a, t) {
42
- return i(), n("div", {
43
- role: "progressbar",
44
- "aria-label": r.ariaLabel,
45
- tabindex: "-1",
46
- "aria-valuenow": r.progress,
47
- "aria-valuemin": "0",
48
- "aria-valuemax": "100"
49
- }, [
50
- (i(), n("svg", {
51
- class: "d-recipe-attachment-carousel__progress-bar",
52
- style: R(t.cssVars)
53
- }, [
54
- h("circle", S, null, 512),
55
- o[0] || (o[0] = h("circle", {
56
- r: "8",
57
- cx: "12",
58
- cy: "12",
59
- class: "d-recipe-attachment-carousel__progress-bar-circle"
60
- }, null, -1))
61
- ], 4))
62
- ], 8, M);
63
- }
64
- const $ = /* @__PURE__ */ p(y, [["render", N]]), k = {
1
+ import { DtIconClose as b, DtIconArrowLeft as v, DtIconArrowRight as R } from "@dialpad/dialtone-icons/vue3";
2
+ import { DialtoneLocalization as g } from "../../localization/index.js";
3
+ import { resolveComponent as a, openBlock as l, createElementBlock as _, createVNode as s, createElementVNode as f, createBlock as w, createCommentVNode as L, withCtx as h, Fragment as T, renderList as D, resolveDynamicComponent as O, withDirectives as p, vShow as A } from "vue";
4
+ import { _ as I } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
5
+ import B from "../progress-circle/progress-circle.js";
6
+ import C from "../button/button.js";
7
+ import M from "../image-viewer/image-viewer.js";
8
+ const S = {
65
9
  compatConfig: { MODE: 3 },
66
10
  name: "DtImageCarousel",
67
11
  components: {
68
- DtImageViewer: B,
69
- DtButton: I,
70
- DtIconClose: v,
71
- DtProgressBar: $
12
+ DtImageViewer: M,
13
+ DtButton: C,
14
+ DtIconClose: b,
15
+ DtProgressCircle: B
72
16
  },
73
17
  props: {
74
18
  mediaItem: {
@@ -91,7 +35,7 @@ const $ = /* @__PURE__ */ p(y, [["render", N]]), k = {
91
35
  ],
92
36
  data() {
93
37
  return {
94
- i18n: new L()
38
+ i18n: new g()
95
39
  };
96
40
  },
97
41
  computed: {
@@ -104,24 +48,27 @@ const $ = /* @__PURE__ */ p(y, [["render", N]]), k = {
104
48
  this.$emit("remove-media", e);
105
49
  }
106
50
  }
107
- }, W = { class: "d-recipe-attachment-carousel__image" }, z = { class: "d-recipe-attachment-carousel__image-top-right" };
108
- function V(e, o, r, g, a, t) {
109
- const d = s("dt-image-viewer"), m = s("dt-progress-bar"), u = s("dt-icon-close"), l = s("dt-button");
110
- return i(), n("li", W, [
111
- c(d, {
51
+ }, x = { class: "d-recipe-attachment-carousel__image" }, N = { class: "d-recipe-attachment-carousel__image-top-right" }, k = { class: "d-recipe-attachment-carousel__image-progress-bar" };
52
+ function y(e, o, r, E, i, t) {
53
+ const d = a("dt-image-viewer"), n = a("dt-progress-circle"), u = a("dt-icon-close"), c = a("dt-button");
54
+ return l(), _("li", x, [
55
+ s(d, {
112
56
  "image-button-class": "d-recipe-attachment-carousel__image-viewer",
113
57
  "image-src": r.mediaItem.path,
114
58
  "image-alt": r.mediaItem.altText,
115
- "aria-label": a.i18n.$t("DIALTONE_IMAGE_CAROUSEL_CLICK_TO_OPEN_ARIA_LABEL")
59
+ "aria-label": i.i18n.$t("DIALTONE_IMAGE_CAROUSEL_CLICK_TO_OPEN_ARIA_LABEL")
116
60
  }, null, 8, ["image-src", "image-alt", "aria-label"]),
117
- h("div", z, [
118
- r.mediaItem.isUploading ? (i(), b(m, {
119
- key: 0,
120
- class: "d-recipe-attachment-carousel__image-progress-bar",
121
- progress: r.mediaItem.progress,
122
- "aria-label": a.i18n.$t("DIALTONE_IMAGE_CAROUSEL_PROGRESS_BAR_ARIA_LABEL")
123
- }, null, 8, ["progress", "aria-label"])) : C("", !0),
124
- c(l, {
61
+ f("div", N, [
62
+ f("span", k, [
63
+ r.mediaItem.isUploading ? (l(), w(n, {
64
+ key: 0,
65
+ kind: "brand",
66
+ size: "400",
67
+ progress: r.mediaItem.progress,
68
+ "aria-label": i.i18n.$t("DIALTONE_IMAGE_CAROUSEL_PROGRESS_BAR_ARIA_LABEL")
69
+ }, null, 8, ["progress", "aria-label"])) : L("", !0)
70
+ ]),
71
+ s(c, {
125
72
  id: `closeButton-${r.index}`,
126
73
  tabindex: "0",
127
74
  class: "d-recipe-attachment-carousel__image-close-button",
@@ -130,24 +77,24 @@ function V(e, o, r, g, a, t) {
130
77
  importance: "clear",
131
78
  "aria-label": t.closeButtonTitle,
132
79
  title: t.closeButtonTitle,
133
- onClick: o[0] || (o[0] = (_) => t.removeMediaItem(r.index))
80
+ onClick: o[0] || (o[0] = (m) => t.removeMediaItem(r.index))
134
81
  }, {
135
- icon: f(() => [
136
- c(u, { size: "200" })
82
+ icon: h(() => [
83
+ s(u, { size: "200" })
137
84
  ]),
138
85
  _: 1
139
86
  }, 8, ["id", "aria-label", "title"])
140
87
  ])
141
88
  ]);
142
89
  }
143
- const F = /* @__PURE__ */ p(k, [["render", V]]), U = 64, G = {
90
+ const W = /* @__PURE__ */ I(S, [["render", y]]), z = 64, $ = {
144
91
  compatConfig: { MODE: 3 },
145
92
  name: "DtRecipeAttachmentCarousel",
146
93
  components: {
147
- DtButton: I,
148
- DtIconArrowRight: T,
149
- DtIconArrowLeft: E,
150
- DtImageCarousel: F
94
+ DtButton: C,
95
+ DtIconArrowRight: R,
96
+ DtIconArrowLeft: v,
97
+ DtImageCarousel: W
151
98
  },
152
99
  /* inheritAttrs: false is generally an option we want to set on library
153
100
  components. This allows any attributes passed in that are not recognized
@@ -184,7 +131,7 @@ const F = /* @__PURE__ */ p(k, [["render", V]]), U = 64, G = {
184
131
  showRightArrow: !0,
185
132
  showLeftArrow: !1,
186
133
  isMounted: !1,
187
- i18n: new L()
134
+ i18n: new g()
188
135
  };
189
136
  },
190
137
  computed: {
@@ -208,7 +155,7 @@ const F = /* @__PURE__ */ p(k, [["render", V]]), U = 64, G = {
208
155
  }
209
156
  },
210
157
  removeMediaItem(e) {
211
- this.showRightArrow = this.$refs.carousel.scrollWidth > this.$refs.carousel.clientWidth + U, this.$emit("remove-media", e);
158
+ this.showRightArrow = this.$refs.carousel.scrollWidth > this.$refs.carousel.clientWidth + z, this.$emit("remove-media", e);
212
159
  },
213
160
  closeButton(e, o) {
214
161
  this.showCloseButton[o] = e;
@@ -230,63 +177,63 @@ const F = /* @__PURE__ */ p(k, [["render", V]]), U = 64, G = {
230
177
  });
231
178
  }
232
179
  }
233
- }, H = {
180
+ }, F = {
234
181
  class: "d-recipe-attachment-carousel",
235
182
  role: "presentation"
236
183
  };
237
- function P(e, o, r, g, a, t) {
238
- const d = s("dt-icon-arrow-left"), m = s("dt-button"), u = s("dt-icon-arrow-right");
239
- return i(), n("div", H, [
240
- r.mediaList.length > 0 ? (i(), n("ul", {
184
+ function U(e, o, r, E, i, t) {
185
+ const d = a("dt-icon-arrow-left"), n = a("dt-button"), u = a("dt-icon-arrow-right");
186
+ return l(), _("div", F, [
187
+ r.mediaList.length > 0 ? (l(), _("ul", {
241
188
  key: 0,
242
189
  ref: "carousel",
243
190
  class: "d-recipe-attachment-carousel__media-list",
244
- onScroll: o[0] || (o[0] = (...l) => t.handleScroll && t.handleScroll(...l))
191
+ onScroll: o[0] || (o[0] = (...c) => t.handleScroll && t.handleScroll(...c))
245
192
  }, [
246
- (i(!0), n(D, null, x(t.filteredMediaList, (l, _) => (i(), b(O(t.mediaComponent(l.type)), {
247
- key: `media-${_}`,
248
- index: _,
249
- "media-item": l,
250
- onRemoveMedia: (q) => t.removeMediaItem(_),
193
+ (l(!0), _(T, null, D(t.filteredMediaList, (c, m) => (l(), w(O(t.mediaComponent(c.type)), {
194
+ key: `media-${m}`,
195
+ index: m,
196
+ "media-item": c,
197
+ onRemoveMedia: (V) => t.removeMediaItem(m),
251
198
  onFocusin: t.onItemFocus
252
199
  }, null, 40, ["index", "media-item", "onRemoveMedia", "onFocusin"]))), 128))
253
- ], 544)) : C("", !0),
254
- A(c(m, {
200
+ ], 544)) : L("", !0),
201
+ p(s(n, {
255
202
  tabindex: "-1",
256
- "aria-label": a.i18n.$t("DIALTONE_ATTACHMENT_CAROUSEL_LEFT_ARROW_ARIA_LABEL"),
203
+ "aria-label": i.i18n.$t("DIALTONE_ATTACHMENT_CAROUSEL_LEFT_ARROW_ARIA_LABEL"),
257
204
  class: "d-recipe-attachment-carousel__arrow d-recipe-attachment-carousel__arrow--left",
258
205
  circle: "",
259
206
  size: "xs",
260
207
  importance: "clear",
261
208
  onClick: t.leftScroll
262
209
  }, {
263
- icon: f(() => [
264
- c(d, { size: "100" })
210
+ icon: h(() => [
211
+ s(d, { size: "100" })
265
212
  ]),
266
213
  _: 1
267
214
  }, 8, ["aria-label", "onClick"]), [
268
- [w, a.showLeftArrow]
215
+ [A, i.showLeftArrow]
269
216
  ]),
270
- A(c(m, {
217
+ p(s(n, {
271
218
  tabindex: "-1",
272
- "aria-label": a.i18n.$t("DIALTONE_ATTACHMENT_CAROUSEL_RIGHT_ARROW_ARIA_LABEL"),
219
+ "aria-label": i.i18n.$t("DIALTONE_ATTACHMENT_CAROUSEL_RIGHT_ARROW_ARIA_LABEL"),
273
220
  class: "d-recipe-attachment-carousel__arrow d-recipe-attachment-carousel__arrow--right",
274
221
  circle: "",
275
222
  size: "xs",
276
223
  importance: "clear",
277
224
  onClick: t.rightScroll
278
225
  }, {
279
- icon: f(() => [
280
- c(u, { size: "100" })
226
+ icon: h(() => [
227
+ s(u, { size: "100" })
281
228
  ]),
282
229
  _: 1
283
230
  }, 8, ["aria-label", "onClick"]), [
284
- [w, a.showRightArrow]
231
+ [A, i.showRightArrow]
285
232
  ])
286
233
  ]);
287
234
  }
288
- const Z = /* @__PURE__ */ p(G, [["render", P]]);
235
+ const Q = /* @__PURE__ */ I($, [["render", U]]);
289
236
  export {
290
- Z as default
237
+ Q as default
291
238
  };
292
239
  //# sourceMappingURL=attachment-carousel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"attachment-carousel.js","sources":["../../../recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue","../../../recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue","../../../recipes/conversation_view/attachment_carousel/attachment_carousel.vue"],"sourcesContent":["<script>\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtProgressBar',\n props: {\n ariaLabel: {\n type: String,\n required: true,\n },\n\n progress: {\n type: Number,\n default: 20,\n },\n },\n\n data: () => ({\n circleCircumference: 50,\n }),\n\n computed: {\n cssVars () {\n return {\n '--stroke-dashoffset':\n (this.circleCircumference - (this.circleCircumference * this.progress / 100)),\n\n '--stroke-dasharray': this.circleCircumference,\n };\n },\n },\n\n mounted () {\n this.circleCircumference = this.$refs.progressbarCircle.getTotalLength();\n },\n};\n</script>\n\n<template>\n <div\n role=\"progressbar\"\n :aria-label=\"ariaLabel\"\n tabindex=\"-1\"\n :aria-valuenow=\"progress\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n >\n <svg\n class=\"d-recipe-attachment-carousel__progress-bar\"\n :style=\"cssVars\"\n >\n <circle\n ref=\"progressbarCircle\"\n r=\"8\"\n cx=\"12\"\n cy=\"12\"\n class=\"d-recipe-attachment-carousel__progress-bar-circle\"\n />\n <circle\n r=\"8\"\n cx=\"12\"\n cy=\"12\"\n class=\"d-recipe-attachment-carousel__progress-bar-circle\"\n />\n </svg>\n </div>\n</template>\n","<template>\n <li\n class=\"d-recipe-attachment-carousel__image\"\n >\n <dt-image-viewer\n image-button-class=\"d-recipe-attachment-carousel__image-viewer\"\n :image-src=\"mediaItem.path\"\n :image-alt=\"mediaItem.altText\"\n :aria-label=\"i18n.$t('DIALTONE_IMAGE_CAROUSEL_CLICK_TO_OPEN_ARIA_LABEL')\"\n />\n\n <!-- Loader / Close button -->\n <div\n class=\"d-recipe-attachment-carousel__image-top-right\"\n >\n <dt-progress-bar\n v-if=\"mediaItem.isUploading\"\n class=\"d-recipe-attachment-carousel__image-progress-bar\"\n :progress=\"mediaItem.progress\"\n :aria-label=\"i18n.$t('DIALTONE_IMAGE_CAROUSEL_PROGRESS_BAR_ARIA_LABEL')\"\n />\n <dt-button\n :id=\"`closeButton-${index}`\"\n tabindex=\"0\"\n class=\"d-recipe-attachment-carousel__image-close-button\"\n circle\n size=\"xs\"\n importance=\"clear\"\n :aria-label=\"closeButtonTitle\"\n :title=\"closeButtonTitle\"\n @click=\"removeMediaItem(index)\"\n >\n <template #icon>\n <dt-icon-close\n size=\"200\"\n />\n </template>\n </dt-button>\n </div>\n </li>\n</template>\n\n<script>\nimport { DtImageViewer } from '@/components/image_viewer';\nimport { DtButton } from '@/components/button';\nimport { DtIconClose } from '@dialpad/dialtone-icons/vue3';\nimport { DialtoneLocalization } from '@/localization';\n\nimport DtProgressBar from './progress_bar.vue';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtImageCarousel',\n\n components: {\n DtImageViewer,\n DtButton,\n DtIconClose,\n DtProgressBar,\n },\n\n props: {\n mediaItem: {\n type: Object,\n required: true,\n },\n\n index: {\n type: Number,\n required: true,\n },\n },\n\n emits: [\n /**\n * Emitted when media close button is clicked to remove the image\n *\n * @event remove-media\n * @type {Number}\n */\n 'remove-media',\n ],\n\n data () {\n return {\n i18n: new DialtoneLocalization(),\n };\n },\n\n computed: {\n closeButtonTitle () {\n return this.i18n.$t('DIALTONE_CLOSE_BUTTON');\n },\n },\n\n methods: {\n removeMediaItem (index) {\n this.$emit('remove-media', index);\n },\n },\n};\n</script>\n","<template>\n <div\n class=\"d-recipe-attachment-carousel\"\n role=\"presentation\"\n >\n <ul\n v-if=\"mediaList.length > 0\"\n ref=\"carousel\"\n class=\"d-recipe-attachment-carousel__media-list\"\n @scroll=\"handleScroll\"\n >\n <!-- media list -->\n <component\n :is=\"mediaComponent(mediaItem.type)\"\n v-for=\"(mediaItem, index) in filteredMediaList\"\n :key=\"`media-${index}`\"\n :index=\"index\"\n :media-item=\"mediaItem\"\n @remove-media=\"removeMediaItem(index)\"\n @focusin=\"onItemFocus\"\n />\n </ul>\n\n <!-- Carousel Arrows -->\n <dt-button\n v-show=\"showLeftArrow\"\n tabindex=\"-1\"\n :aria-label=\"i18n.$t('DIALTONE_ATTACHMENT_CAROUSEL_LEFT_ARROW_ARIA_LABEL')\"\n class=\"d-recipe-attachment-carousel__arrow d-recipe-attachment-carousel__arrow--left\"\n circle\n size=\"xs\"\n importance=\"clear\"\n @click=\"leftScroll\"\n >\n <template #icon>\n <dt-icon-arrow-left\n size=\"100\"\n />\n </template>\n </dt-button>\n <dt-button\n v-show=\"showRightArrow\"\n tabindex=\"-1\"\n :aria-label=\"i18n.$t('DIALTONE_ATTACHMENT_CAROUSEL_RIGHT_ARROW_ARIA_LABEL')\"\n class=\"d-recipe-attachment-carousel__arrow d-recipe-attachment-carousel__arrow--right\"\n circle\n size=\"xs\"\n importance=\"clear\"\n @click=\"rightScroll\"\n >\n <template #icon>\n <dt-icon-arrow-right\n size=\"100\"\n />\n </template>\n </dt-button>\n </div>\n</template>\n\n<script>\nimport { DtIconArrowRight, DtIconArrowLeft } from '@dialpad/dialtone-icons/vue3';\nimport { DtButton } from '@/components/button';\nimport { DialtoneLocalization } from '@/localization';\n\nimport DtImageCarousel from './media_components/image_carousel.vue';\n\nconst MEDIA_ITEM_WIDTH = 64;\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeAttachmentCarousel',\n\n components: {\n DtButton,\n DtIconArrowRight,\n DtIconArrowLeft,\n DtImageCarousel,\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 * media - object array of media objects\n * @type {Array}\n *\n * Object: {\n * path: String,\n * altText: String | null,\n * }\n */\n mediaList: {\n type: Array,\n default: () => [],\n },\n },\n\n emits: [\n /**\n * Emitted when popover is shown or hidden\n *\n * @event remove-media\n * @type {Number}\n */\n 'remove-media',\n ],\n\n data () {\n return {\n showCloseButton: {},\n showRightArrow: true,\n showLeftArrow: false,\n isMounted: false,\n i18n: new DialtoneLocalization(),\n };\n },\n\n computed: {\n filteredMediaList () {\n return this.mediaList.filter((mediaItem) => mediaItem.type === 'image' || mediaItem.type === 'video');\n },\n },\n\n mounted: function () {\n this.showLeftArrow = this.$refs.carousel.scrollLeft > 0;\n this.showRightArrow = this.$refs.carousel.scrollWidth > this.$refs.carousel.clientWidth;\n },\n\n methods: {\n onItemFocus (e) {\n e.currentTarget.scrollIntoView({ behavior: 'smooth' });\n },\n\n mediaComponent (type) {\n switch (type) {\n case 'image':\n return 'dt-image-carousel';\n default:\n // unknown media type\n return null;\n }\n },\n\n removeMediaItem (index) {\n // make sure the carousel arrows is updated. 64 is the width of each media item\n this.showRightArrow = this.$refs.carousel.scrollWidth > (this.$refs.carousel.clientWidth + MEDIA_ITEM_WIDTH);\n this.$emit('remove-media', index);\n },\n\n closeButton (val, index) {\n this.showCloseButton[index] = val;\n },\n\n handleScroll () {\n const carousel = this.$refs.carousel;\n this.showLeftArrow = carousel.scrollLeft > 0;\n this.showRightArrow = !((carousel.scrollLeft + carousel.clientWidth) === carousel.scrollWidth);\n },\n\n leftScroll () {\n this.$refs.carousel.scrollTo({\n left: this.$refs.carousel.scrollLeft - 100,\n behavior: 'smooth',\n });\n },\n\n rightScroll () {\n this.$refs.carousel.scrollTo({\n left: this.$refs.carousel.scrollLeft + 100,\n behavior: 'smooth',\n });\n },\n },\n};\n</script>\n"],"names":["_sfc_main","_createElementBlock","$props","$options","_createElementVNode","_hoisted_2","DtImageViewer","DtButton","DtIconClose","DtProgressBar","DialtoneLocalization","index","_hoisted_1","_openBlock","_createVNode","_component_dt_image_viewer","$data","_createBlock","_component_dt_progress_bar","_component_dt_button","_cache","$event","_component_dt_icon_close","MEDIA_ITEM_WIDTH","DtIconArrowRight","DtIconArrowLeft","DtImageCarousel","mediaItem","type","val","carousel","args","_Fragment","_renderList","_resolveDynamicComponent","_component_dt_icon_arrow_left","_component_dt_icon_arrow_right"],"mappings":"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"}
1
+ {"version":3,"file":"attachment-carousel.js","sources":["../../../recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue","../../../recipes/conversation_view/attachment_carousel/attachment_carousel.vue"],"sourcesContent":["<template>\n <li\n class=\"d-recipe-attachment-carousel__image\"\n >\n <dt-image-viewer\n image-button-class=\"d-recipe-attachment-carousel__image-viewer\"\n :image-src=\"mediaItem.path\"\n :image-alt=\"mediaItem.altText\"\n :aria-label=\"i18n.$t('DIALTONE_IMAGE_CAROUSEL_CLICK_TO_OPEN_ARIA_LABEL')\"\n />\n\n <!-- Loader / Close button -->\n <div\n class=\"d-recipe-attachment-carousel__image-top-right\"\n >\n <span\n class=\"d-recipe-attachment-carousel__image-progress-bar\"\n >\n <dt-progress-circle\n v-if=\"mediaItem.isUploading\"\n kind=\"brand\"\n size=\"400\"\n :progress=\"mediaItem.progress\"\n :aria-label=\"i18n.$t('DIALTONE_IMAGE_CAROUSEL_PROGRESS_BAR_ARIA_LABEL')\"\n />\n </span>\n <dt-button\n :id=\"`closeButton-${index}`\"\n tabindex=\"0\"\n class=\"d-recipe-attachment-carousel__image-close-button\"\n circle\n size=\"xs\"\n importance=\"clear\"\n :aria-label=\"closeButtonTitle\"\n :title=\"closeButtonTitle\"\n @click=\"removeMediaItem(index)\"\n >\n <template #icon>\n <dt-icon-close\n size=\"200\"\n />\n </template>\n </dt-button>\n </div>\n </li>\n</template>\n\n<script>\nimport { DtImageViewer } from '@/components/image_viewer';\nimport { DtButton } from '@/components/button';\nimport { DtIconClose } from '@dialpad/dialtone-icons/vue3';\nimport { DialtoneLocalization } from '@/localization';\n\nimport { DtProgressCircle } from '@/components/progress_circle';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtImageCarousel',\n\n components: {\n DtImageViewer,\n DtButton,\n DtIconClose,\n DtProgressCircle,\n },\n\n props: {\n mediaItem: {\n type: Object,\n required: true,\n },\n\n index: {\n type: Number,\n required: true,\n },\n },\n\n emits: [\n /**\n * Emitted when media close button is clicked to remove the image\n *\n * @event remove-media\n * @type {Number}\n */\n 'remove-media',\n ],\n\n data () {\n return {\n i18n: new DialtoneLocalization(),\n };\n },\n\n computed: {\n closeButtonTitle () {\n return this.i18n.$t('DIALTONE_CLOSE_BUTTON');\n },\n },\n\n methods: {\n removeMediaItem (index) {\n this.$emit('remove-media', index);\n },\n },\n};\n</script>\n","<template>\n <div\n class=\"d-recipe-attachment-carousel\"\n role=\"presentation\"\n >\n <ul\n v-if=\"mediaList.length > 0\"\n ref=\"carousel\"\n class=\"d-recipe-attachment-carousel__media-list\"\n @scroll=\"handleScroll\"\n >\n <!-- media list -->\n <component\n :is=\"mediaComponent(mediaItem.type)\"\n v-for=\"(mediaItem, index) in filteredMediaList\"\n :key=\"`media-${index}`\"\n :index=\"index\"\n :media-item=\"mediaItem\"\n @remove-media=\"removeMediaItem(index)\"\n @focusin=\"onItemFocus\"\n />\n </ul>\n\n <!-- Carousel Arrows -->\n <dt-button\n v-show=\"showLeftArrow\"\n tabindex=\"-1\"\n :aria-label=\"i18n.$t('DIALTONE_ATTACHMENT_CAROUSEL_LEFT_ARROW_ARIA_LABEL')\"\n class=\"d-recipe-attachment-carousel__arrow d-recipe-attachment-carousel__arrow--left\"\n circle\n size=\"xs\"\n importance=\"clear\"\n @click=\"leftScroll\"\n >\n <template #icon>\n <dt-icon-arrow-left\n size=\"100\"\n />\n </template>\n </dt-button>\n <dt-button\n v-show=\"showRightArrow\"\n tabindex=\"-1\"\n :aria-label=\"i18n.$t('DIALTONE_ATTACHMENT_CAROUSEL_RIGHT_ARROW_ARIA_LABEL')\"\n class=\"d-recipe-attachment-carousel__arrow d-recipe-attachment-carousel__arrow--right\"\n circle\n size=\"xs\"\n importance=\"clear\"\n @click=\"rightScroll\"\n >\n <template #icon>\n <dt-icon-arrow-right\n size=\"100\"\n />\n </template>\n </dt-button>\n </div>\n</template>\n\n<script>\nimport { DtIconArrowRight, DtIconArrowLeft } from '@dialpad/dialtone-icons/vue3';\nimport { DtButton } from '@/components/button';\nimport { DialtoneLocalization } from '@/localization';\n\nimport DtImageCarousel from './media_components/image_carousel.vue';\n\nconst MEDIA_ITEM_WIDTH = 64;\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeAttachmentCarousel',\n\n components: {\n DtButton,\n DtIconArrowRight,\n DtIconArrowLeft,\n DtImageCarousel,\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 * media - object array of media objects\n * @type {Array}\n *\n * Object: {\n * path: String,\n * altText: String | null,\n * }\n */\n mediaList: {\n type: Array,\n default: () => [],\n },\n },\n\n emits: [\n /**\n * Emitted when popover is shown or hidden\n *\n * @event remove-media\n * @type {Number}\n */\n 'remove-media',\n ],\n\n data () {\n return {\n showCloseButton: {},\n showRightArrow: true,\n showLeftArrow: false,\n isMounted: false,\n i18n: new DialtoneLocalization(),\n };\n },\n\n computed: {\n filteredMediaList () {\n return this.mediaList.filter((mediaItem) => mediaItem.type === 'image' || mediaItem.type === 'video');\n },\n },\n\n mounted: function () {\n this.showLeftArrow = this.$refs.carousel.scrollLeft > 0;\n this.showRightArrow = this.$refs.carousel.scrollWidth > this.$refs.carousel.clientWidth;\n },\n\n methods: {\n onItemFocus (e) {\n e.currentTarget.scrollIntoView({ behavior: 'smooth' });\n },\n\n mediaComponent (type) {\n switch (type) {\n case 'image':\n return 'dt-image-carousel';\n default:\n // unknown media type\n return null;\n }\n },\n\n removeMediaItem (index) {\n // make sure the carousel arrows is updated. 64 is the width of each media item\n this.showRightArrow = this.$refs.carousel.scrollWidth > (this.$refs.carousel.clientWidth + MEDIA_ITEM_WIDTH);\n this.$emit('remove-media', index);\n },\n\n closeButton (val, index) {\n this.showCloseButton[index] = val;\n },\n\n handleScroll () {\n const carousel = this.$refs.carousel;\n this.showLeftArrow = carousel.scrollLeft > 0;\n this.showRightArrow = !((carousel.scrollLeft + carousel.clientWidth) === carousel.scrollWidth);\n },\n\n leftScroll () {\n this.$refs.carousel.scrollTo({\n left: this.$refs.carousel.scrollLeft - 100,\n behavior: 'smooth',\n });\n },\n\n rightScroll () {\n this.$refs.carousel.scrollTo({\n left: this.$refs.carousel.scrollLeft + 100,\n behavior: 'smooth',\n });\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtImageViewer","DtButton","DtIconClose","DtProgressCircle","DialtoneLocalization","index","_hoisted_1","_hoisted_2","_hoisted_3","_openBlock","_createElementBlock","_createVNode","_component_dt_image_viewer","$props","$data","_createElementVNode","_createBlock","_component_dt_progress_circle","_component_dt_button","$options","_cache","$event","_component_dt_icon_close","MEDIA_ITEM_WIDTH","DtIconArrowRight","DtIconArrowLeft","DtImageCarousel","mediaItem","type","val","carousel","args","_Fragment","_renderList","_resolveDynamicComponent","_component_dt_icon_arrow_left","_component_dt_icon_arrow_right"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const _={xs:"d-avatar--xs",sm:"d-avatar--sm",md:"d-avatar--md",lg:"d-avatar--lg",xl:"d-avatar--xl"},a={default:"",icon:"d-avatar__icon",initials:"d-avatar__initials"},R={md:"d-avatar__presence--md",lg:"d-avatar__presence--lg"},t={NONE:"",BUSY:"busy",AWAY:"away",OFFLINE:"offline",ACTIVE:"active"},E={xs:"100",sm:"200",md:"300",lg:"500",xl:"600"},A=["000","100","200","300","400","500","600","700","800","900","1000","1100","1200","1300","1400","1500","1600","1700","1800"],S=A.slice(1),s=I=>I>1,O={AVATAR_SIZE_MODIFIERS:_,AVATAR_KIND_MODIFIERS:a,AVATAR_PRESENCE_SIZE_MODIFIERS:R,AVATAR_PRESENCE_STATES:t,AVATAR_ICON_SIZES:E,AVATAR_COLORS:A,AVATAR_RANDOM_COLORS:S,AVATAR_GROUP_VALIDATOR:s};exports.AVATAR_COLORS=A;exports.AVATAR_GROUP_VALIDATOR=s;exports.AVATAR_ICON_SIZES=E;exports.AVATAR_KIND_MODIFIERS=a;exports.AVATAR_PRESENCE_SIZE_MODIFIERS=R;exports.AVATAR_PRESENCE_STATES=t;exports.AVATAR_RANDOM_COLORS=S;exports.AVATAR_SIZE_MODIFIERS=_;exports.default=O;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const h={100:"d-avatar--size-100",150:"d-avatar--size-150",200:"d-avatar--size-200",250:"d-avatar--size-250",300:"d-avatar--size-300",400:"d-avatar--size-400",500:"d-avatar--size-500",600:"d-avatar--size-600",700:"d-avatar--size-700",800:"d-avatar--size-800",900:"d-avatar--size-900",xs:"d-avatar--xs",sm:"d-avatar--sm",md:"d-avatar--md",lg:"d-avatar--lg",xl:"d-avatar--xl"},O={default:"",icon:"d-avatar__icon",initials:"d-avatar__initials"},N={100:"d-avatar__presence--100",150:"d-avatar__presence--150",200:"d-avatar__presence--200",250:"d-avatar__presence--250",300:"d-avatar__presence--300",400:"d-avatar__presence--400",500:"d-avatar__presence--500",xs:"d-avatar__presence--100",sm:"d-avatar__presence--200",md:"d-avatar__presence--md",lg:"d-avatar__presence--lg"},f={NONE:"",BUSY:"busy",AWAY:"away",OFFLINE:"offline",ACTIVE:"active"},p={100:"100",150:"100",200:"200",250:"200",300:"300",400:"500",500:"600",600:"600",700:"700",800:"800",900:"800",xs:"100",sm:"200",md:"300",lg:"500",xl:"600"},m=[.45,.49,.54,.59,.64,.69,.74,.78,.82,.85],u=[.08,.12,.15,.17,.18,.17,.15,.12,.1,.08],V={1:0,2:30,3:60,4:90,5:120,6:150,7:180,8:210,9:240,10:270,11:300,12:330},l=12,d=10,F=t=>t>1;function g(t){const a=parseInt(t,10);if(isNaN(a))return null;const e=Math.floor(a/100),n=a%100/10;return e<1||e>l||!Number.isInteger(n)||n<0||n>=d?null:{family:e,variant:n}}function C(t){let a=0;if(t!=null)for(let A=0;A<t.length;A++)a=(a<<5)-a+t.charCodeAt(A),a=a&a;else a=Math.floor(Math.random()*1e6);const e=Math.abs(a),n=e%l+1,r=Math.floor(e/l)%d;return{family:n,variant:r}}function M(t,a,e){const n=e*Math.PI/180,r=a*Math.cos(n),A=a*Math.sin(n),s=t+.3963377774*r+.2158037573*A,T=t-.1055613458*r-.0638541728*A,R=t-.0894841775*r-1.291485548*A,v=s*s*s,S=T*T*T,E=R*R*R;let o=4.0767416621*v-3.3077115913*S+.2309699292*E,_=-1.2684380046*v+2.6097574011*S-.3413193965*E,c=-.0041960863*v-.7034186147*S+1.707614701*E;o=Math.max(0,Math.min(1,o)),_=Math.max(0,Math.min(1,_)),c=Math.max(0,Math.min(1,c));const I=i=>i<=.0031308?12.92*i:1.055*Math.pow(i,1/2.4)-.055;return o=Math.round(I(o)*255),_=Math.round(I(_)*255),c=Math.round(I(c)*255),"#"+[o,_,c].map(i=>i.toString(16).padStart(2,"0")).join("")}function x(t,a,e){const n=m[a],r=u[a],A=V[t]??0,s=(e+A)%360;return M(n,r,s)}const z={AVATAR_SIZE_MODIFIERS:h,AVATAR_KIND_MODIFIERS:O,AVATAR_PRESENCE_SIZE_MODIFIERS:N,AVATAR_PRESENCE_STATES:f,AVATAR_ICON_SIZES:p,AVATAR_LIGHTNESS:m,AVATAR_CHROMA:u,AVATAR_HUE_OFFSETS:V,AVATAR_FAMILY_COUNT:l,AVATAR_VARIANT_COUNT:d,AVATAR_GROUP_VALIDATOR:F,colorToFamilyVariant:g,getRandomFamilyVariant:C,oklchToHex:M,computeAvatarHex:x};exports.AVATAR_CHROMA=u;exports.AVATAR_FAMILY_COUNT=l;exports.AVATAR_GROUP_VALIDATOR=F;exports.AVATAR_HUE_OFFSETS=V;exports.AVATAR_ICON_SIZES=p;exports.AVATAR_KIND_MODIFIERS=O;exports.AVATAR_LIGHTNESS=m;exports.AVATAR_PRESENCE_SIZE_MODIFIERS=N;exports.AVATAR_PRESENCE_STATES=f;exports.AVATAR_SIZE_MODIFIERS=h;exports.AVATAR_VARIANT_COUNT=d;exports.colorToFamilyVariant=g;exports.computeAvatarHex=x;exports.default=z;exports.getRandomFamilyVariant=C;exports.oklchToHex=M;
2
2
  //# sourceMappingURL=avatar-constants.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"avatar-constants.cjs","sources":["../../../components/avatar/avatar_constants.js"],"sourcesContent":["export const AVATAR_SIZE_MODIFIERS = {\n xs: 'd-avatar--xs',\n sm: 'd-avatar--sm',\n md: 'd-avatar--md',\n lg: 'd-avatar--lg',\n xl: 'd-avatar--xl',\n};\n\nexport const AVATAR_KIND_MODIFIERS = {\n default: '',\n icon: 'd-avatar__icon',\n initials: 'd-avatar__initials',\n};\n\nexport const AVATAR_PRESENCE_SIZE_MODIFIERS = {\n md: 'd-avatar__presence--md',\n lg: 'd-avatar__presence--lg',\n};\n\nexport const AVATAR_PRESENCE_STATES = {\n NONE: '',\n BUSY: 'busy',\n AWAY: 'away',\n OFFLINE: 'offline',\n ACTIVE: 'active',\n};\n\nexport const AVATAR_ICON_SIZES = {\n xs: '100',\n sm: '200',\n md: '300',\n lg: '500',\n xl: '600',\n};\n\nexport const AVATAR_COLORS = [\n '000',\n '100',\n '200',\n '300',\n '400',\n '500',\n '600',\n '700',\n '800',\n '900',\n '1000',\n '1100',\n '1200',\n '1300',\n '1400',\n '1500',\n '1600',\n '1700',\n '1800',\n];\n\n// We do not use the color '000' (grey) in the randomized avatar colors, but it can still be set manually.\nexport const AVATAR_RANDOM_COLORS = AVATAR_COLORS.slice(1);\n\nexport const AVATAR_GROUP_VALIDATOR = (group) => group > 1;\n\nexport default {\n AVATAR_SIZE_MODIFIERS,\n AVATAR_KIND_MODIFIERS,\n AVATAR_PRESENCE_SIZE_MODIFIERS,\n AVATAR_PRESENCE_STATES,\n AVATAR_ICON_SIZES,\n AVATAR_COLORS,\n AVATAR_RANDOM_COLORS,\n AVATAR_GROUP_VALIDATOR,\n};\n"],"names":["AVATAR_SIZE_MODIFIERS","AVATAR_KIND_MODIFIERS","AVATAR_PRESENCE_SIZE_MODIFIERS","AVATAR_PRESENCE_STATES","AVATAR_ICON_SIZES","AVATAR_COLORS","AVATAR_RANDOM_COLORS","AVATAR_GROUP_VALIDATOR","group","avatar_constants"],"mappings":"4GAAY,MAACA,EAAwB,CACnC,GAAI,eACJ,GAAI,eACJ,GAAI,eACJ,GAAI,eACJ,GAAI,cACN,EAEaC,EAAwB,CACnC,QAAS,GACT,KAAM,iBACN,SAAU,oBACZ,EAEaC,EAAiC,CAC5C,GAAI,yBACJ,GAAI,wBACN,EAEaC,EAAyB,CACpC,KAAM,GACN,KAAM,OACN,KAAM,OACN,QAAS,UACT,OAAQ,QACV,EAEaC,EAAoB,CAC/B,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,KACN,EAEaC,EAAgB,CAC3B,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,MACF,EAGaC,EAAuBD,EAAc,MAAM,CAAC,EAE5CE,EAA0BC,GAAUA,EAAQ,EAEzDC,EAAe,CACb,sBAAAT,EACA,sBAAAC,EACA,+BAAAC,EACA,uBAAAC,EACA,kBAAAC,EACA,cAAAC,EACA,qBAAAC,EACA,uBAAAC,CACF"}
1
+ {"version":3,"file":"avatar-constants.cjs","sources":["../../../components/avatar/avatar_constants.js"],"sourcesContent":["export const AVATAR_SIZE_MODIFIERS = {\n // 11-size system: 100-500 support presence, 600-900 do not\n 100: 'd-avatar--size-100',\n 150: 'd-avatar--size-150',\n 200: 'd-avatar--size-200',\n 250: 'd-avatar--size-250',\n 300: 'd-avatar--size-300',\n 400: 'd-avatar--size-400',\n 500: 'd-avatar--size-500',\n 600: 'd-avatar--size-600',\n 700: 'd-avatar--size-700',\n 800: 'd-avatar--size-800',\n 900: 'd-avatar--size-900',\n // T-shirt sizes (deprecated aliases)\n xs: 'd-avatar--xs',\n sm: 'd-avatar--sm',\n md: 'd-avatar--md',\n lg: 'd-avatar--lg',\n xl: 'd-avatar--xl',\n};\n\nexport const AVATAR_KIND_MODIFIERS = {\n default: '',\n icon: 'd-avatar__icon',\n initials: 'd-avatar__initials',\n};\n\nexport const AVATAR_PRESENCE_SIZE_MODIFIERS = {\n // 11-size system: Only sizes 100-500 support presence\n 100: 'd-avatar__presence--100',\n 150: 'd-avatar__presence--150',\n 200: 'd-avatar__presence--200',\n 250: 'd-avatar__presence--250',\n 300: 'd-avatar__presence--300',\n 400: 'd-avatar__presence--400',\n 500: 'd-avatar__presence--500',\n // T-shirt sizes (deprecated)\n xs: 'd-avatar__presence--100',\n sm: 'd-avatar__presence--200',\n md: 'd-avatar__presence--md',\n lg: 'd-avatar__presence--lg',\n};\n\nexport const AVATAR_PRESENCE_STATES = {\n NONE: '',\n BUSY: 'busy',\n AWAY: 'away',\n OFFLINE: 'offline',\n ACTIVE: 'active',\n};\n\nexport const AVATAR_ICON_SIZES = {\n // 11-size system icon mappings\n 100: '100',\n 150: '100',\n 200: '200',\n 250: '200',\n 300: '300',\n 400: '500',\n 500: '600',\n 600: '600',\n 700: '700',\n 800: '800',\n 900: '800',\n // T-shirt sizes (deprecated aliases)\n xs: '100',\n sm: '200',\n md: '300',\n lg: '500',\n xl: '600',\n};\n\n// OKLCH Lightness scale (L) for avatar variants 0-9\n// Progresses from dark (0.45) to light (0.85)\nexport const AVATAR_LIGHTNESS = [\n 0.45, // variant 0\n 0.49, // variant 1\n 0.54, // variant 2\n 0.59, // variant 3\n 0.64, // variant 4\n 0.69, // variant 5\n 0.74, // variant 6\n 0.78, // variant 7\n 0.82, // variant 8\n 0.85, // variant 9\n];\n\n// OKLCH Chroma scale (C) for avatar variants 0-9\n// Bell curve: lower at extremes, peak in middle for best saturation\nexport const AVATAR_CHROMA = [\n 0.08, // variant 0\n 0.12, // variant 1\n 0.15, // variant 2\n 0.17, // variant 3\n 0.18, // variant 4\n 0.17, // variant 5\n 0.15, // variant 6\n 0.12, // variant 7\n 0.10, // variant 8\n 0.08, // variant 9\n];\n\n// Hue offsets for each family (1-12), 30° apart around the color wheel\nexport const AVATAR_HUE_OFFSETS = {\n 1: 0, // Red\n 2: 30, // Orange\n 3: 60, // Amber/Gold\n 4: 90, // Yellow-Green\n 5: 120, // Green\n 6: 150, // Teal\n 7: 180, // Cyan\n 8: 210, // Blue\n 9: 240, // Indigo\n 10: 270, // Purple\n 11: 300, // Magenta\n 12: 330, // Pink/Rose\n};\n\n// Number of families and variants\nexport const AVATAR_FAMILY_COUNT = 12;\nexport const AVATAR_VARIANT_COUNT = 10;\n\nexport const AVATAR_GROUP_VALIDATOR = (group) => group > 1;\n\n/**\n * Convert color code to family/variant\n * @param {string} colorCode - Color code (e.g., '540', '1020')\n * @returns {{ family: number, variant: number } | null} - Family (1-12) and variant (0-9)\n */\nexport function colorToFamilyVariant (colorCode) {\n const num = parseInt(colorCode, 10);\n if (isNaN(num)) return null;\n const family = Math.floor(num / 100);\n const variant = (num % 100) / 10;\n if (family < 1 || family > AVATAR_FAMILY_COUNT) return null;\n if (!Number.isInteger(variant) || variant < 0 || variant >= AVATAR_VARIANT_COUNT) return null;\n return { family, variant };\n}\n\n/**\n * Get a random family and variant\n * @param {string} [seed] - Optional seed for deterministic randomization\n * @returns {{ family: number, variant: number }}\n */\nexport function getRandomFamilyVariant (seed) {\n let hash = 0;\n if (seed != null) {\n for (let i = 0; i < seed.length; i++) {\n hash = ((hash << 5) - hash) + seed.charCodeAt(i);\n hash = hash & hash;\n }\n } else {\n hash = Math.floor(Math.random() * 1000000);\n }\n\n // Use absolute value to handle negative hashes\n const absHash = Math.abs(hash);\n const family = (absHash % AVATAR_FAMILY_COUNT) + 1; // 1-12\n const variant = Math.floor(absHash / AVATAR_FAMILY_COUNT) % AVATAR_VARIANT_COUNT; // 0-9\n\n return { family, variant };\n}\n\n/**\n * Convert OKLCH to hex color (for fallback browsers)\n * Uses sRGB approximation - may clip out-of-gamut colors\n * @param {number} l - Lightness (0-1)\n * @param {number} c - Chroma (0-0.4)\n * @param {number} h - Hue (0-360)\n * @returns {string} - Hex color string (e.g., '#ff5733')\n */\nexport function oklchToHex (l, c, h) {\n // Convert OKLCH to OKLab\n const hRad = (h * Math.PI) / 180;\n const a = c * Math.cos(hRad);\n const b = c * Math.sin(hRad);\n\n // OKLab to linear sRGB\n const l_ = l + 0.3963377774 * a + 0.2158037573 * b;\n const m_ = l - 0.1055613458 * a - 0.0638541728 * b;\n const s_ = l - 0.0894841775 * a - 1.2914855480 * b;\n\n const l3 = l_ * l_ * l_;\n const m3 = m_ * m_ * m_;\n const s3 = s_ * s_ * s_;\n\n let r = +4.0767416621 * l3 - 3.3077115913 * m3 + 0.2309699292 * s3;\n let g = -1.2684380046 * l3 + 2.6097574011 * m3 - 0.3413193965 * s3;\n let bl = -0.0041960863 * l3 - 0.7034186147 * m3 + 1.7076147010 * s3;\n\n // Clamp to [0, 1]\n r = Math.max(0, Math.min(1, r));\n g = Math.max(0, Math.min(1, g));\n bl = Math.max(0, Math.min(1, bl));\n\n // Linear to sRGB gamma\n const toSrgb = (x) => x <= 0.0031308 ? 12.92 * x : 1.055 * Math.pow(x, 1 / 2.4) - 0.055;\n\n r = Math.round(toSrgb(r) * 255);\n g = Math.round(toSrgb(g) * 255);\n bl = Math.round(toSrgb(bl) * 255);\n\n return '#' + [r, g, bl].map(x => x.toString(16).padStart(2, '0')).join('');\n}\n\n/**\n * Compute fallback hex color for a given family, variant, and anchor hue\n * @param {number} family - Family number (1-12)\n * @param {number} variant - Variant number (0-9)\n * @param {number} anchorHue - Theme's anchor hue in degrees\n * @returns {string} - Hex color string\n */\nexport function computeAvatarHex (family, variant, anchorHue) {\n const l = AVATAR_LIGHTNESS[variant];\n const c = AVATAR_CHROMA[variant];\n const hueOffset = AVATAR_HUE_OFFSETS[family] ?? 0;\n const h = (anchorHue + hueOffset) % 360;\n return oklchToHex(l, c, h);\n}\n\nexport default {\n AVATAR_SIZE_MODIFIERS,\n AVATAR_KIND_MODIFIERS,\n AVATAR_PRESENCE_SIZE_MODIFIERS,\n AVATAR_PRESENCE_STATES,\n AVATAR_ICON_SIZES,\n AVATAR_LIGHTNESS,\n AVATAR_CHROMA,\n AVATAR_HUE_OFFSETS,\n AVATAR_FAMILY_COUNT,\n AVATAR_VARIANT_COUNT,\n AVATAR_GROUP_VALIDATOR,\n colorToFamilyVariant,\n getRandomFamilyVariant,\n oklchToHex,\n computeAvatarHex,\n};\n"],"names":["AVATAR_SIZE_MODIFIERS","AVATAR_KIND_MODIFIERS","AVATAR_PRESENCE_SIZE_MODIFIERS","AVATAR_PRESENCE_STATES","AVATAR_ICON_SIZES","AVATAR_LIGHTNESS","AVATAR_CHROMA","AVATAR_HUE_OFFSETS","AVATAR_FAMILY_COUNT","AVATAR_VARIANT_COUNT","AVATAR_GROUP_VALIDATOR","group","colorToFamilyVariant","colorCode","num","family","variant","getRandomFamilyVariant","seed","hash","i","absHash","oklchToHex","l","c","h","hRad","a","b","l_","m_","s_","l3","m3","s3","r","g","bl","toSrgb","x","computeAvatarHex","anchorHue","hueOffset","avatar_constants"],"mappings":"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"}