@dialpad/dialtone 9.86.0 → 9.86.2

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 (624) hide show
  1. package/README.md +0 -16
  2. package/dist/css/dialtone-default-theme.css +1157 -10
  3. package/dist/css/dialtone-default-theme.min.css +1 -1
  4. package/dist/css/dialtone.css +1151 -4
  5. package/dist/css/dialtone.min.css +1 -1
  6. package/dist/css/tokens/tokens-base-dark.css +6 -6
  7. package/dist/css/tokens/tokens-base-light.css +6 -6
  8. package/dist/css/tokens/tokens-debug-base.css +6 -6
  9. package/dist/css/tokens/tokens-expressive-dark.css +6 -6
  10. package/dist/css/tokens/tokens-expressive-light.css +6 -6
  11. package/dist/css/tokens/tokens-expressive-sm-dark.css +6 -6
  12. package/dist/css/tokens/tokens-expressive-sm-light.css +6 -6
  13. package/dist/tokens/css/tokens-base-dark.css +6 -6
  14. package/dist/tokens/css/tokens-base-light.css +6 -6
  15. package/dist/tokens/css/tokens-debug-base.css +6 -6
  16. package/dist/tokens/css/tokens-expressive-dark.css +6 -6
  17. package/dist/tokens/css/tokens-expressive-light.css +6 -6
  18. package/dist/tokens/css/tokens-expressive-sm-dark.css +6 -6
  19. package/dist/tokens/css/tokens-expressive-sm-light.css +6 -6
  20. package/dist/tokens/doc.json +13006 -13006
  21. package/dist/tokens/themes/chunks/{tokens-base-dark-DhC8-lWj.js → tokens-base-dark-BnTEKGxK.js} +1 -1
  22. package/dist/tokens/themes/chunks/{tokens-base-dark-B5huG27C.js → tokens-base-dark-Ch4dTh7V.js} +1 -1
  23. package/dist/tokens/themes/chunks/{tokens-base-light-B2RDBIfm.js → tokens-base-light-BLxKOiup.js} +1 -1
  24. package/dist/tokens/themes/chunks/{tokens-base-light-y7MK4fBY.js → tokens-base-light-DWLxg2cD.js} +1 -1
  25. package/dist/tokens/themes/debug.cjs +1 -1
  26. package/dist/tokens/themes/debug.js +1 -1
  27. package/dist/tokens/themes/dp-dark.cjs +1 -1
  28. package/dist/tokens/themes/dp-dark.js +1 -1
  29. package/dist/tokens/themes/dp-light.cjs +1 -1
  30. package/dist/tokens/themes/dp-light.js +1 -1
  31. package/dist/tokens/themes/expressive-dark.cjs +1 -1
  32. package/dist/tokens/themes/expressive-dark.js +2 -2
  33. package/dist/tokens/themes/expressive-light.cjs +1 -1
  34. package/dist/tokens/themes/expressive-light.js +2 -2
  35. package/dist/tokens/themes/expressive-sm-dark.cjs +1 -1
  36. package/dist/tokens/themes/expressive-sm-dark.js +2 -2
  37. package/dist/tokens/themes/expressive-sm-light.cjs +1 -1
  38. package/dist/tokens/themes/expressive-sm-light.js +2 -2
  39. package/dist/tokens/themes/tmo-dark.cjs +1 -1
  40. package/dist/tokens/themes/tmo-dark.js +1 -1
  41. package/dist/tokens/themes/tmo-light.cjs +1 -1
  42. package/dist/tokens/themes/tmo-light.js +1 -1
  43. package/dist/vue2/_virtual/_plugin-vue2_normalizer.cjs +0 -3
  44. package/dist/vue2/_virtual/_plugin-vue2_normalizer.cjs.map +1 -1
  45. package/dist/vue2/_virtual/_plugin-vue2_normalizer.js +0 -3
  46. package/dist/vue2/_virtual/_plugin-vue2_normalizer.js.map +1 -1
  47. package/dist/vue2/common/sr_only_close_button.vue.cjs +1 -4
  48. package/dist/vue2/common/sr_only_close_button.vue.cjs.map +1 -1
  49. package/dist/vue2/common/sr_only_close_button.vue.js +1 -4
  50. package/dist/vue2/common/sr_only_close_button.vue.js.map +1 -1
  51. package/dist/vue2/component-documentation.json +1 -1
  52. package/dist/vue2/components/avatar/avatar.vue.cjs +1 -4
  53. package/dist/vue2/components/avatar/avatar.vue.cjs.map +1 -1
  54. package/dist/vue2/components/avatar/avatar.vue.js +1 -4
  55. package/dist/vue2/components/avatar/avatar.vue.js.map +1 -1
  56. package/dist/vue2/components/badge/badge.vue.cjs +1 -4
  57. package/dist/vue2/components/badge/badge.vue.cjs.map +1 -1
  58. package/dist/vue2/components/badge/badge.vue.js +1 -4
  59. package/dist/vue2/components/badge/badge.vue.js.map +1 -1
  60. package/dist/vue2/components/banner/banner.vue.cjs +1 -4
  61. package/dist/vue2/components/banner/banner.vue.cjs.map +1 -1
  62. package/dist/vue2/components/banner/banner.vue.js +1 -4
  63. package/dist/vue2/components/banner/banner.vue.js.map +1 -1
  64. package/dist/vue2/components/breadcrumbs/breadcrumb_item.vue.cjs +1 -4
  65. package/dist/vue2/components/breadcrumbs/breadcrumb_item.vue.cjs.map +1 -1
  66. package/dist/vue2/components/breadcrumbs/breadcrumb_item.vue.js +1 -4
  67. package/dist/vue2/components/breadcrumbs/breadcrumb_item.vue.js.map +1 -1
  68. package/dist/vue2/components/breadcrumbs/breadcrumbs.vue.cjs +1 -4
  69. package/dist/vue2/components/breadcrumbs/breadcrumbs.vue.cjs.map +1 -1
  70. package/dist/vue2/components/breadcrumbs/breadcrumbs.vue.js +1 -4
  71. package/dist/vue2/components/breadcrumbs/breadcrumbs.vue.js.map +1 -1
  72. package/dist/vue2/components/button/button.vue.cjs +1 -4
  73. package/dist/vue2/components/button/button.vue.cjs.map +1 -1
  74. package/dist/vue2/components/button/button.vue.js +1 -4
  75. package/dist/vue2/components/button/button.vue.js.map +1 -1
  76. package/dist/vue2/components/button_group/button_group.vue.cjs +1 -4
  77. package/dist/vue2/components/button_group/button_group.vue.cjs.map +1 -1
  78. package/dist/vue2/components/button_group/button_group.vue.js +1 -4
  79. package/dist/vue2/components/button_group/button_group.vue.js.map +1 -1
  80. package/dist/vue2/components/card/card.vue.cjs +1 -4
  81. package/dist/vue2/components/card/card.vue.cjs.map +1 -1
  82. package/dist/vue2/components/card/card.vue.js +1 -4
  83. package/dist/vue2/components/card/card.vue.js.map +1 -1
  84. package/dist/vue2/components/checkbox/checkbox.vue.cjs +1 -4
  85. package/dist/vue2/components/checkbox/checkbox.vue.cjs.map +1 -1
  86. package/dist/vue2/components/checkbox/checkbox.vue.js +1 -4
  87. package/dist/vue2/components/checkbox/checkbox.vue.js.map +1 -1
  88. package/dist/vue2/components/checkbox_group/checkbox_group.vue.cjs +1 -4
  89. package/dist/vue2/components/checkbox_group/checkbox_group.vue.cjs.map +1 -1
  90. package/dist/vue2/components/checkbox_group/checkbox_group.vue.js +1 -4
  91. package/dist/vue2/components/checkbox_group/checkbox_group.vue.js.map +1 -1
  92. package/dist/vue2/components/chip/chip.vue.cjs +1 -4
  93. package/dist/vue2/components/chip/chip.vue.cjs.map +1 -1
  94. package/dist/vue2/components/chip/chip.vue.js +1 -4
  95. package/dist/vue2/components/chip/chip.vue.js.map +1 -1
  96. package/dist/vue2/components/codeblock/codeblock.vue.cjs +1 -4
  97. package/dist/vue2/components/codeblock/codeblock.vue.cjs.map +1 -1
  98. package/dist/vue2/components/codeblock/codeblock.vue.js +1 -4
  99. package/dist/vue2/components/codeblock/codeblock.vue.js.map +1 -1
  100. package/dist/vue2/components/collapsible/collapsible.vue.cjs +1 -4
  101. package/dist/vue2/components/collapsible/collapsible.vue.cjs.map +1 -1
  102. package/dist/vue2/components/collapsible/collapsible.vue.js +1 -4
  103. package/dist/vue2/components/collapsible/collapsible.vue.js.map +1 -1
  104. package/dist/vue2/components/collapsible/collapsible_lazy_show.vue.cjs +1 -4
  105. package/dist/vue2/components/collapsible/collapsible_lazy_show.vue.cjs.map +1 -1
  106. package/dist/vue2/components/collapsible/collapsible_lazy_show.vue.js +1 -4
  107. package/dist/vue2/components/collapsible/collapsible_lazy_show.vue.js.map +1 -1
  108. package/dist/vue2/components/combobox/combobox.vue.cjs +1 -4
  109. package/dist/vue2/components/combobox/combobox.vue.cjs.map +1 -1
  110. package/dist/vue2/components/combobox/combobox.vue.js +1 -4
  111. package/dist/vue2/components/combobox/combobox.vue.js.map +1 -1
  112. package/dist/vue2/components/combobox/combobox_empty-list.vue.cjs +1 -4
  113. package/dist/vue2/components/combobox/combobox_empty-list.vue.cjs.map +1 -1
  114. package/dist/vue2/components/combobox/combobox_empty-list.vue.js +1 -4
  115. package/dist/vue2/components/combobox/combobox_empty-list.vue.js.map +1 -1
  116. package/dist/vue2/components/combobox/combobox_loading-list.vue.cjs +1 -4
  117. package/dist/vue2/components/combobox/combobox_loading-list.vue.cjs.map +1 -1
  118. package/dist/vue2/components/combobox/combobox_loading-list.vue.js +1 -4
  119. package/dist/vue2/components/combobox/combobox_loading-list.vue.js.map +1 -1
  120. package/dist/vue2/components/datepicker/datepicker.vue.cjs +1 -4
  121. package/dist/vue2/components/datepicker/datepicker.vue.cjs.map +1 -1
  122. package/dist/vue2/components/datepicker/datepicker.vue.js +1 -4
  123. package/dist/vue2/components/datepicker/datepicker.vue.js.map +1 -1
  124. package/dist/vue2/components/datepicker/modules/calendar.vue.cjs +1 -4
  125. package/dist/vue2/components/datepicker/modules/calendar.vue.cjs.map +1 -1
  126. package/dist/vue2/components/datepicker/modules/calendar.vue.js +1 -4
  127. package/dist/vue2/components/datepicker/modules/calendar.vue.js.map +1 -1
  128. package/dist/vue2/components/datepicker/modules/month-year-picker.vue.cjs +1 -4
  129. package/dist/vue2/components/datepicker/modules/month-year-picker.vue.cjs.map +1 -1
  130. package/dist/vue2/components/datepicker/modules/month-year-picker.vue.js +1 -4
  131. package/dist/vue2/components/datepicker/modules/month-year-picker.vue.js.map +1 -1
  132. package/dist/vue2/components/description_list/description_list.vue.cjs +1 -4
  133. package/dist/vue2/components/description_list/description_list.vue.cjs.map +1 -1
  134. package/dist/vue2/components/description_list/description_list.vue.js +1 -4
  135. package/dist/vue2/components/description_list/description_list.vue.js.map +1 -1
  136. package/dist/vue2/components/dropdown/dropdown.vue.cjs +1 -4
  137. package/dist/vue2/components/dropdown/dropdown.vue.cjs.map +1 -1
  138. package/dist/vue2/components/dropdown/dropdown.vue.js +1 -4
  139. package/dist/vue2/components/dropdown/dropdown.vue.js.map +1 -1
  140. package/dist/vue2/components/dropdown/dropdown_separator.vue.cjs +1 -4
  141. package/dist/vue2/components/dropdown/dropdown_separator.vue.cjs.map +1 -1
  142. package/dist/vue2/components/dropdown/dropdown_separator.vue.js +1 -4
  143. package/dist/vue2/components/dropdown/dropdown_separator.vue.js.map +1 -1
  144. package/dist/vue2/components/emoji/emoji.vue.cjs +1 -4
  145. package/dist/vue2/components/emoji/emoji.vue.cjs.map +1 -1
  146. package/dist/vue2/components/emoji/emoji.vue.js +1 -4
  147. package/dist/vue2/components/emoji/emoji.vue.js.map +1 -1
  148. package/dist/vue2/components/emoji_picker/emoji_picker.vue.cjs +1 -4
  149. package/dist/vue2/components/emoji_picker/emoji_picker.vue.cjs.map +1 -1
  150. package/dist/vue2/components/emoji_picker/emoji_picker.vue.js +1 -4
  151. package/dist/vue2/components/emoji_picker/emoji_picker.vue.js.map +1 -1
  152. package/dist/vue2/components/emoji_picker/modules/emoji_description.vue.cjs +1 -4
  153. package/dist/vue2/components/emoji_picker/modules/emoji_description.vue.cjs.map +1 -1
  154. package/dist/vue2/components/emoji_picker/modules/emoji_description.vue.js +1 -4
  155. package/dist/vue2/components/emoji_picker/modules/emoji_description.vue.js.map +1 -1
  156. package/dist/vue2/components/emoji_picker/modules/emoji_search.vue.cjs +1 -4
  157. package/dist/vue2/components/emoji_picker/modules/emoji_search.vue.cjs.map +1 -1
  158. package/dist/vue2/components/emoji_picker/modules/emoji_search.vue.js +1 -4
  159. package/dist/vue2/components/emoji_picker/modules/emoji_search.vue.js.map +1 -1
  160. package/dist/vue2/components/emoji_picker/modules/emoji_selector.vue.cjs +1 -4
  161. package/dist/vue2/components/emoji_picker/modules/emoji_selector.vue.cjs.map +1 -1
  162. package/dist/vue2/components/emoji_picker/modules/emoji_selector.vue.js +1 -4
  163. package/dist/vue2/components/emoji_picker/modules/emoji_selector.vue.js.map +1 -1
  164. package/dist/vue2/components/emoji_picker/modules/emoji_skin_selector.vue.cjs +1 -4
  165. package/dist/vue2/components/emoji_picker/modules/emoji_skin_selector.vue.cjs.map +1 -1
  166. package/dist/vue2/components/emoji_picker/modules/emoji_skin_selector.vue.js +1 -4
  167. package/dist/vue2/components/emoji_picker/modules/emoji_skin_selector.vue.js.map +1 -1
  168. package/dist/vue2/components/emoji_picker/modules/emoji_tabset.vue.cjs +1 -4
  169. package/dist/vue2/components/emoji_picker/modules/emoji_tabset.vue.cjs.map +1 -1
  170. package/dist/vue2/components/emoji_picker/modules/emoji_tabset.vue.js +1 -4
  171. package/dist/vue2/components/emoji_picker/modules/emoji_tabset.vue.js.map +1 -1
  172. package/dist/vue2/components/emoji_text_wrapper/emoji_text_wrapper.vue.cjs +1 -4
  173. package/dist/vue2/components/emoji_text_wrapper/emoji_text_wrapper.vue.cjs.map +1 -1
  174. package/dist/vue2/components/emoji_text_wrapper/emoji_text_wrapper.vue.js +1 -4
  175. package/dist/vue2/components/emoji_text_wrapper/emoji_text_wrapper.vue.js.map +1 -1
  176. package/dist/vue2/components/empty_state/empty_state.vue.cjs +1 -4
  177. package/dist/vue2/components/empty_state/empty_state.vue.cjs.map +1 -1
  178. package/dist/vue2/components/empty_state/empty_state.vue.js +1 -4
  179. package/dist/vue2/components/empty_state/empty_state.vue.js.map +1 -1
  180. package/dist/vue2/components/hovercard/hovercard.vue.cjs +1 -4
  181. package/dist/vue2/components/hovercard/hovercard.vue.cjs.map +1 -1
  182. package/dist/vue2/components/hovercard/hovercard.vue.js +1 -4
  183. package/dist/vue2/components/hovercard/hovercard.vue.js.map +1 -1
  184. package/dist/vue2/components/icon/icon.vue.cjs +1 -4
  185. package/dist/vue2/components/icon/icon.vue.cjs.map +1 -1
  186. package/dist/vue2/components/icon/icon.vue.js +1 -4
  187. package/dist/vue2/components/icon/icon.vue.js.map +1 -1
  188. package/dist/vue2/components/illustration/illustration.vue.cjs +1 -4
  189. package/dist/vue2/components/illustration/illustration.vue.cjs.map +1 -1
  190. package/dist/vue2/components/illustration/illustration.vue.js +1 -4
  191. package/dist/vue2/components/illustration/illustration.vue.js.map +1 -1
  192. package/dist/vue2/components/image_viewer/image_viewer.vue.cjs +1 -4
  193. package/dist/vue2/components/image_viewer/image_viewer.vue.cjs.map +1 -1
  194. package/dist/vue2/components/image_viewer/image_viewer.vue.js +1 -4
  195. package/dist/vue2/components/image_viewer/image_viewer.vue.js.map +1 -1
  196. package/dist/vue2/components/input/input.vue.cjs +1 -4
  197. package/dist/vue2/components/input/input.vue.cjs.map +1 -1
  198. package/dist/vue2/components/input/input.vue.js +1 -4
  199. package/dist/vue2/components/input/input.vue.js.map +1 -1
  200. package/dist/vue2/components/input_group/input_group.vue.cjs +1 -4
  201. package/dist/vue2/components/input_group/input_group.vue.cjs.map +1 -1
  202. package/dist/vue2/components/input_group/input_group.vue.js +1 -4
  203. package/dist/vue2/components/input_group/input_group.vue.js.map +1 -1
  204. package/dist/vue2/components/item_layout/item_layout.vue.cjs +1 -4
  205. package/dist/vue2/components/item_layout/item_layout.vue.cjs.map +1 -1
  206. package/dist/vue2/components/item_layout/item_layout.vue.js +1 -4
  207. package/dist/vue2/components/item_layout/item_layout.vue.js.map +1 -1
  208. package/dist/vue2/components/keyboard_shortcut/keyboard_shortcut.vue.cjs +1 -4
  209. package/dist/vue2/components/keyboard_shortcut/keyboard_shortcut.vue.cjs.map +1 -1
  210. package/dist/vue2/components/keyboard_shortcut/keyboard_shortcut.vue.js +1 -4
  211. package/dist/vue2/components/keyboard_shortcut/keyboard_shortcut.vue.js.map +1 -1
  212. package/dist/vue2/components/lazy_show/lazy_show.vue.cjs +1 -4
  213. package/dist/vue2/components/lazy_show/lazy_show.vue.cjs.map +1 -1
  214. package/dist/vue2/components/lazy_show/lazy_show.vue.js +1 -4
  215. package/dist/vue2/components/lazy_show/lazy_show.vue.js.map +1 -1
  216. package/dist/vue2/components/link/link.vue.cjs +1 -4
  217. package/dist/vue2/components/link/link.vue.cjs.map +1 -1
  218. package/dist/vue2/components/link/link.vue.js +1 -4
  219. package/dist/vue2/components/link/link.vue.js.map +1 -1
  220. package/dist/vue2/components/list_item/list_item.vue.cjs +1 -4
  221. package/dist/vue2/components/list_item/list_item.vue.cjs.map +1 -1
  222. package/dist/vue2/components/list_item/list_item.vue.js +1 -4
  223. package/dist/vue2/components/list_item/list_item.vue.js.map +1 -1
  224. package/dist/vue2/components/list_item_group/list_item_group.vue.cjs +1 -4
  225. package/dist/vue2/components/list_item_group/list_item_group.vue.cjs.map +1 -1
  226. package/dist/vue2/components/list_item_group/list_item_group.vue.js +1 -4
  227. package/dist/vue2/components/list_item_group/list_item_group.vue.js.map +1 -1
  228. package/dist/vue2/components/modal/modal.vue.cjs +1 -4
  229. package/dist/vue2/components/modal/modal.vue.cjs.map +1 -1
  230. package/dist/vue2/components/modal/modal.vue.js +1 -4
  231. package/dist/vue2/components/modal/modal.vue.js.map +1 -1
  232. package/dist/vue2/components/notice/notice.vue.cjs +1 -4
  233. package/dist/vue2/components/notice/notice.vue.cjs.map +1 -1
  234. package/dist/vue2/components/notice/notice.vue.js +1 -4
  235. package/dist/vue2/components/notice/notice.vue.js.map +1 -1
  236. package/dist/vue2/components/notice/notice_action.vue.cjs +1 -4
  237. package/dist/vue2/components/notice/notice_action.vue.cjs.map +1 -1
  238. package/dist/vue2/components/notice/notice_action.vue.js +1 -4
  239. package/dist/vue2/components/notice/notice_action.vue.js.map +1 -1
  240. package/dist/vue2/components/notice/notice_content.vue.cjs +1 -4
  241. package/dist/vue2/components/notice/notice_content.vue.cjs.map +1 -1
  242. package/dist/vue2/components/notice/notice_content.vue.js +1 -4
  243. package/dist/vue2/components/notice/notice_content.vue.js.map +1 -1
  244. package/dist/vue2/components/notice/notice_icon.vue.cjs +1 -4
  245. package/dist/vue2/components/notice/notice_icon.vue.cjs.map +1 -1
  246. package/dist/vue2/components/notice/notice_icon.vue.js +1 -4
  247. package/dist/vue2/components/notice/notice_icon.vue.js.map +1 -1
  248. package/dist/vue2/components/pagination/pagination.vue.cjs +1 -4
  249. package/dist/vue2/components/pagination/pagination.vue.cjs.map +1 -1
  250. package/dist/vue2/components/pagination/pagination.vue.js +1 -4
  251. package/dist/vue2/components/pagination/pagination.vue.js.map +1 -1
  252. package/dist/vue2/components/popover/popover.vue.cjs +1 -4
  253. package/dist/vue2/components/popover/popover.vue.cjs.map +1 -1
  254. package/dist/vue2/components/popover/popover.vue.js +1 -4
  255. package/dist/vue2/components/popover/popover.vue.js.map +1 -1
  256. package/dist/vue2/components/popover/popover_header_footer.vue.cjs +1 -4
  257. package/dist/vue2/components/popover/popover_header_footer.vue.cjs.map +1 -1
  258. package/dist/vue2/components/popover/popover_header_footer.vue.js +1 -4
  259. package/dist/vue2/components/popover/popover_header_footer.vue.js.map +1 -1
  260. package/dist/vue2/components/presence/presence.vue.cjs +1 -4
  261. package/dist/vue2/components/presence/presence.vue.cjs.map +1 -1
  262. package/dist/vue2/components/presence/presence.vue.js +1 -4
  263. package/dist/vue2/components/presence/presence.vue.js.map +1 -1
  264. package/dist/vue2/components/radio/radio.vue.cjs +1 -4
  265. package/dist/vue2/components/radio/radio.vue.cjs.map +1 -1
  266. package/dist/vue2/components/radio/radio.vue.js +1 -4
  267. package/dist/vue2/components/radio/radio.vue.js.map +1 -1
  268. package/dist/vue2/components/radio_group/radio_group.vue.cjs +1 -4
  269. package/dist/vue2/components/radio_group/radio_group.vue.cjs.map +1 -1
  270. package/dist/vue2/components/radio_group/radio_group.vue.js +1 -4
  271. package/dist/vue2/components/radio_group/radio_group.vue.js.map +1 -1
  272. package/dist/vue2/components/rich_text_editor/extensions/channels/ChannelComponent.vue.cjs +1 -4
  273. package/dist/vue2/components/rich_text_editor/extensions/channels/ChannelComponent.vue.cjs.map +1 -1
  274. package/dist/vue2/components/rich_text_editor/extensions/channels/ChannelComponent.vue.js +1 -4
  275. package/dist/vue2/components/rich_text_editor/extensions/channels/ChannelComponent.vue.js.map +1 -1
  276. package/dist/vue2/components/rich_text_editor/extensions/channels/ChannelSuggestion.vue.cjs +1 -4
  277. package/dist/vue2/components/rich_text_editor/extensions/channels/ChannelSuggestion.vue.cjs.map +1 -1
  278. package/dist/vue2/components/rich_text_editor/extensions/channels/ChannelSuggestion.vue.js +1 -4
  279. package/dist/vue2/components/rich_text_editor/extensions/channels/ChannelSuggestion.vue.js.map +1 -1
  280. package/dist/vue2/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.cjs +1 -4
  281. package/dist/vue2/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.cjs.map +1 -1
  282. package/dist/vue2/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.js +1 -4
  283. package/dist/vue2/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.js.map +1 -1
  284. package/dist/vue2/components/rich_text_editor/extensions/emoji/EmojiSuggestion.vue.cjs +1 -4
  285. package/dist/vue2/components/rich_text_editor/extensions/emoji/EmojiSuggestion.vue.cjs.map +1 -1
  286. package/dist/vue2/components/rich_text_editor/extensions/emoji/EmojiSuggestion.vue.js +1 -4
  287. package/dist/vue2/components/rich_text_editor/extensions/emoji/EmojiSuggestion.vue.js.map +1 -1
  288. package/dist/vue2/components/rich_text_editor/extensions/mentions/MentionComponent.vue.cjs +1 -4
  289. package/dist/vue2/components/rich_text_editor/extensions/mentions/MentionComponent.vue.cjs.map +1 -1
  290. package/dist/vue2/components/rich_text_editor/extensions/mentions/MentionComponent.vue.js +1 -4
  291. package/dist/vue2/components/rich_text_editor/extensions/mentions/MentionComponent.vue.js.map +1 -1
  292. package/dist/vue2/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.cjs +1 -4
  293. package/dist/vue2/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.cjs.map +1 -1
  294. package/dist/vue2/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.js +1 -4
  295. package/dist/vue2/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.js.map +1 -1
  296. package/dist/vue2/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.cjs +1 -4
  297. package/dist/vue2/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.cjs.map +1 -1
  298. package/dist/vue2/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.js +1 -4
  299. package/dist/vue2/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.js.map +1 -1
  300. package/dist/vue2/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.cjs +1 -4
  301. package/dist/vue2/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.cjs.map +1 -1
  302. package/dist/vue2/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.js +1 -4
  303. package/dist/vue2/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.js.map +1 -1
  304. package/dist/vue2/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.cjs +1 -4
  305. package/dist/vue2/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.cjs.map +1 -1
  306. package/dist/vue2/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.js +1 -4
  307. package/dist/vue2/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.js.map +1 -1
  308. package/dist/vue2/components/rich_text_editor/rich_text_editor.vue.cjs +1 -4
  309. package/dist/vue2/components/rich_text_editor/rich_text_editor.vue.cjs.map +1 -1
  310. package/dist/vue2/components/rich_text_editor/rich_text_editor.vue.js +1 -4
  311. package/dist/vue2/components/rich_text_editor/rich_text_editor.vue.js.map +1 -1
  312. package/dist/vue2/components/root_layout/root_layout.vue.cjs +1 -4
  313. package/dist/vue2/components/root_layout/root_layout.vue.cjs.map +1 -1
  314. package/dist/vue2/components/root_layout/root_layout.vue.js +1 -4
  315. package/dist/vue2/components/root_layout/root_layout.vue.js.map +1 -1
  316. package/dist/vue2/components/select_menu/select_menu.vue.cjs +1 -4
  317. package/dist/vue2/components/select_menu/select_menu.vue.cjs.map +1 -1
  318. package/dist/vue2/components/select_menu/select_menu.vue.js +1 -4
  319. package/dist/vue2/components/select_menu/select_menu.vue.js.map +1 -1
  320. package/dist/vue2/components/skeleton/skeleton-list-item.vue.cjs +1 -4
  321. package/dist/vue2/components/skeleton/skeleton-list-item.vue.cjs.map +1 -1
  322. package/dist/vue2/components/skeleton/skeleton-list-item.vue.js +1 -4
  323. package/dist/vue2/components/skeleton/skeleton-list-item.vue.js.map +1 -1
  324. package/dist/vue2/components/skeleton/skeleton-paragraph.vue.cjs +1 -4
  325. package/dist/vue2/components/skeleton/skeleton-paragraph.vue.cjs.map +1 -1
  326. package/dist/vue2/components/skeleton/skeleton-paragraph.vue.js +1 -4
  327. package/dist/vue2/components/skeleton/skeleton-paragraph.vue.js.map +1 -1
  328. package/dist/vue2/components/skeleton/skeleton-shape.vue.cjs +1 -4
  329. package/dist/vue2/components/skeleton/skeleton-shape.vue.cjs.map +1 -1
  330. package/dist/vue2/components/skeleton/skeleton-shape.vue.js +1 -4
  331. package/dist/vue2/components/skeleton/skeleton-shape.vue.js.map +1 -1
  332. package/dist/vue2/components/skeleton/skeleton-text.vue.cjs +1 -4
  333. package/dist/vue2/components/skeleton/skeleton-text.vue.cjs.map +1 -1
  334. package/dist/vue2/components/skeleton/skeleton-text.vue.js +1 -4
  335. package/dist/vue2/components/skeleton/skeleton-text.vue.js.map +1 -1
  336. package/dist/vue2/components/skeleton/skeleton.vue.cjs +1 -4
  337. package/dist/vue2/components/skeleton/skeleton.vue.cjs.map +1 -1
  338. package/dist/vue2/components/skeleton/skeleton.vue.js +1 -4
  339. package/dist/vue2/components/skeleton/skeleton.vue.js.map +1 -1
  340. package/dist/vue2/components/split_button/split_button-alpha.vue.cjs +1 -4
  341. package/dist/vue2/components/split_button/split_button-alpha.vue.cjs.map +1 -1
  342. package/dist/vue2/components/split_button/split_button-alpha.vue.js +1 -4
  343. package/dist/vue2/components/split_button/split_button-alpha.vue.js.map +1 -1
  344. package/dist/vue2/components/split_button/split_button-omega.vue.cjs +1 -4
  345. package/dist/vue2/components/split_button/split_button-omega.vue.cjs.map +1 -1
  346. package/dist/vue2/components/split_button/split_button-omega.vue.js +1 -4
  347. package/dist/vue2/components/split_button/split_button-omega.vue.js.map +1 -1
  348. package/dist/vue2/components/split_button/split_button.vue.cjs +1 -4
  349. package/dist/vue2/components/split_button/split_button.vue.cjs.map +1 -1
  350. package/dist/vue2/components/split_button/split_button.vue.js +1 -4
  351. package/dist/vue2/components/split_button/split_button.vue.js.map +1 -1
  352. package/dist/vue2/components/stack/stack.vue.cjs +1 -4
  353. package/dist/vue2/components/stack/stack.vue.cjs.map +1 -1
  354. package/dist/vue2/components/stack/stack.vue.js +1 -4
  355. package/dist/vue2/components/stack/stack.vue.js.map +1 -1
  356. package/dist/vue2/components/tab/tab.vue.cjs +1 -4
  357. package/dist/vue2/components/tab/tab.vue.cjs.map +1 -1
  358. package/dist/vue2/components/tab/tab.vue.js +1 -4
  359. package/dist/vue2/components/tab/tab.vue.js.map +1 -1
  360. package/dist/vue2/components/tab/tab_group.vue.cjs +1 -4
  361. package/dist/vue2/components/tab/tab_group.vue.cjs.map +1 -1
  362. package/dist/vue2/components/tab/tab_group.vue.js +1 -4
  363. package/dist/vue2/components/tab/tab_group.vue.js.map +1 -1
  364. package/dist/vue2/components/tab/tab_panel.vue.cjs +1 -4
  365. package/dist/vue2/components/tab/tab_panel.vue.cjs.map +1 -1
  366. package/dist/vue2/components/tab/tab_panel.vue.js +1 -4
  367. package/dist/vue2/components/tab/tab_panel.vue.js.map +1 -1
  368. package/dist/vue2/components/toast/toast.vue.cjs +1 -4
  369. package/dist/vue2/components/toast/toast.vue.cjs.map +1 -1
  370. package/dist/vue2/components/toast/toast.vue.js +1 -4
  371. package/dist/vue2/components/toast/toast.vue.js.map +1 -1
  372. package/dist/vue2/components/toggle/toggle.vue.cjs +1 -4
  373. package/dist/vue2/components/toggle/toggle.vue.cjs.map +1 -1
  374. package/dist/vue2/components/toggle/toggle.vue.js +1 -4
  375. package/dist/vue2/components/toggle/toggle.vue.js.map +1 -1
  376. package/dist/vue2/components/tooltip/tooltip.vue.cjs +1 -4
  377. package/dist/vue2/components/tooltip/tooltip.vue.cjs.map +1 -1
  378. package/dist/vue2/components/tooltip/tooltip.vue.js +1 -4
  379. package/dist/vue2/components/tooltip/tooltip.vue.js.map +1 -1
  380. package/dist/vue2/components/validation_messages/validation_messages.vue.cjs +1 -4
  381. package/dist/vue2/components/validation_messages/validation_messages.vue.cjs.map +1 -1
  382. package/dist/vue2/components/validation_messages/validation_messages.vue.js +1 -4
  383. package/dist/vue2/components/validation_messages/validation_messages.vue.js.map +1 -1
  384. package/dist/vue2/recipes/buttons/callbar_button/callbar_button.vue.cjs +1 -5
  385. package/dist/vue2/recipes/buttons/callbar_button/callbar_button.vue.cjs.map +1 -1
  386. package/dist/vue2/recipes/buttons/callbar_button/callbar_button.vue.js +1 -5
  387. package/dist/vue2/recipes/buttons/callbar_button/callbar_button.vue.js.map +1 -1
  388. package/dist/vue2/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.cjs +7 -11
  389. package/dist/vue2/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.cjs.map +1 -1
  390. package/dist/vue2/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.js +7 -11
  391. package/dist/vue2/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.js.map +1 -1
  392. package/dist/vue2/recipes/cards/ivr_node/ivr_node.vue.cjs +6 -10
  393. package/dist/vue2/recipes/cards/ivr_node/ivr_node.vue.cjs.map +1 -1
  394. package/dist/vue2/recipes/cards/ivr_node/ivr_node.vue.js +6 -10
  395. package/dist/vue2/recipes/cards/ivr_node/ivr_node.vue.js.map +1 -1
  396. package/dist/vue2/recipes/chips/grouped_chip/grouped_chip.vue.cjs +3 -7
  397. package/dist/vue2/recipes/chips/grouped_chip/grouped_chip.vue.cjs.map +1 -1
  398. package/dist/vue2/recipes/chips/grouped_chip/grouped_chip.vue.js +3 -7
  399. package/dist/vue2/recipes/chips/grouped_chip/grouped_chip.vue.js.map +1 -1
  400. package/dist/vue2/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs +9 -10
  401. package/dist/vue2/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs.map +1 -1
  402. package/dist/vue2/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js +9 -10
  403. package/dist/vue2/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js.map +1 -1
  404. package/dist/vue2/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.cjs +1 -4
  405. package/dist/vue2/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.cjs.map +1 -1
  406. package/dist/vue2/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.js +1 -4
  407. package/dist/vue2/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.js.map +1 -1
  408. package/dist/vue2/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.cjs +4 -8
  409. package/dist/vue2/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.cjs.map +1 -1
  410. package/dist/vue2/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.js +4 -8
  411. package/dist/vue2/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.js.map +1 -1
  412. package/dist/vue2/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.cjs +2 -6
  413. package/dist/vue2/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.cjs.map +1 -1
  414. package/dist/vue2/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.js +2 -6
  415. package/dist/vue2/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.js.map +1 -1
  416. package/dist/vue2/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.cjs +2 -6
  417. package/dist/vue2/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.cjs.map +1 -1
  418. package/dist/vue2/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.js +2 -6
  419. package/dist/vue2/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.js.map +1 -1
  420. package/dist/vue2/recipes/conversation_view/editor/editor.vue.cjs +22 -26
  421. package/dist/vue2/recipes/conversation_view/editor/editor.vue.cjs.map +1 -1
  422. package/dist/vue2/recipes/conversation_view/editor/editor.vue.js +22 -26
  423. package/dist/vue2/recipes/conversation_view/editor/editor.vue.js.map +1 -1
  424. package/dist/vue2/recipes/conversation_view/emoji_row/emoji_row.vue.cjs +8 -9
  425. package/dist/vue2/recipes/conversation_view/emoji_row/emoji_row.vue.cjs.map +1 -1
  426. package/dist/vue2/recipes/conversation_view/emoji_row/emoji_row.vue.js +8 -9
  427. package/dist/vue2/recipes/conversation_view/emoji_row/emoji_row.vue.js.map +1 -1
  428. package/dist/vue2/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs +1 -5
  429. package/dist/vue2/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs.map +1 -1
  430. package/dist/vue2/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js +1 -5
  431. package/dist/vue2/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js.map +1 -1
  432. package/dist/vue2/recipes/conversation_view/feed_item_pill/feed_item_pill_constants.cjs +3 -3
  433. package/dist/vue2/recipes/conversation_view/feed_item_pill/feed_item_pill_constants.cjs.map +1 -1
  434. package/dist/vue2/recipes/conversation_view/feed_item_pill/feed_item_pill_constants.js +3 -3
  435. package/dist/vue2/recipes/conversation_view/feed_item_pill/feed_item_pill_constants.js.map +1 -1
  436. package/dist/vue2/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs +10 -14
  437. package/dist/vue2/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs.map +1 -1
  438. package/dist/vue2/recipes/conversation_view/feed_item_row/feed_item_row.vue.js +10 -14
  439. package/dist/vue2/recipes/conversation_view/feed_item_row/feed_item_row.vue.js.map +1 -1
  440. package/dist/vue2/recipes/conversation_view/feed_item_row/feed_item_row_constants.cjs +2 -2
  441. package/dist/vue2/recipes/conversation_view/feed_item_row/feed_item_row_constants.cjs.map +1 -1
  442. package/dist/vue2/recipes/conversation_view/feed_item_row/feed_item_row_constants.js +2 -2
  443. package/dist/vue2/recipes/conversation_view/feed_item_row/feed_item_row_constants.js.map +1 -1
  444. package/dist/vue2/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.cjs +4 -8
  445. package/dist/vue2/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.cjs.map +1 -1
  446. package/dist/vue2/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.js +4 -8
  447. package/dist/vue2/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.js.map +1 -1
  448. package/dist/vue2/recipes/conversation_view/message_input/message_input.vue.cjs +13 -17
  449. package/dist/vue2/recipes/conversation_view/message_input/message_input.vue.cjs.map +1 -1
  450. package/dist/vue2/recipes/conversation_view/message_input/message_input.vue.js +13 -17
  451. package/dist/vue2/recipes/conversation_view/message_input/message_input.vue.js.map +1 -1
  452. package/dist/vue2/recipes/conversation_view/time_pill/time_pill.vue.cjs +2 -6
  453. package/dist/vue2/recipes/conversation_view/time_pill/time_pill.vue.cjs.map +1 -1
  454. package/dist/vue2/recipes/conversation_view/time_pill/time_pill.vue.js +2 -6
  455. package/dist/vue2/recipes/conversation_view/time_pill/time_pill.vue.js.map +1 -1
  456. package/dist/vue2/recipes/header/settings_menu_button/settings_menu_button.vue.cjs +3 -7
  457. package/dist/vue2/recipes/header/settings_menu_button/settings_menu_button.vue.cjs.map +1 -1
  458. package/dist/vue2/recipes/header/settings_menu_button/settings_menu_button.vue.js +3 -7
  459. package/dist/vue2/recipes/header/settings_menu_button/settings_menu_button.vue.js.map +1 -1
  460. package/dist/vue2/recipes/item_layout/contact_info/contact_info.vue.cjs +3 -7
  461. package/dist/vue2/recipes/item_layout/contact_info/contact_info.vue.cjs.map +1 -1
  462. package/dist/vue2/recipes/item_layout/contact_info/contact_info.vue.js +3 -7
  463. package/dist/vue2/recipes/item_layout/contact_info/contact_info.vue.js.map +1 -1
  464. package/dist/vue2/recipes/leftbar/callbox/callbox.vue.cjs +4 -8
  465. package/dist/vue2/recipes/leftbar/callbox/callbox.vue.cjs.map +1 -1
  466. package/dist/vue2/recipes/leftbar/callbox/callbox.vue.js +4 -8
  467. package/dist/vue2/recipes/leftbar/callbox/callbox.vue.js.map +1 -1
  468. package/dist/vue2/recipes/leftbar/callbox/callbox_constants.cjs +3 -3
  469. package/dist/vue2/recipes/leftbar/callbox/callbox_constants.cjs.map +1 -1
  470. package/dist/vue2/recipes/leftbar/callbox/callbox_constants.js +3 -3
  471. package/dist/vue2/recipes/leftbar/callbox/callbox_constants.js.map +1 -1
  472. package/dist/vue2/recipes/leftbar/contact_centers_row/contact_centers_row.vue.cjs +12 -16
  473. package/dist/vue2/recipes/leftbar/contact_centers_row/contact_centers_row.vue.cjs.map +1 -1
  474. package/dist/vue2/recipes/leftbar/contact_centers_row/contact_centers_row.vue.js +12 -16
  475. package/dist/vue2/recipes/leftbar/contact_centers_row/contact_centers_row.vue.js.map +1 -1
  476. package/dist/vue2/recipes/leftbar/contact_row/contact_row.vue.cjs +2 -5
  477. package/dist/vue2/recipes/leftbar/contact_row/contact_row.vue.cjs.map +1 -1
  478. package/dist/vue2/recipes/leftbar/contact_row/contact_row.vue.js +2 -5
  479. package/dist/vue2/recipes/leftbar/contact_row/contact_row.vue.js.map +1 -1
  480. package/dist/vue2/recipes/leftbar/general_row/general_row.vue.cjs +28 -32
  481. package/dist/vue2/recipes/leftbar/general_row/general_row.vue.cjs.map +1 -1
  482. package/dist/vue2/recipes/leftbar/general_row/general_row.vue.js +28 -32
  483. package/dist/vue2/recipes/leftbar/general_row/general_row.vue.js.map +1 -1
  484. package/dist/vue2/recipes/leftbar/general_row/leftbar_general_row_icon.vue.cjs +2 -5
  485. package/dist/vue2/recipes/leftbar/general_row/leftbar_general_row_icon.vue.cjs.map +1 -1
  486. package/dist/vue2/recipes/leftbar/general_row/leftbar_general_row_icon.vue.js +2 -5
  487. package/dist/vue2/recipes/leftbar/general_row/leftbar_general_row_icon.vue.js.map +1 -1
  488. package/dist/vue2/recipes/leftbar/group_row/group_row.vue.cjs +1 -4
  489. package/dist/vue2/recipes/leftbar/group_row/group_row.vue.cjs.map +1 -1
  490. package/dist/vue2/recipes/leftbar/group_row/group_row.vue.js +1 -4
  491. package/dist/vue2/recipes/leftbar/group_row/group_row.vue.js.map +1 -1
  492. package/dist/vue2/recipes/leftbar/unread_pill/unread_pill.vue.cjs +2 -6
  493. package/dist/vue2/recipes/leftbar/unread_pill/unread_pill.vue.cjs.map +1 -1
  494. package/dist/vue2/recipes/leftbar/unread_pill/unread_pill.vue.js +2 -6
  495. package/dist/vue2/recipes/leftbar/unread_pill/unread_pill.vue.js.map +1 -1
  496. package/dist/vue2/recipes/notices/top_banner_info/top_banner_info.vue.cjs +2 -6
  497. package/dist/vue2/recipes/notices/top_banner_info/top_banner_info.vue.cjs.map +1 -1
  498. package/dist/vue2/recipes/notices/top_banner_info/top_banner_info.vue.js +2 -6
  499. package/dist/vue2/recipes/notices/top_banner_info/top_banner_info.vue.js.map +1 -1
  500. package/dist/vue2/types/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.d.ts.map +1 -1
  501. package/dist/vue2/types/recipes/conversation_view/emoji_row/emoji_row.vue.d.ts.map +1 -1
  502. package/dist/vue2/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +4 -4
  503. package/dist/vue2/types/recipes/leftbar/contact_centers_row/contact_centers_row.vue.d.ts +2 -2
  504. package/dist/vue2/types/recipes/leftbar/general_row/general_row.vue.d.ts +6 -6
  505. package/dist/vue2/types/recipes/leftbar/general_row/general_row.vue.d.ts.map +1 -1
  506. package/dist/vue3/component-documentation.json +1 -1
  507. package/dist/vue3/recipes/buttons/callbar_button/callbar_button.vue.cjs +0 -1
  508. package/dist/vue3/recipes/buttons/callbar_button/callbar_button.vue.cjs.map +1 -1
  509. package/dist/vue3/recipes/buttons/callbar_button/callbar_button.vue.js +0 -1
  510. package/dist/vue3/recipes/buttons/callbar_button/callbar_button.vue.js.map +1 -1
  511. package/dist/vue3/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.cjs +7 -8
  512. package/dist/vue3/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.cjs.map +1 -1
  513. package/dist/vue3/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.js +7 -8
  514. package/dist/vue3/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.js.map +1 -1
  515. package/dist/vue3/recipes/cards/ivr_node/ivr_node.vue.cjs +7 -8
  516. package/dist/vue3/recipes/cards/ivr_node/ivr_node.vue.cjs.map +1 -1
  517. package/dist/vue3/recipes/cards/ivr_node/ivr_node.vue.js +7 -8
  518. package/dist/vue3/recipes/cards/ivr_node/ivr_node.vue.js.map +1 -1
  519. package/dist/vue3/recipes/chips/grouped_chip/grouped_chip.vue.cjs +3 -4
  520. package/dist/vue3/recipes/chips/grouped_chip/grouped_chip.vue.cjs.map +1 -1
  521. package/dist/vue3/recipes/chips/grouped_chip/grouped_chip.vue.js +3 -4
  522. package/dist/vue3/recipes/chips/grouped_chip/grouped_chip.vue.js.map +1 -1
  523. package/dist/vue3/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs +13 -11
  524. package/dist/vue3/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs.map +1 -1
  525. package/dist/vue3/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js +13 -11
  526. package/dist/vue3/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js.map +1 -1
  527. package/dist/vue3/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.cjs +4 -5
  528. package/dist/vue3/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.cjs.map +1 -1
  529. package/dist/vue3/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.js +4 -5
  530. package/dist/vue3/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.js.map +1 -1
  531. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.cjs +5 -6
  532. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.cjs.map +1 -1
  533. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.js +5 -6
  534. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.js.map +1 -1
  535. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.cjs +3 -4
  536. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.cjs.map +1 -1
  537. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.js +3 -4
  538. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.js.map +1 -1
  539. package/dist/vue3/recipes/conversation_view/editor/editor.vue.cjs +22 -23
  540. package/dist/vue3/recipes/conversation_view/editor/editor.vue.cjs.map +1 -1
  541. package/dist/vue3/recipes/conversation_view/editor/editor.vue.js +22 -23
  542. package/dist/vue3/recipes/conversation_view/editor/editor.vue.js.map +1 -1
  543. package/dist/vue3/recipes/conversation_view/emoji_row/emoji_row.vue.cjs +8 -6
  544. package/dist/vue3/recipes/conversation_view/emoji_row/emoji_row.vue.cjs.map +1 -1
  545. package/dist/vue3/recipes/conversation_view/emoji_row/emoji_row.vue.js +8 -6
  546. package/dist/vue3/recipes/conversation_view/emoji_row/emoji_row.vue.js.map +1 -1
  547. package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs +7 -8
  548. package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs.map +1 -1
  549. package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js +7 -8
  550. package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js.map +1 -1
  551. package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill_constants.cjs +3 -3
  552. package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill_constants.cjs.map +1 -1
  553. package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill_constants.js +3 -3
  554. package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill_constants.js.map +1 -1
  555. package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs +28 -29
  556. package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs.map +1 -1
  557. package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row.vue.js +28 -29
  558. package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row.vue.js.map +1 -1
  559. package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row_constants.cjs +2 -2
  560. package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row_constants.cjs.map +1 -1
  561. package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row_constants.js +2 -2
  562. package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row_constants.js.map +1 -1
  563. package/dist/vue3/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.cjs +4 -5
  564. package/dist/vue3/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.cjs.map +1 -1
  565. package/dist/vue3/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.js +4 -5
  566. package/dist/vue3/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.js.map +1 -1
  567. package/dist/vue3/recipes/conversation_view/message_input/message_input.vue.cjs +21 -22
  568. package/dist/vue3/recipes/conversation_view/message_input/message_input.vue.cjs.map +1 -1
  569. package/dist/vue3/recipes/conversation_view/message_input/message_input.vue.js +21 -22
  570. package/dist/vue3/recipes/conversation_view/message_input/message_input.vue.js.map +1 -1
  571. package/dist/vue3/recipes/conversation_view/time_pill/time_pill.vue.cjs +2 -3
  572. package/dist/vue3/recipes/conversation_view/time_pill/time_pill.vue.cjs.map +1 -1
  573. package/dist/vue3/recipes/conversation_view/time_pill/time_pill.vue.js +2 -3
  574. package/dist/vue3/recipes/conversation_view/time_pill/time_pill.vue.js.map +1 -1
  575. package/dist/vue3/recipes/header/settings_menu_button/settings_menu_button.vue.cjs +4 -5
  576. package/dist/vue3/recipes/header/settings_menu_button/settings_menu_button.vue.cjs.map +1 -1
  577. package/dist/vue3/recipes/header/settings_menu_button/settings_menu_button.vue.js +4 -5
  578. package/dist/vue3/recipes/header/settings_menu_button/settings_menu_button.vue.js.map +1 -1
  579. package/dist/vue3/recipes/item_layout/contact_info/contact_info.vue.cjs +10 -11
  580. package/dist/vue3/recipes/item_layout/contact_info/contact_info.vue.cjs.map +1 -1
  581. package/dist/vue3/recipes/item_layout/contact_info/contact_info.vue.js +10 -11
  582. package/dist/vue3/recipes/item_layout/contact_info/contact_info.vue.js.map +1 -1
  583. package/dist/vue3/recipes/leftbar/callbox/callbox.vue.cjs +23 -24
  584. package/dist/vue3/recipes/leftbar/callbox/callbox.vue.cjs.map +1 -1
  585. package/dist/vue3/recipes/leftbar/callbox/callbox.vue.js +23 -24
  586. package/dist/vue3/recipes/leftbar/callbox/callbox.vue.js.map +1 -1
  587. package/dist/vue3/recipes/leftbar/callbox/callbox_constants.cjs +3 -3
  588. package/dist/vue3/recipes/leftbar/callbox/callbox_constants.cjs.map +1 -1
  589. package/dist/vue3/recipes/leftbar/callbox/callbox_constants.js +3 -3
  590. package/dist/vue3/recipes/leftbar/callbox/callbox_constants.js.map +1 -1
  591. package/dist/vue3/recipes/leftbar/contact_centers_row/contact_centers_row.vue.cjs +26 -27
  592. package/dist/vue3/recipes/leftbar/contact_centers_row/contact_centers_row.vue.cjs.map +1 -1
  593. package/dist/vue3/recipes/leftbar/contact_centers_row/contact_centers_row.vue.js +26 -27
  594. package/dist/vue3/recipes/leftbar/contact_centers_row/contact_centers_row.vue.js.map +1 -1
  595. package/dist/vue3/recipes/leftbar/contact_row/contact_row.vue.cjs +7 -7
  596. package/dist/vue3/recipes/leftbar/contact_row/contact_row.vue.cjs.map +1 -1
  597. package/dist/vue3/recipes/leftbar/contact_row/contact_row.vue.js +7 -7
  598. package/dist/vue3/recipes/leftbar/contact_row/contact_row.vue.js.map +1 -1
  599. package/dist/vue3/recipes/leftbar/general_row/general_row.vue.cjs +41 -43
  600. package/dist/vue3/recipes/leftbar/general_row/general_row.vue.cjs.map +1 -1
  601. package/dist/vue3/recipes/leftbar/general_row/general_row.vue.js +42 -44
  602. package/dist/vue3/recipes/leftbar/general_row/general_row.vue.js.map +1 -1
  603. package/dist/vue3/recipes/leftbar/general_row/leftbar_general_row_icon.vue.cjs +1 -1
  604. package/dist/vue3/recipes/leftbar/general_row/leftbar_general_row_icon.vue.cjs.map +1 -1
  605. package/dist/vue3/recipes/leftbar/general_row/leftbar_general_row_icon.vue.js +1 -1
  606. package/dist/vue3/recipes/leftbar/general_row/leftbar_general_row_icon.vue.js.map +1 -1
  607. package/dist/vue3/recipes/leftbar/unread_pill/unread_pill.vue.cjs +3 -4
  608. package/dist/vue3/recipes/leftbar/unread_pill/unread_pill.vue.cjs.map +1 -1
  609. package/dist/vue3/recipes/leftbar/unread_pill/unread_pill.vue.js +3 -4
  610. package/dist/vue3/recipes/leftbar/unread_pill/unread_pill.vue.js.map +1 -1
  611. package/dist/vue3/recipes/notices/top_banner_info/top_banner_info.vue.cjs +4 -5
  612. package/dist/vue3/recipes/notices/top_banner_info/top_banner_info.vue.cjs.map +1 -1
  613. package/dist/vue3/recipes/notices/top_banner_info/top_banner_info.vue.js +4 -5
  614. package/dist/vue3/recipes/notices/top_banner_info/top_banner_info.vue.js.map +1 -1
  615. package/dist/vue3/types/recipes/chips/grouped_chip/grouped_chip.vue.d.ts.map +1 -1
  616. package/dist/vue3/types/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.d.ts.map +1 -1
  617. package/dist/vue3/types/recipes/conversation_view/emoji_row/emoji_row.vue.d.ts.map +1 -1
  618. package/dist/vue3/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +4 -4
  619. package/dist/vue3/types/recipes/leftbar/contact_centers_row/contact_centers_row.vue.d.ts +2 -2
  620. package/dist/vue3/types/recipes/leftbar/general_row/general_row.vue.d.ts +6 -6
  621. package/dist/vue3/types/recipes/leftbar/general_row/general_row.vue.d.ts.map +1 -1
  622. package/package.json +5 -7
  623. package/dist/vue2/style.css +0 -1424
  624. package/dist/vue3/style.css +0 -1427
@@ -1 +1 @@
1
- {"version":3,"file":"ivr_node.vue.cjs","sources":["../../../../recipes/cards/ivr_node/ivr_node.vue"],"sourcesContent":["<template>\n <div\n class=\"ivr_node\"\n v-on=\"$listeners\"\n >\n <div\n v-if=\"dtmfKey\"\n data-qa=\"dt-top-connector-dtmf\"\n class=\"ivr-connector ivr-connector--dtmf\"\n :class=\"{ 'ivr-connector--dtmf--selected': isSelected }\"\n >\n {{ dtmfKey }}\n </div>\n <slot\n v-if=\"$slots.connector\"\n name=\"connector\"\n />\n <div\n v-if=\"!dtmfKey && !$slots.connector\"\n data-qa=\"dt-top-connector\"\n class=\"ivr-connector\"\n :class=\"{ 'ivr-connector--selected': isSelected }\"\n />\n <dt-card\n content-class=\"d-bt d-bc-black-300 d-px12 d-pt8 d-pb12\"\n :container-class=\"[\n 'd-w100p',\n { 'd-ba d-bar8 d-baw4': isSelected },\n headerColor,\n ]\"\n :header-class=\"[\n 'd-mtn1',\n 'd-bt',\n 'd-btw4',\n 'd-p0',\n headerColor,\n { 'd-btr4': !isSelected },\n ]\"\n >\n <template #header>\n <!-- node label and icon section on left of the header -->\n <div class=\"ivr_node__header-left\">\n <dt-button\n :aria-label=\"nodeType\"\n importance=\"clear\"\n kind=\"muted\"\n data-qa=\"dt-ivr-node-icon\"\n >\n <template #icon>\n <component\n :is=\"nodeIcon\"\n size=\"200\"\n :class=\"['', { 'ivr_node__goto_icon': isGotoNode }]\"\n />\n </template>\n </dt-button>\n <p\n class=\"ivr_node__label\"\n data-qa=\"ivr-node-label\"\n >\n {{ nodeLabel }}\n </p>\n </div>\n <!-- node menu for actions like edit, copy, delete -->\n <dt-dropdown\n placement=\"bottom\"\n :open.sync=\"isOpen\"\n >\n <template #anchor>\n <dt-button\n importance=\"clear\"\n kind=\"muted\"\n :aria-label=\"menuButtonAriaLabel\"\n @click.stop.prevent=\"openMenu\"\n >\n <template #icon>\n <dt-icon-more-vertical size=\"200\" />\n </template>\n </dt-button>\n </template>\n <template #list=\"{ close }\">\n <div class=\"ivr_node__dropdown-list\">\n <slot\n name=\"menuItems\"\n :close=\"close\"\n />\n </div>\n </template>\n </dt-dropdown>\n </template>\n <template #content>\n <slot name=\"content\" />\n </template>\n </dt-card>\n </div>\n</template>\n\n<script>\nimport { DtCard } from '@/components/card';\nimport { DtButton } from '@/components/button';\nimport { DtDropdown } from '@/components/dropdown';\nimport {\n DtIconKeypad,\n DtIconDialer,\n DtIconVolume2,\n DtIconExpertNode,\n DtIconBranch,\n DtIconCallMerge,\n DtIconChevronsRight,\n DtIconTransfer,\n DtIconPhoneHangUp,\n DtIconMoreVertical,\n} from '@dialpad/dialtone-icons/vue2';\nimport {\n IVR_NODE_COLOR_MAPPING,\n IVR_NODE_PROMPT_MENU,\n IVR_NODE_PROMPT_COLLECT,\n IVR_NODE_PROMPT_PLAY,\n IVR_NODE_EXPERT,\n IVR_NODE_BRANCH,\n IVR_NODE_GO_TO,\n IVR_NODE_ASSIGN,\n IVR_NODE_TRANSFER,\n IVR_NODE_HANGUP,\n} from './ivr_node_constants';\n\nconst typeToIcon = new Map([\n [IVR_NODE_PROMPT_MENU, DtIconKeypad],\n [IVR_NODE_PROMPT_COLLECT, DtIconDialer],\n [IVR_NODE_PROMPT_PLAY, DtIconVolume2],\n [IVR_NODE_EXPERT, DtIconExpertNode],\n [IVR_NODE_BRANCH, DtIconBranch],\n [IVR_NODE_GO_TO, DtIconCallMerge],\n [IVR_NODE_ASSIGN, DtIconChevronsRight],\n [IVR_NODE_TRANSFER, DtIconTransfer],\n [IVR_NODE_HANGUP, DtIconPhoneHangUp],\n]);\n\nexport default {\n name: 'DtRecipeIvrNode',\n\n components: {\n DtCard,\n DtButton,\n DtDropdown,\n DtIconKeypad,\n DtIconDialer,\n DtIconVolume2,\n DtIconExpertNode,\n DtIconBranch,\n DtIconCallMerge,\n DtIconChevronsRight,\n DtIconTransfer,\n DtIconPhoneHangUp,\n DtIconMoreVertical,\n },\n\n props: {\n\n /**\n * type of IVR Node.\n */\n nodeType: {\n type: String,\n required: true,\n },\n\n /**\n * Descriptive label for the node name.\n */\n\n nodeLabel: {\n type: String,\n required: true,\n },\n\n /**\n * Selected state of the node\n */\n isSelected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Translated aria-label for header menu button\n */\n menuButtonAriaLabel: {\n type: String,\n required: true,\n },\n\n /**\n * DTMF input\n */\n dtmfKey: {\n type: String,\n default: null,\n },\n },\n\n emits: [\n /**\n * Add node click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n ],\n\n data () {\n return {\n isOpen: false,\n };\n },\n\n computed: {\n nodeIcon () {\n return typeToIcon.get(this.nodeType);\n },\n\n headerColor () {\n const { normal, selected } = IVR_NODE_COLOR_MAPPING[this.nodeType];\n return this.isSelected ? selected : normal;\n },\n\n isGotoNode () {\n return this.nodeType === IVR_NODE_GO_TO;\n },\n },\n\n methods: {\n openMenu () {\n this.isOpen = true;\n },\n },\n};\n</script>\n\n<style lang=\"less\">\n.ivr_node {\n width: 280px;\n display: flex;\n flex-direction: column;\n align-items: center;\n cursor: pointer;\n\n &__header-left {\n display: flex;\n align-items: center;\n }\n\n &__label {\n font-size: var(--dt-font-size-200);\n font-weight: var(--dt-font-weight-bold);\n }\n\n &__dropdown-list {\n width: var(--dt-size-825);\n }\n}\n\n.ivr_node__goto_icon {\n transform: rotate(90deg);\n}\n\n.ivr-connector {\n z-index: var(--zi-base);\n display: flex;\n justify-content: center;\n align-items: center;\n border-color: var(--dt-color-purple-600);\n background-color: var(--dt-color-purple-600);\n width: var(--dt-size-400);\n height: var(--dt-size-400);\n border-radius: var(--dt-size-radius-circle);\n margin-bottom: var(--dt-space-300-negative);\n\n &--selected {\n margin-bottom: var(--dt-space-400-negative);\n }\n\n &.ivr-connector--dtmf {\n width: var(--dt-size-550);\n height: var(--dt-size-550);\n margin-bottom: var(--dt-space-450-negative);\n color: var(--dt-color-neutral-white);\n font-size: var(--dt-font-size-200);\n\n &--selected {\n margin-bottom: var(--dt-space-500-negative);\n }\n }\n}\n</style>\n"],"names":["IVR_NODE_PROMPT_MENU","DtIconKeypad","IVR_NODE_PROMPT_COLLECT","DtIconDialer","IVR_NODE_PROMPT_PLAY","DtIconVolume2","IVR_NODE_EXPERT","DtIconExpertNode","IVR_NODE_BRANCH","DtIconBranch","IVR_NODE_GO_TO","DtIconCallMerge","IVR_NODE_ASSIGN","DtIconChevronsRight","IVR_NODE_TRANSFER","DtIconTransfer","IVR_NODE_HANGUP","DtIconPhoneHangUp","DtCard","DtButton","DtDropdown","DtIconMoreVertical","IVR_NODE_COLOR_MAPPING"],"mappings":";;;;;;;;;AA8HA,MAAA,aAAA,oBAAA,IAAA;AAAA,EACA,CAAAA,mBAAAA,sBAAAC,KAAAA,YAAA;AAAA,EACA,CAAAC,mBAAAA,yBAAAC,KAAAA,YAAA;AAAA,EACA,CAAAC,mBAAAA,sBAAAC,KAAAA,aAAA;AAAA,EACA,CAAAC,mBAAAA,iBAAAC,KAAAA,gBAAA;AAAA,EACA,CAAAC,mBAAAA,iBAAAC,KAAAA,YAAA;AAAA,EACA,CAAAC,mBAAAA,gBAAAC,KAAAA,eAAA;AAAA,EACA,CAAAC,mBAAAA,iBAAAC,KAAAA,mBAAA;AAAA,EACA,CAAAC,mBAAAA,mBAAAC,KAAAA,cAAA;AAAA,EACA,CAAAC,mBAAAA,iBAAAC,KAAAA,iBAAA;AACA,CAAA;AAEA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,QAAAC,KAAA;AAAA,IACA,UAAAC,OAAA;AAAA,IACA,YAAAC,SAAA;AAAA,IACA,cAAAnB,KAAA;AAAA,IACA,cAAAE,KAAA;AAAA,IACA,eAAAE,KAAA;AAAA,IACA,kBAAAE,KAAA;AAAA,IACA,cAAAE,KAAA;AAAA,IACA,iBAAAE,KAAA;AAAA,IACA,qBAAAE,KAAA;AAAA,IACA,gBAAAE,KAAA;AAAA,IACA,mBAAAE,KAAA;AAAA,IACA,oBAAAI,KAAA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAMA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,qBAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,SAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,QAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,WAAA;AACA,aAAA,WAAA,IAAA,KAAA,QAAA;AAAA,IACA;AAAA,IAEA,cAAA;AACA,YAAA,EAAA,QAAA,SAAA,IAAAC,mBAAAA,uBAAA,KAAA,QAAA;AACA,aAAA,KAAA,aAAA,WAAA;AAAA,IACA;AAAA,IAEA,aAAA;AACA,aAAA,KAAA,aAAAZ;IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,WAAA;AACA,WAAA,SAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"ivr_node.vue.cjs","sources":["../../../../recipes/cards/ivr_node/ivr_node.vue"],"sourcesContent":["<template>\n <div\n class=\"dt-recipe-ivr-node\"\n v-on=\"$listeners\"\n >\n <div\n v-if=\"dtmfKey\"\n data-qa=\"dt-top-connector-dtmf\"\n class=\"dt-recipe-ivr-node__connector dt-recipe-ivr-node__connector-dtmf\"\n :class=\"{ 'dt-recipe-ivr-node__connector-dtmf--selected': isSelected }\"\n >\n {{ dtmfKey }}\n </div>\n <slot\n v-if=\"$slots.connector\"\n name=\"connector\"\n />\n <div\n v-if=\"!dtmfKey && !$slots.connector\"\n data-qa=\"dt-top-connector\"\n class=\"dt-recipe-ivr-node__connector\"\n :class=\"{ 'dt-recipe-ivr-node__connector--selected': isSelected }\"\n />\n <dt-card\n content-class=\"d-bt d-bc-black-300 d-px12 d-pt8 d-pb12\"\n :container-class=\"[\n 'd-w100p',\n { 'd-ba d-bar8 d-baw4': isSelected },\n headerColor,\n ]\"\n :header-class=\"[\n 'd-mtn1',\n 'd-bt',\n 'd-btw4',\n 'd-p0',\n headerColor,\n { 'd-btr4': !isSelected },\n ]\"\n >\n <template #header>\n <!-- node label and icon section on left of the header -->\n <div class=\"dt-recipe-ivr-node__header-left\">\n <dt-button\n :aria-label=\"nodeType\"\n importance=\"clear\"\n kind=\"muted\"\n data-qa=\"dt-ivr-node-icon\"\n >\n <template #icon>\n <component\n :is=\"nodeIcon\"\n size=\"200\"\n :class=\"['', { 'dt-recipe-ivr-node__goto-icon': isGotoNode }]\"\n />\n </template>\n </dt-button>\n <p\n class=\"dt-recipe-ivr-node__label\"\n data-qa=\"ivr-node-label\"\n >\n {{ nodeLabel }}\n </p>\n </div>\n <!-- node menu for actions like edit, copy, delete -->\n <dt-dropdown\n placement=\"bottom\"\n :open.sync=\"isOpen\"\n >\n <template #anchor>\n <dt-button\n importance=\"clear\"\n kind=\"muted\"\n :aria-label=\"menuButtonAriaLabel\"\n @click.stop.prevent=\"openMenu\"\n >\n <template #icon>\n <dt-icon-more-vertical size=\"200\" />\n </template>\n </dt-button>\n </template>\n <template #list=\"{ close }\">\n <div class=\"dt-recipe-ivr-node__dropdown-list\">\n <slot\n name=\"menuItems\"\n :close=\"close\"\n />\n </div>\n </template>\n </dt-dropdown>\n </template>\n <template #content>\n <slot name=\"content\" />\n </template>\n </dt-card>\n </div>\n</template>\n\n<script>\nimport { DtCard } from '@/components/card';\nimport { DtButton } from '@/components/button';\nimport { DtDropdown } from '@/components/dropdown';\nimport {\n DtIconKeypad,\n DtIconDialer,\n DtIconVolume2,\n DtIconExpertNode,\n DtIconBranch,\n DtIconCallMerge,\n DtIconChevronsRight,\n DtIconTransfer,\n DtIconPhoneHangUp,\n DtIconMoreVertical,\n} from '@dialpad/dialtone-icons/vue2';\nimport {\n IVR_NODE_COLOR_MAPPING,\n IVR_NODE_PROMPT_MENU,\n IVR_NODE_PROMPT_COLLECT,\n IVR_NODE_PROMPT_PLAY,\n IVR_NODE_EXPERT,\n IVR_NODE_BRANCH,\n IVR_NODE_GO_TO,\n IVR_NODE_ASSIGN,\n IVR_NODE_TRANSFER,\n IVR_NODE_HANGUP,\n} from './ivr_node_constants';\n\nconst typeToIcon = new Map([\n [IVR_NODE_PROMPT_MENU, DtIconKeypad],\n [IVR_NODE_PROMPT_COLLECT, DtIconDialer],\n [IVR_NODE_PROMPT_PLAY, DtIconVolume2],\n [IVR_NODE_EXPERT, DtIconExpertNode],\n [IVR_NODE_BRANCH, DtIconBranch],\n [IVR_NODE_GO_TO, DtIconCallMerge],\n [IVR_NODE_ASSIGN, DtIconChevronsRight],\n [IVR_NODE_TRANSFER, DtIconTransfer],\n [IVR_NODE_HANGUP, DtIconPhoneHangUp],\n]);\n\nexport default {\n name: 'DtRecipeIvrNode',\n\n components: {\n DtCard,\n DtButton,\n DtDropdown,\n DtIconKeypad,\n DtIconDialer,\n DtIconVolume2,\n DtIconExpertNode,\n DtIconBranch,\n DtIconCallMerge,\n DtIconChevronsRight,\n DtIconTransfer,\n DtIconPhoneHangUp,\n DtIconMoreVertical,\n },\n\n props: {\n\n /**\n * type of IVR Node.\n */\n nodeType: {\n type: String,\n required: true,\n },\n\n /**\n * Descriptive label for the node name.\n */\n\n nodeLabel: {\n type: String,\n required: true,\n },\n\n /**\n * Selected state of the node\n */\n isSelected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Translated aria-label for header menu button\n */\n menuButtonAriaLabel: {\n type: String,\n required: true,\n },\n\n /**\n * DTMF input\n */\n dtmfKey: {\n type: String,\n default: null,\n },\n },\n\n emits: [\n /**\n * Add node click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n ],\n\n data () {\n return {\n isOpen: false,\n };\n },\n\n computed: {\n nodeIcon () {\n return typeToIcon.get(this.nodeType);\n },\n\n headerColor () {\n const { normal, selected } = IVR_NODE_COLOR_MAPPING[this.nodeType];\n return this.isSelected ? selected : normal;\n },\n\n isGotoNode () {\n return this.nodeType === IVR_NODE_GO_TO;\n },\n },\n\n methods: {\n openMenu () {\n this.isOpen = true;\n },\n },\n};\n</script>\n"],"names":["IVR_NODE_PROMPT_MENU","DtIconKeypad","IVR_NODE_PROMPT_COLLECT","DtIconDialer","IVR_NODE_PROMPT_PLAY","DtIconVolume2","IVR_NODE_EXPERT","DtIconExpertNode","IVR_NODE_BRANCH","DtIconBranch","IVR_NODE_GO_TO","DtIconCallMerge","IVR_NODE_ASSIGN","DtIconChevronsRight","IVR_NODE_TRANSFER","DtIconTransfer","IVR_NODE_HANGUP","DtIconPhoneHangUp","DtCard","DtButton","DtDropdown","DtIconMoreVertical","IVR_NODE_COLOR_MAPPING"],"mappings":";;;;;;;;AA8HA,MAAA,aAAA,oBAAA,IAAA;AAAA,EACA,CAAAA,mBAAAA,sBAAAC,KAAAA,YAAA;AAAA,EACA,CAAAC,mBAAAA,yBAAAC,KAAAA,YAAA;AAAA,EACA,CAAAC,mBAAAA,sBAAAC,KAAAA,aAAA;AAAA,EACA,CAAAC,mBAAAA,iBAAAC,KAAAA,gBAAA;AAAA,EACA,CAAAC,mBAAAA,iBAAAC,KAAAA,YAAA;AAAA,EACA,CAAAC,mBAAAA,gBAAAC,KAAAA,eAAA;AAAA,EACA,CAAAC,mBAAAA,iBAAAC,KAAAA,mBAAA;AAAA,EACA,CAAAC,mBAAAA,mBAAAC,KAAAA,cAAA;AAAA,EACA,CAAAC,mBAAAA,iBAAAC,KAAAA,iBAAA;AACA,CAAA;AAEA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,QAAAC,KAAA;AAAA,IACA,UAAAC,OAAA;AAAA,IACA,YAAAC,SAAA;AAAA,IACA,cAAAnB,KAAA;AAAA,IACA,cAAAE,KAAA;AAAA,IACA,eAAAE,KAAA;AAAA,IACA,kBAAAE,KAAA;AAAA,IACA,cAAAE,KAAA;AAAA,IACA,iBAAAE,KAAA;AAAA,IACA,qBAAAE,KAAA;AAAA,IACA,gBAAAE,KAAA;AAAA,IACA,mBAAAE,KAAA;AAAA,IACA,oBAAAI,KAAA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAMA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,qBAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,SAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,QAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,WAAA;AACA,aAAA,WAAA,IAAA,KAAA,QAAA;AAAA,IACA;AAAA,IAEA,cAAA;AACA,YAAA,EAAA,QAAA,SAAA,IAAAC,mBAAAA,uBAAA,KAAA,QAAA;AACA,aAAA,KAAA,aAAA,WAAA;AAAA,IACA;AAAA,IAEA,aAAA;AACA,aAAA,KAAA,aAAAZ;IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,WAAA;AACA,WAAA,SAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,6 +1,5 @@
1
1
  import { DtIconKeypad, DtIconDialer, DtIconVolume2, DtIconExpertNode, DtIconBranch, DtIconCallMerge, DtIconChevronsRight, DtIconTransfer, DtIconPhoneHangUp, DtIconMoreVertical } from "@dialpad/dialtone-icons/vue2";
2
2
  import { IVR_NODE_GO_TO, IVR_NODE_PROMPT_MENU, IVR_NODE_PROMPT_COLLECT, IVR_NODE_PROMPT_PLAY, IVR_NODE_EXPERT, IVR_NODE_BRANCH, IVR_NODE_ASSIGN, IVR_NODE_TRANSFER, IVR_NODE_HANGUP, IVR_NODE_COLOR_MAPPING } from "./ivr_node_constants.js";
3
- /* empty css */
4
3
  import normalizeComponent from "../../../_virtual/_plugin-vue2_normalizer.js";
5
4
  import DtCard from "../../../components/card/card.vue.js";
6
5
  import DtButton from "../../../components/button/button.vue.js";
@@ -104,7 +103,7 @@ const _sfc_main = {
104
103
  };
105
104
  var _sfc_render = function render() {
106
105
  var _vm = this, _c = _vm._self._c;
107
- return _c("div", _vm._g({ staticClass: "ivr_node" }, _vm.$listeners), [_vm.dtmfKey ? _c("div", { staticClass: "ivr-connector ivr-connector--dtmf", class: { "ivr-connector--dtmf--selected": _vm.isSelected }, attrs: { "data-qa": "dt-top-connector-dtmf" } }, [_vm._v(" " + _vm._s(_vm.dtmfKey) + " ")]) : _vm._e(), _vm.$slots.connector ? _vm._t("connector") : _vm._e(), !_vm.dtmfKey && !_vm.$slots.connector ? _c("div", { staticClass: "ivr-connector", class: { "ivr-connector--selected": _vm.isSelected }, attrs: { "data-qa": "dt-top-connector" } }) : _vm._e(), _c("dt-card", { attrs: { "content-class": "d-bt d-bc-black-300 d-px12 d-pt8 d-pb12", "container-class": [
106
+ return _c("div", _vm._g({ staticClass: "dt-recipe-ivr-node" }, _vm.$listeners), [_vm.dtmfKey ? _c("div", { staticClass: "dt-recipe-ivr-node__connector dt-recipe-ivr-node__connector-dtmf", class: { "dt-recipe-ivr-node__connector-dtmf--selected": _vm.isSelected }, attrs: { "data-qa": "dt-top-connector-dtmf" } }, [_vm._v(" " + _vm._s(_vm.dtmfKey) + " ")]) : _vm._e(), _vm.$slots.connector ? _vm._t("connector") : _vm._e(), !_vm.dtmfKey && !_vm.$slots.connector ? _c("div", { staticClass: "dt-recipe-ivr-node__connector", class: { "dt-recipe-ivr-node__connector--selected": _vm.isSelected }, attrs: { "data-qa": "dt-top-connector" } }) : _vm._e(), _c("dt-card", { attrs: { "content-class": "d-bt d-bc-black-300 d-px12 d-pt8 d-pb12", "container-class": [
108
107
  "d-w100p",
109
108
  { "d-ba d-bar8 d-baw4": _vm.isSelected },
110
109
  _vm.headerColor
@@ -116,9 +115,9 @@ var _sfc_render = function render() {
116
115
  _vm.headerColor,
117
116
  { "d-btr4": !_vm.isSelected }
118
117
  ] }, scopedSlots: _vm._u([{ key: "header", fn: function() {
119
- return [_c("div", { staticClass: "ivr_node__header-left" }, [_c("dt-button", { attrs: { "aria-label": _vm.nodeType, "importance": "clear", "kind": "muted", "data-qa": "dt-ivr-node-icon" }, scopedSlots: _vm._u([{ key: "icon", fn: function() {
120
- return [_c(_vm.nodeIcon, { tag: "component", class: ["", { "ivr_node__goto_icon": _vm.isGotoNode }], attrs: { "size": "200" } })];
121
- }, proxy: true }]) }), _c("p", { staticClass: "ivr_node__label", attrs: { "data-qa": "ivr-node-label" } }, [_vm._v(" " + _vm._s(_vm.nodeLabel) + " ")])], 1), _c("dt-dropdown", { attrs: { "placement": "bottom", "open": _vm.isOpen }, on: { "update:open": function($event) {
118
+ return [_c("div", { staticClass: "dt-recipe-ivr-node__header-left" }, [_c("dt-button", { attrs: { "aria-label": _vm.nodeType, "importance": "clear", "kind": "muted", "data-qa": "dt-ivr-node-icon" }, scopedSlots: _vm._u([{ key: "icon", fn: function() {
119
+ return [_c(_vm.nodeIcon, { tag: "component", class: ["", { "dt-recipe-ivr-node__goto-icon": _vm.isGotoNode }], attrs: { "size": "200" } })];
120
+ }, proxy: true }]) }), _c("p", { staticClass: "dt-recipe-ivr-node__label", attrs: { "data-qa": "ivr-node-label" } }, [_vm._v(" " + _vm._s(_vm.nodeLabel) + " ")])], 1), _c("dt-dropdown", { attrs: { "placement": "bottom", "open": _vm.isOpen }, on: { "update:open": function($event) {
122
121
  _vm.isOpen = $event;
123
122
  } }, scopedSlots: _vm._u([{ key: "anchor", fn: function() {
124
123
  return [_c("dt-button", { attrs: { "importance": "clear", "kind": "muted", "aria-label": _vm.menuButtonAriaLabel }, on: { "click": function($event) {
@@ -129,7 +128,7 @@ var _sfc_render = function render() {
129
128
  return [_c("dt-icon-more-vertical", { attrs: { "size": "200" } })];
130
129
  }, proxy: true }]) })];
131
130
  }, proxy: true }, { key: "list", fn: function({ close }) {
132
- return [_c("div", { staticClass: "ivr_node__dropdown-list" }, [_vm._t("menuItems", null, { "close": close })], 2)];
131
+ return [_c("div", { staticClass: "dt-recipe-ivr-node__dropdown-list" }, [_vm._t("menuItems", null, { "close": close })], 2)];
133
132
  } }], null, true) })];
134
133
  }, proxy: true }, { key: "content", fn: function() {
135
134
  return [_vm._t("content")];
@@ -139,10 +138,7 @@ var _sfc_staticRenderFns = [];
139
138
  var __component__ = /* @__PURE__ */ normalizeComponent(
140
139
  _sfc_main,
141
140
  _sfc_render,
142
- _sfc_staticRenderFns,
143
- false,
144
- null,
145
- null
141
+ _sfc_staticRenderFns
146
142
  );
147
143
  const ivr_node = __component__.exports;
148
144
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"ivr_node.vue.js","sources":["../../../../recipes/cards/ivr_node/ivr_node.vue"],"sourcesContent":["<template>\n <div\n class=\"ivr_node\"\n v-on=\"$listeners\"\n >\n <div\n v-if=\"dtmfKey\"\n data-qa=\"dt-top-connector-dtmf\"\n class=\"ivr-connector ivr-connector--dtmf\"\n :class=\"{ 'ivr-connector--dtmf--selected': isSelected }\"\n >\n {{ dtmfKey }}\n </div>\n <slot\n v-if=\"$slots.connector\"\n name=\"connector\"\n />\n <div\n v-if=\"!dtmfKey && !$slots.connector\"\n data-qa=\"dt-top-connector\"\n class=\"ivr-connector\"\n :class=\"{ 'ivr-connector--selected': isSelected }\"\n />\n <dt-card\n content-class=\"d-bt d-bc-black-300 d-px12 d-pt8 d-pb12\"\n :container-class=\"[\n 'd-w100p',\n { 'd-ba d-bar8 d-baw4': isSelected },\n headerColor,\n ]\"\n :header-class=\"[\n 'd-mtn1',\n 'd-bt',\n 'd-btw4',\n 'd-p0',\n headerColor,\n { 'd-btr4': !isSelected },\n ]\"\n >\n <template #header>\n <!-- node label and icon section on left of the header -->\n <div class=\"ivr_node__header-left\">\n <dt-button\n :aria-label=\"nodeType\"\n importance=\"clear\"\n kind=\"muted\"\n data-qa=\"dt-ivr-node-icon\"\n >\n <template #icon>\n <component\n :is=\"nodeIcon\"\n size=\"200\"\n :class=\"['', { 'ivr_node__goto_icon': isGotoNode }]\"\n />\n </template>\n </dt-button>\n <p\n class=\"ivr_node__label\"\n data-qa=\"ivr-node-label\"\n >\n {{ nodeLabel }}\n </p>\n </div>\n <!-- node menu for actions like edit, copy, delete -->\n <dt-dropdown\n placement=\"bottom\"\n :open.sync=\"isOpen\"\n >\n <template #anchor>\n <dt-button\n importance=\"clear\"\n kind=\"muted\"\n :aria-label=\"menuButtonAriaLabel\"\n @click.stop.prevent=\"openMenu\"\n >\n <template #icon>\n <dt-icon-more-vertical size=\"200\" />\n </template>\n </dt-button>\n </template>\n <template #list=\"{ close }\">\n <div class=\"ivr_node__dropdown-list\">\n <slot\n name=\"menuItems\"\n :close=\"close\"\n />\n </div>\n </template>\n </dt-dropdown>\n </template>\n <template #content>\n <slot name=\"content\" />\n </template>\n </dt-card>\n </div>\n</template>\n\n<script>\nimport { DtCard } from '@/components/card';\nimport { DtButton } from '@/components/button';\nimport { DtDropdown } from '@/components/dropdown';\nimport {\n DtIconKeypad,\n DtIconDialer,\n DtIconVolume2,\n DtIconExpertNode,\n DtIconBranch,\n DtIconCallMerge,\n DtIconChevronsRight,\n DtIconTransfer,\n DtIconPhoneHangUp,\n DtIconMoreVertical,\n} from '@dialpad/dialtone-icons/vue2';\nimport {\n IVR_NODE_COLOR_MAPPING,\n IVR_NODE_PROMPT_MENU,\n IVR_NODE_PROMPT_COLLECT,\n IVR_NODE_PROMPT_PLAY,\n IVR_NODE_EXPERT,\n IVR_NODE_BRANCH,\n IVR_NODE_GO_TO,\n IVR_NODE_ASSIGN,\n IVR_NODE_TRANSFER,\n IVR_NODE_HANGUP,\n} from './ivr_node_constants';\n\nconst typeToIcon = new Map([\n [IVR_NODE_PROMPT_MENU, DtIconKeypad],\n [IVR_NODE_PROMPT_COLLECT, DtIconDialer],\n [IVR_NODE_PROMPT_PLAY, DtIconVolume2],\n [IVR_NODE_EXPERT, DtIconExpertNode],\n [IVR_NODE_BRANCH, DtIconBranch],\n [IVR_NODE_GO_TO, DtIconCallMerge],\n [IVR_NODE_ASSIGN, DtIconChevronsRight],\n [IVR_NODE_TRANSFER, DtIconTransfer],\n [IVR_NODE_HANGUP, DtIconPhoneHangUp],\n]);\n\nexport default {\n name: 'DtRecipeIvrNode',\n\n components: {\n DtCard,\n DtButton,\n DtDropdown,\n DtIconKeypad,\n DtIconDialer,\n DtIconVolume2,\n DtIconExpertNode,\n DtIconBranch,\n DtIconCallMerge,\n DtIconChevronsRight,\n DtIconTransfer,\n DtIconPhoneHangUp,\n DtIconMoreVertical,\n },\n\n props: {\n\n /**\n * type of IVR Node.\n */\n nodeType: {\n type: String,\n required: true,\n },\n\n /**\n * Descriptive label for the node name.\n */\n\n nodeLabel: {\n type: String,\n required: true,\n },\n\n /**\n * Selected state of the node\n */\n isSelected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Translated aria-label for header menu button\n */\n menuButtonAriaLabel: {\n type: String,\n required: true,\n },\n\n /**\n * DTMF input\n */\n dtmfKey: {\n type: String,\n default: null,\n },\n },\n\n emits: [\n /**\n * Add node click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n ],\n\n data () {\n return {\n isOpen: false,\n };\n },\n\n computed: {\n nodeIcon () {\n return typeToIcon.get(this.nodeType);\n },\n\n headerColor () {\n const { normal, selected } = IVR_NODE_COLOR_MAPPING[this.nodeType];\n return this.isSelected ? selected : normal;\n },\n\n isGotoNode () {\n return this.nodeType === IVR_NODE_GO_TO;\n },\n },\n\n methods: {\n openMenu () {\n this.isOpen = true;\n },\n },\n};\n</script>\n\n<style lang=\"less\">\n.ivr_node {\n width: 280px;\n display: flex;\n flex-direction: column;\n align-items: center;\n cursor: pointer;\n\n &__header-left {\n display: flex;\n align-items: center;\n }\n\n &__label {\n font-size: var(--dt-font-size-200);\n font-weight: var(--dt-font-weight-bold);\n }\n\n &__dropdown-list {\n width: var(--dt-size-825);\n }\n}\n\n.ivr_node__goto_icon {\n transform: rotate(90deg);\n}\n\n.ivr-connector {\n z-index: var(--zi-base);\n display: flex;\n justify-content: center;\n align-items: center;\n border-color: var(--dt-color-purple-600);\n background-color: var(--dt-color-purple-600);\n width: var(--dt-size-400);\n height: var(--dt-size-400);\n border-radius: var(--dt-size-radius-circle);\n margin-bottom: var(--dt-space-300-negative);\n\n &--selected {\n margin-bottom: var(--dt-space-400-negative);\n }\n\n &.ivr-connector--dtmf {\n width: var(--dt-size-550);\n height: var(--dt-size-550);\n margin-bottom: var(--dt-space-450-negative);\n color: var(--dt-color-neutral-white);\n font-size: var(--dt-font-size-200);\n\n &--selected {\n margin-bottom: var(--dt-space-500-negative);\n }\n }\n}\n</style>\n"],"names":[],"mappings":";;;;;;;AA8HA,MAAA,aAAA,oBAAA,IAAA;AAAA,EACA,CAAA,sBAAA,YAAA;AAAA,EACA,CAAA,yBAAA,YAAA;AAAA,EACA,CAAA,sBAAA,aAAA;AAAA,EACA,CAAA,iBAAA,gBAAA;AAAA,EACA,CAAA,iBAAA,YAAA;AAAA,EACA,CAAA,gBAAA,eAAA;AAAA,EACA,CAAA,iBAAA,mBAAA;AAAA,EACA,CAAA,mBAAA,cAAA;AAAA,EACA,CAAA,iBAAA,iBAAA;AACA,CAAA;AAEA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAMA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,qBAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,SAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,QAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,WAAA;AACA,aAAA,WAAA,IAAA,KAAA,QAAA;AAAA,IACA;AAAA,IAEA,cAAA;AACA,YAAA,EAAA,QAAA,SAAA,IAAA,uBAAA,KAAA,QAAA;AACA,aAAA,KAAA,aAAA,WAAA;AAAA,IACA;AAAA,IAEA,aAAA;AACA,aAAA,KAAA,aAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,WAAA;AACA,WAAA,SAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"ivr_node.vue.js","sources":["../../../../recipes/cards/ivr_node/ivr_node.vue"],"sourcesContent":["<template>\n <div\n class=\"dt-recipe-ivr-node\"\n v-on=\"$listeners\"\n >\n <div\n v-if=\"dtmfKey\"\n data-qa=\"dt-top-connector-dtmf\"\n class=\"dt-recipe-ivr-node__connector dt-recipe-ivr-node__connector-dtmf\"\n :class=\"{ 'dt-recipe-ivr-node__connector-dtmf--selected': isSelected }\"\n >\n {{ dtmfKey }}\n </div>\n <slot\n v-if=\"$slots.connector\"\n name=\"connector\"\n />\n <div\n v-if=\"!dtmfKey && !$slots.connector\"\n data-qa=\"dt-top-connector\"\n class=\"dt-recipe-ivr-node__connector\"\n :class=\"{ 'dt-recipe-ivr-node__connector--selected': isSelected }\"\n />\n <dt-card\n content-class=\"d-bt d-bc-black-300 d-px12 d-pt8 d-pb12\"\n :container-class=\"[\n 'd-w100p',\n { 'd-ba d-bar8 d-baw4': isSelected },\n headerColor,\n ]\"\n :header-class=\"[\n 'd-mtn1',\n 'd-bt',\n 'd-btw4',\n 'd-p0',\n headerColor,\n { 'd-btr4': !isSelected },\n ]\"\n >\n <template #header>\n <!-- node label and icon section on left of the header -->\n <div class=\"dt-recipe-ivr-node__header-left\">\n <dt-button\n :aria-label=\"nodeType\"\n importance=\"clear\"\n kind=\"muted\"\n data-qa=\"dt-ivr-node-icon\"\n >\n <template #icon>\n <component\n :is=\"nodeIcon\"\n size=\"200\"\n :class=\"['', { 'dt-recipe-ivr-node__goto-icon': isGotoNode }]\"\n />\n </template>\n </dt-button>\n <p\n class=\"dt-recipe-ivr-node__label\"\n data-qa=\"ivr-node-label\"\n >\n {{ nodeLabel }}\n </p>\n </div>\n <!-- node menu for actions like edit, copy, delete -->\n <dt-dropdown\n placement=\"bottom\"\n :open.sync=\"isOpen\"\n >\n <template #anchor>\n <dt-button\n importance=\"clear\"\n kind=\"muted\"\n :aria-label=\"menuButtonAriaLabel\"\n @click.stop.prevent=\"openMenu\"\n >\n <template #icon>\n <dt-icon-more-vertical size=\"200\" />\n </template>\n </dt-button>\n </template>\n <template #list=\"{ close }\">\n <div class=\"dt-recipe-ivr-node__dropdown-list\">\n <slot\n name=\"menuItems\"\n :close=\"close\"\n />\n </div>\n </template>\n </dt-dropdown>\n </template>\n <template #content>\n <slot name=\"content\" />\n </template>\n </dt-card>\n </div>\n</template>\n\n<script>\nimport { DtCard } from '@/components/card';\nimport { DtButton } from '@/components/button';\nimport { DtDropdown } from '@/components/dropdown';\nimport {\n DtIconKeypad,\n DtIconDialer,\n DtIconVolume2,\n DtIconExpertNode,\n DtIconBranch,\n DtIconCallMerge,\n DtIconChevronsRight,\n DtIconTransfer,\n DtIconPhoneHangUp,\n DtIconMoreVertical,\n} from '@dialpad/dialtone-icons/vue2';\nimport {\n IVR_NODE_COLOR_MAPPING,\n IVR_NODE_PROMPT_MENU,\n IVR_NODE_PROMPT_COLLECT,\n IVR_NODE_PROMPT_PLAY,\n IVR_NODE_EXPERT,\n IVR_NODE_BRANCH,\n IVR_NODE_GO_TO,\n IVR_NODE_ASSIGN,\n IVR_NODE_TRANSFER,\n IVR_NODE_HANGUP,\n} from './ivr_node_constants';\n\nconst typeToIcon = new Map([\n [IVR_NODE_PROMPT_MENU, DtIconKeypad],\n [IVR_NODE_PROMPT_COLLECT, DtIconDialer],\n [IVR_NODE_PROMPT_PLAY, DtIconVolume2],\n [IVR_NODE_EXPERT, DtIconExpertNode],\n [IVR_NODE_BRANCH, DtIconBranch],\n [IVR_NODE_GO_TO, DtIconCallMerge],\n [IVR_NODE_ASSIGN, DtIconChevronsRight],\n [IVR_NODE_TRANSFER, DtIconTransfer],\n [IVR_NODE_HANGUP, DtIconPhoneHangUp],\n]);\n\nexport default {\n name: 'DtRecipeIvrNode',\n\n components: {\n DtCard,\n DtButton,\n DtDropdown,\n DtIconKeypad,\n DtIconDialer,\n DtIconVolume2,\n DtIconExpertNode,\n DtIconBranch,\n DtIconCallMerge,\n DtIconChevronsRight,\n DtIconTransfer,\n DtIconPhoneHangUp,\n DtIconMoreVertical,\n },\n\n props: {\n\n /**\n * type of IVR Node.\n */\n nodeType: {\n type: String,\n required: true,\n },\n\n /**\n * Descriptive label for the node name.\n */\n\n nodeLabel: {\n type: String,\n required: true,\n },\n\n /**\n * Selected state of the node\n */\n isSelected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Translated aria-label for header menu button\n */\n menuButtonAriaLabel: {\n type: String,\n required: true,\n },\n\n /**\n * DTMF input\n */\n dtmfKey: {\n type: String,\n default: null,\n },\n },\n\n emits: [\n /**\n * Add node click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n ],\n\n data () {\n return {\n isOpen: false,\n };\n },\n\n computed: {\n nodeIcon () {\n return typeToIcon.get(this.nodeType);\n },\n\n headerColor () {\n const { normal, selected } = IVR_NODE_COLOR_MAPPING[this.nodeType];\n return this.isSelected ? selected : normal;\n },\n\n isGotoNode () {\n return this.nodeType === IVR_NODE_GO_TO;\n },\n },\n\n methods: {\n openMenu () {\n this.isOpen = true;\n },\n },\n};\n</script>\n"],"names":[],"mappings":";;;;;;AA8HA,MAAA,aAAA,oBAAA,IAAA;AAAA,EACA,CAAA,sBAAA,YAAA;AAAA,EACA,CAAA,yBAAA,YAAA;AAAA,EACA,CAAA,sBAAA,aAAA;AAAA,EACA,CAAA,iBAAA,gBAAA;AAAA,EACA,CAAA,iBAAA,YAAA;AAAA,EACA,CAAA,gBAAA,eAAA;AAAA,EACA,CAAA,iBAAA,mBAAA;AAAA,EACA,CAAA,mBAAA,cAAA;AAAA,EACA,CAAA,iBAAA,iBAAA;AACA,CAAA;AAEA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAMA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,qBAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,SAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,QAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,WAAA;AACA,aAAA,WAAA,IAAA,KAAA,QAAA;AAAA,IACA;AAAA,IAEA,cAAA;AACA,YAAA,EAAA,QAAA,SAAA,IAAA,uBAAA,KAAA,QAAA;AACA,aAAA,KAAA,aAAA,WAAA;AAAA,IACA;AAAA,IAEA,aAAA;AACA,aAAA,KAAA,aAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,WAAA;AACA,WAAA,SAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- ;/* empty css */
4
3
  const _pluginVue2_normalizer = require("../../../_virtual/_plugin-vue2_normalizer.cjs");
5
4
  const chip = require("../../../components/chip/chip.vue.cjs");
6
5
  const _sfc_main = {
@@ -12,11 +11,11 @@ const _sfc_main = {
12
11
  };
13
12
  var _sfc_render = function render() {
14
13
  var _vm = this, _c = _vm._self._c;
15
- return _c("div", { staticClass: "dt-grouped-chip", attrs: { "data-qa": "grouped-chip" } }, [_c("dt-chip", { staticClass: "dt-chip-content dt-chip-content--left", attrs: { "hide-close": true, "interactive": false, "content-class": "d-fs100", "size": "xs", "grouped-chip": true }, scopedSlots: _vm._u([_vm.$slots.leftIcon ? { key: "icon", fn: function() {
14
+ return _c("div", { staticClass: "dt-recipe-grouped-chip", attrs: { "data-qa": "grouped-chip" } }, [_c("dt-chip", { staticClass: "dt-recipe-grouped-chip__content dt-recipe-grouped-chip__content-left", attrs: { "hide-close": true, "interactive": false, "content-class": "d-fs100", "size": "xs", "grouped-chip": true }, scopedSlots: _vm._u([_vm.$slots.leftIcon ? { key: "icon", fn: function() {
16
15
  return [_vm.$slots.leftIcon ? _c("div", { attrs: { "data-qa": "left-grouped-chip-icon" } }, [_vm._t("leftIcon")], 2) : _vm._e()];
17
16
  }, proxy: true } : null, { key: "default", fn: function() {
18
17
  return [_vm.$slots.leftContent ? _c("div", { attrs: { "data-qa": "left-grouped-chip-content" } }, [_vm._t("leftContent")], 2) : _vm._e()];
19
- }, proxy: true }], null, true) }), _c("dt-chip", { staticClass: "dt-chip-content dt-chip-content--right", attrs: { "hide-close": true, "interactive": false, "content-class": "d-fs100", "size": "xs", "grouped-chip": true }, scopedSlots: _vm._u([{ key: "icon", fn: function() {
18
+ }, proxy: true }], null, true) }), _c("dt-chip", { staticClass: "dt-recipe-grouped-chip__content dt-recipe-grouped-chip__content-right", attrs: { "hide-close": true, "interactive": false, "content-class": "d-fs100", "size": "xs", "grouped-chip": true }, scopedSlots: _vm._u([{ key: "icon", fn: function() {
20
19
  return [_vm.$slots.rightIcon ? _c("div", { attrs: { "data-qa": "right-grouped-chip-icon" } }, [_vm._t("rightIcon")], 2) : _vm._e()];
21
20
  }, proxy: true }, { key: "default", fn: function() {
22
21
  return [_vm.$slots.rightContent ? _c("div", { attrs: { "data-qa": "right-grouped-chip-content" } }, [_vm._t("rightContent")], 2) : _vm._e()];
@@ -26,10 +25,7 @@ var _sfc_staticRenderFns = [];
26
25
  var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.default(
27
26
  _sfc_main,
28
27
  _sfc_render,
29
- _sfc_staticRenderFns,
30
- false,
31
- null,
32
- null
28
+ _sfc_staticRenderFns
33
29
  );
34
30
  const grouped_chip = __component__.exports;
35
31
  exports.default = grouped_chip;
@@ -1 +1 @@
1
- {"version":3,"file":"grouped_chip.vue.cjs","sources":["../../../../recipes/chips/grouped_chip/grouped_chip.vue"],"sourcesContent":["<template>\n <div\n data-qa=\"grouped-chip\"\n class=\"dt-grouped-chip\"\n >\n <dt-chip\n :hide-close=\"true\"\n :interactive=\"false\"\n content-class=\"d-fs100\"\n size=\"xs\"\n :grouped-chip=\"true\"\n class=\"dt-chip-content dt-chip-content--left\"\n >\n <template\n v-if=\"$slots.leftIcon\"\n #icon\n >\n <!-- @slot Slot for left chip icon information -->\n <div\n v-if=\"$slots.leftIcon\"\n data-qa=\"left-grouped-chip-icon\"\n >\n <slot name=\"leftIcon\" />\n </div>\n </template>\n <template #default>\n <div\n v-if=\"$slots.leftContent\"\n data-qa=\"left-grouped-chip-content\"\n >\n <!-- @slot Slot for left chip content information -->\n <slot name=\"leftContent\" />\n </div>\n </template>\n </dt-chip>\n\n <!-- Right side split chip -->\n <dt-chip\n :hide-close=\"true\"\n :interactive=\"false\"\n content-class=\"d-fs100\"\n size=\"xs\"\n :grouped-chip=\"true\"\n class=\"dt-chip-content dt-chip-content--right\"\n >\n <template #icon>\n <div\n v-if=\"$slots.rightIcon\"\n data-qa=\"right-grouped-chip-icon\"\n >\n <!-- @slot Slot for right chip content information -->\n <slot name=\"rightIcon\" />\n </div>\n </template>\n <template #default>\n <div\n v-if=\"$slots.rightContent\"\n data-qa=\"right-grouped-chip-content\"\n >\n <!-- @slot Slot for right chip content information -->\n <slot name=\"rightContent\" />\n </div>\n </template>\n </dt-chip>\n </div>\n</template>\n\n<script>\nimport { DtChip } from '@/components/chip';\n\nexport default {\n name: 'DtRecipeGroupedChip',\n\n components: {\n DtChip,\n },\n\n computed: {},\n};\n</script>\n\n<style lang=\"less\">\n.dt-grouped-chip {\n display: inline-flex;\n white-space: nowrap;\n background-color: unset;\n background-image: unset;\n}\n\n.dt-chip-content {\n font-variant-numeric: tabular-nums;\n\n &--left {\n border-top-left-radius: var(--dt-size-radius-pill);\n border-bottom-left-radius: var(--dt-size-radius-pill);\n background-color: var(--dt-color-surface-moderate-opaque);\n max-width: var(--dt-size-730);\n }\n\n &--right {\n border-top-right-radius: var(--dt-size-radius-pill);\n border-bottom-right-radius: var(--dt-size-radius-pill);\n background-color: var(--dt-color-purple-200);\n max-width: var(--dt-size-730);\n }\n}\n</style>\n"],"names":["DtChip"],"mappings":";;;;;AAsEA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,QAAAA,KAAA;AAAA,EACA;AAAA,EAEA,UAAA,CAAA;AACA;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grouped_chip.vue.cjs","sources":["../../../../recipes/chips/grouped_chip/grouped_chip.vue"],"sourcesContent":["<template>\n <div\n data-qa=\"grouped-chip\"\n class=\"dt-recipe-grouped-chip\"\n >\n <dt-chip\n :hide-close=\"true\"\n :interactive=\"false\"\n content-class=\"d-fs100\"\n size=\"xs\"\n :grouped-chip=\"true\"\n class=\"dt-recipe-grouped-chip__content dt-recipe-grouped-chip__content-left\"\n >\n <template\n v-if=\"$slots.leftIcon\"\n #icon\n >\n <!-- @slot Slot for left chip icon information -->\n <div\n v-if=\"$slots.leftIcon\"\n data-qa=\"left-grouped-chip-icon\"\n >\n <slot name=\"leftIcon\" />\n </div>\n </template>\n <template #default>\n <div\n v-if=\"$slots.leftContent\"\n data-qa=\"left-grouped-chip-content\"\n >\n <!-- @slot Slot for left chip content information -->\n <slot name=\"leftContent\" />\n </div>\n </template>\n </dt-chip>\n\n <!-- Right side split chip -->\n <dt-chip\n :hide-close=\"true\"\n :interactive=\"false\"\n content-class=\"d-fs100\"\n size=\"xs\"\n :grouped-chip=\"true\"\n class=\"dt-recipe-grouped-chip__content dt-recipe-grouped-chip__content-right\"\n >\n <template #icon>\n <div\n v-if=\"$slots.rightIcon\"\n data-qa=\"right-grouped-chip-icon\"\n >\n <!-- @slot Slot for right chip content information -->\n <slot name=\"rightIcon\" />\n </div>\n </template>\n <template #default>\n <div\n v-if=\"$slots.rightContent\"\n data-qa=\"right-grouped-chip-content\"\n >\n <!-- @slot Slot for right chip content information -->\n <slot name=\"rightContent\" />\n </div>\n </template>\n </dt-chip>\n </div>\n</template>\n\n<script>\nimport { DtChip } from '@/components/chip';\n\nexport default {\n name: 'DtRecipeGroupedChip',\n\n components: {\n DtChip,\n },\n\n computed: {},\n};\n</script>\n"],"names":["DtChip"],"mappings":";;;;AAsEA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,QAAAA,KAAA;AAAA,EACA;AAAA,EAEA,UAAA,CAAA;AACA;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,3 @@
1
- /* empty css */
2
1
  import normalizeComponent from "../../../_virtual/_plugin-vue2_normalizer.js";
3
2
  import DtChip from "../../../components/chip/chip.vue.js";
4
3
  const _sfc_main = {
@@ -10,11 +9,11 @@ const _sfc_main = {
10
9
  };
11
10
  var _sfc_render = function render() {
12
11
  var _vm = this, _c = _vm._self._c;
13
- return _c("div", { staticClass: "dt-grouped-chip", attrs: { "data-qa": "grouped-chip" } }, [_c("dt-chip", { staticClass: "dt-chip-content dt-chip-content--left", attrs: { "hide-close": true, "interactive": false, "content-class": "d-fs100", "size": "xs", "grouped-chip": true }, scopedSlots: _vm._u([_vm.$slots.leftIcon ? { key: "icon", fn: function() {
12
+ return _c("div", { staticClass: "dt-recipe-grouped-chip", attrs: { "data-qa": "grouped-chip" } }, [_c("dt-chip", { staticClass: "dt-recipe-grouped-chip__content dt-recipe-grouped-chip__content-left", attrs: { "hide-close": true, "interactive": false, "content-class": "d-fs100", "size": "xs", "grouped-chip": true }, scopedSlots: _vm._u([_vm.$slots.leftIcon ? { key: "icon", fn: function() {
14
13
  return [_vm.$slots.leftIcon ? _c("div", { attrs: { "data-qa": "left-grouped-chip-icon" } }, [_vm._t("leftIcon")], 2) : _vm._e()];
15
14
  }, proxy: true } : null, { key: "default", fn: function() {
16
15
  return [_vm.$slots.leftContent ? _c("div", { attrs: { "data-qa": "left-grouped-chip-content" } }, [_vm._t("leftContent")], 2) : _vm._e()];
17
- }, proxy: true }], null, true) }), _c("dt-chip", { staticClass: "dt-chip-content dt-chip-content--right", attrs: { "hide-close": true, "interactive": false, "content-class": "d-fs100", "size": "xs", "grouped-chip": true }, scopedSlots: _vm._u([{ key: "icon", fn: function() {
16
+ }, proxy: true }], null, true) }), _c("dt-chip", { staticClass: "dt-recipe-grouped-chip__content dt-recipe-grouped-chip__content-right", attrs: { "hide-close": true, "interactive": false, "content-class": "d-fs100", "size": "xs", "grouped-chip": true }, scopedSlots: _vm._u([{ key: "icon", fn: function() {
18
17
  return [_vm.$slots.rightIcon ? _c("div", { attrs: { "data-qa": "right-grouped-chip-icon" } }, [_vm._t("rightIcon")], 2) : _vm._e()];
19
18
  }, proxy: true }, { key: "default", fn: function() {
20
19
  return [_vm.$slots.rightContent ? _c("div", { attrs: { "data-qa": "right-grouped-chip-content" } }, [_vm._t("rightContent")], 2) : _vm._e()];
@@ -24,10 +23,7 @@ var _sfc_staticRenderFns = [];
24
23
  var __component__ = /* @__PURE__ */ normalizeComponent(
25
24
  _sfc_main,
26
25
  _sfc_render,
27
- _sfc_staticRenderFns,
28
- false,
29
- null,
30
- null
26
+ _sfc_staticRenderFns
31
27
  );
32
28
  const grouped_chip = __component__.exports;
33
29
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"grouped_chip.vue.js","sources":["../../../../recipes/chips/grouped_chip/grouped_chip.vue"],"sourcesContent":["<template>\n <div\n data-qa=\"grouped-chip\"\n class=\"dt-grouped-chip\"\n >\n <dt-chip\n :hide-close=\"true\"\n :interactive=\"false\"\n content-class=\"d-fs100\"\n size=\"xs\"\n :grouped-chip=\"true\"\n class=\"dt-chip-content dt-chip-content--left\"\n >\n <template\n v-if=\"$slots.leftIcon\"\n #icon\n >\n <!-- @slot Slot for left chip icon information -->\n <div\n v-if=\"$slots.leftIcon\"\n data-qa=\"left-grouped-chip-icon\"\n >\n <slot name=\"leftIcon\" />\n </div>\n </template>\n <template #default>\n <div\n v-if=\"$slots.leftContent\"\n data-qa=\"left-grouped-chip-content\"\n >\n <!-- @slot Slot for left chip content information -->\n <slot name=\"leftContent\" />\n </div>\n </template>\n </dt-chip>\n\n <!-- Right side split chip -->\n <dt-chip\n :hide-close=\"true\"\n :interactive=\"false\"\n content-class=\"d-fs100\"\n size=\"xs\"\n :grouped-chip=\"true\"\n class=\"dt-chip-content dt-chip-content--right\"\n >\n <template #icon>\n <div\n v-if=\"$slots.rightIcon\"\n data-qa=\"right-grouped-chip-icon\"\n >\n <!-- @slot Slot for right chip content information -->\n <slot name=\"rightIcon\" />\n </div>\n </template>\n <template #default>\n <div\n v-if=\"$slots.rightContent\"\n data-qa=\"right-grouped-chip-content\"\n >\n <!-- @slot Slot for right chip content information -->\n <slot name=\"rightContent\" />\n </div>\n </template>\n </dt-chip>\n </div>\n</template>\n\n<script>\nimport { DtChip } from '@/components/chip';\n\nexport default {\n name: 'DtRecipeGroupedChip',\n\n components: {\n DtChip,\n },\n\n computed: {},\n};\n</script>\n\n<style lang=\"less\">\n.dt-grouped-chip {\n display: inline-flex;\n white-space: nowrap;\n background-color: unset;\n background-image: unset;\n}\n\n.dt-chip-content {\n font-variant-numeric: tabular-nums;\n\n &--left {\n border-top-left-radius: var(--dt-size-radius-pill);\n border-bottom-left-radius: var(--dt-size-radius-pill);\n background-color: var(--dt-color-surface-moderate-opaque);\n max-width: var(--dt-size-730);\n }\n\n &--right {\n border-top-right-radius: var(--dt-size-radius-pill);\n border-bottom-right-radius: var(--dt-size-radius-pill);\n background-color: var(--dt-color-purple-200);\n max-width: var(--dt-size-730);\n }\n}\n</style>\n"],"names":[],"mappings":";;;AAsEA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA,CAAA;AACA;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grouped_chip.vue.js","sources":["../../../../recipes/chips/grouped_chip/grouped_chip.vue"],"sourcesContent":["<template>\n <div\n data-qa=\"grouped-chip\"\n class=\"dt-recipe-grouped-chip\"\n >\n <dt-chip\n :hide-close=\"true\"\n :interactive=\"false\"\n content-class=\"d-fs100\"\n size=\"xs\"\n :grouped-chip=\"true\"\n class=\"dt-recipe-grouped-chip__content dt-recipe-grouped-chip__content-left\"\n >\n <template\n v-if=\"$slots.leftIcon\"\n #icon\n >\n <!-- @slot Slot for left chip icon information -->\n <div\n v-if=\"$slots.leftIcon\"\n data-qa=\"left-grouped-chip-icon\"\n >\n <slot name=\"leftIcon\" />\n </div>\n </template>\n <template #default>\n <div\n v-if=\"$slots.leftContent\"\n data-qa=\"left-grouped-chip-content\"\n >\n <!-- @slot Slot for left chip content information -->\n <slot name=\"leftContent\" />\n </div>\n </template>\n </dt-chip>\n\n <!-- Right side split chip -->\n <dt-chip\n :hide-close=\"true\"\n :interactive=\"false\"\n content-class=\"d-fs100\"\n size=\"xs\"\n :grouped-chip=\"true\"\n class=\"dt-recipe-grouped-chip__content dt-recipe-grouped-chip__content-right\"\n >\n <template #icon>\n <div\n v-if=\"$slots.rightIcon\"\n data-qa=\"right-grouped-chip-icon\"\n >\n <!-- @slot Slot for right chip content information -->\n <slot name=\"rightIcon\" />\n </div>\n </template>\n <template #default>\n <div\n v-if=\"$slots.rightContent\"\n data-qa=\"right-grouped-chip-content\"\n >\n <!-- @slot Slot for right chip content information -->\n <slot name=\"rightContent\" />\n </div>\n </template>\n </dt-chip>\n </div>\n</template>\n\n<script>\nimport { DtChip } from '@/components/chip';\n\nexport default {\n name: 'DtRecipeGroupedChip',\n\n components: {\n DtChip,\n },\n\n computed: {},\n};\n</script>\n"],"names":[],"mappings":";;AAsEA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA,CAAA;AACA;;;;;;;;;;;;;;;;;;;;"}
@@ -9,7 +9,6 @@ const popover_constants = require("../../../components/popover/popover_constants
9
9
  const combobox_multi_select_constants = require("./combobox_multi_select_constants.cjs");
10
10
  const sr_only_close_button = require("../../../common/mixins/sr_only_close_button.cjs");
11
11
  const common_utils = require("../../../common/utils.cjs");
12
- ;/* empty css */
13
12
  const _pluginVue2_normalizer = require("../../../_virtual/_plugin-vue2_normalizer.cjs");
14
13
  const _sfc_main = {
15
14
  name: "DtRecipeComboboxMultiSelect",
@@ -318,7 +317,7 @@ const _sfc_main = {
318
317
  },
319
318
  chipWrapperClass() {
320
319
  return {
321
- [`combobox__chip-wrapper-${this.size}--collapsed`]: !this.inputFocused && this.collapseOnFocusOut
320
+ [`dt-recipe-combobox-multi-select__chip-wrapper-${this.size}--collapsed`]: !this.inputFocused && this.collapseOnFocusOut
322
321
  };
323
322
  }
324
323
  },
@@ -551,14 +550,17 @@ const _sfc_main = {
551
550
  var _sfc_render = function render() {
552
551
  var _vm = this, _c = _vm._self._c;
553
552
  return _c("dt-recipe-combobox-with-popover", { ref: "comboboxWithPopover", attrs: { "label": _vm.label, "show-list": _vm.showList, "max-height": _vm.listMaxHeight, "max-width": _vm.listMaxWidth, "popover-offset": _vm.popoverOffset, "has-suggestion-list": _vm.hasSuggestionList, "visually-hidden-close-label": _vm.visuallyHiddenCloseLabel, "visually-hidden-close": _vm.visuallyHiddenClose, "content-width": "anchor", "append-to": _vm.appendTo, "transition": _vm.transition }, on: { "select": _vm.onComboboxSelect, "highlight": _vm.comboboxHighlight }, scopedSlots: _vm._u([{ key: "input", fn: function({ onInput }) {
554
- return [_c("span", { ref: "inputSlotWrapper", staticClass: "combobox__input-wrapper", on: { "focusin": _vm.handleInputFocusIn, "focusout": _vm.handleInputFocusOut } }, [_c("span", { ref: "chipsWrapper", class: ["combobox__chip-wrapper", _vm.chipWrapperClass] }, _vm._l(_vm.selectedItemsWithKeys, function({ item, key }) {
555
- return _c("dt-chip", _vm._g({ key, ref: "chips", refInFor: true, class: ["combobox__chip", { "combobox__chip--truncate": !!_vm.chipMaxWidth }], style: { maxWidth: _vm.chipMaxWidth }, attrs: { "label-class": ["d-chip__label"], "close-button-props": { ariaLabel: "close" }, "size": _vm.CHIP_SIZES[_vm.size] }, on: { "keyup": function($event) {
553
+ return [_c("span", { ref: "inputSlotWrapper", staticClass: "dt-recipe-combobox-multi-select__input-wrapper", on: { "focusin": _vm.handleInputFocusIn, "focusout": _vm.handleInputFocusOut } }, [_c("span", { ref: "chipsWrapper", class: ["dt-recipe-combobox-multi-select__chip-wrapper", _vm.chipWrapperClass] }, _vm._l(_vm.selectedItemsWithKeys, function({ item, key }) {
554
+ return _c("dt-chip", _vm._g({ key, ref: "chips", refInFor: true, class: [
555
+ "dt-recipe-combobox-multi-select__chip",
556
+ { "dt-recipe-combobox-multi-select__chip--truncate": !!_vm.chipMaxWidth }
557
+ ], style: { maxWidth: _vm.chipMaxWidth }, attrs: { "label-class": ["d-chip__label"], "close-button-props": { ariaLabel: "close" }, "size": _vm.CHIP_SIZES[_vm.size] }, on: { "keyup": function($event) {
556
558
  if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "backspace", void 0, $event.key, void 0)) return null;
557
559
  return _vm.onChipRemove(item);
558
560
  }, "close": function($event) {
559
561
  return _vm.onChipRemove(item);
560
562
  } } }, _vm.chipListeners), [_vm._v(" " + _vm._s(item) + " ")]);
561
- }), 1), _c("dt-input", _vm._g({ ref: "input", staticClass: "combobox__input", attrs: { "input-class": [_vm.inputClass, { "d-fc-transparent": _vm.hideInputText }], "input-wrapper-class": _vm.inputWrapperClass, "aria-label": _vm.label, "label": _vm.labelVisible ? _vm.label : "", "description": _vm.description, "placeholder": _vm.inputPlaceHolder, "show-messages": _vm.showInputMessages, "messages": _vm.inputMessages, "size": _vm.size }, on: { "input": onInput }, model: { value: _vm.value, callback: function($$v) {
563
+ }), 1), _c("dt-input", _vm._g({ ref: "input", staticClass: "dt-recipe-combobox-multi-select__input", attrs: { "input-class": [_vm.inputClass, { "d-fc-transparent": _vm.hideInputText }], "input-wrapper-class": _vm.inputWrapperClass, "aria-label": _vm.label, "label": _vm.labelVisible ? _vm.label : "", "description": _vm.description, "placeholder": _vm.inputPlaceHolder, "show-messages": _vm.showInputMessages, "messages": _vm.inputMessages, "size": _vm.size }, on: { "input": onInput }, model: { value: _vm.value, callback: function($$v) {
562
564
  _vm.value = $$v;
563
565
  }, expression: "value" } }, _vm.inputListeners)), _c("dt-validation-messages", { attrs: { "validation-messages": _vm.maxSelectedMessage, "show-messages": _vm.showValidationMessages } })], 1)];
564
566
  } }, _vm.$slots.header ? { key: "header", fn: function() {
@@ -566,7 +568,7 @@ var _sfc_render = function render() {
566
568
  }, proxy: true } : null, { key: "list", fn: function() {
567
569
  return [_c("div", { ref: "list", on: { "mousedown": function($event) {
568
570
  $event.preventDefault();
569
- } } }, [!_vm.loading ? _vm._t("list") : _c("div", { staticClass: "combobox__list--loading" }, [_vm._v(" " + _vm._s(_vm.loadingMessage) + " ")])], 2)];
571
+ } } }, [!_vm.loading ? _vm._t("list") : _c("div", { staticClass: "dt-recipe-combobox-multi-select__list--loading" }, [_vm._v(" " + _vm._s(_vm.loadingMessage) + " ")])], 2)];
570
572
  }, proxy: true }, _vm.$slots.footer ? { key: "footer", fn: function() {
571
573
  return [_c("div", { ref: "footer" }, [_vm._t("footer")], 2)];
572
574
  }, proxy: true } : null], null, true) });
@@ -575,10 +577,7 @@ var _sfc_staticRenderFns = [];
575
577
  var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.default(
576
578
  _sfc_main,
577
579
  _sfc_render,
578
- _sfc_staticRenderFns,
579
- false,
580
- null,
581
- "7eac7e22"
580
+ _sfc_staticRenderFns
582
581
  );
583
582
  const combobox_multi_select = __component__.exports;
584
583
  exports.default = combobox_multi_select;
@@ -1 +1 @@
1
- {"version":3,"file":"combobox_multi_select.vue.cjs","sources":["../../../../recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue"],"sourcesContent":["<!-- eslint-disable vue/no-static-inline-styles -->\n<template>\n <dt-recipe-combobox-with-popover\n ref=\"comboboxWithPopover\"\n :label=\"label\"\n :show-list=\"showList\"\n :max-height=\"listMaxHeight\"\n :max-width=\"listMaxWidth\"\n :popover-offset=\"popoverOffset\"\n :has-suggestion-list=\"hasSuggestionList\"\n :visually-hidden-close-label=\"visuallyHiddenCloseLabel\"\n :visually-hidden-close=\"visuallyHiddenClose\"\n content-width=\"anchor\"\n :append-to=\"appendTo\"\n :transition=\"transition\"\n @select=\"onComboboxSelect\"\n @highlight=\"comboboxHighlight\"\n >\n <template #input=\"{ onInput }\">\n <span\n ref=\"inputSlotWrapper\"\n class=\"combobox__input-wrapper\"\n @focusin=\"handleInputFocusIn\"\n @focusout=\"handleInputFocusOut\"\n >\n <span\n ref=\"chipsWrapper\"\n :class=\"['combobox__chip-wrapper', chipWrapperClass]\"\n >\n <dt-chip\n v-for=\"({ item, key }) in selectedItemsWithKeys\"\n ref=\"chips\"\n :key=\"key\"\n :label-class=\"['d-chip__label']\"\n :class=\"['combobox__chip', { 'combobox__chip--truncate': !!chipMaxWidth }]\"\n :style=\"{ maxWidth: chipMaxWidth }\"\n :close-button-props=\"{ ariaLabel: 'close' }\"\n :size=\"CHIP_SIZES[size]\"\n v-on=\"chipListeners\"\n @keyup.backspace=\"onChipRemove(item)\"\n @close=\"onChipRemove(item)\"\n >\n {{ item }}\n </dt-chip>\n </span>\n\n <dt-input\n ref=\"input\"\n v-model=\"value\"\n class=\"combobox__input\"\n :input-class=\"[inputClass, { 'd-fc-transparent': hideInputText }]\"\n :input-wrapper-class=\"inputWrapperClass\"\n :aria-label=\"label\"\n :label=\"labelVisible ? label : ''\"\n :description=\"description\"\n :placeholder=\"inputPlaceHolder\"\n :show-messages=\"showInputMessages\"\n :messages=\"inputMessages\"\n :size=\"size\"\n v-on=\"inputListeners\"\n @input=\"onInput\"\n />\n\n <dt-validation-messages\n :validation-messages=\"maxSelectedMessage\"\n :show-messages=\"showValidationMessages\"\n />\n </span>\n </template>\n\n <!-- @slot slot for popover header -->\n <template\n v-if=\"$slots.header\"\n #header\n >\n <div ref=\"header\">\n <slot name=\"header\" />\n </div>\n </template>\n\n <!-- @slot slot for popover list -->\n <template #list>\n <div\n ref=\"list\"\n @mousedown.prevent\n >\n <slot\n v-if=\"!loading\"\n name=\"list\"\n />\n <div\n v-else\n class=\"combobox__list--loading\"\n >\n {{ loadingMessage }}\n </div>\n </div>\n </template>\n\n <!-- @slot slot for popover footer -->\n <template\n v-if=\"$slots.footer\"\n #footer\n >\n <div ref=\"footer\">\n <slot name=\"footer\" />\n </div>\n </template>\n </dt-recipe-combobox-with-popover>\n</template>\n\n<script>\n/* eslint-disable max-lines */\nimport DtRecipeComboboxWithPopover from '@/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue';\nimport DtInput from '@/components/input/input.vue';\nimport DtChip from '@/components/chip/chip.vue';\nimport DtValidationMessages from '@/components/validation_messages/validation_messages.vue';\nimport { validationMessageValidator } from '@/common/validators';\nimport {\n POPOVER_APPEND_TO_VALUES,\n} from '@/components/popover/popover_constants';\nimport {\n MULTI_SELECT_SIZES,\n CHIP_SIZES,\n CHIP_TOP_POSITION,\n} from './combobox_multi_select_constants';\nimport SrOnlyCloseButtonMixin from '@/common/mixins/sr_only_close_button';\nimport { getUniqueString } from '@/common/utils';\n\nexport default {\n name: 'DtRecipeComboboxMultiSelect',\n\n components: {\n DtRecipeComboboxWithPopover,\n DtInput,\n DtChip,\n DtValidationMessages,\n },\n\n mixins: [SrOnlyCloseButtonMixin],\n\n props: {\n /**\n * String to use for the input label.\n */\n label: {\n type: String,\n required: true,\n },\n\n /**\n * Determines visibility of input label.\n * @values true, false\n */\n labelVisible: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Description for the input\n */\n description: {\n type: String,\n default: '',\n },\n\n /**\n * Input placeholder\n */\n placeholder: {\n type: String,\n default: 'Select one or start typing',\n },\n\n /**\n * Input validation messages\n */\n inputMessages: {\n type: Array,\n default: () => [],\n validator: inputMessages => {\n return validationMessageValidator(inputMessages);\n },\n },\n\n /**\n * Show input validation message\n */\n showInputMessages: {\n type: Boolean,\n default: true,\n },\n\n // @TODO: https://dialpad.atlassian.net/browse/DP-52324\n // type: {\n // type: String,\n // values: ['input', 'select'],\n // default: 'select',\n // },\n\n /**\n * Determines if the list is loading\n */\n loading: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The message when the list is loading\n */\n loadingMessage: {\n type: String,\n default: 'loading...',\n },\n\n /**\n * Determines when to show the list element and also controls the aria-expanded attribute.\n * Leaving this null will have the combobox trigger on input focus by default.\n * If you set this value, the default trigger behavior will be disabled and you can\n * control it as you need.\n */\n showList: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Determines maximum height for the popover before overflow.\n * Possible units rem|px|em\n */\n listMaxHeight: {\n type: String,\n default: '300px',\n },\n\n /**\n * The selected items\n */\n selectedItems: {\n type: Array,\n default: function () { return []; },\n },\n\n /**\n * Would be the maximum number of selections you can make. 0 is unlimited\n */\n maxSelected: {\n type: Number,\n default: 0,\n },\n\n /**\n * Max select message when the max selections is exceeded with the structure:\n * `[{\"message\": string, \"type\": VALIDATION_MESSAGE_TYPES }]`\n */\n maxSelectedMessage: {\n type: Array,\n default: function () { return []; },\n },\n\n /**\n * Displays the list when the combobox is focused, before the user has typed anything.\n * When this is enabled the list will not close after selection.\n */\n hasSuggestionList: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Size of the chip, one of `xs`, `sm`, `md`\n */\n size: {\n type: String,\n default: 'md',\n validator: (t) => Object.values(MULTI_SELECT_SIZES).includes(t),\n },\n\n /**\n * Sets the element to which the popover is going to append to.\n * 'body' will append to the nearest body (supports shadow DOM).\n * @values 'body', 'parent', HTMLElement,\n */\n appendTo: {\n type: [HTMLElement, String],\n default: 'body',\n validator: appendTo => {\n return POPOVER_APPEND_TO_VALUES.includes(appendTo) ||\n (appendTo instanceof HTMLElement);\n },\n },\n\n /**\n * Named transition when the content display is toggled.\n * @see DtLazyShow\n */\n transition: {\n type: String,\n default: 'fade',\n },\n\n /**\n * Determines whether the combobox should collapse to a single when losing focus.\n * @type {boolean}\n */\n collapseOnFocusOut: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Determines maximum width for the popover before overflow.\n * Possible units rem|px|em\n */\n listMaxWidth: {\n type: String,\n default: '',\n },\n\n /**\n * Amount of reserved space (in px) on the right side of the input\n * before the chips and the input caret jump to the next line.\n * default is 64\n */\n reservedRightSpace: {\n type: Number,\n default: 64,\n },\n\n /**\n * Determines the maximum width of a single chip. If the text within this chip exceeds the value\n * it will be truncated with ellipses.\n * Possible units rem|px|em\n */\n chipMaxWidth: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the input element.\n * Can accept String, Object, and Array, i.e. has the\n * same API as Vue's built-in handling of the class attribute.\n */\n inputClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * Additional class name for the input wrapper element.\n * Can accept all of String, Object, and Array, i.e. has the\n * same api as Vue's built-in handling of the class attribute.\n */\n inputWrapperClass: {\n type: [String, Object, Array],\n default: '',\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {String }\n */\n 'input',\n\n /**\n * Event fired when item selected\n *\n * @event select\n * @type {Number}\n */\n 'select',\n\n /**\n * Event fired when item removed\n *\n * @event remove\n * @type {String}\n */\n 'remove',\n\n /**\n * Event fired when max selected items limit is reached\n *\n * @event max-selected\n * @type {Object}\n */\n 'max-selected',\n\n /**\n * Native keyup event\n *\n * @event keyup\n * @type {KeyboardEvent}\n */\n 'keyup',\n\n /**\n * Event fired when combobox item is highlighted\n *\n * @event combobox-highlight\n * @type {Object}\n */\n 'combobox-highlight',\n ],\n\n data () {\n return {\n value: '',\n popoverOffset: [0, 4],\n showValidationMessages: false,\n resizeWindowObserver: null,\n initialInputHeight: null,\n CHIP_SIZES,\n inputFocused: false,\n hideInputText: false,\n };\n },\n\n computed: {\n inputPlaceHolder () {\n return this.selectedItems?.length > 0 ? '' : this.placeholder;\n },\n\n chipListeners () {\n return {\n ...this.$listeners,\n keyup: event => {\n this.onChipKeyup(event);\n this.$emit('keyup', event);\n },\n };\n },\n\n inputListeners () {\n return {\n ...this.$listeners,\n input: event => {\n this.$emit('input', event);\n if (this.hasSuggestionList) {\n this.showComboboxList();\n }\n },\n\n keyup: event => {\n this.onInputKeyup(event);\n this.$emit('keyup', event);\n },\n\n click: event => {\n if (this.hasSuggestionList) {\n this.showComboboxList();\n }\n },\n };\n },\n\n selectedItemsWithKeys () {\n return this.selectedItems.map(selectedItem => ({\n item: selectedItem,\n key: getUniqueString(selectedItem),\n }));\n },\n\n chipWrapperClass () {\n return {\n [`combobox__chip-wrapper-${this.size}--collapsed`]: !this.inputFocused && this.collapseOnFocusOut,\n };\n },\n },\n\n watch: {\n selectedItems: {\n async handler () {\n this.initSelectedItems();\n },\n },\n\n chipMaxWidth: {\n async handler () {\n this.initSelectedItems();\n },\n },\n\n async label () {\n await this.$nextTick();\n // Adjust the chips position if label changed\n this.setChipsTopPosition();\n },\n\n async description () {\n await this.$nextTick();\n // Adjust the chips position if description changed\n this.setChipsTopPosition();\n },\n\n size: {\n async handler () {\n await this.$nextTick();\n const input = this.getInput();\n this.revertInputPadding(input);\n this.initialInputHeight = input.getBoundingClientRect().height;\n this.setInputPadding();\n this.setChipsTopPosition();\n },\n },\n },\n\n mounted () {\n this.setInitialInputHeight();\n // Recalculate chip position and input padding when resizing window\n this.resizeWindowObserver = new ResizeObserver(async () => {\n this.setChipsTopPosition();\n this.setInputPadding();\n });\n this.resizeWindowObserver.observe(document.body);\n\n this.initSelectedItems();\n },\n\n beforeDestroy () {\n this.resizeWindowObserver?.unobserve(document.body);\n },\n\n methods: {\n comboboxHighlight (highlightIndex) {\n this.$emit('combobox-highlight', highlightIndex);\n },\n\n async initSelectedItems () {\n await this.$nextTick();\n this.setInputPadding();\n this.setChipsTopPosition();\n this.setInputMinWidth();\n this.checkMaxSelected();\n },\n\n onChipRemove (item) {\n this.$emit('remove', item);\n this.$refs.input?.focus();\n },\n\n onComboboxSelect (i) {\n if (this.loading) return;\n this.value = '';\n this.$emit('select', i);\n },\n\n showComboboxList () {\n if (this.showList != null) { return; }\n this.$refs.comboboxWithPopover?.showComboboxList();\n },\n\n closeComboboxList () {\n if (this.showList != null) { return; }\n this.$refs.comboboxWithPopover?.closeComboboxList();\n },\n\n getChipButtons () {\n return this.$refs.chips && this.$refs.chips.map(chip => chip.$el.querySelector('button'));\n },\n\n getChips () {\n return this.$refs.chips && this.$refs.chips.map(chip => chip.$el);\n },\n\n getLastChipButton () {\n return this.$refs.chips && this.getChipButtons()[this.getChipButtons().length - 1];\n },\n\n getLastChip () {\n return this.$refs.chips && this.getChips()[this.getChips().length - 1];\n },\n\n getFirstChip () {\n return this.$refs.chips && this.getChips()[0];\n },\n\n getInput () {\n return this.$refs.input?.$refs.input;\n },\n\n onChipKeyup (event) {\n const key = event.code?.toLowerCase();\n if (key === 'arrowleft') {\n // Move to the previous chip\n this.navigateBetweenChips(event.target, true);\n } else if (key === 'arrowright') {\n if (event.target.id === this.getLastChipButton().id) {\n // Move to the input if it's the last chip\n this.moveFromChipToInput();\n } else {\n // Move to the next chip\n this.navigateBetweenChips(event.target, false);\n }\n }\n },\n\n onInputKeyup (event) {\n const key = event.code?.toLowerCase();\n // If the cursor is at the start of the text,\n // press 'backspace' or 'left' focuses the last chip\n if (this.selectedItems.length > 0 && event.target.selectionStart === 0) {\n if (key === 'backspace' || key === 'arrowleft') {\n this.moveFromInputToChip();\n }\n }\n },\n\n moveFromInputToChip () {\n this.getLastChipButton().focus();\n this.$refs.input?.blur();\n this.closeComboboxList();\n },\n\n moveFromChipToInput () {\n this.getLastChipButton().blur();\n this.$refs.input?.focus();\n this.showComboboxList();\n },\n\n navigateBetweenChips (target, toLeft) {\n const from = this.getChipButtons().indexOf(target);\n const to = toLeft ? from - 1 : from + 1;\n if (to < 0 || to >= this.$refs.chips?.length) {\n return;\n }\n this.getChipButtons()[from].blur();\n this.getChipButtons()[to].focus();\n this.closeComboboxList();\n },\n\n setChipsTopPosition () {\n // To place the chips in the input box\n // The chip \"top\" position should be the same line as the input box\n const input = this.getInput();\n if (!input) return;\n const inputSlotWrapper = this.$refs.inputSlotWrapper;\n const top = input.getBoundingClientRect().top -\n inputSlotWrapper.getBoundingClientRect().top;\n const chipsWrapper = this.$refs.chipsWrapper;\n chipsWrapper.style.top = (top - CHIP_TOP_POSITION[this.size]) + 'px';\n },\n\n setInputPadding () {\n const lastChip = this.getLastChip();\n const input = this.getInput();\n const chipsWrapper = this.$refs.chipsWrapper;\n if (!input) return;\n this.revertInputPadding(input);\n this.popoverOffset = [0, 4];\n if (!lastChip) return;\n // Avoid adding extra padding when the input is not focused if collapseOnFocusOut is true\n // This ensures the input returns to its original state when resizing\n if (this.collapseOnFocusOut && !this.inputFocused) return;\n\n // Get the position of the last chip\n // The input cursor should be the same \"top\" as that chip and next besides it\n const left = lastChip.offsetLeft + this.getFullWidth(lastChip);\n const spaceLeft = input.getBoundingClientRect().width - left;\n // input.style.paddingLeft = left + 'px';\n\n if (spaceLeft > this.reservedRightSpace) {\n input.style.paddingLeft = left + 'px';\n } else {\n input.style.paddingLeft = '4px';\n }\n\n // Get the chip wrapper height minus the 4px padding\n const chipsWrapperHeight = chipsWrapper.getBoundingClientRect().height - 4;\n const lastChipHeight = lastChip.getBoundingClientRect().height - 4;\n\n // Get lastChip offsetTop plus 2px of the input padding.\n const top = spaceLeft > this.reservedRightSpace\n ? lastChip.offsetTop + 2\n : (chipsWrapperHeight + lastChipHeight - 9);\n\n input.style.paddingTop = `${top}px`;\n },\n\n revertInputPadding (input) {\n input.style.paddingLeft = '';\n input.style.paddingTop = '';\n input.style.paddingBottom = '';\n },\n\n getFullWidth (el) {\n const styles = window.getComputedStyle(el);\n return el.offsetWidth + parseInt(styles.marginLeft) + parseInt(styles.marginRight);\n },\n\n setInputMinWidth () {\n // Ensure the width of the input is \"slightly bigger\" than the width of a single chip\n const firstChip = this.getFirstChip();\n const input = this.getInput();\n if (!input) return;\n if (firstChip) {\n // Add 4px buffer for typing room\n input.style.minWidth = (this.getFullWidth(firstChip) + 4) + 'px';\n } else {\n input.style.minWidth = '';\n }\n },\n\n checkMaxSelected () {\n if (this.maxSelected === 0) return;\n if (this.selectedItems.length > this.maxSelected) {\n this.showValidationMessages = true;\n this.$emit('max-selected');\n } else {\n this.showValidationMessages = false;\n }\n },\n\n setInitialInputHeight () {\n const input = this.getInput();\n if (!input) return;\n this.initialInputHeight = input.getBoundingClientRect().height;\n },\n\n async handleInputFocusIn () {\n this.inputFocused = true;\n if (this.collapseOnFocusOut) {\n await this.$nextTick();\n this.setInputPadding();\n this.hideInputText = false;\n }\n },\n\n async handleInputFocusOut () {\n this.inputFocused = false;\n if (this.collapseOnFocusOut) {\n const input = this.getInput();\n if (!input) return;\n // Hide the input text when is not on first line\n if (!input.style.paddingTop) {\n return;\n }\n this.hideInputText = true;\n this.revertInputPadding(input);\n }\n },\n },\n};\n</script>\n\n<style scoped lang=\"less\">\n.combobox__input-wrapper {\n position: relative;\n display: block;\n}\n\n.combobox__chip-wrapper {\n position: absolute;\n margin-left: var(--dt-space-200);\n margin-right: var(--dt-space-200);\n padding-left: var(--dt-space-100);\n max-width: calc(var(--dt-size-100-percent) - var(--dt-space-400));\n max-height: initial;\n overflow-y: visible;\n}\n\n.combobox__chip-wrapper-md--collapsed {\n max-height: 2.8rem;\n overflow-y: hidden;\n}\n\n.combobox__chip-wrapper-sm--collapsed,\n.combobox__chip-wrapper-xs--collapsed {\n max-height: 2.5rem;\n overflow-y: hidden;\n}\n\n.combobox__chip {\n margin-top: var(--dt-space-300);\n margin-left: var(--dt-space-200);\n margin-right: var(--dt-space-200);\n z-index: var(--zi-base1);\n max-width: var(--dt-size-100-percent);\n}\n\n.combobox__input {\n flex-grow: 1;\n}\n\n.combobox__list--loading {\n text-align: center;\n padding-top: var(--dt-space-500);\n padding-bottom: var(--dt-space-500);\n}\n\n.combobox__chip--truncate {\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n</style>\n"],"names":["DtRecipeComboboxWithPopover","DtInput","DtChip","DtValidationMessages","SrOnlyCloseButtonMixin","validationMessageValidator","MULTI_SELECT_SIZES","POPOVER_APPEND_TO_VALUES","CHIP_SIZES","getUniqueString","input","chip","CHIP_TOP_POSITION"],"mappings":"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"}
1
+ {"version":3,"file":"combobox_multi_select.vue.cjs","sources":["../../../../recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue"],"sourcesContent":["<!-- eslint-disable vue/no-static-inline-styles -->\n<template>\n <dt-recipe-combobox-with-popover\n ref=\"comboboxWithPopover\"\n :label=\"label\"\n :show-list=\"showList\"\n :max-height=\"listMaxHeight\"\n :max-width=\"listMaxWidth\"\n :popover-offset=\"popoverOffset\"\n :has-suggestion-list=\"hasSuggestionList\"\n :visually-hidden-close-label=\"visuallyHiddenCloseLabel\"\n :visually-hidden-close=\"visuallyHiddenClose\"\n content-width=\"anchor\"\n :append-to=\"appendTo\"\n :transition=\"transition\"\n @select=\"onComboboxSelect\"\n @highlight=\"comboboxHighlight\"\n >\n <template #input=\"{ onInput }\">\n <span\n ref=\"inputSlotWrapper\"\n class=\"dt-recipe-combobox-multi-select__input-wrapper\"\n @focusin=\"handleInputFocusIn\"\n @focusout=\"handleInputFocusOut\"\n >\n <span\n ref=\"chipsWrapper\"\n :class=\"['dt-recipe-combobox-multi-select__chip-wrapper', chipWrapperClass]\"\n >\n <dt-chip\n v-for=\"({ item, key }) in selectedItemsWithKeys\"\n ref=\"chips\"\n :key=\"key\"\n :label-class=\"['d-chip__label']\"\n :class=\"[\n 'dt-recipe-combobox-multi-select__chip',\n { 'dt-recipe-combobox-multi-select__chip--truncate': !!chipMaxWidth },\n ]\"\n :style=\"{ maxWidth: chipMaxWidth }\"\n :close-button-props=\"{ ariaLabel: 'close' }\"\n :size=\"CHIP_SIZES[size]\"\n v-on=\"chipListeners\"\n @keyup.backspace=\"onChipRemove(item)\"\n @close=\"onChipRemove(item)\"\n >\n {{ item }}\n </dt-chip>\n </span>\n\n <dt-input\n ref=\"input\"\n v-model=\"value\"\n class=\"dt-recipe-combobox-multi-select__input\"\n :input-class=\"[inputClass, { 'd-fc-transparent': hideInputText }]\"\n :input-wrapper-class=\"inputWrapperClass\"\n :aria-label=\"label\"\n :label=\"labelVisible ? label : ''\"\n :description=\"description\"\n :placeholder=\"inputPlaceHolder\"\n :show-messages=\"showInputMessages\"\n :messages=\"inputMessages\"\n :size=\"size\"\n v-on=\"inputListeners\"\n @input=\"onInput\"\n />\n\n <dt-validation-messages\n :validation-messages=\"maxSelectedMessage\"\n :show-messages=\"showValidationMessages\"\n />\n </span>\n </template>\n\n <!-- @slot slot for popover header -->\n <template\n v-if=\"$slots.header\"\n #header\n >\n <div ref=\"header\">\n <slot name=\"header\" />\n </div>\n </template>\n\n <!-- @slot slot for popover list -->\n <template #list>\n <div\n ref=\"list\"\n @mousedown.prevent\n >\n <slot\n v-if=\"!loading\"\n name=\"list\"\n />\n <div\n v-else\n class=\"dt-recipe-combobox-multi-select__list--loading\"\n >\n {{ loadingMessage }}\n </div>\n </div>\n </template>\n\n <!-- @slot slot for popover footer -->\n <template\n v-if=\"$slots.footer\"\n #footer\n >\n <div ref=\"footer\">\n <slot name=\"footer\" />\n </div>\n </template>\n </dt-recipe-combobox-with-popover>\n</template>\n\n<script>\n/* eslint-disable max-lines */\nimport DtRecipeComboboxWithPopover from '@/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue';\nimport DtInput from '@/components/input/input.vue';\nimport DtChip from '@/components/chip/chip.vue';\nimport DtValidationMessages from '@/components/validation_messages/validation_messages.vue';\nimport { validationMessageValidator } from '@/common/validators';\nimport {\n POPOVER_APPEND_TO_VALUES,\n} from '@/components/popover/popover_constants';\nimport {\n MULTI_SELECT_SIZES,\n CHIP_SIZES,\n CHIP_TOP_POSITION,\n} from './combobox_multi_select_constants';\nimport SrOnlyCloseButtonMixin from '@/common/mixins/sr_only_close_button';\nimport { getUniqueString } from '@/common/utils';\n\nexport default {\n name: 'DtRecipeComboboxMultiSelect',\n\n components: {\n DtRecipeComboboxWithPopover,\n DtInput,\n DtChip,\n DtValidationMessages,\n },\n\n mixins: [SrOnlyCloseButtonMixin],\n\n props: {\n /**\n * String to use for the input label.\n */\n label: {\n type: String,\n required: true,\n },\n\n /**\n * Determines visibility of input label.\n * @values true, false\n */\n labelVisible: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Description for the input\n */\n description: {\n type: String,\n default: '',\n },\n\n /**\n * Input placeholder\n */\n placeholder: {\n type: String,\n default: 'Select one or start typing',\n },\n\n /**\n * Input validation messages\n */\n inputMessages: {\n type: Array,\n default: () => [],\n validator: inputMessages => {\n return validationMessageValidator(inputMessages);\n },\n },\n\n /**\n * Show input validation message\n */\n showInputMessages: {\n type: Boolean,\n default: true,\n },\n\n // @TODO: https://dialpad.atlassian.net/browse/DP-52324\n // type: {\n // type: String,\n // values: ['input', 'select'],\n // default: 'select',\n // },\n\n /**\n * Determines if the list is loading\n */\n loading: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The message when the list is loading\n */\n loadingMessage: {\n type: String,\n default: 'loading...',\n },\n\n /**\n * Determines when to show the list element and also controls the aria-expanded attribute.\n * Leaving this null will have the combobox trigger on input focus by default.\n * If you set this value, the default trigger behavior will be disabled and you can\n * control it as you need.\n */\n showList: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Determines maximum height for the popover before overflow.\n * Possible units rem|px|em\n */\n listMaxHeight: {\n type: String,\n default: '300px',\n },\n\n /**\n * The selected items\n */\n selectedItems: {\n type: Array,\n default: function () { return []; },\n },\n\n /**\n * Would be the maximum number of selections you can make. 0 is unlimited\n */\n maxSelected: {\n type: Number,\n default: 0,\n },\n\n /**\n * Max select message when the max selections is exceeded with the structure:\n * `[{\"message\": string, \"type\": VALIDATION_MESSAGE_TYPES }]`\n */\n maxSelectedMessage: {\n type: Array,\n default: function () { return []; },\n },\n\n /**\n * Displays the list when the combobox is focused, before the user has typed anything.\n * When this is enabled the list will not close after selection.\n */\n hasSuggestionList: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Size of the chip, one of `xs`, `sm`, `md`\n */\n size: {\n type: String,\n default: 'md',\n validator: (t) => Object.values(MULTI_SELECT_SIZES).includes(t),\n },\n\n /**\n * Sets the element to which the popover is going to append to.\n * 'body' will append to the nearest body (supports shadow DOM).\n * @values 'body', 'parent', HTMLElement,\n */\n appendTo: {\n type: [HTMLElement, String],\n default: 'body',\n validator: appendTo => {\n return POPOVER_APPEND_TO_VALUES.includes(appendTo) ||\n (appendTo instanceof HTMLElement);\n },\n },\n\n /**\n * Named transition when the content display is toggled.\n * @see DtLazyShow\n */\n transition: {\n type: String,\n default: 'fade',\n },\n\n /**\n * Determines whether the combobox should collapse to a single when losing focus.\n * @type {boolean}\n */\n collapseOnFocusOut: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Determines maximum width for the popover before overflow.\n * Possible units rem|px|em\n */\n listMaxWidth: {\n type: String,\n default: '',\n },\n\n /**\n * Amount of reserved space (in px) on the right side of the input\n * before the chips and the input caret jump to the next line.\n * default is 64\n */\n reservedRightSpace: {\n type: Number,\n default: 64,\n },\n\n /**\n * Determines the maximum width of a single chip. If the text within this chip exceeds the value\n * it will be truncated with ellipses.\n * Possible units rem|px|em\n */\n chipMaxWidth: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the input element.\n * Can accept String, Object, and Array, i.e. has the\n * same API as Vue's built-in handling of the class attribute.\n */\n inputClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * Additional class name for the input wrapper element.\n * Can accept all of String, Object, and Array, i.e. has the\n * same api as Vue's built-in handling of the class attribute.\n */\n inputWrapperClass: {\n type: [String, Object, Array],\n default: '',\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {String }\n */\n 'input',\n\n /**\n * Event fired when item selected\n *\n * @event select\n * @type {Number}\n */\n 'select',\n\n /**\n * Event fired when item removed\n *\n * @event remove\n * @type {String}\n */\n 'remove',\n\n /**\n * Event fired when max selected items limit is reached\n *\n * @event max-selected\n * @type {Object}\n */\n 'max-selected',\n\n /**\n * Native keyup event\n *\n * @event keyup\n * @type {KeyboardEvent}\n */\n 'keyup',\n\n /**\n * Event fired when combobox item is highlighted\n *\n * @event combobox-highlight\n * @type {Object}\n */\n 'combobox-highlight',\n ],\n\n data () {\n return {\n value: '',\n popoverOffset: [0, 4],\n showValidationMessages: false,\n resizeWindowObserver: null,\n initialInputHeight: null,\n CHIP_SIZES,\n inputFocused: false,\n hideInputText: false,\n };\n },\n\n computed: {\n inputPlaceHolder () {\n return this.selectedItems?.length > 0 ? '' : this.placeholder;\n },\n\n chipListeners () {\n return {\n ...this.$listeners,\n keyup: event => {\n this.onChipKeyup(event);\n this.$emit('keyup', event);\n },\n };\n },\n\n inputListeners () {\n return {\n ...this.$listeners,\n input: event => {\n this.$emit('input', event);\n if (this.hasSuggestionList) {\n this.showComboboxList();\n }\n },\n\n keyup: event => {\n this.onInputKeyup(event);\n this.$emit('keyup', event);\n },\n\n click: event => {\n if (this.hasSuggestionList) {\n this.showComboboxList();\n }\n },\n };\n },\n\n selectedItemsWithKeys () {\n return this.selectedItems.map(selectedItem => ({\n item: selectedItem,\n key: getUniqueString(selectedItem),\n }));\n },\n\n chipWrapperClass () {\n return {\n [`dt-recipe-combobox-multi-select__chip-wrapper-${this.size}--collapsed`]: !this.inputFocused && this.collapseOnFocusOut,\n };\n },\n },\n\n watch: {\n selectedItems: {\n async handler () {\n this.initSelectedItems();\n },\n },\n\n chipMaxWidth: {\n async handler () {\n this.initSelectedItems();\n },\n },\n\n async label () {\n await this.$nextTick();\n // Adjust the chips position if label changed\n this.setChipsTopPosition();\n },\n\n async description () {\n await this.$nextTick();\n // Adjust the chips position if description changed\n this.setChipsTopPosition();\n },\n\n size: {\n async handler () {\n await this.$nextTick();\n const input = this.getInput();\n this.revertInputPadding(input);\n this.initialInputHeight = input.getBoundingClientRect().height;\n this.setInputPadding();\n this.setChipsTopPosition();\n },\n },\n },\n\n mounted () {\n this.setInitialInputHeight();\n // Recalculate chip position and input padding when resizing window\n this.resizeWindowObserver = new ResizeObserver(async () => {\n this.setChipsTopPosition();\n this.setInputPadding();\n });\n this.resizeWindowObserver.observe(document.body);\n\n this.initSelectedItems();\n },\n\n beforeDestroy () {\n this.resizeWindowObserver?.unobserve(document.body);\n },\n\n methods: {\n comboboxHighlight (highlightIndex) {\n this.$emit('combobox-highlight', highlightIndex);\n },\n\n async initSelectedItems () {\n await this.$nextTick();\n this.setInputPadding();\n this.setChipsTopPosition();\n this.setInputMinWidth();\n this.checkMaxSelected();\n },\n\n onChipRemove (item) {\n this.$emit('remove', item);\n this.$refs.input?.focus();\n },\n\n onComboboxSelect (i) {\n if (this.loading) return;\n this.value = '';\n this.$emit('select', i);\n },\n\n showComboboxList () {\n if (this.showList != null) { return; }\n this.$refs.comboboxWithPopover?.showComboboxList();\n },\n\n closeComboboxList () {\n if (this.showList != null) { return; }\n this.$refs.comboboxWithPopover?.closeComboboxList();\n },\n\n getChipButtons () {\n return this.$refs.chips && this.$refs.chips.map(chip => chip.$el.querySelector('button'));\n },\n\n getChips () {\n return this.$refs.chips && this.$refs.chips.map(chip => chip.$el);\n },\n\n getLastChipButton () {\n return this.$refs.chips && this.getChipButtons()[this.getChipButtons().length - 1];\n },\n\n getLastChip () {\n return this.$refs.chips && this.getChips()[this.getChips().length - 1];\n },\n\n getFirstChip () {\n return this.$refs.chips && this.getChips()[0];\n },\n\n getInput () {\n return this.$refs.input?.$refs.input;\n },\n\n onChipKeyup (event) {\n const key = event.code?.toLowerCase();\n if (key === 'arrowleft') {\n // Move to the previous chip\n this.navigateBetweenChips(event.target, true);\n } else if (key === 'arrowright') {\n if (event.target.id === this.getLastChipButton().id) {\n // Move to the input if it's the last chip\n this.moveFromChipToInput();\n } else {\n // Move to the next chip\n this.navigateBetweenChips(event.target, false);\n }\n }\n },\n\n onInputKeyup (event) {\n const key = event.code?.toLowerCase();\n // If the cursor is at the start of the text,\n // press 'backspace' or 'left' focuses the last chip\n if (this.selectedItems.length > 0 && event.target.selectionStart === 0) {\n if (key === 'backspace' || key === 'arrowleft') {\n this.moveFromInputToChip();\n }\n }\n },\n\n moveFromInputToChip () {\n this.getLastChipButton().focus();\n this.$refs.input?.blur();\n this.closeComboboxList();\n },\n\n moveFromChipToInput () {\n this.getLastChipButton().blur();\n this.$refs.input?.focus();\n this.showComboboxList();\n },\n\n navigateBetweenChips (target, toLeft) {\n const from = this.getChipButtons().indexOf(target);\n const to = toLeft ? from - 1 : from + 1;\n if (to < 0 || to >= this.$refs.chips?.length) {\n return;\n }\n this.getChipButtons()[from].blur();\n this.getChipButtons()[to].focus();\n this.closeComboboxList();\n },\n\n setChipsTopPosition () {\n // To place the chips in the input box\n // The chip \"top\" position should be the same line as the input box\n const input = this.getInput();\n if (!input) return;\n const inputSlotWrapper = this.$refs.inputSlotWrapper;\n const top = input.getBoundingClientRect().top -\n inputSlotWrapper.getBoundingClientRect().top;\n const chipsWrapper = this.$refs.chipsWrapper;\n chipsWrapper.style.top = (top - CHIP_TOP_POSITION[this.size]) + 'px';\n },\n\n setInputPadding () {\n const lastChip = this.getLastChip();\n const input = this.getInput();\n const chipsWrapper = this.$refs.chipsWrapper;\n if (!input) return;\n this.revertInputPadding(input);\n this.popoverOffset = [0, 4];\n if (!lastChip) return;\n // Avoid adding extra padding when the input is not focused if collapseOnFocusOut is true\n // This ensures the input returns to its original state when resizing\n if (this.collapseOnFocusOut && !this.inputFocused) return;\n\n // Get the position of the last chip\n // The input cursor should be the same \"top\" as that chip and next besides it\n const left = lastChip.offsetLeft + this.getFullWidth(lastChip);\n const spaceLeft = input.getBoundingClientRect().width - left;\n // input.style.paddingLeft = left + 'px';\n\n if (spaceLeft > this.reservedRightSpace) {\n input.style.paddingLeft = left + 'px';\n } else {\n input.style.paddingLeft = '4px';\n }\n\n // Get the chip wrapper height minus the 4px padding\n const chipsWrapperHeight = chipsWrapper.getBoundingClientRect().height - 4;\n const lastChipHeight = lastChip.getBoundingClientRect().height - 4;\n\n // Get lastChip offsetTop plus 2px of the input padding.\n const top = spaceLeft > this.reservedRightSpace\n ? lastChip.offsetTop + 2\n : (chipsWrapperHeight + lastChipHeight - 9);\n\n input.style.paddingTop = `${top}px`;\n },\n\n revertInputPadding (input) {\n input.style.paddingLeft = '';\n input.style.paddingTop = '';\n input.style.paddingBottom = '';\n },\n\n getFullWidth (el) {\n const styles = window.getComputedStyle(el);\n return el.offsetWidth + parseInt(styles.marginLeft) + parseInt(styles.marginRight);\n },\n\n setInputMinWidth () {\n // Ensure the width of the input is \"slightly bigger\" than the width of a single chip\n const firstChip = this.getFirstChip();\n const input = this.getInput();\n if (!input) return;\n if (firstChip) {\n // Add 4px buffer for typing room\n input.style.minWidth = (this.getFullWidth(firstChip) + 4) + 'px';\n } else {\n input.style.minWidth = '';\n }\n },\n\n checkMaxSelected () {\n if (this.maxSelected === 0) return;\n if (this.selectedItems.length > this.maxSelected) {\n this.showValidationMessages = true;\n this.$emit('max-selected');\n } else {\n this.showValidationMessages = false;\n }\n },\n\n setInitialInputHeight () {\n const input = this.getInput();\n if (!input) return;\n this.initialInputHeight = input.getBoundingClientRect().height;\n },\n\n async handleInputFocusIn () {\n this.inputFocused = true;\n if (this.collapseOnFocusOut) {\n await this.$nextTick();\n this.setInputPadding();\n this.hideInputText = false;\n }\n },\n\n async handleInputFocusOut () {\n this.inputFocused = false;\n if (this.collapseOnFocusOut) {\n const input = this.getInput();\n if (!input) return;\n // Hide the input text when is not on first line\n if (!input.style.paddingTop) {\n return;\n }\n this.hideInputText = true;\n this.revertInputPadding(input);\n }\n },\n },\n};\n</script>\n"],"names":["DtRecipeComboboxWithPopover","DtInput","DtChip","DtValidationMessages","SrOnlyCloseButtonMixin","validationMessageValidator","MULTI_SELECT_SIZES","POPOVER_APPEND_TO_VALUES","CHIP_SIZES","getUniqueString","input","chip","CHIP_TOP_POSITION"],"mappings":"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"}
@@ -7,7 +7,6 @@ import { POPOVER_APPEND_TO_VALUES } from "../../../components/popover/popover_co
7
7
  import { MULTI_SELECT_SIZES, CHIP_SIZES, CHIP_TOP_POSITION } from "./combobox_multi_select_constants.js";
8
8
  import SrOnlyCloseButtonMixin from "../../../common/mixins/sr_only_close_button.js";
9
9
  import { getUniqueString } from "../../../common/utils.js";
10
- /* empty css */
11
10
  import normalizeComponent from "../../../_virtual/_plugin-vue2_normalizer.js";
12
11
  const _sfc_main = {
13
12
  name: "DtRecipeComboboxMultiSelect",
@@ -316,7 +315,7 @@ const _sfc_main = {
316
315
  },
317
316
  chipWrapperClass() {
318
317
  return {
319
- [`combobox__chip-wrapper-${this.size}--collapsed`]: !this.inputFocused && this.collapseOnFocusOut
318
+ [`dt-recipe-combobox-multi-select__chip-wrapper-${this.size}--collapsed`]: !this.inputFocused && this.collapseOnFocusOut
320
319
  };
321
320
  }
322
321
  },
@@ -549,14 +548,17 @@ const _sfc_main = {
549
548
  var _sfc_render = function render() {
550
549
  var _vm = this, _c = _vm._self._c;
551
550
  return _c("dt-recipe-combobox-with-popover", { ref: "comboboxWithPopover", attrs: { "label": _vm.label, "show-list": _vm.showList, "max-height": _vm.listMaxHeight, "max-width": _vm.listMaxWidth, "popover-offset": _vm.popoverOffset, "has-suggestion-list": _vm.hasSuggestionList, "visually-hidden-close-label": _vm.visuallyHiddenCloseLabel, "visually-hidden-close": _vm.visuallyHiddenClose, "content-width": "anchor", "append-to": _vm.appendTo, "transition": _vm.transition }, on: { "select": _vm.onComboboxSelect, "highlight": _vm.comboboxHighlight }, scopedSlots: _vm._u([{ key: "input", fn: function({ onInput }) {
552
- return [_c("span", { ref: "inputSlotWrapper", staticClass: "combobox__input-wrapper", on: { "focusin": _vm.handleInputFocusIn, "focusout": _vm.handleInputFocusOut } }, [_c("span", { ref: "chipsWrapper", class: ["combobox__chip-wrapper", _vm.chipWrapperClass] }, _vm._l(_vm.selectedItemsWithKeys, function({ item, key }) {
553
- return _c("dt-chip", _vm._g({ key, ref: "chips", refInFor: true, class: ["combobox__chip", { "combobox__chip--truncate": !!_vm.chipMaxWidth }], style: { maxWidth: _vm.chipMaxWidth }, attrs: { "label-class": ["d-chip__label"], "close-button-props": { ariaLabel: "close" }, "size": _vm.CHIP_SIZES[_vm.size] }, on: { "keyup": function($event) {
551
+ return [_c("span", { ref: "inputSlotWrapper", staticClass: "dt-recipe-combobox-multi-select__input-wrapper", on: { "focusin": _vm.handleInputFocusIn, "focusout": _vm.handleInputFocusOut } }, [_c("span", { ref: "chipsWrapper", class: ["dt-recipe-combobox-multi-select__chip-wrapper", _vm.chipWrapperClass] }, _vm._l(_vm.selectedItemsWithKeys, function({ item, key }) {
552
+ return _c("dt-chip", _vm._g({ key, ref: "chips", refInFor: true, class: [
553
+ "dt-recipe-combobox-multi-select__chip",
554
+ { "dt-recipe-combobox-multi-select__chip--truncate": !!_vm.chipMaxWidth }
555
+ ], style: { maxWidth: _vm.chipMaxWidth }, attrs: { "label-class": ["d-chip__label"], "close-button-props": { ariaLabel: "close" }, "size": _vm.CHIP_SIZES[_vm.size] }, on: { "keyup": function($event) {
554
556
  if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "backspace", void 0, $event.key, void 0)) return null;
555
557
  return _vm.onChipRemove(item);
556
558
  }, "close": function($event) {
557
559
  return _vm.onChipRemove(item);
558
560
  } } }, _vm.chipListeners), [_vm._v(" " + _vm._s(item) + " ")]);
559
- }), 1), _c("dt-input", _vm._g({ ref: "input", staticClass: "combobox__input", attrs: { "input-class": [_vm.inputClass, { "d-fc-transparent": _vm.hideInputText }], "input-wrapper-class": _vm.inputWrapperClass, "aria-label": _vm.label, "label": _vm.labelVisible ? _vm.label : "", "description": _vm.description, "placeholder": _vm.inputPlaceHolder, "show-messages": _vm.showInputMessages, "messages": _vm.inputMessages, "size": _vm.size }, on: { "input": onInput }, model: { value: _vm.value, callback: function($$v) {
561
+ }), 1), _c("dt-input", _vm._g({ ref: "input", staticClass: "dt-recipe-combobox-multi-select__input", attrs: { "input-class": [_vm.inputClass, { "d-fc-transparent": _vm.hideInputText }], "input-wrapper-class": _vm.inputWrapperClass, "aria-label": _vm.label, "label": _vm.labelVisible ? _vm.label : "", "description": _vm.description, "placeholder": _vm.inputPlaceHolder, "show-messages": _vm.showInputMessages, "messages": _vm.inputMessages, "size": _vm.size }, on: { "input": onInput }, model: { value: _vm.value, callback: function($$v) {
560
562
  _vm.value = $$v;
561
563
  }, expression: "value" } }, _vm.inputListeners)), _c("dt-validation-messages", { attrs: { "validation-messages": _vm.maxSelectedMessage, "show-messages": _vm.showValidationMessages } })], 1)];
562
564
  } }, _vm.$slots.header ? { key: "header", fn: function() {
@@ -564,7 +566,7 @@ var _sfc_render = function render() {
564
566
  }, proxy: true } : null, { key: "list", fn: function() {
565
567
  return [_c("div", { ref: "list", on: { "mousedown": function($event) {
566
568
  $event.preventDefault();
567
- } } }, [!_vm.loading ? _vm._t("list") : _c("div", { staticClass: "combobox__list--loading" }, [_vm._v(" " + _vm._s(_vm.loadingMessage) + " ")])], 2)];
569
+ } } }, [!_vm.loading ? _vm._t("list") : _c("div", { staticClass: "dt-recipe-combobox-multi-select__list--loading" }, [_vm._v(" " + _vm._s(_vm.loadingMessage) + " ")])], 2)];
568
570
  }, proxy: true }, _vm.$slots.footer ? { key: "footer", fn: function() {
569
571
  return [_c("div", { ref: "footer" }, [_vm._t("footer")], 2)];
570
572
  }, proxy: true } : null], null, true) });
@@ -573,10 +575,7 @@ var _sfc_staticRenderFns = [];
573
575
  var __component__ = /* @__PURE__ */ normalizeComponent(
574
576
  _sfc_main,
575
577
  _sfc_render,
576
- _sfc_staticRenderFns,
577
- false,
578
- null,
579
- "7eac7e22"
578
+ _sfc_staticRenderFns
580
579
  );
581
580
  const combobox_multi_select = __component__.exports;
582
581
  export {