@dialpad/dialtone 9.28.0 → 9.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (572) hide show
  1. package/dist/css/dialtone.css +2 -2
  2. package/dist/tokens/css/variables-cox-dark.css +1 -1
  3. package/dist/tokens/css/variables-cox-light.css +1 -1
  4. package/dist/tokens/css/variables-dark.css +1 -1
  5. package/dist/tokens/css/variables-light.css +1 -1
  6. package/dist/tokens/css/variables-tmo-dark.css +1 -1
  7. package/dist/tokens/css/variables-tmo-light.css +1 -1
  8. package/dist/tokens/less/variables-cox-dark.less +1 -1
  9. package/dist/tokens/less/variables-cox-light.less +1 -1
  10. package/dist/tokens/less/variables-dark.less +1 -1
  11. package/dist/tokens/less/variables-light.less +1 -1
  12. package/dist/tokens/less/variables-tmo-dark.less +1 -1
  13. package/dist/tokens/less/variables-tmo-light.less +1 -1
  14. package/dist/vue2/chunks/_plugin-vue2_normalizer-ZK80B3OL.js +2 -0
  15. package/dist/vue2/chunks/_plugin-vue2_normalizer-ZK80B3OL.js.map +1 -0
  16. package/dist/vue2/chunks/dropdown-zhMEz3bn.js +2 -0
  17. package/dist/vue2/chunks/dropdown-zhMEz3bn.js.map +1 -0
  18. package/dist/vue2/chunks/dropdown_constants-KHFvVI2L.js +2 -0
  19. package/dist/vue2/chunks/dropdown_constants-KHFvVI2L.js.map +1 -0
  20. package/dist/vue2/chunks/icon_constants-2S_OSQ1t.js +2 -0
  21. package/dist/vue2/chunks/icon_constants-2S_OSQ1t.js.map +1 -0
  22. package/dist/vue2/chunks/index-2jPosQBn.js +3 -0
  23. package/dist/vue2/chunks/index-2jPosQBn.js.map +1 -0
  24. package/dist/vue2/chunks/index-sdfB7Aok.js +2 -0
  25. package/dist/vue2/chunks/index-sdfB7Aok.js.map +1 -0
  26. package/dist/vue2/chunks/input-o-fc1X4b.js +2 -0
  27. package/dist/vue2/chunks/input-o-fc1X4b.js.map +1 -0
  28. package/dist/vue2/chunks/input_group-j2gTtc1C.js +2 -0
  29. package/dist/vue2/chunks/input_group-j2gTtc1C.js.map +1 -0
  30. package/dist/vue2/chunks/keyboard_list_navigation-N74Bpdq7.js +2 -0
  31. package/dist/vue2/chunks/keyboard_list_navigation-N74Bpdq7.js.map +1 -0
  32. package/dist/vue2/chunks/link_constants-Kn6kP4i1.js +2 -0
  33. package/dist/vue2/chunks/link_constants-Kn6kP4i1.js.map +1 -0
  34. package/dist/vue2/chunks/list_item_constants-Tsz5CO1m.js +2 -0
  35. package/dist/vue2/chunks/list_item_constants-Tsz5CO1m.js.map +1 -0
  36. package/dist/vue2/chunks/modal-qEzlo0Sj.js +2 -0
  37. package/dist/vue2/chunks/modal-qEzlo0Sj.js.map +1 -0
  38. package/dist/vue2/chunks/notice_action-u3ZKIhit.js +2 -0
  39. package/dist/vue2/chunks/notice_action-u3ZKIhit.js.map +1 -0
  40. package/dist/vue2/chunks/notice_constants-mC6al2Dm.js +2 -0
  41. package/dist/vue2/chunks/notice_constants-mC6al2Dm.js.map +1 -0
  42. package/dist/vue2/chunks/popover_constants-hOEhklvr.js +2 -0
  43. package/dist/vue2/chunks/popover_constants-hOEhklvr.js.map +1 -0
  44. package/dist/vue2/chunks/sr_only_close_button-ErijKGYR.js +3 -0
  45. package/dist/vue2/chunks/sr_only_close_button-ErijKGYR.js.map +1 -0
  46. package/dist/vue2/chunks/stack_constants-m9Ickqw0.js +2 -0
  47. package/dist/vue2/chunks/stack_constants-m9Ickqw0.js.map +1 -0
  48. package/dist/vue2/chunks/tab-7hJQSLFx.js +2 -0
  49. package/dist/vue2/chunks/tab-7hJQSLFx.js.map +1 -0
  50. package/dist/vue2/component-documentation.json +1 -1
  51. package/dist/vue2/dialtone-vue.cjs +2 -0
  52. package/dist/vue2/dialtone-vue.cjs.map +1 -0
  53. package/dist/vue2/lib/attachment-carousel.cjs +2 -0
  54. package/dist/vue2/lib/attachment-carousel.cjs.map +1 -0
  55. package/dist/vue2/lib/attachment-carousel.js +2 -3
  56. package/dist/vue2/lib/attachment-carousel.js.map +1 -1
  57. package/dist/vue2/lib/avatar.cjs +2 -0
  58. package/dist/vue2/lib/avatar.cjs.map +1 -0
  59. package/dist/vue2/lib/avatar.js +2 -3
  60. package/dist/vue2/lib/avatar.js.map +1 -1
  61. package/dist/vue2/lib/badge.cjs +2 -0
  62. package/dist/vue2/lib/badge.cjs.map +1 -0
  63. package/dist/vue2/lib/badge.js +2 -3
  64. package/dist/vue2/lib/badge.js.map +1 -1
  65. package/dist/vue2/lib/banner.cjs +3 -0
  66. package/dist/vue2/lib/banner.cjs.map +1 -0
  67. package/dist/vue2/lib/banner.js +2 -3
  68. package/dist/vue2/lib/banner.js.map +1 -1
  69. package/dist/vue2/lib/breadcrumbs.cjs +2 -0
  70. package/dist/vue2/lib/breadcrumbs.cjs.map +1 -0
  71. package/dist/vue2/lib/button-group.cjs +2 -0
  72. package/dist/vue2/lib/button-group.cjs.map +1 -0
  73. package/dist/vue2/lib/button.cjs +2 -0
  74. package/dist/vue2/lib/button.cjs.map +1 -0
  75. package/dist/vue2/lib/callbar-button-with-popover.cjs +2 -0
  76. package/dist/vue2/lib/callbar-button-with-popover.cjs.map +1 -0
  77. package/dist/vue2/lib/callbar-button-with-popover.js +2 -3
  78. package/dist/vue2/lib/callbar-button-with-popover.js.map +1 -1
  79. package/dist/vue2/lib/callbar-button.cjs +2 -0
  80. package/dist/vue2/lib/callbar-button.cjs.map +1 -0
  81. package/dist/vue2/lib/callbox.cjs +2 -0
  82. package/dist/vue2/lib/callbox.cjs.map +1 -0
  83. package/dist/vue2/lib/callbox.js +2 -3
  84. package/dist/vue2/lib/callbox.js.map +1 -1
  85. package/dist/vue2/lib/card.cjs +2 -0
  86. package/dist/vue2/lib/card.cjs.map +1 -0
  87. package/dist/vue2/lib/checkbox-group.cjs +2 -0
  88. package/dist/vue2/lib/checkbox-group.cjs.map +1 -0
  89. package/dist/vue2/lib/checkbox.cjs +2 -0
  90. package/dist/vue2/lib/checkbox.cjs.map +1 -0
  91. package/dist/vue2/lib/chip.cjs +2 -0
  92. package/dist/vue2/lib/chip.cjs.map +1 -0
  93. package/dist/vue2/lib/chip.js +2 -3
  94. package/dist/vue2/lib/chip.js.map +1 -1
  95. package/dist/vue2/lib/codeblock.cjs +3 -0
  96. package/dist/vue2/lib/codeblock.cjs.map +1 -0
  97. package/dist/vue2/lib/collapsible.cjs +2 -0
  98. package/dist/vue2/lib/collapsible.cjs.map +1 -0
  99. package/dist/vue2/lib/collapsible.js +2 -3
  100. package/dist/vue2/lib/collapsible.js.map +1 -1
  101. package/dist/vue2/lib/combobox-multi-select.cjs +2 -0
  102. package/dist/vue2/lib/combobox-multi-select.cjs.map +1 -0
  103. package/dist/vue2/lib/combobox-with-popover.cjs +2 -0
  104. package/dist/vue2/lib/combobox-with-popover.cjs.map +1 -0
  105. package/dist/vue2/lib/combobox-with-popover.js +1 -1
  106. package/dist/vue2/lib/combobox.cjs +2 -0
  107. package/dist/vue2/lib/combobox.cjs.map +1 -0
  108. package/dist/vue2/lib/constants.cjs +2 -0
  109. package/dist/vue2/lib/constants.cjs.map +1 -0
  110. package/dist/vue2/lib/contact-info.cjs +2 -0
  111. package/dist/vue2/lib/contact-info.cjs.map +1 -0
  112. package/dist/vue2/lib/contact-info.js +2 -3
  113. package/dist/vue2/lib/contact-info.js.map +1 -1
  114. package/dist/vue2/lib/contact-row.cjs +2 -0
  115. package/dist/vue2/lib/contact-row.cjs.map +1 -0
  116. package/dist/vue2/lib/datepicker.cjs +2 -0
  117. package/dist/vue2/lib/datepicker.cjs.map +1 -0
  118. package/dist/vue2/lib/datepicker.js +12 -13
  119. package/dist/vue2/lib/datepicker.js.map +1 -1
  120. package/dist/vue2/lib/dates.cjs +2 -0
  121. package/dist/vue2/lib/dates.cjs.map +1 -0
  122. package/dist/vue2/lib/description-list.cjs +2 -0
  123. package/dist/vue2/lib/description-list.cjs.map +1 -0
  124. package/dist/vue2/lib/dropdown.cjs +2 -0
  125. package/dist/vue2/lib/dropdown.cjs.map +1 -0
  126. package/dist/vue2/lib/dropdown.js +6 -7
  127. package/dist/vue2/lib/dropdown.js.map +1 -1
  128. package/dist/vue2/lib/editor.cjs +2 -0
  129. package/dist/vue2/lib/editor.cjs.map +1 -0
  130. package/dist/vue2/lib/emoji-picker.cjs +2 -0
  131. package/dist/vue2/lib/emoji-picker.cjs.map +1 -0
  132. package/dist/vue2/lib/emoji-picker.js +2 -3
  133. package/dist/vue2/lib/emoji-picker.js.map +1 -1
  134. package/dist/vue2/lib/emoji-row.cjs +2 -0
  135. package/dist/vue2/lib/emoji-row.cjs.map +1 -0
  136. package/dist/vue2/lib/emoji-text-wrapper.cjs +2 -0
  137. package/dist/vue2/lib/emoji-text-wrapper.cjs.map +1 -0
  138. package/dist/vue2/lib/emoji.cjs +2 -0
  139. package/dist/vue2/lib/emoji.cjs.map +1 -0
  140. package/dist/vue2/lib/feed-item-row.cjs +2 -0
  141. package/dist/vue2/lib/feed-item-row.cjs.map +1 -0
  142. package/dist/vue2/lib/feed-item-row.js +2 -3
  143. package/dist/vue2/lib/feed-item-row.js.map +1 -1
  144. package/dist/vue2/lib/feed-pill.cjs +2 -0
  145. package/dist/vue2/lib/feed-pill.cjs.map +1 -0
  146. package/dist/vue2/lib/feed-pill.js +2 -3
  147. package/dist/vue2/lib/feed-pill.js.map +1 -1
  148. package/dist/vue2/lib/general-row.cjs +2 -0
  149. package/dist/vue2/lib/general-row.cjs.map +1 -0
  150. package/dist/vue2/lib/group-row.cjs +2 -0
  151. package/dist/vue2/lib/group-row.cjs.map +1 -0
  152. package/dist/vue2/lib/group-row.js +1 -1
  153. package/dist/vue2/lib/grouped-chip.cjs +2 -0
  154. package/dist/vue2/lib/grouped-chip.cjs.map +1 -0
  155. package/dist/vue2/lib/grouped-chip.js +6 -7
  156. package/dist/vue2/lib/grouped-chip.js.map +1 -1
  157. package/dist/vue2/lib/hovercard.cjs +2 -0
  158. package/dist/vue2/lib/hovercard.cjs.map +1 -0
  159. package/dist/vue2/lib/hovercard.js +6 -7
  160. package/dist/vue2/lib/hovercard.js.map +1 -1
  161. package/dist/vue2/lib/icon.cjs +2 -0
  162. package/dist/vue2/lib/icon.cjs.map +1 -0
  163. package/dist/vue2/lib/icon.js +14 -38
  164. package/dist/vue2/lib/icon.js.map +1 -1
  165. package/dist/vue2/lib/image-viewer.cjs +2 -0
  166. package/dist/vue2/lib/image-viewer.cjs.map +1 -0
  167. package/dist/vue2/lib/image-viewer.js +11 -12
  168. package/dist/vue2/lib/image-viewer.js.map +1 -1
  169. package/dist/vue2/lib/input-group.cjs +2 -0
  170. package/dist/vue2/lib/input-group.cjs.map +1 -0
  171. package/dist/vue2/lib/input.cjs +2 -0
  172. package/dist/vue2/lib/input.cjs.map +1 -0
  173. package/dist/vue2/lib/item-layout.cjs +2 -0
  174. package/dist/vue2/lib/item-layout.cjs.map +1 -0
  175. package/dist/vue2/lib/ivr-node.cjs +2 -0
  176. package/dist/vue2/lib/ivr-node.cjs.map +1 -0
  177. package/dist/vue2/lib/ivr-node.js +4 -5
  178. package/dist/vue2/lib/ivr-node.js.map +1 -1
  179. package/dist/vue2/lib/keyboard-shortcut.cjs +2 -0
  180. package/dist/vue2/lib/keyboard-shortcut.cjs.map +1 -0
  181. package/dist/vue2/lib/keyboard-shortcut.js +4 -5
  182. package/dist/vue2/lib/keyboard-shortcut.js.map +1 -1
  183. package/dist/vue2/lib/lazy-show.cjs +2 -0
  184. package/dist/vue2/lib/lazy-show.cjs.map +1 -0
  185. package/dist/vue2/lib/link.cjs +2 -0
  186. package/dist/vue2/lib/link.cjs.map +1 -0
  187. package/dist/vue2/lib/list-item-group.cjs +2 -0
  188. package/dist/vue2/lib/list-item-group.cjs.map +1 -0
  189. package/dist/vue2/lib/list-item.cjs +2 -0
  190. package/dist/vue2/lib/list-item.cjs.map +1 -0
  191. package/dist/vue2/lib/list-item.js +2 -3
  192. package/dist/vue2/lib/list-item.js.map +1 -1
  193. package/dist/vue2/lib/message-input.cjs +2 -0
  194. package/dist/vue2/lib/message-input.cjs.map +1 -0
  195. package/dist/vue2/lib/message-input.js +89 -47
  196. package/dist/vue2/lib/message-input.js.map +1 -1
  197. package/dist/vue2/lib/mixins.cjs +2 -0
  198. package/dist/vue2/lib/mixins.cjs.map +1 -0
  199. package/dist/vue2/lib/modal.cjs +3 -0
  200. package/dist/vue2/lib/modal.cjs.map +1 -0
  201. package/dist/vue2/lib/modal.js +10 -11
  202. package/dist/vue2/lib/modal.js.map +1 -1
  203. package/dist/vue2/lib/notice.cjs +2 -0
  204. package/dist/vue2/lib/notice.cjs.map +1 -0
  205. package/dist/vue2/lib/notice.js +2 -3
  206. package/dist/vue2/lib/notice.js.map +1 -1
  207. package/dist/vue2/lib/pagination.cjs +2 -0
  208. package/dist/vue2/lib/pagination.cjs.map +1 -0
  209. package/dist/vue2/lib/pagination.js +2 -3
  210. package/dist/vue2/lib/pagination.js.map +1 -1
  211. package/dist/vue2/lib/popover.cjs +2 -0
  212. package/dist/vue2/lib/popover.cjs.map +1 -0
  213. package/dist/vue2/lib/popover.js +4 -5
  214. package/dist/vue2/lib/popover.js.map +1 -1
  215. package/dist/vue2/lib/presence.cjs +2 -0
  216. package/dist/vue2/lib/presence.cjs.map +1 -0
  217. package/dist/vue2/lib/radio-group.cjs +2 -0
  218. package/dist/vue2/lib/radio-group.cjs.map +1 -0
  219. package/dist/vue2/lib/radio.cjs +2 -0
  220. package/dist/vue2/lib/radio.cjs.map +1 -0
  221. package/dist/vue2/lib/rich-text-editor.cjs +2 -0
  222. package/dist/vue2/lib/rich-text-editor.cjs.map +1 -0
  223. package/dist/vue2/lib/rich-text-editor.js +106 -74
  224. package/dist/vue2/lib/rich-text-editor.js.map +1 -1
  225. package/dist/vue2/lib/root-layout.cjs +2 -0
  226. package/dist/vue2/lib/root-layout.cjs.map +1 -0
  227. package/dist/vue2/lib/select-menu.cjs +2 -0
  228. package/dist/vue2/lib/select-menu.cjs.map +1 -0
  229. package/dist/vue2/lib/settings-menu-button.cjs +2 -0
  230. package/dist/vue2/lib/settings-menu-button.cjs.map +1 -0
  231. package/dist/vue2/lib/settings-menu-button.js +2 -3
  232. package/dist/vue2/lib/settings-menu-button.js.map +1 -1
  233. package/dist/vue2/lib/skeleton.cjs +2 -0
  234. package/dist/vue2/lib/skeleton.cjs.map +1 -0
  235. package/dist/vue2/lib/stack.cjs +2 -0
  236. package/dist/vue2/lib/stack.cjs.map +1 -0
  237. package/dist/vue2/lib/tabs.cjs +2 -0
  238. package/dist/vue2/lib/tabs.cjs.map +1 -0
  239. package/dist/vue2/lib/time-pill.cjs +2 -0
  240. package/dist/vue2/lib/time-pill.cjs.map +1 -0
  241. package/dist/vue2/lib/toast.cjs +2 -0
  242. package/dist/vue2/lib/toast.cjs.map +1 -0
  243. package/dist/vue2/lib/toast.js +2 -3
  244. package/dist/vue2/lib/toast.js.map +1 -1
  245. package/dist/vue2/lib/toggle.cjs +2 -0
  246. package/dist/vue2/lib/toggle.cjs.map +1 -0
  247. package/dist/vue2/lib/tooltip-directive.cjs +2 -0
  248. package/dist/vue2/lib/tooltip-directive.cjs.map +1 -0
  249. package/dist/vue2/lib/tooltip.cjs +2 -0
  250. package/dist/vue2/lib/tooltip.cjs.map +1 -0
  251. package/dist/vue2/lib/top-banner-info.cjs +2 -0
  252. package/dist/vue2/lib/top-banner-info.cjs.map +1 -0
  253. package/dist/vue2/lib/unread-pill.cjs +2 -0
  254. package/dist/vue2/lib/unread-pill.cjs.map +1 -0
  255. package/dist/vue2/lib/unread-pill.js +3 -4
  256. package/dist/vue2/lib/unread-pill.js.map +1 -1
  257. package/dist/vue2/lib/utils.cjs +2 -0
  258. package/dist/vue2/lib/utils.cjs.map +1 -0
  259. package/dist/vue2/lib/validation-messages.cjs +2 -0
  260. package/dist/vue2/lib/validation-messages.cjs.map +1 -0
  261. package/dist/vue2/lib/validators.cjs +2 -0
  262. package/dist/vue2/lib/validators.cjs.map +1 -0
  263. package/dist/vue2/style.css +1 -1
  264. package/dist/vue2/types/components/avatar/avatar.vue.d.ts +1 -1
  265. package/dist/vue2/types/components/button/button.vue.d.ts +2 -2
  266. package/dist/vue2/types/components/card/card.vue.d.ts +1 -1
  267. package/dist/vue2/types/components/chip/chip.vue.d.ts +1 -1
  268. package/dist/vue2/types/components/collapsible/collapsible.vue.d.ts +2 -2
  269. package/dist/vue2/types/components/combobox/combobox.vue.d.ts +1 -1
  270. package/dist/vue2/types/components/dropdown/dropdown.vue.d.ts +1 -1
  271. package/dist/vue2/types/components/emoji/emoji.vue.d.ts +1 -1
  272. package/dist/vue2/types/components/icon/icon.vue.d.ts +2 -22
  273. package/dist/vue2/types/components/icon/icon.vue.d.ts.map +1 -1
  274. package/dist/vue2/types/components/list_item_group/list_item_group.vue.d.ts +1 -1
  275. package/dist/vue2/types/components/modal/modal.vue.d.ts +2 -2
  276. package/dist/vue2/types/components/popover/popover_header_footer.vue.d.ts +1 -1
  277. package/dist/vue2/types/components/rich_text_editor/rich_text_editor.vue.d.ts +91 -1
  278. package/dist/vue2/types/components/rich_text_editor/rich_text_editor.vue.d.ts.map +1 -1
  279. package/dist/vue2/types/components/skeleton/skeleton-list-item.vue.d.ts +1 -1
  280. package/dist/vue2/types/components/skeleton/skeleton-paragraph.vue.d.ts +3 -3
  281. package/dist/vue2/types/components/skeleton/skeleton-shape.vue.d.ts +2 -2
  282. package/dist/vue2/types/components/skeleton/skeleton-text.vue.d.ts +2 -2
  283. package/dist/vue2/types/components/skeleton/skeleton.vue.d.ts +1 -1
  284. package/dist/vue2/types/components/tooltip/tooltip.vue.d.ts +2 -2
  285. package/dist/vue2/types/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts +1 -1
  286. package/dist/vue2/types/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.d.ts +1 -1
  287. package/dist/vue2/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts +2 -2
  288. package/dist/vue2/types/recipes/conversation_view/message_input/message_input.vue.d.ts +90 -0
  289. package/dist/vue2/types/recipes/conversation_view/message_input/message_input.vue.d.ts.map +1 -1
  290. package/dist/vue2/types/recipes/leftbar/general_row/general_row.vue.d.ts +1 -1
  291. package/dist/vue2/types/recipes/leftbar/general_row/leftbar_general_row_icon.vue.d.ts +1 -1
  292. package/dist/vue3/chunks/_plugin-vue_export-helper-6_y-gaV6.js +2 -0
  293. package/dist/vue3/chunks/_plugin-vue_export-helper-6_y-gaV6.js.map +1 -0
  294. package/dist/vue3/chunks/dropdown-UO3UJalk.js +2 -0
  295. package/dist/vue3/chunks/dropdown-UO3UJalk.js.map +1 -0
  296. package/dist/vue3/chunks/dropdown_constants-KHFvVI2L.js +2 -0
  297. package/dist/vue3/chunks/dropdown_constants-KHFvVI2L.js.map +1 -0
  298. package/dist/vue3/chunks/icon_constants-2S_OSQ1t.js +2 -0
  299. package/dist/vue3/chunks/icon_constants-2S_OSQ1t.js.map +1 -0
  300. package/dist/vue3/chunks/index-6tYeqbgP.js +3 -0
  301. package/dist/vue3/chunks/index-6tYeqbgP.js.map +1 -0
  302. package/dist/vue3/chunks/index-IBtQ5jRJ.js +2 -0
  303. package/dist/vue3/chunks/index-IBtQ5jRJ.js.map +1 -0
  304. package/dist/vue3/chunks/input-0Uksk4DP.js +2 -0
  305. package/dist/vue3/chunks/input-0Uksk4DP.js.map +1 -0
  306. package/dist/vue3/chunks/input_group-AS760Cp7.js +2 -0
  307. package/dist/vue3/chunks/input_group-AS760Cp7.js.map +1 -0
  308. package/dist/vue3/chunks/keyboard_list_navigation-N74Bpdq7.js +2 -0
  309. package/dist/vue3/chunks/keyboard_list_navigation-N74Bpdq7.js.map +1 -0
  310. package/dist/vue3/chunks/link_constants-Kn6kP4i1.js +2 -0
  311. package/dist/vue3/chunks/link_constants-Kn6kP4i1.js.map +1 -0
  312. package/dist/vue3/chunks/list_item_constants-Tsz5CO1m.js +2 -0
  313. package/dist/vue3/chunks/list_item_constants-Tsz5CO1m.js.map +1 -0
  314. package/dist/vue3/chunks/modal-qEzlo0Sj.js +2 -0
  315. package/dist/vue3/chunks/modal-qEzlo0Sj.js.map +1 -0
  316. package/dist/vue3/chunks/notice_action-jO199emq.js +2 -0
  317. package/dist/vue3/chunks/notice_action-jO199emq.js.map +1 -0
  318. package/dist/vue3/chunks/notice_constants-mC6al2Dm.js +2 -0
  319. package/dist/vue3/chunks/notice_constants-mC6al2Dm.js.map +1 -0
  320. package/dist/vue3/chunks/popover_constants-hOEhklvr.js +2 -0
  321. package/dist/vue3/chunks/popover_constants-hOEhklvr.js.map +1 -0
  322. package/dist/vue3/chunks/sr_only_close_button-iD7s1Pbj.js +3 -0
  323. package/dist/vue3/chunks/sr_only_close_button-iD7s1Pbj.js.map +1 -0
  324. package/dist/vue3/chunks/stack_constants-m9Ickqw0.js +2 -0
  325. package/dist/vue3/chunks/stack_constants-m9Ickqw0.js.map +1 -0
  326. package/dist/vue3/chunks/tab-at7WWglk.js +2 -0
  327. package/dist/vue3/chunks/tab-at7WWglk.js.map +1 -0
  328. package/dist/vue3/component-documentation.json +1 -1
  329. package/dist/vue3/dialtone-vue.cjs +2 -0
  330. package/dist/vue3/dialtone-vue.cjs.map +1 -0
  331. package/dist/vue3/lib/attachment-carousel.cjs +2 -0
  332. package/dist/vue3/lib/attachment-carousel.cjs.map +1 -0
  333. package/dist/vue3/lib/attachment-carousel.js +2 -3
  334. package/dist/vue3/lib/attachment-carousel.js.map +1 -1
  335. package/dist/vue3/lib/avatar.cjs +2 -0
  336. package/dist/vue3/lib/avatar.cjs.map +1 -0
  337. package/dist/vue3/lib/avatar.js +2 -3
  338. package/dist/vue3/lib/avatar.js.map +1 -1
  339. package/dist/vue3/lib/badge.cjs +2 -0
  340. package/dist/vue3/lib/badge.cjs.map +1 -0
  341. package/dist/vue3/lib/badge.js +2 -3
  342. package/dist/vue3/lib/badge.js.map +1 -1
  343. package/dist/vue3/lib/banner.cjs +3 -0
  344. package/dist/vue3/lib/banner.cjs.map +1 -0
  345. package/dist/vue3/lib/banner.js +6 -7
  346. package/dist/vue3/lib/banner.js.map +1 -1
  347. package/dist/vue3/lib/breadcrumbs.cjs +2 -0
  348. package/dist/vue3/lib/breadcrumbs.cjs.map +1 -0
  349. package/dist/vue3/lib/button-group.cjs +2 -0
  350. package/dist/vue3/lib/button-group.cjs.map +1 -0
  351. package/dist/vue3/lib/button.cjs +2 -0
  352. package/dist/vue3/lib/button.cjs.map +1 -0
  353. package/dist/vue3/lib/callbar-button-with-popover.cjs +2 -0
  354. package/dist/vue3/lib/callbar-button-with-popover.cjs.map +1 -0
  355. package/dist/vue3/lib/callbar-button-with-popover.js +9 -10
  356. package/dist/vue3/lib/callbar-button-with-popover.js.map +1 -1
  357. package/dist/vue3/lib/callbar-button.cjs +2 -0
  358. package/dist/vue3/lib/callbar-button.cjs.map +1 -0
  359. package/dist/vue3/lib/callbox.cjs +2 -0
  360. package/dist/vue3/lib/callbox.cjs.map +1 -0
  361. package/dist/vue3/lib/callbox.js +2 -3
  362. package/dist/vue3/lib/callbox.js.map +1 -1
  363. package/dist/vue3/lib/card.cjs +2 -0
  364. package/dist/vue3/lib/card.cjs.map +1 -0
  365. package/dist/vue3/lib/checkbox-group.cjs +2 -0
  366. package/dist/vue3/lib/checkbox-group.cjs.map +1 -0
  367. package/dist/vue3/lib/checkbox.cjs +2 -0
  368. package/dist/vue3/lib/checkbox.cjs.map +1 -0
  369. package/dist/vue3/lib/chip.cjs +2 -0
  370. package/dist/vue3/lib/chip.cjs.map +1 -0
  371. package/dist/vue3/lib/chip.js +10 -11
  372. package/dist/vue3/lib/chip.js.map +1 -1
  373. package/dist/vue3/lib/codeblock.cjs +3 -0
  374. package/dist/vue3/lib/codeblock.cjs.map +1 -0
  375. package/dist/vue3/lib/collapsible.cjs +2 -0
  376. package/dist/vue3/lib/collapsible.cjs.map +1 -0
  377. package/dist/vue3/lib/collapsible.js +7 -8
  378. package/dist/vue3/lib/collapsible.js.map +1 -1
  379. package/dist/vue3/lib/combobox-multi-select.cjs +2 -0
  380. package/dist/vue3/lib/combobox-multi-select.cjs.map +1 -0
  381. package/dist/vue3/lib/combobox-with-popover.cjs +2 -0
  382. package/dist/vue3/lib/combobox-with-popover.cjs.map +1 -0
  383. package/dist/vue3/lib/combobox.cjs +2 -0
  384. package/dist/vue3/lib/combobox.cjs.map +1 -0
  385. package/dist/vue3/lib/constants.cjs +2 -0
  386. package/dist/vue3/lib/constants.cjs.map +1 -0
  387. package/dist/vue3/lib/contact-info.cjs +2 -0
  388. package/dist/vue3/lib/contact-info.cjs.map +1 -0
  389. package/dist/vue3/lib/contact-info.js +2 -3
  390. package/dist/vue3/lib/contact-info.js.map +1 -1
  391. package/dist/vue3/lib/contact-row.cjs +2 -0
  392. package/dist/vue3/lib/contact-row.cjs.map +1 -0
  393. package/dist/vue3/lib/datepicker.cjs +2 -0
  394. package/dist/vue3/lib/datepicker.cjs.map +1 -0
  395. package/dist/vue3/lib/datepicker.js +12 -13
  396. package/dist/vue3/lib/datepicker.js.map +1 -1
  397. package/dist/vue3/lib/dates.cjs +2 -0
  398. package/dist/vue3/lib/dates.cjs.map +1 -0
  399. package/dist/vue3/lib/description-list.cjs +2 -0
  400. package/dist/vue3/lib/description-list.cjs.map +1 -0
  401. package/dist/vue3/lib/dropdown.cjs +2 -0
  402. package/dist/vue3/lib/dropdown.cjs.map +1 -0
  403. package/dist/vue3/lib/dropdown.js +6 -7
  404. package/dist/vue3/lib/dropdown.js.map +1 -1
  405. package/dist/vue3/lib/editor.cjs +2 -0
  406. package/dist/vue3/lib/editor.cjs.map +1 -0
  407. package/dist/vue3/lib/emoji-picker.cjs +2 -0
  408. package/dist/vue3/lib/emoji-picker.cjs.map +1 -0
  409. package/dist/vue3/lib/emoji-picker.js +2 -3
  410. package/dist/vue3/lib/emoji-picker.js.map +1 -1
  411. package/dist/vue3/lib/emoji-row.cjs +2 -0
  412. package/dist/vue3/lib/emoji-row.cjs.map +1 -0
  413. package/dist/vue3/lib/emoji-text-wrapper.cjs +2 -0
  414. package/dist/vue3/lib/emoji-text-wrapper.cjs.map +1 -0
  415. package/dist/vue3/lib/emoji.cjs +2 -0
  416. package/dist/vue3/lib/emoji.cjs.map +1 -0
  417. package/dist/vue3/lib/feed-item-row.cjs +2 -0
  418. package/dist/vue3/lib/feed-item-row.cjs.map +1 -0
  419. package/dist/vue3/lib/feed-item-row.js +11 -12
  420. package/dist/vue3/lib/feed-item-row.js.map +1 -1
  421. package/dist/vue3/lib/feed-pill.cjs +2 -0
  422. package/dist/vue3/lib/feed-pill.cjs.map +1 -0
  423. package/dist/vue3/lib/feed-pill.js +2 -3
  424. package/dist/vue3/lib/feed-pill.js.map +1 -1
  425. package/dist/vue3/lib/general-row.cjs +2 -0
  426. package/dist/vue3/lib/general-row.cjs.map +1 -0
  427. package/dist/vue3/lib/group-row.cjs +2 -0
  428. package/dist/vue3/lib/group-row.cjs.map +1 -0
  429. package/dist/vue3/lib/group-row.js +1 -1
  430. package/dist/vue3/lib/grouped-chip.cjs +2 -0
  431. package/dist/vue3/lib/grouped-chip.cjs.map +1 -0
  432. package/dist/vue3/lib/grouped-chip.js +5 -6
  433. package/dist/vue3/lib/grouped-chip.js.map +1 -1
  434. package/dist/vue3/lib/hovercard.cjs +2 -0
  435. package/dist/vue3/lib/hovercard.cjs.map +1 -0
  436. package/dist/vue3/lib/hovercard.js +7 -8
  437. package/dist/vue3/lib/hovercard.js.map +1 -1
  438. package/dist/vue3/lib/icon.cjs +2 -0
  439. package/dist/vue3/lib/icon.cjs.map +1 -0
  440. package/dist/vue3/lib/icon.js +20 -51
  441. package/dist/vue3/lib/icon.js.map +1 -1
  442. package/dist/vue3/lib/image-viewer.cjs +2 -0
  443. package/dist/vue3/lib/image-viewer.cjs.map +1 -0
  444. package/dist/vue3/lib/image-viewer.js +9 -10
  445. package/dist/vue3/lib/image-viewer.js.map +1 -1
  446. package/dist/vue3/lib/input-group.cjs +2 -0
  447. package/dist/vue3/lib/input-group.cjs.map +1 -0
  448. package/dist/vue3/lib/input.cjs +2 -0
  449. package/dist/vue3/lib/input.cjs.map +1 -0
  450. package/dist/vue3/lib/item-layout.cjs +2 -0
  451. package/dist/vue3/lib/item-layout.cjs.map +1 -0
  452. package/dist/vue3/lib/ivr-node.cjs +2 -0
  453. package/dist/vue3/lib/ivr-node.cjs.map +1 -0
  454. package/dist/vue3/lib/ivr-node.js +4 -5
  455. package/dist/vue3/lib/ivr-node.js.map +1 -1
  456. package/dist/vue3/lib/keyboard-shortcut.cjs +2 -0
  457. package/dist/vue3/lib/keyboard-shortcut.cjs.map +1 -0
  458. package/dist/vue3/lib/keyboard-shortcut.js +4 -5
  459. package/dist/vue3/lib/keyboard-shortcut.js.map +1 -1
  460. package/dist/vue3/lib/lazy-show.cjs +2 -0
  461. package/dist/vue3/lib/lazy-show.cjs.map +1 -0
  462. package/dist/vue3/lib/link.cjs +2 -0
  463. package/dist/vue3/lib/link.cjs.map +1 -0
  464. package/dist/vue3/lib/list-item-group.cjs +2 -0
  465. package/dist/vue3/lib/list-item-group.cjs.map +1 -0
  466. package/dist/vue3/lib/list-item.cjs +2 -0
  467. package/dist/vue3/lib/list-item.cjs.map +1 -0
  468. package/dist/vue3/lib/list-item.js +2 -3
  469. package/dist/vue3/lib/list-item.js.map +1 -1
  470. package/dist/vue3/lib/message-input.cjs +2 -0
  471. package/dist/vue3/lib/message-input.cjs.map +1 -0
  472. package/dist/vue3/lib/message-input.js +148 -100
  473. package/dist/vue3/lib/message-input.js.map +1 -1
  474. package/dist/vue3/lib/mixins.cjs +2 -0
  475. package/dist/vue3/lib/mixins.cjs.map +1 -0
  476. package/dist/vue3/lib/modal.cjs +3 -0
  477. package/dist/vue3/lib/modal.cjs.map +1 -0
  478. package/dist/vue3/lib/modal.js +11 -12
  479. package/dist/vue3/lib/modal.js.map +1 -1
  480. package/dist/vue3/lib/notice.cjs +2 -0
  481. package/dist/vue3/lib/notice.cjs.map +1 -0
  482. package/dist/vue3/lib/notice.js +2 -3
  483. package/dist/vue3/lib/notice.js.map +1 -1
  484. package/dist/vue3/lib/pagination.cjs +2 -0
  485. package/dist/vue3/lib/pagination.cjs.map +1 -0
  486. package/dist/vue3/lib/pagination.js +2 -3
  487. package/dist/vue3/lib/pagination.js.map +1 -1
  488. package/dist/vue3/lib/popover.cjs +2 -0
  489. package/dist/vue3/lib/popover.cjs.map +1 -0
  490. package/dist/vue3/lib/popover.js +4 -5
  491. package/dist/vue3/lib/popover.js.map +1 -1
  492. package/dist/vue3/lib/presence.cjs +2 -0
  493. package/dist/vue3/lib/presence.cjs.map +1 -0
  494. package/dist/vue3/lib/radio-group.cjs +2 -0
  495. package/dist/vue3/lib/radio-group.cjs.map +1 -0
  496. package/dist/vue3/lib/radio.cjs +2 -0
  497. package/dist/vue3/lib/radio.cjs.map +1 -0
  498. package/dist/vue3/lib/rich-text-editor.cjs +2 -0
  499. package/dist/vue3/lib/rich-text-editor.cjs.map +1 -0
  500. package/dist/vue3/lib/rich-text-editor.js +174 -142
  501. package/dist/vue3/lib/rich-text-editor.js.map +1 -1
  502. package/dist/vue3/lib/root-layout.cjs +2 -0
  503. package/dist/vue3/lib/root-layout.cjs.map +1 -0
  504. package/dist/vue3/lib/scroller.cjs +2 -0
  505. package/dist/vue3/lib/scroller.cjs.map +1 -0
  506. package/dist/vue3/lib/select-menu.cjs +2 -0
  507. package/dist/vue3/lib/select-menu.cjs.map +1 -0
  508. package/dist/vue3/lib/settings-menu-button.cjs +2 -0
  509. package/dist/vue3/lib/settings-menu-button.cjs.map +1 -0
  510. package/dist/vue3/lib/settings-menu-button.js +2 -3
  511. package/dist/vue3/lib/settings-menu-button.js.map +1 -1
  512. package/dist/vue3/lib/skeleton.cjs +2 -0
  513. package/dist/vue3/lib/skeleton.cjs.map +1 -0
  514. package/dist/vue3/lib/stack.cjs +2 -0
  515. package/dist/vue3/lib/stack.cjs.map +1 -0
  516. package/dist/vue3/lib/tabs.cjs +2 -0
  517. package/dist/vue3/lib/tabs.cjs.map +1 -0
  518. package/dist/vue3/lib/time-pill.cjs +2 -0
  519. package/dist/vue3/lib/time-pill.cjs.map +1 -0
  520. package/dist/vue3/lib/toast.cjs +2 -0
  521. package/dist/vue3/lib/toast.cjs.map +1 -0
  522. package/dist/vue3/lib/toast.js +2 -3
  523. package/dist/vue3/lib/toast.js.map +1 -1
  524. package/dist/vue3/lib/toggle.cjs +2 -0
  525. package/dist/vue3/lib/toggle.cjs.map +1 -0
  526. package/dist/vue3/lib/tooltip-directive.cjs +2 -0
  527. package/dist/vue3/lib/tooltip-directive.cjs.map +1 -0
  528. package/dist/vue3/lib/tooltip.cjs +2 -0
  529. package/dist/vue3/lib/tooltip.cjs.map +1 -0
  530. package/dist/vue3/lib/top-banner-info.cjs +2 -0
  531. package/dist/vue3/lib/top-banner-info.cjs.map +1 -0
  532. package/dist/vue3/lib/unread-pill.cjs +2 -0
  533. package/dist/vue3/lib/unread-pill.cjs.map +1 -0
  534. package/dist/vue3/lib/unread-pill.js +2 -3
  535. package/dist/vue3/lib/unread-pill.js.map +1 -1
  536. package/dist/vue3/lib/utils.cjs +2 -0
  537. package/dist/vue3/lib/utils.cjs.map +1 -0
  538. package/dist/vue3/lib/validation-messages.cjs +2 -0
  539. package/dist/vue3/lib/validation-messages.cjs.map +1 -0
  540. package/dist/vue3/lib/validators.cjs +2 -0
  541. package/dist/vue3/lib/validators.cjs.map +1 -0
  542. package/dist/vue3/style.css +1 -1
  543. package/dist/vue3/types/components/avatar/avatar.vue.d.ts +1 -1
  544. package/dist/vue3/types/components/button/button.vue.d.ts +2 -2
  545. package/dist/vue3/types/components/card/card.vue.d.ts +1 -1
  546. package/dist/vue3/types/components/chip/chip.vue.d.ts +1 -1
  547. package/dist/vue3/types/components/collapsible/collapsible.vue.d.ts +2 -2
  548. package/dist/vue3/types/components/combobox/combobox.vue.d.ts +1 -1
  549. package/dist/vue3/types/components/dropdown/dropdown.vue.d.ts +1 -1
  550. package/dist/vue3/types/components/emoji/emoji.vue.d.ts +1 -1
  551. package/dist/vue3/types/components/icon/icon.vue.d.ts +1 -19
  552. package/dist/vue3/types/components/icon/icon.vue.d.ts.map +1 -1
  553. package/dist/vue3/types/components/list_item_group/list_item_group.vue.d.ts +1 -1
  554. package/dist/vue3/types/components/modal/modal.vue.d.ts +2 -2
  555. package/dist/vue3/types/components/popover/popover_header_footer.vue.d.ts +1 -1
  556. package/dist/vue3/types/components/rich_text_editor/rich_text_editor.vue.d.ts +91 -1
  557. package/dist/vue3/types/components/rich_text_editor/rich_text_editor.vue.d.ts.map +1 -1
  558. package/dist/vue3/types/components/root_layout/root_layout.vue.d.ts +1 -1
  559. package/dist/vue3/types/components/skeleton/skeleton-list-item.vue.d.ts +1 -1
  560. package/dist/vue3/types/components/skeleton/skeleton-paragraph.vue.d.ts +3 -3
  561. package/dist/vue3/types/components/skeleton/skeleton-shape.vue.d.ts +2 -2
  562. package/dist/vue3/types/components/skeleton/skeleton-text.vue.d.ts +2 -2
  563. package/dist/vue3/types/components/skeleton/skeleton.vue.d.ts +1 -1
  564. package/dist/vue3/types/components/tooltip/tooltip.vue.d.ts +2 -2
  565. package/dist/vue3/types/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts +1 -1
  566. package/dist/vue3/types/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.d.ts +1 -1
  567. package/dist/vue3/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts +2 -2
  568. package/dist/vue3/types/recipes/conversation_view/message_input/message_input.vue.d.ts +90 -0
  569. package/dist/vue3/types/recipes/conversation_view/message_input/message_input.vue.d.ts.map +1 -1
  570. package/dist/vue3/types/recipes/leftbar/general_row/general_row.vue.d.ts +1 -1
  571. package/dist/vue3/types/recipes/leftbar/general_row/leftbar_general_row_icon.vue.d.ts +1 -1
  572. package/package.json +18 -9
@@ -1,11 +1,11 @@
1
- import { resolveComponent as l, openBlock as m, createElementBlock as k, normalizeClass as S, withKeys as v, withModifiers as L, createElementVNode as u, normalizeStyle as D, createVNode as s, mergeProps as P, renderSlot as F, createBlock as c, withCtx as r, createCommentVNode as d, withDirectives as I, toDisplayString as h, vShow as B, createSlots as E } from "vue";
1
+ import { resolveComponent as s, openBlock as m, createElementBlock as k, normalizeClass as w, withKeys as C, withModifiers as v, createElementVNode as u, normalizeStyle as L, createVNode as r, mergeProps as S, renderSlot as I, createBlock as c, withCtx as l, createCommentVNode as d, withDirectives as D, toDisplayString as h, vShow as F, createSlots as E } from "vue";
2
2
  import { _ as T } from "../chunks/_plugin-vue_export-helper-hUChTQA_.js";
3
3
  import { DtButton as x } from "./button.js";
4
4
  import { DtEmojiPicker as O } from "./emoji-picker.js";
5
5
  import { DtIcon as _ } from "./icon.js";
6
6
  import { DtInput as V } from "./input.js";
7
- import { DtPopover as M } from "./popover.js";
8
- import { DtRichTextEditor as R, RICH_TEXT_EDITOR_AUTOFOCUS_TYPES as U, RICH_TEXT_EDITOR_OUTPUT_FORMATS as q } from "./rich-text-editor.js";
7
+ import { DtPopover as q } from "./popover.js";
8
+ import { DtRichTextEditor as M, RICH_TEXT_EDITOR_AUTOFOCUS_TYPES as U, RICH_TEXT_EDITOR_OUTPUT_FORMATS as R } from "./rich-text-editor.js";
9
9
  import { DtTooltip as z } from "./tooltip.js";
10
10
  import "./utils.js";
11
11
  import "./constants.js";
@@ -18,7 +18,6 @@ import "./validation-messages.js";
18
18
  import "@dialpad/dialtone-icons/vue3";
19
19
  import "../chunks/icon_constants-OpYAAKwF.js";
20
20
  import "@dialpad/dialtone-icons/icons.json";
21
- import "./skeleton.js";
22
21
  import "../chunks/popover_constants-qjlEkroB.js";
23
22
  import "tippy.js";
24
23
  import "./lazy-show.js";
@@ -44,6 +43,7 @@ import "@tiptap/extension-text-align";
44
43
  import "@tiptap/core";
45
44
  import "../chunks/index-mRmwpCBG.js";
46
45
  import "emoji-regex";
46
+ import "./skeleton.js";
47
47
  import "@tiptap/pm/state";
48
48
  import "@tiptap/suggestion";
49
49
  import "./list-item.js";
@@ -62,8 +62,8 @@ const A = {
62
62
  DtEmojiPicker: O,
63
63
  DtIcon: _,
64
64
  DtInput: V,
65
- DtPopover: M,
66
- DtRichTextEditor: R,
65
+ DtPopover: q,
66
+ DtRichTextEditor: M,
67
67
  DtTooltip: z
68
68
  },
69
69
  mixins: [],
@@ -115,8 +115,8 @@ const A = {
115
115
  autoFocus: {
116
116
  type: [Boolean, String, Number],
117
117
  default: !1,
118
- validator(t) {
119
- return typeof t == "string" ? U.includes(t) : !0;
118
+ validator(i) {
119
+ return typeof i == "string" ? U.includes(i) : !0;
120
120
  }
121
121
  },
122
122
  /**
@@ -128,8 +128,8 @@ const A = {
128
128
  outputFormat: {
129
129
  type: String,
130
130
  default: "text",
131
- validator(t) {
132
- return q.includes(t);
131
+ validator(i) {
132
+ return R.includes(i);
133
133
  }
134
134
  },
135
135
  /**
@@ -172,14 +172,14 @@ const A = {
172
172
  emojiPickerProps: {
173
173
  type: Object,
174
174
  default: () => ({}),
175
- validate(t) {
175
+ validate(i) {
176
176
  return [
177
177
  "searchNoResultsLabel",
178
178
  "searchResultsLabel",
179
179
  "searchPlaceholderLabel",
180
180
  "skinSelectorButtonTooltipLabel",
181
181
  "tabSetLabels"
182
- ].every((e) => t[e] != null);
182
+ ].every((e) => i[e] != null);
183
183
  }
184
184
  },
185
185
  /**
@@ -236,6 +236,48 @@ const A = {
236
236
  mentionSuggestion: {
237
237
  type: Object,
238
238
  default: null
239
+ },
240
+ /**
241
+ * Whether the input allows for block quote.
242
+ */
243
+ allowBlockquote: {
244
+ type: Boolean,
245
+ default: !0
246
+ },
247
+ /**
248
+ * Whether the input allows for bold to be introduced in the text.
249
+ */
250
+ allowBold: {
251
+ type: Boolean,
252
+ default: !0
253
+ },
254
+ /**
255
+ * Whether the input allows for bullet list to be introduced in the text.
256
+ */
257
+ allowBulletList: {
258
+ type: Boolean,
259
+ default: !0
260
+ },
261
+ /**
262
+ * Whether the input allows for italic to be introduced in the text.
263
+ */
264
+ allowItalic: {
265
+ type: Boolean,
266
+ default: !0
267
+ },
268
+ /**
269
+ * Whether the input allows for strike to be introduced in the text.
270
+ */
271
+ allowStrike: {
272
+ type: Boolean,
273
+ default: !0
274
+ },
275
+ /**
276
+ * Whether the input allows for underline to be introduced in the text.
277
+ */
278
+ allowUnderline: {
279
+ type: Boolean,
280
+ default: !0
239
281
  }
240
282
  },
241
283
  emits: [
@@ -341,40 +383,40 @@ const A = {
341
383
  }
342
384
  },
343
385
  watch: {
344
- modelValue(t) {
345
- this.internalInputValue = t;
386
+ modelValue(i) {
387
+ this.internalInputValue = i;
346
388
  }
347
389
  },
348
390
  methods: {
349
- onDrag(t) {
350
- t.stopPropagation(), t.preventDefault();
351
- },
352
- onDrop(t) {
353
- t.stopPropagation(), t.preventDefault();
354
- const e = t.dataTransfer, i = Array.from(e.files);
355
- this.$emit("add-media", i);
356
- },
357
- onPaste(t) {
358
- if (t.clipboardData.files.length) {
359
- t.stopPropagation(), t.preventDefault();
360
- const e = [...t.clipboardData.files];
391
+ onDrag(i) {
392
+ i.stopPropagation(), i.preventDefault();
393
+ },
394
+ onDrop(i) {
395
+ i.stopPropagation(), i.preventDefault();
396
+ const e = i.dataTransfer, t = Array.from(e.files);
397
+ this.$emit("add-media", t);
398
+ },
399
+ onPaste(i) {
400
+ if (i.clipboardData.files.length) {
401
+ i.stopPropagation(), i.preventDefault();
402
+ const e = [...i.clipboardData.files];
361
403
  this.$emit("paste-media", e);
362
404
  }
363
405
  },
364
- onSkinTone(t) {
365
- this.$emit("skin-tone", t);
406
+ onSkinTone(i) {
407
+ this.$emit("skin-tone", i);
366
408
  },
367
- onSelectEmoji(t) {
368
- if (!t) {
409
+ onSelectEmoji(i) {
410
+ if (!i) {
369
411
  this.emojiPickerOpened = !1;
370
412
  return;
371
413
  }
372
414
  this.$refs.richTextEditor.editor.commands.insertContent({
373
415
  type: "emoji",
374
416
  attrs: {
375
- code: t.shortname
417
+ code: i.shortname
376
418
  }
377
- }), this.emojiPickerOpened = !1, this.$emit("selected-emoji", t);
419
+ }), this.emojiPickerOpened = !1, this.$emit("selected-emoji", i);
378
420
  },
379
421
  onSelectImage() {
380
422
  this.$refs.messageInputImageUpload.$refs.input.click();
@@ -391,24 +433,24 @@ const A = {
391
433
  onCancel() {
392
434
  this.$emit("cancel");
393
435
  },
394
- onFocus(t) {
436
+ onFocus(i) {
395
437
  var e;
396
- this.hasFocus = !0, (e = this.$refs.richTextEditor) == null || e.focusEditor(), this.$emit("focus", t);
438
+ this.hasFocus = !0, (e = this.$refs.richTextEditor) == null || e.focusEditor(), this.$emit("focus", i);
397
439
  },
398
- onBlur(t) {
399
- this.hasFocus = !1, this.$emit("blur", t);
440
+ onBlur(i) {
441
+ this.hasFocus = !1, this.$emit("blur", i);
400
442
  },
401
- onInput(t) {
402
- this.$emit("input", t);
443
+ onInput(i) {
444
+ this.$emit("input", i);
403
445
  }
404
446
  }
405
447
  }, H = { class: "d-d-flex d-jc-space-between d-mx8 d-my4" }, N = { class: "d-d-flex" }, K = { class: "d-d-flex" }, W = { key: 0 };
406
- function X(t, e, i, Y, a, o) {
407
- const j = l("dt-rich-text-editor"), g = l("dt-icon"), p = l("dt-button"), w = l("dt-input"), f = l("dt-tooltip"), y = l("dt-emoji-picker"), C = l("dt-popover");
448
+ function X(i, e, t, Y, a, o) {
449
+ const P = s("dt-rich-text-editor"), g = s("dt-icon"), p = s("dt-button"), j = s("dt-input"), f = s("dt-tooltip"), y = s("dt-emoji-picker"), B = s("dt-popover");
408
450
  return m(), k("div", {
409
451
  "data-qa": "dt-message-input",
410
452
  role: "presentation",
411
- class: S([
453
+ class: w([
412
454
  "d-d-flex",
413
455
  "d-fd-column",
414
456
  "d-bar8",
@@ -419,68 +461,74 @@ function X(t, e, i, Y, a, o) {
419
461
  ]),
420
462
  onClick: e[15] || (e[15] = (n) => {
421
463
  var b;
422
- return (b = t.$refs.richTextEditor) == null ? void 0 : b.focusEditor();
464
+ return (b = i.$refs.richTextEditor) == null ? void 0 : b.focusEditor();
423
465
  }),
424
466
  onDragEnter: e[16] || (e[16] = (...n) => o.onDrag && o.onDrag(...n)),
425
467
  onDragOver: e[17] || (e[17] = (...n) => o.onDrag && o.onDrag(...n)),
426
468
  onDrop: e[18] || (e[18] = (...n) => o.onDrop && o.onDrop(...n)),
427
- onKeydown: e[19] || (e[19] = v(L((...n) => o.onSend && o.onSend(...n), ["exact"]), ["enter"])),
469
+ onKeydown: e[19] || (e[19] = C(v((...n) => o.onSend && o.onSend(...n), ["exact"]), ["enter"])),
428
470
  onPaste: e[20] || (e[20] = (...n) => o.onPaste && o.onPaste(...n))
429
471
  }, [
430
472
  u("div", {
431
473
  class: "d-of-auto d-mx16 d-mt8 d-mb4",
432
- style: D({ "max-height": i.maxHeight })
474
+ style: L({ "max-height": t.maxHeight })
433
475
  }, [
434
- s(j, P({
476
+ r(P, S({
435
477
  ref: "richTextEditor",
436
478
  modelValue: a.internalInputValue,
437
479
  "onUpdate:modelValue": e[0] || (e[0] = (n) => a.internalInputValue = n),
438
- editable: i.editable,
439
- "input-aria-label": i.inputAriaLabel,
440
- "input-class": i.inputClass,
441
- "output-format": i.outputFormat,
442
- "auto-focus": i.autoFocus,
443
- link: i.link,
444
- placeholder: i.placeholder,
445
- "mention-suggestion": i.mentionSuggestion
446
- }, t.$attrs, {
480
+ "allow-blockquote": t.allowBlockquote,
481
+ "allow-bold": t.allowBold,
482
+ "allow-bullet-list": t.allowBulletList,
483
+ "allow-italic": t.allowItalic,
484
+ "allow-strike": t.allowStrike,
485
+ "allow-underline": t.allowUnderline,
486
+ editable: t.editable,
487
+ "input-aria-label": t.inputAriaLabel,
488
+ "input-class": t.inputClass,
489
+ "output-format": t.outputFormat,
490
+ "auto-focus": t.autoFocus,
491
+ link: t.link,
492
+ placeholder: t.placeholder,
493
+ "mention-suggestion": t.mentionSuggestion
494
+ }, i.$attrs, {
447
495
  onFocus: o.onFocus,
448
496
  onBlur: o.onBlur,
449
497
  onInput: e[1] || (e[1] = (n) => o.onInput(n))
450
- }), null, 16, ["modelValue", "editable", "input-aria-label", "input-class", "output-format", "auto-focus", "link", "placeholder", "mention-suggestion", "onFocus", "onBlur"])
498
+ }), null, 16, ["modelValue", "allow-blockquote", "allow-bold", "allow-bullet-list", "allow-italic", "allow-strike", "allow-underline", "editable", "input-aria-label", "input-class", "output-format", "auto-focus", "link", "placeholder", "mention-suggestion", "onFocus", "onBlur"])
451
499
  ], 4),
452
- F(t.$slots, "middle"),
500
+ I(i.$slots, "middle"),
453
501
  u("section", H, [
454
502
  u("div", N, [
455
- i.showImagePicker ? (m(), c(f, {
503
+ t.showImagePicker ? (m(), c(f, {
456
504
  key: 0,
457
505
  placement: "top-start",
458
- message: i.showImagePicker.tooltipLabel,
506
+ message: t.showImagePicker.tooltipLabel,
459
507
  offset: [-4, -4]
460
508
  }, {
461
- anchor: r(() => [
462
- s(p, {
509
+ anchor: l(() => [
510
+ r(p, {
463
511
  "data-qa": "dt-message-input-image-btn",
464
512
  size: "sm",
465
513
  circle: "",
466
514
  kind: a.imagePickerFocus ? "default" : "muted",
467
515
  importance: "clear",
468
- "aria-label": i.showImagePicker.ariaLabel,
516
+ "aria-label": t.showImagePicker.ariaLabel,
469
517
  onClick: o.onSelectImage,
470
518
  onMouseenter: e[2] || (e[2] = (n) => a.imagePickerFocus = !0),
471
519
  onMouseleave: e[3] || (e[3] = (n) => a.imagePickerFocus = !1),
472
520
  onFocus: e[4] || (e[4] = (n) => a.imagePickerFocus = !0),
473
521
  onBlur: e[5] || (e[5] = (n) => a.imagePickerFocus = !1)
474
522
  }, {
475
- icon: r(() => [
476
- s(g, {
523
+ icon: l(() => [
524
+ r(g, {
477
525
  name: "image",
478
526
  size: "300"
479
527
  })
480
528
  ]),
481
529
  _: 1
482
530
  }, 8, ["kind", "aria-label", "onClick"]),
483
- s(w, {
531
+ r(j, {
484
532
  ref: "messageInputImageUpload",
485
533
  "data-qa": "dt-message-input-image-input",
486
534
  type: "file",
@@ -492,7 +540,7 @@ function X(t, e, i, Y, a, o) {
492
540
  ]),
493
541
  _: 1
494
542
  }, 8, ["message"])) : d("", !0),
495
- i.showEmojiPicker ? (m(), c(C, {
543
+ t.showEmojiPicker ? (m(), c(B, {
496
544
  key: 1,
497
545
  "data-qa": "dt-message-input-emoji-picker-popover",
498
546
  open: a.emojiPickerOpened,
@@ -502,19 +550,19 @@ function X(t, e, i, Y, a, o) {
502
550
  a.emojiPickerOpened = n;
503
551
  })
504
552
  }, {
505
- anchor: r(() => [
506
- s(f, {
507
- message: i.emojiTooltipMessage,
553
+ anchor: l(() => [
554
+ r(f, {
555
+ message: t.emojiTooltipMessage,
508
556
  offset: [0, -4]
509
557
  }, {
510
- anchor: r(() => [
511
- s(p, {
558
+ anchor: l(() => [
559
+ r(p, {
512
560
  "data-qa": "dt-message-input-emoji-picker-btn",
513
561
  size: "sm",
514
562
  circle: "",
515
563
  kind: o.emojiPickerHovered ? "default" : "muted",
516
564
  importance: "clear",
517
- "aria-label": i.emojiButtonAriaLabel,
565
+ "aria-label": t.emojiButtonAriaLabel,
518
566
  offset: [0, 0],
519
567
  onClick: o.toggleEmojiPicker,
520
568
  onMouseenter: e[6] || (e[6] = (n) => a.emojiPickerFocus = !0),
@@ -522,8 +570,8 @@ function X(t, e, i, Y, a, o) {
522
570
  onFocus: e[8] || (e[8] = (n) => a.emojiPickerFocus = !0),
523
571
  onBlur: e[9] || (e[9] = (n) => a.emojiPickerFocus = !1)
524
572
  }, {
525
- icon: r(() => [
526
- s(g, {
573
+ icon: l(() => [
574
+ r(g, {
527
575
  name: o.emojiPickerHovered ? "very-satisfied" : "satisfied",
528
576
  size: "300"
529
577
  }, null, 8, ["name"])
@@ -534,8 +582,8 @@ function X(t, e, i, Y, a, o) {
534
582
  _: 1
535
583
  }, 8, ["message"])
536
584
  ]),
537
- content: r(() => [
538
- s(y, P(i.emojiPickerProps, {
585
+ content: l(() => [
586
+ r(y, S(t.emojiPickerProps, {
539
587
  onSkinTone: o.onSkinTone,
540
588
  onSelectedEmoji: o.onSelectEmoji
541
589
  }), null, 16, ["onSkinTone", "onSelectedEmoji"])
@@ -544,60 +592,60 @@ function X(t, e, i, Y, a, o) {
544
592
  }, 8, ["open"])) : d("", !0)
545
593
  ]),
546
594
  u("div", K, [
547
- i.showCharacterLimit ? (m(), c(f, {
595
+ t.showCharacterLimit ? (m(), c(f, {
548
596
  key: 0,
549
597
  class: "dt-message-input--remaining-char-tooltip",
550
598
  placement: "top-end",
551
599
  enabled: o.characterLimitTooltipEnabled,
552
- message: i.showCharacterLimit.message,
600
+ message: t.showCharacterLimit.message,
553
601
  offset: [10, -8]
554
602
  }, {
555
- anchor: r(() => [
556
- I(u("p", {
603
+ anchor: l(() => [
604
+ D(u("p", {
557
605
  class: "d-fc-error d-mr16 dt-message-input--remaining-char",
558
606
  "data-qa": "dt-message-input-character-limit"
559
- }, h(i.showCharacterLimit.count - o.inputLength), 513), [
560
- [B, o.displayCharacterLimitWarning]
607
+ }, h(t.showCharacterLimit.count - o.inputLength), 513), [
608
+ [F, o.displayCharacterLimitWarning]
561
609
  ])
562
610
  ]),
563
611
  _: 1
564
612
  }, 8, ["enabled", "message"])) : d("", !0),
565
- i.showCancel ? (m(), c(p, {
613
+ t.showCancel ? (m(), c(p, {
566
614
  key: 1,
567
615
  "data-qa": "dt-message-input-cancel-button",
568
616
  class: "dt-message-input--cancel-button",
569
617
  size: "sm",
570
618
  kind: "muted",
571
619
  importance: "clear",
572
- "aria-label": i.showCancel.ariaLabel,
620
+ "aria-label": t.showCancel.ariaLabel,
573
621
  onClick: o.onCancel
574
622
  }, {
575
- default: r(() => [
576
- u("p", null, h(i.showCancel.text), 1)
623
+ default: l(() => [
624
+ u("p", null, h(t.showCancel.text), 1)
577
625
  ]),
578
626
  _: 1
579
627
  }, 8, ["aria-label", "onClick"])) : d("", !0),
580
- i.showSend ? (m(), c(f, {
628
+ t.showSend ? (m(), c(f, {
581
629
  key: 2,
582
630
  placement: "top-end",
583
- enabled: !i.showSend,
584
- message: i.showSend.tooltipLabel,
631
+ enabled: !t.showSend,
632
+ message: t.showSend.tooltipLabel,
585
633
  show: !o.isSendDisabled && a.sendButtonFocus,
586
634
  offset: [6, -8]
587
635
  }, {
588
- anchor: r(() => [
589
- s(p, {
636
+ anchor: l(() => [
637
+ r(p, {
590
638
  "data-qa": "dt-message-input-send-btn",
591
639
  size: "sm",
592
640
  kind: "default",
593
641
  importance: "primary",
594
- class: S([
595
- "d-btn--circle",
642
+ class: w([
596
643
  {
597
- "message-input-button__disabled d-fc-muted": o.isSendDisabled
644
+ "message-input-button__disabled d-fc-muted": o.isSendDisabled,
645
+ "d-btn--circle": t.showSend.icon
598
646
  }
599
647
  ]),
600
- "aria-label": i.showSend.ariaLabel,
648
+ "aria-label": t.showSend.ariaLabel,
601
649
  "aria-disabled": o.isSendDisabled,
602
650
  onClick: o.onSend,
603
651
  onMouseenter: e[11] || (e[11] = (n) => a.sendButtonFocus = !0),
@@ -605,16 +653,16 @@ function X(t, e, i, Y, a, o) {
605
653
  onFocus: e[13] || (e[13] = (n) => a.sendButtonFocus = !0),
606
654
  onBlur: e[14] || (e[14] = (n) => a.sendButtonFocus = !1)
607
655
  }, E({
608
- default: r(() => [
609
- i.showSend.text ? (m(), k("p", W, h(i.showSend.text), 1)) : d("", !0)
656
+ default: l(() => [
657
+ t.showSend.text ? (m(), k("p", W, h(t.showSend.text), 1)) : d("", !0)
610
658
  ]),
611
659
  _: 2
612
660
  }, [
613
- i.showSend.icon ? {
661
+ t.showSend.icon ? {
614
662
  name: "icon",
615
- fn: r(() => [
616
- s(g, {
617
- name: i.showSend.icon,
663
+ fn: l(() => [
664
+ r(g, {
665
+ name: t.showSend.icon,
618
666
  size: "300"
619
667
  }, null, 8, ["name"])
620
668
  ]),
@@ -1 +1 @@
1
- {"version":3,"file":"message-input.js","sources":["../../recipes/conversation_view/message_input/message_input.vue"],"sourcesContent":["<!-- eslint-disable vue/no-restricted-class -->\n<template>\n <div\n data-qa=\"dt-message-input\"\n role=\"presentation\"\n :class=\"['d-d-flex', 'd-fd-column', 'd-bar8', 'd-baw1', 'd-ba', 'd-c-text',\n { 'd-bc-bold d-bs-sm': hasFocus, 'd-bc-default': !hasFocus }]\"\n @click=\"$refs.richTextEditor?.focusEditor()\"\n @drag-enter=\"onDrag\"\n @drag-over=\"onDrag\"\n @drop=\"onDrop\"\n @keydown.enter.exact=\"onSend\"\n @paste=\"onPaste\"\n >\n <!-- Some wrapper to restrict the height and show the scrollbar -->\n <div\n class=\"d-of-auto d-mx16 d-mt8 d-mb4\"\n :style=\"{ 'max-height': maxHeight }\"\n >\n <dt-rich-text-editor\n ref=\"richTextEditor\"\n v-model=\"internalInputValue\"\n :editable=\"editable\"\n :input-aria-label=\"inputAriaLabel\"\n :input-class=\"inputClass\"\n :output-format=\"outputFormat\"\n :auto-focus=\"autoFocus\"\n :link=\"link\"\n :placeholder=\"placeholder\"\n :mention-suggestion=\"mentionSuggestion\"\n v-bind=\"$attrs\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n @input=\"onInput($event)\"\n />\n </div>\n <!-- @slot Slot for attachment carousel -->\n <slot name=\"middle\" />\n <!-- Section for the bottom UI -->\n <section class=\"d-d-flex d-jc-space-between d-mx8 d-my4\">\n <!-- Left content -->\n <div class=\"d-d-flex\">\n <dt-tooltip\n v-if=\"showImagePicker\"\n placement=\"top-start\"\n :message=\"showImagePicker.tooltipLabel\"\n :offset=\"[-4, -4]\"\n >\n <template #anchor>\n <dt-button\n data-qa=\"dt-message-input-image-btn\"\n size=\"sm\"\n circle\n :kind=\"imagePickerFocus ? 'default' : 'muted'\"\n importance=\"clear\"\n :aria-label=\"showImagePicker.ariaLabel\"\n @click=\"onSelectImage\"\n @mouseenter=\"imagePickerFocus = true\"\n @mouseleave=\"imagePickerFocus = false\"\n @focus=\"imagePickerFocus = true\"\n @blur=\"imagePickerFocus = false\"\n >\n <template #icon>\n <dt-icon\n name=\"image\"\n size=\"300\"\n />\n </template>\n </dt-button>\n <dt-input\n ref=\"messageInputImageUpload\"\n data-qa=\"dt-message-input-image-input\"\n type=\"file\"\n class=\"d-ps-absolute\"\n multiple\n hidden\n @input=\"onImageUpload\"\n />\n </template>\n </dt-tooltip>\n <dt-popover\n v-if=\"showEmojiPicker\"\n data-qa=\"dt-message-input-emoji-picker-popover\"\n :open=\"emojiPickerOpened\"\n initial-focus-element=\"#searchInput\"\n padding=\"none\"\n @opened=\"(open) => { emojiPickerOpened = open }\"\n >\n <template #anchor>\n <dt-tooltip\n :message=\"emojiTooltipMessage\"\n :offset=\"[0, -4]\"\n >\n <template #anchor>\n <dt-button\n data-qa=\"dt-message-input-emoji-picker-btn\"\n size=\"sm\"\n circle\n :kind=\"emojiPickerHovered ? 'default' : 'muted'\"\n importance=\"clear\"\n :aria-label=\"emojiButtonAriaLabel\"\n :offset=\"[0, 0]\"\n @click=\"toggleEmojiPicker\"\n @mouseenter=\"emojiPickerFocus = true\"\n @mouseleave=\"emojiPickerFocus = false\"\n @focus=\"emojiPickerFocus = true\"\n @blur=\"emojiPickerFocus = false\"\n >\n <template #icon>\n <dt-icon\n :name=\"!emojiPickerHovered ? 'satisfied' : 'very-satisfied'\"\n size=\"300\"\n />\n </template>\n </dt-button>\n </template>\n </dt-tooltip>\n </template>\n <template #content>\n <dt-emoji-picker\n v-bind=\"emojiPickerProps\"\n @skin-tone=\"onSkinTone\"\n @selected-emoji=\"onSelectEmoji\"\n />\n </template>\n </dt-popover>\n </div>\n <!-- Right content -->\n <div class=\"d-d-flex\">\n <!-- Optionally displayed remaining character counter -->\n <dt-tooltip\n v-if=\"Boolean(showCharacterLimit)\"\n class=\"dt-message-input--remaining-char-tooltip\"\n placement=\"top-end\"\n :enabled=\"characterLimitTooltipEnabled\"\n :message=\"showCharacterLimit.message\"\n :offset=\"[10, -8]\"\n >\n <template #anchor>\n <p\n v-show=\"displayCharacterLimitWarning\"\n class=\"d-fc-error d-mr16 dt-message-input--remaining-char\"\n data-qa=\"dt-message-input-character-limit\"\n >\n {{ showCharacterLimit.count - inputLength }}\n </p>\n </template>\n </dt-tooltip>\n\n <!-- Cancel button for edit mode -->\n <dt-button\n v-if=\"showCancel\"\n data-qa=\"dt-message-input-cancel-button\"\n class=\"dt-message-input--cancel-button\"\n size=\"sm\"\n kind=\"muted\"\n importance=\"clear\"\n :aria-label=\"showCancel.ariaLabel\"\n @click=\"onCancel\"\n >\n <p>{{ showCancel.text }}</p>\n </dt-button>\n\n <!-- Send button -->\n <dt-tooltip\n v-if=\"showSend\"\n placement=\"top-end\"\n :enabled=\"!showSend\"\n :message=\"showSend.tooltipLabel\"\n :show=\"!isSendDisabled && sendButtonFocus\"\n :offset=\"[6, -8]\"\n >\n <template #anchor>\n <!-- Right positioned UI - send button -->\n <dt-button\n data-qa=\"dt-message-input-send-btn\"\n size=\"sm\"\n kind=\"default\"\n importance=\"primary\"\n :class=\"[\n 'd-btn--circle',\n {\n 'message-input-button__disabled d-fc-muted': isSendDisabled,\n },\n ]\"\n :aria-label=\"showSend.ariaLabel\"\n :aria-disabled=\"isSendDisabled\"\n @click=\"onSend\"\n @mouseenter=\"sendButtonFocus = true\"\n @mouseleave=\"sendButtonFocus = false\"\n @focus=\"sendButtonFocus = true\"\n @blur=\"sendButtonFocus = false\"\n >\n <template\n v-if=\"showSend.icon\"\n #icon\n >\n <dt-icon\n :name=\"showSend.icon\"\n size=\"300\"\n />\n </template>\n <template\n v-if=\"showSend.text\"\n >\n <p>{{ showSend.text }}</p>\n </template>\n </dt-button>\n </template>\n </dt-tooltip>\n </div>\n </section>\n </div>\n</template>\n\n<script>\n/* eslint-disable max-lines */\nimport {\n DtRichTextEditor,\n RICH_TEXT_EDITOR_OUTPUT_FORMATS,\n RICH_TEXT_EDITOR_AUTOFOCUS_TYPES,\n} from '@/components/rich_text_editor';\nimport { DtButton } from '@/components/button';\nimport { DtIcon } from '@/components/icon';\nimport { DtEmojiPicker } from '@/components/emoji_picker';\nimport { DtPopover } from '@/components/popover';\nimport { DtInput } from '@/components/input';\nimport { DtTooltip } from '@/components/tooltip';\n\nexport default {\n name: 'DtRecipeMessageInput',\n\n components: {\n DtButton,\n DtEmojiPicker,\n DtIcon,\n DtInput,\n DtPopover,\n DtRichTextEditor,\n DtTooltip,\n },\n\n mixins: [],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Value of the input. The object format should match TipTap's JSON\n * document structure: https://tiptap.dev/guide/output#option-1-json\n */\n modelValue: {\n type: [Object, String],\n default: '',\n },\n\n /**\n * Whether the input is editable\n */\n editable: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Descriptive label for the input element\n */\n inputAriaLabel: {\n type: String,\n required: true,\n default: '',\n },\n\n /**\n * Additional class name for the input element. Only accepts a String value\n * because this is passed to the editor via options. For multiple classes,\n * join them into one string, e.g. \"d-p8 d-hmx96\"\n */\n inputClass: {\n type: String,\n default: '',\n },\n\n /**\n * Whether the input should receive focus after the component has been\n * mounted. Either one of `start`, `end`, `all` or a Boolean or a Number.\n * - `start` Sets the focus to the beginning of the input\n * - `end` Sets the focus to the end of the input\n * - `all` Selects the whole contents of the input\n * - `Number` Sets the focus to a specific position in the input\n * - `true` Defaults to `start`\n * - `false` Disables autofocus\n * @values true, false, start, end, all, number\n */\n autoFocus: {\n type: [Boolean, String, Number],\n default: false,\n validator (autoFocus) {\n if (typeof autoFocus === 'string') {\n return RICH_TEXT_EDITOR_AUTOFOCUS_TYPES.includes(autoFocus);\n }\n return true;\n },\n },\n\n /**\n * The output format that the editor uses when emitting the \"@input\" event.\n * One of `text`, `json`, `html`. See https://tiptap.dev/guide/output for\n * examples.\n * @values text, json, html\n */\n outputFormat: {\n type: String,\n default: 'text',\n validator (outputFormat) {\n return RICH_TEXT_EDITOR_OUTPUT_FORMATS.includes(outputFormat);\n },\n },\n\n /**\n * Enables the Link extension and optionally passes configurations to it\n */\n link: {\n type: [Boolean, Object],\n default: false,\n },\n\n /**\n * Placeholder text\n */\n placeholder: {\n type: String,\n default: '',\n },\n\n /**\n * Disable Send Button\n */\n disableSend: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Content area needs to dynamically adjust height based on the conversation area height.\n * can be vh|px|rem|em|%\n */\n maxHeight: {\n type: String,\n default: 'unset',\n },\n\n // Emoji picker props\n showEmojiPicker: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Props to pass into the emoji picker.\n */\n emojiPickerProps: {\n type: Object,\n default: () => ({}),\n validate (emojiPickerProps) {\n return [\n 'searchNoResultsLabel',\n 'searchResultsLabel',\n 'searchPlaceholderLabel',\n 'skinSelectorButtonTooltipLabel',\n 'tabSetLabels',\n ].every(prop => emojiPickerProps[prop] != null);\n },\n },\n\n /**\n * Emoji button tooltip label\n */\n emojiTooltipMessage: {\n type: String,\n default: 'Emoji',\n },\n\n // Aria label for buttons\n /**\n * Emoji button aria label\n */\n emojiButtonAriaLabel: {\n type: String,\n default: 'emoji button',\n },\n\n /**\n * Enable character Limit warning\n */\n showCharacterLimit: {\n type: [Boolean, Object],\n default: () => ({ count: 1500, warning: 500, message: '' }),\n },\n\n showImagePicker: {\n type: [Boolean, Object],\n default: () => ({ tooltipLabel: 'Attach Image', ariaLabel: 'image button' }),\n },\n\n /**\n * Send button defaults.\n */\n showSend: {\n type: [Boolean, Object],\n default: () => ({ icon: 'send' }),\n },\n\n /**\n * Cancel button defaults.\n */\n showCancel: {\n type: [Boolean, Object],\n default: () => ({ text: 'Cancel' }),\n },\n\n /**\n * suggestion object containing the items query function.\n * The valid keys passed into this object can be found here: https://tiptap.dev/api/utilities/suggestion\n *\n * The only required key is the items function which is used to query the contacts for suggestion.\n * items({ query }) => { return [ContactObject]; }\n * ContactObject format:\n * { name: string, avatarSrc: string, id: string }\n *\n * When null, it does not add the plugin.\n */\n mentionSuggestion: {\n type: Object,\n default: null,\n },\n },\n\n emits: [\n /**\n * Fires when send button is clicked\n *\n * @event submit\n * @type {String}\n */\n 'submit',\n\n /**\n * Fires when media is selected from image button\n *\n * @event select-media\n * @type {Array}\n */\n 'select-media',\n\n /**\n * Fires when media is dropped into the message input\n *\n * @event add-media\n * @type {Array}\n */\n 'add-media',\n\n /**\n * Fires when media is pasted into the message input\n *\n * @event paste-media\n * @type {Array}\n */\n 'paste-media',\n\n /**\n * Fires when cancel button is pressed (only on edit mode)\n *\n * @event cancel\n * @type {Boolean}\n */\n 'cancel',\n\n /**\n * Fires when skin tone is selected from the emoji picker\n *\n * @event skin-tone\n * @type {String}\n */\n 'skin-tone',\n\n /**\n * Fires when emoji is selected from the emoji picker\n *\n * @event selected-emoji\n * @type {String}\n */\n 'selected-emoji',\n\n /**\n * Native focus event\n * @event input\n * @type {String|JSON}\n */\n 'focus',\n\n /**\n * Native blur event\n * @event input\n * @type {String|JSON}\n */\n 'blur',\n\n /**\n * Native input event\n * @event input\n * @type {String|JSON}\n */\n 'input',\n ],\n\n data () {\n return {\n internalInputValue: this.modelValue, // internal input content\n hasFocus: false,\n imagePickerFocus: false,\n emojiPickerFocus: false,\n sendButtonFocus: false,\n emojiPickerOpened: false,\n };\n },\n\n computed: {\n inputLength () {\n return this.internalInputValue.length;\n },\n\n displayCharacterLimitWarning () {\n return Boolean(this.showCharacterLimit) &&\n ((this.showCharacterLimit.count - this.inputLength) <= this.showCharacterLimit.warning);\n },\n\n characterLimitTooltipEnabled () {\n return this.showCharacterLimit.message && (this.showCharacterLimit.count - this.inputLength < 0);\n },\n\n isSendDisabled () {\n return this.disableSend ||\n (this.showCharacterLimit && this.inputLength > this.showCharacterLimit.count);\n },\n\n computedCloseButtonProps () {\n return {\n ariaLabel: 'Close',\n };\n },\n\n emojiPickerHovered () {\n return this.emojiPickerFocus || this.emojiPickerOpened;\n },\n },\n\n watch: {\n modelValue (newValue) {\n this.internalInputValue = newValue;\n },\n },\n\n methods: {\n onDrag (e) {\n e.stopPropagation();\n e.preventDefault();\n },\n\n onDrop (e) {\n e.stopPropagation();\n e.preventDefault();\n\n const dt = e.dataTransfer;\n const files = Array.from(dt.files);\n this.$emit('add-media', files);\n },\n\n onPaste (e) {\n if (e.clipboardData.files.length) {\n e.stopPropagation();\n e.preventDefault();\n const files = [...e.clipboardData.files];\n this.$emit('paste-media', files);\n }\n },\n\n onSkinTone (skinTone) {\n this.$emit('skin-tone', skinTone);\n },\n\n onSelectEmoji (emoji) {\n if (!emoji) {\n this.emojiPickerOpened = false;\n return;\n }\n\n // Insert emoji into the editor\n this.$refs.richTextEditor.editor.commands.insertContent({\n type: 'emoji',\n attrs: {\n code: emoji.shortname,\n },\n });\n this.emojiPickerOpened = false;\n this.$emit('selected-emoji', emoji);\n },\n\n onSelectImage () {\n this.$refs.messageInputImageUpload.$refs.input.click();\n },\n\n onImageUpload () {\n this.$emit('select-media', this.$refs.messageInputImageUpload.$refs.input.files);\n },\n\n toggleEmojiPicker () {\n this.emojiPickerOpened = !this.emojiPickerOpened;\n },\n\n onSend () {\n if (this.isSendDisabled) {\n return;\n }\n this.$emit('submit', this.internalInputValue);\n },\n\n onCancel () {\n this.$emit('cancel');\n },\n\n onFocus (event) {\n this.hasFocus = true;\n this.$refs.richTextEditor?.focusEditor();\n this.$emit('focus', event);\n },\n\n onBlur (event) {\n this.hasFocus = false;\n this.$emit('blur', event);\n },\n\n onInput (event) {\n this.$emit('input', event);\n },\n },\n};\n</script>\n\n<style lang=\"less\">\n.dt-message-input--remaining-char-tooltip {\n margin-top: auto;\n margin-bottom: auto;\n}\n.dt-message-input--remaining-char {\n font-size: 1.2rem;\n}\n\n.message-input-button__disabled {\n background-color: unset;\n color: var(--theme-sidebar-icon-color);\n cursor: default;\n}\n\n.dt-message-input--cancel-button {\n margin-right: var(--dt-space-300);\n}\n</style>\n"],"names":["_sfc_main","DtButton","DtEmojiPicker","DtIcon","DtInput","DtPopover","DtRichTextEditor","DtTooltip","autoFocus","RICH_TEXT_EDITOR_AUTOFOCUS_TYPES","outputFormat","RICH_TEXT_EDITOR_OUTPUT_FORMATS","emojiPickerProps","prop","newValue","e","dt","files","skinTone","emoji","event","_a","_hoisted_1","_hoisted_2","_hoisted_3","_createElementBlock","_normalizeClass","$data","_cache","$event","_ctx","$options","args","_createElementVNode","$props","_createVNode","_component_dt_rich_text_editor","_mergeProps","_renderSlot","_createBlock","_component_dt_tooltip","_component_dt_button","_component_dt_icon","_component_dt_input","_component_dt_popover","open","_component_dt_emoji_picker","_toDisplayString","_hoisted_4"],"mappings":"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"}
1
+ {"version":3,"file":"message-input.js","sources":["../../recipes/conversation_view/message_input/message_input.vue"],"sourcesContent":["<!-- eslint-disable vue/no-restricted-class -->\n<template>\n <div\n data-qa=\"dt-message-input\"\n role=\"presentation\"\n :class=\"['d-d-flex', 'd-fd-column', 'd-bar8', 'd-baw1', 'd-ba', 'd-c-text',\n { 'd-bc-bold d-bs-sm': hasFocus, 'd-bc-default': !hasFocus }]\"\n @click=\"$refs.richTextEditor?.focusEditor()\"\n @drag-enter=\"onDrag\"\n @drag-over=\"onDrag\"\n @drop=\"onDrop\"\n @keydown.enter.exact=\"onSend\"\n @paste=\"onPaste\"\n >\n <!-- Some wrapper to restrict the height and show the scrollbar -->\n <div\n class=\"d-of-auto d-mx16 d-mt8 d-mb4\"\n :style=\"{ 'max-height': maxHeight }\"\n >\n <dt-rich-text-editor\n ref=\"richTextEditor\"\n v-model=\"internalInputValue\"\n :allow-blockquote=\"allowBlockquote\"\n :allow-bold=\"allowBold\"\n :allow-bullet-list=\"allowBulletList\"\n :allow-italic=\"allowItalic\"\n :allow-strike=\"allowStrike\"\n :allow-underline=\"allowUnderline\"\n :editable=\"editable\"\n :input-aria-label=\"inputAriaLabel\"\n :input-class=\"inputClass\"\n :output-format=\"outputFormat\"\n :auto-focus=\"autoFocus\"\n :link=\"link\"\n :placeholder=\"placeholder\"\n :mention-suggestion=\"mentionSuggestion\"\n v-bind=\"$attrs\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n @input=\"onInput($event)\"\n />\n </div>\n <!-- @slot Slot for attachment carousel -->\n <slot name=\"middle\" />\n <!-- Section for the bottom UI -->\n <section class=\"d-d-flex d-jc-space-between d-mx8 d-my4\">\n <!-- Left content -->\n <div class=\"d-d-flex\">\n <dt-tooltip\n v-if=\"showImagePicker\"\n placement=\"top-start\"\n :message=\"showImagePicker.tooltipLabel\"\n :offset=\"[-4, -4]\"\n >\n <template #anchor>\n <dt-button\n data-qa=\"dt-message-input-image-btn\"\n size=\"sm\"\n circle\n :kind=\"imagePickerFocus ? 'default' : 'muted'\"\n importance=\"clear\"\n :aria-label=\"showImagePicker.ariaLabel\"\n @click=\"onSelectImage\"\n @mouseenter=\"imagePickerFocus = true\"\n @mouseleave=\"imagePickerFocus = false\"\n @focus=\"imagePickerFocus = true\"\n @blur=\"imagePickerFocus = false\"\n >\n <template #icon>\n <dt-icon\n name=\"image\"\n size=\"300\"\n />\n </template>\n </dt-button>\n <dt-input\n ref=\"messageInputImageUpload\"\n data-qa=\"dt-message-input-image-input\"\n type=\"file\"\n class=\"d-ps-absolute\"\n multiple\n hidden\n @input=\"onImageUpload\"\n />\n </template>\n </dt-tooltip>\n <dt-popover\n v-if=\"showEmojiPicker\"\n data-qa=\"dt-message-input-emoji-picker-popover\"\n :open=\"emojiPickerOpened\"\n initial-focus-element=\"#searchInput\"\n padding=\"none\"\n @opened=\"(open) => { emojiPickerOpened = open }\"\n >\n <template #anchor>\n <dt-tooltip\n :message=\"emojiTooltipMessage\"\n :offset=\"[0, -4]\"\n >\n <template #anchor>\n <dt-button\n data-qa=\"dt-message-input-emoji-picker-btn\"\n size=\"sm\"\n circle\n :kind=\"emojiPickerHovered ? 'default' : 'muted'\"\n importance=\"clear\"\n :aria-label=\"emojiButtonAriaLabel\"\n :offset=\"[0, 0]\"\n @click=\"toggleEmojiPicker\"\n @mouseenter=\"emojiPickerFocus = true\"\n @mouseleave=\"emojiPickerFocus = false\"\n @focus=\"emojiPickerFocus = true\"\n @blur=\"emojiPickerFocus = false\"\n >\n <template #icon>\n <dt-icon\n :name=\"!emojiPickerHovered ? 'satisfied' : 'very-satisfied'\"\n size=\"300\"\n />\n </template>\n </dt-button>\n </template>\n </dt-tooltip>\n </template>\n <template #content>\n <dt-emoji-picker\n v-bind=\"emojiPickerProps\"\n @skin-tone=\"onSkinTone\"\n @selected-emoji=\"onSelectEmoji\"\n />\n </template>\n </dt-popover>\n </div>\n <!-- Right content -->\n <div class=\"d-d-flex\">\n <!-- Optionally displayed remaining character counter -->\n <dt-tooltip\n v-if=\"Boolean(showCharacterLimit)\"\n class=\"dt-message-input--remaining-char-tooltip\"\n placement=\"top-end\"\n :enabled=\"characterLimitTooltipEnabled\"\n :message=\"showCharacterLimit.message\"\n :offset=\"[10, -8]\"\n >\n <template #anchor>\n <p\n v-show=\"displayCharacterLimitWarning\"\n class=\"d-fc-error d-mr16 dt-message-input--remaining-char\"\n data-qa=\"dt-message-input-character-limit\"\n >\n {{ showCharacterLimit.count - inputLength }}\n </p>\n </template>\n </dt-tooltip>\n\n <!-- Cancel button for edit mode -->\n <dt-button\n v-if=\"showCancel\"\n data-qa=\"dt-message-input-cancel-button\"\n class=\"dt-message-input--cancel-button\"\n size=\"sm\"\n kind=\"muted\"\n importance=\"clear\"\n :aria-label=\"showCancel.ariaLabel\"\n @click=\"onCancel\"\n >\n <p>{{ showCancel.text }}</p>\n </dt-button>\n\n <!-- Send button -->\n <dt-tooltip\n v-if=\"showSend\"\n placement=\"top-end\"\n :enabled=\"!showSend\"\n :message=\"showSend.tooltipLabel\"\n :show=\"!isSendDisabled && sendButtonFocus\"\n :offset=\"[6, -8]\"\n >\n <template #anchor>\n <!-- Right positioned UI - send button -->\n <dt-button\n data-qa=\"dt-message-input-send-btn\"\n size=\"sm\"\n kind=\"default\"\n importance=\"primary\"\n :class=\"[\n {\n 'message-input-button__disabled d-fc-muted': isSendDisabled,\n 'd-btn--circle': showSend.icon,\n },\n ]\"\n :aria-label=\"showSend.ariaLabel\"\n :aria-disabled=\"isSendDisabled\"\n @click=\"onSend\"\n @mouseenter=\"sendButtonFocus = true\"\n @mouseleave=\"sendButtonFocus = false\"\n @focus=\"sendButtonFocus = true\"\n @blur=\"sendButtonFocus = false\"\n >\n <template\n v-if=\"showSend.icon\"\n #icon\n >\n <dt-icon\n :name=\"showSend.icon\"\n size=\"300\"\n />\n </template>\n <template\n v-if=\"showSend.text\"\n >\n <p>{{ showSend.text }}</p>\n </template>\n </dt-button>\n </template>\n </dt-tooltip>\n </div>\n </section>\n </div>\n</template>\n\n<script>\n/* eslint-disable max-lines */\nimport {\n DtRichTextEditor,\n RICH_TEXT_EDITOR_OUTPUT_FORMATS,\n RICH_TEXT_EDITOR_AUTOFOCUS_TYPES,\n} from '@/components/rich_text_editor';\nimport { DtButton } from '@/components/button';\nimport { DtIcon } from '@/components/icon';\nimport { DtEmojiPicker } from '@/components/emoji_picker';\nimport { DtPopover } from '@/components/popover';\nimport { DtInput } from '@/components/input';\nimport { DtTooltip } from '@/components/tooltip';\n\nexport default {\n name: 'DtRecipeMessageInput',\n\n components: {\n DtButton,\n DtEmojiPicker,\n DtIcon,\n DtInput,\n DtPopover,\n DtRichTextEditor,\n DtTooltip,\n },\n\n mixins: [],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Value of the input. The object format should match TipTap's JSON\n * document structure: https://tiptap.dev/guide/output#option-1-json\n */\n modelValue: {\n type: [Object, String],\n default: '',\n },\n\n /**\n * Whether the input is editable\n */\n editable: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Descriptive label for the input element\n */\n inputAriaLabel: {\n type: String,\n required: true,\n default: '',\n },\n\n /**\n * Additional class name for the input element. Only accepts a String value\n * because this is passed to the editor via options. For multiple classes,\n * join them into one string, e.g. \"d-p8 d-hmx96\"\n */\n inputClass: {\n type: String,\n default: '',\n },\n\n /**\n * Whether the input should receive focus after the component has been\n * mounted. Either one of `start`, `end`, `all` or a Boolean or a Number.\n * - `start` Sets the focus to the beginning of the input\n * - `end` Sets the focus to the end of the input\n * - `all` Selects the whole contents of the input\n * - `Number` Sets the focus to a specific position in the input\n * - `true` Defaults to `start`\n * - `false` Disables autofocus\n * @values true, false, start, end, all, number\n */\n autoFocus: {\n type: [Boolean, String, Number],\n default: false,\n validator (autoFocus) {\n if (typeof autoFocus === 'string') {\n return RICH_TEXT_EDITOR_AUTOFOCUS_TYPES.includes(autoFocus);\n }\n return true;\n },\n },\n\n /**\n * The output format that the editor uses when emitting the \"@input\" event.\n * One of `text`, `json`, `html`. See https://tiptap.dev/guide/output for\n * examples.\n * @values text, json, html\n */\n outputFormat: {\n type: String,\n default: 'text',\n validator (outputFormat) {\n return RICH_TEXT_EDITOR_OUTPUT_FORMATS.includes(outputFormat);\n },\n },\n\n /**\n * Enables the Link extension and optionally passes configurations to it\n */\n link: {\n type: [Boolean, Object],\n default: false,\n },\n\n /**\n * Placeholder text\n */\n placeholder: {\n type: String,\n default: '',\n },\n\n /**\n * Disable Send Button\n */\n disableSend: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Content area needs to dynamically adjust height based on the conversation area height.\n * can be vh|px|rem|em|%\n */\n maxHeight: {\n type: String,\n default: 'unset',\n },\n\n // Emoji picker props\n showEmojiPicker: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Props to pass into the emoji picker.\n */\n emojiPickerProps: {\n type: Object,\n default: () => ({}),\n validate (emojiPickerProps) {\n return [\n 'searchNoResultsLabel',\n 'searchResultsLabel',\n 'searchPlaceholderLabel',\n 'skinSelectorButtonTooltipLabel',\n 'tabSetLabels',\n ].every(prop => emojiPickerProps[prop] != null);\n },\n },\n\n /**\n * Emoji button tooltip label\n */\n emojiTooltipMessage: {\n type: String,\n default: 'Emoji',\n },\n\n // Aria label for buttons\n /**\n * Emoji button aria label\n */\n emojiButtonAriaLabel: {\n type: String,\n default: 'emoji button',\n },\n\n /**\n * Enable character Limit warning\n */\n showCharacterLimit: {\n type: [Boolean, Object],\n default: () => ({ count: 1500, warning: 500, message: '' }),\n },\n\n showImagePicker: {\n type: [Boolean, Object],\n default: () => ({ tooltipLabel: 'Attach Image', ariaLabel: 'image button' }),\n },\n\n /**\n * Send button defaults.\n */\n showSend: {\n type: [Boolean, Object],\n default: () => ({ icon: 'send' }),\n },\n\n /**\n * Cancel button defaults.\n */\n showCancel: {\n type: [Boolean, Object],\n default: () => ({ text: 'Cancel' }),\n },\n\n /**\n * suggestion object containing the items query function.\n * The valid keys passed into this object can be found here: https://tiptap.dev/api/utilities/suggestion\n *\n * The only required key is the items function which is used to query the contacts for suggestion.\n * items({ query }) => { return [ContactObject]; }\n * ContactObject format:\n * { name: string, avatarSrc: string, id: string }\n *\n * When null, it does not add the plugin.\n */\n mentionSuggestion: {\n type: Object,\n default: null,\n },\n\n /**\n * Whether the input allows for block quote.\n */\n allowBlockquote: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Whether the input allows for bold to be introduced in the text.\n */\n allowBold: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Whether the input allows for bullet list to be introduced in the text.\n */\n allowBulletList: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Whether the input allows for italic to be introduced in the text.\n */\n allowItalic: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Whether the input allows for strike to be introduced in the text.\n */\n allowStrike: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Whether the input allows for underline to be introduced in the text.\n */\n allowUnderline: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n /**\n * Fires when send button is clicked\n *\n * @event submit\n * @type {String}\n */\n 'submit',\n\n /**\n * Fires when media is selected from image button\n *\n * @event select-media\n * @type {Array}\n */\n 'select-media',\n\n /**\n * Fires when media is dropped into the message input\n *\n * @event add-media\n * @type {Array}\n */\n 'add-media',\n\n /**\n * Fires when media is pasted into the message input\n *\n * @event paste-media\n * @type {Array}\n */\n 'paste-media',\n\n /**\n * Fires when cancel button is pressed (only on edit mode)\n *\n * @event cancel\n * @type {Boolean}\n */\n 'cancel',\n\n /**\n * Fires when skin tone is selected from the emoji picker\n *\n * @event skin-tone\n * @type {String}\n */\n 'skin-tone',\n\n /**\n * Fires when emoji is selected from the emoji picker\n *\n * @event selected-emoji\n * @type {String}\n */\n 'selected-emoji',\n\n /**\n * Native focus event\n * @event input\n * @type {String|JSON}\n */\n 'focus',\n\n /**\n * Native blur event\n * @event input\n * @type {String|JSON}\n */\n 'blur',\n\n /**\n * Native input event\n * @event input\n * @type {String|JSON}\n */\n 'input',\n ],\n\n data () {\n return {\n internalInputValue: this.modelValue, // internal input content\n hasFocus: false,\n imagePickerFocus: false,\n emojiPickerFocus: false,\n sendButtonFocus: false,\n emojiPickerOpened: false,\n };\n },\n\n computed: {\n inputLength () {\n return this.internalInputValue.length;\n },\n\n displayCharacterLimitWarning () {\n return Boolean(this.showCharacterLimit) &&\n ((this.showCharacterLimit.count - this.inputLength) <= this.showCharacterLimit.warning);\n },\n\n characterLimitTooltipEnabled () {\n return this.showCharacterLimit.message && (this.showCharacterLimit.count - this.inputLength < 0);\n },\n\n isSendDisabled () {\n return this.disableSend ||\n (this.showCharacterLimit && this.inputLength > this.showCharacterLimit.count);\n },\n\n computedCloseButtonProps () {\n return {\n ariaLabel: 'Close',\n };\n },\n\n emojiPickerHovered () {\n return this.emojiPickerFocus || this.emojiPickerOpened;\n },\n },\n\n watch: {\n modelValue (newValue) {\n this.internalInputValue = newValue;\n },\n },\n\n methods: {\n onDrag (e) {\n e.stopPropagation();\n e.preventDefault();\n },\n\n onDrop (e) {\n e.stopPropagation();\n e.preventDefault();\n\n const dt = e.dataTransfer;\n const files = Array.from(dt.files);\n this.$emit('add-media', files);\n },\n\n onPaste (e) {\n if (e.clipboardData.files.length) {\n e.stopPropagation();\n e.preventDefault();\n const files = [...e.clipboardData.files];\n this.$emit('paste-media', files);\n }\n },\n\n onSkinTone (skinTone) {\n this.$emit('skin-tone', skinTone);\n },\n\n onSelectEmoji (emoji) {\n if (!emoji) {\n this.emojiPickerOpened = false;\n return;\n }\n\n // Insert emoji into the editor\n this.$refs.richTextEditor.editor.commands.insertContent({\n type: 'emoji',\n attrs: {\n code: emoji.shortname,\n },\n });\n this.emojiPickerOpened = false;\n this.$emit('selected-emoji', emoji);\n },\n\n onSelectImage () {\n this.$refs.messageInputImageUpload.$refs.input.click();\n },\n\n onImageUpload () {\n this.$emit('select-media', this.$refs.messageInputImageUpload.$refs.input.files);\n },\n\n toggleEmojiPicker () {\n this.emojiPickerOpened = !this.emojiPickerOpened;\n },\n\n onSend () {\n if (this.isSendDisabled) {\n return;\n }\n this.$emit('submit', this.internalInputValue);\n },\n\n onCancel () {\n this.$emit('cancel');\n },\n\n onFocus (event) {\n this.hasFocus = true;\n this.$refs.richTextEditor?.focusEditor();\n this.$emit('focus', event);\n },\n\n onBlur (event) {\n this.hasFocus = false;\n this.$emit('blur', event);\n },\n\n onInput (event) {\n this.$emit('input', event);\n },\n },\n};\n</script>\n\n<style lang=\"less\">\n.dt-message-input--remaining-char-tooltip {\n margin-top: auto;\n margin-bottom: auto;\n}\n.dt-message-input--remaining-char {\n font-size: 1.2rem;\n}\n\n.message-input-button__disabled {\n background-color: unset;\n color: var(--theme-sidebar-icon-color);\n cursor: default;\n}\n\n.dt-message-input--cancel-button {\n margin-right: var(--dt-space-300);\n}\n</style>\n"],"names":["_sfc_main","DtButton","DtEmojiPicker","DtIcon","DtInput","DtPopover","DtRichTextEditor","DtTooltip","autoFocus","RICH_TEXT_EDITOR_AUTOFOCUS_TYPES","outputFormat","RICH_TEXT_EDITOR_OUTPUT_FORMATS","emojiPickerProps","prop","newValue","e","dt","files","skinTone","emoji","event","_a","_hoisted_1","_hoisted_2","_hoisted_3","_createElementBlock","_normalizeClass","$data","_cache","$event","_ctx","$options","args","_createElementVNode","$props","_createVNode","_component_dt_rich_text_editor","_mergeProps","_renderSlot","_createBlock","_component_dt_tooltip","_component_dt_button","_component_dt_icon","_component_dt_input","_component_dt_popover","open","_component_dt_emoji_picker","_toDisplayString","_hoisted_4"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../chunks/input-0Uksk4DP.js"),i=require("../chunks/input_group-AS760Cp7.js"),r=require("../chunks/keyboard_list_navigation-N74Bpdq7.js");require("vue");require("./constants.cjs");require("./validators.cjs");require("./utils.cjs");require("./validation-messages.cjs");require("../chunks/_plugin-vue_export-helper-6_y-gaV6.js");exports.DtCheckableInputMixin=e.C;exports.DtGroupableInputMixin=e.G;exports.DtInputMixin=e.I;exports.DtInputGroupMixin=i.I;exports.DtKeyboardListNavigationMixin=r.K;
2
+ //# sourceMappingURL=mixins.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mixins.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}