@dialpad/dialtone 9.65.1 → 9.66.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 (792) hide show
  1. package/dist/tokens/doc.json +17176 -17176
  2. package/dist/vue2/chunks/{dropdown-6UoczdUY.js → dropdown-YdCyJ5Dq.js} +77 -41
  3. package/dist/vue2/chunks/{dropdown-6UoczdUY.js.map → dropdown-YdCyJ5Dq.js.map} +1 -1
  4. package/dist/vue2/chunks/{dropdown-pHxnQPzT.js → dropdown-mjrYu_mK.js} +77 -41
  5. package/dist/vue2/chunks/{dropdown-pHxnQPzT.js.map → dropdown-mjrYu_mK.js.map} +1 -1
  6. package/dist/vue2/chunks/dropdown_constants-2pGCXy7m.js.map +1 -1
  7. package/dist/vue2/chunks/dropdown_constants-w1MXGC3Z.js.map +1 -1
  8. package/dist/vue2/chunks/{icon_constants-Dy4MEUJL.js → icon_constants-TdxqLsS2.js} +3 -2
  9. package/dist/vue2/chunks/icon_constants-TdxqLsS2.js.map +1 -0
  10. package/dist/vue2/chunks/{icon_constants-QYpmdE0R.js → icon_constants-VEA0wI5C.js} +3 -2
  11. package/dist/vue2/chunks/icon_constants-VEA0wI5C.js.map +1 -0
  12. package/dist/vue2/chunks/{index-gj1jEXP4.js → index-DyqUqjvI.js} +122 -87
  13. package/dist/vue2/chunks/{index-gj1jEXP4.js.map → index-DyqUqjvI.js.map} +1 -1
  14. package/dist/vue2/chunks/{index-anN_sx1F.js → index-NYFNZeHH.js} +5 -13
  15. package/dist/vue2/chunks/{index-anN_sx1F.js.map → index-NYFNZeHH.js.map} +1 -1
  16. package/dist/vue2/chunks/{index-ODod4Oj_.js → index-i65YVk-U.js} +5 -13
  17. package/dist/vue2/chunks/{index-ODod4Oj_.js.map → index-i65YVk-U.js.map} +1 -1
  18. package/dist/vue2/chunks/{index-eJ-WWRdf.js → index-mBWay1Qb.js} +122 -87
  19. package/dist/vue2/chunks/{index-eJ-WWRdf.js.map → index-mBWay1Qb.js.map} +1 -1
  20. package/dist/vue2/chunks/{input-Axw-wFj2.js → input-Hqw33WBe.js} +3 -9
  21. package/dist/vue2/chunks/{input-Axw-wFj2.js.map → input-Hqw33WBe.js.map} +1 -1
  22. package/dist/vue2/chunks/{input-6kbd8Pju.js → input-PhJeBN6r.js} +3 -9
  23. package/dist/vue2/chunks/{input-6kbd8Pju.js.map → input-PhJeBN6r.js.map} +1 -1
  24. package/dist/vue2/chunks/{input_group-qVZaS5Bb.js → input_group-ZI7aVGEp.js} +4 -2
  25. package/dist/vue2/chunks/{input_group-m3cWYUfI.js.map → input_group-ZI7aVGEp.js.map} +1 -1
  26. package/dist/vue2/chunks/{input_group-m3cWYUfI.js → input_group-pE6ec9R3.js} +4 -2
  27. package/dist/vue2/chunks/{input_group-qVZaS5Bb.js.map → input_group-pE6ec9R3.js.map} +1 -1
  28. package/dist/vue2/chunks/{keyboard_list_navigation-ScXhrxya.js → keyboard_list_navigation-YIqTuw1W.js} +6 -5
  29. package/dist/vue2/chunks/{keyboard_list_navigation-fJnl_Iox.js.map → keyboard_list_navigation-YIqTuw1W.js.map} +1 -1
  30. package/dist/vue2/chunks/{keyboard_list_navigation-fJnl_Iox.js → keyboard_list_navigation-x3D6RcC7.js} +6 -5
  31. package/dist/vue2/chunks/{keyboard_list_navigation-ScXhrxya.js.map → keyboard_list_navigation-x3D6RcC7.js.map} +1 -1
  32. package/dist/vue2/chunks/link_constants-AfTWrr-n.js.map +1 -1
  33. package/dist/vue2/chunks/link_constants-x8NwdqmA.js.map +1 -1
  34. package/dist/vue2/chunks/list_item_constants-EiqkqZvP.js.map +1 -1
  35. package/dist/vue2/chunks/list_item_constants-u1xcN9Dd.js.map +1 -1
  36. package/dist/vue2/chunks/{modal-XOr4kiNZ.js → modal-8X6poIZW.js} +4 -2
  37. package/dist/{vue3/chunks/modal-XOr4kiNZ.js.map → vue2/chunks/modal-8X6poIZW.js.map} +1 -1
  38. package/dist/vue2/chunks/{modal-VgxXAQFP.js → modal-OaWxzqNt.js} +4 -2
  39. package/dist/vue2/chunks/{modal-VgxXAQFP.js.map → modal-OaWxzqNt.js.map} +1 -1
  40. package/dist/vue2/chunks/{notice_action-IRUoLX2d.js → notice_action-qQr3K2TC.js} +71 -46
  41. package/dist/vue2/chunks/{notice_action-IRUoLX2d.js.map → notice_action-qQr3K2TC.js.map} +1 -1
  42. package/dist/vue2/chunks/{notice_action-P6uDyE9x.js → notice_action-tEvvMg7Q.js} +71 -46
  43. package/dist/vue2/chunks/{notice_action-P6uDyE9x.js.map → notice_action-tEvvMg7Q.js.map} +1 -1
  44. package/dist/vue2/chunks/notice_constants-7Qt2CQEY.js.map +1 -1
  45. package/dist/vue2/chunks/notice_constants-UXo9e3bS.js.map +1 -1
  46. package/dist/vue2/chunks/{popover_constants-WsOUIY-m.js → popover_constants-6YkPPbnk.js} +26 -47
  47. package/dist/vue2/chunks/{popover_constants-WsOUIY-m.js.map → popover_constants-6YkPPbnk.js.map} +1 -1
  48. package/dist/vue2/chunks/{popover_constants-XnGWXaxX.js → popover_constants-h9MD6WUt.js} +26 -47
  49. package/dist/{vue3/chunks/popover_constants-WsOUIY-m.js.map → vue2/chunks/popover_constants-h9MD6WUt.js.map} +1 -1
  50. package/dist/vue2/chunks/{sr_only_close_button-ZaGdAHz7.js → sr_only_close_button-2Q9Ny1Nc.js} +24 -18
  51. package/dist/vue2/chunks/{sr_only_close_button-ZaGdAHz7.js.map → sr_only_close_button-2Q9Ny1Nc.js.map} +1 -1
  52. package/dist/vue2/chunks/{sr_only_close_button-81bHIpPu.js → sr_only_close_button-IjMVfBDE.js} +24 -18
  53. package/dist/vue2/chunks/{sr_only_close_button-81bHIpPu.js.map → sr_only_close_button-IjMVfBDE.js.map} +1 -1
  54. package/dist/vue2/chunks/stack_constants-HraCekPm.js.map +1 -1
  55. package/dist/vue2/chunks/stack_constants-SMzMWnAQ.js.map +1 -1
  56. package/dist/vue2/chunks/{tab-FcsV5VmK.js → tab-79yMX6m6.js} +86 -68
  57. package/dist/vue2/chunks/{tab-V4cb44Ry.js.map → tab-79yMX6m6.js.map} +1 -1
  58. package/dist/vue2/chunks/{tab-V4cb44Ry.js → tab-muPOS7JE.js} +86 -68
  59. package/dist/vue2/chunks/{tab-FcsV5VmK.js.map → tab-muPOS7JE.js.map} +1 -1
  60. package/dist/vue2/common/constants.cjs.map +1 -1
  61. package/dist/vue2/common/constants.js.map +1 -1
  62. package/dist/vue2/common/dates.cjs +3 -1
  63. package/dist/vue2/common/dates.cjs.map +1 -1
  64. package/dist/vue2/common/dates.js +3 -1
  65. package/dist/vue2/common/dates.js.map +1 -1
  66. package/dist/vue2/common/emoji.cjs +1 -1
  67. package/dist/vue2/common/emoji.js +1 -1
  68. package/dist/vue2/common/mixins.cjs +3 -3
  69. package/dist/vue2/common/mixins.js +3 -3
  70. package/dist/vue2/common/utils.cjs +8 -44
  71. package/dist/vue2/common/utils.cjs.map +1 -1
  72. package/dist/vue2/common/utils.js +8 -44
  73. package/dist/vue2/common/utils.js.map +1 -1
  74. package/dist/vue2/common/validators.cjs.map +1 -1
  75. package/dist/vue2/common/validators.js.map +1 -1
  76. package/dist/vue2/component-documentation.json +1 -1
  77. package/dist/vue2/dialtone-vue.cjs +12 -12
  78. package/dist/vue2/dialtone-vue.js +12 -12
  79. package/dist/vue2/lib/attachment-carousel.cjs +172 -48
  80. package/dist/vue2/lib/attachment-carousel.cjs.map +1 -1
  81. package/dist/vue2/lib/attachment-carousel.js +172 -48
  82. package/dist/vue2/lib/attachment-carousel.js.map +1 -1
  83. package/dist/vue2/lib/avatar.cjs +75 -58
  84. package/dist/vue2/lib/avatar.cjs.map +1 -1
  85. package/dist/vue2/lib/avatar.js +75 -58
  86. package/dist/vue2/lib/avatar.js.map +1 -1
  87. package/dist/vue2/lib/badge.cjs +31 -20
  88. package/dist/vue2/lib/badge.cjs.map +1 -1
  89. package/dist/vue2/lib/badge.js +31 -20
  90. package/dist/vue2/lib/badge.js.map +1 -1
  91. package/dist/vue2/lib/banner.cjs +53 -29
  92. package/dist/vue2/lib/banner.cjs.map +1 -1
  93. package/dist/vue2/lib/banner.js +53 -29
  94. package/dist/vue2/lib/banner.js.map +1 -1
  95. package/dist/vue2/lib/breadcrumbs.cjs +36 -30
  96. package/dist/vue2/lib/breadcrumbs.cjs.map +1 -1
  97. package/dist/vue2/lib/breadcrumbs.js +36 -30
  98. package/dist/vue2/lib/breadcrumbs.js.map +1 -1
  99. package/dist/vue2/lib/button-group.cjs +7 -14
  100. package/dist/vue2/lib/button-group.cjs.map +1 -1
  101. package/dist/vue2/lib/button-group.js +7 -14
  102. package/dist/vue2/lib/button-group.js.map +1 -1
  103. package/dist/vue2/lib/button.cjs +55 -62
  104. package/dist/vue2/lib/button.cjs.map +1 -1
  105. package/dist/vue2/lib/button.js +55 -62
  106. package/dist/vue2/lib/button.js.map +1 -1
  107. package/dist/vue2/lib/callbar-button-with-popover.cjs +91 -23
  108. package/dist/vue2/lib/callbar-button-with-popover.cjs.map +1 -1
  109. package/dist/vue2/lib/callbar-button-with-popover.js +91 -23
  110. package/dist/vue2/lib/callbar-button-with-popover.js.map +1 -1
  111. package/dist/vue2/lib/callbar-button.cjs +49 -33
  112. package/dist/vue2/lib/callbar-button.cjs.map +1 -1
  113. package/dist/vue2/lib/callbar-button.js +49 -33
  114. package/dist/vue2/lib/callbar-button.js.map +1 -1
  115. package/dist/vue2/lib/callbox.cjs +78 -15
  116. package/dist/vue2/lib/callbox.cjs.map +1 -1
  117. package/dist/vue2/lib/callbox.js +78 -15
  118. package/dist/vue2/lib/callbox.js.map +1 -1
  119. package/dist/vue2/lib/card.cjs +16 -23
  120. package/dist/vue2/lib/card.cjs.map +1 -1
  121. package/dist/vue2/lib/card.js +16 -23
  122. package/dist/vue2/lib/card.js.map +1 -1
  123. package/dist/vue2/lib/checkbox-group.cjs +3 -15
  124. package/dist/vue2/lib/checkbox-group.cjs.map +1 -1
  125. package/dist/vue2/lib/checkbox-group.js +3 -15
  126. package/dist/vue2/lib/checkbox-group.js.map +1 -1
  127. package/dist/vue2/lib/checkbox.cjs +52 -16
  128. package/dist/vue2/lib/checkbox.cjs.map +1 -1
  129. package/dist/vue2/lib/checkbox.js +52 -16
  130. package/dist/vue2/lib/checkbox.js.map +1 -1
  131. package/dist/vue2/lib/chip.cjs +58 -26
  132. package/dist/vue2/lib/chip.cjs.map +1 -1
  133. package/dist/vue2/lib/chip.js +58 -26
  134. package/dist/vue2/lib/chip.js.map +1 -1
  135. package/dist/vue2/lib/codeblock.cjs +4 -11
  136. package/dist/vue2/lib/codeblock.cjs.map +1 -1
  137. package/dist/vue2/lib/codeblock.js +4 -11
  138. package/dist/vue2/lib/codeblock.js.map +1 -1
  139. package/dist/vue2/lib/collapsible.cjs +91 -34
  140. package/dist/vue2/lib/collapsible.cjs.map +1 -1
  141. package/dist/vue2/lib/collapsible.js +91 -34
  142. package/dist/vue2/lib/collapsible.js.map +1 -1
  143. package/dist/vue2/lib/combobox-multi-select.cjs +131 -38
  144. package/dist/vue2/lib/combobox-multi-select.cjs.map +1 -1
  145. package/dist/vue2/lib/combobox-multi-select.js +131 -38
  146. package/dist/vue2/lib/combobox-multi-select.js.map +1 -1
  147. package/dist/vue2/lib/combobox-with-popover.cjs +130 -39
  148. package/dist/vue2/lib/combobox-with-popover.cjs.map +1 -1
  149. package/dist/vue2/lib/combobox-with-popover.js +130 -39
  150. package/dist/vue2/lib/combobox-with-popover.js.map +1 -1
  151. package/dist/vue2/lib/combobox.cjs +3 -3
  152. package/dist/vue2/lib/combobox.js +3 -3
  153. package/dist/vue2/lib/contact-centers-row.cjs +86 -29
  154. package/dist/vue2/lib/contact-centers-row.cjs.map +1 -1
  155. package/dist/vue2/lib/contact-centers-row.js +86 -29
  156. package/dist/vue2/lib/contact-centers-row.js.map +1 -1
  157. package/dist/vue2/lib/contact-info.cjs +95 -24
  158. package/dist/vue2/lib/contact-info.cjs.map +1 -1
  159. package/dist/vue2/lib/contact-info.js +95 -24
  160. package/dist/vue2/lib/contact-info.js.map +1 -1
  161. package/dist/vue2/lib/contact-row.cjs +61 -18
  162. package/dist/vue2/lib/contact-row.cjs.map +1 -1
  163. package/dist/vue2/lib/contact-row.js +61 -18
  164. package/dist/vue2/lib/contact-row.js.map +1 -1
  165. package/dist/vue2/lib/datepicker.cjs +361 -102
  166. package/dist/vue2/lib/datepicker.cjs.map +1 -1
  167. package/dist/vue2/lib/datepicker.js +361 -102
  168. package/dist/vue2/lib/datepicker.js.map +1 -1
  169. package/dist/vue2/lib/description-list.cjs +11 -12
  170. package/dist/vue2/lib/description-list.cjs.map +1 -1
  171. package/dist/vue2/lib/description-list.js +11 -12
  172. package/dist/vue2/lib/description-list.js.map +1 -1
  173. package/dist/vue2/lib/dropdown.cjs +13 -17
  174. package/dist/vue2/lib/dropdown.cjs.map +1 -1
  175. package/dist/vue2/lib/dropdown.js +13 -17
  176. package/dist/vue2/lib/dropdown.js.map +1 -1
  177. package/dist/vue2/lib/editor.cjs +409 -109
  178. package/dist/vue2/lib/editor.cjs.map +1 -1
  179. package/dist/vue2/lib/editor.js +409 -109
  180. package/dist/vue2/lib/editor.js.map +1 -1
  181. package/dist/vue2/lib/emoji-picker.cjs +512 -234
  182. package/dist/vue2/lib/emoji-picker.cjs.map +1 -1
  183. package/dist/vue2/lib/emoji-picker.js +512 -234
  184. package/dist/vue2/lib/emoji-picker.js.map +1 -1
  185. package/dist/vue2/lib/emoji-row.cjs +69 -31
  186. package/dist/vue2/lib/emoji-row.cjs.map +1 -1
  187. package/dist/vue2/lib/emoji-row.js +69 -31
  188. package/dist/vue2/lib/emoji-row.js.map +1 -1
  189. package/dist/vue2/lib/emoji-text-wrapper.cjs +14 -22
  190. package/dist/vue2/lib/emoji-text-wrapper.cjs.map +1 -1
  191. package/dist/vue2/lib/emoji-text-wrapper.js +14 -22
  192. package/dist/vue2/lib/emoji-text-wrapper.js.map +1 -1
  193. package/dist/vue2/lib/emoji.cjs +40 -13
  194. package/dist/vue2/lib/emoji.cjs.map +1 -1
  195. package/dist/vue2/lib/emoji.js +40 -13
  196. package/dist/vue2/lib/emoji.js.map +1 -1
  197. package/dist/vue2/lib/empty-state.cjs +27 -12
  198. package/dist/vue2/lib/empty-state.cjs.map +1 -1
  199. package/dist/vue2/lib/empty-state.js +27 -12
  200. package/dist/vue2/lib/empty-state.js.map +1 -1
  201. package/dist/vue2/lib/feed-item-row.cjs +106 -27
  202. package/dist/vue2/lib/feed-item-row.cjs.map +1 -1
  203. package/dist/vue2/lib/feed-item-row.js +106 -27
  204. package/dist/vue2/lib/feed-item-row.js.map +1 -1
  205. package/dist/vue2/lib/feed-pill.cjs +90 -35
  206. package/dist/vue2/lib/feed-pill.cjs.map +1 -1
  207. package/dist/vue2/lib/feed-pill.js +90 -35
  208. package/dist/vue2/lib/feed-pill.js.map +1 -1
  209. package/dist/vue2/lib/general-row.cjs +184 -75
  210. package/dist/vue2/lib/general-row.cjs.map +1 -1
  211. package/dist/vue2/lib/general-row.js +184 -75
  212. package/dist/vue2/lib/general-row.js.map +1 -1
  213. package/dist/vue2/lib/group-row.cjs +27 -16
  214. package/dist/vue2/lib/group-row.cjs.map +1 -1
  215. package/dist/vue2/lib/group-row.js +27 -16
  216. package/dist/vue2/lib/group-row.js.map +1 -1
  217. package/dist/vue2/lib/grouped-chip.cjs +68 -20
  218. package/dist/vue2/lib/grouped-chip.cjs.map +1 -1
  219. package/dist/vue2/lib/grouped-chip.js +68 -20
  220. package/dist/vue2/lib/grouped-chip.js.map +1 -1
  221. package/dist/vue2/lib/hovercard.cjs +71 -41
  222. package/dist/vue2/lib/hovercard.cjs.map +1 -1
  223. package/dist/vue2/lib/hovercard.js +71 -41
  224. package/dist/vue2/lib/hovercard.js.map +1 -1
  225. package/dist/vue2/lib/icon.cjs +10 -12
  226. package/dist/vue2/lib/icon.cjs.map +1 -1
  227. package/dist/vue2/lib/icon.js +10 -12
  228. package/dist/vue2/lib/icon.js.map +1 -1
  229. package/dist/vue2/lib/illustration.cjs +9 -12
  230. package/dist/vue2/lib/illustration.cjs.map +1 -1
  231. package/dist/vue2/lib/illustration.js +9 -12
  232. package/dist/vue2/lib/illustration.js.map +1 -1
  233. package/dist/vue2/lib/image-viewer.cjs +98 -23
  234. package/dist/vue2/lib/image-viewer.cjs.map +1 -1
  235. package/dist/vue2/lib/image-viewer.js +98 -23
  236. package/dist/vue2/lib/image-viewer.js.map +1 -1
  237. package/dist/vue2/lib/input-group.cjs +24 -14
  238. package/dist/vue2/lib/input-group.cjs.map +1 -1
  239. package/dist/vue2/lib/input-group.js +24 -14
  240. package/dist/vue2/lib/input-group.js.map +1 -1
  241. package/dist/vue2/lib/input.cjs +108 -40
  242. package/dist/vue2/lib/input.cjs.map +1 -1
  243. package/dist/vue2/lib/input.js +108 -40
  244. package/dist/vue2/lib/input.js.map +1 -1
  245. package/dist/vue2/lib/item-layout.cjs +42 -11
  246. package/dist/vue2/lib/item-layout.cjs.map +1 -1
  247. package/dist/vue2/lib/item-layout.js +42 -11
  248. package/dist/vue2/lib/item-layout.js.map +1 -1
  249. package/dist/vue2/lib/ivr-node.cjs +135 -47
  250. package/dist/vue2/lib/ivr-node.cjs.map +1 -1
  251. package/dist/vue2/lib/ivr-node.js +135 -47
  252. package/dist/vue2/lib/ivr-node.js.map +1 -1
  253. package/dist/vue2/lib/keyboard-shortcut.cjs +35 -23
  254. package/dist/vue2/lib/keyboard-shortcut.cjs.map +1 -1
  255. package/dist/vue2/lib/keyboard-shortcut.js +35 -23
  256. package/dist/vue2/lib/keyboard-shortcut.js.map +1 -1
  257. package/dist/vue2/lib/lazy-show.cjs +15 -11
  258. package/dist/vue2/lib/lazy-show.cjs.map +1 -1
  259. package/dist/vue2/lib/lazy-show.js +15 -11
  260. package/dist/vue2/lib/lazy-show.js.map +1 -1
  261. package/dist/vue2/lib/link.cjs +9 -15
  262. package/dist/vue2/lib/link.cjs.map +1 -1
  263. package/dist/vue2/lib/link.js +9 -15
  264. package/dist/vue2/lib/link.js.map +1 -1
  265. package/dist/vue2/lib/list-item-group.cjs +17 -11
  266. package/dist/vue2/lib/list-item-group.cjs.map +1 -1
  267. package/dist/vue2/lib/list-item-group.js +17 -11
  268. package/dist/vue2/lib/list-item-group.js.map +1 -1
  269. package/dist/vue2/lib/list-item.cjs +42 -23
  270. package/dist/vue2/lib/list-item.cjs.map +1 -1
  271. package/dist/vue2/lib/list-item.js +42 -23
  272. package/dist/vue2/lib/list-item.js.map +1 -1
  273. package/dist/vue2/lib/message-input.cjs +360 -97
  274. package/dist/vue2/lib/message-input.cjs.map +1 -1
  275. package/dist/vue2/lib/message-input.js +360 -97
  276. package/dist/vue2/lib/message-input.js.map +1 -1
  277. package/dist/vue2/lib/modal.cjs +94 -36
  278. package/dist/vue2/lib/modal.cjs.map +1 -1
  279. package/dist/vue2/lib/modal.js +94 -36
  280. package/dist/vue2/lib/modal.js.map +1 -1
  281. package/dist/vue2/lib/notice.cjs +40 -21
  282. package/dist/vue2/lib/notice.cjs.map +1 -1
  283. package/dist/vue2/lib/notice.js +40 -21
  284. package/dist/vue2/lib/notice.js.map +1 -1
  285. package/dist/vue2/lib/pagination.cjs +81 -20
  286. package/dist/vue2/lib/pagination.cjs.map +1 -1
  287. package/dist/vue2/lib/pagination.js +81 -20
  288. package/dist/vue2/lib/pagination.js.map +1 -1
  289. package/dist/vue2/lib/popover.cjs +194 -75
  290. package/dist/vue2/lib/popover.cjs.map +1 -1
  291. package/dist/vue2/lib/popover.js +195 -76
  292. package/dist/vue2/lib/popover.js.map +1 -1
  293. package/dist/vue2/lib/presence.cjs +23 -22
  294. package/dist/vue2/lib/presence.cjs.map +1 -1
  295. package/dist/vue2/lib/presence.js +23 -22
  296. package/dist/vue2/lib/presence.js.map +1 -1
  297. package/dist/vue2/lib/radio-group.cjs +2 -11
  298. package/dist/vue2/lib/radio-group.cjs.map +1 -1
  299. package/dist/vue2/lib/radio-group.js +2 -11
  300. package/dist/vue2/lib/radio-group.js.map +1 -1
  301. package/dist/vue2/lib/radio.cjs +47 -15
  302. package/dist/vue2/lib/radio.cjs.map +1 -1
  303. package/dist/vue2/lib/radio.js +47 -15
  304. package/dist/vue2/lib/radio.js.map +1 -1
  305. package/dist/vue2/lib/rich-text-editor.cjs +336 -317
  306. package/dist/vue2/lib/rich-text-editor.cjs.map +1 -1
  307. package/dist/vue2/lib/rich-text-editor.js +336 -317
  308. package/dist/vue2/lib/rich-text-editor.js.map +1 -1
  309. package/dist/vue2/lib/root-layout.cjs +33 -15
  310. package/dist/vue2/lib/root-layout.cjs.map +1 -1
  311. package/dist/vue2/lib/root-layout.js +33 -15
  312. package/dist/vue2/lib/root-layout.js.map +1 -1
  313. package/dist/vue2/lib/scrollbar-directive.cjs.map +1 -1
  314. package/dist/vue2/lib/scrollbar-directive.js.map +1 -1
  315. package/dist/vue2/lib/select-menu.cjs +52 -33
  316. package/dist/vue2/lib/select-menu.cjs.map +1 -1
  317. package/dist/vue2/lib/select-menu.js +52 -33
  318. package/dist/vue2/lib/select-menu.js.map +1 -1
  319. package/dist/vue2/lib/settings-menu-button.cjs +42 -16
  320. package/dist/vue2/lib/settings-menu-button.cjs.map +1 -1
  321. package/dist/vue2/lib/settings-menu-button.js +42 -16
  322. package/dist/vue2/lib/settings-menu-button.js.map +1 -1
  323. package/dist/vue2/lib/skeleton.cjs +118 -93
  324. package/dist/vue2/lib/skeleton.cjs.map +1 -1
  325. package/dist/vue2/lib/skeleton.js +118 -93
  326. package/dist/vue2/lib/skeleton.js.map +1 -1
  327. package/dist/vue2/lib/split-button.cjs +164 -64
  328. package/dist/vue2/lib/split-button.cjs.map +1 -1
  329. package/dist/vue2/lib/split-button.js +164 -64
  330. package/dist/vue2/lib/split-button.js.map +1 -1
  331. package/dist/vue2/lib/stack.cjs +21 -33
  332. package/dist/vue2/lib/stack.cjs.map +1 -1
  333. package/dist/vue2/lib/stack.js +21 -33
  334. package/dist/vue2/lib/stack.js.map +1 -1
  335. package/dist/vue2/lib/tabs.cjs +20 -13
  336. package/dist/vue2/lib/tabs.cjs.map +1 -1
  337. package/dist/vue2/lib/tabs.js +20 -13
  338. package/dist/vue2/lib/tabs.js.map +1 -1
  339. package/dist/vue2/lib/time-pill.cjs +8 -11
  340. package/dist/vue2/lib/time-pill.cjs.map +1 -1
  341. package/dist/vue2/lib/time-pill.js +8 -11
  342. package/dist/vue2/lib/time-pill.js.map +1 -1
  343. package/dist/vue2/lib/toast.cjs +42 -21
  344. package/dist/vue2/lib/toast.cjs.map +1 -1
  345. package/dist/vue2/lib/toast.js +42 -21
  346. package/dist/vue2/lib/toast.js.map +1 -1
  347. package/dist/vue2/lib/toggle.cjs +28 -24
  348. package/dist/vue2/lib/toggle.cjs.map +1 -1
  349. package/dist/vue2/lib/toggle.js +28 -24
  350. package/dist/vue2/lib/toggle.js.map +1 -1
  351. package/dist/vue2/lib/tooltip-directive.cjs +32 -26
  352. package/dist/vue2/lib/tooltip-directive.cjs.map +1 -1
  353. package/dist/vue2/lib/tooltip-directive.js +32 -26
  354. package/dist/vue2/lib/tooltip-directive.js.map +1 -1
  355. package/dist/vue2/lib/tooltip.cjs +31 -21
  356. package/dist/vue2/lib/tooltip.cjs.map +1 -1
  357. package/dist/vue2/lib/tooltip.js +32 -22
  358. package/dist/vue2/lib/tooltip.js.map +1 -1
  359. package/dist/vue2/lib/top-banner-info.cjs +18 -21
  360. package/dist/vue2/lib/top-banner-info.cjs.map +1 -1
  361. package/dist/vue2/lib/top-banner-info.js +18 -21
  362. package/dist/vue2/lib/top-banner-info.js.map +1 -1
  363. package/dist/vue2/lib/unread-pill.cjs +18 -12
  364. package/dist/vue2/lib/unread-pill.cjs.map +1 -1
  365. package/dist/vue2/lib/unread-pill.js +18 -12
  366. package/dist/vue2/lib/unread-pill.js.map +1 -1
  367. package/dist/vue2/lib/validation-messages.cjs +23 -16
  368. package/dist/vue2/lib/validation-messages.cjs.map +1 -1
  369. package/dist/vue2/lib/validation-messages.js +23 -16
  370. package/dist/vue2/lib/validation-messages.js.map +1 -1
  371. package/dist/vue2/types/common/emoji/index.d.ts +2 -59236
  372. package/dist/vue2/types/common/emoji/index.d.ts.map +1 -1
  373. package/dist/vue2/types/components/button/button.vue.d.ts +1 -1
  374. package/dist/vue2/types/components/chip/chip.vue.d.ts +1 -1
  375. package/dist/vue2/types/components/combobox/combobox.vue.d.ts +1 -1
  376. package/dist/vue2/types/components/icon/icon.vue.d.ts +2 -2
  377. package/dist/vue2/types/components/icon/icon_constants.d.ts +1 -1
  378. package/dist/vue2/types/components/icon/icon_constants.d.ts.map +1 -1
  379. package/dist/vue2/types/components/illustration/illustration.vue.d.ts +2 -2
  380. package/dist/vue2/types/components/illustration/illustration_constants.d.ts +1 -1
  381. package/dist/vue2/types/components/illustration/illustration_constants.d.ts.map +1 -1
  382. package/dist/vue2/types/components/image_viewer/image_viewer.vue.d.ts +21 -0
  383. package/dist/vue2/types/components/image_viewer/image_viewer.vue.d.ts.map +1 -1
  384. package/dist/vue2/types/components/input/input.vue.d.ts +1 -1
  385. package/dist/vue2/types/components/modal/modal.vue.d.ts +1 -1
  386. package/dist/vue2/types/components/rich_text_editor/rich_text_editor.vue.d.ts +1 -1
  387. package/dist/vue2/types/components/split_button/split_button-alpha.vue.d.ts +1 -1
  388. package/dist/vue2/types/components/toast/toast.vue.d.ts +1 -1
  389. package/dist/vue2/types/components/tooltip/tooltip.vue.d.ts +1 -1
  390. package/dist/vue2/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts +1 -1
  391. package/dist/vue2/types/recipes/conversation_view/editor/editor.vue.d.ts +1 -1
  392. package/dist/vue2/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +1 -1
  393. package/dist/vue3/chunks/{dropdown-oA-_Gotg.js → dropdown-6HXkh24e.js} +40 -45
  394. package/dist/vue3/chunks/{dropdown-p-Azgwov.js.map → dropdown-6HXkh24e.js.map} +1 -1
  395. package/dist/vue3/chunks/{dropdown-p-Azgwov.js → dropdown-QNvAb160.js} +40 -45
  396. package/dist/vue3/chunks/{dropdown-oA-_Gotg.js.map → dropdown-QNvAb160.js.map} +1 -1
  397. package/dist/vue3/chunks/dropdown_constants-2pGCXy7m.js.map +1 -1
  398. package/dist/vue3/chunks/dropdown_constants-w1MXGC3Z.js.map +1 -1
  399. package/dist/vue3/chunks/{icon_constants-QYpmdE0R.js → icon_constants-bvhFNOPu.js} +3 -2
  400. package/dist/vue3/chunks/icon_constants-bvhFNOPu.js.map +1 -0
  401. package/dist/vue3/chunks/{icon_constants-Dy4MEUJL.js → icon_constants-gIQj4mf7.js} +3 -2
  402. package/dist/vue3/chunks/icon_constants-gIQj4mf7.js.map +1 -0
  403. package/dist/vue3/chunks/{index-b_MgDylR.js → index-T15rAIdX.js} +71 -84
  404. package/dist/vue3/chunks/{index-b_MgDylR.js.map → index-T15rAIdX.js.map} +1 -1
  405. package/dist/vue3/chunks/{index-GVD15GIB.js → index-dfdrE-3M.js} +3 -12
  406. package/dist/vue3/chunks/{index-GVD15GIB.js.map → index-dfdrE-3M.js.map} +1 -1
  407. package/dist/vue3/chunks/{index-lu2o2f4r.js → index-fEp0B-5Z.js} +3 -12
  408. package/dist/vue3/chunks/{index-lu2o2f4r.js.map → index-fEp0B-5Z.js.map} +1 -1
  409. package/dist/vue3/chunks/{index-4qgKeErp.js → index-ouh7Bvm-.js} +71 -84
  410. package/dist/vue3/chunks/{index-4qgKeErp.js.map → index-ouh7Bvm-.js.map} +1 -1
  411. package/dist/vue3/chunks/{input-NmYDD5bn.js → input-HIysg24t.js} +3 -9
  412. package/dist/vue3/chunks/{input-NmYDD5bn.js.map → input-HIysg24t.js.map} +1 -1
  413. package/dist/vue3/chunks/{input-ttnte8zB.js → input-dLLo3Wtg.js} +3 -9
  414. package/dist/vue3/chunks/{input-ttnte8zB.js.map → input-dLLo3Wtg.js.map} +1 -1
  415. package/dist/vue3/chunks/{input_group-jWnq2DJT.js → input_group-hV1WT2it.js} +4 -2
  416. package/dist/vue3/chunks/{input_group-jWnq2DJT.js.map → input_group-hV1WT2it.js.map} +1 -1
  417. package/dist/vue3/chunks/{input_group-M-D25pOJ.js → input_group-rE6nhye8.js} +4 -2
  418. package/dist/vue3/chunks/{input_group-M-D25pOJ.js.map → input_group-rE6nhye8.js.map} +1 -1
  419. package/dist/vue3/chunks/{keyboard_list_navigation-ScXhrxya.js → keyboard_list_navigation-YIqTuw1W.js} +6 -5
  420. package/dist/vue3/chunks/{keyboard_list_navigation-fJnl_Iox.js.map → keyboard_list_navigation-YIqTuw1W.js.map} +1 -1
  421. package/dist/vue3/chunks/{keyboard_list_navigation-fJnl_Iox.js → keyboard_list_navigation-x3D6RcC7.js} +6 -5
  422. package/dist/vue3/chunks/{keyboard_list_navigation-ScXhrxya.js.map → keyboard_list_navigation-x3D6RcC7.js.map} +1 -1
  423. package/dist/vue3/chunks/link_constants-AfTWrr-n.js.map +1 -1
  424. package/dist/vue3/chunks/link_constants-x8NwdqmA.js.map +1 -1
  425. package/dist/vue3/chunks/list_item_constants-EiqkqZvP.js.map +1 -1
  426. package/dist/vue3/chunks/list_item_constants-u1xcN9Dd.js.map +1 -1
  427. package/dist/vue3/chunks/{modal-XOr4kiNZ.js → modal-8X6poIZW.js} +4 -2
  428. package/dist/vue3/chunks/{modal-VgxXAQFP.js.map → modal-8X6poIZW.js.map} +1 -1
  429. package/dist/vue3/chunks/{modal-VgxXAQFP.js → modal-OaWxzqNt.js} +4 -2
  430. package/dist/{vue2/chunks/modal-XOr4kiNZ.js.map → vue3/chunks/modal-OaWxzqNt.js.map} +1 -1
  431. package/dist/vue3/chunks/{notice_action-WTucGhvr.js → notice_action-3ed0uIMN.js} +40 -61
  432. package/dist/vue3/chunks/{notice_action-p-ePanW_.js.map → notice_action-3ed0uIMN.js.map} +1 -1
  433. package/dist/vue3/chunks/{notice_action-p-ePanW_.js → notice_action-e08Lw5W6.js} +40 -61
  434. package/dist/vue3/chunks/{notice_action-WTucGhvr.js.map → notice_action-e08Lw5W6.js.map} +1 -1
  435. package/dist/vue3/chunks/notice_constants-7Qt2CQEY.js.map +1 -1
  436. package/dist/vue3/chunks/notice_constants-UXo9e3bS.js.map +1 -1
  437. package/dist/vue3/chunks/{popover_constants-WsOUIY-m.js → popover_constants-6YkPPbnk.js} +26 -47
  438. package/dist/{vue2/chunks/popover_constants-XnGWXaxX.js.map → vue3/chunks/popover_constants-6YkPPbnk.js.map} +1 -1
  439. package/dist/vue3/chunks/{popover_constants-XnGWXaxX.js → popover_constants-h9MD6WUt.js} +26 -47
  440. package/dist/vue3/chunks/{popover_constants-XnGWXaxX.js.map → popover_constants-h9MD6WUt.js.map} +1 -1
  441. package/dist/vue3/chunks/{sr_only_close_button-3EdsV-dH.js → sr_only_close_button-Ji3Zlts6.js} +4 -4
  442. package/dist/vue3/chunks/{sr_only_close_button-3EdsV-dH.js.map → sr_only_close_button-Ji3Zlts6.js.map} +1 -1
  443. package/dist/vue3/chunks/{sr_only_close_button-xGrHFjwA.js → sr_only_close_button-gKr0Vlbz.js} +4 -4
  444. package/dist/vue3/chunks/{sr_only_close_button-xGrHFjwA.js.map → sr_only_close_button-gKr0Vlbz.js.map} +1 -1
  445. package/dist/vue3/chunks/stack_constants-HraCekPm.js.map +1 -1
  446. package/dist/vue3/chunks/stack_constants-SMzMWnAQ.js.map +1 -1
  447. package/dist/vue3/chunks/{tab-qc3f42Yp.js → tab-X7IvNGTl.js} +46 -49
  448. package/dist/vue3/chunks/{tab-qc3f42Yp.js.map → tab-X7IvNGTl.js.map} +1 -1
  449. package/dist/vue3/chunks/{tab-RTDgnD9-.js → tab-aD6t0MNo.js} +46 -49
  450. package/dist/vue3/chunks/{tab-RTDgnD9-.js.map → tab-aD6t0MNo.js.map} +1 -1
  451. package/dist/vue3/common/constants.cjs.map +1 -1
  452. package/dist/vue3/common/constants.js.map +1 -1
  453. package/dist/vue3/common/dates.cjs +3 -1
  454. package/dist/vue3/common/dates.cjs.map +1 -1
  455. package/dist/vue3/common/dates.js +3 -1
  456. package/dist/vue3/common/dates.js.map +1 -1
  457. package/dist/vue3/common/emoji.cjs +1 -1
  458. package/dist/vue3/common/emoji.js +1 -1
  459. package/dist/vue3/common/mixins.cjs +3 -3
  460. package/dist/vue3/common/mixins.js +3 -3
  461. package/dist/vue3/common/utils.cjs +11 -45
  462. package/dist/vue3/common/utils.cjs.map +1 -1
  463. package/dist/vue3/common/utils.js +11 -45
  464. package/dist/vue3/common/utils.js.map +1 -1
  465. package/dist/vue3/common/validators.cjs.map +1 -1
  466. package/dist/vue3/common/validators.js.map +1 -1
  467. package/dist/vue3/component-documentation.json +1 -1
  468. package/dist/vue3/dialtone-vue.cjs +12 -12
  469. package/dist/vue3/dialtone-vue.js +12 -12
  470. package/dist/vue3/lib/attachment-carousel.cjs +87 -108
  471. package/dist/vue3/lib/attachment-carousel.cjs.map +1 -1
  472. package/dist/vue3/lib/attachment-carousel.js +87 -108
  473. package/dist/vue3/lib/attachment-carousel.js.map +1 -1
  474. package/dist/vue3/lib/avatar.cjs +56 -88
  475. package/dist/vue3/lib/avatar.cjs.map +1 -1
  476. package/dist/vue3/lib/avatar.js +56 -88
  477. package/dist/vue3/lib/avatar.js.map +1 -1
  478. package/dist/vue3/lib/badge.cjs +15 -31
  479. package/dist/vue3/lib/badge.cjs.map +1 -1
  480. package/dist/vue3/lib/badge.js +15 -31
  481. package/dist/vue3/lib/badge.js.map +1 -1
  482. package/dist/vue3/lib/banner.cjs +38 -56
  483. package/dist/vue3/lib/banner.cjs.map +1 -1
  484. package/dist/vue3/lib/banner.js +38 -56
  485. package/dist/vue3/lib/banner.js.map +1 -1
  486. package/dist/vue3/lib/breadcrumbs.cjs +25 -36
  487. package/dist/vue3/lib/breadcrumbs.cjs.map +1 -1
  488. package/dist/vue3/lib/breadcrumbs.js +25 -36
  489. package/dist/vue3/lib/breadcrumbs.js.map +1 -1
  490. package/dist/vue3/lib/button-group.cjs +2 -7
  491. package/dist/vue3/lib/button-group.cjs.map +1 -1
  492. package/dist/vue3/lib/button-group.js +2 -7
  493. package/dist/vue3/lib/button-group.js.map +1 -1
  494. package/dist/vue3/lib/button.cjs +44 -69
  495. package/dist/vue3/lib/button.cjs.map +1 -1
  496. package/dist/vue3/lib/button.js +44 -69
  497. package/dist/vue3/lib/button.js.map +1 -1
  498. package/dist/vue3/lib/callbar-button-with-popover.cjs +68 -81
  499. package/dist/vue3/lib/callbar-button-with-popover.cjs.map +1 -1
  500. package/dist/vue3/lib/callbar-button-with-popover.js +68 -81
  501. package/dist/vue3/lib/callbar-button-with-popover.js.map +1 -1
  502. package/dist/vue3/lib/callbar-button.cjs +32 -45
  503. package/dist/vue3/lib/callbar-button.cjs.map +1 -1
  504. package/dist/vue3/lib/callbar-button.js +32 -45
  505. package/dist/vue3/lib/callbar-button.js.map +1 -1
  506. package/dist/vue3/lib/callbox.cjs +38 -57
  507. package/dist/vue3/lib/callbox.cjs.map +1 -1
  508. package/dist/vue3/lib/callbox.js +38 -57
  509. package/dist/vue3/lib/callbox.js.map +1 -1
  510. package/dist/vue3/lib/card.cjs +13 -33
  511. package/dist/vue3/lib/card.cjs.map +1 -1
  512. package/dist/vue3/lib/card.js +13 -33
  513. package/dist/vue3/lib/card.js.map +1 -1
  514. package/dist/vue3/lib/checkbox-group.cjs +2 -5
  515. package/dist/vue3/lib/checkbox-group.cjs.map +1 -1
  516. package/dist/vue3/lib/checkbox-group.js +2 -5
  517. package/dist/vue3/lib/checkbox-group.js.map +1 -1
  518. package/dist/vue3/lib/checkbox.cjs +41 -45
  519. package/dist/vue3/lib/checkbox.cjs.map +1 -1
  520. package/dist/vue3/lib/checkbox.js +41 -45
  521. package/dist/vue3/lib/checkbox.js.map +1 -1
  522. package/dist/vue3/lib/chip.cjs +38 -53
  523. package/dist/vue3/lib/chip.cjs.map +1 -1
  524. package/dist/vue3/lib/chip.js +38 -53
  525. package/dist/vue3/lib/chip.js.map +1 -1
  526. package/dist/vue3/lib/codeblock.cjs +4 -6
  527. package/dist/vue3/lib/codeblock.cjs.map +1 -1
  528. package/dist/vue3/lib/codeblock.js +4 -6
  529. package/dist/vue3/lib/codeblock.js.map +1 -1
  530. package/dist/vue3/lib/collapsible.cjs +62 -76
  531. package/dist/vue3/lib/collapsible.cjs.map +1 -1
  532. package/dist/vue3/lib/collapsible.js +62 -76
  533. package/dist/vue3/lib/collapsible.js.map +1 -1
  534. package/dist/vue3/lib/combobox-multi-select.cjs +75 -88
  535. package/dist/vue3/lib/combobox-multi-select.cjs.map +1 -1
  536. package/dist/vue3/lib/combobox-multi-select.js +75 -88
  537. package/dist/vue3/lib/combobox-multi-select.js.map +1 -1
  538. package/dist/vue3/lib/combobox-with-popover.cjs +77 -85
  539. package/dist/vue3/lib/combobox-with-popover.cjs.map +1 -1
  540. package/dist/vue3/lib/combobox-with-popover.js +77 -85
  541. package/dist/vue3/lib/combobox-with-popover.js.map +1 -1
  542. package/dist/vue3/lib/combobox.cjs +3 -3
  543. package/dist/vue3/lib/combobox.js +3 -3
  544. package/dist/vue3/lib/contact-centers-row.cjs +65 -89
  545. package/dist/vue3/lib/contact-centers-row.cjs.map +1 -1
  546. package/dist/vue3/lib/contact-centers-row.js +65 -89
  547. package/dist/vue3/lib/contact-centers-row.js.map +1 -1
  548. package/dist/vue3/lib/contact-info.cjs +58 -73
  549. package/dist/vue3/lib/contact-info.cjs.map +1 -1
  550. package/dist/vue3/lib/contact-info.js +58 -73
  551. package/dist/vue3/lib/contact-info.js.map +1 -1
  552. package/dist/vue3/lib/contact-row.cjs +37 -47
  553. package/dist/vue3/lib/contact-row.cjs.map +1 -1
  554. package/dist/vue3/lib/contact-row.js +37 -47
  555. package/dist/vue3/lib/contact-row.js.map +1 -1
  556. package/dist/vue3/lib/datepicker.cjs +267 -263
  557. package/dist/vue3/lib/datepicker.cjs.map +1 -1
  558. package/dist/vue3/lib/datepicker.js +267 -263
  559. package/dist/vue3/lib/datepicker.js.map +1 -1
  560. package/dist/vue3/lib/description-list.cjs +9 -14
  561. package/dist/vue3/lib/description-list.cjs.map +1 -1
  562. package/dist/vue3/lib/description-list.js +9 -14
  563. package/dist/vue3/lib/description-list.js.map +1 -1
  564. package/dist/vue3/lib/dropdown.cjs +6 -6
  565. package/dist/vue3/lib/dropdown.cjs.map +1 -1
  566. package/dist/vue3/lib/dropdown.js +6 -6
  567. package/dist/vue3/lib/dropdown.js.map +1 -1
  568. package/dist/vue3/lib/editor.cjs +312 -249
  569. package/dist/vue3/lib/editor.cjs.map +1 -1
  570. package/dist/vue3/lib/editor.js +312 -249
  571. package/dist/vue3/lib/editor.js.map +1 -1
  572. package/dist/vue3/lib/emoji-picker.cjs +387 -419
  573. package/dist/vue3/lib/emoji-picker.cjs.map +1 -1
  574. package/dist/vue3/lib/emoji-picker.js +387 -419
  575. package/dist/vue3/lib/emoji-picker.js.map +1 -1
  576. package/dist/vue3/lib/emoji-row.cjs +59 -69
  577. package/dist/vue3/lib/emoji-row.cjs.map +1 -1
  578. package/dist/vue3/lib/emoji-row.js +59 -69
  579. package/dist/vue3/lib/emoji-row.js.map +1 -1
  580. package/dist/vue3/lib/emoji-text-wrapper.cjs +13 -12
  581. package/dist/vue3/lib/emoji-text-wrapper.cjs.map +1 -1
  582. package/dist/vue3/lib/emoji-text-wrapper.js +13 -12
  583. package/dist/vue3/lib/emoji-text-wrapper.js.map +1 -1
  584. package/dist/vue3/lib/emoji.cjs +19 -23
  585. package/dist/vue3/lib/emoji.cjs.map +1 -1
  586. package/dist/vue3/lib/emoji.js +19 -23
  587. package/dist/vue3/lib/emoji.js.map +1 -1
  588. package/dist/vue3/lib/empty-state.cjs +20 -30
  589. package/dist/vue3/lib/empty-state.cjs.map +1 -1
  590. package/dist/vue3/lib/empty-state.js +20 -30
  591. package/dist/vue3/lib/empty-state.js.map +1 -1
  592. package/dist/vue3/lib/feed-item-row.cjs +43 -74
  593. package/dist/vue3/lib/feed-item-row.cjs.map +1 -1
  594. package/dist/vue3/lib/feed-item-row.js +43 -74
  595. package/dist/vue3/lib/feed-item-row.js.map +1 -1
  596. package/dist/vue3/lib/feed-pill.cjs +45 -55
  597. package/dist/vue3/lib/feed-pill.cjs.map +1 -1
  598. package/dist/vue3/lib/feed-pill.js +45 -55
  599. package/dist/vue3/lib/feed-pill.js.map +1 -1
  600. package/dist/vue3/lib/general-row.cjs +115 -165
  601. package/dist/vue3/lib/general-row.cjs.map +1 -1
  602. package/dist/vue3/lib/general-row.js +115 -165
  603. package/dist/vue3/lib/general-row.js.map +1 -1
  604. package/dist/vue3/lib/group-row.cjs +7 -9
  605. package/dist/vue3/lib/group-row.cjs.map +1 -1
  606. package/dist/vue3/lib/group-row.js +7 -9
  607. package/dist/vue3/lib/group-row.js.map +1 -1
  608. package/dist/vue3/lib/grouped-chip.cjs +27 -48
  609. package/dist/vue3/lib/grouped-chip.cjs.map +1 -1
  610. package/dist/vue3/lib/grouped-chip.js +27 -48
  611. package/dist/vue3/lib/grouped-chip.js.map +1 -1
  612. package/dist/vue3/lib/hovercard.cjs +25 -33
  613. package/dist/vue3/lib/hovercard.cjs.map +1 -1
  614. package/dist/vue3/lib/hovercard.js +25 -33
  615. package/dist/vue3/lib/hovercard.js.map +1 -1
  616. package/dist/vue3/lib/icon.cjs +1 -1
  617. package/dist/vue3/lib/icon.cjs.map +1 -1
  618. package/dist/vue3/lib/icon.js +1 -1
  619. package/dist/vue3/lib/icon.js.map +1 -1
  620. package/dist/vue3/lib/illustration.cjs +2 -1
  621. package/dist/vue3/lib/illustration.cjs.map +1 -1
  622. package/dist/vue3/lib/illustration.js +2 -1
  623. package/dist/vue3/lib/illustration.js.map +1 -1
  624. package/dist/vue3/lib/image-viewer.cjs +62 -66
  625. package/dist/vue3/lib/image-viewer.cjs.map +1 -1
  626. package/dist/vue3/lib/image-viewer.js +62 -66
  627. package/dist/vue3/lib/image-viewer.js.map +1 -1
  628. package/dist/vue3/lib/input-group.cjs +15 -19
  629. package/dist/vue3/lib/input-group.cjs.map +1 -1
  630. package/dist/vue3/lib/input-group.js +15 -19
  631. package/dist/vue3/lib/input-group.js.map +1 -1
  632. package/dist/vue3/lib/input.cjs +76 -104
  633. package/dist/vue3/lib/input.cjs.map +1 -1
  634. package/dist/vue3/lib/input.js +76 -104
  635. package/dist/vue3/lib/input.js.map +1 -1
  636. package/dist/vue3/lib/item-layout.cjs +10 -27
  637. package/dist/vue3/lib/item-layout.cjs.map +1 -1
  638. package/dist/vue3/lib/item-layout.js +10 -27
  639. package/dist/vue3/lib/item-layout.js.map +1 -1
  640. package/dist/vue3/lib/ivr-node.cjs +80 -89
  641. package/dist/vue3/lib/ivr-node.cjs.map +1 -1
  642. package/dist/vue3/lib/ivr-node.js +80 -89
  643. package/dist/vue3/lib/ivr-node.js.map +1 -1
  644. package/dist/vue3/lib/keyboard-shortcut.cjs +26 -31
  645. package/dist/vue3/lib/keyboard-shortcut.cjs.map +1 -1
  646. package/dist/vue3/lib/keyboard-shortcut.js +26 -31
  647. package/dist/vue3/lib/keyboard-shortcut.js.map +1 -1
  648. package/dist/vue3/lib/lazy-show.cjs +6 -8
  649. package/dist/vue3/lib/lazy-show.cjs.map +1 -1
  650. package/dist/vue3/lib/lazy-show.js +6 -8
  651. package/dist/vue3/lib/lazy-show.js.map +1 -1
  652. package/dist/vue3/lib/link.cjs +2 -7
  653. package/dist/vue3/lib/link.cjs.map +1 -1
  654. package/dist/vue3/lib/link.js +2 -7
  655. package/dist/vue3/lib/link.js.map +1 -1
  656. package/dist/vue3/lib/list-item-group.cjs +7 -14
  657. package/dist/vue3/lib/list-item-group.cjs.map +1 -1
  658. package/dist/vue3/lib/list-item-group.js +7 -14
  659. package/dist/vue3/lib/list-item-group.js.map +1 -1
  660. package/dist/vue3/lib/list-item.cjs +24 -25
  661. package/dist/vue3/lib/list-item.cjs.map +1 -1
  662. package/dist/vue3/lib/list-item.js +24 -25
  663. package/dist/vue3/lib/list-item.js.map +1 -1
  664. package/dist/vue3/lib/message-input.cjs +227 -264
  665. package/dist/vue3/lib/message-input.cjs.map +1 -1
  666. package/dist/vue3/lib/message-input.js +227 -264
  667. package/dist/vue3/lib/message-input.js.map +1 -1
  668. package/dist/vue3/lib/modal.cjs +59 -99
  669. package/dist/vue3/lib/modal.cjs.map +1 -1
  670. package/dist/vue3/lib/modal.js +59 -99
  671. package/dist/vue3/lib/modal.js.map +1 -1
  672. package/dist/vue3/lib/notice.cjs +33 -46
  673. package/dist/vue3/lib/notice.cjs.map +1 -1
  674. package/dist/vue3/lib/notice.js +33 -46
  675. package/dist/vue3/lib/notice.js.map +1 -1
  676. package/dist/vue3/lib/pagination.cjs +49 -61
  677. package/dist/vue3/lib/pagination.cjs.map +1 -1
  678. package/dist/vue3/lib/pagination.js +49 -61
  679. package/dist/vue3/lib/pagination.js.map +1 -1
  680. package/dist/vue3/lib/popover.cjs +133 -156
  681. package/dist/vue3/lib/popover.cjs.map +1 -1
  682. package/dist/vue3/lib/popover.js +134 -157
  683. package/dist/vue3/lib/popover.js.map +1 -1
  684. package/dist/vue3/lib/presence.cjs +9 -17
  685. package/dist/vue3/lib/presence.cjs.map +1 -1
  686. package/dist/vue3/lib/presence.js +9 -17
  687. package/dist/vue3/lib/presence.js.map +1 -1
  688. package/dist/vue3/lib/radio-group.cjs +1 -1
  689. package/dist/vue3/lib/radio-group.cjs.map +1 -1
  690. package/dist/vue3/lib/radio-group.js +1 -1
  691. package/dist/vue3/lib/radio-group.js.map +1 -1
  692. package/dist/vue3/lib/radio.cjs +34 -41
  693. package/dist/vue3/lib/radio.cjs.map +1 -1
  694. package/dist/vue3/lib/radio.js +34 -41
  695. package/dist/vue3/lib/radio.js.map +1 -1
  696. package/dist/vue3/lib/rich-text-editor.cjs +292 -288
  697. package/dist/vue3/lib/rich-text-editor.cjs.map +1 -1
  698. package/dist/vue3/lib/rich-text-editor.js +292 -288
  699. package/dist/vue3/lib/rich-text-editor.js.map +1 -1
  700. package/dist/vue3/lib/root-layout.cjs +24 -39
  701. package/dist/vue3/lib/root-layout.cjs.map +1 -1
  702. package/dist/vue3/lib/root-layout.js +24 -39
  703. package/dist/vue3/lib/root-layout.js.map +1 -1
  704. package/dist/vue3/lib/scrollbar-directive.cjs.map +1 -1
  705. package/dist/vue3/lib/scrollbar-directive.js.map +1 -1
  706. package/dist/vue3/lib/scroller.cjs +100 -83
  707. package/dist/vue3/lib/scroller.cjs.map +1 -1
  708. package/dist/vue3/lib/scroller.js +100 -83
  709. package/dist/vue3/lib/scroller.js.map +1 -1
  710. package/dist/vue3/lib/select-menu.cjs +40 -67
  711. package/dist/vue3/lib/select-menu.cjs.map +1 -1
  712. package/dist/vue3/lib/select-menu.js +40 -67
  713. package/dist/vue3/lib/select-menu.js.map +1 -1
  714. package/dist/vue3/lib/settings-menu-button.cjs +10 -16
  715. package/dist/vue3/lib/settings-menu-button.cjs.map +1 -1
  716. package/dist/vue3/lib/settings-menu-button.js +10 -16
  717. package/dist/vue3/lib/settings-menu-button.js.map +1 -1
  718. package/dist/vue3/lib/skeleton.cjs +74 -93
  719. package/dist/vue3/lib/skeleton.cjs.map +1 -1
  720. package/dist/vue3/lib/skeleton.js +74 -93
  721. package/dist/vue3/lib/skeleton.js.map +1 -1
  722. package/dist/vue3/lib/split-button.cjs +68 -74
  723. package/dist/vue3/lib/split-button.cjs.map +1 -1
  724. package/dist/vue3/lib/split-button.js +68 -74
  725. package/dist/vue3/lib/split-button.js.map +1 -1
  726. package/dist/vue3/lib/stack.cjs +18 -26
  727. package/dist/vue3/lib/stack.cjs.map +1 -1
  728. package/dist/vue3/lib/stack.js +18 -26
  729. package/dist/vue3/lib/stack.js.map +1 -1
  730. package/dist/vue3/lib/tabs.cjs +3 -7
  731. package/dist/vue3/lib/tabs.cjs.map +1 -1
  732. package/dist/vue3/lib/tabs.js +3 -7
  733. package/dist/vue3/lib/tabs.js.map +1 -1
  734. package/dist/vue3/lib/time-pill.cjs.map +1 -1
  735. package/dist/vue3/lib/time-pill.js.map +1 -1
  736. package/dist/vue3/lib/toast.cjs +35 -51
  737. package/dist/vue3/lib/toast.cjs.map +1 -1
  738. package/dist/vue3/lib/toast.js +35 -51
  739. package/dist/vue3/lib/toast.js.map +1 -1
  740. package/dist/vue3/lib/toggle.cjs +24 -34
  741. package/dist/vue3/lib/toggle.cjs.map +1 -1
  742. package/dist/vue3/lib/toggle.js +24 -34
  743. package/dist/vue3/lib/toggle.js.map +1 -1
  744. package/dist/vue3/lib/tooltip-directive.cjs +26 -19
  745. package/dist/vue3/lib/tooltip-directive.cjs.map +1 -1
  746. package/dist/vue3/lib/tooltip-directive.js +26 -19
  747. package/dist/vue3/lib/tooltip-directive.js.map +1 -1
  748. package/dist/vue3/lib/tooltip.cjs +21 -32
  749. package/dist/vue3/lib/tooltip.cjs.map +1 -1
  750. package/dist/vue3/lib/tooltip.js +22 -33
  751. package/dist/vue3/lib/tooltip.js.map +1 -1
  752. package/dist/vue3/lib/top-banner-info.cjs +8 -23
  753. package/dist/vue3/lib/top-banner-info.cjs.map +1 -1
  754. package/dist/vue3/lib/top-banner-info.js +8 -23
  755. package/dist/vue3/lib/top-banner-info.js.map +1 -1
  756. package/dist/vue3/lib/unread-pill.cjs +8 -11
  757. package/dist/vue3/lib/unread-pill.cjs.map +1 -1
  758. package/dist/vue3/lib/unread-pill.js +8 -11
  759. package/dist/vue3/lib/unread-pill.js.map +1 -1
  760. package/dist/vue3/lib/validation-messages.cjs +14 -17
  761. package/dist/vue3/lib/validation-messages.cjs.map +1 -1
  762. package/dist/vue3/lib/validation-messages.js +14 -17
  763. package/dist/vue3/lib/validation-messages.js.map +1 -1
  764. package/dist/vue3/types/components/button/button.vue.d.ts +1 -1
  765. package/dist/vue3/types/components/chip/chip.vue.d.ts +1 -1
  766. package/dist/vue3/types/components/combobox/combobox.vue.d.ts +1 -1
  767. package/dist/vue3/types/components/datepicker/modules/month-year-picker.vue.d.ts +1 -1
  768. package/dist/vue3/types/components/icon/icon.vue.d.ts +2 -2
  769. package/dist/vue3/types/components/icon/icon_constants.d.ts +1 -1
  770. package/dist/vue3/types/components/icon/icon_constants.d.ts.map +1 -1
  771. package/dist/vue3/types/components/illustration/illustration_constants.d.ts +1 -1
  772. package/dist/vue3/types/components/illustration/illustration_constants.d.ts.map +1 -1
  773. package/dist/vue3/types/components/image_viewer/image_viewer.vue.d.ts +21 -0
  774. package/dist/vue3/types/components/image_viewer/image_viewer.vue.d.ts.map +1 -1
  775. package/dist/vue3/types/components/input/input.vue.d.ts +1 -1
  776. package/dist/vue3/types/components/modal/modal.vue.d.ts +1 -1
  777. package/dist/vue3/types/components/notice/notice.vue.d.ts +1 -1
  778. package/dist/vue3/types/components/radio/radio.vue.d.ts +1 -1
  779. package/dist/vue3/types/components/rich_text_editor/rich_text_editor.vue.d.ts +1 -1
  780. package/dist/vue3/types/components/scroller/modules/scroller_item.vue.d.ts +1 -1
  781. package/dist/vue3/types/components/split_button/split_button-alpha.vue.d.ts +1 -1
  782. package/dist/vue3/types/components/tabs/tab.vue.d.ts +1 -1
  783. package/dist/vue3/types/components/toast/toast.vue.d.ts +2 -2
  784. package/dist/vue3/types/components/tooltip/tooltip.vue.d.ts +1 -1
  785. package/dist/vue3/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts +1 -1
  786. package/dist/vue3/types/recipes/conversation_view/editor/editor.vue.d.ts +1 -1
  787. package/dist/vue3/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +1 -1
  788. package/package.json +3 -3
  789. package/dist/vue2/chunks/icon_constants-Dy4MEUJL.js.map +0 -1
  790. package/dist/vue2/chunks/icon_constants-QYpmdE0R.js.map +0 -1
  791. package/dist/vue3/chunks/icon_constants-Dy4MEUJL.js.map +0 -1
  792. package/dist/vue3/chunks/icon_constants-QYpmdE0R.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"image-viewer.js","sources":["../../components/image_viewer/image_viewer.vue"],"sourcesContent":["<template>\n <div>\n <dt-button\n data-qa=\"dt-image-viewer-preview\"\n class=\"d-image-viewer__preview-button\"\n :aria-label=\"ariaLabel\"\n importance=\"clear\"\n @click=\"openModal\"\n >\n <img\n :class=\"imageButtonClass\"\n :src=\"imageSrc\"\n :alt=\"imageAlt\"\n >\n </dt-button>\n <portal v-if=\"isOpen\">\n <div\n :aria-hidden=\"!isOpen ? 'true' : 'false'\"\n class=\"d-modal\"\n data-qa=\"dt-modal\"\n v-on=\"modalListeners\"\n @mouseover=\"showCloseButton = true\"\n @mouseleave=\"showCloseButton = false\"\n @focusin=\" showCloseButton = true\"\n @focusout=\" showCloseButton = false\"\n >\n <div\n data-qa=\"dt-image-viewer-full\"\n class=\"d-image-viewer__full\"\n role=\"dialog\"\n aria-modal=\"true\"\n >\n <img\n class=\"d-image-viewer__full__image\"\n :src=\"imageSrc\"\n :alt=\"imageAlt\"\n >\n </div>\n <transition name=\"fade\">\n <dt-button\n v-if=\"showCloseButton\"\n ref=\"closeImage\"\n data-qa=\"dt-image-viewer-close-btn\"\n class=\"d-modal__close\"\n circle\n size=\"lg\"\n importance=\"clear\"\n kind=\"inverted\"\n :aria-label=\"closeAriaLabel\"\n @click=\"close\"\n >\n <template #icon>\n <dt-icon\n class=\"d-image-viewer__close-button\"\n name=\"close\"\n size=\"400\"\n />\n </template>\n </dt-button>\n </transition>\n </div>\n </portal>\n </div>\n</template>\n\n<script>\nimport Modal from '@/common/mixins/modal';\nimport { EVENT_KEYNAMES } from '@/common/constants';\nimport { DtIcon } from '@/components/icon';\nimport { DtButton } from '@/components/button';\nimport { Portal } from '@linusborg/vue-simple-portal';\n\nexport default {\n name: 'DtImageViewer',\n\n components: {\n Portal,\n DtButton,\n DtIcon,\n },\n\n mixins: [Modal],\n\n props: {\n /**\n * Controls whether the image modal is shown. Leaving this null will have the image modal\n * trigger on click by default.\n * If you set this value, the default trigger behavior will be disabled and you can control it as you need.\n * Supports .sync modifier\n * @values null, true, false\n */\n open: {\n type: Boolean,\n default: null,\n },\n\n /**\n * URL of the image to be shown\n */\n imageSrc: {\n type: String,\n required: true,\n },\n\n /**\n * Alt text of image\n */\n imageAlt: {\n type: String,\n required: true,\n },\n\n /**\n * Image Class\n */\n imageButtonClass: {\n type: String,\n required: false,\n default: '',\n },\n\n /**\n * Aria label\n */\n ariaLabel: {\n type: String,\n required: true,\n },\n\n /**\n * Aria label for close button\n */\n closeAriaLabel: {\n type: String,\n required: true,\n },\n },\n\n emits: [\n /**\n * Emitted when popover is shown or hidden\n *\n * @event opened\n * @type {Boolean}\n */\n 'opened',\n\n /**\n * Event fired to sync the open prop with the parent component\n * @event update:open\n */\n 'update:open',\n ],\n\n data () {\n return {\n showCloseButton: true,\n isOpen: false,\n };\n },\n\n computed: {\n modalListeners () {\n return {\n ...this.$listeners,\n\n click: event => {\n (event.target === event.currentTarget) && this.close();\n },\n\n keydown: event => {\n switch (event.code) {\n case EVENT_KEYNAMES.esc:\n case EVENT_KEYNAMES.escape:\n this.close();\n break;\n case EVENT_KEYNAMES.tab:\n this.trapFocus(event);\n break;\n }\n },\n };\n },\n },\n\n watch: {\n isOpen: {\n immediate: true,\n handler (isShowing) {\n if (isShowing) {\n // Set a reference to the previously-active element, to which we'll return focus on modal close.\n this.previousActiveElement = document.activeElement;\n } else {\n // Modal is being hidden, so return focus to the previously active element before clearing the reference.\n this.previousActiveElement?.focus();\n this.previousActiveElement = null;\n }\n },\n },\n\n open: {\n handler: function (open) {\n if (open !== null) {\n this.isOpen = open;\n }\n },\n\n immediate: true,\n },\n },\n\n methods: {\n openModal () {\n // Has custom control passed in\n if (this.open !== null) {\n return;\n }\n this.isOpen = true;\n this.showCloseButton = true;\n this.$emit('opened', true);\n\n setTimeout(() => {\n this.focusAfterOpen();\n });\n },\n\n close () {\n this.isOpen = false;\n this.$emit('opened', false);\n\n if (this.open !== null) {\n this.$emit('update:open', false);\n }\n },\n\n focusAfterOpen () {\n this.$refs.closeImage?.$el.focus();\n },\n\n trapFocus (e) {\n if (this.isOpen) {\n this.focusTrappedTabPress(e);\n }\n },\n\n },\n};\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;AAwEA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,QAAA,CAAA,KAAA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,kBAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,gBAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,iBAAA;AAAA,MACA,QAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,iBAAA;AACA,aAAA;AAAA,QACA,GAAA,KAAA;AAAA,QAEA,OAAA,WAAA;AACA,UAAA,MAAA,WAAA,MAAA,iBAAA,KAAA;QACA;AAAA,QAEA,SAAA,WAAA;AACA,kBAAA,MAAA,MAAA;AAAA,YACA,KAAA,eAAA;AAAA,YACA,KAAA,eAAA;AACA,mBAAA,MAAA;AACA;AAAA,YACA,KAAA,eAAA;AACA,mBAAA,UAAA,KAAA;AACA;AAAA,UACA;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA,QAAA;AAAA,MACA,WAAA;AAAA,MACA,QAAA,WAAA;;AACA,YAAA,WAAA;AAEA,eAAA,wBAAA,SAAA;AAAA,QACA,OAAA;AAEA,qBAAA,0BAAA,mBAAA;AACA,eAAA,wBAAA;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,MAAA;AAAA,MACA,SAAA,SAAA,MAAA;AACA,YAAA,SAAA,MAAA;AACA,eAAA,SAAA;AAAA,QACA;AAAA,MACA;AAAA,MAEA,WAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,YAAA;AAEA,UAAA,KAAA,SAAA,MAAA;AACA;AAAA,MACA;AACA,WAAA,SAAA;AACA,WAAA,kBAAA;AACA,WAAA,MAAA,UAAA,IAAA;AAEA,iBAAA,MAAA;AACA,aAAA,eAAA;AAAA,MACA,CAAA;AAAA,IACA;AAAA,IAEA,QAAA;AACA,WAAA,SAAA;AACA,WAAA,MAAA,UAAA,KAAA;AAEA,UAAA,KAAA,SAAA,MAAA;AACA,aAAA,MAAA,eAAA,KAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,iBAAA;;AACA,iBAAA,MAAA,eAAA,mBAAA,IAAA;AAAA,IACA;AAAA,IAEA,UAAA,GAAA;AACA,UAAA,KAAA,QAAA;AACA,aAAA,qBAAA,CAAA;AAAA,MACA;AAAA,IACA;AAAA,EAEA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"image-viewer.js","sources":["../../components/image_viewer/image_viewer.vue"],"sourcesContent":["<template>\n <div>\n <dt-button\n data-qa=\"dt-image-viewer-preview\"\n class=\"d-image-viewer__preview-button\"\n :aria-label=\"ariaLabel\"\n importance=\"clear\"\n @click=\"openModal\"\n >\n <img\n :class=\"imageButtonClass\"\n :src=\"imageSrc\"\n :alt=\"imageAlt\"\n >\n </dt-button>\n <portal\n v-if=\"isOpen\"\n :selector=\"appendTo\"\n >\n <div\n :aria-hidden=\"!isOpen ? 'true' : 'false'\"\n class=\"d-modal\"\n data-qa=\"dt-modal\"\n v-on=\"modalListeners\"\n @mouseover=\"showCloseButton = true\"\n @mouseleave=\"showCloseButton = false\"\n @focusin=\" showCloseButton = true\"\n @focusout=\" showCloseButton = false\"\n >\n <div\n data-qa=\"dt-image-viewer-full\"\n class=\"d-image-viewer__full\"\n role=\"dialog\"\n aria-modal=\"true\"\n >\n <img\n class=\"d-image-viewer__full__image\"\n :src=\"imageSrc\"\n :alt=\"imageAlt\"\n >\n </div>\n <transition name=\"fade\">\n <dt-button\n v-if=\"showCloseButton\"\n ref=\"closeImage\"\n data-qa=\"dt-image-viewer-close-btn\"\n class=\"d-modal__close\"\n circle\n size=\"lg\"\n importance=\"clear\"\n kind=\"inverted\"\n :aria-label=\"closeAriaLabel\"\n @click=\"close\"\n >\n <template #icon>\n <dt-icon\n class=\"d-image-viewer__close-button\"\n name=\"close\"\n size=\"400\"\n />\n </template>\n </dt-button>\n </transition>\n </div>\n </portal>\n </div>\n</template>\n\n<script>\nimport Modal from '@/common/mixins/modal';\nimport { EVENT_KEYNAMES } from '@/common/constants';\nimport { DtIcon } from '@/components/icon';\nimport { DtButton } from '@/components/button';\nimport { Portal } from '@linusborg/vue-simple-portal';\n\nexport default {\n name: 'DtImageViewer',\n\n components: {\n Portal,\n DtButton,\n DtIcon,\n },\n\n mixins: [Modal],\n\n props: {\n /**\n * By default the portal appends to the body of the root parent. We can modify\n * this behaviour by passing an appendTo prop that points to an id or an html tag from the root of the parent.\n * The appendTo prop expects a CSS selector string or an actual DOM node.\n * type: string | HTMLElement, default: 'body'\n */\n appendTo: {\n type: String,\n default: 'body',\n },\n\n /**\n * Controls whether the image modal is shown. Leaving this null will have the image modal\n * trigger on click by default.\n * If you set this value, the default trigger behavior will be disabled and you can control it as you need.\n * Supports .sync modifier\n * @values null, true, false\n */\n open: {\n type: Boolean,\n default: null,\n },\n\n /**\n * URL of the image to be shown\n */\n imageSrc: {\n type: String,\n required: true,\n },\n\n /**\n * Alt text of image\n */\n imageAlt: {\n type: String,\n required: true,\n },\n\n /**\n * Image Class\n */\n imageButtonClass: {\n type: String,\n required: false,\n default: '',\n },\n\n /**\n * Aria label\n */\n ariaLabel: {\n type: String,\n required: true,\n },\n\n /**\n * Aria label for close button\n */\n closeAriaLabel: {\n type: String,\n required: true,\n },\n },\n\n emits: [\n /**\n * Emitted when popover is shown or hidden\n *\n * @event opened\n * @type {Boolean}\n */\n 'opened',\n\n /**\n * Event fired to sync the open prop with the parent component\n * @event update:open\n */\n 'update:open',\n ],\n\n data () {\n return {\n showCloseButton: true,\n isOpen: false,\n };\n },\n\n computed: {\n modalListeners () {\n return {\n ...this.$listeners,\n\n click: event => {\n (event.target === event.currentTarget) && this.close();\n },\n\n keydown: event => {\n switch (event.code) {\n case EVENT_KEYNAMES.esc:\n case EVENT_KEYNAMES.escape:\n this.close();\n break;\n case EVENT_KEYNAMES.tab:\n this.trapFocus(event);\n break;\n }\n },\n };\n },\n },\n\n watch: {\n isOpen: {\n immediate: true,\n handler (isShowing) {\n if (isShowing) {\n // Set a reference to the previously-active element, to which we'll return focus on modal close.\n this.previousActiveElement = document.activeElement;\n } else {\n // Modal is being hidden, so return focus to the previously active element before clearing the reference.\n this.previousActiveElement?.focus();\n this.previousActiveElement = null;\n }\n },\n },\n\n open: {\n handler: function (open) {\n if (open !== null) {\n this.isOpen = open;\n }\n },\n\n immediate: true,\n },\n },\n\n methods: {\n openModal () {\n // Has custom control passed in\n if (this.open !== null) {\n return;\n }\n this.isOpen = true;\n this.showCloseButton = true;\n this.$emit('opened', true);\n\n setTimeout(() => {\n this.focusAfterOpen();\n });\n },\n\n close () {\n this.isOpen = false;\n this.$emit('opened', false);\n\n if (this.open !== null) {\n this.$emit('update:open', false);\n }\n },\n\n focusAfterOpen () {\n this.$refs.closeImage?.$el.focus();\n },\n\n trapFocus (e) {\n if (this.isOpen) {\n this.focusTrappedTabPress(e);\n }\n },\n\n },\n};\n</script>\n"],"names":["_sfc_main","name","components","Portal","DtButton","DtIcon","mixins","Modal","props","appendTo","type","String","default","open","Boolean","imageSrc","required","imageAlt","imageButtonClass","ariaLabel","closeAriaLabel","emits","data","showCloseButton","isOpen","computed","modalListeners","$listeners","click","event","target","currentTarget","close","keydown","code","EVENT_KEYNAMES","esc","escape","tab","trapFocus","watch","immediate","handler","isShowing","previousActiveElement","document","activeElement","focus","methods","openModal","$emit","setTimeout","focusAfterOpen","$refs","closeImage","$el","e","focusTrappedTabPress"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const input_group = require("../chunks/input_group-m3cWYUfI.js");
3
+ const input_group = require("../chunks/input_group-pE6ec9R3.js");
4
4
  const _pluginVue2_normalizer = require("../chunks/_plugin-vue2_normalizer-1aBeR4AK.js");
5
5
  const lib_validationMessages = require("./validation-messages.cjs");
6
6
  require("vue");
@@ -9,7 +9,9 @@ require("../common/constants.cjs");
9
9
  require("../common/utils.cjs");
10
10
  const _sfc_main = {
11
11
  name: "DtInputGroup",
12
- components: { DtValidationMessages: lib_validationMessages.DtValidationMessages },
12
+ components: {
13
+ DtValidationMessages: lib_validationMessages.DtValidationMessages
14
+ },
13
15
  mixins: [input_group.InputGroupMixin],
14
16
  props: {
15
17
  /**
@@ -72,21 +74,29 @@ const _sfc_main = {
72
74
  };
73
75
  var _sfc_render = function render() {
74
76
  var _vm = this, _c = _vm._self._c;
75
- return _c("fieldset", { staticClass: "d-input-group__fieldset", attrs: { "data-qa": _vm.dataQaGroup } }, [_vm.$slots.legend || _vm.legend ? _c("legend", _vm._b({ class: ["d-label", _vm.legendClass], attrs: { "data-qa": _vm.dataQaGroupLegend } }, "legend", _vm.legendChildProps, false), [_vm._t("legend", function() {
77
+ return _c("fieldset", {
78
+ staticClass: "d-input-group__fieldset",
79
+ attrs: {
80
+ "data-qa": _vm.dataQaGroup
81
+ }
82
+ }, [_vm.$slots.legend || _vm.legend ? _c("legend", _vm._b({
83
+ class: ["d-label", _vm.legendClass],
84
+ attrs: {
85
+ "data-qa": _vm.dataQaGroupLegend
86
+ }
87
+ }, "legend", _vm.legendChildProps, false), [_vm._t("legend", function() {
76
88
  return [_vm._v(" " + _vm._s(_vm.legend) + " ")];
77
- })], 2) : _vm._e(), _vm._t("default"), _c("dt-validation-messages", _vm._b({ class: _vm.messagesClass, attrs: { "validation-messages": _vm.formattedMessages, "show-messages": _vm.showMessages, "data-qa": _vm.dataQaGroupMessages } }, "dt-validation-messages", _vm.messagesChildProps, false))], 2);
89
+ })], 2) : _vm._e(), _vm._t("default"), _c("dt-validation-messages", _vm._b({
90
+ class: _vm.messagesClass,
91
+ attrs: {
92
+ "validation-messages": _vm.formattedMessages,
93
+ "show-messages": _vm.showMessages,
94
+ "data-qa": _vm.dataQaGroupMessages
95
+ }
96
+ }, "dt-validation-messages", _vm.messagesChildProps, false))], 2);
78
97
  };
79
98
  var _sfc_staticRenderFns = [];
80
- var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
81
- _sfc_main,
82
- _sfc_render,
83
- _sfc_staticRenderFns,
84
- false,
85
- null,
86
- null,
87
- null,
88
- null
89
- );
99
+ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(_sfc_main, _sfc_render, _sfc_staticRenderFns, false, null, null, null, null);
90
100
  const DtInputGroup = __component__.exports;
91
101
  exports.DtInputGroup = DtInputGroup;
92
102
  //# sourceMappingURL=input-group.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-group.cjs","sources":["../../components/input_group/input_group.vue"],"sourcesContent":["<template>\n <fieldset\n class=\"d-input-group__fieldset\"\n :data-qa=\"dataQaGroup\"\n >\n <legend\n v-if=\"$slots.legend || legend\"\n :class=\"['d-label', legendClass]\"\n v-bind=\"legendChildProps\"\n :data-qa=\"dataQaGroupLegend\"\n >\n <!-- @slot slot for Input Group Legend -->\n <slot name=\"legend\">\n {{ legend }}\n </slot>\n </legend>\n <!-- @slot slot for Input Group Components -->\n <slot />\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n :data-qa=\"dataQaGroupMessages\"\n v-bind=\"messagesChildProps\"\n />\n </fieldset>\n</template>\n\n<script>\nimport { InputGroupMixin } from '@/common/mixins/input_group';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * Input Groups are convenience components for a grouping of related inputs.\n * While each input within the group could be independent, the `v-model` on the group\n * provides a convenient interface for determining the current state of the group.\n * @see https://dialtone.dialpad.com/components/input_group.html\n */\nexport default {\n name: 'DtInputGroup',\n\n components: { DtValidationMessages },\n\n mixins: [InputGroupMixin],\n\n props: {\n /**\n * A data qa tag for the input group\n */\n dataQaGroup: {\n type: String,\n default: 'input-group',\n },\n\n /**\n * A data qa tag for the input group legend\n */\n dataQaGroupLegend: {\n type: String,\n default: 'input-group-legend',\n },\n\n /**\n * A data qa tag for the input group messages\n */\n dataQaGroupMessages: {\n type: String,\n default: 'input-group-messages',\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n */\n 'input',\n ],\n\n data () {\n return {\n internalValue: this.value,\n // wrap values in object to make reactive\n provideObj: {\n value: this.value,\n },\n };\n },\n\n watch: {\n value (newValue) {\n this.internalValue = newValue;\n },\n\n /*\n * watching value to support 2 way binding for slotted inputs.\n * need this to pass value to slotted inputs if modified outside\n * input group.\n */\n internalValue (newInternalValue) {\n this.provideObj.value = newInternalValue;\n },\n },\n\n methods: {\n getMessageKey (type, index) {\n return `input-group-message-${type}-${index}-${this.id}`;\n },\n },\n};\n</script>\n"],"names":["DtValidationMessages","InputGroupMixin"],"mappings":";;;;;;;;;AAsCA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA,EAAAA,sBAAAA,uBAAAA,qBAAA;AAAA,EAEA,QAAA,CAAAC,YAAAA,eAAA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,aAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,mBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,qBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,eAAA,KAAA;AAAA;AAAA,MAEA,YAAA;AAAA,QACA,OAAA,KAAA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA,MAAA,UAAA;AACA,WAAA,gBAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,cAAA,kBAAA;AACA,WAAA,WAAA,QAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,cAAA,MAAA,OAAA;AACA,aAAA,uBAAA,IAAA,IAAA,KAAA,IAAA,KAAA,EAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"input-group.cjs","sources":["../../components/input_group/input_group.vue"],"sourcesContent":["<template>\n <fieldset\n class=\"d-input-group__fieldset\"\n :data-qa=\"dataQaGroup\"\n >\n <legend\n v-if=\"$slots.legend || legend\"\n :class=\"['d-label', legendClass]\"\n v-bind=\"legendChildProps\"\n :data-qa=\"dataQaGroupLegend\"\n >\n <!-- @slot slot for Input Group Legend -->\n <slot name=\"legend\">\n {{ legend }}\n </slot>\n </legend>\n <!-- @slot slot for Input Group Components -->\n <slot />\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n :data-qa=\"dataQaGroupMessages\"\n v-bind=\"messagesChildProps\"\n />\n </fieldset>\n</template>\n\n<script>\nimport { InputGroupMixin } from '@/common/mixins/input_group';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * Input Groups are convenience components for a grouping of related inputs.\n * While each input within the group could be independent, the `v-model` on the group\n * provides a convenient interface for determining the current state of the group.\n * @see https://dialtone.dialpad.com/components/input_group.html\n */\nexport default {\n name: 'DtInputGroup',\n\n components: { DtValidationMessages },\n\n mixins: [InputGroupMixin],\n\n props: {\n /**\n * A data qa tag for the input group\n */\n dataQaGroup: {\n type: String,\n default: 'input-group',\n },\n\n /**\n * A data qa tag for the input group legend\n */\n dataQaGroupLegend: {\n type: String,\n default: 'input-group-legend',\n },\n\n /**\n * A data qa tag for the input group messages\n */\n dataQaGroupMessages: {\n type: String,\n default: 'input-group-messages',\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n */\n 'input',\n ],\n\n data () {\n return {\n internalValue: this.value,\n // wrap values in object to make reactive\n provideObj: {\n value: this.value,\n },\n };\n },\n\n watch: {\n value (newValue) {\n this.internalValue = newValue;\n },\n\n /*\n * watching value to support 2 way binding for slotted inputs.\n * need this to pass value to slotted inputs if modified outside\n * input group.\n */\n internalValue (newInternalValue) {\n this.provideObj.value = newInternalValue;\n },\n },\n\n methods: {\n getMessageKey (type, index) {\n return `input-group-message-${type}-${index}-${this.id}`;\n },\n },\n};\n</script>\n"],"names":["_sfc_main","name","components","DtValidationMessages","mixins","InputGroupMixin","props","dataQaGroup","type","String","default","dataQaGroupLegend","dataQaGroupMessages","emits","data","internalValue","value","provideObj","watch","newValue","newInternalValue","methods","getMessageKey","index","id"],"mappings":";;;;;;;;;AAsCA,MAAAA,YAAA;AAAA,EACAC,MAAA;AAAA,EAEAC,YAAA;AAAA,IAAAC,sBAAAA,uBAAAA;AAAAA,EAAA;AAAA,EAEAC,QAAA,CAAAC,YAAAA,eAAA;AAAA,EAEAC,OAAA;AAAA;AAAA;AAAA;AAAA,IAIAC,aAAA;AAAA,MACAC,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAC,mBAAA;AAAA,MACAH,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAE,qBAAA;AAAA,MACAJ,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEAG,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA;AAAA,EAAA;AAAA,EAGAC,OAAA;AACA,WAAA;AAAA,MACAC,eAAA,KAAAC;AAAAA;AAAAA,MAEAC,YAAA;AAAA,QACAD,OAAA,KAAAA;AAAAA,MACA;AAAA;EAEA;AAAA,EAEAE,OAAA;AAAA,IACAF,MAAAG,UAAA;AACA,WAAAJ,gBAAAI;AAAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOAJ,cAAAK,kBAAA;AACA,WAAAH,WAAAD,QAAAI;AAAAA,IACA;AAAA,EACA;AAAA,EAEAC,SAAA;AAAA,IACAC,cAAAd,MAAAe,OAAA;AACA,aAAA,uBAAAf,IAAA,IAAAe,KAAA,IAAA,KAAAC,EAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,4 @@
1
- import { InputGroupMixin } from "../chunks/input_group-qVZaS5Bb.js";
1
+ import { InputGroupMixin } from "../chunks/input_group-ZI7aVGEp.js";
2
2
  import { normalizeComponent } from "../chunks/_plugin-vue2_normalizer-sOSkiPF3.js";
3
3
  import { DtValidationMessages } from "./validation-messages.js";
4
4
  import "vue";
@@ -7,7 +7,9 @@ import "../common/constants.js";
7
7
  import "../common/utils.js";
8
8
  const _sfc_main = {
9
9
  name: "DtInputGroup",
10
- components: { DtValidationMessages },
10
+ components: {
11
+ DtValidationMessages
12
+ },
11
13
  mixins: [InputGroupMixin],
12
14
  props: {
13
15
  /**
@@ -70,21 +72,29 @@ const _sfc_main = {
70
72
  };
71
73
  var _sfc_render = function render() {
72
74
  var _vm = this, _c = _vm._self._c;
73
- return _c("fieldset", { staticClass: "d-input-group__fieldset", attrs: { "data-qa": _vm.dataQaGroup } }, [_vm.$slots.legend || _vm.legend ? _c("legend", _vm._b({ class: ["d-label", _vm.legendClass], attrs: { "data-qa": _vm.dataQaGroupLegend } }, "legend", _vm.legendChildProps, false), [_vm._t("legend", function() {
75
+ return _c("fieldset", {
76
+ staticClass: "d-input-group__fieldset",
77
+ attrs: {
78
+ "data-qa": _vm.dataQaGroup
79
+ }
80
+ }, [_vm.$slots.legend || _vm.legend ? _c("legend", _vm._b({
81
+ class: ["d-label", _vm.legendClass],
82
+ attrs: {
83
+ "data-qa": _vm.dataQaGroupLegend
84
+ }
85
+ }, "legend", _vm.legendChildProps, false), [_vm._t("legend", function() {
74
86
  return [_vm._v(" " + _vm._s(_vm.legend) + " ")];
75
- })], 2) : _vm._e(), _vm._t("default"), _c("dt-validation-messages", _vm._b({ class: _vm.messagesClass, attrs: { "validation-messages": _vm.formattedMessages, "show-messages": _vm.showMessages, "data-qa": _vm.dataQaGroupMessages } }, "dt-validation-messages", _vm.messagesChildProps, false))], 2);
87
+ })], 2) : _vm._e(), _vm._t("default"), _c("dt-validation-messages", _vm._b({
88
+ class: _vm.messagesClass,
89
+ attrs: {
90
+ "validation-messages": _vm.formattedMessages,
91
+ "show-messages": _vm.showMessages,
92
+ "data-qa": _vm.dataQaGroupMessages
93
+ }
94
+ }, "dt-validation-messages", _vm.messagesChildProps, false))], 2);
76
95
  };
77
96
  var _sfc_staticRenderFns = [];
78
- var __component__ = /* @__PURE__ */ normalizeComponent(
79
- _sfc_main,
80
- _sfc_render,
81
- _sfc_staticRenderFns,
82
- false,
83
- null,
84
- null,
85
- null,
86
- null
87
- );
97
+ var __component__ = /* @__PURE__ */ normalizeComponent(_sfc_main, _sfc_render, _sfc_staticRenderFns, false, null, null, null, null);
88
98
  const DtInputGroup = __component__.exports;
89
99
  export {
90
100
  DtInputGroup
@@ -1 +1 @@
1
- {"version":3,"file":"input-group.js","sources":["../../components/input_group/input_group.vue"],"sourcesContent":["<template>\n <fieldset\n class=\"d-input-group__fieldset\"\n :data-qa=\"dataQaGroup\"\n >\n <legend\n v-if=\"$slots.legend || legend\"\n :class=\"['d-label', legendClass]\"\n v-bind=\"legendChildProps\"\n :data-qa=\"dataQaGroupLegend\"\n >\n <!-- @slot slot for Input Group Legend -->\n <slot name=\"legend\">\n {{ legend }}\n </slot>\n </legend>\n <!-- @slot slot for Input Group Components -->\n <slot />\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n :data-qa=\"dataQaGroupMessages\"\n v-bind=\"messagesChildProps\"\n />\n </fieldset>\n</template>\n\n<script>\nimport { InputGroupMixin } from '@/common/mixins/input_group';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * Input Groups are convenience components for a grouping of related inputs.\n * While each input within the group could be independent, the `v-model` on the group\n * provides a convenient interface for determining the current state of the group.\n * @see https://dialtone.dialpad.com/components/input_group.html\n */\nexport default {\n name: 'DtInputGroup',\n\n components: { DtValidationMessages },\n\n mixins: [InputGroupMixin],\n\n props: {\n /**\n * A data qa tag for the input group\n */\n dataQaGroup: {\n type: String,\n default: 'input-group',\n },\n\n /**\n * A data qa tag for the input group legend\n */\n dataQaGroupLegend: {\n type: String,\n default: 'input-group-legend',\n },\n\n /**\n * A data qa tag for the input group messages\n */\n dataQaGroupMessages: {\n type: String,\n default: 'input-group-messages',\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n */\n 'input',\n ],\n\n data () {\n return {\n internalValue: this.value,\n // wrap values in object to make reactive\n provideObj: {\n value: this.value,\n },\n };\n },\n\n watch: {\n value (newValue) {\n this.internalValue = newValue;\n },\n\n /*\n * watching value to support 2 way binding for slotted inputs.\n * need this to pass value to slotted inputs if modified outside\n * input group.\n */\n internalValue (newInternalValue) {\n this.provideObj.value = newInternalValue;\n },\n },\n\n methods: {\n getMessageKey (type, index) {\n return `input-group-message-${type}-${index}-${this.id}`;\n },\n },\n};\n</script>\n"],"names":[],"mappings":";;;;;;;AAsCA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA,EAAA,qBAAA;AAAA,EAEA,QAAA,CAAA,eAAA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,aAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,mBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,qBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,eAAA,KAAA;AAAA;AAAA,MAEA,YAAA;AAAA,QACA,OAAA,KAAA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA,MAAA,UAAA;AACA,WAAA,gBAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,cAAA,kBAAA;AACA,WAAA,WAAA,QAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,cAAA,MAAA,OAAA;AACA,aAAA,uBAAA,IAAA,IAAA,KAAA,IAAA,KAAA,EAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"input-group.js","sources":["../../components/input_group/input_group.vue"],"sourcesContent":["<template>\n <fieldset\n class=\"d-input-group__fieldset\"\n :data-qa=\"dataQaGroup\"\n >\n <legend\n v-if=\"$slots.legend || legend\"\n :class=\"['d-label', legendClass]\"\n v-bind=\"legendChildProps\"\n :data-qa=\"dataQaGroupLegend\"\n >\n <!-- @slot slot for Input Group Legend -->\n <slot name=\"legend\">\n {{ legend }}\n </slot>\n </legend>\n <!-- @slot slot for Input Group Components -->\n <slot />\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n :data-qa=\"dataQaGroupMessages\"\n v-bind=\"messagesChildProps\"\n />\n </fieldset>\n</template>\n\n<script>\nimport { InputGroupMixin } from '@/common/mixins/input_group';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * Input Groups are convenience components for a grouping of related inputs.\n * While each input within the group could be independent, the `v-model` on the group\n * provides a convenient interface for determining the current state of the group.\n * @see https://dialtone.dialpad.com/components/input_group.html\n */\nexport default {\n name: 'DtInputGroup',\n\n components: { DtValidationMessages },\n\n mixins: [InputGroupMixin],\n\n props: {\n /**\n * A data qa tag for the input group\n */\n dataQaGroup: {\n type: String,\n default: 'input-group',\n },\n\n /**\n * A data qa tag for the input group legend\n */\n dataQaGroupLegend: {\n type: String,\n default: 'input-group-legend',\n },\n\n /**\n * A data qa tag for the input group messages\n */\n dataQaGroupMessages: {\n type: String,\n default: 'input-group-messages',\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n */\n 'input',\n ],\n\n data () {\n return {\n internalValue: this.value,\n // wrap values in object to make reactive\n provideObj: {\n value: this.value,\n },\n };\n },\n\n watch: {\n value (newValue) {\n this.internalValue = newValue;\n },\n\n /*\n * watching value to support 2 way binding for slotted inputs.\n * need this to pass value to slotted inputs if modified outside\n * input group.\n */\n internalValue (newInternalValue) {\n this.provideObj.value = newInternalValue;\n },\n },\n\n methods: {\n getMessageKey (type, index) {\n return `input-group-message-${type}-${index}-${this.id}`;\n },\n },\n};\n</script>\n"],"names":["_sfc_main","name","components","DtValidationMessages","mixins","InputGroupMixin","props","dataQaGroup","type","String","default","dataQaGroupLegend","dataQaGroupMessages","emits","data","internalValue","value","provideObj","watch","newValue","newInternalValue","methods","getMessageKey","index","id"],"mappings":";;;;;;;AAsCA,MAAAA,YAAA;AAAA,EACAC,MAAA;AAAA,EAEAC,YAAA;AAAA,IAAAC;AAAAA,EAAA;AAAA,EAEAC,QAAA,CAAAC,eAAA;AAAA,EAEAC,OAAA;AAAA;AAAA;AAAA;AAAA,IAIAC,aAAA;AAAA,MACAC,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAC,mBAAA;AAAA,MACAH,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAE,qBAAA;AAAA,MACAJ,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEAG,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA;AAAA,EAAA;AAAA,EAGAC,OAAA;AACA,WAAA;AAAA,MACAC,eAAA,KAAAC;AAAAA;AAAAA,MAEAC,YAAA;AAAA,QACAD,OAAA,KAAAA;AAAAA,MACA;AAAA;EAEA;AAAA,EAEAE,OAAA;AAAA,IACAF,MAAAG,UAAA;AACA,WAAAJ,gBAAAI;AAAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOAJ,cAAAK,kBAAA;AACA,WAAAH,WAAAD,QAAAI;AAAAA,IACA;AAAA,EACA;AAAA,EAEAC,SAAA;AAAA,IACAC,cAAAd,MAAAe,OAAA;AACA,aAAA,uBAAAf,IAAA,IAAAe,KAAA,IAAA,KAAAC,EAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const common_constants = require("../common/constants.cjs");
4
4
  const common_utils = require("../common/utils.cjs");
5
- const input = require("../chunks/input-Axw-wFj2.js");
5
+ const input = require("../chunks/input-Hqw33WBe.js");
6
6
  const _pluginVue2_normalizer = require("../chunks/_plugin-vue2_normalizer-1aBeR4AK.js");
7
7
  const lib_validationMessages = require("./validation-messages.cjs");
8
8
  require("vue");
@@ -64,7 +64,9 @@ const LABEL_SIZE_CLASSES = {
64
64
  };
65
65
  const _sfc_main = {
66
66
  name: "DtInput",
67
- components: { DtValidationMessages: lib_validationMessages.DtValidationMessages },
67
+ components: {
68
+ DtValidationMessages: lib_validationMessages.DtValidationMessages
69
+ },
68
70
  mixins: [input.MessagesMixin],
69
71
  inheritAttrs: false,
70
72
  props: {
@@ -373,27 +375,19 @@ const _sfc_main = {
373
375
  },
374
376
  methods: {
375
377
  inputClasses() {
376
- return [
377
- "d-input__input",
378
- this.inputComponent === "input" ? "d-input" : "d-textarea",
379
- {
380
- [this.stateClass]: this.showInputState,
381
- "d-input-icon--left": this.$slots.leftIcon,
382
- "d-input-icon--right": this.$slots.rightIcon
383
- },
384
- this.sizeModifierClass,
385
- this.inputClass
386
- ];
378
+ return ["d-input__input", this.inputComponent === "input" ? "d-input" : "d-textarea", {
379
+ [this.stateClass]: this.showInputState,
380
+ "d-input-icon--left": this.$slots.leftIcon,
381
+ "d-input-icon--right": this.$slots.rightIcon
382
+ }, this.sizeModifierClass, this.inputClass];
387
383
  },
388
384
  inputWrapperClasses() {
389
385
  if (this.hidden) {
390
386
  return [];
391
387
  }
392
- return [
393
- "d-input__wrapper",
394
- { [this.stateClass]: this.showInputState },
395
- this.inputWrapperClass
396
- ];
388
+ return ["d-input__wrapper", {
389
+ [this.stateClass]: this.showInputState
390
+ }, this.inputWrapperClass];
397
391
  },
398
392
  calculateLength(value) {
399
393
  if (typeof value !== "string") {
@@ -436,31 +430,105 @@ const _sfc_main = {
436
430
  };
437
431
  var _sfc_render = function render() {
438
432
  var _vm = this, _c = _vm._self._c;
439
- return _c("div", { ref: "container", class: ["d-input__root", { "d-input--hidden": _vm.hidden }], attrs: { "data-qa": "dt-input" } }, [_c("label", { staticClass: "d-input__label", attrs: { "aria-details": _vm.$slots.description || _vm.description ? _vm.descriptionKey : void 0, "data-qa": "dt-input-label-wrapper" } }, [_vm._t("labelSlot", function() {
440
- return [_vm.labelVisible && _vm.label ? _c("div", { ref: "label", class: [
441
- "d-input__label-text",
442
- "d-label",
443
- _vm.labelSizeClasses[_vm.size]
444
- ], attrs: { "data-qa": "dt-input-label" } }, [_vm._v(" " + _vm._s(_vm.label) + " ")]) : _vm._e()];
445
- }), _vm.$slots.description || _vm.description || _vm.shouldValidateLength ? _c("div", { ref: "description", class: [
446
- "d-input__description",
447
- "d-description",
448
- _vm.descriptionSizeClasses[_vm.size]
449
- ], attrs: { "id": _vm.descriptionKey, "data-qa": "dt-input-description" } }, [_vm.$slots.description || _vm.description ? _c("div", [_vm._t("description", function() {
433
+ return _c("div", {
434
+ ref: "container",
435
+ class: ["d-input__root", {
436
+ "d-input--hidden": _vm.hidden
437
+ }],
438
+ attrs: {
439
+ "data-qa": "dt-input"
440
+ }
441
+ }, [_c("label", {
442
+ staticClass: "d-input__label",
443
+ attrs: {
444
+ "aria-details": _vm.$slots.description || _vm.description ? _vm.descriptionKey : void 0,
445
+ "data-qa": "dt-input-label-wrapper"
446
+ }
447
+ }, [_vm._t("labelSlot", function() {
448
+ return [_vm.labelVisible && _vm.label ? _c("div", {
449
+ ref: "label",
450
+ class: ["d-input__label-text", "d-label", _vm.labelSizeClasses[_vm.size]],
451
+ attrs: {
452
+ "data-qa": "dt-input-label"
453
+ }
454
+ }, [_vm._v(" " + _vm._s(_vm.label) + " ")]) : _vm._e()];
455
+ }), _vm.$slots.description || _vm.description || _vm.shouldValidateLength ? _c("div", {
456
+ ref: "description",
457
+ class: ["d-input__description", "d-description", _vm.descriptionSizeClasses[_vm.size]],
458
+ attrs: {
459
+ "id": _vm.descriptionKey,
460
+ "data-qa": "dt-input-description"
461
+ }
462
+ }, [_vm.$slots.description || _vm.description ? _c("div", [_vm._t("description", function() {
450
463
  return [_vm._v(_vm._s(_vm.description))];
451
- })], 2) : _vm._e(), _vm.shouldValidateLength ? _c("div", { staticClass: "d-input__length-description", attrs: { "data-qa": "dt-input-length-description" } }, [_vm._v(" " + _vm._s(_vm.validationProps.length.description) + " ")]) : _vm._e()]) : _vm._e(), _c("div", { class: _vm.inputWrapperClasses(), attrs: { "read-only": _vm.disabled } }, [_c("span", { staticClass: "d-input-icon d-input-icon--left", attrs: { "data-qa": "dt-input-left-icon-wrapper" }, on: { "focusout": _vm.onBlur } }, [_vm._t("leftIcon", null, { "iconSize": _vm.iconSize })], 2), _vm.isTextarea ? _c("textarea", _vm._g(_vm._b({ ref: "input", class: _vm.inputClasses(), attrs: { "name": _vm.name, "disabled": _vm.disabled, "autocomplete": _vm.$attrs.autocomplete ?? "off", "maxlength": _vm.shouldLimitMaxLength ? _vm.validationProps.length.max : null, "data-qa": _vm.$attrs["data-qa"] ?? "dt-input-input" }, domProps: { "value": _vm.value } }, "textarea", _vm.$attrs, false), _vm.inputListeners)) : _c("input", _vm._g(_vm._b({ ref: "input", class: _vm.inputClasses(), attrs: { "name": _vm.name, "type": _vm.type, "disabled": _vm.disabled, "autocomplete": _vm.$attrs.autocomplete ?? "off", "maxlength": _vm.shouldLimitMaxLength ? _vm.validationProps.length.max : null, "data-qa": _vm.$attrs["data-qa"] ?? "dt-input-input" }, domProps: { "value": _vm.value } }, "input", _vm.$attrs, false), _vm.inputListeners)), _c("span", { staticClass: "d-input-icon d-input-icon--right", attrs: { "data-qa": "dt-input-right-icon-wrapper" }, on: { "focusout": _vm.onBlur } }, [_vm._t("rightIcon", null, { "iconSize": _vm.iconSize })], 2)])], 2), _c("dt-validation-messages", _vm._b({ class: _vm.messagesClass, attrs: { "validation-messages": _vm.validationMessages, "show-messages": _vm.showMessages, "data-qa": "dt-input-messages" } }, "dt-validation-messages", _vm.messagesChildProps, false))], 1);
464
+ })], 2) : _vm._e(), _vm.shouldValidateLength ? _c("div", {
465
+ staticClass: "d-input__length-description",
466
+ attrs: {
467
+ "data-qa": "dt-input-length-description"
468
+ }
469
+ }, [_vm._v(" " + _vm._s(_vm.validationProps.length.description) + " ")]) : _vm._e()]) : _vm._e(), _c("div", {
470
+ class: _vm.inputWrapperClasses(),
471
+ attrs: {
472
+ "read-only": _vm.disabled
473
+ }
474
+ }, [_c("span", {
475
+ staticClass: "d-input-icon d-input-icon--left",
476
+ attrs: {
477
+ "data-qa": "dt-input-left-icon-wrapper"
478
+ },
479
+ on: {
480
+ "focusout": _vm.onBlur
481
+ }
482
+ }, [_vm._t("leftIcon", null, {
483
+ "iconSize": _vm.iconSize
484
+ })], 2), _vm.isTextarea ? _c("textarea", _vm._g(_vm._b({
485
+ ref: "input",
486
+ class: _vm.inputClasses(),
487
+ attrs: {
488
+ "name": _vm.name,
489
+ "disabled": _vm.disabled,
490
+ "autocomplete": _vm.$attrs.autocomplete ?? "off",
491
+ "maxlength": _vm.shouldLimitMaxLength ? _vm.validationProps.length.max : null,
492
+ "data-qa": _vm.$attrs["data-qa"] ?? "dt-input-input"
493
+ },
494
+ domProps: {
495
+ "value": _vm.value
496
+ }
497
+ }, "textarea", _vm.$attrs, false), _vm.inputListeners)) : _c("input", _vm._g(_vm._b({
498
+ ref: "input",
499
+ class: _vm.inputClasses(),
500
+ attrs: {
501
+ "name": _vm.name,
502
+ "type": _vm.type,
503
+ "disabled": _vm.disabled,
504
+ "autocomplete": _vm.$attrs.autocomplete ?? "off",
505
+ "maxlength": _vm.shouldLimitMaxLength ? _vm.validationProps.length.max : null,
506
+ "data-qa": _vm.$attrs["data-qa"] ?? "dt-input-input"
507
+ },
508
+ domProps: {
509
+ "value": _vm.value
510
+ }
511
+ }, "input", _vm.$attrs, false), _vm.inputListeners)), _c("span", {
512
+ staticClass: "d-input-icon d-input-icon--right",
513
+ attrs: {
514
+ "data-qa": "dt-input-right-icon-wrapper"
515
+ },
516
+ on: {
517
+ "focusout": _vm.onBlur
518
+ }
519
+ }, [_vm._t("rightIcon", null, {
520
+ "iconSize": _vm.iconSize
521
+ })], 2)])], 2), _c("dt-validation-messages", _vm._b({
522
+ class: _vm.messagesClass,
523
+ attrs: {
524
+ "validation-messages": _vm.validationMessages,
525
+ "show-messages": _vm.showMessages,
526
+ "data-qa": "dt-input-messages"
527
+ }
528
+ }, "dt-validation-messages", _vm.messagesChildProps, false))], 1);
452
529
  };
453
530
  var _sfc_staticRenderFns = [];
454
- var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
455
- _sfc_main,
456
- _sfc_render,
457
- _sfc_staticRenderFns,
458
- false,
459
- null,
460
- null,
461
- null,
462
- null
463
- );
531
+ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(_sfc_main, _sfc_render, _sfc_staticRenderFns, false, null, null, null, null);
464
532
  const DtInput = __component__.exports;
465
533
  exports.DtInput = DtInput;
466
534
  exports.INPUT_SIZES = INPUT_SIZES;
@@ -1 +1 @@
1
- {"version":3,"file":"input.cjs","sources":["../../components/input/input_constants.js","../../components/input/input.vue"],"sourcesContent":["// Valid input types, any other input types (for example: 'radio' or 'checkbox') should\n// use the respective base vue components (radio.vue and checkout.vue).\nexport const INPUT_TYPES = {\n TEXT: 'text',\n TEXTAREA: 'textarea',\n PASSWORD: 'password',\n EMAIL: 'email',\n NUMBER: 'number',\n DATE: 'date',\n TIME: 'time',\n FILE: 'file',\n TEL: 'tel',\n};\n\nexport const INPUT_SIZES = {\n EXTRA_SMALL: 'xs',\n SMALL: 'sm',\n DEFAULT: 'md',\n LARGE: 'lg',\n EXTRA_LARGE: 'xl',\n};\n\nexport const INPUT_ICON_SIZES = {\n xs: '100',\n sm: '200',\n md: '200',\n lg: '400',\n xl: '500',\n};\n\nexport const INPUT_SIZE_CLASSES = {\n input: {\n xs: 'd-input--xs',\n sm: 'd-input--sm',\n lg: 'd-input--lg',\n xl: 'd-input--xl',\n },\n\n textarea: {\n xs: 'd-textarea--xs',\n sm: 'd-textarea--sm',\n lg: 'd-textarea--lg',\n xl: 'd-textarea--xl',\n },\n};\n\nexport const INPUT_STATE_CLASSES = {\n error: 'd-input--error',\n warning: 'd-input--warning',\n success: 'd-input--success',\n};\n\nexport const DESCRIPTION_SIZE_CLASSES = {\n lg: 'd-description--lg',\n xl: 'd-description--xl',\n};\n\nexport const LABEL_SIZE_CLASSES = {\n xs: 'd-label--xs',\n sm: 'd-label--sm',\n md: 'd-label--md',\n lg: 'd-label--lg',\n xl: 'd-label--xl',\n};\n\nexport default {\n INPUT_TYPES,\n INPUT_SIZES,\n INPUT_ICON_SIZES,\n INPUT_SIZE_CLASSES,\n INPUT_STATE_CLASSES,\n DESCRIPTION_SIZE_CLASSES,\n LABEL_SIZE_CLASSES,\n};\n","<template>\n <div\n ref=\"container\"\n :class=\"['d-input__root', { 'd-input--hidden': hidden }]\"\n data-qa=\"dt-input\"\n >\n <label\n class=\"d-input__label\"\n :aria-details=\"$slots.description || description ? descriptionKey : undefined\"\n data-qa=\"dt-input-label-wrapper\"\n >\n <!-- @slot Slot for label, defaults to label prop -->\n <slot name=\"labelSlot\">\n <div\n v-if=\"labelVisible && label\"\n ref=\"label\"\n data-qa=\"dt-input-label\"\n :class=\"[\n 'd-input__label-text',\n 'd-label',\n labelSizeClasses[size],\n ]\"\n >\n {{ label }}\n </div>\n </slot>\n <div\n v-if=\"$slots.description || description || shouldValidateLength\"\n :id=\"descriptionKey\"\n ref=\"description\"\n :class=\"[\n 'd-input__description',\n 'd-description',\n descriptionSizeClasses[size],\n ]\"\n data-qa=\"dt-input-description\"\n >\n <div\n v-if=\"$slots.description || description\"\n >\n <!-- @slot Slot for description, defaults to description prop -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <div\n v-if=\"shouldValidateLength\"\n data-qa=\"dt-input-length-description\"\n class=\"d-input__length-description\"\n >\n {{ validationProps.length.description }}\n </div>\n </div>\n <div\n :class=\"inputWrapperClasses()\"\n :read-only=\"disabled\"\n >\n <span\n class=\"d-input-icon d-input-icon--left\"\n data-qa=\"dt-input-left-icon-wrapper\"\n @focusout=\"onBlur\"\n >\n <!-- @slot Slot for left icon -->\n <slot\n name=\"leftIcon\"\n :icon-size=\"iconSize\"\n />\n </span>\n <textarea\n v-if=\"isTextarea\"\n ref=\"input\"\n :value=\"value\"\n :name=\"name\"\n :disabled=\"disabled\"\n :autocomplete=\"$attrs.autocomplete ?? 'off'\"\n :class=\"inputClasses()\"\n :maxlength=\"shouldLimitMaxLength ? validationProps.length.max : null\"\n :data-qa=\"$attrs['data-qa'] ?? 'dt-input-input'\"\n v-bind=\"$attrs\"\n v-on=\"inputListeners\"\n />\n <input\n v-else\n ref=\"input\"\n :value=\"value\"\n :name=\"name\"\n :type=\"type\"\n :disabled=\"disabled\"\n :autocomplete=\"$attrs.autocomplete ?? 'off'\"\n :class=\"inputClasses()\"\n :maxlength=\"shouldLimitMaxLength ? validationProps.length.max : null\"\n :data-qa=\"$attrs['data-qa'] ?? 'dt-input-input'\"\n v-bind=\"$attrs\"\n v-on=\"inputListeners\"\n >\n <span\n class=\"d-input-icon d-input-icon--right\"\n data-qa=\"dt-input-right-icon-wrapper\"\n @focusout=\"onBlur\"\n >\n <!-- @slot Slot for right icon -->\n <slot\n name=\"rightIcon\"\n :icon-size=\"iconSize\"\n />\n </span>\n </div>\n </label>\n <dt-validation-messages\n :validation-messages=\"validationMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-input-messages\"\n />\n </div>\n</template>\n\n<script>\n/* eslint-disable max-lines */\nimport { DESCRIPTION_SIZE_TYPES, VALIDATION_MESSAGE_TYPES } from '@/common/constants';\nimport {\n INPUT_TYPES,\n INPUT_SIZES,\n INPUT_SIZE_CLASSES,\n INPUT_ICON_SIZES,\n INPUT_STATE_CLASSES,\n DESCRIPTION_SIZE_CLASSES,\n LABEL_SIZE_CLASSES,\n} from './input_constants';\nimport {\n getUniqueString,\n getValidationState,\n} from '@/common/utils';\nimport { DtValidationMessages } from '@/components/validation_messages';\nimport { MessagesMixin } from '@/common/mixins/input';\n\n/**\n * An input field is an input control that allows users to enter alphanumeric information.\n * It can have a range of options and supports single line and multi-line lengths,\n * as well as varying formats, including numbers, masked passwords, etc.\n * @property {Boolean} placeholder attribute\n * @see https://dialtone.dialpad.com/components/input.html\n */\nexport default {\n name: 'DtInput',\n\n components: { DtValidationMessages },\n\n mixins: [MessagesMixin],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Name property of the input element\n */\n name: {\n type: String,\n default: '',\n },\n\n /**\n * Type of the input.\n * When `textarea` a `<textarea>` element will be rendered instead of an `<input>` element.\n * @values text, password, email, number, textarea, date, time, file, tel\n * @default 'text'\n */\n type: {\n type: String,\n default: INPUT_TYPES.TEXT,\n validator: (t) => Object.values(INPUT_TYPES).includes(t),\n },\n\n /**\n * Value of the input\n */\n value: {\n type: [String, Number],\n default: '',\n },\n\n /**\n * Disables the input\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Label for the input\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Determines visibility of input label.\n * @values true, false\n */\n labelVisible: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Description for the input\n */\n description: {\n type: String,\n default: '',\n },\n\n /**\n * Size of the input, one of `xs`, `sm`, `md`, `lg`, `xl`\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n validator: (t) => Object.values(INPUT_SIZES).includes(t),\n },\n\n /**\n * Additional class name for the input element.\n * Can accept String, Object, and Array, i.e. has the\n * same API as Vue's built-in handling of the class attribute.\n */\n inputClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * Additional class name for the input wrapper element.\n * Can accept all of String, Object, and Array, i.e. has the\n * same api as Vue's built-in handling of the class attribute.\n */\n inputWrapperClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * The current character length that the user has entered into the input.\n * This will only need to be used if you are using `validate.length` and\n * the string contains abnormal characters.\n * For example, an emoji could take up many characters in the input, but should only count as 1 character.\n * If no number is provided, a built-in length calculation will be used for the length validation.\n */\n currentLength: {\n type: Number,\n default: null,\n },\n\n /**\n * Whether the input will continue to display a warning validation message even if the input has lost focus.\n */\n retainWarning: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Validation for the input. Supports maximum length validation with the structure:\n * `{ \"length\": {\"description\": string, \"max\": number, \"warn\": number, \"message\": string,\n * \"limitMaxLength\": boolean }}`\n */\n validate: {\n type: Object,\n default: null,\n },\n\n /**\n * hidden allows to use input without the element visually present in DOM\n */\n hidden: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {String}\n */\n 'input',\n\n /**\n * Native input blur event\n *\n * @event blur\n * @type {FocusEvent}\n */\n 'blur',\n\n /**\n * Input clear event\n *\n * @event clear\n */\n 'clear',\n\n /**\n * Native input focus event\n *\n * @event focus\n * @type {FocusEvent}\n */\n 'focus',\n\n /**\n * Native input focusin event\n *\n * @event focusin\n * @type {FocusEvent}\n */\n 'focusin',\n\n /**\n * Native input focusout event\n *\n * @event focusout\n * @type {FocusEvent}\n */\n 'focusout',\n\n /**\n * Length of the input when currentLength prop is not passed\n *\n * @event update:length\n * @type {Number}\n */\n 'update:length',\n\n /**\n * Result of the input validation\n *\n * @event update:invalid\n * @type {Boolean}\n */\n 'update:invalid',\n ],\n\n data () {\n return {\n isInputFocused: false,\n isInvalid: false,\n defaultLength: 0,\n };\n },\n\n computed: {\n\n isTextarea () {\n return this.type === INPUT_TYPES.TEXTAREA;\n },\n\n isDefaultSize () {\n return this.size === INPUT_SIZES.DEFAULT;\n },\n\n iconSize () {\n return INPUT_ICON_SIZES[this.size];\n },\n\n isValidSize () {\n return Object.values(INPUT_SIZES).includes(this.size);\n },\n\n isValidDescriptionSize () {\n return Object.values(DESCRIPTION_SIZE_TYPES).includes(this.size);\n },\n\n inputComponent () {\n if (this.isTextarea) {\n return 'textarea';\n }\n\n return 'input';\n },\n\n inputListeners () {\n return {\n /* TODO\n Check if any usages of this component leverage $listeners and either remove if unused or scope the removal\n and migration prior to upgrading to Vue 3.x\n */\n ...this.$listeners,\n input: event => this.$emit('input', event.target.value),\n focus: event => {\n this.isInputFocused = true;\n this.$emit('focus', event);\n },\n\n blur: event => {\n this.isInputFocused = false;\n this.onBlur(event);\n },\n };\n },\n\n descriptionKey () {\n return `input-description-${getUniqueString()}`;\n },\n\n inputState () {\n return getValidationState(this.validationMessages);\n },\n\n defaultLengthCalculation () {\n return this.calculateLength(this.value);\n },\n\n validationProps () {\n return {\n length: {\n description: this?.validate?.length?.description,\n max: this?.validate?.length?.max,\n warn: this?.validate?.length?.warn,\n message: this?.validate?.length?.message,\n limitMaxLength: this?.validate?.length?.limitMaxLength ? this.validate.length.limitMaxLength : false,\n },\n };\n },\n\n validationMessages () {\n // Add length validation message if exists\n if (this.showLengthLimitValidation) {\n return this.formattedMessages.concat([this.inputLengthErrorMessage()]);\n }\n\n return this.formattedMessages;\n },\n\n showInputState () {\n return this.showMessages && this.inputState;\n },\n\n inputLength () {\n return this.currentLength ? this.currentLength : this.defaultLengthCalculation;\n },\n\n inputLengthState () {\n if (this.inputLength < this.validationProps.length.warn) {\n return null;\n } else if (this.inputLength <= this.validationProps.length.max) {\n return this.validationProps.length.warn ? VALIDATION_MESSAGE_TYPES.WARNING : null;\n } else {\n return VALIDATION_MESSAGE_TYPES.ERROR;\n }\n },\n\n shouldValidateLength () {\n // eslint-disable-next-line max-lines\n return !!(\n this.validationProps.length.description &&\n this.validationProps.length.max\n );\n },\n\n shouldLimitMaxLength () {\n return this.shouldValidateLength && this.validationProps.length.limitMaxLength;\n },\n\n // eslint-disable-next-line complexity\n showLengthLimitValidation () {\n return (\n this.shouldValidateLength &&\n this.inputLengthState !== null &&\n this.validationProps.length.message &&\n (this.retainWarning || this.isInputFocused || this.isInvalid)\n );\n },\n\n sizeModifierClass () {\n if (this.isDefaultSize || !this.isValidSize) {\n return '';\n }\n\n return INPUT_SIZE_CLASSES[this.inputComponent][this.size];\n },\n\n stateClass () {\n return [INPUT_STATE_CLASSES[this.inputState]];\n },\n },\n\n watch: {\n isInvalid (val) {\n this.$emit('update:invalid', val);\n },\n\n value: {\n immediate: true,\n handler (newValue) {\n if (this.shouldValidateLength) {\n this.validateLength(this.inputLength);\n }\n\n if (this.currentLength == null) {\n this.$emit('update:length', this.calculateLength(newValue));\n }\n },\n },\n },\n\n beforeMount () {\n this.descriptionSizeClasses = DESCRIPTION_SIZE_CLASSES;\n this.labelSizeClasses = LABEL_SIZE_CLASSES;\n },\n\n methods: {\n inputClasses () {\n return [\n 'd-input__input',\n this.inputComponent === 'input' ? 'd-input' : 'd-textarea',\n {\n [this.stateClass]: this.showInputState,\n 'd-input-icon--left': this.$slots.leftIcon,\n 'd-input-icon--right': this.$slots.rightIcon,\n },\n this.sizeModifierClass,\n this.inputClass,\n ];\n },\n\n inputWrapperClasses () {\n if (this.hidden) {\n return [];\n }\n return [\n 'd-input__wrapper',\n { [this.stateClass]: this.showInputState },\n this.inputWrapperClass,\n ];\n },\n\n calculateLength (value) {\n if (typeof value !== 'string') {\n return 0;\n }\n\n return [...value].length;\n },\n\n inputLengthErrorMessage () {\n return {\n message: this.validationProps.length.message,\n type: this.inputLengthState,\n };\n },\n\n onBlur (e) {\n // Do not emit a blur event if the target element is a child of this component\n if (!this.$refs.container?.contains(e.relatedTarget)) {\n this.$emit('blur', e);\n }\n },\n\n clear () {\n this.$emit('input', '');\n this.$emit('clear');\n },\n\n blur () {\n this.$refs.input.blur();\n },\n\n focus () {\n this.$refs.input.focus();\n },\n\n select () {\n this.$refs.input.select();\n },\n\n getMessageKey (type, index) {\n return `message-${type}-${index}`;\n },\n\n validateLength (length) {\n this.isInvalid = (length > this.validationProps.length.max);\n },\n },\n};\n</script>\n"],"names":["DtValidationMessages","MessagesMixin","DESCRIPTION_SIZE_TYPES","getUniqueString","getValidationState","VALIDATION_MESSAGE_TYPES"],"mappings":"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"}
1
+ {"version":3,"file":"input.cjs","sources":["../../components/input/input_constants.js","../../components/input/input.vue"],"sourcesContent":["// Valid input types, any other input types (for example: 'radio' or 'checkbox') should\n// use the respective base vue components (radio.vue and checkout.vue).\nexport const INPUT_TYPES = {\n TEXT: 'text',\n TEXTAREA: 'textarea',\n PASSWORD: 'password',\n EMAIL: 'email',\n NUMBER: 'number',\n DATE: 'date',\n TIME: 'time',\n FILE: 'file',\n TEL: 'tel',\n};\n\nexport const INPUT_SIZES = {\n EXTRA_SMALL: 'xs',\n SMALL: 'sm',\n DEFAULT: 'md',\n LARGE: 'lg',\n EXTRA_LARGE: 'xl',\n};\n\nexport const INPUT_ICON_SIZES = {\n xs: '100',\n sm: '200',\n md: '200',\n lg: '400',\n xl: '500',\n};\n\nexport const INPUT_SIZE_CLASSES = {\n input: {\n xs: 'd-input--xs',\n sm: 'd-input--sm',\n lg: 'd-input--lg',\n xl: 'd-input--xl',\n },\n\n textarea: {\n xs: 'd-textarea--xs',\n sm: 'd-textarea--sm',\n lg: 'd-textarea--lg',\n xl: 'd-textarea--xl',\n },\n};\n\nexport const INPUT_STATE_CLASSES = {\n error: 'd-input--error',\n warning: 'd-input--warning',\n success: 'd-input--success',\n};\n\nexport const DESCRIPTION_SIZE_CLASSES = {\n lg: 'd-description--lg',\n xl: 'd-description--xl',\n};\n\nexport const LABEL_SIZE_CLASSES = {\n xs: 'd-label--xs',\n sm: 'd-label--sm',\n md: 'd-label--md',\n lg: 'd-label--lg',\n xl: 'd-label--xl',\n};\n\nexport default {\n INPUT_TYPES,\n INPUT_SIZES,\n INPUT_ICON_SIZES,\n INPUT_SIZE_CLASSES,\n INPUT_STATE_CLASSES,\n DESCRIPTION_SIZE_CLASSES,\n LABEL_SIZE_CLASSES,\n};\n","<template>\n <div\n ref=\"container\"\n :class=\"['d-input__root', { 'd-input--hidden': hidden }]\"\n data-qa=\"dt-input\"\n >\n <label\n class=\"d-input__label\"\n :aria-details=\"$slots.description || description ? descriptionKey : undefined\"\n data-qa=\"dt-input-label-wrapper\"\n >\n <!-- @slot Slot for label, defaults to label prop -->\n <slot name=\"labelSlot\">\n <div\n v-if=\"labelVisible && label\"\n ref=\"label\"\n data-qa=\"dt-input-label\"\n :class=\"[\n 'd-input__label-text',\n 'd-label',\n labelSizeClasses[size],\n ]\"\n >\n {{ label }}\n </div>\n </slot>\n <div\n v-if=\"$slots.description || description || shouldValidateLength\"\n :id=\"descriptionKey\"\n ref=\"description\"\n :class=\"[\n 'd-input__description',\n 'd-description',\n descriptionSizeClasses[size],\n ]\"\n data-qa=\"dt-input-description\"\n >\n <div\n v-if=\"$slots.description || description\"\n >\n <!-- @slot Slot for description, defaults to description prop -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <div\n v-if=\"shouldValidateLength\"\n data-qa=\"dt-input-length-description\"\n class=\"d-input__length-description\"\n >\n {{ validationProps.length.description }}\n </div>\n </div>\n <div\n :class=\"inputWrapperClasses()\"\n :read-only=\"disabled\"\n >\n <span\n class=\"d-input-icon d-input-icon--left\"\n data-qa=\"dt-input-left-icon-wrapper\"\n @focusout=\"onBlur\"\n >\n <!-- @slot Slot for left icon -->\n <slot\n name=\"leftIcon\"\n :icon-size=\"iconSize\"\n />\n </span>\n <textarea\n v-if=\"isTextarea\"\n ref=\"input\"\n :value=\"value\"\n :name=\"name\"\n :disabled=\"disabled\"\n :autocomplete=\"$attrs.autocomplete ?? 'off'\"\n :class=\"inputClasses()\"\n :maxlength=\"shouldLimitMaxLength ? validationProps.length.max : null\"\n :data-qa=\"$attrs['data-qa'] ?? 'dt-input-input'\"\n v-bind=\"$attrs\"\n v-on=\"inputListeners\"\n />\n <input\n v-else\n ref=\"input\"\n :value=\"value\"\n :name=\"name\"\n :type=\"type\"\n :disabled=\"disabled\"\n :autocomplete=\"$attrs.autocomplete ?? 'off'\"\n :class=\"inputClasses()\"\n :maxlength=\"shouldLimitMaxLength ? validationProps.length.max : null\"\n :data-qa=\"$attrs['data-qa'] ?? 'dt-input-input'\"\n v-bind=\"$attrs\"\n v-on=\"inputListeners\"\n >\n <span\n class=\"d-input-icon d-input-icon--right\"\n data-qa=\"dt-input-right-icon-wrapper\"\n @focusout=\"onBlur\"\n >\n <!-- @slot Slot for right icon -->\n <slot\n name=\"rightIcon\"\n :icon-size=\"iconSize\"\n />\n </span>\n </div>\n </label>\n <dt-validation-messages\n :validation-messages=\"validationMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-input-messages\"\n />\n </div>\n</template>\n\n<script>\n/* eslint-disable max-lines */\nimport { DESCRIPTION_SIZE_TYPES, VALIDATION_MESSAGE_TYPES } from '@/common/constants';\nimport {\n INPUT_TYPES,\n INPUT_SIZES,\n INPUT_SIZE_CLASSES,\n INPUT_ICON_SIZES,\n INPUT_STATE_CLASSES,\n DESCRIPTION_SIZE_CLASSES,\n LABEL_SIZE_CLASSES,\n} from './input_constants';\nimport {\n getUniqueString,\n getValidationState,\n} from '@/common/utils';\nimport { DtValidationMessages } from '@/components/validation_messages';\nimport { MessagesMixin } from '@/common/mixins/input';\n\n/**\n * An input field is an input control that allows users to enter alphanumeric information.\n * It can have a range of options and supports single line and multi-line lengths,\n * as well as varying formats, including numbers, masked passwords, etc.\n * @property {Boolean} placeholder attribute\n * @see https://dialtone.dialpad.com/components/input.html\n */\nexport default {\n name: 'DtInput',\n\n components: { DtValidationMessages },\n\n mixins: [MessagesMixin],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Name property of the input element\n */\n name: {\n type: String,\n default: '',\n },\n\n /**\n * Type of the input.\n * When `textarea` a `<textarea>` element will be rendered instead of an `<input>` element.\n * @values text, password, email, number, textarea, date, time, file, tel\n * @default 'text'\n */\n type: {\n type: String,\n default: INPUT_TYPES.TEXT,\n validator: (t) => Object.values(INPUT_TYPES).includes(t),\n },\n\n /**\n * Value of the input\n */\n value: {\n type: [String, Number],\n default: '',\n },\n\n /**\n * Disables the input\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Label for the input\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Determines visibility of input label.\n * @values true, false\n */\n labelVisible: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Description for the input\n */\n description: {\n type: String,\n default: '',\n },\n\n /**\n * Size of the input, one of `xs`, `sm`, `md`, `lg`, `xl`\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n validator: (t) => Object.values(INPUT_SIZES).includes(t),\n },\n\n /**\n * Additional class name for the input element.\n * Can accept String, Object, and Array, i.e. has the\n * same API as Vue's built-in handling of the class attribute.\n */\n inputClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * Additional class name for the input wrapper element.\n * Can accept all of String, Object, and Array, i.e. has the\n * same api as Vue's built-in handling of the class attribute.\n */\n inputWrapperClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * The current character length that the user has entered into the input.\n * This will only need to be used if you are using `validate.length` and\n * the string contains abnormal characters.\n * For example, an emoji could take up many characters in the input, but should only count as 1 character.\n * If no number is provided, a built-in length calculation will be used for the length validation.\n */\n currentLength: {\n type: Number,\n default: null,\n },\n\n /**\n * Whether the input will continue to display a warning validation message even if the input has lost focus.\n */\n retainWarning: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Validation for the input. Supports maximum length validation with the structure:\n * `{ \"length\": {\"description\": string, \"max\": number, \"warn\": number, \"message\": string,\n * \"limitMaxLength\": boolean }}`\n */\n validate: {\n type: Object,\n default: null,\n },\n\n /**\n * hidden allows to use input without the element visually present in DOM\n */\n hidden: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {String}\n */\n 'input',\n\n /**\n * Native input blur event\n *\n * @event blur\n * @type {FocusEvent}\n */\n 'blur',\n\n /**\n * Input clear event\n *\n * @event clear\n */\n 'clear',\n\n /**\n * Native input focus event\n *\n * @event focus\n * @type {FocusEvent}\n */\n 'focus',\n\n /**\n * Native input focusin event\n *\n * @event focusin\n * @type {FocusEvent}\n */\n 'focusin',\n\n /**\n * Native input focusout event\n *\n * @event focusout\n * @type {FocusEvent}\n */\n 'focusout',\n\n /**\n * Length of the input when currentLength prop is not passed\n *\n * @event update:length\n * @type {Number}\n */\n 'update:length',\n\n /**\n * Result of the input validation\n *\n * @event update:invalid\n * @type {Boolean}\n */\n 'update:invalid',\n ],\n\n data () {\n return {\n isInputFocused: false,\n isInvalid: false,\n defaultLength: 0,\n };\n },\n\n computed: {\n\n isTextarea () {\n return this.type === INPUT_TYPES.TEXTAREA;\n },\n\n isDefaultSize () {\n return this.size === INPUT_SIZES.DEFAULT;\n },\n\n iconSize () {\n return INPUT_ICON_SIZES[this.size];\n },\n\n isValidSize () {\n return Object.values(INPUT_SIZES).includes(this.size);\n },\n\n isValidDescriptionSize () {\n return Object.values(DESCRIPTION_SIZE_TYPES).includes(this.size);\n },\n\n inputComponent () {\n if (this.isTextarea) {\n return 'textarea';\n }\n\n return 'input';\n },\n\n inputListeners () {\n return {\n /* TODO\n Check if any usages of this component leverage $listeners and either remove if unused or scope the removal\n and migration prior to upgrading to Vue 3.x\n */\n ...this.$listeners,\n input: event => this.$emit('input', event.target.value),\n focus: event => {\n this.isInputFocused = true;\n this.$emit('focus', event);\n },\n\n blur: event => {\n this.isInputFocused = false;\n this.onBlur(event);\n },\n };\n },\n\n descriptionKey () {\n return `input-description-${getUniqueString()}`;\n },\n\n inputState () {\n return getValidationState(this.validationMessages);\n },\n\n defaultLengthCalculation () {\n return this.calculateLength(this.value);\n },\n\n validationProps () {\n return {\n length: {\n description: this?.validate?.length?.description,\n max: this?.validate?.length?.max,\n warn: this?.validate?.length?.warn,\n message: this?.validate?.length?.message,\n limitMaxLength: this?.validate?.length?.limitMaxLength ? this.validate.length.limitMaxLength : false,\n },\n };\n },\n\n validationMessages () {\n // Add length validation message if exists\n if (this.showLengthLimitValidation) {\n return this.formattedMessages.concat([this.inputLengthErrorMessage()]);\n }\n\n return this.formattedMessages;\n },\n\n showInputState () {\n return this.showMessages && this.inputState;\n },\n\n inputLength () {\n return this.currentLength ? this.currentLength : this.defaultLengthCalculation;\n },\n\n inputLengthState () {\n if (this.inputLength < this.validationProps.length.warn) {\n return null;\n } else if (this.inputLength <= this.validationProps.length.max) {\n return this.validationProps.length.warn ? VALIDATION_MESSAGE_TYPES.WARNING : null;\n } else {\n return VALIDATION_MESSAGE_TYPES.ERROR;\n }\n },\n\n shouldValidateLength () {\n // eslint-disable-next-line max-lines\n return !!(\n this.validationProps.length.description &&\n this.validationProps.length.max\n );\n },\n\n shouldLimitMaxLength () {\n return this.shouldValidateLength && this.validationProps.length.limitMaxLength;\n },\n\n // eslint-disable-next-line complexity\n showLengthLimitValidation () {\n return (\n this.shouldValidateLength &&\n this.inputLengthState !== null &&\n this.validationProps.length.message &&\n (this.retainWarning || this.isInputFocused || this.isInvalid)\n );\n },\n\n sizeModifierClass () {\n if (this.isDefaultSize || !this.isValidSize) {\n return '';\n }\n\n return INPUT_SIZE_CLASSES[this.inputComponent][this.size];\n },\n\n stateClass () {\n return [INPUT_STATE_CLASSES[this.inputState]];\n },\n },\n\n watch: {\n isInvalid (val) {\n this.$emit('update:invalid', val);\n },\n\n value: {\n immediate: true,\n handler (newValue) {\n if (this.shouldValidateLength) {\n this.validateLength(this.inputLength);\n }\n\n if (this.currentLength == null) {\n this.$emit('update:length', this.calculateLength(newValue));\n }\n },\n },\n },\n\n beforeMount () {\n this.descriptionSizeClasses = DESCRIPTION_SIZE_CLASSES;\n this.labelSizeClasses = LABEL_SIZE_CLASSES;\n },\n\n methods: {\n inputClasses () {\n return [\n 'd-input__input',\n this.inputComponent === 'input' ? 'd-input' : 'd-textarea',\n {\n [this.stateClass]: this.showInputState,\n 'd-input-icon--left': this.$slots.leftIcon,\n 'd-input-icon--right': this.$slots.rightIcon,\n },\n this.sizeModifierClass,\n this.inputClass,\n ];\n },\n\n inputWrapperClasses () {\n if (this.hidden) {\n return [];\n }\n return [\n 'd-input__wrapper',\n { [this.stateClass]: this.showInputState },\n this.inputWrapperClass,\n ];\n },\n\n calculateLength (value) {\n if (typeof value !== 'string') {\n return 0;\n }\n\n return [...value].length;\n },\n\n inputLengthErrorMessage () {\n return {\n message: this.validationProps.length.message,\n type: this.inputLengthState,\n };\n },\n\n onBlur (e) {\n // Do not emit a blur event if the target element is a child of this component\n if (!this.$refs.container?.contains(e.relatedTarget)) {\n this.$emit('blur', e);\n }\n },\n\n clear () {\n this.$emit('input', '');\n this.$emit('clear');\n },\n\n blur () {\n this.$refs.input.blur();\n },\n\n focus () {\n this.$refs.input.focus();\n },\n\n select () {\n this.$refs.input.select();\n },\n\n getMessageKey (type, index) {\n return `message-${type}-${index}`;\n },\n\n validateLength (length) {\n this.isInvalid = (length > this.validationProps.length.max);\n },\n },\n};\n</script>\n"],"names":["INPUT_TYPES","TEXT","TEXTAREA","PASSWORD","EMAIL","NUMBER","DATE","TIME","FILE","TEL","INPUT_SIZES","EXTRA_SMALL","SMALL","DEFAULT","LARGE","EXTRA_LARGE","INPUT_ICON_SIZES","xs","sm","md","lg","xl","INPUT_SIZE_CLASSES","input","textarea","INPUT_STATE_CLASSES","error","warning","success","DESCRIPTION_SIZE_CLASSES","LABEL_SIZE_CLASSES","_sfc_main","name","components","DtValidationMessages","mixins","MessagesMixin","inheritAttrs","props","type","String","default","validator","t","Object","values","includes","value","Number","disabled","Boolean","label","labelVisible","description","size","inputClass","Array","inputWrapperClass","currentLength","retainWarning","validate","hidden","emits","data","isInputFocused","isInvalid","defaultLength","computed","isTextarea","isDefaultSize","iconSize","isValidSize","isValidDescriptionSize","DESCRIPTION_SIZE_TYPES","inputComponent","inputListeners","$listeners","event","$emit","target","focus","blur","onBlur","descriptionKey","getUniqueString","inputState","getValidationState","validationMessages","defaultLengthCalculation","calculateLength","validationProps","length","max","warn","message","limitMaxLength","showLengthLimitValidation","formattedMessages","concat","inputLengthErrorMessage","showInputState","showMessages","inputLength","inputLengthState","VALIDATION_MESSAGE_TYPES","WARNING","ERROR","shouldValidateLength","shouldLimitMaxLength","sizeModifierClass","stateClass","watch","val","immediate","handler","newValue","validateLength","beforeMount","descriptionSizeClasses","labelSizeClasses","methods","inputClasses","$slots","leftIcon","rightIcon","inputWrapperClasses","e","$refs","container","contains","relatedTarget","clear","select","getMessageKey","index"],"mappings":";;;;;;;;;AAEO,MAAMA,cAAc;AAAA,EACzBC,MAAM;AAAA,EACNC,UAAU;AAAA,EACVC,UAAU;AAAA,EACVC,OAAO;AAAA,EACPC,QAAQ;AAAA,EACRC,MAAM;AAAA,EACNC,MAAM;AAAA,EACNC,MAAM;AAAA,EACNC,KAAK;AACP;AAEO,MAAMC,cAAc;AAAA,EACzBC,aAAa;AAAA,EACbC,OAAO;AAAA,EACPC,SAAS;AAAA,EACTC,OAAO;AAAA,EACPC,aAAa;AACf;AAEO,MAAMC,mBAAmB;AAAA,EAC9BC,IAAI;AAAA,EACJC,IAAI;AAAA,EACJC,IAAI;AAAA,EACJC,IAAI;AAAA,EACJC,IAAI;AACN;AAEO,MAAMC,qBAAqB;AAAA,EAChCC,OAAO;AAAA,IACLN,IAAI;AAAA,IACJC,IAAI;AAAA,IACJE,IAAI;AAAA,IACJC,IAAI;AAAA,EACL;AAAA,EAEDG,UAAU;AAAA,IACRP,IAAI;AAAA,IACJC,IAAI;AAAA,IACJE,IAAI;AAAA,IACJC,IAAI;AAAA,EACN;AACF;AAEO,MAAMI,sBAAsB;AAAA,EACjCC,OAAO;AAAA,EACPC,SAAS;AAAA,EACTC,SAAS;AACX;AAEO,MAAMC,2BAA2B;AAAA,EACtCT,IAAI;AAAA,EACJC,IAAI;AACN;AAEO,MAAMS,qBAAqB;AAAA,EAChCb,IAAI;AAAA,EACJC,IAAI;AAAA,EACJC,IAAI;AAAA,EACJC,IAAI;AAAA,EACJC,IAAI;AACN;AC+EA,MAAAU,YAAA;AAAA,EACAC,MAAA;AAAA,EAEAC,YAAA;AAAA,IAAAC,sBAAAA,uBAAAA;AAAAA,EAAA;AAAA,EAEAC,QAAA,CAAAC,MAAAA,aAAA;AAAA,EAEAC,cAAA;AAAA,EAEAC,OAAA;AAAA;AAAA;AAAA;AAAA,IAIAN,MAAA;AAAA,MACAO,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQAF,MAAA;AAAA,MACAA,MAAAC;AAAAA,MACAC,SAAAzC,YAAAC;AAAAA,MACAyC,WAAAC,OAAAC,OAAAC,OAAA7C,WAAA,EAAA8C,SAAAH,CAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAI,OAAA;AAAA,MACAR,MAAA,CAAAC,QAAAQ,MAAA;AAAA,MACAP,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMAQ,UAAA;AAAA,MACAV,MAAAW;AAAAA,MACAT,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAU,OAAA;AAAA,MACAZ,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMAW,cAAA;AAAA,MACAb,MAAAW;AAAAA,MACAT,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAY,aAAA;AAAA,MACAd,MAAAC;AAAAA,MACAC,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMAa,MAAA;AAAA,MACAf,MAAAC;AAAAA,MACAC,SAAA;AAAA,MACAC,WAAAC,OAAAC,OAAAC,OAAAnC,WAAA,EAAAoC,SAAAH,CAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOAY,YAAA;AAAA,MACAhB,MAAA,CAAAC,QAAAI,QAAAY,KAAA;AAAA,MACAf,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOAgB,mBAAA;AAAA,MACAlB,MAAA,CAAAC,QAAAI,QAAAY,KAAA;AAAA,MACAf,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IASAiB,eAAA;AAAA,MACAnB,MAAAS;AAAAA,MACAP,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAkB,eAAA;AAAA,MACApB,MAAAW;AAAAA,MACAT,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOAmB,UAAA;AAAA,MACArB,MAAAK;AAAAA,MACAH,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKAoB,QAAA;AAAA,MACAtB,MAAAW;AAAAA,MACAT,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEAqB,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA;AAAA,EAAA;AAAA,EAGAC,OAAA;AACA,WAAA;AAAA,MACAC,gBAAA;AAAA,MACAC,WAAA;AAAA,MACAC,eAAA;AAAA;EAEA;AAAA,EAEAC,UAAA;AAAA,IAEAC,aAAA;AACA,aAAA,KAAA7B,SAAAvC,YAAAE;AAAAA,IACA;AAAA,IAEAmE,gBAAA;AACA,aAAA,KAAAf,SAAA5C,YAAAG;AAAAA,IACA;AAAA,IAEAyD,WAAA;AACA,aAAAtD,iBAAA,KAAAsC,IAAA;AAAA,IACA;AAAA,IAEAiB,cAAA;AACA,aAAA3B,OAAAC,OAAAnC,WAAA,EAAAoC,SAAA,KAAAQ,IAAA;AAAA,IACA;AAAA,IAEAkB,yBAAA;AACA,aAAA5B,OAAAC,OAAA4B,iBAAA,sBAAA,EAAA3B,SAAA,KAAAQ,IAAA;AAAA,IACA;AAAA,IAEAoB,iBAAA;AACA,UAAA,KAAAN,YAAA;AACA,eAAA;AAAA,MACA;AAEA,aAAA;AAAA,IACA;AAAA,IAEAO,iBAAA;AACA,aAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAKA,GAAA,KAAAC;AAAAA,QACArD,OAAAsD,WAAA,KAAAC,MAAA,SAAAD,MAAAE,OAAAhC,KAAA;AAAA,QACAiC,OAAAH,WAAA;AACA,eAAAb,iBAAA;AACA,eAAAc,MAAA,SAAAD,KAAA;AAAA,QACA;AAAA,QAEAI,MAAAJ,WAAA;AACA,eAAAb,iBAAA;AACA,eAAAkB,OAAAL,KAAA;AAAA,QACA;AAAA;IAEA;AAAA,IAEAM,iBAAA;AACA,aAAA,qBAAAC,6BAAA,CAAA;AAAA,IACA;AAAA,IAEAC,aAAA;AACA,aAAAC,aAAA,mBAAA,KAAAC,kBAAA;AAAA,IACA;AAAA,IAEAC,2BAAA;AACA,aAAA,KAAAC,gBAAA,KAAA1C,KAAA;AAAA,IACA;AAAA,IAEA2C,kBAAA;;AACA,aAAA;AAAA,QACAC,QAAA;AAAA,UACAtC,cAAA,wCAAAO,aAAA,mBAAA+B,WAAA,mBAAAtC;AAAAA,UACAuC,MAAA,wCAAAhC,aAAA,mBAAA+B,WAAA,mBAAAC;AAAAA,UACAC,OAAA,wCAAAjC,aAAA,mBAAA+B,WAAA,mBAAAE;AAAAA,UACAC,UAAA,wCAAAlC,aAAA,mBAAA+B,WAAA,mBAAAG;AAAAA,UACAC,kBAAA,wCAAAnC,aAAA,mBAAA+B,WAAA,mBAAAI,kBAAA,KAAAnC,SAAA+B,OAAAI,iBAAA;AAAA,QACA;AAAA;IAEA;AAAA,IAEAR,qBAAA;AAEA,UAAA,KAAAS,2BAAA;AACA,eAAA,KAAAC,kBAAAC,OAAA,CAAA,KAAAC,wBAAA,CAAA,CAAA;AAAA,MACA;AAEA,aAAA,KAAAF;AAAAA,IACA;AAAA,IAEAG,iBAAA;AACA,aAAA,KAAAC,gBAAA,KAAAhB;AAAAA,IACA;AAAA,IAEAiB,cAAA;AACA,aAAA,KAAA5C,gBAAA,KAAAA,gBAAA,KAAA8B;AAAAA,IACA;AAAA,IAEAe,mBAAA;AACA,UAAA,KAAAD,cAAA,KAAAZ,gBAAAC,OAAAE,MAAA;AACA,eAAA;AAAA,MACA,WAAA,KAAAS,eAAA,KAAAZ,gBAAAC,OAAAC,KAAA;AACA,eAAA,KAAAF,gBAAAC,OAAAE,OAAAW,iBAAA,yBAAAC,UAAA;AAAA,MACA,OAAA;AACA,eAAAD,iBAAAA,yBAAAE;AAAAA,MACA;AAAA,IACA;AAAA,IAEAC,uBAAA;AAEA,aAAA,CAAA,EACA,KAAAjB,gBAAAC,OAAAtC,eACA,KAAAqC,gBAAAC,OAAAC;AAAAA,IAEA;AAAA,IAEAgB,uBAAA;AACA,aAAA,KAAAD,wBAAA,KAAAjB,gBAAAC,OAAAI;AAAAA,IACA;AAAA;AAAA,IAGAC,4BAAA;AACA,aACA,KAAAW,wBACA,KAAAJ,qBAAA,QACA,KAAAb,gBAAAC,OAAAG,YACA,KAAAnC,iBAAA,KAAAK,kBAAA,KAAAC;AAAAA,IAEA;AAAA,IAEA4C,oBAAA;AACA,UAAA,KAAAxC,iBAAA,CAAA,KAAAE,aAAA;AACA,eAAA;AAAA,MACA;AAEA,aAAAjD,mBAAA,KAAAoD,cAAA,EAAA,KAAApB,IAAA;AAAA,IACA;AAAA,IAEAwD,aAAA;AACA,aAAA,CAAArF,oBAAA,KAAA4D,UAAA,CAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA0B,OAAA;AAAA,IACA9C,UAAA+C,KAAA;AACA,WAAAlC,MAAA,kBAAAkC,GAAA;AAAA,IACA;AAAA,IAEAjE,OAAA;AAAA,MACAkE,WAAA;AAAA,MACAC,QAAAC,UAAA;AACA,YAAA,KAAAR,sBAAA;AACA,eAAAS,eAAA,KAAAd,WAAA;AAAA,QACA;AAEA,YAAA,KAAA5C,iBAAA,MAAA;AACA,eAAAoB,MAAA,iBAAA,KAAAW,gBAAA0B,QAAA,CAAA;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEAE,cAAA;AACA,SAAAC,yBAAAzF;AACA,SAAA0F,mBAAAzF;AAAAA,EACA;AAAA,EAEA0F,SAAA;AAAA,IACAC,eAAA;AACA,aAAA,CACA,kBACA,KAAA/C,mBAAA,UAAA,YAAA,cACA;AAAA,QACA,CAAA,KAAAoC,UAAA,GAAA,KAAAV;AAAAA,QACA,sBAAA,KAAAsB,OAAAC;AAAAA,QACA,uBAAA,KAAAD,OAAAE;AAAAA,MACA,GACA,KAAAf,mBACA,KAAAtD,UAAA;AAAA,IAEA;AAAA,IAEAsE,sBAAA;AACA,UAAA,KAAAhE,QAAA;AACA,eAAA;MACA;AACA,aAAA,CACA,oBACA;AAAA,QAAA,CAAA,KAAAiD,UAAA,GAAA,KAAAV;AAAAA,MAAA,GACA,KAAA3C,iBAAA;AAAA,IAEA;AAAA,IAEAgC,gBAAA1C,OAAA;AACA,UAAA,OAAAA,UAAA,UAAA;AACA,eAAA;AAAA,MACA;AAEA,aAAA,CAAA,GAAAA,KAAA,EAAA4C;AAAAA,IACA;AAAA,IAEAQ,0BAAA;AACA,aAAA;AAAA,QACAL,SAAA,KAAAJ,gBAAAC,OAAAG;AAAAA,QACAvD,MAAA,KAAAgE;AAAAA;IAEA;AAAA,IAEArB,OAAA4C,GAAA;;AAEA,UAAA,GAAA,UAAAC,MAAAC,cAAA,mBAAAC,SAAAH,EAAAI,iBAAA;AACA,aAAApD,MAAA,QAAAgD,CAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEAK,QAAA;AACA,WAAArD,MAAA,SAAA,EAAA;AACA,WAAAA,MAAA,OAAA;AAAA,IACA;AAAA,IAEAG,OAAA;AACA,WAAA8C,MAAAxG,MAAA0D;IACA;AAAA,IAEAD,QAAA;AACA,WAAA+C,MAAAxG,MAAAyD;IACA;AAAA,IAEAoD,SAAA;AACA,WAAAL,MAAAxG,MAAA6G;IACA;AAAA,IAEAC,cAAA9F,MAAA+F,OAAA;AACA,aAAA,WAAA/F,IAAA,IAAA+F,KAAA;AAAA,IACA;AAAA,IAEAlB,eAAAzB,QAAA;AACA,WAAA1B,YAAA0B,SAAA,KAAAD,gBAAAC,OAAAC;AAAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}