@dialpad/dialtone 9.29.0 → 9.30.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 (864) hide show
  1. package/dist/css/dialtone.css +2 -2
  2. package/dist/tokens/css/variables-dark.css +1 -1
  3. package/dist/tokens/css/variables-expressive-dark.css +937 -0
  4. package/dist/tokens/css/variables-expressive-light.css +817 -0
  5. package/dist/tokens/css/{variables-cox-dark.css → variables-expressive-sm-dark.css} +68 -67
  6. package/dist/tokens/css/{variables-cox-light.css → variables-expressive-sm-light.css} +67 -66
  7. package/dist/tokens/css/variables-light.css +1 -1
  8. package/dist/tokens/css/variables-tmo-dark.css +1 -1
  9. package/dist/tokens/css/variables-tmo-light.css +1 -1
  10. package/dist/tokens/doc.json +21010 -294
  11. package/dist/tokens/less/variables-dark.less +1 -1
  12. package/dist/tokens/less/variables-expressive-dark.less +934 -0
  13. package/dist/tokens/less/variables-expressive-light.less +814 -0
  14. package/dist/tokens/less/{variables-cox-dark.less → variables-expressive-sm-dark.less} +67 -66
  15. package/dist/tokens/less/{variables-cox-light.less → variables-expressive-sm-light.less} +66 -65
  16. package/dist/tokens/less/variables-light.less +1 -1
  17. package/dist/tokens/less/variables-tmo-dark.less +1 -1
  18. package/dist/tokens/less/variables-tmo-light.less +1 -1
  19. package/dist/vue2/chunks/_plugin-vue2_normalizer-1aBeR4AK.js +59 -0
  20. package/dist/vue2/chunks/_plugin-vue2_normalizer-1aBeR4AK.js.map +1 -0
  21. package/dist/vue2/chunks/_plugin-vue2_normalizer-sOSkiPF3.js +60 -0
  22. package/dist/vue2/chunks/_plugin-vue2_normalizer-sOSkiPF3.js.map +1 -0
  23. package/dist/vue2/chunks/{dropdown-SMWaTWyF.js → dropdown-DTtcQEFC.js} +131 -84
  24. package/dist/vue2/chunks/{dropdown-SMWaTWyF.js.map → dropdown-DTtcQEFC.js.map} +1 -1
  25. package/dist/vue2/chunks/dropdown-IaLNHmVd.js +403 -0
  26. package/dist/vue2/chunks/{dropdown-zhMEz3bn.js.map → dropdown-IaLNHmVd.js.map} +1 -1
  27. package/dist/vue2/chunks/dropdown_constants-2pGCXy7m.js +8 -0
  28. package/dist/vue2/chunks/dropdown_constants-2pGCXy7m.js.map +1 -0
  29. package/dist/vue2/chunks/dropdown_constants-w1MXGC3Z.js +9 -0
  30. package/dist/vue2/chunks/dropdown_constants-w1MXGC3Z.js.map +1 -0
  31. package/dist/vue2/chunks/{icon_constants-OpYAAKwF.js → icon_constants-Dy4MEUJL.js} +7 -6
  32. package/dist/vue2/chunks/{icon_constants-2S_OSQ1t.js.map → icon_constants-Dy4MEUJL.js.map} +1 -1
  33. package/dist/vue2/chunks/icon_constants-QYpmdE0R.js +16 -0
  34. package/dist/{vue3/chunks/icon_constants-2S_OSQ1t.js.map → vue2/chunks/icon_constants-QYpmdE0R.js.map} +1 -1
  35. package/dist/vue2/chunks/index-DUr1xHR0.js +442 -0
  36. package/dist/vue2/chunks/{index-2jPosQBn.js.map → index-DUr1xHR0.js.map} +1 -1
  37. package/dist/vue2/chunks/index-IA-Z8fgm.js +441 -0
  38. package/dist/vue2/chunks/{index-nIyl_PL6.js.map → index-IA-Z8fgm.js.map} +1 -1
  39. package/dist/{vue3/chunks/input-4UQWegUk.js → vue2/chunks/input-6kbd8Pju.js} +83 -60
  40. package/dist/vue2/chunks/{input-o-fc1X4b.js.map → input-6kbd8Pju.js.map} +1 -1
  41. package/dist/vue2/chunks/input-Axw-wFj2.js +295 -0
  42. package/dist/vue2/chunks/{input-1tm09l_-.js.map → input-Axw-wFj2.js.map} +1 -1
  43. package/dist/vue2/chunks/input_group-m3cWYUfI.js +143 -0
  44. package/dist/vue2/chunks/{input_group-zcAq3DQl.js.map → input_group-m3cWYUfI.js.map} +1 -1
  45. package/dist/vue2/chunks/{input_group-zcAq3DQl.js → input_group-qVZaS5Bb.js} +27 -24
  46. package/dist/vue2/chunks/{input_group-j2gTtc1C.js.map → input_group-qVZaS5Bb.js.map} +1 -1
  47. package/dist/vue2/chunks/keyboard_list_navigation-ScXhrxya.js +284 -0
  48. package/dist/vue2/chunks/{keyboard_list_navigation-N74Bpdq7.js.map → keyboard_list_navigation-ScXhrxya.js.map} +1 -1
  49. package/dist/vue2/chunks/keyboard_list_navigation-fJnl_Iox.js +283 -0
  50. package/dist/{vue3/chunks/keyboard_list_navigation-F0O8nht0.js.map → vue2/chunks/keyboard_list_navigation-fJnl_Iox.js.map} +1 -1
  51. package/dist/vue2/chunks/link_constants-Huj7D_hm.js +22 -0
  52. package/dist/vue2/chunks/{link_constants-Kn6kP4i1.js.map → link_constants-Huj7D_hm.js.map} +1 -1
  53. package/dist/vue2/chunks/link_constants-nWVlXQBs.js +23 -0
  54. package/dist/{vue3/chunks/link_constants-Kn6kP4i1.js.map → vue2/chunks/link_constants-nWVlXQBs.js.map} +1 -1
  55. package/dist/vue2/chunks/list_item_constants-EiqkqZvP.js +13 -0
  56. package/dist/vue2/chunks/{list_item_constants-Tsz5CO1m.js.map → list_item_constants-EiqkqZvP.js.map} +1 -1
  57. package/dist/vue2/chunks/list_item_constants-u1xcN9Dd.js +14 -0
  58. package/dist/{vue3/chunks/list_item_constants-Tsz5CO1m.js.map → vue2/chunks/list_item_constants-u1xcN9Dd.js.map} +1 -1
  59. package/dist/vue2/chunks/modal-VgxXAQFP.js +105 -0
  60. package/dist/vue2/chunks/{modal-qEzlo0Sj.js.map → modal-VgxXAQFP.js.map} +1 -1
  61. package/dist/vue2/chunks/modal-XOr4kiNZ.js +106 -0
  62. package/dist/{vue3/chunks/modal-VuMFkZFH.js.map → vue2/chunks/modal-XOr4kiNZ.js.map} +1 -1
  63. package/dist/vue2/chunks/notice_action-IRUoLX2d.js +196 -0
  64. package/dist/vue2/chunks/{notice_action-u3ZKIhit.js.map → notice_action-IRUoLX2d.js.map} +1 -1
  65. package/dist/vue2/chunks/notice_action-P6uDyE9x.js +195 -0
  66. package/dist/vue2/chunks/{notice_action-9NmtQRai.js.map → notice_action-P6uDyE9x.js.map} +1 -1
  67. package/dist/vue2/chunks/notice_constants-7Qt2CQEY.js +7 -0
  68. package/dist/vue2/chunks/{notice_constants-mC6al2Dm.js.map → notice_constants-7Qt2CQEY.js.map} +1 -1
  69. package/dist/vue2/chunks/notice_constants-UXo9e3bS.js +6 -0
  70. package/dist/{vue3/chunks/notice_constants-mC6al2Dm.js.map → vue2/chunks/notice_constants-UXo9e3bS.js.map} +1 -1
  71. package/dist/vue2/chunks/popover_constants-JwBF9h1Z.js +143 -0
  72. package/dist/{vue3/chunks/popover_constants-hOEhklvr.js.map → vue2/chunks/popover_constants-JwBF9h1Z.js.map} +1 -1
  73. package/dist/vue2/chunks/popover_constants-Qkpb0yh2.js +144 -0
  74. package/dist/vue2/chunks/{popover_constants-hOEhklvr.js.map → popover_constants-Qkpb0yh2.js.map} +1 -1
  75. package/dist/vue2/chunks/sr_only_close_button-81bHIpPu.js +95 -0
  76. package/dist/vue2/chunks/{sr_only_close_button-ErijKGYR.js.map → sr_only_close_button-81bHIpPu.js.map} +1 -1
  77. package/dist/vue2/chunks/sr_only_close_button-ZaGdAHz7.js +94 -0
  78. package/dist/vue2/chunks/{sr_only_close_button-JGole5Xi.js.map → sr_only_close_button-ZaGdAHz7.js.map} +1 -1
  79. package/dist/vue2/chunks/stack_constants-HraCekPm.js +15 -0
  80. package/dist/vue2/chunks/{stack_constants-m9Ickqw0.js.map → stack_constants-HraCekPm.js.map} +1 -1
  81. package/dist/vue2/chunks/stack_constants-SMzMWnAQ.js +14 -0
  82. package/dist/{vue3/chunks/stack_constants-m9Ickqw0.js.map → vue2/chunks/stack_constants-SMzMWnAQ.js.map} +1 -1
  83. package/dist/vue2/chunks/tab-FcsV5VmK.js +386 -0
  84. package/dist/vue2/chunks/{tab-7hJQSLFx.js.map → tab-FcsV5VmK.js.map} +1 -1
  85. package/dist/vue2/chunks/tab-V4cb44Ry.js +387 -0
  86. package/dist/vue2/chunks/{tab-Qm9LVkYj.js.map → tab-V4cb44Ry.js.map} +1 -1
  87. package/dist/vue2/common/constants.cjs +60 -0
  88. package/dist/vue2/{lib → common}/constants.cjs.map +1 -1
  89. package/dist/{vue3/lib → vue2/common}/constants.js +25 -18
  90. package/dist/vue2/{lib → common}/constants.js.map +1 -1
  91. package/dist/vue2/common/dates.cjs +72 -0
  92. package/dist/{vue3/lib → vue2/common}/dates.cjs.map +1 -1
  93. package/dist/vue2/common/dates.js +72 -0
  94. package/dist/vue2/{lib → common}/dates.js.map +1 -1
  95. package/dist/vue2/common/emoji.cjs +163 -0
  96. package/dist/vue2/common/emoji.cjs.map +1 -0
  97. package/dist/vue2/common/emoji.js +168 -0
  98. package/dist/vue2/common/emoji.js.map +1 -0
  99. package/dist/vue2/common/mixins.cjs +17 -0
  100. package/dist/vue2/{lib → common}/mixins.cjs.map +1 -1
  101. package/dist/vue2/common/mixins.js +17 -0
  102. package/dist/vue2/common/utils.cjs +237 -0
  103. package/dist/vue2/{lib → common}/utils.cjs.map +1 -1
  104. package/dist/vue2/common/utils.js +237 -0
  105. package/dist/vue2/{lib → common}/utils.js.map +1 -1
  106. package/dist/vue2/common/validators.cjs +23 -0
  107. package/dist/vue2/{lib → common}/validators.cjs.map +1 -1
  108. package/dist/vue2/common/validators.js +23 -0
  109. package/dist/vue2/{lib → common}/validators.js.map +1 -1
  110. package/dist/vue2/dialtone-vue.cjs +372 -1
  111. package/dist/vue2/dialtone-vue.cjs.map +1 -1
  112. package/dist/vue2/dialtone-vue.js +325 -324
  113. package/dist/vue2/dialtone-vue.js.map +1 -1
  114. package/dist/vue2/lib/attachment-carousel.cjs +260 -1
  115. package/dist/vue2/lib/attachment-carousel.cjs.map +1 -1
  116. package/dist/vue2/lib/attachment-carousel.js +96 -84
  117. package/dist/vue2/lib/attachment-carousel.js.map +1 -1
  118. package/dist/vue2/lib/avatar.cjs +399 -1
  119. package/dist/vue2/lib/avatar.cjs.map +1 -1
  120. package/dist/vue2/lib/avatar.js +111 -79
  121. package/dist/vue2/lib/avatar.js.map +1 -1
  122. package/dist/vue2/lib/badge.cjs +182 -1
  123. package/dist/vue2/lib/badge.cjs.map +1 -1
  124. package/dist/vue2/lib/badge.js +53 -38
  125. package/dist/vue2/lib/badge.js.map +1 -1
  126. package/dist/vue2/lib/banner.cjs +209 -2
  127. package/dist/vue2/lib/banner.cjs.map +1 -1
  128. package/dist/vue2/lib/banner.js +58 -47
  129. package/dist/vue2/lib/banner.js.map +1 -1
  130. package/dist/vue2/lib/breadcrumbs.cjs +146 -1
  131. package/dist/vue2/lib/breadcrumbs.cjs.map +1 -1
  132. package/dist/vue2/lib/breadcrumbs.js +57 -48
  133. package/dist/vue2/lib/breadcrumbs.js.map +1 -1
  134. package/dist/vue2/lib/button-group.cjs +47 -1
  135. package/dist/vue2/lib/button-group.cjs.map +1 -1
  136. package/dist/vue2/lib/button-group.js +21 -18
  137. package/dist/vue2/lib/button-group.js.map +1 -1
  138. package/dist/vue2/lib/button.cjs +349 -1
  139. package/dist/vue2/lib/button.cjs.map +1 -1
  140. package/dist/vue2/lib/button.js +98 -76
  141. package/dist/vue2/lib/button.js.map +1 -1
  142. package/dist/vue2/lib/callbar-button-with-popover.cjs +249 -1
  143. package/dist/vue2/lib/callbar-button-with-popover.cjs.map +1 -1
  144. package/dist/vue2/lib/callbar-button-with-popover.js +66 -50
  145. package/dist/vue2/lib/callbar-button-with-popover.js.map +1 -1
  146. package/dist/vue2/lib/callbar-button.cjs +182 -1
  147. package/dist/vue2/lib/callbar-button.cjs.map +1 -1
  148. package/dist/vue2/lib/callbar-button.js +42 -34
  149. package/dist/vue2/lib/callbar-button.js.map +1 -1
  150. package/dist/vue2/lib/callbox.cjs +146 -1
  151. package/dist/vue2/lib/callbox.cjs.map +1 -1
  152. package/dist/vue2/lib/callbox.js +38 -32
  153. package/dist/vue2/lib/callbox.js.map +1 -1
  154. package/dist/vue2/lib/card.cjs +73 -1
  155. package/dist/vue2/lib/card.cjs.map +1 -1
  156. package/dist/vue2/lib/card.js +22 -20
  157. package/dist/vue2/lib/card.js.map +1 -1
  158. package/dist/vue2/lib/checkbox-group.cjs +129 -1
  159. package/dist/vue2/lib/checkbox-group.cjs.map +1 -1
  160. package/dist/vue2/lib/checkbox-group.js +42 -29
  161. package/dist/vue2/lib/checkbox-group.js.map +1 -1
  162. package/dist/vue2/lib/checkbox.cjs +127 -1
  163. package/dist/vue2/lib/checkbox.cjs.map +1 -1
  164. package/dist/vue2/lib/checkbox.js +46 -35
  165. package/dist/vue2/lib/checkbox.js.map +1 -1
  166. package/dist/vue2/lib/chip.cjs +198 -1
  167. package/dist/vue2/lib/chip.cjs.map +1 -1
  168. package/dist/vue2/lib/chip.js +59 -45
  169. package/dist/vue2/lib/chip.js.map +1 -1
  170. package/dist/vue2/lib/codeblock.cjs +29 -2
  171. package/dist/vue2/lib/codeblock.cjs.map +1 -1
  172. package/dist/vue2/lib/codeblock.js +15 -14
  173. package/dist/vue2/lib/codeblock.js.map +1 -1
  174. package/dist/vue2/lib/collapsible.cjs +334 -1
  175. package/dist/vue2/lib/collapsible.cjs.map +1 -1
  176. package/dist/vue2/lib/collapsible.js +91 -68
  177. package/dist/vue2/lib/collapsible.js.map +1 -1
  178. package/dist/vue2/lib/combobox-multi-select.cjs +519 -1
  179. package/dist/vue2/lib/combobox-multi-select.cjs.map +1 -1
  180. package/dist/vue2/lib/combobox-multi-select.js +223 -136
  181. package/dist/vue2/lib/combobox-multi-select.js.map +1 -1
  182. package/dist/vue2/lib/combobox-with-popover.cjs +384 -1
  183. package/dist/vue2/lib/combobox-with-popover.cjs.map +1 -1
  184. package/dist/vue2/lib/combobox-with-popover.js +130 -86
  185. package/dist/vue2/lib/combobox-with-popover.js.map +1 -1
  186. package/dist/vue2/lib/combobox.cjs +18 -1
  187. package/dist/vue2/lib/combobox.cjs.map +1 -1
  188. package/dist/vue2/lib/combobox.js +9 -9
  189. package/dist/vue2/lib/contact-info.cjs +145 -1
  190. package/dist/vue2/lib/contact-info.cjs.map +1 -1
  191. package/dist/vue2/lib/contact-info.js +34 -32
  192. package/dist/vue2/lib/contact-info.js.map +1 -1
  193. package/dist/vue2/lib/contact-row.cjs +205 -1
  194. package/dist/vue2/lib/contact-row.cjs.map +1 -1
  195. package/dist/vue2/lib/contact-row.js +42 -39
  196. package/dist/vue2/lib/contact-row.js.map +1 -1
  197. package/dist/vue2/lib/datepicker.cjs +662 -1
  198. package/dist/vue2/lib/datepicker.cjs.map +1 -1
  199. package/dist/vue2/lib/datepicker.js +330 -218
  200. package/dist/vue2/lib/datepicker.js.map +1 -1
  201. package/dist/vue2/lib/description-list.cjs +114 -1
  202. package/dist/vue2/lib/description-list.cjs.map +1 -1
  203. package/dist/vue2/lib/description-list.js +51 -19
  204. package/dist/vue2/lib/description-list.js.map +1 -1
  205. package/dist/vue2/lib/dropdown.cjs +45 -1
  206. package/dist/vue2/lib/dropdown.cjs.map +1 -1
  207. package/dist/vue2/lib/dropdown.js +27 -25
  208. package/dist/vue2/lib/dropdown.js.map +1 -1
  209. package/dist/vue2/lib/editor.cjs +555 -1
  210. package/dist/vue2/lib/editor.cjs.map +1 -1
  211. package/dist/vue2/lib/editor.js +191 -162
  212. package/dist/vue2/lib/editor.js.map +1 -1
  213. package/dist/vue2/lib/emoji-picker.cjs +1063 -1
  214. package/dist/vue2/lib/emoji-picker.cjs.map +1 -1
  215. package/dist/vue2/lib/emoji-picker.js +638 -374
  216. package/dist/vue2/lib/emoji-picker.js.map +1 -1
  217. package/dist/vue2/lib/emoji-row.cjs +88 -1
  218. package/dist/vue2/lib/emoji-row.cjs.map +1 -1
  219. package/dist/vue2/lib/emoji-row.js +46 -40
  220. package/dist/vue2/lib/emoji-row.js.map +1 -1
  221. package/dist/vue2/lib/emoji-text-wrapper.cjs +109 -1
  222. package/dist/vue2/lib/emoji-text-wrapper.cjs.map +1 -1
  223. package/dist/vue2/lib/emoji-text-wrapper.js +49 -35
  224. package/dist/vue2/lib/emoji-text-wrapper.js.map +1 -1
  225. package/dist/vue2/lib/emoji.cjs +145 -1
  226. package/dist/vue2/lib/emoji.cjs.map +1 -1
  227. package/dist/vue2/lib/emoji.js +140 -5
  228. package/dist/vue2/lib/emoji.js.map +1 -1
  229. package/dist/vue2/lib/feed-item-row.cjs +213 -1
  230. package/dist/vue2/lib/feed-item-row.cjs.map +1 -1
  231. package/dist/vue2/lib/feed-item-row.js +71 -63
  232. package/dist/vue2/lib/feed-item-row.js.map +1 -1
  233. package/dist/vue2/lib/feed-pill.cjs +149 -1
  234. package/dist/vue2/lib/feed-pill.cjs.map +1 -1
  235. package/dist/vue2/lib/feed-pill.js +60 -51
  236. package/dist/vue2/lib/feed-pill.js.map +1 -1
  237. package/dist/vue2/lib/general-row.cjs +405 -1
  238. package/dist/vue2/lib/general-row.cjs.map +1 -1
  239. package/dist/vue2/lib/general-row.js +133 -106
  240. package/dist/vue2/lib/general-row.js.map +1 -1
  241. package/dist/vue2/lib/group-row.cjs +117 -1
  242. package/dist/vue2/lib/group-row.cjs.map +1 -1
  243. package/dist/vue2/lib/group-row.js +33 -30
  244. package/dist/vue2/lib/group-row.js.map +1 -1
  245. package/dist/vue2/lib/grouped-chip.cjs +45 -1
  246. package/dist/vue2/lib/grouped-chip.cjs.map +1 -1
  247. package/dist/vue2/lib/grouped-chip.js +28 -26
  248. package/dist/vue2/lib/grouped-chip.js.map +1 -1
  249. package/dist/vue2/lib/hovercard.cjs +227 -1
  250. package/dist/vue2/lib/hovercard.cjs.map +1 -1
  251. package/dist/vue2/lib/hovercard.js +98 -63
  252. package/dist/vue2/lib/hovercard.js.map +1 -1
  253. package/dist/vue2/lib/icon.cjs +59 -1
  254. package/dist/vue2/lib/icon.cjs.map +1 -1
  255. package/dist/vue2/lib/icon.js +22 -20
  256. package/dist/vue2/lib/icon.js.map +1 -1
  257. package/dist/vue2/lib/image-viewer.cjs +190 -1
  258. package/dist/vue2/lib/image-viewer.cjs.map +1 -1
  259. package/dist/vue2/lib/image-viewer.js +83 -62
  260. package/dist/vue2/lib/image-viewer.js.map +1 -1
  261. package/dist/vue2/lib/input-group.cjs +91 -1
  262. package/dist/vue2/lib/input-group.cjs.map +1 -1
  263. package/dist/vue2/lib/input-group.js +29 -27
  264. package/dist/vue2/lib/input-group.js.map +1 -1
  265. package/dist/vue2/lib/input.cjs +492 -1
  266. package/dist/vue2/lib/input.cjs.map +1 -1
  267. package/dist/vue2/lib/input.js +127 -89
  268. package/dist/vue2/lib/input.js.map +1 -1
  269. package/dist/vue2/lib/item-layout.cjs +40 -1
  270. package/dist/vue2/lib/item-layout.cjs.map +1 -1
  271. package/dist/vue2/lib/item-layout.js +15 -13
  272. package/dist/vue2/lib/item-layout.js.map +1 -1
  273. package/dist/vue2/lib/ivr-node.cjs +209 -1
  274. package/dist/vue2/lib/ivr-node.cjs.map +1 -1
  275. package/dist/vue2/lib/ivr-node.js +115 -99
  276. package/dist/vue2/lib/ivr-node.js.map +1 -1
  277. package/dist/vue2/lib/keyboard-shortcut.cjs +106 -1
  278. package/dist/vue2/lib/keyboard-shortcut.cjs.map +1 -1
  279. package/dist/vue2/lib/keyboard-shortcut.js +42 -34
  280. package/dist/vue2/lib/keyboard-shortcut.js.map +1 -1
  281. package/dist/vue2/lib/lazy-show.cjs +80 -1
  282. package/dist/vue2/lib/lazy-show.cjs.map +1 -1
  283. package/dist/vue2/lib/lazy-show.js +20 -16
  284. package/dist/vue2/lib/lazy-show.js.map +1 -1
  285. package/dist/vue2/lib/link.cjs +70 -1
  286. package/dist/vue2/lib/link.cjs.map +1 -1
  287. package/dist/vue2/lib/link.js +22 -20
  288. package/dist/vue2/lib/link.js.map +1 -1
  289. package/dist/vue2/lib/list-item-group.cjs +60 -1
  290. package/dist/vue2/lib/list-item-group.cjs.map +1 -1
  291. package/dist/vue2/lib/list-item-group.js +19 -17
  292. package/dist/vue2/lib/list-item-group.js.map +1 -1
  293. package/dist/vue2/lib/list-item.cjs +204 -1
  294. package/dist/vue2/lib/list-item.cjs.map +1 -1
  295. package/dist/vue2/lib/list-item.js +67 -56
  296. package/dist/vue2/lib/list-item.js.map +1 -1
  297. package/dist/vue2/lib/message-input.cjs +554 -1
  298. package/dist/vue2/lib/message-input.cjs.map +1 -1
  299. package/dist/vue2/lib/message-input.js +174 -152
  300. package/dist/vue2/lib/message-input.js.map +1 -1
  301. package/dist/vue2/lib/modal.cjs +350 -2
  302. package/dist/vue2/lib/modal.cjs.map +1 -1
  303. package/dist/vue2/lib/modal.js +118 -90
  304. package/dist/vue2/lib/modal.js.map +1 -1
  305. package/dist/vue2/lib/notice.cjs +159 -1
  306. package/dist/vue2/lib/notice.cjs.map +1 -1
  307. package/dist/vue2/lib/notice.js +46 -43
  308. package/dist/vue2/lib/notice.js.map +1 -1
  309. package/dist/vue2/lib/pagination.cjs +152 -1
  310. package/dist/vue2/lib/pagination.cjs.map +1 -1
  311. package/dist/vue2/lib/pagination.js +60 -48
  312. package/dist/vue2/lib/pagination.js.map +1 -1
  313. package/dist/vue2/lib/popover.cjs +956 -1
  314. package/dist/vue2/lib/popover.cjs.map +1 -1
  315. package/dist/vue2/lib/popover.js +401 -221
  316. package/dist/vue2/lib/popover.js.map +1 -1
  317. package/dist/vue2/lib/presence.cjs +65 -1
  318. package/dist/vue2/lib/presence.cjs.map +1 -1
  319. package/dist/vue2/lib/presence.js +32 -26
  320. package/dist/vue2/lib/presence.js.map +1 -1
  321. package/dist/vue2/lib/radio-group.cjs +98 -1
  322. package/dist/vue2/lib/radio-group.cjs.map +1 -1
  323. package/dist/vue2/lib/radio-group.js +24 -22
  324. package/dist/vue2/lib/radio-group.js.map +1 -1
  325. package/dist/vue2/lib/radio.cjs +118 -1
  326. package/dist/vue2/lib/radio.cjs.map +1 -1
  327. package/dist/vue2/lib/radio.js +43 -35
  328. package/dist/vue2/lib/radio.js.map +1 -1
  329. package/dist/vue2/lib/rich-text-editor.cjs +1138 -1
  330. package/dist/vue2/lib/rich-text-editor.cjs.map +1 -1
  331. package/dist/vue2/lib/rich-text-editor.js +574 -387
  332. package/dist/vue2/lib/rich-text-editor.js.map +1 -1
  333. package/dist/vue2/lib/root-layout.cjs +130 -1
  334. package/dist/vue2/lib/root-layout.cjs.map +1 -1
  335. package/dist/vue2/lib/root-layout.js +28 -24
  336. package/dist/vue2/lib/root-layout.js.map +1 -1
  337. package/dist/vue2/lib/select-menu.cjs +282 -1
  338. package/dist/vue2/lib/select-menu.cjs.map +1 -1
  339. package/dist/vue2/lib/select-menu.js +101 -61
  340. package/dist/vue2/lib/select-menu.js.map +1 -1
  341. package/dist/vue2/lib/settings-menu-button.cjs +65 -1
  342. package/dist/vue2/lib/settings-menu-button.cjs.map +1 -1
  343. package/dist/vue2/lib/settings-menu-button.js +26 -24
  344. package/dist/vue2/lib/settings-menu-button.js.map +1 -1
  345. package/dist/vue2/lib/skeleton.cjs +612 -1
  346. package/dist/vue2/lib/skeleton.cjs.map +1 -1
  347. package/dist/vue2/lib/skeleton.js +174 -135
  348. package/dist/vue2/lib/skeleton.js.map +1 -1
  349. package/dist/vue2/lib/stack.cjs +127 -1
  350. package/dist/vue2/lib/stack.cjs.map +1 -1
  351. package/dist/vue2/lib/stack.js +66 -56
  352. package/dist/vue2/lib/stack.js.map +1 -1
  353. package/dist/vue2/lib/tabs.cjs +99 -1
  354. package/dist/vue2/lib/tabs.cjs.map +1 -1
  355. package/dist/vue2/lib/tabs.js +42 -35
  356. package/dist/vue2/lib/tabs.js.map +1 -1
  357. package/dist/vue2/lib/time-pill.cjs +47 -1
  358. package/dist/vue2/lib/time-pill.cjs.map +1 -1
  359. package/dist/vue2/lib/time-pill.js +21 -16
  360. package/dist/vue2/lib/time-pill.js.map +1 -1
  361. package/dist/vue2/lib/toast.cjs +247 -1
  362. package/dist/vue2/lib/toast.cjs.map +1 -1
  363. package/dist/vue2/lib/toast.js +78 -55
  364. package/dist/vue2/lib/toast.js.map +1 -1
  365. package/dist/vue2/lib/toggle.cjs +177 -1
  366. package/dist/vue2/lib/toggle.cjs.map +1 -1
  367. package/dist/vue2/lib/toggle.js +46 -37
  368. package/dist/vue2/lib/toggle.js.map +1 -1
  369. package/dist/vue2/lib/tooltip-directive.cjs +87 -1
  370. package/dist/vue2/lib/tooltip-directive.cjs.map +1 -1
  371. package/dist/vue2/lib/tooltip-directive.js +55 -41
  372. package/dist/vue2/lib/tooltip-directive.js.map +1 -1
  373. package/dist/vue2/lib/tooltip.cjs +436 -1
  374. package/dist/vue2/lib/tooltip.cjs.map +1 -1
  375. package/dist/vue2/lib/tooltip.js +152 -90
  376. package/dist/vue2/lib/tooltip.js.map +1 -1
  377. package/dist/vue2/lib/top-banner-info.cjs +63 -1
  378. package/dist/vue2/lib/top-banner-info.cjs.map +1 -1
  379. package/dist/vue2/lib/top-banner-info.js +22 -18
  380. package/dist/vue2/lib/top-banner-info.js.map +1 -1
  381. package/dist/vue2/lib/unread-pill.cjs +63 -1
  382. package/dist/vue2/lib/unread-pill.cjs.map +1 -1
  383. package/dist/vue2/lib/unread-pill.js +25 -21
  384. package/dist/vue2/lib/unread-pill.js.map +1 -1
  385. package/dist/vue2/lib/validation-messages.cjs +85 -1
  386. package/dist/vue2/lib/validation-messages.cjs.map +1 -1
  387. package/dist/vue2/lib/validation-messages.js +32 -29
  388. package/dist/vue2/lib/validation-messages.js.map +1 -1
  389. package/dist/vue2/style.css +1214 -1
  390. package/dist/vue2/types/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.d.ts +2 -2
  391. package/dist/vue2/types/components/rich_text_editor/extensions/mentions/MentionComponent.vue.d.ts +2 -2
  392. package/dist/vue3/chunks/_plugin-vue_export-helper-caHeSgYY.js +11 -0
  393. package/dist/vue3/chunks/_plugin-vue_export-helper-caHeSgYY.js.map +1 -0
  394. package/dist/vue3/chunks/_plugin-vue_export-helper-fhnQq0tA.js +10 -0
  395. package/dist/vue3/chunks/_plugin-vue_export-helper-fhnQq0tA.js.map +1 -0
  396. package/dist/vue3/chunks/{dropdown-eWOvBvwq.js → dropdown-Hn-TeTvZ.js} +151 -104
  397. package/dist/vue3/chunks/{dropdown-UO3UJalk.js.map → dropdown-Hn-TeTvZ.js.map} +1 -1
  398. package/dist/vue3/chunks/dropdown-w8Do29L5.js +442 -0
  399. package/dist/vue3/chunks/{dropdown-eWOvBvwq.js.map → dropdown-w8Do29L5.js.map} +1 -1
  400. package/dist/vue3/chunks/dropdown_constants-2pGCXy7m.js +8 -0
  401. package/dist/vue3/chunks/dropdown_constants-2pGCXy7m.js.map +1 -0
  402. package/dist/vue3/chunks/dropdown_constants-w1MXGC3Z.js +9 -0
  403. package/dist/vue3/chunks/dropdown_constants-w1MXGC3Z.js.map +1 -0
  404. package/dist/vue3/chunks/{icon_constants-OpYAAKwF.js → icon_constants-Dy4MEUJL.js} +7 -6
  405. package/dist/{vue2/chunks/icon_constants-OpYAAKwF.js.map → vue3/chunks/icon_constants-Dy4MEUJL.js.map} +1 -1
  406. package/dist/vue3/chunks/icon_constants-QYpmdE0R.js +16 -0
  407. package/dist/vue3/chunks/{icon_constants-OpYAAKwF.js.map → icon_constants-QYpmdE0R.js.map} +1 -1
  408. package/dist/vue3/chunks/index-We0ixqCH.js +446 -0
  409. package/dist/vue3/chunks/{index-b4iXYvId.js.map → index-We0ixqCH.js.map} +1 -1
  410. package/dist/vue3/chunks/index-xVEqMOTr.js +447 -0
  411. package/dist/vue3/chunks/{index-6tYeqbgP.js.map → index-xVEqMOTr.js.map} +1 -1
  412. package/dist/{vue2/chunks/input-1tm09l_-.js → vue3/chunks/input-NmYDD5bn.js} +83 -60
  413. package/dist/vue3/chunks/{input-0Uksk4DP.js.map → input-NmYDD5bn.js.map} +1 -1
  414. package/dist/vue3/chunks/input-ttnte8zB.js +295 -0
  415. package/dist/vue3/chunks/{input-4UQWegUk.js.map → input-ttnte8zB.js.map} +1 -1
  416. package/dist/vue3/chunks/input_group-M-D25pOJ.js +152 -0
  417. package/dist/vue3/chunks/{input_group-bBKaq3Wi.js.map → input_group-M-D25pOJ.js.map} +1 -1
  418. package/dist/vue3/chunks/{input_group-bBKaq3Wi.js → input_group-jWnq2DJT.js} +27 -24
  419. package/dist/vue3/chunks/{input_group-AS760Cp7.js.map → input_group-jWnq2DJT.js.map} +1 -1
  420. package/dist/vue3/chunks/keyboard_list_navigation-ScXhrxya.js +284 -0
  421. package/dist/vue3/chunks/{keyboard_list_navigation-N74Bpdq7.js.map → keyboard_list_navigation-ScXhrxya.js.map} +1 -1
  422. package/dist/vue3/chunks/keyboard_list_navigation-fJnl_Iox.js +283 -0
  423. package/dist/{vue2/chunks/keyboard_list_navigation-F0O8nht0.js.map → vue3/chunks/keyboard_list_navigation-fJnl_Iox.js.map} +1 -1
  424. package/dist/vue3/chunks/link_constants-Huj7D_hm.js +22 -0
  425. package/dist/{vue2/chunks/link_constants-vIUB92L4.js.map → vue3/chunks/link_constants-Huj7D_hm.js.map} +1 -1
  426. package/dist/vue3/chunks/link_constants-nWVlXQBs.js +23 -0
  427. package/dist/vue3/chunks/{link_constants-vIUB92L4.js.map → link_constants-nWVlXQBs.js.map} +1 -1
  428. package/dist/vue3/chunks/list_item_constants-EiqkqZvP.js +13 -0
  429. package/dist/{vue2/chunks/list_item_constants-LTUc74pD.js.map → vue3/chunks/list_item_constants-EiqkqZvP.js.map} +1 -1
  430. package/dist/vue3/chunks/list_item_constants-u1xcN9Dd.js +14 -0
  431. package/dist/vue3/chunks/{list_item_constants-LTUc74pD.js.map → list_item_constants-u1xcN9Dd.js.map} +1 -1
  432. package/dist/vue3/chunks/modal-VgxXAQFP.js +105 -0
  433. package/dist/vue3/chunks/{modal-qEzlo0Sj.js.map → modal-VgxXAQFP.js.map} +1 -1
  434. package/dist/vue3/chunks/modal-XOr4kiNZ.js +106 -0
  435. package/dist/{vue2/chunks/modal-VuMFkZFH.js.map → vue3/chunks/modal-XOr4kiNZ.js.map} +1 -1
  436. package/dist/vue3/chunks/notice_action-WTucGhvr.js +222 -0
  437. package/dist/vue3/chunks/{notice_action-tJfD5Qw1.js.map → notice_action-WTucGhvr.js.map} +1 -1
  438. package/dist/vue3/chunks/notice_action-p-ePanW_.js +223 -0
  439. package/dist/vue3/chunks/{notice_action-jO199emq.js.map → notice_action-p-ePanW_.js.map} +1 -1
  440. package/dist/vue3/chunks/notice_constants-7Qt2CQEY.js +7 -0
  441. package/dist/{vue2/chunks/notice_constants-c--hBFQw.js.map → vue3/chunks/notice_constants-7Qt2CQEY.js.map} +1 -1
  442. package/dist/vue3/chunks/notice_constants-UXo9e3bS.js +6 -0
  443. package/dist/vue3/chunks/{notice_constants-c--hBFQw.js.map → notice_constants-UXo9e3bS.js.map} +1 -1
  444. package/dist/vue3/chunks/popover_constants-JwBF9h1Z.js +143 -0
  445. package/dist/{vue2/chunks/popover_constants-qjlEkroB.js.map → vue3/chunks/popover_constants-JwBF9h1Z.js.map} +1 -1
  446. package/dist/vue3/chunks/popover_constants-Qkpb0yh2.js +144 -0
  447. package/dist/vue3/chunks/{popover_constants-qjlEkroB.js.map → popover_constants-Qkpb0yh2.js.map} +1 -1
  448. package/dist/vue3/chunks/{sr_only_close_button-7O-Ev8uM.js → sr_only_close_button-3EdsV-dH.js} +28 -24
  449. package/dist/vue3/chunks/{sr_only_close_button-iD7s1Pbj.js.map → sr_only_close_button-3EdsV-dH.js.map} +1 -1
  450. package/dist/vue3/chunks/sr_only_close_button-xGrHFjwA.js +91 -0
  451. package/dist/vue3/chunks/{sr_only_close_button-7O-Ev8uM.js.map → sr_only_close_button-xGrHFjwA.js.map} +1 -1
  452. package/dist/vue3/chunks/stack_constants-HraCekPm.js +15 -0
  453. package/dist/{vue2/chunks/stack_constants-u7tNqGtc.js.map → vue3/chunks/stack_constants-HraCekPm.js.map} +1 -1
  454. package/dist/vue3/chunks/stack_constants-SMzMWnAQ.js +14 -0
  455. package/dist/vue3/chunks/{stack_constants-u7tNqGtc.js.map → stack_constants-SMzMWnAQ.js.map} +1 -1
  456. package/dist/vue3/chunks/tab-RTDgnD9-.js +391 -0
  457. package/dist/vue3/chunks/{tab-at7WWglk.js.map → tab-RTDgnD9-.js.map} +1 -1
  458. package/dist/vue3/chunks/tab-qc3f42Yp.js +390 -0
  459. package/dist/vue3/chunks/{tab-GQZFMq83.js.map → tab-qc3f42Yp.js.map} +1 -1
  460. package/dist/vue3/common/constants.cjs +60 -0
  461. package/dist/vue3/{lib → common}/constants.cjs.map +1 -1
  462. package/dist/{vue2/lib → vue3/common}/constants.js +25 -18
  463. package/dist/vue3/{lib → common}/constants.js.map +1 -1
  464. package/dist/vue3/common/dates.cjs +72 -0
  465. package/dist/{vue2/lib → vue3/common}/dates.cjs.map +1 -1
  466. package/dist/vue3/common/dates.js +72 -0
  467. package/dist/vue3/{lib → common}/dates.js.map +1 -1
  468. package/dist/vue3/common/emoji.cjs +163 -0
  469. package/dist/vue3/common/emoji.cjs.map +1 -0
  470. package/dist/vue3/common/emoji.js +168 -0
  471. package/dist/vue3/common/emoji.js.map +1 -0
  472. package/dist/vue3/common/mixins.cjs +17 -0
  473. package/dist/vue3/{lib → common}/mixins.cjs.map +1 -1
  474. package/dist/vue3/common/mixins.js +17 -0
  475. package/dist/vue3/common/utils.cjs +243 -0
  476. package/dist/vue3/{lib → common}/utils.cjs.map +1 -1
  477. package/dist/vue3/common/utils.js +243 -0
  478. package/dist/vue3/{lib → common}/utils.js.map +1 -1
  479. package/dist/vue3/common/validators.cjs +23 -0
  480. package/dist/vue3/{lib → common}/validators.cjs.map +1 -1
  481. package/dist/vue3/common/validators.js +23 -0
  482. package/dist/vue3/{lib → common}/validators.js.map +1 -1
  483. package/dist/vue3/dialtone-vue.cjs +373 -1
  484. package/dist/vue3/dialtone-vue.cjs.map +1 -1
  485. package/dist/vue3/dialtone-vue.js +328 -327
  486. package/dist/vue3/dialtone-vue.js.map +1 -1
  487. package/dist/vue3/lib/attachment-carousel.cjs +345 -1
  488. package/dist/vue3/lib/attachment-carousel.cjs.map +1 -1
  489. package/dist/vue3/lib/attachment-carousel.js +126 -108
  490. package/dist/vue3/lib/attachment-carousel.js.map +1 -1
  491. package/dist/vue3/lib/avatar.cjs +447 -1
  492. package/dist/vue3/lib/avatar.cjs.map +1 -1
  493. package/dist/vue3/lib/avatar.js +135 -101
  494. package/dist/vue3/lib/avatar.js.map +1 -1
  495. package/dist/vue3/lib/badge.cjs +206 -1
  496. package/dist/vue3/lib/badge.cjs.map +1 -1
  497. package/dist/vue3/lib/badge.js +64 -48
  498. package/dist/vue3/lib/badge.js.map +1 -1
  499. package/dist/vue3/lib/banner.cjs +242 -2
  500. package/dist/vue3/lib/banner.cjs.map +1 -1
  501. package/dist/vue3/lib/banner.js +81 -71
  502. package/dist/vue3/lib/banner.js.map +1 -1
  503. package/dist/vue3/lib/breadcrumbs.cjs +150 -1
  504. package/dist/vue3/lib/breadcrumbs.cjs.map +1 -1
  505. package/dist/vue3/lib/breadcrumbs.js +60 -52
  506. package/dist/vue3/lib/breadcrumbs.js.map +1 -1
  507. package/dist/vue3/lib/button-group.cjs +41 -1
  508. package/dist/vue3/lib/button-group.cjs.map +1 -1
  509. package/dist/vue3/lib/button-group.js +15 -14
  510. package/dist/vue3/lib/button-group.js.map +1 -1
  511. package/dist/vue3/lib/button.cjs +356 -1
  512. package/dist/vue3/lib/button.cjs.map +1 -1
  513. package/dist/vue3/lib/button.js +108 -88
  514. package/dist/vue3/lib/button.js.map +1 -1
  515. package/dist/vue3/lib/callbar-button-with-popover.cjs +322 -1
  516. package/dist/vue3/lib/callbar-button-with-popover.cjs.map +1 -1
  517. package/dist/vue3/lib/callbar-button-with-popover.js +101 -83
  518. package/dist/vue3/lib/callbar-button-with-popover.js.map +1 -1
  519. package/dist/vue3/lib/callbar-button.cjs +200 -1
  520. package/dist/vue3/lib/callbar-button.cjs.map +1 -1
  521. package/dist/vue3/lib/callbar-button.js +52 -45
  522. package/dist/vue3/lib/callbar-button.js.map +1 -1
  523. package/dist/vue3/lib/callbox.cjs +217 -1
  524. package/dist/vue3/lib/callbox.cjs.map +1 -1
  525. package/dist/vue3/lib/callbox.js +80 -67
  526. package/dist/vue3/lib/callbox.js.map +1 -1
  527. package/dist/vue3/lib/card.cjs +91 -1
  528. package/dist/vue3/lib/card.cjs.map +1 -1
  529. package/dist/vue3/lib/card.js +27 -27
  530. package/dist/vue3/lib/card.js.map +1 -1
  531. package/dist/vue3/lib/checkbox-group.cjs +115 -1
  532. package/dist/vue3/lib/checkbox-group.cjs.map +1 -1
  533. package/dist/vue3/lib/checkbox-group.js +34 -23
  534. package/dist/vue3/lib/checkbox-group.js.map +1 -1
  535. package/dist/vue3/lib/checkbox.cjs +156 -1
  536. package/dist/vue3/lib/checkbox.cjs.map +1 -1
  537. package/dist/vue3/lib/checkbox.js +72 -60
  538. package/dist/vue3/lib/checkbox.js.map +1 -1
  539. package/dist/vue3/lib/chip.cjs +235 -1
  540. package/dist/vue3/lib/chip.cjs.map +1 -1
  541. package/dist/vue3/lib/chip.js +84 -67
  542. package/dist/vue3/lib/chip.js.map +1 -1
  543. package/dist/vue3/lib/codeblock.cjs +23 -2
  544. package/dist/vue3/lib/codeblock.cjs.map +1 -1
  545. package/dist/vue3/lib/codeblock.js +13 -13
  546. package/dist/vue3/lib/codeblock.js.map +1 -1
  547. package/dist/vue3/lib/collapsible.cjs +398 -1
  548. package/dist/vue3/lib/collapsible.cjs.map +1 -1
  549. package/dist/vue3/lib/collapsible.js +123 -100
  550. package/dist/vue3/lib/collapsible.js.map +1 -1
  551. package/dist/vue3/lib/combobox-multi-select.cjs +589 -1
  552. package/dist/vue3/lib/combobox-multi-select.cjs.map +1 -1
  553. package/dist/vue3/lib/combobox-multi-select.js +270 -177
  554. package/dist/vue3/lib/combobox-multi-select.js.map +1 -1
  555. package/dist/vue3/lib/combobox-with-popover.cjs +452 -1
  556. package/dist/vue3/lib/combobox-with-popover.cjs.map +1 -1
  557. package/dist/vue3/lib/combobox-with-popover.js +172 -127
  558. package/dist/vue3/lib/combobox-with-popover.js.map +1 -1
  559. package/dist/vue3/lib/combobox.cjs +18 -1
  560. package/dist/vue3/lib/combobox.cjs.map +1 -1
  561. package/dist/vue3/lib/combobox.js +9 -9
  562. package/dist/vue3/lib/contact-info.cjs +205 -1
  563. package/dist/vue3/lib/contact-info.cjs.map +1 -1
  564. package/dist/vue3/lib/contact-info.js +69 -60
  565. package/dist/vue3/lib/contact-info.js.map +1 -1
  566. package/dist/vue3/lib/contact-row.cjs +246 -1
  567. package/dist/vue3/lib/contact-row.cjs.map +1 -1
  568. package/dist/vue3/lib/contact-row.js +67 -63
  569. package/dist/vue3/lib/contact-row.js.map +1 -1
  570. package/dist/vue3/lib/datepicker.cjs +854 -1
  571. package/dist/vue3/lib/datepicker.cjs.map +1 -1
  572. package/dist/vue3/lib/datepicker.js +585 -441
  573. package/dist/vue3/lib/datepicker.js.map +1 -1
  574. package/dist/vue3/lib/description-list.cjs +116 -1
  575. package/dist/vue3/lib/description-list.cjs.map +1 -1
  576. package/dist/vue3/lib/description-list.js +56 -24
  577. package/dist/vue3/lib/description-list.js.map +1 -1
  578. package/dist/vue3/lib/dropdown.cjs +36 -1
  579. package/dist/vue3/lib/dropdown.cjs.map +1 -1
  580. package/dist/vue3/lib/dropdown.js +22 -21
  581. package/dist/vue3/lib/dropdown.js.map +1 -1
  582. package/dist/vue3/lib/editor.cjs +711 -1
  583. package/dist/vue3/lib/editor.cjs.map +1 -1
  584. package/dist/vue3/lib/editor.js +271 -235
  585. package/dist/vue3/lib/editor.js.map +1 -1
  586. package/dist/vue3/lib/emoji-picker.cjs +1277 -1
  587. package/dist/vue3/lib/emoji-picker.cjs.map +1 -1
  588. package/dist/vue3/lib/emoji-picker.js +859 -569
  589. package/dist/vue3/lib/emoji-picker.js.map +1 -1
  590. package/dist/vue3/lib/emoji-row.cjs +128 -1
  591. package/dist/vue3/lib/emoji-row.cjs.map +1 -1
  592. package/dist/vue3/lib/emoji-row.js +89 -75
  593. package/dist/vue3/lib/emoji-row.js.map +1 -1
  594. package/dist/vue3/lib/emoji-text-wrapper.cjs +102 -1
  595. package/dist/vue3/lib/emoji-text-wrapper.cjs.map +1 -1
  596. package/dist/vue3/lib/emoji-text-wrapper.js +42 -31
  597. package/dist/vue3/lib/emoji-text-wrapper.js.map +1 -1
  598. package/dist/vue3/lib/emoji.cjs +157 -1
  599. package/dist/vue3/lib/emoji.cjs.map +1 -1
  600. package/dist/vue3/lib/emoji.js +152 -6
  601. package/dist/vue3/lib/emoji.js.map +1 -1
  602. package/dist/vue3/lib/feed-item-row.cjs +296 -1
  603. package/dist/vue3/lib/feed-item-row.cjs.map +1 -1
  604. package/dist/vue3/lib/feed-item-row.js +119 -100
  605. package/dist/vue3/lib/feed-item-row.js.map +1 -1
  606. package/dist/vue3/lib/feed-pill.cjs +173 -1
  607. package/dist/vue3/lib/feed-pill.cjs.map +1 -1
  608. package/dist/vue3/lib/feed-pill.js +70 -57
  609. package/dist/vue3/lib/feed-pill.js.map +1 -1
  610. package/dist/vue3/lib/general-row.cjs +518 -1
  611. package/dist/vue3/lib/general-row.cjs.map +1 -1
  612. package/dist/vue3/lib/general-row.js +186 -148
  613. package/dist/vue3/lib/general-row.js.map +1 -1
  614. package/dist/vue3/lib/group-row.cjs +116 -1
  615. package/dist/vue3/lib/group-row.cjs.map +1 -1
  616. package/dist/vue3/lib/group-row.js +37 -35
  617. package/dist/vue3/lib/group-row.js.map +1 -1
  618. package/dist/vue3/lib/grouped-chip.cjs +96 -1
  619. package/dist/vue3/lib/grouped-chip.cjs.map +1 -1
  620. package/dist/vue3/lib/grouped-chip.js +51 -46
  621. package/dist/vue3/lib/grouped-chip.js.map +1 -1
  622. package/dist/vue3/lib/hovercard.cjs +223 -1
  623. package/dist/vue3/lib/hovercard.cjs.map +1 -1
  624. package/dist/vue3/lib/hovercard.js +115 -80
  625. package/dist/vue3/lib/hovercard.js.map +1 -1
  626. package/dist/vue3/lib/icon.cjs +58 -1
  627. package/dist/vue3/lib/icon.cjs.map +1 -1
  628. package/dist/vue3/lib/icon.js +20 -20
  629. package/dist/vue3/lib/icon.js.map +1 -1
  630. package/dist/vue3/lib/image-viewer.cjs +243 -1
  631. package/dist/vue3/lib/image-viewer.cjs.map +1 -1
  632. package/dist/vue3/lib/image-viewer.js +104 -80
  633. package/dist/vue3/lib/image-viewer.js.map +1 -1
  634. package/dist/vue3/lib/input-group.cjs +91 -1
  635. package/dist/vue3/lib/input-group.cjs.map +1 -1
  636. package/dist/vue3/lib/input-group.js +41 -39
  637. package/dist/vue3/lib/input-group.js.map +1 -1
  638. package/dist/vue3/lib/input.cjs +578 -1
  639. package/dist/vue3/lib/input.cjs.map +1 -1
  640. package/dist/vue3/lib/input.js +185 -137
  641. package/dist/vue3/lib/input.js.map +1 -1
  642. package/dist/vue3/lib/item-layout.cjs +91 -1
  643. package/dist/vue3/lib/item-layout.cjs.map +1 -1
  644. package/dist/vue3/lib/item-layout.js +45 -39
  645. package/dist/vue3/lib/item-layout.js.map +1 -1
  646. package/dist/vue3/lib/ivr-node.cjs +263 -1
  647. package/dist/vue3/lib/ivr-node.cjs.map +1 -1
  648. package/dist/vue3/lib/ivr-node.js +130 -112
  649. package/dist/vue3/lib/ivr-node.js.map +1 -1
  650. package/dist/vue3/lib/keyboard-shortcut.cjs +119 -1
  651. package/dist/vue3/lib/keyboard-shortcut.cjs.map +1 -1
  652. package/dist/vue3/lib/keyboard-shortcut.js +58 -48
  653. package/dist/vue3/lib/keyboard-shortcut.js.map +1 -1
  654. package/dist/vue3/lib/lazy-show.cjs +82 -1
  655. package/dist/vue3/lib/lazy-show.cjs.map +1 -1
  656. package/dist/vue3/lib/lazy-show.js +21 -19
  657. package/dist/vue3/lib/lazy-show.js.map +1 -1
  658. package/dist/vue3/lib/link.cjs +43 -1
  659. package/dist/vue3/lib/link.cjs.map +1 -1
  660. package/dist/vue3/lib/link.js +20 -19
  661. package/dist/vue3/lib/link.js.map +1 -1
  662. package/dist/vue3/lib/list-item-group.cjs +67 -1
  663. package/dist/vue3/lib/list-item-group.cjs.map +1 -1
  664. package/dist/vue3/lib/list-item-group.js +24 -22
  665. package/dist/vue3/lib/list-item-group.js.map +1 -1
  666. package/dist/vue3/lib/list-item.cjs +216 -1
  667. package/dist/vue3/lib/list-item.cjs.map +1 -1
  668. package/dist/vue3/lib/list-item.js +71 -60
  669. package/dist/vue3/lib/list-item.js.map +1 -1
  670. package/dist/vue3/lib/message-input.cjs +708 -1
  671. package/dist/vue3/lib/message-input.cjs.map +1 -1
  672. package/dist/vue3/lib/message-input.js +232 -206
  673. package/dist/vue3/lib/message-input.js.map +1 -1
  674. package/dist/vue3/lib/modal.cjs +444 -2
  675. package/dist/vue3/lib/modal.cjs.map +1 -1
  676. package/dist/vue3/lib/modal.js +153 -120
  677. package/dist/vue3/lib/modal.js.map +1 -1
  678. package/dist/vue3/lib/notice.cjs +197 -1
  679. package/dist/vue3/lib/notice.cjs.map +1 -1
  680. package/dist/vue3/lib/notice.js +66 -63
  681. package/dist/vue3/lib/notice.js.map +1 -1
  682. package/dist/vue3/lib/pagination.cjs +205 -1
  683. package/dist/vue3/lib/pagination.cjs.map +1 -1
  684. package/dist/vue3/lib/pagination.js +96 -81
  685. package/dist/vue3/lib/pagination.js.map +1 -1
  686. package/dist/vue3/lib/popover.cjs +1080 -1
  687. package/dist/vue3/lib/popover.cjs.map +1 -1
  688. package/dist/vue3/lib/popover.js +447 -267
  689. package/dist/vue3/lib/popover.js.map +1 -1
  690. package/dist/vue3/lib/presence.cjs +70 -1
  691. package/dist/vue3/lib/presence.cjs.map +1 -1
  692. package/dist/vue3/lib/presence.js +33 -27
  693. package/dist/vue3/lib/presence.js.map +1 -1
  694. package/dist/vue3/lib/radio-group.cjs +88 -1
  695. package/dist/vue3/lib/radio-group.cjs.map +1 -1
  696. package/dist/vue3/lib/radio-group.js +18 -18
  697. package/dist/vue3/lib/radio-group.js.map +1 -1
  698. package/dist/vue3/lib/radio.cjs +162 -1
  699. package/dist/vue3/lib/radio.cjs.map +1 -1
  700. package/dist/vue3/lib/radio.js +66 -57
  701. package/dist/vue3/lib/radio.js.map +1 -1
  702. package/dist/vue3/lib/rich-text-editor.cjs +1137 -1
  703. package/dist/vue3/lib/rich-text-editor.cjs.map +1 -1
  704. package/dist/vue3/lib/rich-text-editor.js +567 -386
  705. package/dist/vue3/lib/rich-text-editor.js.map +1 -1
  706. package/dist/vue3/lib/root-layout.cjs +158 -1
  707. package/dist/vue3/lib/root-layout.cjs.map +1 -1
  708. package/dist/vue3/lib/root-layout.js +33 -31
  709. package/dist/vue3/lib/root-layout.js.map +1 -1
  710. package/dist/vue3/lib/scroller.cjs +1090 -1
  711. package/dist/vue3/lib/scroller.cjs.map +1 -1
  712. package/dist/vue3/lib/scroller.js +668 -345
  713. package/dist/vue3/lib/scroller.js.map +1 -1
  714. package/dist/vue3/lib/select-menu.cjs +312 -1
  715. package/dist/vue3/lib/select-menu.cjs.map +1 -1
  716. package/dist/vue3/lib/select-menu.js +124 -79
  717. package/dist/vue3/lib/select-menu.js.map +1 -1
  718. package/dist/vue3/lib/settings-menu-button.cjs +77 -1
  719. package/dist/vue3/lib/settings-menu-button.cjs.map +1 -1
  720. package/dist/vue3/lib/settings-menu-button.js +31 -30
  721. package/dist/vue3/lib/settings-menu-button.js.map +1 -1
  722. package/dist/vue3/lib/skeleton.cjs +635 -1
  723. package/dist/vue3/lib/skeleton.cjs.map +1 -1
  724. package/dist/vue3/lib/skeleton.js +189 -152
  725. package/dist/vue3/lib/skeleton.js.map +1 -1
  726. package/dist/vue3/lib/stack.cjs +123 -1
  727. package/dist/vue3/lib/stack.cjs.map +1 -1
  728. package/dist/vue3/lib/stack.js +61 -53
  729. package/dist/vue3/lib/stack.js.map +1 -1
  730. package/dist/vue3/lib/tabs.cjs +102 -1
  731. package/dist/vue3/lib/tabs.cjs.map +1 -1
  732. package/dist/vue3/lib/tabs.js +47 -41
  733. package/dist/vue3/lib/tabs.js.map +1 -1
  734. package/dist/vue3/lib/time-pill.cjs +41 -1
  735. package/dist/vue3/lib/time-pill.cjs.map +1 -1
  736. package/dist/vue3/lib/time-pill.js +18 -14
  737. package/dist/vue3/lib/time-pill.js.map +1 -1
  738. package/dist/vue3/lib/toast.cjs +281 -1
  739. package/dist/vue3/lib/toast.cjs.map +1 -1
  740. package/dist/vue3/lib/toast.js +96 -74
  741. package/dist/vue3/lib/toast.js.map +1 -1
  742. package/dist/vue3/lib/toggle.cjs +192 -1
  743. package/dist/vue3/lib/toggle.cjs.map +1 -1
  744. package/dist/vue3/lib/toggle.js +60 -49
  745. package/dist/vue3/lib/toggle.js.map +1 -1
  746. package/dist/vue3/lib/tooltip-directive.cjs +84 -1
  747. package/dist/vue3/lib/tooltip-directive.cjs.map +1 -1
  748. package/dist/vue3/lib/tooltip-directive.js +56 -42
  749. package/dist/vue3/lib/tooltip-directive.js.map +1 -1
  750. package/dist/vue3/lib/tooltip.cjs +460 -1
  751. package/dist/vue3/lib/tooltip.cjs.map +1 -1
  752. package/dist/vue3/lib/tooltip.js +162 -103
  753. package/dist/vue3/lib/tooltip.js.map +1 -1
  754. package/dist/vue3/lib/top-banner-info.cjs +71 -1
  755. package/dist/vue3/lib/top-banner-info.cjs.map +1 -1
  756. package/dist/vue3/lib/top-banner-info.js +27 -22
  757. package/dist/vue3/lib/top-banner-info.js.map +1 -1
  758. package/dist/vue3/lib/unread-pill.cjs +73 -1
  759. package/dist/vue3/lib/unread-pill.cjs.map +1 -1
  760. package/dist/vue3/lib/unread-pill.js +28 -25
  761. package/dist/vue3/lib/unread-pill.js.map +1 -1
  762. package/dist/vue3/lib/validation-messages.cjs +89 -1
  763. package/dist/vue3/lib/validation-messages.cjs.map +1 -1
  764. package/dist/vue3/lib/validation-messages.js +41 -36
  765. package/dist/vue3/lib/validation-messages.js.map +1 -1
  766. package/dist/vue3/style.css +1257 -1
  767. package/dist/vue3/types/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.d.ts +2 -2
  768. package/dist/vue3/types/components/rich_text_editor/extensions/mentions/MentionComponent.vue.d.ts +2 -2
  769. package/package.json +37 -35
  770. package/dist/vue2/chunks/_plugin-vue2_normalizer-ZK80B3OL.js +0 -2
  771. package/dist/vue2/chunks/_plugin-vue2_normalizer-ZK80B3OL.js.map +0 -1
  772. package/dist/vue2/chunks/_plugin-vue2_normalizer-u6G_3nkj.js +0 -33
  773. package/dist/vue2/chunks/_plugin-vue2_normalizer-u6G_3nkj.js.map +0 -1
  774. package/dist/vue2/chunks/dropdown-zhMEz3bn.js +0 -2
  775. package/dist/vue2/chunks/dropdown_constants-EUcDxBrX.js +0 -9
  776. package/dist/vue2/chunks/dropdown_constants-EUcDxBrX.js.map +0 -1
  777. package/dist/vue2/chunks/dropdown_constants-KHFvVI2L.js +0 -2
  778. package/dist/vue2/chunks/dropdown_constants-KHFvVI2L.js.map +0 -1
  779. package/dist/vue2/chunks/icon_constants-2S_OSQ1t.js +0 -2
  780. package/dist/vue2/chunks/index-2jPosQBn.js +0 -3
  781. package/dist/vue2/chunks/index-YkSDT8-g.js +0 -244
  782. package/dist/vue2/chunks/index-YkSDT8-g.js.map +0 -1
  783. package/dist/vue2/chunks/index-nIyl_PL6.js +0 -372
  784. package/dist/vue2/chunks/index-sdfB7Aok.js +0 -2
  785. package/dist/vue2/chunks/index-sdfB7Aok.js.map +0 -1
  786. package/dist/vue2/chunks/input-o-fc1X4b.js +0 -2
  787. package/dist/vue2/chunks/input_group-j2gTtc1C.js +0 -2
  788. package/dist/vue2/chunks/keyboard_list_navigation-F0O8nht0.js +0 -197
  789. package/dist/vue2/chunks/keyboard_list_navigation-N74Bpdq7.js +0 -2
  790. package/dist/vue2/chunks/link_constants-Kn6kP4i1.js +0 -2
  791. package/dist/vue2/chunks/link_constants-vIUB92L4.js +0 -16
  792. package/dist/vue2/chunks/list_item_constants-LTUc74pD.js +0 -13
  793. package/dist/vue2/chunks/list_item_constants-Tsz5CO1m.js +0 -2
  794. package/dist/vue2/chunks/modal-VuMFkZFH.js +0 -82
  795. package/dist/vue2/chunks/modal-qEzlo0Sj.js +0 -2
  796. package/dist/vue2/chunks/notice_action-9NmtQRai.js +0 -182
  797. package/dist/vue2/chunks/notice_action-u3ZKIhit.js +0 -2
  798. package/dist/vue2/chunks/notice_constants-c--hBFQw.js +0 -6
  799. package/dist/vue2/chunks/notice_constants-mC6al2Dm.js +0 -2
  800. package/dist/vue2/chunks/popover_constants-hOEhklvr.js +0 -2
  801. package/dist/vue2/chunks/popover_constants-qjlEkroB.js +0 -114
  802. package/dist/vue2/chunks/sr_only_close_button-ErijKGYR.js +0 -3
  803. package/dist/vue2/chunks/sr_only_close_button-JGole5Xi.js +0 -86
  804. package/dist/vue2/chunks/stack_constants-m9Ickqw0.js +0 -2
  805. package/dist/vue2/chunks/stack_constants-u7tNqGtc.js +0 -13
  806. package/dist/vue2/chunks/tab-7hJQSLFx.js +0 -2
  807. package/dist/vue2/chunks/tab-Qm9LVkYj.js +0 -346
  808. package/dist/vue2/lib/constants.cjs +0 -2
  809. package/dist/vue2/lib/dates.cjs +0 -2
  810. package/dist/vue2/lib/dates.js +0 -57
  811. package/dist/vue2/lib/mixins.cjs +0 -2
  812. package/dist/vue2/lib/mixins.js +0 -17
  813. package/dist/vue2/lib/utils.cjs +0 -2
  814. package/dist/vue2/lib/utils.js +0 -175
  815. package/dist/vue2/lib/validators.cjs +0 -2
  816. package/dist/vue2/lib/validators.js +0 -12
  817. package/dist/vue3/chunks/_plugin-vue_export-helper-6_y-gaV6.js +0 -2
  818. package/dist/vue3/chunks/_plugin-vue_export-helper-6_y-gaV6.js.map +0 -1
  819. package/dist/vue3/chunks/_plugin-vue_export-helper-hUChTQA_.js +0 -10
  820. package/dist/vue3/chunks/_plugin-vue_export-helper-hUChTQA_.js.map +0 -1
  821. package/dist/vue3/chunks/dropdown-UO3UJalk.js +0 -2
  822. package/dist/vue3/chunks/dropdown_constants-EUcDxBrX.js +0 -9
  823. package/dist/vue3/chunks/dropdown_constants-EUcDxBrX.js.map +0 -1
  824. package/dist/vue3/chunks/dropdown_constants-KHFvVI2L.js +0 -2
  825. package/dist/vue3/chunks/dropdown_constants-KHFvVI2L.js.map +0 -1
  826. package/dist/vue3/chunks/icon_constants-2S_OSQ1t.js +0 -2
  827. package/dist/vue3/chunks/index-6tYeqbgP.js +0 -3
  828. package/dist/vue3/chunks/index-IBtQ5jRJ.js +0 -2
  829. package/dist/vue3/chunks/index-IBtQ5jRJ.js.map +0 -1
  830. package/dist/vue3/chunks/index-b4iXYvId.js +0 -399
  831. package/dist/vue3/chunks/index-mRmwpCBG.js +0 -256
  832. package/dist/vue3/chunks/index-mRmwpCBG.js.map +0 -1
  833. package/dist/vue3/chunks/input-0Uksk4DP.js +0 -2
  834. package/dist/vue3/chunks/input_group-AS760Cp7.js +0 -2
  835. package/dist/vue3/chunks/keyboard_list_navigation-F0O8nht0.js +0 -197
  836. package/dist/vue3/chunks/keyboard_list_navigation-N74Bpdq7.js +0 -2
  837. package/dist/vue3/chunks/link_constants-Kn6kP4i1.js +0 -2
  838. package/dist/vue3/chunks/link_constants-vIUB92L4.js +0 -16
  839. package/dist/vue3/chunks/list_item_constants-LTUc74pD.js +0 -13
  840. package/dist/vue3/chunks/list_item_constants-Tsz5CO1m.js +0 -2
  841. package/dist/vue3/chunks/modal-VuMFkZFH.js +0 -82
  842. package/dist/vue3/chunks/modal-qEzlo0Sj.js +0 -2
  843. package/dist/vue3/chunks/notice_action-jO199emq.js +0 -2
  844. package/dist/vue3/chunks/notice_action-tJfD5Qw1.js +0 -209
  845. package/dist/vue3/chunks/notice_constants-c--hBFQw.js +0 -6
  846. package/dist/vue3/chunks/notice_constants-mC6al2Dm.js +0 -2
  847. package/dist/vue3/chunks/popover_constants-hOEhklvr.js +0 -2
  848. package/dist/vue3/chunks/popover_constants-qjlEkroB.js +0 -114
  849. package/dist/vue3/chunks/sr_only_close_button-iD7s1Pbj.js +0 -3
  850. package/dist/vue3/chunks/stack_constants-m9Ickqw0.js +0 -2
  851. package/dist/vue3/chunks/stack_constants-u7tNqGtc.js +0 -13
  852. package/dist/vue3/chunks/tab-GQZFMq83.js +0 -367
  853. package/dist/vue3/chunks/tab-at7WWglk.js +0 -2
  854. package/dist/vue3/lib/constants.cjs +0 -2
  855. package/dist/vue3/lib/dates.cjs +0 -2
  856. package/dist/vue3/lib/dates.js +0 -57
  857. package/dist/vue3/lib/mixins.cjs +0 -2
  858. package/dist/vue3/lib/mixins.js +0 -17
  859. package/dist/vue3/lib/utils.cjs +0 -2
  860. package/dist/vue3/lib/utils.js +0 -171
  861. package/dist/vue3/lib/validators.cjs +0 -2
  862. package/dist/vue3/lib/validators.js +0 -12
  863. /package/dist/vue2/{lib → common}/mixins.js.map +0 -0
  864. /package/dist/vue3/{lib → common}/mixins.js.map +0 -0
@@ -1,2 +1,110 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../chunks/index-sdfB7Aok.js"),o=require("../chunks/icon_constants-2S_OSQ1t.js"),l=require("../chunks/_plugin-vue2_normalizer-ZK80B3OL.js");require("emoji-regex");require("emoji-toolkit/emoji_strategy.json");require("./skeleton.cjs");require("@dialpad/dialtone-icons/icons.json");const a={name:"DtEmojiTextWrapper",components:{DtEmoji:s.D},props:{elementType:{type:String,default:"div"},size:{type:String,default:"500",validator:e=>Object.keys(o.I).includes(e)}},data(){return{loadingEmojiJson:!0}},async created(){this.loadingEmojiJson=!1},methods:{replaceDtEmojis(e,t){const r=new RegExp(`(${e.join("|")})`,"g");return t.split(r).map(i=>e.includes(i)?this.$createElement(s.D,{props:{code:i,size:this.size}}):this.$createElement("span",i))},searchVNodes(e){if(!e.tag&&e.text)return this.searchCodes(e.text);const t=e.children?e.children.map(r=>this.searchVNodes(r)):[];return this.$createElement(e.tag,e.data,t)},replaceVueComponentVNodeContent(e){},searchCodes(e){const t=s.p(e),r=s.r(e),n=[...t,...r];return n.length===0?e:this.replaceDtEmojis(n,e)}},render(e){const t=this.$slots.default||[];return e(this.elementType,{class:"d-emoji-text-wrapper"},this.loadingEmojiJson?t:t.map(r=>this.searchVNodes(r)))}},c=null,p=null;var u=l.n(a,c,p,!1,null,null,null,null);const d=u.exports;exports.DtEmojiTextWrapper=d;
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const common_emoji = require("../common/emoji.cjs");
4
+ const icon_constants = require("../chunks/icon_constants-QYpmdE0R.js");
5
+ const _pluginVue2_normalizer = require("../chunks/_plugin-vue2_normalizer-1aBeR4AK.js");
6
+ const lib_emoji = require("./emoji.cjs");
7
+ require("emoji-regex");
8
+ require("emoji-toolkit/emoji_strategy.json");
9
+ require("@dialpad/dialtone-icons/icons.json");
10
+ require("./skeleton.cjs");
11
+ const _sfc_main = {
12
+ name: "DtEmojiTextWrapper",
13
+ components: {
14
+ DtEmoji: lib_emoji.DtEmoji
15
+ },
16
+ props: {
17
+ /**
18
+ * Element type (tag name) to use for the wrapper.
19
+ */
20
+ elementType: {
21
+ type: String,
22
+ default: "div"
23
+ },
24
+ /**
25
+ * The icon size to render the emojis at: 100 to 800
26
+ */
27
+ size: {
28
+ type: String,
29
+ default: "500",
30
+ validator: (t) => Object.keys(icon_constants.ICON_SIZE_MODIFIERS).includes(t)
31
+ }
32
+ },
33
+ data() {
34
+ return {
35
+ loadingEmojiJson: true
36
+ };
37
+ },
38
+ async created() {
39
+ this.loadingEmojiJson = false;
40
+ },
41
+ methods: {
42
+ /**
43
+ * Replaces the valid codes from the text content with a DtEmoji component.
44
+ * @returns {Array<VNode|string>}
45
+ */
46
+ replaceDtEmojis(replaceList, textContent) {
47
+ const regexp = new RegExp(`(${replaceList.join("|")})`, "g");
48
+ const split = textContent.split(regexp);
49
+ return split.map((item) => {
50
+ if (replaceList.includes(item)) {
51
+ return this.$createElement(lib_emoji.DtEmoji, {
52
+ props: { code: item, size: this.size }
53
+ });
54
+ }
55
+ return this.$createElement("span", item);
56
+ });
57
+ },
58
+ /**
59
+ * Recursively search the Vue virtual DOM to find text
60
+ * @param VNode
61
+ * @returns {VNode|*}
62
+ */
63
+ searchVNodes(VNode) {
64
+ if (!VNode.tag && VNode.text) {
65
+ return this.searchCodes(VNode.text);
66
+ }
67
+ const children = VNode.children ? VNode.children.map((VNodeChild) => this.searchVNodes(VNodeChild)) : [];
68
+ return this.$createElement(VNode.tag, VNode.data, children);
69
+ },
70
+ // TODO: Find a way to crawl vue components
71
+ replaceVueComponentVNodeContent(VNode) {
72
+ },
73
+ /**
74
+ * Find codes in text.
75
+ * @param textContent string
76
+ * @returns {Array<VNode|string>|string}
77
+ */
78
+ searchCodes(textContent) {
79
+ const shortcodes = common_emoji.findShortCodes(textContent);
80
+ const emojis = common_emoji.findEmojis(textContent);
81
+ const replaceList = [...shortcodes, ...emojis];
82
+ if (replaceList.length === 0)
83
+ return textContent;
84
+ return this.replaceDtEmojis(replaceList, textContent);
85
+ }
86
+ },
87
+ render(h) {
88
+ const defaultSlotContent = this.$slots.default || [];
89
+ return h(
90
+ this.elementType,
91
+ { class: "d-emoji-text-wrapper" },
92
+ this.loadingEmojiJson ? defaultSlotContent : defaultSlotContent.map((VNode) => this.searchVNodes(VNode))
93
+ );
94
+ }
95
+ };
96
+ const _sfc_render = null;
97
+ const _sfc_staticRenderFns = null;
98
+ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
99
+ _sfc_main,
100
+ _sfc_render,
101
+ _sfc_staticRenderFns,
102
+ false,
103
+ null,
104
+ null,
105
+ null,
106
+ null
107
+ );
108
+ const DtEmojiTextWrapper = __component__.exports;
109
+ exports.DtEmojiTextWrapper = DtEmojiTextWrapper;
2
110
  //# sourceMappingURL=emoji-text-wrapper.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"emoji-text-wrapper.cjs","sources":["../../components/emoji_text_wrapper/emoji_text_wrapper.vue"],"sourcesContent":["<script>\nimport { DtEmoji } from '../emoji';\nimport { findEmojis, findShortCodes } from '@/common/emoji';\nimport { ICON_SIZE_MODIFIERS } from '@/components/icon/icon_constants';\n\n/**\n * Wrapper to find and replace shortcodes like :smile: or unicode chars such as 😄 with our custom Emojis implementation.\n * @see https://dialtone.dialpad.com/components/emoji_text_wrapper.html\n */\nexport default {\n name: 'DtEmojiTextWrapper',\n\n components: {\n DtEmoji,\n },\n\n props: {\n /**\n * Element type (tag name) to use for the wrapper.\n */\n elementType: {\n type: String,\n default: 'div',\n },\n\n /**\n * The icon size to render the emojis at: 100 to 800\n */\n size: {\n type: String,\n default: '500',\n validator: (t) => Object.keys(ICON_SIZE_MODIFIERS).includes(t),\n },\n },\n\n data () {\n return {\n loadingEmojiJson: true,\n };\n },\n\n async created () {\n this.loadingEmojiJson = false;\n },\n\n methods: {\n /**\n * Replaces the valid codes from the text content with a DtEmoji component.\n * @returns {Array<VNode|string>}\n */\n replaceDtEmojis (replaceList, textContent) {\n const regexp = new RegExp(`(${replaceList.join('|')})`, 'g');\n const split = textContent.split(regexp);\n return split.map((item) => {\n if (replaceList.includes(item)) {\n return this.$createElement(DtEmoji, {\n props: { code: item, size: this.size },\n });\n }\n return this.$createElement('span', item);\n });\n },\n\n /**\n * Recursively search the Vue virtual DOM to find text\n * @param VNode\n * @returns {VNode|*}\n */\n searchVNodes (VNode) {\n // If VNode has no tag, it is a text node\n if (!VNode.tag && VNode.text) {\n return this.searchCodes(VNode.text);\n }\n\n const children = VNode.children ? VNode.children.map(VNodeChild => this.searchVNodes(VNodeChild)) : [];\n return this.$createElement(VNode.tag, VNode.data, children);\n },\n\n // TODO: Find a way to crawl vue components\n replaceVueComponentVNodeContent (VNode) {\n //\n },\n\n /**\n * Find codes in text.\n * @param textContent string\n * @returns {Array<VNode|string>|string}\n */\n searchCodes (textContent) {\n const shortcodes = findShortCodes(textContent);\n const emojis = findEmojis(textContent);\n\n const replaceList = [...shortcodes, ...emojis];\n if (replaceList.length === 0) return textContent;\n return this.replaceDtEmojis(replaceList, textContent);\n },\n },\n\n render (h) {\n const defaultSlotContent = this.$slots.default || [];\n return h(\n this.elementType,\n { class: 'd-emoji-text-wrapper' },\n this.loadingEmojiJson\n ? defaultSlotContent\n : defaultSlotContent.map(VNode => this.searchVNodes(VNode)),\n );\n },\n};\n</script>\n"],"names":["_sfc_main","DtEmoji","t","ICON_SIZE_MODIFIERS","replaceList","textContent","regexp","item","VNode","children","VNodeChild","shortcodes","findShortCodes","emojis","findEmojis","h","defaultSlotContent"],"mappings":"wXASA,MAAAA,EAAA,CACA,KAAA,qBAEA,WAAA,CACA,QAAAC,EAAA,CACA,EAEA,MAAA,CAIA,YAAA,CACA,KAAA,OACA,QAAA,KACA,EAKA,KAAA,CACA,KAAA,OACA,QAAA,MACA,UAAAC,GAAA,OAAA,KAAAC,GAAA,EAAA,SAAAD,CAAA,CACA,CACA,EAEA,MAAA,CACA,MAAA,CACA,iBAAA,EACA,CACA,EAEA,MAAA,SAAA,CACA,KAAA,iBAAA,EACA,EAEA,QAAA,CAKA,gBAAAE,EAAAC,EAAA,CACA,MAAAC,EAAA,IAAA,OAAA,IAAAF,EAAA,KAAA,GAAA,CAAA,IAAA,GAAA,EAEA,OADAC,EAAA,MAAAC,CAAA,EACA,IAAAC,GACAH,EAAA,SAAAG,CAAA,EACA,KAAA,eAAAN,IAAA,CACA,MAAA,CAAA,KAAAM,EAAA,KAAA,KAAA,IAAA,CACA,CAAA,EAEA,KAAA,eAAA,OAAAA,CAAA,CACA,CACA,EAOA,aAAAC,EAAA,CAEA,GAAA,CAAAA,EAAA,KAAAA,EAAA,KACA,OAAA,KAAA,YAAAA,EAAA,IAAA,EAGA,MAAAC,EAAAD,EAAA,SAAAA,EAAA,SAAA,IAAAE,GAAA,KAAA,aAAAA,CAAA,CAAA,EAAA,CAAA,EACA,OAAA,KAAA,eAAAF,EAAA,IAAAA,EAAA,KAAAC,CAAA,CACA,EAGA,gCAAAD,EAAA,CAEA,EAOA,YAAAH,EAAA,CACA,MAAAM,EAAAC,IAAAP,CAAA,EACAQ,EAAAC,IAAAT,CAAA,EAEAD,EAAA,CAAA,GAAAO,EAAA,GAAAE,CAAA,EACA,OAAAT,EAAA,SAAA,EAAAC,EACA,KAAA,gBAAAD,EAAAC,CAAA,CACA,CACA,EAEA,OAAAU,EAAA,CACA,MAAAC,EAAA,KAAA,OAAA,SAAA,CAAA,EACA,OAAAD,EACA,KAAA,YACA,CAAA,MAAA,sBAAA,EACA,KAAA,iBACAC,EACAA,EAAA,IAAAR,GAAA,KAAA,aAAAA,CAAA,CAAA,CACA,CACA,CACA"}
1
+ {"version":3,"file":"emoji-text-wrapper.cjs","sources":["../../components/emoji_text_wrapper/emoji_text_wrapper.vue"],"sourcesContent":["<script>\nimport { DtEmoji } from '../emoji';\nimport { findEmojis, findShortCodes } from '@/common/emoji';\nimport { ICON_SIZE_MODIFIERS } from '@/components/icon/icon_constants';\n\n/**\n * Wrapper to find and replace shortcodes like :smile: or unicode chars such as 😄 with our custom Emojis implementation.\n * @see https://dialtone.dialpad.com/components/emoji_text_wrapper.html\n */\nexport default {\n name: 'DtEmojiTextWrapper',\n\n components: {\n DtEmoji,\n },\n\n props: {\n /**\n * Element type (tag name) to use for the wrapper.\n */\n elementType: {\n type: String,\n default: 'div',\n },\n\n /**\n * The icon size to render the emojis at: 100 to 800\n */\n size: {\n type: String,\n default: '500',\n validator: (t) => Object.keys(ICON_SIZE_MODIFIERS).includes(t),\n },\n },\n\n data () {\n return {\n loadingEmojiJson: true,\n };\n },\n\n async created () {\n this.loadingEmojiJson = false;\n },\n\n methods: {\n /**\n * Replaces the valid codes from the text content with a DtEmoji component.\n * @returns {Array<VNode|string>}\n */\n replaceDtEmojis (replaceList, textContent) {\n const regexp = new RegExp(`(${replaceList.join('|')})`, 'g');\n const split = textContent.split(regexp);\n return split.map((item) => {\n if (replaceList.includes(item)) {\n return this.$createElement(DtEmoji, {\n props: { code: item, size: this.size },\n });\n }\n return this.$createElement('span', item);\n });\n },\n\n /**\n * Recursively search the Vue virtual DOM to find text\n * @param VNode\n * @returns {VNode|*}\n */\n searchVNodes (VNode) {\n // If VNode has no tag, it is a text node\n if (!VNode.tag && VNode.text) {\n return this.searchCodes(VNode.text);\n }\n\n const children = VNode.children ? VNode.children.map(VNodeChild => this.searchVNodes(VNodeChild)) : [];\n return this.$createElement(VNode.tag, VNode.data, children);\n },\n\n // TODO: Find a way to crawl vue components\n replaceVueComponentVNodeContent (VNode) {\n //\n },\n\n /**\n * Find codes in text.\n * @param textContent string\n * @returns {Array<VNode|string>|string}\n */\n searchCodes (textContent) {\n const shortcodes = findShortCodes(textContent);\n const emojis = findEmojis(textContent);\n\n const replaceList = [...shortcodes, ...emojis];\n if (replaceList.length === 0) return textContent;\n return this.replaceDtEmojis(replaceList, textContent);\n },\n },\n\n render (h) {\n const defaultSlotContent = this.$slots.default || [];\n return h(\n this.elementType,\n { class: 'd-emoji-text-wrapper' },\n this.loadingEmojiJson\n ? defaultSlotContent\n : defaultSlotContent.map(VNode => this.searchVNodes(VNode)),\n );\n },\n};\n</script>\n"],"names":["DtEmoji","ICON_SIZE_MODIFIERS","findShortCodes","findEmojis"],"mappings":";;;;;;;;;;AASA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,SAAAA,UAAA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,aAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAA,MAAA,OAAA,KAAAC,kCAAA,EAAA,SAAA,CAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,kBAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,MAAA,UAAA;AACA,SAAA,mBAAA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,gBAAA,aAAA,aAAA;AACA,YAAA,SAAA,IAAA,OAAA,IAAA,YAAA,KAAA,GAAA,CAAA,KAAA,GAAA;AACA,YAAA,QAAA,YAAA,MAAA,MAAA;AACA,aAAA,MAAA,IAAA,CAAA,SAAA;AACA,YAAA,YAAA,SAAA,IAAA,GAAA;AACA,iBAAA,KAAA,eAAAD,mBAAA;AAAA,YACA,OAAA,EAAA,MAAA,MAAA,MAAA,KAAA,KAAA;AAAA,UACA,CAAA;AAAA,QACA;AACA,eAAA,KAAA,eAAA,QAAA,IAAA;AAAA,MACA,CAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,aAAA,OAAA;AAEA,UAAA,CAAA,MAAA,OAAA,MAAA,MAAA;AACA,eAAA,KAAA,YAAA,MAAA,IAAA;AAAA,MACA;AAEA,YAAA,WAAA,MAAA,WAAA,MAAA,SAAA,IAAA,gBAAA,KAAA,aAAA,UAAA,CAAA,IAAA,CAAA;AACA,aAAA,KAAA,eAAA,MAAA,KAAA,MAAA,MAAA,QAAA;AAAA,IACA;AAAA;AAAA,IAGA,gCAAA,OAAA;AAAA,IAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,YAAA,aAAA;AACA,YAAA,aAAAE,4BAAA,WAAA;AACA,YAAA,SAAAC,wBAAA,WAAA;AAEA,YAAA,cAAA,CAAA,GAAA,YAAA,GAAA,MAAA;AACA,UAAA,YAAA,WAAA;AAAA,eAAA;AACA,aAAA,KAAA,gBAAA,aAAA,WAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA,GAAA;AACA,UAAA,qBAAA,KAAA,OAAA,WAAA,CAAA;AACA,WAAA;AAAA,MACA,KAAA;AAAA,MACA,EAAA,OAAA,uBAAA;AAAA,MACA,KAAA,mBACA,qBACA,mBAAA,IAAA,WAAA,KAAA,aAAA,KAAA,CAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;"}
@@ -1,14 +1,15 @@
1
- import { D as o, p as i, r as a } from "../chunks/index-YkSDT8-g.js";
2
- import { I as l } from "../chunks/icon_constants-OpYAAKwF.js";
3
- import { n as p } from "../chunks/_plugin-vue2_normalizer-u6G_3nkj.js";
1
+ import { findShortCodes, findEmojis } from "../common/emoji.js";
2
+ import { ICON_SIZE_MODIFIERS } from "../chunks/icon_constants-Dy4MEUJL.js";
3
+ import { normalizeComponent } from "../chunks/_plugin-vue2_normalizer-sOSkiPF3.js";
4
+ import { DtEmoji } from "./emoji.js";
4
5
  import "emoji-regex";
5
6
  import "emoji-toolkit/emoji_strategy.json";
6
- import "./skeleton.js";
7
7
  import "@dialpad/dialtone-icons/icons.json";
8
- const c = {
8
+ import "./skeleton.js";
9
+ const _sfc_main = {
9
10
  name: "DtEmojiTextWrapper",
10
11
  components: {
11
- DtEmoji: o
12
+ DtEmoji
12
13
  },
13
14
  props: {
14
15
  /**
@@ -24,73 +25,86 @@ const c = {
24
25
  size: {
25
26
  type: String,
26
27
  default: "500",
27
- validator: (e) => Object.keys(l).includes(e)
28
+ validator: (t) => Object.keys(ICON_SIZE_MODIFIERS).includes(t)
28
29
  }
29
30
  },
30
31
  data() {
31
32
  return {
32
- loadingEmojiJson: !0
33
+ loadingEmojiJson: true
33
34
  };
34
35
  },
35
36
  async created() {
36
- this.loadingEmojiJson = !1;
37
+ this.loadingEmojiJson = false;
37
38
  },
38
39
  methods: {
39
40
  /**
40
41
  * Replaces the valid codes from the text content with a DtEmoji component.
41
42
  * @returns {Array<VNode|string>}
42
43
  */
43
- replaceDtEmojis(e, t) {
44
- const s = new RegExp(`(${e.join("|")})`, "g");
45
- return t.split(s).map((n) => e.includes(n) ? this.$createElement(o, {
46
- props: { code: n, size: this.size }
47
- }) : this.$createElement("span", n));
44
+ replaceDtEmojis(replaceList, textContent) {
45
+ const regexp = new RegExp(`(${replaceList.join("|")})`, "g");
46
+ const split = textContent.split(regexp);
47
+ return split.map((item) => {
48
+ if (replaceList.includes(item)) {
49
+ return this.$createElement(DtEmoji, {
50
+ props: { code: item, size: this.size }
51
+ });
52
+ }
53
+ return this.$createElement("span", item);
54
+ });
48
55
  },
49
56
  /**
50
57
  * Recursively search the Vue virtual DOM to find text
51
58
  * @param VNode
52
59
  * @returns {VNode|*}
53
60
  */
54
- searchVNodes(e) {
55
- if (!e.tag && e.text)
56
- return this.searchCodes(e.text);
57
- const t = e.children ? e.children.map((s) => this.searchVNodes(s)) : [];
58
- return this.$createElement(e.tag, e.data, t);
61
+ searchVNodes(VNode) {
62
+ if (!VNode.tag && VNode.text) {
63
+ return this.searchCodes(VNode.text);
64
+ }
65
+ const children = VNode.children ? VNode.children.map((VNodeChild) => this.searchVNodes(VNodeChild)) : [];
66
+ return this.$createElement(VNode.tag, VNode.data, children);
59
67
  },
60
68
  // TODO: Find a way to crawl vue components
61
- replaceVueComponentVNodeContent(e) {
69
+ replaceVueComponentVNodeContent(VNode) {
62
70
  },
63
71
  /**
64
72
  * Find codes in text.
65
73
  * @param textContent string
66
74
  * @returns {Array<VNode|string>|string}
67
75
  */
68
- searchCodes(e) {
69
- const t = i(e), s = a(e), r = [...t, ...s];
70
- return r.length === 0 ? e : this.replaceDtEmojis(r, e);
76
+ searchCodes(textContent) {
77
+ const shortcodes = findShortCodes(textContent);
78
+ const emojis = findEmojis(textContent);
79
+ const replaceList = [...shortcodes, ...emojis];
80
+ if (replaceList.length === 0)
81
+ return textContent;
82
+ return this.replaceDtEmojis(replaceList, textContent);
71
83
  }
72
84
  },
73
- render(e) {
74
- const t = this.$slots.default || [];
75
- return e(
85
+ render(h) {
86
+ const defaultSlotContent = this.$slots.default || [];
87
+ return h(
76
88
  this.elementType,
77
89
  { class: "d-emoji-text-wrapper" },
78
- this.loadingEmojiJson ? t : t.map((s) => this.searchVNodes(s))
90
+ this.loadingEmojiJson ? defaultSlotContent : defaultSlotContent.map((VNode) => this.searchVNodes(VNode))
79
91
  );
80
92
  }
81
- }, m = null, d = null;
82
- var h = /* @__PURE__ */ p(
83
- c,
84
- m,
85
- d,
86
- !1,
93
+ };
94
+ const _sfc_render = null;
95
+ const _sfc_staticRenderFns = null;
96
+ var __component__ = /* @__PURE__ */ normalizeComponent(
97
+ _sfc_main,
98
+ _sfc_render,
99
+ _sfc_staticRenderFns,
100
+ false,
87
101
  null,
88
102
  null,
89
103
  null,
90
104
  null
91
105
  );
92
- const x = h.exports;
106
+ const DtEmojiTextWrapper = __component__.exports;
93
107
  export {
94
- x as DtEmojiTextWrapper
108
+ DtEmojiTextWrapper
95
109
  };
96
110
  //# sourceMappingURL=emoji-text-wrapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"emoji-text-wrapper.js","sources":["../../components/emoji_text_wrapper/emoji_text_wrapper.vue"],"sourcesContent":["<script>\nimport { DtEmoji } from '../emoji';\nimport { findEmojis, findShortCodes } from '@/common/emoji';\nimport { ICON_SIZE_MODIFIERS } from '@/components/icon/icon_constants';\n\n/**\n * Wrapper to find and replace shortcodes like :smile: or unicode chars such as 😄 with our custom Emojis implementation.\n * @see https://dialtone.dialpad.com/components/emoji_text_wrapper.html\n */\nexport default {\n name: 'DtEmojiTextWrapper',\n\n components: {\n DtEmoji,\n },\n\n props: {\n /**\n * Element type (tag name) to use for the wrapper.\n */\n elementType: {\n type: String,\n default: 'div',\n },\n\n /**\n * The icon size to render the emojis at: 100 to 800\n */\n size: {\n type: String,\n default: '500',\n validator: (t) => Object.keys(ICON_SIZE_MODIFIERS).includes(t),\n },\n },\n\n data () {\n return {\n loadingEmojiJson: true,\n };\n },\n\n async created () {\n this.loadingEmojiJson = false;\n },\n\n methods: {\n /**\n * Replaces the valid codes from the text content with a DtEmoji component.\n * @returns {Array<VNode|string>}\n */\n replaceDtEmojis (replaceList, textContent) {\n const regexp = new RegExp(`(${replaceList.join('|')})`, 'g');\n const split = textContent.split(regexp);\n return split.map((item) => {\n if (replaceList.includes(item)) {\n return this.$createElement(DtEmoji, {\n props: { code: item, size: this.size },\n });\n }\n return this.$createElement('span', item);\n });\n },\n\n /**\n * Recursively search the Vue virtual DOM to find text\n * @param VNode\n * @returns {VNode|*}\n */\n searchVNodes (VNode) {\n // If VNode has no tag, it is a text node\n if (!VNode.tag && VNode.text) {\n return this.searchCodes(VNode.text);\n }\n\n const children = VNode.children ? VNode.children.map(VNodeChild => this.searchVNodes(VNodeChild)) : [];\n return this.$createElement(VNode.tag, VNode.data, children);\n },\n\n // TODO: Find a way to crawl vue components\n replaceVueComponentVNodeContent (VNode) {\n //\n },\n\n /**\n * Find codes in text.\n * @param textContent string\n * @returns {Array<VNode|string>|string}\n */\n searchCodes (textContent) {\n const shortcodes = findShortCodes(textContent);\n const emojis = findEmojis(textContent);\n\n const replaceList = [...shortcodes, ...emojis];\n if (replaceList.length === 0) return textContent;\n return this.replaceDtEmojis(replaceList, textContent);\n },\n },\n\n render (h) {\n const defaultSlotContent = this.$slots.default || [];\n return h(\n this.elementType,\n { class: 'd-emoji-text-wrapper' },\n this.loadingEmojiJson\n ? defaultSlotContent\n : defaultSlotContent.map(VNode => this.searchVNodes(VNode)),\n );\n },\n};\n</script>\n"],"names":["_sfc_main","DtEmoji","t","ICON_SIZE_MODIFIERS","replaceList","textContent","regexp","item","VNode","children","VNodeChild","shortcodes","findShortCodes","emojis","findEmojis","h","defaultSlotContent"],"mappings":";;;;;;;AASA,MAAAA,IAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,SAAAC;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,aAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAAC,MAAA,OAAA,KAAAC,CAAA,EAAA,SAAAD,CAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,kBAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,MAAA,UAAA;AACA,SAAA,mBAAA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,gBAAAE,GAAAC,GAAA;AACA,YAAAC,IAAA,IAAA,OAAA,IAAAF,EAAA,KAAA,GAAA,CAAA,KAAA,GAAA;AAEA,aADAC,EAAA,MAAAC,CAAA,EACA,IAAA,CAAAC,MACAH,EAAA,SAAAG,CAAA,IACA,KAAA,eAAAN,GAAA;AAAA,QACA,OAAA,EAAA,MAAAM,GAAA,MAAA,KAAA,KAAA;AAAA,MACA,CAAA,IAEA,KAAA,eAAA,QAAAA,CAAA,CACA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,aAAAC,GAAA;AAEA,UAAA,CAAAA,EAAA,OAAAA,EAAA;AACA,eAAA,KAAA,YAAAA,EAAA,IAAA;AAGA,YAAAC,IAAAD,EAAA,WAAAA,EAAA,SAAA,IAAA,CAAAE,MAAA,KAAA,aAAAA,CAAA,CAAA,IAAA,CAAA;AACA,aAAA,KAAA,eAAAF,EAAA,KAAAA,EAAA,MAAAC,CAAA;AAAA,IACA;AAAA;AAAA,IAGA,gCAAAD,GAAA;AAAA,IAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,YAAAH,GAAA;AACA,YAAAM,IAAAC,EAAAP,CAAA,GACAQ,IAAAC,EAAAT,CAAA,GAEAD,IAAA,CAAA,GAAAO,GAAA,GAAAE,CAAA;AACA,aAAAT,EAAA,WAAA,IAAAC,IACA,KAAA,gBAAAD,GAAAC,CAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAAU,GAAA;AACA,UAAAC,IAAA,KAAA,OAAA,WAAA,CAAA;AACA,WAAAD;AAAA,MACA,KAAA;AAAA,MACA,EAAA,OAAA,uBAAA;AAAA,MACA,KAAA,mBACAC,IACAA,EAAA,IAAA,CAAAR,MAAA,KAAA,aAAAA,CAAA,CAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;"}
1
+ {"version":3,"file":"emoji-text-wrapper.js","sources":["../../components/emoji_text_wrapper/emoji_text_wrapper.vue"],"sourcesContent":["<script>\nimport { DtEmoji } from '../emoji';\nimport { findEmojis, findShortCodes } from '@/common/emoji';\nimport { ICON_SIZE_MODIFIERS } from '@/components/icon/icon_constants';\n\n/**\n * Wrapper to find and replace shortcodes like :smile: or unicode chars such as 😄 with our custom Emojis implementation.\n * @see https://dialtone.dialpad.com/components/emoji_text_wrapper.html\n */\nexport default {\n name: 'DtEmojiTextWrapper',\n\n components: {\n DtEmoji,\n },\n\n props: {\n /**\n * Element type (tag name) to use for the wrapper.\n */\n elementType: {\n type: String,\n default: 'div',\n },\n\n /**\n * The icon size to render the emojis at: 100 to 800\n */\n size: {\n type: String,\n default: '500',\n validator: (t) => Object.keys(ICON_SIZE_MODIFIERS).includes(t),\n },\n },\n\n data () {\n return {\n loadingEmojiJson: true,\n };\n },\n\n async created () {\n this.loadingEmojiJson = false;\n },\n\n methods: {\n /**\n * Replaces the valid codes from the text content with a DtEmoji component.\n * @returns {Array<VNode|string>}\n */\n replaceDtEmojis (replaceList, textContent) {\n const regexp = new RegExp(`(${replaceList.join('|')})`, 'g');\n const split = textContent.split(regexp);\n return split.map((item) => {\n if (replaceList.includes(item)) {\n return this.$createElement(DtEmoji, {\n props: { code: item, size: this.size },\n });\n }\n return this.$createElement('span', item);\n });\n },\n\n /**\n * Recursively search the Vue virtual DOM to find text\n * @param VNode\n * @returns {VNode|*}\n */\n searchVNodes (VNode) {\n // If VNode has no tag, it is a text node\n if (!VNode.tag && VNode.text) {\n return this.searchCodes(VNode.text);\n }\n\n const children = VNode.children ? VNode.children.map(VNodeChild => this.searchVNodes(VNodeChild)) : [];\n return this.$createElement(VNode.tag, VNode.data, children);\n },\n\n // TODO: Find a way to crawl vue components\n replaceVueComponentVNodeContent (VNode) {\n //\n },\n\n /**\n * Find codes in text.\n * @param textContent string\n * @returns {Array<VNode|string>|string}\n */\n searchCodes (textContent) {\n const shortcodes = findShortCodes(textContent);\n const emojis = findEmojis(textContent);\n\n const replaceList = [...shortcodes, ...emojis];\n if (replaceList.length === 0) return textContent;\n return this.replaceDtEmojis(replaceList, textContent);\n },\n },\n\n render (h) {\n const defaultSlotContent = this.$slots.default || [];\n return h(\n this.elementType,\n { class: 'd-emoji-text-wrapper' },\n this.loadingEmojiJson\n ? defaultSlotContent\n : defaultSlotContent.map(VNode => this.searchVNodes(VNode)),\n );\n },\n};\n</script>\n"],"names":[],"mappings":";;;;;;;;AASA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,aAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAA,MAAA,OAAA,KAAA,mBAAA,EAAA,SAAA,CAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,kBAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,MAAA,UAAA;AACA,SAAA,mBAAA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,gBAAA,aAAA,aAAA;AACA,YAAA,SAAA,IAAA,OAAA,IAAA,YAAA,KAAA,GAAA,CAAA,KAAA,GAAA;AACA,YAAA,QAAA,YAAA,MAAA,MAAA;AACA,aAAA,MAAA,IAAA,CAAA,SAAA;AACA,YAAA,YAAA,SAAA,IAAA,GAAA;AACA,iBAAA,KAAA,eAAA,SAAA;AAAA,YACA,OAAA,EAAA,MAAA,MAAA,MAAA,KAAA,KAAA;AAAA,UACA,CAAA;AAAA,QACA;AACA,eAAA,KAAA,eAAA,QAAA,IAAA;AAAA,MACA,CAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,aAAA,OAAA;AAEA,UAAA,CAAA,MAAA,OAAA,MAAA,MAAA;AACA,eAAA,KAAA,YAAA,MAAA,IAAA;AAAA,MACA;AAEA,YAAA,WAAA,MAAA,WAAA,MAAA,SAAA,IAAA,gBAAA,KAAA,aAAA,UAAA,CAAA,IAAA,CAAA;AACA,aAAA,KAAA,eAAA,MAAA,KAAA,MAAA,MAAA,QAAA;AAAA,IACA;AAAA;AAAA,IAGA,gCAAA,OAAA;AAAA,IAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,YAAA,aAAA;AACA,YAAA,aAAA,eAAA,WAAA;AACA,YAAA,SAAA,WAAA,WAAA;AAEA,YAAA,cAAA,CAAA,GAAA,YAAA,GAAA,MAAA;AACA,UAAA,YAAA,WAAA;AAAA,eAAA;AACA,aAAA,KAAA,gBAAA,aAAA,WAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA,GAAA;AACA,UAAA,qBAAA,KAAA,OAAA,WAAA,CAAA;AACA,WAAA;AAAA,MACA,KAAA;AAAA,MACA,EAAA,OAAA,uBAAA;AAAA,MACA,KAAA,mBACA,qBACA,mBAAA,IAAA,WAAA,KAAA,aAAA,KAAA,CAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;"}
@@ -1,2 +1,146 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../chunks/index-sdfB7Aok.js");require("emoji-regex");require("emoji-toolkit/emoji_strategy.json");require("../chunks/_plugin-vue2_normalizer-ZK80B3OL.js");require("./skeleton.cjs");require("../chunks/icon_constants-2S_OSQ1t.js");require("@dialpad/dialtone-icons/icons.json");exports.DtEmoji=e.D;
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const common_emoji = require("../common/emoji.cjs");
4
+ const _pluginVue2_normalizer = require("../chunks/_plugin-vue2_normalizer-1aBeR4AK.js");
5
+ const lib_skeleton = require("./skeleton.cjs");
6
+ const icon_constants = require("../chunks/icon_constants-QYpmdE0R.js");
7
+ require("emoji-regex");
8
+ require("emoji-toolkit/emoji_strategy.json");
9
+ require("@dialpad/dialtone-icons/icons.json");
10
+ const _sfc_main = {
11
+ name: "DtEmoji",
12
+ components: {
13
+ DtSkeleton: lib_skeleton.DtSkeleton
14
+ },
15
+ props: {
16
+ /**
17
+ * Supports shortcode ex: :smile: or unicode ex: 😄. Will display the resulting emoji.
18
+ * <a class="d-link" href="https://emojipedia.org/joypixels/" target="_blank">JoyPixels</a>
19
+ * for all supported shortcode/unicode or the docs for setting up custom emojis.
20
+ */
21
+ code: {
22
+ type: String,
23
+ required: true
24
+ },
25
+ /**
26
+ * The size of the emoji. Can be any of the icon size utility classes from
27
+ * <a class="d-link" href="https://dialtone.dialpad.com/components/icon.html" target="_blank"> Dialpad Icon Size</a>
28
+ * @values 100, 200, 300, 400, 500, 600, 700, 800
29
+ */
30
+ size: {
31
+ type: String,
32
+ default: "500",
33
+ validator: (t) => Object.keys(icon_constants.ICON_SIZE_MODIFIERS).includes(t)
34
+ },
35
+ /**
36
+ * Additional class name for the emoji img element.
37
+ * Can accept String, Object, and Array, i.e. has the
38
+ * same API as Vue's built-in handling of the class attribute.
39
+ */
40
+ imgClass: {
41
+ type: [String, Object, Array],
42
+ default: ""
43
+ },
44
+ /**
45
+ * Will be read out on a screen reader for this emoji. You must use this prop if you want your emoji to be i18n
46
+ * Compatible as Dialtone Vue will not translate it by itself. If you do not set this prop the aria-label will
47
+ * be set to the english description of the emoji. You can retrieve the description for an emoji yourself via the
48
+ * getEmojiData() function
49
+ */
50
+ ariaLabel: {
51
+ type: String,
52
+ default: null
53
+ },
54
+ /**
55
+ * Shows a skeleton loader while the emoji asset is loading.
56
+ * @values true, false
57
+ */
58
+ showSkeleton: {
59
+ type: Boolean,
60
+ default: true
61
+ }
62
+ },
63
+ data() {
64
+ return {
65
+ emojiData: null,
66
+ imgLoading: false
67
+ };
68
+ },
69
+ computed: {
70
+ emojiDataValid() {
71
+ return !!this.emojiData;
72
+ },
73
+ emojiSrc() {
74
+ var _a;
75
+ if (!this.emojiDataValid) {
76
+ return "invalid";
77
+ }
78
+ if ((_a = this.emojiData) == null ? void 0 : _a.custom) {
79
+ return common_emoji.customEmojiAssetUrl + this.emojiData.key + this.emojiData.extension;
80
+ }
81
+ if (["100", "200"].includes(this.size)) {
82
+ return common_emoji.emojiImageUrlSmall + this.emojiData.key + common_emoji.emojiFileExtensionSmall;
83
+ } else {
84
+ return common_emoji.emojiImageUrlLarge + this.emojiData.key + common_emoji.emojiFileExtensionLarge;
85
+ }
86
+ },
87
+ emojiAlt() {
88
+ if (!this.emojiDataValid) {
89
+ return void 0;
90
+ }
91
+ return this.emojiData.unicode_output ? common_emoji.stringToUnicode(this.emojiData.unicode_output) : this.emojiData.name;
92
+ },
93
+ emojiLabel() {
94
+ if (!this.emojiDataValid) {
95
+ return "Invalid Emoji";
96
+ }
97
+ return this.ariaLabel ? this.ariaLabel : this.emojiData.name;
98
+ },
99
+ emojiSize() {
100
+ return icon_constants.ICON_SIZE_MODIFIERS[this.size];
101
+ }
102
+ },
103
+ watch: {
104
+ code: {
105
+ handler: function() {
106
+ this.getEmojiData();
107
+ },
108
+ immediate: true
109
+ },
110
+ emojiSrc: {
111
+ handler: async function() {
112
+ this.imgLoading = true;
113
+ },
114
+ immediate: true
115
+ }
116
+ },
117
+ methods: {
118
+ getEmojiData() {
119
+ this.emojiData = common_emoji.codeToEmojiData(this.code);
120
+ },
121
+ imageLoaded() {
122
+ this.imgLoading = false;
123
+ },
124
+ imageErrored() {
125
+ this.imgLoading = false;
126
+ }
127
+ }
128
+ };
129
+ var _sfc_render = function render() {
130
+ var _vm = this, _c = _vm._self._c;
131
+ return _c("span", { class: ["d-emoji", "d-icon", _vm.emojiSize] }, [_c("dt-skeleton", { directives: [{ name: "show", rawName: "v-show", value: _vm.imgLoading && _vm.showSkeleton, expression: "imgLoading && showSkeleton" }], class: ["d-icon", _vm.emojiSize], attrs: { "offset": 0, "shape-option": { shape: "circle", size: "100%" } } }), _c("img", { directives: [{ name: "show", rawName: "v-show", value: !_vm.imgLoading, expression: "!imgLoading" }], ref: "emojiImg", class: ["d-icon", _vm.emojiSize, _vm.imgClass], attrs: { "aria-label": _vm.emojiLabel, "alt": _vm.emojiAlt, "title": _vm.emojiLabel, "src": _vm.emojiSrc }, on: { "load": _vm.imageLoaded, "error": _vm.imageErrored } })], 1);
132
+ };
133
+ var _sfc_staticRenderFns = [];
134
+ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
135
+ _sfc_main,
136
+ _sfc_render,
137
+ _sfc_staticRenderFns,
138
+ false,
139
+ null,
140
+ null,
141
+ null,
142
+ null
143
+ );
144
+ const DtEmoji = __component__.exports;
145
+ exports.DtEmoji = DtEmoji;
2
146
  //# sourceMappingURL=emoji.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"emoji.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
1
+ {"version":3,"file":"emoji.cjs","sources":["../../components/emoji/emoji.vue"],"sourcesContent":["<template>\n <span :class=\"['d-emoji', 'd-icon', emojiSize]\">\n <dt-skeleton\n v-show=\"imgLoading && showSkeleton\"\n :offset=\"0\"\n :class=\"['d-icon', emojiSize]\"\n :shape-option=\"{ shape: 'circle', size: '100%' }\"\n />\n <img\n v-show=\"!imgLoading\"\n ref=\"emojiImg\"\n :class=\"['d-icon', emojiSize, imgClass]\"\n :aria-label=\"emojiLabel\"\n :alt=\"emojiAlt\"\n :title=\"emojiLabel\"\n :src=\"emojiSrc\"\n @load=\"imageLoaded\"\n @error=\"imageErrored\"\n >\n </span>\n</template>\n\n<script>\nimport { ICON_SIZE_MODIFIERS } from '@/components/icon';\nimport {\n codeToEmojiData,\n stringToUnicode,\n emojiImageUrlSmall,\n emojiFileExtensionSmall,\n emojiImageUrlLarge,\n emojiFileExtensionLarge,\n customEmojiAssetUrl,\n} from '@/common/emoji';\nimport { DtSkeleton } from '@/components/skeleton';\n\n/**\n * Renders an emoji from a shortcode such as :smile: or unicode character such as 😄\n * @see https://dialtone.dialpad.com/components/emoji.html\n */\nexport default {\n name: 'DtEmoji',\n\n components: {\n DtSkeleton,\n },\n\n props: {\n /**\n * Supports shortcode ex: :smile: or unicode ex: 😄. Will display the resulting emoji.\n * <a class=\"d-link\" href=\"https://emojipedia.org/joypixels/\" target=\"_blank\">JoyPixels</a>\n * for all supported shortcode/unicode or the docs for setting up custom emojis.\n */\n code: {\n type: String,\n required: true,\n },\n\n /**\n * The size of the emoji. Can be any of the icon size utility classes from\n * <a class=\"d-link\" href=\"https://dialtone.dialpad.com/components/icon.html\" target=\"_blank\"> Dialpad Icon Size</a>\n * @values 100, 200, 300, 400, 500, 600, 700, 800\n */\n size: {\n type: String,\n default: '500',\n validator: (t) => Object.keys(ICON_SIZE_MODIFIERS).includes(t),\n },\n\n /**\n * Additional class name for the emoji img 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 imgClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * Will be read out on a screen reader for this emoji. You must use this prop if you want your emoji to be i18n\n * Compatible as Dialtone Vue will not translate it by itself. If you do not set this prop the aria-label will\n * be set to the english description of the emoji. You can retrieve the description for an emoji yourself via the\n * getEmojiData() function\n */\n ariaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * Shows a skeleton loader while the emoji asset is loading.\n * @values true, false\n */\n showSkeleton: {\n type: Boolean,\n default: true,\n },\n },\n\n data () {\n return {\n emojiData: null,\n imgLoading: false,\n };\n },\n\n computed: {\n emojiDataValid () {\n return !!this.emojiData;\n },\n\n emojiSrc () {\n if (!this.emojiDataValid) { return 'invalid'; }\n\n // custom emoji\n if (this.emojiData?.custom) {\n return customEmojiAssetUrl + this.emojiData.key + this.emojiData.extension;\n }\n\n if (['100', '200'].includes(this.size)) {\n return emojiImageUrlSmall + this.emojiData.key + emojiFileExtensionSmall;\n } else {\n return emojiImageUrlLarge + this.emojiData.key + emojiFileExtensionLarge;\n }\n },\n\n emojiAlt () {\n if (!this.emojiDataValid) { return undefined; }\n return this.emojiData.unicode_output ? stringToUnicode(this.emojiData.unicode_output) : this.emojiData.name;\n },\n\n emojiLabel () {\n if (!this.emojiDataValid) { return 'Invalid Emoji'; }\n return this.ariaLabel ? this.ariaLabel : this.emojiData.name;\n },\n\n emojiSize () {\n return ICON_SIZE_MODIFIERS[this.size];\n },\n },\n\n watch: {\n code: {\n handler: function () {\n this.getEmojiData();\n },\n\n immediate: true,\n },\n\n emojiSrc: {\n handler: async function () {\n this.imgLoading = true;\n },\n\n immediate: true,\n },\n },\n\n methods: {\n getEmojiData () {\n this.emojiData = codeToEmojiData(this.code);\n },\n\n imageLoaded () {\n this.imgLoading = false;\n },\n\n imageErrored () {\n this.imgLoading = false;\n },\n },\n};\n</script>\n"],"names":["DtSkeleton","ICON_SIZE_MODIFIERS","customEmojiAssetUrl","emojiImageUrlSmall","emojiFileExtensionSmall","emojiImageUrlLarge","emojiFileExtensionLarge","stringToUnicode","codeToEmojiData"],"mappings":";;;;;;;;;AAuCA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,YAAAA,aAAA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAA,MAAA,OAAA,KAAAC,kCAAA,EAAA,SAAA,CAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,UAAA;AAAA,MACA,MAAA,CAAA,QAAA,QAAA,KAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,cAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,WAAA;AAAA,MACA,YAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,iBAAA;AACA,aAAA,CAAA,CAAA,KAAA;AAAA,IACA;AAAA,IAEA,WAAA;;AACA,UAAA,CAAA,KAAA,gBAAA;AAAA,eAAA;AAAA,MAAA;AAGA,WAAA,UAAA,cAAA,mBAAA,QAAA;AACA,eAAAC,aAAAA,sBAAA,KAAA,UAAA,MAAA,KAAA,UAAA;AAAA,MACA;AAEA,UAAA,CAAA,OAAA,KAAA,EAAA,SAAA,KAAA,IAAA,GAAA;AACA,eAAAC,aAAA,qBAAA,KAAA,UAAA,MAAAC,aAAAA;AAAAA,MACA,OAAA;AACA,eAAAC,aAAA,qBAAA,KAAA,UAAA,MAAAC,aAAAA;AAAAA,MACA;AAAA,IACA;AAAA,IAEA,WAAA;AACA,UAAA,CAAA,KAAA,gBAAA;AAAA,eAAA;AAAA,MAAA;AACA,aAAA,KAAA,UAAA,iBAAAC,6BAAA,KAAA,UAAA,cAAA,IAAA,KAAA,UAAA;AAAA,IACA;AAAA,IAEA,aAAA;AACA,UAAA,CAAA,KAAA,gBAAA;AAAA,eAAA;AAAA,MAAA;AACA,aAAA,KAAA,YAAA,KAAA,YAAA,KAAA,UAAA;AAAA,IACA;AAAA,IAEA,YAAA;AACA,aAAAN,eAAA,oBAAA,KAAA,IAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA,MAAA;AAAA,MACA,SAAA,WAAA;AACA,aAAA,aAAA;AAAA,MACA;AAAA,MAEA,WAAA;AAAA,IACA;AAAA,IAEA,UAAA;AAAA,MACA,SAAA,iBAAA;AACA,aAAA,aAAA;AAAA,MACA;AAAA,MAEA,WAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,eAAA;AACA,WAAA,YAAAO,aAAAA,gBAAA,KAAA,IAAA;AAAA,IACA;AAAA,IAEA,cAAA;AACA,WAAA,aAAA;AAAA,IACA;AAAA,IAEA,eAAA;AACA,WAAA,aAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;"}
@@ -1,11 +1,146 @@
1
- import { D as e } from "../chunks/index-YkSDT8-g.js";
1
+ import { customEmojiAssetUrl, emojiImageUrlSmall, emojiFileExtensionSmall, emojiImageUrlLarge, emojiFileExtensionLarge, stringToUnicode, codeToEmojiData } from "../common/emoji.js";
2
+ import { normalizeComponent } from "../chunks/_plugin-vue2_normalizer-sOSkiPF3.js";
3
+ import { DtSkeleton } from "./skeleton.js";
4
+ import { ICON_SIZE_MODIFIERS } from "../chunks/icon_constants-Dy4MEUJL.js";
2
5
  import "emoji-regex";
3
6
  import "emoji-toolkit/emoji_strategy.json";
4
- import "../chunks/_plugin-vue2_normalizer-u6G_3nkj.js";
5
- import "./skeleton.js";
6
- import "../chunks/icon_constants-OpYAAKwF.js";
7
7
  import "@dialpad/dialtone-icons/icons.json";
8
+ const _sfc_main = {
9
+ name: "DtEmoji",
10
+ components: {
11
+ DtSkeleton
12
+ },
13
+ props: {
14
+ /**
15
+ * Supports shortcode ex: :smile: or unicode ex: 😄. Will display the resulting emoji.
16
+ * <a class="d-link" href="https://emojipedia.org/joypixels/" target="_blank">JoyPixels</a>
17
+ * for all supported shortcode/unicode or the docs for setting up custom emojis.
18
+ */
19
+ code: {
20
+ type: String,
21
+ required: true
22
+ },
23
+ /**
24
+ * The size of the emoji. Can be any of the icon size utility classes from
25
+ * <a class="d-link" href="https://dialtone.dialpad.com/components/icon.html" target="_blank"> Dialpad Icon Size</a>
26
+ * @values 100, 200, 300, 400, 500, 600, 700, 800
27
+ */
28
+ size: {
29
+ type: String,
30
+ default: "500",
31
+ validator: (t) => Object.keys(ICON_SIZE_MODIFIERS).includes(t)
32
+ },
33
+ /**
34
+ * Additional class name for the emoji img element.
35
+ * Can accept String, Object, and Array, i.e. has the
36
+ * same API as Vue's built-in handling of the class attribute.
37
+ */
38
+ imgClass: {
39
+ type: [String, Object, Array],
40
+ default: ""
41
+ },
42
+ /**
43
+ * Will be read out on a screen reader for this emoji. You must use this prop if you want your emoji to be i18n
44
+ * Compatible as Dialtone Vue will not translate it by itself. If you do not set this prop the aria-label will
45
+ * be set to the english description of the emoji. You can retrieve the description for an emoji yourself via the
46
+ * getEmojiData() function
47
+ */
48
+ ariaLabel: {
49
+ type: String,
50
+ default: null
51
+ },
52
+ /**
53
+ * Shows a skeleton loader while the emoji asset is loading.
54
+ * @values true, false
55
+ */
56
+ showSkeleton: {
57
+ type: Boolean,
58
+ default: true
59
+ }
60
+ },
61
+ data() {
62
+ return {
63
+ emojiData: null,
64
+ imgLoading: false
65
+ };
66
+ },
67
+ computed: {
68
+ emojiDataValid() {
69
+ return !!this.emojiData;
70
+ },
71
+ emojiSrc() {
72
+ var _a;
73
+ if (!this.emojiDataValid) {
74
+ return "invalid";
75
+ }
76
+ if ((_a = this.emojiData) == null ? void 0 : _a.custom) {
77
+ return customEmojiAssetUrl + this.emojiData.key + this.emojiData.extension;
78
+ }
79
+ if (["100", "200"].includes(this.size)) {
80
+ return emojiImageUrlSmall + this.emojiData.key + emojiFileExtensionSmall;
81
+ } else {
82
+ return emojiImageUrlLarge + this.emojiData.key + emojiFileExtensionLarge;
83
+ }
84
+ },
85
+ emojiAlt() {
86
+ if (!this.emojiDataValid) {
87
+ return void 0;
88
+ }
89
+ return this.emojiData.unicode_output ? stringToUnicode(this.emojiData.unicode_output) : this.emojiData.name;
90
+ },
91
+ emojiLabel() {
92
+ if (!this.emojiDataValid) {
93
+ return "Invalid Emoji";
94
+ }
95
+ return this.ariaLabel ? this.ariaLabel : this.emojiData.name;
96
+ },
97
+ emojiSize() {
98
+ return ICON_SIZE_MODIFIERS[this.size];
99
+ }
100
+ },
101
+ watch: {
102
+ code: {
103
+ handler: function() {
104
+ this.getEmojiData();
105
+ },
106
+ immediate: true
107
+ },
108
+ emojiSrc: {
109
+ handler: async function() {
110
+ this.imgLoading = true;
111
+ },
112
+ immediate: true
113
+ }
114
+ },
115
+ methods: {
116
+ getEmojiData() {
117
+ this.emojiData = codeToEmojiData(this.code);
118
+ },
119
+ imageLoaded() {
120
+ this.imgLoading = false;
121
+ },
122
+ imageErrored() {
123
+ this.imgLoading = false;
124
+ }
125
+ }
126
+ };
127
+ var _sfc_render = function render() {
128
+ var _vm = this, _c = _vm._self._c;
129
+ return _c("span", { class: ["d-emoji", "d-icon", _vm.emojiSize] }, [_c("dt-skeleton", { directives: [{ name: "show", rawName: "v-show", value: _vm.imgLoading && _vm.showSkeleton, expression: "imgLoading && showSkeleton" }], class: ["d-icon", _vm.emojiSize], attrs: { "offset": 0, "shape-option": { shape: "circle", size: "100%" } } }), _c("img", { directives: [{ name: "show", rawName: "v-show", value: !_vm.imgLoading, expression: "!imgLoading" }], ref: "emojiImg", class: ["d-icon", _vm.emojiSize, _vm.imgClass], attrs: { "aria-label": _vm.emojiLabel, "alt": _vm.emojiAlt, "title": _vm.emojiLabel, "src": _vm.emojiSrc }, on: { "load": _vm.imageLoaded, "error": _vm.imageErrored } })], 1);
130
+ };
131
+ var _sfc_staticRenderFns = [];
132
+ var __component__ = /* @__PURE__ */ normalizeComponent(
133
+ _sfc_main,
134
+ _sfc_render,
135
+ _sfc_staticRenderFns,
136
+ false,
137
+ null,
138
+ null,
139
+ null,
140
+ null
141
+ );
142
+ const DtEmoji = __component__.exports;
8
143
  export {
9
- e as DtEmoji
144
+ DtEmoji
10
145
  };
11
146
  //# sourceMappingURL=emoji.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"emoji.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"emoji.js","sources":["../../components/emoji/emoji.vue"],"sourcesContent":["<template>\n <span :class=\"['d-emoji', 'd-icon', emojiSize]\">\n <dt-skeleton\n v-show=\"imgLoading && showSkeleton\"\n :offset=\"0\"\n :class=\"['d-icon', emojiSize]\"\n :shape-option=\"{ shape: 'circle', size: '100%' }\"\n />\n <img\n v-show=\"!imgLoading\"\n ref=\"emojiImg\"\n :class=\"['d-icon', emojiSize, imgClass]\"\n :aria-label=\"emojiLabel\"\n :alt=\"emojiAlt\"\n :title=\"emojiLabel\"\n :src=\"emojiSrc\"\n @load=\"imageLoaded\"\n @error=\"imageErrored\"\n >\n </span>\n</template>\n\n<script>\nimport { ICON_SIZE_MODIFIERS } from '@/components/icon';\nimport {\n codeToEmojiData,\n stringToUnicode,\n emojiImageUrlSmall,\n emojiFileExtensionSmall,\n emojiImageUrlLarge,\n emojiFileExtensionLarge,\n customEmojiAssetUrl,\n} from '@/common/emoji';\nimport { DtSkeleton } from '@/components/skeleton';\n\n/**\n * Renders an emoji from a shortcode such as :smile: or unicode character such as 😄\n * @see https://dialtone.dialpad.com/components/emoji.html\n */\nexport default {\n name: 'DtEmoji',\n\n components: {\n DtSkeleton,\n },\n\n props: {\n /**\n * Supports shortcode ex: :smile: or unicode ex: 😄. Will display the resulting emoji.\n * <a class=\"d-link\" href=\"https://emojipedia.org/joypixels/\" target=\"_blank\">JoyPixels</a>\n * for all supported shortcode/unicode or the docs for setting up custom emojis.\n */\n code: {\n type: String,\n required: true,\n },\n\n /**\n * The size of the emoji. Can be any of the icon size utility classes from\n * <a class=\"d-link\" href=\"https://dialtone.dialpad.com/components/icon.html\" target=\"_blank\"> Dialpad Icon Size</a>\n * @values 100, 200, 300, 400, 500, 600, 700, 800\n */\n size: {\n type: String,\n default: '500',\n validator: (t) => Object.keys(ICON_SIZE_MODIFIERS).includes(t),\n },\n\n /**\n * Additional class name for the emoji img 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 imgClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * Will be read out on a screen reader for this emoji. You must use this prop if you want your emoji to be i18n\n * Compatible as Dialtone Vue will not translate it by itself. If you do not set this prop the aria-label will\n * be set to the english description of the emoji. You can retrieve the description for an emoji yourself via the\n * getEmojiData() function\n */\n ariaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * Shows a skeleton loader while the emoji asset is loading.\n * @values true, false\n */\n showSkeleton: {\n type: Boolean,\n default: true,\n },\n },\n\n data () {\n return {\n emojiData: null,\n imgLoading: false,\n };\n },\n\n computed: {\n emojiDataValid () {\n return !!this.emojiData;\n },\n\n emojiSrc () {\n if (!this.emojiDataValid) { return 'invalid'; }\n\n // custom emoji\n if (this.emojiData?.custom) {\n return customEmojiAssetUrl + this.emojiData.key + this.emojiData.extension;\n }\n\n if (['100', '200'].includes(this.size)) {\n return emojiImageUrlSmall + this.emojiData.key + emojiFileExtensionSmall;\n } else {\n return emojiImageUrlLarge + this.emojiData.key + emojiFileExtensionLarge;\n }\n },\n\n emojiAlt () {\n if (!this.emojiDataValid) { return undefined; }\n return this.emojiData.unicode_output ? stringToUnicode(this.emojiData.unicode_output) : this.emojiData.name;\n },\n\n emojiLabel () {\n if (!this.emojiDataValid) { return 'Invalid Emoji'; }\n return this.ariaLabel ? this.ariaLabel : this.emojiData.name;\n },\n\n emojiSize () {\n return ICON_SIZE_MODIFIERS[this.size];\n },\n },\n\n watch: {\n code: {\n handler: function () {\n this.getEmojiData();\n },\n\n immediate: true,\n },\n\n emojiSrc: {\n handler: async function () {\n this.imgLoading = true;\n },\n\n immediate: true,\n },\n },\n\n methods: {\n getEmojiData () {\n this.emojiData = codeToEmojiData(this.code);\n },\n\n imageLoaded () {\n this.imgLoading = false;\n },\n\n imageErrored () {\n this.imgLoading = false;\n },\n },\n};\n</script>\n"],"names":[],"mappings":";;;;;;;AAuCA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAA,MAAA,OAAA,KAAA,mBAAA,EAAA,SAAA,CAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,UAAA;AAAA,MACA,MAAA,CAAA,QAAA,QAAA,KAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,cAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,WAAA;AAAA,MACA,YAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,iBAAA;AACA,aAAA,CAAA,CAAA,KAAA;AAAA,IACA;AAAA,IAEA,WAAA;;AACA,UAAA,CAAA,KAAA,gBAAA;AAAA,eAAA;AAAA,MAAA;AAGA,WAAA,UAAA,cAAA,mBAAA,QAAA;AACA,eAAA,sBAAA,KAAA,UAAA,MAAA,KAAA,UAAA;AAAA,MACA;AAEA,UAAA,CAAA,OAAA,KAAA,EAAA,SAAA,KAAA,IAAA,GAAA;AACA,eAAA,qBAAA,KAAA,UAAA,MAAA;AAAA,MACA,OAAA;AACA,eAAA,qBAAA,KAAA,UAAA,MAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,WAAA;AACA,UAAA,CAAA,KAAA,gBAAA;AAAA,eAAA;AAAA,MAAA;AACA,aAAA,KAAA,UAAA,iBAAA,gBAAA,KAAA,UAAA,cAAA,IAAA,KAAA,UAAA;AAAA,IACA;AAAA,IAEA,aAAA;AACA,UAAA,CAAA,KAAA,gBAAA;AAAA,eAAA;AAAA,MAAA;AACA,aAAA,KAAA,YAAA,KAAA,YAAA,KAAA,UAAA;AAAA,IACA;AAAA,IAEA,YAAA;AACA,aAAA,oBAAA,KAAA,IAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA,MAAA;AAAA,MACA,SAAA,WAAA;AACA,aAAA,aAAA;AAAA,MACA;AAAA,MAEA,WAAA;AAAA,IACA;AAAA,IAEA,UAAA;AAAA,MACA,SAAA,iBAAA;AACA,aAAA,aAAA;AAAA,MACA;AAAA,MAEA,WAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,eAAA;AACA,WAAA,YAAA,gBAAA,KAAA,IAAA;AAAA,IACA;AAAA,IAEA,cAAA;AACA,WAAA,aAAA;AAAA,IACA;AAAA,IAEA,eAAA;AACA,WAAA,aAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;"}