@dialpad/dialtone 9.98.0 → 9.99.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (456) hide show
  1. package/dist/css/dialtone-default-theme.css +92 -85
  2. package/dist/css/dialtone-default-theme.min.css +1 -1
  3. package/dist/css/dialtone.css +92 -85
  4. package/dist/css/dialtone.min.css +1 -1
  5. package/dist/tokens/doc.json +21788 -21788
  6. package/dist/vue2/component-documentation.json +1 -1
  7. package/dist/vue2/components/item_layout/item_layout.vue.cjs +63 -1
  8. package/dist/vue2/components/item_layout/item_layout.vue.cjs.map +1 -1
  9. package/dist/vue2/components/item_layout/item_layout.vue.js +63 -1
  10. package/dist/vue2/components/item_layout/item_layout.vue.js.map +1 -1
  11. package/dist/vue2/components/list_item/list_item.vue.cjs +12 -13
  12. package/dist/vue2/components/list_item/list_item.vue.cjs.map +1 -1
  13. package/dist/vue2/components/list_item/list_item.vue.js +12 -13
  14. package/dist/vue2/components/list_item/list_item.vue.js.map +1 -1
  15. package/dist/vue2/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs +1 -1
  16. package/dist/vue2/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs.map +1 -1
  17. package/dist/vue2/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js +1 -1
  18. package/dist/vue2/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js.map +1 -1
  19. package/dist/vue2/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.cjs +5 -1
  20. package/dist/vue2/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.cjs.map +1 -1
  21. package/dist/vue2/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.js +5 -1
  22. package/dist/vue2/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.js.map +1 -1
  23. package/dist/vue2/recipes/conversation_view/editor/editor.vue.cjs +15 -0
  24. package/dist/vue2/recipes/conversation_view/editor/editor.vue.cjs.map +1 -1
  25. package/dist/vue2/recipes/conversation_view/editor/editor.vue.js +15 -0
  26. package/dist/vue2/recipes/conversation_view/editor/editor.vue.js.map +1 -1
  27. package/dist/vue2/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs +10 -10
  28. package/dist/vue2/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs.map +1 -1
  29. package/dist/vue2/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js +10 -10
  30. package/dist/vue2/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js.map +1 -1
  31. package/dist/vue2/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs +2 -4
  32. package/dist/vue2/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs.map +1 -1
  33. package/dist/vue2/recipes/conversation_view/feed_item_row/feed_item_row.vue.js +2 -4
  34. package/dist/vue2/recipes/conversation_view/feed_item_row/feed_item_row.vue.js.map +1 -1
  35. package/dist/vue2/recipes/item_layout/contact_info/contact_info.vue.cjs +4 -4
  36. package/dist/vue2/recipes/item_layout/contact_info/contact_info.vue.cjs.map +1 -1
  37. package/dist/vue2/recipes/item_layout/contact_info/contact_info.vue.js +4 -4
  38. package/dist/vue2/recipes/item_layout/contact_info/contact_info.vue.js.map +1 -1
  39. package/dist/vue2/types/components/item_layout/item_layout.vue.d.ts +66 -1
  40. package/dist/vue2/types/components/item_layout/item_layout.vue.d.ts.map +1 -1
  41. package/dist/vue2/types/components/list_item/list_item.vue.d.ts +1 -22
  42. package/dist/vue2/types/components/list_item/list_item.vue.d.ts.map +1 -1
  43. package/dist/vue2/types/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.d.ts.map +1 -1
  44. package/dist/vue2/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts.map +1 -1
  45. package/dist/vue2/types/recipes/conversation_view/editor/editor.vue.d.ts +11 -0
  46. package/dist/vue2/types/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts.map +1 -1
  47. package/dist/vue2/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts.map +1 -1
  48. package/dist/vue2/types/recipes/item_layout/contact_info/contact_info.vue.d.ts.map +1 -1
  49. package/dist/vue3/component-documentation.json +1 -1
  50. package/dist/vue3/components/avatar/avatar.vue.cjs +1 -0
  51. package/dist/vue3/components/avatar/avatar.vue.cjs.map +1 -1
  52. package/dist/vue3/components/avatar/avatar.vue.js +1 -0
  53. package/dist/vue3/components/avatar/avatar.vue.js.map +1 -1
  54. package/dist/vue3/components/badge/badge.vue.cjs +1 -0
  55. package/dist/vue3/components/badge/badge.vue.cjs.map +1 -1
  56. package/dist/vue3/components/badge/badge.vue.js +1 -0
  57. package/dist/vue3/components/badge/badge.vue.js.map +1 -1
  58. package/dist/vue3/components/banner/banner.vue.cjs +1 -0
  59. package/dist/vue3/components/banner/banner.vue.cjs.map +1 -1
  60. package/dist/vue3/components/banner/banner.vue.js +1 -0
  61. package/dist/vue3/components/banner/banner.vue.js.map +1 -1
  62. package/dist/vue3/components/breadcrumbs/breadcrumbs.vue.cjs +1 -0
  63. package/dist/vue3/components/breadcrumbs/breadcrumbs.vue.cjs.map +1 -1
  64. package/dist/vue3/components/breadcrumbs/breadcrumbs.vue.js +1 -0
  65. package/dist/vue3/components/breadcrumbs/breadcrumbs.vue.js.map +1 -1
  66. package/dist/vue3/components/button/button.vue.cjs +1 -0
  67. package/dist/vue3/components/button/button.vue.cjs.map +1 -1
  68. package/dist/vue3/components/button/button.vue.js +1 -0
  69. package/dist/vue3/components/button/button.vue.js.map +1 -1
  70. package/dist/vue3/components/button_group/button_group.vue.cjs +1 -0
  71. package/dist/vue3/components/button_group/button_group.vue.cjs.map +1 -1
  72. package/dist/vue3/components/button_group/button_group.vue.js +1 -0
  73. package/dist/vue3/components/button_group/button_group.vue.js.map +1 -1
  74. package/dist/vue3/components/card/card.vue.cjs +1 -0
  75. package/dist/vue3/components/card/card.vue.cjs.map +1 -1
  76. package/dist/vue3/components/card/card.vue.js +1 -0
  77. package/dist/vue3/components/card/card.vue.js.map +1 -1
  78. package/dist/vue3/components/checkbox/checkbox.vue.cjs +1 -0
  79. package/dist/vue3/components/checkbox/checkbox.vue.cjs.map +1 -1
  80. package/dist/vue3/components/checkbox/checkbox.vue.js +1 -0
  81. package/dist/vue3/components/checkbox/checkbox.vue.js.map +1 -1
  82. package/dist/vue3/components/checkbox_group/checkbox_group.vue.cjs +1 -0
  83. package/dist/vue3/components/checkbox_group/checkbox_group.vue.cjs.map +1 -1
  84. package/dist/vue3/components/checkbox_group/checkbox_group.vue.js +1 -0
  85. package/dist/vue3/components/checkbox_group/checkbox_group.vue.js.map +1 -1
  86. package/dist/vue3/components/chip/chip.vue.cjs +1 -0
  87. package/dist/vue3/components/chip/chip.vue.cjs.map +1 -1
  88. package/dist/vue3/components/chip/chip.vue.js +1 -0
  89. package/dist/vue3/components/chip/chip.vue.js.map +1 -1
  90. package/dist/vue3/components/codeblock/codeblock.vue.cjs +1 -0
  91. package/dist/vue3/components/codeblock/codeblock.vue.cjs.map +1 -1
  92. package/dist/vue3/components/codeblock/codeblock.vue.js +1 -0
  93. package/dist/vue3/components/codeblock/codeblock.vue.js.map +1 -1
  94. package/dist/vue3/components/collapsible/collapsible.vue.cjs +1 -0
  95. package/dist/vue3/components/collapsible/collapsible.vue.cjs.map +1 -1
  96. package/dist/vue3/components/collapsible/collapsible.vue.js +1 -0
  97. package/dist/vue3/components/collapsible/collapsible.vue.js.map +1 -1
  98. package/dist/vue3/components/combobox/combobox.vue.cjs +1 -0
  99. package/dist/vue3/components/combobox/combobox.vue.cjs.map +1 -1
  100. package/dist/vue3/components/combobox/combobox.vue.js +1 -0
  101. package/dist/vue3/components/combobox/combobox.vue.js.map +1 -1
  102. package/dist/vue3/components/description_list/description_list.vue.cjs +1 -0
  103. package/dist/vue3/components/description_list/description_list.vue.cjs.map +1 -1
  104. package/dist/vue3/components/description_list/description_list.vue.js +1 -0
  105. package/dist/vue3/components/description_list/description_list.vue.js.map +1 -1
  106. package/dist/vue3/components/dropdown/dropdown.vue.cjs +1 -0
  107. package/dist/vue3/components/dropdown/dropdown.vue.cjs.map +1 -1
  108. package/dist/vue3/components/dropdown/dropdown.vue.js +1 -0
  109. package/dist/vue3/components/dropdown/dropdown.vue.js.map +1 -1
  110. package/dist/vue3/components/dropdown/dropdown_separator.vue.cjs +1 -0
  111. package/dist/vue3/components/dropdown/dropdown_separator.vue.cjs.map +1 -1
  112. package/dist/vue3/components/dropdown/dropdown_separator.vue.js +1 -0
  113. package/dist/vue3/components/dropdown/dropdown_separator.vue.js.map +1 -1
  114. package/dist/vue3/components/emoji/emoji.vue.cjs +1 -0
  115. package/dist/vue3/components/emoji/emoji.vue.cjs.map +1 -1
  116. package/dist/vue3/components/emoji/emoji.vue.js +1 -0
  117. package/dist/vue3/components/emoji/emoji.vue.js.map +1 -1
  118. package/dist/vue3/components/emoji_text_wrapper/emoji_text_wrapper.vue.cjs +1 -0
  119. package/dist/vue3/components/emoji_text_wrapper/emoji_text_wrapper.vue.cjs.map +1 -1
  120. package/dist/vue3/components/emoji_text_wrapper/emoji_text_wrapper.vue.js +1 -0
  121. package/dist/vue3/components/emoji_text_wrapper/emoji_text_wrapper.vue.js.map +1 -1
  122. package/dist/vue3/components/icon/icon.vue.cjs +1 -0
  123. package/dist/vue3/components/icon/icon.vue.cjs.map +1 -1
  124. package/dist/vue3/components/icon/icon.vue.js +1 -0
  125. package/dist/vue3/components/icon/icon.vue.js.map +1 -1
  126. package/dist/vue3/components/image_viewer/image_viewer.vue.cjs +1 -0
  127. package/dist/vue3/components/image_viewer/image_viewer.vue.cjs.map +1 -1
  128. package/dist/vue3/components/image_viewer/image_viewer.vue.js +1 -0
  129. package/dist/vue3/components/image_viewer/image_viewer.vue.js.map +1 -1
  130. package/dist/vue3/components/input/input.vue.cjs +1 -0
  131. package/dist/vue3/components/input/input.vue.cjs.map +1 -1
  132. package/dist/vue3/components/input/input.vue.js +1 -0
  133. package/dist/vue3/components/input/input.vue.js.map +1 -1
  134. package/dist/vue3/components/input_group/input_group.vue.cjs +1 -0
  135. package/dist/vue3/components/input_group/input_group.vue.cjs.map +1 -1
  136. package/dist/vue3/components/input_group/input_group.vue.js +1 -0
  137. package/dist/vue3/components/input_group/input_group.vue.js.map +1 -1
  138. package/dist/vue3/components/item_layout/item_layout.vue.cjs +1 -0
  139. package/dist/vue3/components/item_layout/item_layout.vue.cjs.map +1 -1
  140. package/dist/vue3/components/item_layout/item_layout.vue.js +1 -0
  141. package/dist/vue3/components/item_layout/item_layout.vue.js.map +1 -1
  142. package/dist/vue3/components/keyboard_shortcut/keyboard_shortcut.vue.cjs +1 -0
  143. package/dist/vue3/components/keyboard_shortcut/keyboard_shortcut.vue.cjs.map +1 -1
  144. package/dist/vue3/components/keyboard_shortcut/keyboard_shortcut.vue.js +1 -0
  145. package/dist/vue3/components/keyboard_shortcut/keyboard_shortcut.vue.js.map +1 -1
  146. package/dist/vue3/components/lazy_show/lazy_show.vue.cjs +1 -0
  147. package/dist/vue3/components/lazy_show/lazy_show.vue.cjs.map +1 -1
  148. package/dist/vue3/components/lazy_show/lazy_show.vue.js +1 -0
  149. package/dist/vue3/components/lazy_show/lazy_show.vue.js.map +1 -1
  150. package/dist/vue3/components/link/link.vue.cjs +1 -0
  151. package/dist/vue3/components/link/link.vue.cjs.map +1 -1
  152. package/dist/vue3/components/link/link.vue.js +1 -0
  153. package/dist/vue3/components/link/link.vue.js.map +1 -1
  154. package/dist/vue3/components/list_item/list_item.vue.cjs +1 -0
  155. package/dist/vue3/components/list_item/list_item.vue.cjs.map +1 -1
  156. package/dist/vue3/components/list_item/list_item.vue.js +1 -0
  157. package/dist/vue3/components/list_item/list_item.vue.js.map +1 -1
  158. package/dist/vue3/components/list_item_group/list_item_group.vue.cjs +1 -0
  159. package/dist/vue3/components/list_item_group/list_item_group.vue.cjs.map +1 -1
  160. package/dist/vue3/components/list_item_group/list_item_group.vue.js +1 -0
  161. package/dist/vue3/components/list_item_group/list_item_group.vue.js.map +1 -1
  162. package/dist/vue3/components/modal/modal.vue.cjs +1 -0
  163. package/dist/vue3/components/modal/modal.vue.cjs.map +1 -1
  164. package/dist/vue3/components/modal/modal.vue.js +1 -0
  165. package/dist/vue3/components/modal/modal.vue.js.map +1 -1
  166. package/dist/vue3/components/notice/notice.vue.cjs +1 -0
  167. package/dist/vue3/components/notice/notice.vue.cjs.map +1 -1
  168. package/dist/vue3/components/notice/notice.vue.js +1 -0
  169. package/dist/vue3/components/notice/notice.vue.js.map +1 -1
  170. package/dist/vue3/components/notice/notice_action.vue.cjs +1 -0
  171. package/dist/vue3/components/notice/notice_action.vue.cjs.map +1 -1
  172. package/dist/vue3/components/notice/notice_action.vue.js +1 -0
  173. package/dist/vue3/components/notice/notice_action.vue.js.map +1 -1
  174. package/dist/vue3/components/notice/notice_content.vue.cjs +1 -0
  175. package/dist/vue3/components/notice/notice_content.vue.cjs.map +1 -1
  176. package/dist/vue3/components/notice/notice_content.vue.js +1 -0
  177. package/dist/vue3/components/notice/notice_content.vue.js.map +1 -1
  178. package/dist/vue3/components/notice/notice_icon.vue.cjs +1 -0
  179. package/dist/vue3/components/notice/notice_icon.vue.cjs.map +1 -1
  180. package/dist/vue3/components/notice/notice_icon.vue.js +1 -0
  181. package/dist/vue3/components/notice/notice_icon.vue.js.map +1 -1
  182. package/dist/vue3/components/pagination/pagination.vue.cjs +1 -0
  183. package/dist/vue3/components/pagination/pagination.vue.cjs.map +1 -1
  184. package/dist/vue3/components/pagination/pagination.vue.js +1 -0
  185. package/dist/vue3/components/pagination/pagination.vue.js.map +1 -1
  186. package/dist/vue3/components/popover/popover.vue.cjs +1 -0
  187. package/dist/vue3/components/popover/popover.vue.cjs.map +1 -1
  188. package/dist/vue3/components/popover/popover.vue.js +1 -0
  189. package/dist/vue3/components/popover/popover.vue.js.map +1 -1
  190. package/dist/vue3/components/popover/popover_header_footer.vue.cjs +1 -0
  191. package/dist/vue3/components/popover/popover_header_footer.vue.cjs.map +1 -1
  192. package/dist/vue3/components/popover/popover_header_footer.vue.js +1 -0
  193. package/dist/vue3/components/popover/popover_header_footer.vue.js.map +1 -1
  194. package/dist/vue3/components/presence/presence.vue.cjs +1 -0
  195. package/dist/vue3/components/presence/presence.vue.cjs.map +1 -1
  196. package/dist/vue3/components/presence/presence.vue.js +1 -0
  197. package/dist/vue3/components/presence/presence.vue.js.map +1 -1
  198. package/dist/vue3/components/radio/radio.vue.cjs +1 -0
  199. package/dist/vue3/components/radio/radio.vue.cjs.map +1 -1
  200. package/dist/vue3/components/radio/radio.vue.js +1 -0
  201. package/dist/vue3/components/radio/radio.vue.js.map +1 -1
  202. package/dist/vue3/components/radio_group/radio_group.vue.cjs +1 -0
  203. package/dist/vue3/components/radio_group/radio_group.vue.cjs.map +1 -1
  204. package/dist/vue3/components/radio_group/radio_group.vue.js +1 -0
  205. package/dist/vue3/components/radio_group/radio_group.vue.js.map +1 -1
  206. package/dist/vue3/components/rich_text_editor/extensions/channels/ChannelComponent.vue.cjs +1 -0
  207. package/dist/vue3/components/rich_text_editor/extensions/channels/ChannelComponent.vue.cjs.map +1 -1
  208. package/dist/vue3/components/rich_text_editor/extensions/channels/ChannelComponent.vue.js +1 -0
  209. package/dist/vue3/components/rich_text_editor/extensions/channels/ChannelComponent.vue.js.map +1 -1
  210. package/dist/vue3/components/rich_text_editor/extensions/channels/ChannelSuggestion.vue.cjs +1 -0
  211. package/dist/vue3/components/rich_text_editor/extensions/channels/ChannelSuggestion.vue.cjs.map +1 -1
  212. package/dist/vue3/components/rich_text_editor/extensions/channels/ChannelSuggestion.vue.js +1 -0
  213. package/dist/vue3/components/rich_text_editor/extensions/channels/ChannelSuggestion.vue.js.map +1 -1
  214. package/dist/vue3/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.cjs +1 -0
  215. package/dist/vue3/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.cjs.map +1 -1
  216. package/dist/vue3/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.js +1 -0
  217. package/dist/vue3/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.js.map +1 -1
  218. package/dist/vue3/components/rich_text_editor/extensions/emoji/EmojiSuggestion.vue.cjs +1 -0
  219. package/dist/vue3/components/rich_text_editor/extensions/emoji/EmojiSuggestion.vue.cjs.map +1 -1
  220. package/dist/vue3/components/rich_text_editor/extensions/emoji/EmojiSuggestion.vue.js +1 -0
  221. package/dist/vue3/components/rich_text_editor/extensions/emoji/EmojiSuggestion.vue.js.map +1 -1
  222. package/dist/vue3/components/rich_text_editor/extensions/mentions/MentionComponent.vue.cjs +1 -0
  223. package/dist/vue3/components/rich_text_editor/extensions/mentions/MentionComponent.vue.cjs.map +1 -1
  224. package/dist/vue3/components/rich_text_editor/extensions/mentions/MentionComponent.vue.js +1 -0
  225. package/dist/vue3/components/rich_text_editor/extensions/mentions/MentionComponent.vue.js.map +1 -1
  226. package/dist/vue3/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.cjs +1 -0
  227. package/dist/vue3/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.cjs.map +1 -1
  228. package/dist/vue3/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.js +1 -0
  229. package/dist/vue3/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.js.map +1 -1
  230. package/dist/vue3/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.cjs +1 -0
  231. package/dist/vue3/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.cjs.map +1 -1
  232. package/dist/vue3/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.js +1 -0
  233. package/dist/vue3/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.js.map +1 -1
  234. package/dist/vue3/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.cjs +1 -0
  235. package/dist/vue3/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.cjs.map +1 -1
  236. package/dist/vue3/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.js +1 -0
  237. package/dist/vue3/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.js.map +1 -1
  238. package/dist/vue3/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.cjs +1 -0
  239. package/dist/vue3/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.cjs.map +1 -1
  240. package/dist/vue3/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.js +1 -0
  241. package/dist/vue3/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.js.map +1 -1
  242. package/dist/vue3/components/rich_text_editor/rich_text_editor.vue.cjs +1 -0
  243. package/dist/vue3/components/rich_text_editor/rich_text_editor.vue.cjs.map +1 -1
  244. package/dist/vue3/components/rich_text_editor/rich_text_editor.vue.js +1 -0
  245. package/dist/vue3/components/rich_text_editor/rich_text_editor.vue.js.map +1 -1
  246. package/dist/vue3/components/root_layout/root_layout.vue.cjs +1 -0
  247. package/dist/vue3/components/root_layout/root_layout.vue.cjs.map +1 -1
  248. package/dist/vue3/components/root_layout/root_layout.vue.js +1 -0
  249. package/dist/vue3/components/root_layout/root_layout.vue.js.map +1 -1
  250. package/dist/vue3/components/select_menu/select_menu.vue.cjs +1 -0
  251. package/dist/vue3/components/select_menu/select_menu.vue.cjs.map +1 -1
  252. package/dist/vue3/components/select_menu/select_menu.vue.js +1 -0
  253. package/dist/vue3/components/select_menu/select_menu.vue.js.map +1 -1
  254. package/dist/vue3/components/skeleton/skeleton-list-item.vue.cjs +1 -0
  255. package/dist/vue3/components/skeleton/skeleton-list-item.vue.cjs.map +1 -1
  256. package/dist/vue3/components/skeleton/skeleton-list-item.vue.js +1 -0
  257. package/dist/vue3/components/skeleton/skeleton-list-item.vue.js.map +1 -1
  258. package/dist/vue3/components/skeleton/skeleton-paragraph.vue.cjs +1 -0
  259. package/dist/vue3/components/skeleton/skeleton-paragraph.vue.cjs.map +1 -1
  260. package/dist/vue3/components/skeleton/skeleton-paragraph.vue.js +1 -0
  261. package/dist/vue3/components/skeleton/skeleton-paragraph.vue.js.map +1 -1
  262. package/dist/vue3/components/skeleton/skeleton-shape.vue.cjs +1 -0
  263. package/dist/vue3/components/skeleton/skeleton-shape.vue.cjs.map +1 -1
  264. package/dist/vue3/components/skeleton/skeleton-shape.vue.js +1 -0
  265. package/dist/vue3/components/skeleton/skeleton-shape.vue.js.map +1 -1
  266. package/dist/vue3/components/skeleton/skeleton-text.vue.cjs +1 -0
  267. package/dist/vue3/components/skeleton/skeleton-text.vue.cjs.map +1 -1
  268. package/dist/vue3/components/skeleton/skeleton-text.vue.js +1 -0
  269. package/dist/vue3/components/skeleton/skeleton-text.vue.js.map +1 -1
  270. package/dist/vue3/components/skeleton/skeleton.vue.cjs +1 -0
  271. package/dist/vue3/components/skeleton/skeleton.vue.cjs.map +1 -1
  272. package/dist/vue3/components/skeleton/skeleton.vue.js +1 -0
  273. package/dist/vue3/components/skeleton/skeleton.vue.js.map +1 -1
  274. package/dist/vue3/components/split_button/split_button-alpha.vue.cjs +1 -0
  275. package/dist/vue3/components/split_button/split_button-alpha.vue.cjs.map +1 -1
  276. package/dist/vue3/components/split_button/split_button-alpha.vue.js +1 -0
  277. package/dist/vue3/components/split_button/split_button-alpha.vue.js.map +1 -1
  278. package/dist/vue3/components/split_button/split_button-omega.vue.cjs +1 -0
  279. package/dist/vue3/components/split_button/split_button-omega.vue.cjs.map +1 -1
  280. package/dist/vue3/components/split_button/split_button-omega.vue.js +1 -0
  281. package/dist/vue3/components/split_button/split_button-omega.vue.js.map +1 -1
  282. package/dist/vue3/components/split_button/split_button.vue.cjs +1 -0
  283. package/dist/vue3/components/split_button/split_button.vue.cjs.map +1 -1
  284. package/dist/vue3/components/split_button/split_button.vue.js +1 -0
  285. package/dist/vue3/components/split_button/split_button.vue.js.map +1 -1
  286. package/dist/vue3/components/stack/stack.vue.cjs +1 -0
  287. package/dist/vue3/components/stack/stack.vue.cjs.map +1 -1
  288. package/dist/vue3/components/stack/stack.vue.js +1 -0
  289. package/dist/vue3/components/stack/stack.vue.js.map +1 -1
  290. package/dist/vue3/components/tab/tab.vue.cjs +1 -0
  291. package/dist/vue3/components/tab/tab.vue.cjs.map +1 -1
  292. package/dist/vue3/components/tab/tab.vue.js +1 -0
  293. package/dist/vue3/components/tab/tab.vue.js.map +1 -1
  294. package/dist/vue3/components/tab/tab_group.vue.cjs +1 -0
  295. package/dist/vue3/components/tab/tab_group.vue.cjs.map +1 -1
  296. package/dist/vue3/components/tab/tab_group.vue.js +1 -0
  297. package/dist/vue3/components/tab/tab_group.vue.js.map +1 -1
  298. package/dist/vue3/components/tab/tab_panel.vue.cjs +1 -0
  299. package/dist/vue3/components/tab/tab_panel.vue.cjs.map +1 -1
  300. package/dist/vue3/components/tab/tab_panel.vue.js +1 -0
  301. package/dist/vue3/components/tab/tab_panel.vue.js.map +1 -1
  302. package/dist/vue3/components/toast/toast.vue.cjs +1 -0
  303. package/dist/vue3/components/toast/toast.vue.cjs.map +1 -1
  304. package/dist/vue3/components/toast/toast.vue.js +1 -0
  305. package/dist/vue3/components/toast/toast.vue.js.map +1 -1
  306. package/dist/vue3/components/toggle/toggle.vue.cjs +1 -0
  307. package/dist/vue3/components/toggle/toggle.vue.cjs.map +1 -1
  308. package/dist/vue3/components/toggle/toggle.vue.js +1 -0
  309. package/dist/vue3/components/toggle/toggle.vue.js.map +1 -1
  310. package/dist/vue3/components/tooltip/tooltip.vue.cjs +1 -0
  311. package/dist/vue3/components/tooltip/tooltip.vue.cjs.map +1 -1
  312. package/dist/vue3/components/tooltip/tooltip.vue.js +1 -0
  313. package/dist/vue3/components/tooltip/tooltip.vue.js.map +1 -1
  314. package/dist/vue3/components/validation_messages/validation_messages.vue.cjs +1 -0
  315. package/dist/vue3/components/validation_messages/validation_messages.vue.cjs.map +1 -1
  316. package/dist/vue3/components/validation_messages/validation_messages.vue.js +1 -0
  317. package/dist/vue3/components/validation_messages/validation_messages.vue.js.map +1 -1
  318. package/dist/vue3/recipes/buttons/callbar_button/callbar_button.vue.cjs +1 -0
  319. package/dist/vue3/recipes/buttons/callbar_button/callbar_button.vue.cjs.map +1 -1
  320. package/dist/vue3/recipes/buttons/callbar_button/callbar_button.vue.js +1 -0
  321. package/dist/vue3/recipes/buttons/callbar_button/callbar_button.vue.js.map +1 -1
  322. package/dist/vue3/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.cjs +1 -0
  323. package/dist/vue3/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.cjs.map +1 -1
  324. package/dist/vue3/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.js +1 -0
  325. package/dist/vue3/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.js.map +1 -1
  326. package/dist/vue3/recipes/cards/ivr_node/ivr_node.vue.cjs +1 -0
  327. package/dist/vue3/recipes/cards/ivr_node/ivr_node.vue.cjs.map +1 -1
  328. package/dist/vue3/recipes/cards/ivr_node/ivr_node.vue.js +1 -0
  329. package/dist/vue3/recipes/cards/ivr_node/ivr_node.vue.js.map +1 -1
  330. package/dist/vue3/recipes/chips/grouped_chip/grouped_chip.vue.cjs +1 -0
  331. package/dist/vue3/recipes/chips/grouped_chip/grouped_chip.vue.cjs.map +1 -1
  332. package/dist/vue3/recipes/chips/grouped_chip/grouped_chip.vue.js +1 -0
  333. package/dist/vue3/recipes/chips/grouped_chip/grouped_chip.vue.js.map +1 -1
  334. package/dist/vue3/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs +1 -0
  335. package/dist/vue3/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs.map +1 -1
  336. package/dist/vue3/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js +1 -0
  337. package/dist/vue3/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js.map +1 -1
  338. package/dist/vue3/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.cjs +1 -0
  339. package/dist/vue3/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.cjs.map +1 -1
  340. package/dist/vue3/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.js +1 -0
  341. package/dist/vue3/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.js.map +1 -1
  342. package/dist/vue3/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.cjs +1 -0
  343. package/dist/vue3/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.cjs.map +1 -1
  344. package/dist/vue3/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.js +1 -0
  345. package/dist/vue3/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.js.map +1 -1
  346. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.cjs +1 -0
  347. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.cjs.map +1 -1
  348. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.js +1 -0
  349. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.js.map +1 -1
  350. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.cjs +1 -0
  351. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.cjs.map +1 -1
  352. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.js +1 -0
  353. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.js.map +1 -1
  354. package/dist/vue3/recipes/conversation_view/editor/editor.vue.cjs +16 -0
  355. package/dist/vue3/recipes/conversation_view/editor/editor.vue.cjs.map +1 -1
  356. package/dist/vue3/recipes/conversation_view/editor/editor.vue.js +16 -0
  357. package/dist/vue3/recipes/conversation_view/editor/editor.vue.js.map +1 -1
  358. package/dist/vue3/recipes/conversation_view/emoji_row/emoji_row.vue.cjs +1 -0
  359. package/dist/vue3/recipes/conversation_view/emoji_row/emoji_row.vue.cjs.map +1 -1
  360. package/dist/vue3/recipes/conversation_view/emoji_row/emoji_row.vue.js +1 -0
  361. package/dist/vue3/recipes/conversation_view/emoji_row/emoji_row.vue.js.map +1 -1
  362. package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs +1 -0
  363. package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs.map +1 -1
  364. package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js +1 -0
  365. package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js.map +1 -1
  366. package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs +1 -0
  367. package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs.map +1 -1
  368. package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row.vue.js +1 -0
  369. package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row.vue.js.map +1 -1
  370. package/dist/vue3/recipes/conversation_view/message_input/message_input.vue.cjs +1 -0
  371. package/dist/vue3/recipes/conversation_view/message_input/message_input.vue.cjs.map +1 -1
  372. package/dist/vue3/recipes/conversation_view/message_input/message_input.vue.js +1 -0
  373. package/dist/vue3/recipes/conversation_view/message_input/message_input.vue.js.map +1 -1
  374. package/dist/vue3/recipes/conversation_view/message_input/message_input_button.vue.cjs +1 -0
  375. package/dist/vue3/recipes/conversation_view/message_input/message_input_button.vue.cjs.map +1 -1
  376. package/dist/vue3/recipes/conversation_view/message_input/message_input_button.vue.js +1 -0
  377. package/dist/vue3/recipes/conversation_view/message_input/message_input_button.vue.js.map +1 -1
  378. package/dist/vue3/recipes/conversation_view/message_input/message_input_link.vue.cjs +1 -0
  379. package/dist/vue3/recipes/conversation_view/message_input/message_input_link.vue.cjs.map +1 -1
  380. package/dist/vue3/recipes/conversation_view/message_input/message_input_link.vue.js +1 -0
  381. package/dist/vue3/recipes/conversation_view/message_input/message_input_link.vue.js.map +1 -1
  382. package/dist/vue3/recipes/conversation_view/message_input/message_input_topbar.vue.cjs +1 -0
  383. package/dist/vue3/recipes/conversation_view/message_input/message_input_topbar.vue.cjs.map +1 -1
  384. package/dist/vue3/recipes/conversation_view/message_input/message_input_topbar.vue.js +1 -0
  385. package/dist/vue3/recipes/conversation_view/message_input/message_input_topbar.vue.js.map +1 -1
  386. package/dist/vue3/recipes/conversation_view/time_pill/time_pill.vue.cjs +1 -0
  387. package/dist/vue3/recipes/conversation_view/time_pill/time_pill.vue.cjs.map +1 -1
  388. package/dist/vue3/recipes/conversation_view/time_pill/time_pill.vue.js +1 -0
  389. package/dist/vue3/recipes/conversation_view/time_pill/time_pill.vue.js.map +1 -1
  390. package/dist/vue3/recipes/header/settings_menu_button/settings_menu_button.vue.cjs +1 -0
  391. package/dist/vue3/recipes/header/settings_menu_button/settings_menu_button.vue.cjs.map +1 -1
  392. package/dist/vue3/recipes/header/settings_menu_button/settings_menu_button.vue.js +1 -0
  393. package/dist/vue3/recipes/header/settings_menu_button/settings_menu_button.vue.js.map +1 -1
  394. package/dist/vue3/recipes/item_layout/contact_info/contact_info.vue.cjs +1 -0
  395. package/dist/vue3/recipes/item_layout/contact_info/contact_info.vue.cjs.map +1 -1
  396. package/dist/vue3/recipes/item_layout/contact_info/contact_info.vue.js +1 -0
  397. package/dist/vue3/recipes/item_layout/contact_info/contact_info.vue.js.map +1 -1
  398. package/dist/vue3/recipes/leftbar/callbox/callbox.vue.cjs +1 -0
  399. package/dist/vue3/recipes/leftbar/callbox/callbox.vue.cjs.map +1 -1
  400. package/dist/vue3/recipes/leftbar/callbox/callbox.vue.js +1 -0
  401. package/dist/vue3/recipes/leftbar/callbox/callbox.vue.js.map +1 -1
  402. package/dist/vue3/recipes/leftbar/contact_centers_row/contact_centers_row.vue.cjs +1 -0
  403. package/dist/vue3/recipes/leftbar/contact_centers_row/contact_centers_row.vue.cjs.map +1 -1
  404. package/dist/vue3/recipes/leftbar/contact_centers_row/contact_centers_row.vue.js +1 -0
  405. package/dist/vue3/recipes/leftbar/contact_centers_row/contact_centers_row.vue.js.map +1 -1
  406. package/dist/vue3/recipes/leftbar/contact_row/contact_row.vue.cjs +1 -0
  407. package/dist/vue3/recipes/leftbar/contact_row/contact_row.vue.cjs.map +1 -1
  408. package/dist/vue3/recipes/leftbar/contact_row/contact_row.vue.js +1 -0
  409. package/dist/vue3/recipes/leftbar/contact_row/contact_row.vue.js.map +1 -1
  410. package/dist/vue3/recipes/leftbar/general_row/general_row.vue.cjs +1 -0
  411. package/dist/vue3/recipes/leftbar/general_row/general_row.vue.cjs.map +1 -1
  412. package/dist/vue3/recipes/leftbar/general_row/general_row.vue.js +1 -0
  413. package/dist/vue3/recipes/leftbar/general_row/general_row.vue.js.map +1 -1
  414. package/dist/vue3/recipes/leftbar/general_row/leftbar_general_row_icon.vue.cjs +1 -0
  415. package/dist/vue3/recipes/leftbar/general_row/leftbar_general_row_icon.vue.cjs.map +1 -1
  416. package/dist/vue3/recipes/leftbar/general_row/leftbar_general_row_icon.vue.js +1 -0
  417. package/dist/vue3/recipes/leftbar/general_row/leftbar_general_row_icon.vue.js.map +1 -1
  418. package/dist/vue3/recipes/leftbar/group_row/group_row.vue.cjs +1 -0
  419. package/dist/vue3/recipes/leftbar/group_row/group_row.vue.cjs.map +1 -1
  420. package/dist/vue3/recipes/leftbar/group_row/group_row.vue.js +1 -0
  421. package/dist/vue3/recipes/leftbar/group_row/group_row.vue.js.map +1 -1
  422. package/dist/vue3/recipes/leftbar/unread_pill/unread_pill.vue.cjs +1 -0
  423. package/dist/vue3/recipes/leftbar/unread_pill/unread_pill.vue.cjs.map +1 -1
  424. package/dist/vue3/recipes/leftbar/unread_pill/unread_pill.vue.js +1 -0
  425. package/dist/vue3/recipes/leftbar/unread_pill/unread_pill.vue.js.map +1 -1
  426. package/dist/vue3/recipes/notices/top_banner_info/top_banner_info.vue.cjs +1 -0
  427. package/dist/vue3/recipes/notices/top_banner_info/top_banner_info.vue.cjs.map +1 -1
  428. package/dist/vue3/recipes/notices/top_banner_info/top_banner_info.vue.js +1 -0
  429. package/dist/vue3/recipes/notices/top_banner_info/top_banner_info.vue.js.map +1 -1
  430. package/dist/vue3/types/components/avatar/avatar.vue.d.ts.map +1 -1
  431. package/dist/vue3/types/components/button/button.vue.d.ts.map +1 -1
  432. package/dist/vue3/types/components/card/card.vue.d.ts.map +1 -1
  433. package/dist/vue3/types/components/chip/chip.vue.d.ts.map +1 -1
  434. package/dist/vue3/types/components/combobox/combobox.vue.d.ts.map +1 -1
  435. package/dist/vue3/types/components/emoji_text_wrapper/emoji_text_wrapper.vue.d.ts.map +1 -1
  436. package/dist/vue3/types/components/input/input.vue.d.ts.map +1 -1
  437. package/dist/vue3/types/components/input_group/input_group.vue.d.ts.map +1 -1
  438. package/dist/vue3/types/components/item_layout/item_layout.vue.d.ts.map +1 -1
  439. package/dist/vue3/types/components/lazy_show/lazy_show.vue.d.ts.map +1 -1
  440. package/dist/vue3/types/components/modal/modal.vue.d.ts.map +1 -1
  441. package/dist/vue3/types/components/notice/notice_content.vue.d.ts.map +1 -1
  442. package/dist/vue3/types/components/notice/notice_icon.vue.d.ts.map +1 -1
  443. package/dist/vue3/types/components/popover/popover.vue.d.ts.map +1 -1
  444. package/dist/vue3/types/components/popover/popover_header_footer.vue.d.ts.map +1 -1
  445. package/dist/vue3/types/components/radio/radio.vue.d.ts.map +1 -1
  446. package/dist/vue3/types/components/rich_text_editor/rich_text_editor.vue.d.ts.map +1 -1
  447. package/dist/vue3/types/components/select_menu/select_menu.vue.d.ts.map +1 -1
  448. package/dist/vue3/types/components/toggle/toggle.vue.d.ts.map +1 -1
  449. package/dist/vue3/types/components/tooltip/tooltip.vue.d.ts.map +1 -1
  450. package/dist/vue3/types/components/validation_messages/validation_messages.vue.d.ts.map +1 -1
  451. package/dist/vue3/types/recipes/chips/grouped_chip/grouped_chip.vue.d.ts.map +1 -1
  452. package/dist/vue3/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts.map +1 -1
  453. package/dist/vue3/types/recipes/conversation_view/editor/editor.vue.d.ts +11 -0
  454. package/dist/vue3/types/recipes/conversation_view/message_input/message_input.vue.d.ts.map +1 -1
  455. package/dist/vue3/types/recipes/leftbar/general_row/general_row.vue.d.ts.map +1 -1
  456. package/package.json +6 -2
@@ -1 +1 @@
1
- {"version":3,"file":"button.vue.js","sources":["../../../components/button/button.vue"],"sourcesContent":["<template>\n <button\n :class=\"[\n 'base-button__button',\n buttonClasses(),\n ]\"\n data-qa=\"dt-button\"\n :type=\"type\"\n :disabled=\"disabled\"\n :style=\"{ width: width }\"\n :aria-live=\"computedAriaLive\"\n :aria-label=\"loading ? 'loading' : $attrs['aria-label']\"\n v-bind=\"$attrs\"\n v-on=\"buttonListeners\"\n >\n <!-- NOTE(cormac): This span is needed since we can't apply styles to slots. -->\n <span\n v-if=\"shouldRenderIcon()\"\n data-qa=\"dt-button-icon\"\n :class=\"[\n 'base-button__icon',\n 'd-btn__icon',\n ICON_POSITION_MODIFIERS[iconPosition],\n ]\"\n >\n <!-- @slot Button icon -->\n <slot\n name=\"icon\"\n :icon-size=\"iconSize\"\n />\n </span>\n <span\n v-if=\"hasSlotContent($slots.default)\"\n data-qa=\"dt-button-label\"\n :class=\"['d-btn__label', 'base-button__label', labelClass]\"\n >\n <!-- @slot Content within button -->\n <slot />\n </span>\n </button>\n</template>\n\n<script>\nimport { warn } from 'vue';\nimport { hasSlotContent } from '@/common/utils';\n\nimport {\n BUTTON_SIZE_MODIFIERS,\n BUTTON_KIND_MODIFIERS,\n BUTTON_IMPORTANCE_MODIFIERS,\n BUTTON_ICON_SIZES,\n BUTTON_TYPES,\n ICON_POSITION_MODIFIERS,\n INVALID_COMBINATION,\n} from './button_constants';\n\nimport { LINK_KIND_MODIFIERS, getLinkKindModifier } from '@/components/link';\n\n/**\n * A button is a UI element which allows users to take an action throughout the app.\n * It is important a button is identifiable, consistent, and communicates its actions clearly,\n * and is appropriately sized to its action.\n * @see https://dialtone.dialpad.com/components/button.html\n */\nexport default {\n name: 'DtButton',\n\n inheritAttrs: false,\n\n props: {\n /**\n * Whether the button is a circle or not.\n * @values true, false\n */\n circle: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The position of the icon slot within the button.\n * @values left, right, top, bottom\n */\n iconPosition: {\n type: String,\n default: 'left',\n validator: (position) => Object.keys(ICON_POSITION_MODIFIERS).includes(position),\n },\n\n /**\n * The fill and outline of the button associated with its visual importance.\n * @values clear, outlined, primary\n */\n importance: {\n type: String,\n default: 'primary',\n validator: (i) => Object.keys(BUTTON_IMPORTANCE_MODIFIERS).includes(i),\n },\n\n /**\n * Whether the button should be styled as a link or not.\n * @values true, false\n * @see DtLink\n */\n link: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The color of the link and button if the button is styled as a link.\n * @values default, warning, danger, success, muted\n * @see DtLink\n */\n linkKind: {\n type: String,\n default: 'default',\n validator: (lk) => Object.keys(LINK_KIND_MODIFIERS).includes(lk),\n },\n\n /**\n * Determines whether the link should have inverted styling if the button is styled as a link.\n * @values true, false\n * @see DtLink\n */\n linkInverted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML button disabled attribute\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#disabled\" target=\"_blank\"> (Reference) </a>\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML button type attribute\n * <a\n * class=\"d-link\"\n * href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-type\"\n * target=\"_blank\"\n * >\n * (Reference)\n * </a>\n * @values button, submit, reset\n */\n type: {\n type: String,\n default: 'button',\n validator: (t) => BUTTON_TYPES.includes(t),\n },\n\n /**\n * Button width, accepts\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/width\" target=\"_blank\">\n * CSS width attribute\n * </a>\n * values\n */\n width: {\n type: String,\n default: null,\n },\n\n /**\n * The size of the button.\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(BUTTON_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * Used to customize the label container\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Whether the button should display a loading animation or not.\n * @values true, false\n */\n loading: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The color of the button.\n * @values default, muted, danger, inverted\n */\n kind: {\n type: String,\n default: 'default',\n validator: (k) => Object.keys(BUTTON_KIND_MODIFIERS).includes(k),\n },\n\n /**\n * Determines whether a screenreader reads live updates of\n * the button content to the user while the button\n * is in focus. default is to not.\n * @values true, false\n */\n assertiveOnFocus: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Determines whether the button should have active styling\n * default is false.\n * @values true, false\n */\n active: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n /**\n * Native button focus in event\n *\n * @event focusin\n * @type {FocusEvent}\n */\n 'focusin',\n\n /**\n * Native button focus out event\n *\n * @event focusout\n * @type {FocusEvent}\n */\n 'focusout',\n ],\n\n data () {\n return {\n ICON_POSITION_MODIFIERS,\n // whether the button is currently in focus\n isInFocus: false,\n hasSlotContent,\n };\n },\n\n computed: {\n\n buttonListeners () {\n return {\n focusin: (e) => {\n this.isInFocus = this.assertiveOnFocus;\n this.$emit('focusin', e);\n },\n\n focusout: (e) => {\n this.isInFocus = false;\n this.$emit('focusout', e);\n },\n };\n },\n\n computedAriaLive () {\n return this.assertiveOnFocus && this.isInFocus ? 'assertive' : this.$attrs.ariaLive;\n },\n\n iconSize () {\n return BUTTON_ICON_SIZES[this.size];\n },\n },\n\n watch: {\n $props: {\n deep: true,\n immediate: true,\n handler () {\n if (process.env.NODE_ENV === 'production') return;\n\n if (this.circle && this.link) {\n warn('You cannot enable circle and link at the same time', this);\n }\n\n this.isInvalidPropCombination(this.circle, this.kind, this.importance);\n },\n },\n },\n\n methods: {\n buttonClasses () {\n if (this.link) {\n return [\n 'd-link',\n getLinkKindModifier(this.linkKind, this.linkInverted),\n BUTTON_SIZE_MODIFIERS[this.size],\n ];\n }\n return [\n 'd-btn',\n BUTTON_IMPORTANCE_MODIFIERS[this.importance],\n BUTTON_KIND_MODIFIERS[this.kind],\n BUTTON_SIZE_MODIFIERS[this.size],\n {\n 'd-btn--circle': this.circle,\n 'd-btn--loading': this.loading,\n 'd-btn--icon-only': this.isIconOnly(),\n 'd-btn--vertical': this.isVerticalIconLayout(),\n 'd-btn--active': this.active,\n },\n ];\n },\n\n isInvalidPropCombination (circle, kind, importance) {\n for (const row of INVALID_COMBINATION) {\n if (circle === row.circle && kind === row.kind && importance === row.importance) {\n console.warn(row.message);\n return false;\n }\n }\n return true;\n },\n\n shouldRenderIcon () {\n return hasSlotContent(this.$slots.icon) && !this.link;\n },\n\n isIconOnly () {\n return this.shouldRenderIcon() && !hasSlotContent(this.$slots.default);\n },\n\n isVerticalIconLayout () {\n return !this.isIconOnly() && ['top', 'bottom'].includes(this.iconPosition);\n },\n },\n};\n</script>\n"],"names":["_openBlock","_createElementBlock","_mergeProps","_toHandlers","_normalizeClass","_renderSlot","_createCommentVNode"],"mappings":"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"}
1
+ {"version":3,"file":"button.vue.js","sources":["../../../components/button/button.vue"],"sourcesContent":["<template>\n <button\n :class=\"[\n 'base-button__button',\n buttonClasses(),\n ]\"\n data-qa=\"dt-button\"\n :type=\"type\"\n :disabled=\"disabled\"\n :style=\"{ width: width }\"\n :aria-live=\"computedAriaLive\"\n :aria-label=\"loading ? 'loading' : $attrs['aria-label']\"\n v-bind=\"$attrs\"\n v-on=\"buttonListeners\"\n >\n <!-- NOTE(cormac): This span is needed since we can't apply styles to slots. -->\n <span\n v-if=\"shouldRenderIcon()\"\n data-qa=\"dt-button-icon\"\n :class=\"[\n 'base-button__icon',\n 'd-btn__icon',\n ICON_POSITION_MODIFIERS[iconPosition],\n ]\"\n >\n <!-- @slot Button icon -->\n <slot\n name=\"icon\"\n :icon-size=\"iconSize\"\n />\n </span>\n <span\n v-if=\"hasSlotContent($slots.default)\"\n data-qa=\"dt-button-label\"\n :class=\"['d-btn__label', 'base-button__label', labelClass]\"\n >\n <!-- @slot Content within button -->\n <slot />\n </span>\n </button>\n</template>\n\n<script>\nimport { warn } from 'vue';\nimport { hasSlotContent } from '@/common/utils';\n\nimport {\n BUTTON_SIZE_MODIFIERS,\n BUTTON_KIND_MODIFIERS,\n BUTTON_IMPORTANCE_MODIFIERS,\n BUTTON_ICON_SIZES,\n BUTTON_TYPES,\n ICON_POSITION_MODIFIERS,\n INVALID_COMBINATION,\n} from './button_constants';\n\nimport { LINK_KIND_MODIFIERS, getLinkKindModifier } from '@/components/link';\n\n/**\n * A button is a UI element which allows users to take an action throughout the app.\n * It is important a button is identifiable, consistent, and communicates its actions clearly,\n * and is appropriately sized to its action.\n * @see https://dialtone.dialpad.com/components/button.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtButton',\n\n inheritAttrs: false,\n\n props: {\n /**\n * Whether the button is a circle or not.\n * @values true, false\n */\n circle: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The position of the icon slot within the button.\n * @values left, right, top, bottom\n */\n iconPosition: {\n type: String,\n default: 'left',\n validator: (position) => Object.keys(ICON_POSITION_MODIFIERS).includes(position),\n },\n\n /**\n * The fill and outline of the button associated with its visual importance.\n * @values clear, outlined, primary\n */\n importance: {\n type: String,\n default: 'primary',\n validator: (i) => Object.keys(BUTTON_IMPORTANCE_MODIFIERS).includes(i),\n },\n\n /**\n * Whether the button should be styled as a link or not.\n * @values true, false\n * @see DtLink\n */\n link: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The color of the link and button if the button is styled as a link.\n * @values default, warning, danger, success, muted\n * @see DtLink\n */\n linkKind: {\n type: String,\n default: 'default',\n validator: (lk) => Object.keys(LINK_KIND_MODIFIERS).includes(lk),\n },\n\n /**\n * Determines whether the link should have inverted styling if the button is styled as a link.\n * @values true, false\n * @see DtLink\n */\n linkInverted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML button disabled attribute\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#disabled\" target=\"_blank\"> (Reference) </a>\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML button type attribute\n * <a\n * class=\"d-link\"\n * href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-type\"\n * target=\"_blank\"\n * >\n * (Reference)\n * </a>\n * @values button, submit, reset\n */\n type: {\n type: String,\n default: 'button',\n validator: (t) => BUTTON_TYPES.includes(t),\n },\n\n /**\n * Button width, accepts\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/width\" target=\"_blank\">\n * CSS width attribute\n * </a>\n * values\n */\n width: {\n type: String,\n default: null,\n },\n\n /**\n * The size of the button.\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(BUTTON_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * Used to customize the label container\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Whether the button should display a loading animation or not.\n * @values true, false\n */\n loading: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The color of the button.\n * @values default, muted, danger, inverted\n */\n kind: {\n type: String,\n default: 'default',\n validator: (k) => Object.keys(BUTTON_KIND_MODIFIERS).includes(k),\n },\n\n /**\n * Determines whether a screenreader reads live updates of\n * the button content to the user while the button\n * is in focus. default is to not.\n * @values true, false\n */\n assertiveOnFocus: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Determines whether the button should have active styling\n * default is false.\n * @values true, false\n */\n active: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n /**\n * Native button focus in event\n *\n * @event focusin\n * @type {FocusEvent}\n */\n 'focusin',\n\n /**\n * Native button focus out event\n *\n * @event focusout\n * @type {FocusEvent}\n */\n 'focusout',\n ],\n\n data () {\n return {\n ICON_POSITION_MODIFIERS,\n // whether the button is currently in focus\n isInFocus: false,\n hasSlotContent,\n };\n },\n\n computed: {\n\n buttonListeners () {\n return {\n focusin: (e) => {\n this.isInFocus = this.assertiveOnFocus;\n this.$emit('focusin', e);\n },\n\n focusout: (e) => {\n this.isInFocus = false;\n this.$emit('focusout', e);\n },\n };\n },\n\n computedAriaLive () {\n return this.assertiveOnFocus && this.isInFocus ? 'assertive' : this.$attrs.ariaLive;\n },\n\n iconSize () {\n return BUTTON_ICON_SIZES[this.size];\n },\n },\n\n watch: {\n $props: {\n deep: true,\n immediate: true,\n handler () {\n if (process.env.NODE_ENV === 'production') return;\n\n if (this.circle && this.link) {\n warn('You cannot enable circle and link at the same time', this);\n }\n\n this.isInvalidPropCombination(this.circle, this.kind, this.importance);\n },\n },\n },\n\n methods: {\n buttonClasses () {\n if (this.link) {\n return [\n 'd-link',\n getLinkKindModifier(this.linkKind, this.linkInverted),\n BUTTON_SIZE_MODIFIERS[this.size],\n ];\n }\n return [\n 'd-btn',\n BUTTON_IMPORTANCE_MODIFIERS[this.importance],\n BUTTON_KIND_MODIFIERS[this.kind],\n BUTTON_SIZE_MODIFIERS[this.size],\n {\n 'd-btn--circle': this.circle,\n 'd-btn--loading': this.loading,\n 'd-btn--icon-only': this.isIconOnly(),\n 'd-btn--vertical': this.isVerticalIconLayout(),\n 'd-btn--active': this.active,\n },\n ];\n },\n\n isInvalidPropCombination (circle, kind, importance) {\n for (const row of INVALID_COMBINATION) {\n if (circle === row.circle && kind === row.kind && importance === row.importance) {\n console.warn(row.message);\n return false;\n }\n }\n return true;\n },\n\n shouldRenderIcon () {\n return hasSlotContent(this.$slots.icon) && !this.link;\n },\n\n isIconOnly () {\n return this.shouldRenderIcon() && !hasSlotContent(this.$slots.default);\n },\n\n isVerticalIconLayout () {\n return !this.isIconOnly() && ['top', 'bottom'].includes(this.iconPosition);\n },\n },\n};\n</script>\n"],"names":["_openBlock","_createElementBlock","_mergeProps","_toHandlers","_normalizeClass","_renderSlot","_createCommentVNode"],"mappings":"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"}
@@ -4,6 +4,7 @@ const button_group_constants = require("./button_group_constants.cjs");
4
4
  const vue = require("vue");
5
5
  const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helper.cjs");
6
6
  const _sfc_main = {
7
+ compatConfig: { MODE: 3 },
7
8
  name: "DtButtonGroup",
8
9
  props: {
9
10
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"button_group.vue.cjs","sources":["../../../components/button_group/button_group.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'd-btn-group',\n BUTTON_GROUP_ALIGNMENT[alignment],\n ]\"\n role=\"group\"\n >\n <!-- @slot Default slot for button items -->\n <slot />\n </div>\n</template>\n\n<script>\nimport { BUTTON_GROUP_ALIGNMENT } from './button_group_constants';\n\nexport default {\n name: 'DtButtonGroup',\n\n props: {\n /**\n * Alignment of the buttons inside the container\n */\n alignment: {\n type: String,\n default: 'start',\n validator: (alignment) => Object.keys(BUTTON_GROUP_ALIGNMENT).includes(alignment),\n },\n },\n\n data () {\n return {\n BUTTON_GROUP_ALIGNMENT,\n };\n },\n};\n</script>\n"],"names":["BUTTON_GROUP_ALIGNMENT","_createElementBlock","_normalizeClass","_renderSlot"],"mappings":";;;;;AAgBA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,CAAC,cAAc,OAAO,KAAKA,6CAAsB,EAAE,SAAS,SAAS;AAAA,IACjF;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,8BACLA,uBAAsB;AAAA;EAEzB;AACH;;0BAlCEC,IASM,mBAAA,OAAA;AAAA,IARH,OAFLC,IAAAA,eAAA;AAAA;MAEyC,MAAA,uBAAuB,OAAS,SAAA;AAAA;IAIrE,MAAK;AAAA;IAGLC,eAAQ,KAAA,QAAA,SAAA;AAAA;;;;"}
1
+ {"version":3,"file":"button_group.vue.cjs","sources":["../../../components/button_group/button_group.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'd-btn-group',\n BUTTON_GROUP_ALIGNMENT[alignment],\n ]\"\n role=\"group\"\n >\n <!-- @slot Default slot for button items -->\n <slot />\n </div>\n</template>\n\n<script>\nimport { BUTTON_GROUP_ALIGNMENT } from './button_group_constants';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtButtonGroup',\n\n props: {\n /**\n * Alignment of the buttons inside the container\n */\n alignment: {\n type: String,\n default: 'start',\n validator: (alignment) => Object.keys(BUTTON_GROUP_ALIGNMENT).includes(alignment),\n },\n },\n\n data () {\n return {\n BUTTON_GROUP_ALIGNMENT,\n };\n },\n};\n</script>\n"],"names":["BUTTON_GROUP_ALIGNMENT","_createElementBlock","_normalizeClass","_renderSlot"],"mappings":";;;;;AAgBA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EAEN,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,CAAC,cAAc,OAAO,KAAKA,6CAAsB,EAAE,SAAS,SAAS;AAAA,IACjF;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,8BACLA,uBAAsB;AAAA;EAEzB;AACH;;0BAnCEC,IASM,mBAAA,OAAA;AAAA,IARH,OAFLC,IAAAA,eAAA;AAAA;MAEyC,MAAA,uBAAuB,OAAS,SAAA;AAAA;IAIrE,MAAK;AAAA;IAGLC,eAAQ,KAAA,QAAA,SAAA;AAAA;;;;"}
@@ -2,6 +2,7 @@ import { BUTTON_GROUP_ALIGNMENT } from "./button_group_constants.js";
2
2
  import { openBlock, createElementBlock, normalizeClass, renderSlot } from "vue";
3
3
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
4
4
  const _sfc_main = {
5
+ compatConfig: { MODE: 3 },
5
6
  name: "DtButtonGroup",
6
7
  props: {
7
8
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"button_group.vue.js","sources":["../../../components/button_group/button_group.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'd-btn-group',\n BUTTON_GROUP_ALIGNMENT[alignment],\n ]\"\n role=\"group\"\n >\n <!-- @slot Default slot for button items -->\n <slot />\n </div>\n</template>\n\n<script>\nimport { BUTTON_GROUP_ALIGNMENT } from './button_group_constants';\n\nexport default {\n name: 'DtButtonGroup',\n\n props: {\n /**\n * Alignment of the buttons inside the container\n */\n alignment: {\n type: String,\n default: 'start',\n validator: (alignment) => Object.keys(BUTTON_GROUP_ALIGNMENT).includes(alignment),\n },\n },\n\n data () {\n return {\n BUTTON_GROUP_ALIGNMENT,\n };\n },\n};\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_renderSlot"],"mappings":";;;AAgBA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,CAAC,cAAc,OAAO,KAAK,sBAAsB,EAAE,SAAS,SAAS;AAAA,IACjF;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL;AAAA;EAEH;AACH;;sBAlCEA,mBASM,OAAA;AAAA,IARH,OAFLC,eAAA;AAAA;MAEyC,MAAA,uBAAuB,OAAS,SAAA;AAAA;IAIrE,MAAK;AAAA;IAGLC,WAAQ,KAAA,QAAA,SAAA;AAAA;;;"}
1
+ {"version":3,"file":"button_group.vue.js","sources":["../../../components/button_group/button_group.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'd-btn-group',\n BUTTON_GROUP_ALIGNMENT[alignment],\n ]\"\n role=\"group\"\n >\n <!-- @slot Default slot for button items -->\n <slot />\n </div>\n</template>\n\n<script>\nimport { BUTTON_GROUP_ALIGNMENT } from './button_group_constants';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtButtonGroup',\n\n props: {\n /**\n * Alignment of the buttons inside the container\n */\n alignment: {\n type: String,\n default: 'start',\n validator: (alignment) => Object.keys(BUTTON_GROUP_ALIGNMENT).includes(alignment),\n },\n },\n\n data () {\n return {\n BUTTON_GROUP_ALIGNMENT,\n };\n },\n};\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_renderSlot"],"mappings":";;;AAgBA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EAEN,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,CAAC,cAAc,OAAO,KAAK,sBAAsB,EAAE,SAAS,SAAS;AAAA,IACjF;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL;AAAA;EAEH;AACH;;sBAnCEA,mBASM,OAAA;AAAA,IARH,OAFLC,eAAA;AAAA;MAEyC,MAAA,uBAAuB,OAAS,SAAA;AAAA;IAIrE,MAAK;AAAA;IAGLC,WAAQ,KAAA,QAAA,SAAA;AAAA;;;"}
@@ -4,6 +4,7 @@ const common_utils = require("../../common/utils.cjs");
4
4
  const vue = require("vue");
5
5
  const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helper.cjs");
6
6
  const _sfc_main = {
7
+ compatConfig: { MODE: 3 },
7
8
  name: "DtCard",
8
9
  props: {
9
10
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"card.vue.cjs","sources":["../../../components/card/card.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'd-card',\n containerClass,\n ]\"\n data-qa=\"dt-card\"\n >\n <div\n v-if=\"hasSlotContent($slots.header)\"\n :class=\"[\n 'd-card__header',\n headerClass,\n ]\"\n >\n <!-- @slot slot for header content -->\n <slot name=\"header\" />\n </div>\n\n <div\n :class=\"[\n 'd-card__content',\n contentClass,\n ]\"\n :style=\"{ 'max-height': maxHeight }\"\n >\n <!-- @slot slot for main content -->\n <slot name=\"content\" />\n </div>\n\n <div\n v-if=\"hasSlotContent($slots.footer)\"\n :class=\"[\n 'd-card__footer',\n footerClass,\n ]\"\n >\n <!-- @slot slot for footer content -->\n <slot name=\"footer\" />\n </div>\n </div>\n</template>\n\n<script>\nimport { hasSlotContent } from '@/common/utils';\n\n/**\n * A card contains summary content and actions about a single subject.\n * It can be used by itself or within a list, and is generally interactive.\n * @see https://dialtone.dialpad.com/components/card.html\n */\nexport default {\n name: 'DtCard',\n props: {\n /**\n * The maximum height of the card content.\n * If given, makes content area scrollable.\n */\n maxHeight: {\n type: String,\n default: null,\n },\n\n /**\n * class for card container.\n */\n containerClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * class for card content.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * class for card header.\n */\n headerClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * class for card footer.\n */\n footerClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n data () {\n return {\n hasSlotContent,\n };\n },\n};\n</script>\n"],"names":["hasSlotContent","_createElementBlock","_normalizeClass","_renderSlot","_createCommentVNode","_createElementVNode","_normalizeStyle"],"mappings":";;;;;AAmDA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EACN,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,gBAAgB;AAAA,MACd,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AAAA,MACX,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AAAA,MACX,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL,gBAAAA,aAAc;AAAA;EAEjB;AACH;;0BApGEC,IAuCM,mBAAA,OAAA;AAAA,IAtCH,OAFLC,IAAAA,eAAA;AAAA;MAEoC,OAAc;AAAA;IAI9C,WAAQ;AAAA;IAGA,MAAc,eAAC,KAAM,OAAC,MAAM,sBADpCD,IASM,mBAAA,OAAA;AAAA,MAjBV,KAAA;AAAA,MAUO,OAVPC,IAAAA,eAAA;AAAA;QAUkD,OAAW;AAAA;;MAMvDC,eAAsB,KAAA,QAAA,QAAA;AAAA,aAhB5BC,IAAA,mBAAA,IAAA,IAAA;AAAA,IAmBIC,IAAAA,mBASM,OAAA;AAAA,MARH,OApBPH,IAAAA,eAAA;AAAA;QAoBmD,OAAY;AAAA;MAIxD,OAxBPI,IAAAA,+BAwB8B,OAAS,UAAA,CAAA;AAAA;MAGjCH,eAAuB,KAAA,QAAA,SAAA;AAAA;IAIjB,MAAc,eAAC,KAAM,OAAC,MAAM,sBADpCF,IASM,mBAAA,OAAA;AAAA,MAvCV,KAAA;AAAA,MAgCO,OAhCPC,IAAAA,eAAA;AAAA;QAgCkD,OAAW;AAAA;;MAMvDC,eAAsB,KAAA,QAAA,QAAA;AAAA,aAtC5BC,IAAA,mBAAA,IAAA,IAAA;AAAA;;;;"}
1
+ {"version":3,"file":"card.vue.cjs","sources":["../../../components/card/card.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'd-card',\n containerClass,\n ]\"\n data-qa=\"dt-card\"\n >\n <div\n v-if=\"hasSlotContent($slots.header)\"\n :class=\"[\n 'd-card__header',\n headerClass,\n ]\"\n >\n <!-- @slot slot for header content -->\n <slot name=\"header\" />\n </div>\n\n <div\n :class=\"[\n 'd-card__content',\n contentClass,\n ]\"\n :style=\"{ 'max-height': maxHeight }\"\n >\n <!-- @slot slot for main content -->\n <slot name=\"content\" />\n </div>\n\n <div\n v-if=\"hasSlotContent($slots.footer)\"\n :class=\"[\n 'd-card__footer',\n footerClass,\n ]\"\n >\n <!-- @slot slot for footer content -->\n <slot name=\"footer\" />\n </div>\n </div>\n</template>\n\n<script>\nimport { hasSlotContent } from '@/common/utils';\n\n/**\n * A card contains summary content and actions about a single subject.\n * It can be used by itself or within a list, and is generally interactive.\n * @see https://dialtone.dialpad.com/components/card.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCard',\n props: {\n /**\n * The maximum height of the card content.\n * If given, makes content area scrollable.\n */\n maxHeight: {\n type: String,\n default: null,\n },\n\n /**\n * class for card container.\n */\n containerClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * class for card content.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * class for card header.\n */\n headerClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * class for card footer.\n */\n footerClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n data () {\n return {\n hasSlotContent,\n };\n },\n};\n</script>\n"],"names":["hasSlotContent","_createElementBlock","_normalizeClass","_renderSlot","_createCommentVNode","_createElementVNode","_normalizeStyle"],"mappings":";;;;;AAmDA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EACN,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,gBAAgB;AAAA,MACd,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AAAA,MACX,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AAAA,MACX,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL,gBAAAA,aAAc;AAAA;EAEjB;AACH;;0BArGEC,IAuCM,mBAAA,OAAA;AAAA,IAtCH,OAFLC,IAAAA,eAAA;AAAA;MAEoC,OAAc;AAAA;IAI9C,WAAQ;AAAA;IAGA,MAAc,eAAC,KAAM,OAAC,MAAM,sBADpCD,IASM,mBAAA,OAAA;AAAA,MAjBV,KAAA;AAAA,MAUO,OAVPC,IAAAA,eAAA;AAAA;QAUkD,OAAW;AAAA;;MAMvDC,eAAsB,KAAA,QAAA,QAAA;AAAA,aAhB5BC,IAAA,mBAAA,IAAA,IAAA;AAAA,IAmBIC,IAAAA,mBASM,OAAA;AAAA,MARH,OApBPH,IAAAA,eAAA;AAAA;QAoBmD,OAAY;AAAA;MAIxD,OAxBPI,IAAAA,+BAwB8B,OAAS,UAAA,CAAA;AAAA;MAGjCH,eAAuB,KAAA,QAAA,SAAA;AAAA;IAIjB,MAAc,eAAC,KAAM,OAAC,MAAM,sBADpCF,IASM,mBAAA,OAAA;AAAA,MAvCV,KAAA;AAAA,MAgCO,OAhCPC,IAAAA,eAAA;AAAA;QAgCkD,OAAW;AAAA;;MAMvDC,eAAsB,KAAA,QAAA,QAAA;AAAA,aAtC5BC,IAAA,mBAAA,IAAA,IAAA;AAAA;;;;"}
@@ -2,6 +2,7 @@ import { hasSlotContent } from "../../common/utils.js";
2
2
  import { openBlock, createElementBlock, normalizeClass, renderSlot, createCommentVNode, createElementVNode, normalizeStyle } from "vue";
3
3
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
4
4
  const _sfc_main = {
5
+ compatConfig: { MODE: 3 },
5
6
  name: "DtCard",
6
7
  props: {
7
8
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"card.vue.js","sources":["../../../components/card/card.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'd-card',\n containerClass,\n ]\"\n data-qa=\"dt-card\"\n >\n <div\n v-if=\"hasSlotContent($slots.header)\"\n :class=\"[\n 'd-card__header',\n headerClass,\n ]\"\n >\n <!-- @slot slot for header content -->\n <slot name=\"header\" />\n </div>\n\n <div\n :class=\"[\n 'd-card__content',\n contentClass,\n ]\"\n :style=\"{ 'max-height': maxHeight }\"\n >\n <!-- @slot slot for main content -->\n <slot name=\"content\" />\n </div>\n\n <div\n v-if=\"hasSlotContent($slots.footer)\"\n :class=\"[\n 'd-card__footer',\n footerClass,\n ]\"\n >\n <!-- @slot slot for footer content -->\n <slot name=\"footer\" />\n </div>\n </div>\n</template>\n\n<script>\nimport { hasSlotContent } from '@/common/utils';\n\n/**\n * A card contains summary content and actions about a single subject.\n * It can be used by itself or within a list, and is generally interactive.\n * @see https://dialtone.dialpad.com/components/card.html\n */\nexport default {\n name: 'DtCard',\n props: {\n /**\n * The maximum height of the card content.\n * If given, makes content area scrollable.\n */\n maxHeight: {\n type: String,\n default: null,\n },\n\n /**\n * class for card container.\n */\n containerClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * class for card content.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * class for card header.\n */\n headerClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * class for card footer.\n */\n footerClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n data () {\n return {\n hasSlotContent,\n };\n },\n};\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_renderSlot","_createCommentVNode","_createElementVNode","_normalizeStyle"],"mappings":";;;AAmDA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EACN,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,gBAAgB;AAAA,MACd,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AAAA,MACX,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AAAA,MACX,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL;AAAA;EAEH;AACH;;sBApGEA,mBAuCM,OAAA;AAAA,IAtCH,OAFLC,eAAA;AAAA;MAEoC,OAAc;AAAA;IAI9C,WAAQ;AAAA;IAGA,MAAc,eAAC,KAAM,OAAC,MAAM,kBADpCD,mBASM,OAAA;AAAA,MAjBV,KAAA;AAAA,MAUO,OAVPC,eAAA;AAAA;QAUkD,OAAW;AAAA;;MAMvDC,WAAsB,KAAA,QAAA,QAAA;AAAA,aAhB5BC,mBAAA,IAAA,IAAA;AAAA,IAmBIC,mBASM,OAAA;AAAA,MARH,OApBPH,eAAA;AAAA;QAoBmD,OAAY;AAAA;MAIxD,OAxBPI,+BAwB8B,OAAS,UAAA,CAAA;AAAA;MAGjCH,WAAuB,KAAA,QAAA,SAAA;AAAA;IAIjB,MAAc,eAAC,KAAM,OAAC,MAAM,kBADpCF,mBASM,OAAA;AAAA,MAvCV,KAAA;AAAA,MAgCO,OAhCPC,eAAA;AAAA;QAgCkD,OAAW;AAAA;;MAMvDC,WAAsB,KAAA,QAAA,QAAA;AAAA,aAtC5BC,mBAAA,IAAA,IAAA;AAAA;;;"}
1
+ {"version":3,"file":"card.vue.js","sources":["../../../components/card/card.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'd-card',\n containerClass,\n ]\"\n data-qa=\"dt-card\"\n >\n <div\n v-if=\"hasSlotContent($slots.header)\"\n :class=\"[\n 'd-card__header',\n headerClass,\n ]\"\n >\n <!-- @slot slot for header content -->\n <slot name=\"header\" />\n </div>\n\n <div\n :class=\"[\n 'd-card__content',\n contentClass,\n ]\"\n :style=\"{ 'max-height': maxHeight }\"\n >\n <!-- @slot slot for main content -->\n <slot name=\"content\" />\n </div>\n\n <div\n v-if=\"hasSlotContent($slots.footer)\"\n :class=\"[\n 'd-card__footer',\n footerClass,\n ]\"\n >\n <!-- @slot slot for footer content -->\n <slot name=\"footer\" />\n </div>\n </div>\n</template>\n\n<script>\nimport { hasSlotContent } from '@/common/utils';\n\n/**\n * A card contains summary content and actions about a single subject.\n * It can be used by itself or within a list, and is generally interactive.\n * @see https://dialtone.dialpad.com/components/card.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCard',\n props: {\n /**\n * The maximum height of the card content.\n * If given, makes content area scrollable.\n */\n maxHeight: {\n type: String,\n default: null,\n },\n\n /**\n * class for card container.\n */\n containerClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * class for card content.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * class for card header.\n */\n headerClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * class for card footer.\n */\n footerClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n data () {\n return {\n hasSlotContent,\n };\n },\n};\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_renderSlot","_createCommentVNode","_createElementVNode","_normalizeStyle"],"mappings":";;;AAmDA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EACN,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,gBAAgB;AAAA,MACd,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AAAA,MACX,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AAAA,MACX,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL;AAAA;EAEH;AACH;;sBArGEA,mBAuCM,OAAA;AAAA,IAtCH,OAFLC,eAAA;AAAA;MAEoC,OAAc;AAAA;IAI9C,WAAQ;AAAA;IAGA,MAAc,eAAC,KAAM,OAAC,MAAM,kBADpCD,mBASM,OAAA;AAAA,MAjBV,KAAA;AAAA,MAUO,OAVPC,eAAA;AAAA;QAUkD,OAAW;AAAA;;MAMvDC,WAAsB,KAAA,QAAA,QAAA;AAAA,aAhB5BC,mBAAA,IAAA,IAAA;AAAA,IAmBIC,mBASM,OAAA;AAAA,MARH,OApBPH,eAAA;AAAA;QAoBmD,OAAY;AAAA;MAIxD,OAxBPI,+BAwB8B,OAAS,UAAA,CAAA;AAAA;MAGjCH,WAAuB,KAAA,QAAA,SAAA;AAAA;IAIjB,MAAc,eAAC,KAAM,OAAC,MAAM,kBADpCF,mBASM,OAAA;AAAA,MAvCV,KAAA;AAAA,MAgCO,OAhCPC,eAAA;AAAA;QAgCkD,OAAW;AAAA;;MAMvDC,WAAsB,KAAA,QAAA,QAAA;AAAA,aAtC5BC,mBAAA,IAAA,IAAA;AAAA;;;"}
@@ -6,6 +6,7 @@ const vue = require("vue");
6
6
  const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helper.cjs");
7
7
  const validation_messages = require("../validation_messages/validation_messages.vue.cjs");
8
8
  const _sfc_main = {
9
+ compatConfig: { MODE: 3 },
9
10
  name: "DtCheckbox",
10
11
  components: { DtValidationMessages: validation_messages.default },
11
12
  mixins: [input.InputMixin, input.CheckableMixin, input.GroupableMixin, input.MessagesMixin],
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.vue.cjs","sources":["../../../components/checkbox/checkbox.vue"],"sourcesContent":["<template>\n <div>\n <label>\n <div :class=\"['d-checkbox-group', { 'd-checkbox-group--disabled': internalDisabled }]\">\n <div class=\"d-checkbox__input\">\n <input\n type=\"checkbox\"\n :checked=\"internalChecked\"\n :name=\"internalName\"\n :value=\"value\"\n :disabled=\"internalDisabled\"\n :class=\"['d-checkbox', inputValidationClass, inputClass]\"\n v-bind=\"$attrs\"\n :indeterminate.prop=\"internalIndeterminate\"\n v-on=\"inputListeners\"\n >\n </div>\n <div\n v-if=\"hasLabelOrDescription\"\n class=\"d-checkbox__copy d-checkbox__label\"\n data-qa=\"checkbox-label-description-container\"\n >\n <div\n v-if=\"hasLabel\"\n :class=\"labelClass\"\n v-bind=\"labelChildProps\"\n data-qa=\"checkbox-label\"\n >\n <!-- @slot slot for Checkbox Label -->\n <slot>{{ label }}</slot>\n </div>\n <div\n v-if=\"hasDescription\"\n :class=\"['d-description', descriptionClass]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"checkbox-description\"\n >\n <!-- @slot slot for Checkbox Description -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-checkbox-validation-messages\"\n />\n </div>\n </div>\n </label>\n </div>\n</template>\n\n<script>\n// Imports\nimport {\n InputMixin,\n CheckableMixin,\n GroupableMixin,\n MessagesMixin,\n} from '@/common/mixins/input';\nimport { CHECKBOX_INPUT_VALIDATION_CLASSES } from './checkbox_constants';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * Checkboxes are control elements that allow the user to make a selection.They are typically used in a\n * Checkbox Group which allows the user to make one or more selections from a list of options.\n * @see https://dialtone.dialpad.com/components/checkbox.html\n */\nexport default {\n name: 'DtCheckbox',\n\n components: { DtValidationMessages },\n\n mixins: [InputMixin, CheckableMixin, GroupableMixin, MessagesMixin],\n\n inheritAttrs: false,\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {Boolean}\n */\n 'input',\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 computed: {\n inputValidationClass () {\n return CHECKBOX_INPUT_VALIDATION_CLASSES[this.internalValidationState];\n },\n\n checkboxGroupValueChecked () {\n return this.groupContext?.selectedValues?.includes(this.value) ?? false;\n },\n\n hasLabel () {\n return !!(this.$slots.default || this.label);\n },\n\n hasDescription () {\n return !!(this.$slots.description || this.description);\n },\n\n hasLabelOrDescription () {\n return this.hasLabel || this.hasDescription;\n },\n\n inputListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through\n * onto the input element which will result in the handler being called twice\n * (once on the input element and once by the emitted input event by the change listener).\n */\n input: () => {},\n focusin: event => this.$emit('focusin', event),\n focusout: event => this.$emit('focusout', event),\n change: event => this.emitValue(event.target),\n };\n },\n },\n\n watch: {\n checkboxGroupValueChecked: {\n immediate: true,\n handler (newCheckboxGroupValueChecked) {\n if (this.hasGroup) {\n // update internal value when the checkbox group value changes\n this.internalChecked = newCheckboxGroupValueChecked;\n }\n },\n },\n },\n\n mounted () {\n this.runValidations();\n },\n\n methods: {\n emitValue (target) {\n let { value, checked } = target;\n // Expected: Indeterminate -> unchecked. We need to manually set DOM property `checked` to false\n // and update this.internalIndeterminate.\n if (this.internalIndeterminate) {\n checked = false;\n this.internalIndeterminate = false;\n target.checked = false;\n }\n // update provided value if injected\n this.setGroupValue(value, checked);\n\n // emit the state of the checkbox\n this.$emit('input', checked);\n },\n\n runValidations () {\n this.validateInputLabels(this.hasLabel, this.$attrs['aria-label']);\n },\n },\n};\n</script>\n"],"names":["DtValidationMessages","InputMixin","CheckableMixin","GroupableMixin","MessagesMixin","CHECKBOX_INPUT_VALIDATION_CLASSES","_createElementBlock","_createElementVNode","_normalizeClass","_mergeProps","_toHandlers","_openBlock","_renderSlot","_createTextVNode","_toDisplayString","_createCommentVNode","_createVNode"],"mappings":"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"}
1
+ {"version":3,"file":"checkbox.vue.cjs","sources":["../../../components/checkbox/checkbox.vue"],"sourcesContent":["<template>\n <div>\n <label>\n <div :class=\"['d-checkbox-group', { 'd-checkbox-group--disabled': internalDisabled }]\">\n <div class=\"d-checkbox__input\">\n <input\n type=\"checkbox\"\n :checked=\"internalChecked\"\n :name=\"internalName\"\n :value=\"value\"\n :disabled=\"internalDisabled\"\n :class=\"['d-checkbox', inputValidationClass, inputClass]\"\n v-bind=\"$attrs\"\n :indeterminate.prop=\"internalIndeterminate\"\n v-on=\"inputListeners\"\n >\n </div>\n <div\n v-if=\"hasLabelOrDescription\"\n class=\"d-checkbox__copy d-checkbox__label\"\n data-qa=\"checkbox-label-description-container\"\n >\n <div\n v-if=\"hasLabel\"\n :class=\"labelClass\"\n v-bind=\"labelChildProps\"\n data-qa=\"checkbox-label\"\n >\n <!-- @slot slot for Checkbox Label -->\n <slot>{{ label }}</slot>\n </div>\n <div\n v-if=\"hasDescription\"\n :class=\"['d-description', descriptionClass]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"checkbox-description\"\n >\n <!-- @slot slot for Checkbox Description -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-checkbox-validation-messages\"\n />\n </div>\n </div>\n </label>\n </div>\n</template>\n\n<script>\n// Imports\nimport {\n InputMixin,\n CheckableMixin,\n GroupableMixin,\n MessagesMixin,\n} from '@/common/mixins/input';\nimport { CHECKBOX_INPUT_VALIDATION_CLASSES } from './checkbox_constants';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * Checkboxes are control elements that allow the user to make a selection.They are typically used in a\n * Checkbox Group which allows the user to make one or more selections from a list of options.\n * @see https://dialtone.dialpad.com/components/checkbox.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCheckbox',\n\n components: { DtValidationMessages },\n\n mixins: [InputMixin, CheckableMixin, GroupableMixin, MessagesMixin],\n\n inheritAttrs: false,\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {Boolean}\n */\n 'input',\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 computed: {\n inputValidationClass () {\n return CHECKBOX_INPUT_VALIDATION_CLASSES[this.internalValidationState];\n },\n\n checkboxGroupValueChecked () {\n return this.groupContext?.selectedValues?.includes(this.value) ?? false;\n },\n\n hasLabel () {\n return !!(this.$slots.default || this.label);\n },\n\n hasDescription () {\n return !!(this.$slots.description || this.description);\n },\n\n hasLabelOrDescription () {\n return this.hasLabel || this.hasDescription;\n },\n\n inputListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through\n * onto the input element which will result in the handler being called twice\n * (once on the input element and once by the emitted input event by the change listener).\n */\n input: () => {},\n focusin: event => this.$emit('focusin', event),\n focusout: event => this.$emit('focusout', event),\n change: event => this.emitValue(event.target),\n };\n },\n },\n\n watch: {\n checkboxGroupValueChecked: {\n immediate: true,\n handler (newCheckboxGroupValueChecked) {\n if (this.hasGroup) {\n // update internal value when the checkbox group value changes\n this.internalChecked = newCheckboxGroupValueChecked;\n }\n },\n },\n },\n\n mounted () {\n this.runValidations();\n },\n\n methods: {\n emitValue (target) {\n let { value, checked } = target;\n // Expected: Indeterminate -> unchecked. We need to manually set DOM property `checked` to false\n // and update this.internalIndeterminate.\n if (this.internalIndeterminate) {\n checked = false;\n this.internalIndeterminate = false;\n target.checked = false;\n }\n // update provided value if injected\n this.setGroupValue(value, checked);\n\n // emit the state of the checkbox\n this.$emit('input', checked);\n },\n\n runValidations () {\n this.validateInputLabels(this.hasLabel, this.$attrs['aria-label']);\n },\n },\n};\n</script>\n"],"names":["DtValidationMessages","InputMixin","CheckableMixin","GroupableMixin","MessagesMixin","CHECKBOX_INPUT_VALIDATION_CLASSES","_createElementBlock","_createElementVNode","_normalizeClass","_mergeProps","_toHandlers","_openBlock","_renderSlot","_createTextVNode","_toDisplayString","_createCommentVNode","_createVNode"],"mappings":"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"}
@@ -4,6 +4,7 @@ import { resolveComponent, openBlock, createElementBlock, createElementVNode, no
4
4
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
5
5
  import DtValidationMessages from "../validation_messages/validation_messages.vue.js";
6
6
  const _sfc_main = {
7
+ compatConfig: { MODE: 3 },
7
8
  name: "DtCheckbox",
8
9
  components: { DtValidationMessages },
9
10
  mixins: [InputMixin, CheckableMixin, GroupableMixin, MessagesMixin],
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.vue.js","sources":["../../../components/checkbox/checkbox.vue"],"sourcesContent":["<template>\n <div>\n <label>\n <div :class=\"['d-checkbox-group', { 'd-checkbox-group--disabled': internalDisabled }]\">\n <div class=\"d-checkbox__input\">\n <input\n type=\"checkbox\"\n :checked=\"internalChecked\"\n :name=\"internalName\"\n :value=\"value\"\n :disabled=\"internalDisabled\"\n :class=\"['d-checkbox', inputValidationClass, inputClass]\"\n v-bind=\"$attrs\"\n :indeterminate.prop=\"internalIndeterminate\"\n v-on=\"inputListeners\"\n >\n </div>\n <div\n v-if=\"hasLabelOrDescription\"\n class=\"d-checkbox__copy d-checkbox__label\"\n data-qa=\"checkbox-label-description-container\"\n >\n <div\n v-if=\"hasLabel\"\n :class=\"labelClass\"\n v-bind=\"labelChildProps\"\n data-qa=\"checkbox-label\"\n >\n <!-- @slot slot for Checkbox Label -->\n <slot>{{ label }}</slot>\n </div>\n <div\n v-if=\"hasDescription\"\n :class=\"['d-description', descriptionClass]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"checkbox-description\"\n >\n <!-- @slot slot for Checkbox Description -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-checkbox-validation-messages\"\n />\n </div>\n </div>\n </label>\n </div>\n</template>\n\n<script>\n// Imports\nimport {\n InputMixin,\n CheckableMixin,\n GroupableMixin,\n MessagesMixin,\n} from '@/common/mixins/input';\nimport { CHECKBOX_INPUT_VALIDATION_CLASSES } from './checkbox_constants';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * Checkboxes are control elements that allow the user to make a selection.They are typically used in a\n * Checkbox Group which allows the user to make one or more selections from a list of options.\n * @see https://dialtone.dialpad.com/components/checkbox.html\n */\nexport default {\n name: 'DtCheckbox',\n\n components: { DtValidationMessages },\n\n mixins: [InputMixin, CheckableMixin, GroupableMixin, MessagesMixin],\n\n inheritAttrs: false,\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {Boolean}\n */\n 'input',\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 computed: {\n inputValidationClass () {\n return CHECKBOX_INPUT_VALIDATION_CLASSES[this.internalValidationState];\n },\n\n checkboxGroupValueChecked () {\n return this.groupContext?.selectedValues?.includes(this.value) ?? false;\n },\n\n hasLabel () {\n return !!(this.$slots.default || this.label);\n },\n\n hasDescription () {\n return !!(this.$slots.description || this.description);\n },\n\n hasLabelOrDescription () {\n return this.hasLabel || this.hasDescription;\n },\n\n inputListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through\n * onto the input element which will result in the handler being called twice\n * (once on the input element and once by the emitted input event by the change listener).\n */\n input: () => {},\n focusin: event => this.$emit('focusin', event),\n focusout: event => this.$emit('focusout', event),\n change: event => this.emitValue(event.target),\n };\n },\n },\n\n watch: {\n checkboxGroupValueChecked: {\n immediate: true,\n handler (newCheckboxGroupValueChecked) {\n if (this.hasGroup) {\n // update internal value when the checkbox group value changes\n this.internalChecked = newCheckboxGroupValueChecked;\n }\n },\n },\n },\n\n mounted () {\n this.runValidations();\n },\n\n methods: {\n emitValue (target) {\n let { value, checked } = target;\n // Expected: Indeterminate -> unchecked. We need to manually set DOM property `checked` to false\n // and update this.internalIndeterminate.\n if (this.internalIndeterminate) {\n checked = false;\n this.internalIndeterminate = false;\n target.checked = false;\n }\n // update provided value if injected\n this.setGroupValue(value, checked);\n\n // emit the state of the checkbox\n this.$emit('input', checked);\n },\n\n runValidations () {\n this.validateInputLabels(this.hasLabel, this.$attrs['aria-label']);\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_createElementVNode","_normalizeClass","_mergeProps","_toHandlers","_openBlock","_renderSlot","_createTextVNode","_toDisplayString","_createCommentVNode","_createVNode"],"mappings":"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"}
1
+ {"version":3,"file":"checkbox.vue.js","sources":["../../../components/checkbox/checkbox.vue"],"sourcesContent":["<template>\n <div>\n <label>\n <div :class=\"['d-checkbox-group', { 'd-checkbox-group--disabled': internalDisabled }]\">\n <div class=\"d-checkbox__input\">\n <input\n type=\"checkbox\"\n :checked=\"internalChecked\"\n :name=\"internalName\"\n :value=\"value\"\n :disabled=\"internalDisabled\"\n :class=\"['d-checkbox', inputValidationClass, inputClass]\"\n v-bind=\"$attrs\"\n :indeterminate.prop=\"internalIndeterminate\"\n v-on=\"inputListeners\"\n >\n </div>\n <div\n v-if=\"hasLabelOrDescription\"\n class=\"d-checkbox__copy d-checkbox__label\"\n data-qa=\"checkbox-label-description-container\"\n >\n <div\n v-if=\"hasLabel\"\n :class=\"labelClass\"\n v-bind=\"labelChildProps\"\n data-qa=\"checkbox-label\"\n >\n <!-- @slot slot for Checkbox Label -->\n <slot>{{ label }}</slot>\n </div>\n <div\n v-if=\"hasDescription\"\n :class=\"['d-description', descriptionClass]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"checkbox-description\"\n >\n <!-- @slot slot for Checkbox Description -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-checkbox-validation-messages\"\n />\n </div>\n </div>\n </label>\n </div>\n</template>\n\n<script>\n// Imports\nimport {\n InputMixin,\n CheckableMixin,\n GroupableMixin,\n MessagesMixin,\n} from '@/common/mixins/input';\nimport { CHECKBOX_INPUT_VALIDATION_CLASSES } from './checkbox_constants';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * Checkboxes are control elements that allow the user to make a selection.They are typically used in a\n * Checkbox Group which allows the user to make one or more selections from a list of options.\n * @see https://dialtone.dialpad.com/components/checkbox.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCheckbox',\n\n components: { DtValidationMessages },\n\n mixins: [InputMixin, CheckableMixin, GroupableMixin, MessagesMixin],\n\n inheritAttrs: false,\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {Boolean}\n */\n 'input',\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 computed: {\n inputValidationClass () {\n return CHECKBOX_INPUT_VALIDATION_CLASSES[this.internalValidationState];\n },\n\n checkboxGroupValueChecked () {\n return this.groupContext?.selectedValues?.includes(this.value) ?? false;\n },\n\n hasLabel () {\n return !!(this.$slots.default || this.label);\n },\n\n hasDescription () {\n return !!(this.$slots.description || this.description);\n },\n\n hasLabelOrDescription () {\n return this.hasLabel || this.hasDescription;\n },\n\n inputListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through\n * onto the input element which will result in the handler being called twice\n * (once on the input element and once by the emitted input event by the change listener).\n */\n input: () => {},\n focusin: event => this.$emit('focusin', event),\n focusout: event => this.$emit('focusout', event),\n change: event => this.emitValue(event.target),\n };\n },\n },\n\n watch: {\n checkboxGroupValueChecked: {\n immediate: true,\n handler (newCheckboxGroupValueChecked) {\n if (this.hasGroup) {\n // update internal value when the checkbox group value changes\n this.internalChecked = newCheckboxGroupValueChecked;\n }\n },\n },\n },\n\n mounted () {\n this.runValidations();\n },\n\n methods: {\n emitValue (target) {\n let { value, checked } = target;\n // Expected: Indeterminate -> unchecked. We need to manually set DOM property `checked` to false\n // and update this.internalIndeterminate.\n if (this.internalIndeterminate) {\n checked = false;\n this.internalIndeterminate = false;\n target.checked = false;\n }\n // update provided value if injected\n this.setGroupValue(value, checked);\n\n // emit the state of the checkbox\n this.$emit('input', checked);\n },\n\n runValidations () {\n this.validateInputLabels(this.hasLabel, this.$attrs['aria-label']);\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_createElementVNode","_normalizeClass","_mergeProps","_toHandlers","_openBlock","_renderSlot","_createTextVNode","_toDisplayString","_createCommentVNode","_createVNode"],"mappings":"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"}
@@ -3,6 +3,7 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
3
3
  const vue = require("vue");
4
4
  const input_group = require("../input_group/input_group.vue.cjs");
5
5
  const _sfc_main = {
6
+ compatConfig: { MODE: 3 },
6
7
  name: "DtCheckboxGroup",
7
8
  extends: input_group.default,
8
9
  model: {
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox_group.vue.cjs","sources":["../../../components/checkbox_group/checkbox_group.vue"],"sourcesContent":["<script>\nimport { warn } from 'vue';\nimport { DtInputGroup } from '../input_group';\n\n/**\n * Checkbox Groups are convenience components for a grouping of related Checkboxes.\n * While each Checkbox within the group is independent, the `v-model` on the group provides\n * a convenient interface for determining which Checkboxes within the group are checked.\n * @see https://dialtone.dialpad.com/components/checkbox_group.html\n */\nexport default {\n name: 'DtCheckboxGroup',\n\n extends: DtInputGroup,\n\n model: {\n prop: 'selectedValues',\n },\n\n props: {\n /**\n * Not supported by this component, please use selectedValues\n */\n value: {\n type: [],\n default: null,\n validator: value => {\n if (!value) {\n return true;\n }\n\n warn(\n 'Component uses selectedValues to initialize the model, value is not supported by this component',\n this,\n );\n\n return false;\n },\n },\n\n /**\n * A provided list of selected values(s) for the checkbox group\n * @model selectedValues\n */\n selectedValues: {\n type: Array,\n default () {\n return [];\n },\n },\n\n /**\n * A data qa tag for the radio group\n */\n dataQaGroup: {\n type: String,\n default: 'checkbox-group',\n },\n\n /**\n * A data qa tag for the radio group legend\n */\n dataQaGroupLegend: {\n type: String,\n default: 'checkbox-group-legend',\n },\n\n /**\n * A data qa tag for the radio group messages\n */\n dataQaGroupMessages: {\n type: String,\n default: 'checkbox-group-messages',\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {Array}\n */\n 'input',\n ],\n\n data () {\n return {\n internalValue: this.selectedValues,\n };\n },\n\n watch: {\n selectedValues (newSelectedValues) {\n this.internalValue = newSelectedValues;\n },\n\n /*\n * watching value to support 2 way binding for slotted checkboxes.\n * need this to pass value to slotted checkboxes if modified outside\n * checkbox group.\n */\n internalValue: {\n immediate: true,\n handler (newInternalValue) {\n this.provideObj.selectedValues = newInternalValue;\n },\n },\n },\n\n methods: {\n /*\n * provided value to support 2 way binding for slotted checkboxes.\n * slotted checkbox will change this value and need to emit new value up.\n */\n setGroupValue (value, checked) {\n if (!checked) {\n this.internalValue = this.internalValue.filter(checkedValue => checkedValue !== value);\n } else if (!this.internalValue.includes(value)) {\n this.internalValue.push(value);\n }\n\n this.$emit('input', this.internalValue);\n },\n\n getMessageKey (type, index) {\n return `checkbox-group-message-${type}-${index}-${this.id}`;\n },\n },\n};\n</script>\n"],"names":["DtInputGroup","warn","this"],"mappings":";;;;AAUA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,SAASA,YAAY;AAAA,EAErB,OAAO;AAAA,IACL,MAAM;AAAA,EACP;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,OAAO;AAAA,MACL,MAAM,CAAE;AAAA,MACR,SAAS;AAAA,MACT,WAAW,WAAS;AAClB,YAAI,CAAC,OAAO;AACV,iBAAO;AAAA,QACT;AAEAC,YAAI;AAAA,UACF;AAAA,UACAC;AAAAA;AAGF,eAAO;AAAA,MACR;AAAA,IACF;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,gBAAgB;AAAA,MACd,MAAM;AAAA,MACN,UAAW;AACT,eAAO;MACR;AAAA,IACF;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,qBAAqB;AAAA,MACnB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOL;AAAA,EACD;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL,eAAe,KAAK;AAAA;EAEvB;AAAA,EAED,OAAO;AAAA,IACL,eAAgB,mBAAmB;AACjC,WAAK,gBAAgB;AAAA,IACtB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOD,eAAe;AAAA,MACb,WAAW;AAAA,MACX,QAAS,kBAAkB;AACzB,aAAK,WAAW,iBAAiB;AAAA,MAClC;AAAA,IACF;AAAA,EACF;AAAA,EAED,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA,IAKP,cAAe,OAAO,SAAS;AAC7B,UAAI,CAAC,SAAS;AACZ,aAAK,gBAAgB,KAAK,cAAc,OAAO,kBAAgB,iBAAiB,KAAK;AAAA,MACvF,WAAW,CAAC,KAAK,cAAc,SAAS,KAAK,GAAG;AAC9C,aAAK,cAAc,KAAK,KAAK;AAAA,MAC/B;AAEA,WAAK,MAAM,SAAS,KAAK,aAAa;AAAA,IACvC;AAAA,IAED,cAAe,MAAM,OAAO;AAC1B,aAAO,0BAA0B,IAAI,IAAI,KAAK,IAAI,KAAK,EAAE;AAAA,IAC1D;AAAA,EACF;AACH;;;"}
1
+ {"version":3,"file":"checkbox_group.vue.cjs","sources":["../../../components/checkbox_group/checkbox_group.vue"],"sourcesContent":["<script>\nimport { warn } from 'vue';\nimport { DtInputGroup } from '../input_group';\n\n/**\n * Checkbox Groups are convenience components for a grouping of related Checkboxes.\n * While each Checkbox within the group is independent, the `v-model` on the group provides\n * a convenient interface for determining which Checkboxes within the group are checked.\n * @see https://dialtone.dialpad.com/components/checkbox_group.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCheckboxGroup',\n\n extends: DtInputGroup,\n\n model: {\n prop: 'selectedValues',\n },\n\n props: {\n /**\n * Not supported by this component, please use selectedValues\n */\n value: {\n type: [],\n default: null,\n validator: value => {\n if (!value) {\n return true;\n }\n\n warn(\n 'Component uses selectedValues to initialize the model, value is not supported by this component',\n this,\n );\n\n return false;\n },\n },\n\n /**\n * A provided list of selected values(s) for the checkbox group\n * @model selectedValues\n */\n selectedValues: {\n type: Array,\n default () {\n return [];\n },\n },\n\n /**\n * A data qa tag for the radio group\n */\n dataQaGroup: {\n type: String,\n default: 'checkbox-group',\n },\n\n /**\n * A data qa tag for the radio group legend\n */\n dataQaGroupLegend: {\n type: String,\n default: 'checkbox-group-legend',\n },\n\n /**\n * A data qa tag for the radio group messages\n */\n dataQaGroupMessages: {\n type: String,\n default: 'checkbox-group-messages',\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {Array}\n */\n 'input',\n ],\n\n data () {\n return {\n internalValue: this.selectedValues,\n };\n },\n\n watch: {\n selectedValues (newSelectedValues) {\n this.internalValue = newSelectedValues;\n },\n\n /*\n * watching value to support 2 way binding for slotted checkboxes.\n * need this to pass value to slotted checkboxes if modified outside\n * checkbox group.\n */\n internalValue: {\n immediate: true,\n handler (newInternalValue) {\n this.provideObj.selectedValues = newInternalValue;\n },\n },\n },\n\n methods: {\n /*\n * provided value to support 2 way binding for slotted checkboxes.\n * slotted checkbox will change this value and need to emit new value up.\n */\n setGroupValue (value, checked) {\n if (!checked) {\n this.internalValue = this.internalValue.filter(checkedValue => checkedValue !== value);\n } else if (!this.internalValue.includes(value)) {\n this.internalValue.push(value);\n }\n\n this.$emit('input', this.internalValue);\n },\n\n getMessageKey (type, index) {\n return `checkbox-group-message-${type}-${index}-${this.id}`;\n },\n },\n};\n</script>\n"],"names":["DtInputGroup","warn","this"],"mappings":";;;;AAUA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EAEN,SAASA,YAAY;AAAA,EAErB,OAAO;AAAA,IACL,MAAM;AAAA,EACP;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,OAAO;AAAA,MACL,MAAM,CAAE;AAAA,MACR,SAAS;AAAA,MACT,WAAW,WAAS;AAClB,YAAI,CAAC,OAAO;AACV,iBAAO;AAAA,QACT;AAEAC,YAAI;AAAA,UACF;AAAA,UACAC;AAAAA;AAGF,eAAO;AAAA,MACR;AAAA,IACF;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,gBAAgB;AAAA,MACd,MAAM;AAAA,MACN,UAAW;AACT,eAAO;MACR;AAAA,IACF;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,qBAAqB;AAAA,MACnB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOL;AAAA,EACD;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL,eAAe,KAAK;AAAA;EAEvB;AAAA,EAED,OAAO;AAAA,IACL,eAAgB,mBAAmB;AACjC,WAAK,gBAAgB;AAAA,IACtB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOD,eAAe;AAAA,MACb,WAAW;AAAA,MACX,QAAS,kBAAkB;AACzB,aAAK,WAAW,iBAAiB;AAAA,MAClC;AAAA,IACF;AAAA,EACF;AAAA,EAED,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA,IAKP,cAAe,OAAO,SAAS;AAC7B,UAAI,CAAC,SAAS;AACZ,aAAK,gBAAgB,KAAK,cAAc,OAAO,kBAAgB,iBAAiB,KAAK;AAAA,MACvF,WAAW,CAAC,KAAK,cAAc,SAAS,KAAK,GAAG;AAC9C,aAAK,cAAc,KAAK,KAAK;AAAA,MAC/B;AAEA,WAAK,MAAM,SAAS,KAAK,aAAa;AAAA,IACvC;AAAA,IAED,cAAe,MAAM,OAAO;AAC1B,aAAO,0BAA0B,IAAI,IAAI,KAAK,IAAI,KAAK,EAAE;AAAA,IAC1D;AAAA,EACF;AACH;;;"}
@@ -1,6 +1,7 @@
1
1
  import { warn } from "vue";
2
2
  import DtInputGroup from "../input_group/input_group.vue.js";
3
3
  const _sfc_main = {
4
+ compatConfig: { MODE: 3 },
4
5
  name: "DtCheckboxGroup",
5
6
  extends: DtInputGroup,
6
7
  model: {
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox_group.vue.js","sources":["../../../components/checkbox_group/checkbox_group.vue"],"sourcesContent":["<script>\nimport { warn } from 'vue';\nimport { DtInputGroup } from '../input_group';\n\n/**\n * Checkbox Groups are convenience components for a grouping of related Checkboxes.\n * While each Checkbox within the group is independent, the `v-model` on the group provides\n * a convenient interface for determining which Checkboxes within the group are checked.\n * @see https://dialtone.dialpad.com/components/checkbox_group.html\n */\nexport default {\n name: 'DtCheckboxGroup',\n\n extends: DtInputGroup,\n\n model: {\n prop: 'selectedValues',\n },\n\n props: {\n /**\n * Not supported by this component, please use selectedValues\n */\n value: {\n type: [],\n default: null,\n validator: value => {\n if (!value) {\n return true;\n }\n\n warn(\n 'Component uses selectedValues to initialize the model, value is not supported by this component',\n this,\n );\n\n return false;\n },\n },\n\n /**\n * A provided list of selected values(s) for the checkbox group\n * @model selectedValues\n */\n selectedValues: {\n type: Array,\n default () {\n return [];\n },\n },\n\n /**\n * A data qa tag for the radio group\n */\n dataQaGroup: {\n type: String,\n default: 'checkbox-group',\n },\n\n /**\n * A data qa tag for the radio group legend\n */\n dataQaGroupLegend: {\n type: String,\n default: 'checkbox-group-legend',\n },\n\n /**\n * A data qa tag for the radio group messages\n */\n dataQaGroupMessages: {\n type: String,\n default: 'checkbox-group-messages',\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {Array}\n */\n 'input',\n ],\n\n data () {\n return {\n internalValue: this.selectedValues,\n };\n },\n\n watch: {\n selectedValues (newSelectedValues) {\n this.internalValue = newSelectedValues;\n },\n\n /*\n * watching value to support 2 way binding for slotted checkboxes.\n * need this to pass value to slotted checkboxes if modified outside\n * checkbox group.\n */\n internalValue: {\n immediate: true,\n handler (newInternalValue) {\n this.provideObj.selectedValues = newInternalValue;\n },\n },\n },\n\n methods: {\n /*\n * provided value to support 2 way binding for slotted checkboxes.\n * slotted checkbox will change this value and need to emit new value up.\n */\n setGroupValue (value, checked) {\n if (!checked) {\n this.internalValue = this.internalValue.filter(checkedValue => checkedValue !== value);\n } else if (!this.internalValue.includes(value)) {\n this.internalValue.push(value);\n }\n\n this.$emit('input', this.internalValue);\n },\n\n getMessageKey (type, index) {\n return `checkbox-group-message-${type}-${index}-${this.id}`;\n },\n },\n};\n</script>\n"],"names":["this"],"mappings":";;AAUA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,SAAS;AAAA,EAET,OAAO;AAAA,IACL,MAAM;AAAA,EACP;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,OAAO;AAAA,MACL,MAAM,CAAE;AAAA,MACR,SAAS;AAAA,MACT,WAAW,WAAS;AAClB,YAAI,CAAC,OAAO;AACV,iBAAO;AAAA,QACT;AAEA;AAAA,UACE;AAAA,UACAA;AAAAA;AAGF,eAAO;AAAA,MACR;AAAA,IACF;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,gBAAgB;AAAA,MACd,MAAM;AAAA,MACN,UAAW;AACT,eAAO;MACR;AAAA,IACF;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,qBAAqB;AAAA,MACnB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOL;AAAA,EACD;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL,eAAe,KAAK;AAAA;EAEvB;AAAA,EAED,OAAO;AAAA,IACL,eAAgB,mBAAmB;AACjC,WAAK,gBAAgB;AAAA,IACtB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOD,eAAe;AAAA,MACb,WAAW;AAAA,MACX,QAAS,kBAAkB;AACzB,aAAK,WAAW,iBAAiB;AAAA,MAClC;AAAA,IACF;AAAA,EACF;AAAA,EAED,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA,IAKP,cAAe,OAAO,SAAS;AAC7B,UAAI,CAAC,SAAS;AACZ,aAAK,gBAAgB,KAAK,cAAc,OAAO,kBAAgB,iBAAiB,KAAK;AAAA,MACvF,WAAW,CAAC,KAAK,cAAc,SAAS,KAAK,GAAG;AAC9C,aAAK,cAAc,KAAK,KAAK;AAAA,MAC/B;AAEA,WAAK,MAAM,SAAS,KAAK,aAAa;AAAA,IACvC;AAAA,IAED,cAAe,MAAM,OAAO;AAC1B,aAAO,0BAA0B,IAAI,IAAI,KAAK,IAAI,KAAK,EAAE;AAAA,IAC1D;AAAA,EACF;AACH;;"}
1
+ {"version":3,"file":"checkbox_group.vue.js","sources":["../../../components/checkbox_group/checkbox_group.vue"],"sourcesContent":["<script>\nimport { warn } from 'vue';\nimport { DtInputGroup } from '../input_group';\n\n/**\n * Checkbox Groups are convenience components for a grouping of related Checkboxes.\n * While each Checkbox within the group is independent, the `v-model` on the group provides\n * a convenient interface for determining which Checkboxes within the group are checked.\n * @see https://dialtone.dialpad.com/components/checkbox_group.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCheckboxGroup',\n\n extends: DtInputGroup,\n\n model: {\n prop: 'selectedValues',\n },\n\n props: {\n /**\n * Not supported by this component, please use selectedValues\n */\n value: {\n type: [],\n default: null,\n validator: value => {\n if (!value) {\n return true;\n }\n\n warn(\n 'Component uses selectedValues to initialize the model, value is not supported by this component',\n this,\n );\n\n return false;\n },\n },\n\n /**\n * A provided list of selected values(s) for the checkbox group\n * @model selectedValues\n */\n selectedValues: {\n type: Array,\n default () {\n return [];\n },\n },\n\n /**\n * A data qa tag for the radio group\n */\n dataQaGroup: {\n type: String,\n default: 'checkbox-group',\n },\n\n /**\n * A data qa tag for the radio group legend\n */\n dataQaGroupLegend: {\n type: String,\n default: 'checkbox-group-legend',\n },\n\n /**\n * A data qa tag for the radio group messages\n */\n dataQaGroupMessages: {\n type: String,\n default: 'checkbox-group-messages',\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {Array}\n */\n 'input',\n ],\n\n data () {\n return {\n internalValue: this.selectedValues,\n };\n },\n\n watch: {\n selectedValues (newSelectedValues) {\n this.internalValue = newSelectedValues;\n },\n\n /*\n * watching value to support 2 way binding for slotted checkboxes.\n * need this to pass value to slotted checkboxes if modified outside\n * checkbox group.\n */\n internalValue: {\n immediate: true,\n handler (newInternalValue) {\n this.provideObj.selectedValues = newInternalValue;\n },\n },\n },\n\n methods: {\n /*\n * provided value to support 2 way binding for slotted checkboxes.\n * slotted checkbox will change this value and need to emit new value up.\n */\n setGroupValue (value, checked) {\n if (!checked) {\n this.internalValue = this.internalValue.filter(checkedValue => checkedValue !== value);\n } else if (!this.internalValue.includes(value)) {\n this.internalValue.push(value);\n }\n\n this.$emit('input', this.internalValue);\n },\n\n getMessageKey (type, index) {\n return `checkbox-group-message-${type}-${index}-${this.id}`;\n },\n },\n};\n</script>\n"],"names":["this"],"mappings":";;AAUA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EAEN,SAAS;AAAA,EAET,OAAO;AAAA,IACL,MAAM;AAAA,EACP;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,OAAO;AAAA,MACL,MAAM,CAAE;AAAA,MACR,SAAS;AAAA,MACT,WAAW,WAAS;AAClB,YAAI,CAAC,OAAO;AACV,iBAAO;AAAA,QACT;AAEA;AAAA,UACE;AAAA,UACAA;AAAAA;AAGF,eAAO;AAAA,MACR;AAAA,IACF;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,gBAAgB;AAAA,MACd,MAAM;AAAA,MACN,UAAW;AACT,eAAO;MACR;AAAA,IACF;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,qBAAqB;AAAA,MACnB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOL;AAAA,EACD;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL,eAAe,KAAK;AAAA;EAEvB;AAAA,EAED,OAAO;AAAA,IACL,eAAgB,mBAAmB;AACjC,WAAK,gBAAgB;AAAA,IACtB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOD,eAAe;AAAA,MACb,WAAW;AAAA,MACX,QAAS,kBAAkB;AACzB,aAAK,WAAW,iBAAiB;AAAA,MAClC;AAAA,IACF;AAAA,EACF;AAAA,EAED,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA,IAKP,cAAe,OAAO,SAAS;AAC7B,UAAI,CAAC,SAAS;AACZ,aAAK,gBAAgB,KAAK,cAAc,OAAO,kBAAgB,iBAAiB,KAAK;AAAA,MACvF,WAAW,CAAC,KAAK,cAAc,SAAS,KAAK,GAAG;AAC9C,aAAK,cAAc,KAAK,KAAK;AAAA,MAC/B;AAEA,WAAK,MAAM,SAAS,KAAK,aAAa;AAAA,IACvC;AAAA,IAED,cAAe,MAAM,OAAO;AAC1B,aAAO,0BAA0B,IAAI,IAAI,KAAK,IAAI,KAAK,EAAE;AAAA,IAC1D;AAAA,EACF;AACH;;"}
@@ -7,6 +7,7 @@ const vue = require("vue");
7
7
  const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helper.cjs");
8
8
  const button = require("../button/button.vue.cjs");
9
9
  const _sfc_main = {
10
+ compatConfig: { MODE: 3 },
10
11
  name: "DtChip",
11
12
  components: {
12
13
  DtButton: button.default,
@@ -1 +1 @@
1
- {"version":3,"file":"chip.vue.cjs","sources":["../../../components/chip/chip.vue"],"sourcesContent":["<template>\n <span class=\"d-chip\">\n <component\n :is=\"interactive ? 'button' : 'span'\"\n :id=\"id\"\n :type=\"interactive && 'button'\"\n :class=\"chipClasses()\"\n data-qa=\"dt-chip\"\n :aria-labelledby=\"ariaLabel ? undefined : `${id}-content`\"\n :aria-label=\"ariaLabel\"\n v-on=\"chipListeners\"\n >\n <span\n v-if=\"hasSlotContent($slots.icon)\"\n data-qa=\"dt-chip-icon\"\n class=\"d-chip__icon\"\n >\n <!-- @slot slot for Chip icon -->\n <slot name=\"icon\" />\n </span>\n <span\n v-else-if=\"hasSlotContent($slots.avatar)\"\n data-qa=\"dt-chip-avatar\"\n >\n <!-- @slot slot for Chip avatar -->\n <slot name=\"avatar\" />\n </span>\n <span\n v-if=\"hasSlotContent($slots.default)\"\n :id=\"`${id}-content`\"\n data-qa=\"dt-chip-label\"\n :class=\"['d-chip__text', contentClass]\"\n >\n <!-- @slot slot for Content within chip -->\n <slot />\n </span>\n </component>\n <dt-button\n v-if=\"!hideClose\"\n v-bind=\"closeButtonProps\"\n :class=\"chipCloseButtonClasses()\"\n data-qa=\"dt-chip-close\"\n :aria-label=\"closeButtonProps.ariaLabel\"\n @click=\"$emit('close')\"\n >\n <template #icon>\n <dt-icon-close\n :size=\"closeButtonIconSize\"\n />\n </template>\n </dt-button>\n </span>\n</template>\n\n<script>\nimport { DtButton } from '@/components/button';\nimport { DtIconClose } from '@dialpad/dialtone-icons/vue3';\nimport {\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS,\n CHIP_SIZE_MODIFIERS,\n CHIP_ICON_SIZES,\n} from './chip_constants';\nimport { getUniqueString, hasSlotContent } from '@/common/utils';\n\n/**\n * A chip is a compact UI element that provides brief, descriptive information about an element.\n * It is terse, ideally one word. It is important a button is identifiable, consistent, and\n * communicates its actions clearly, and is appropriately sized to its action.\n * @see https://dialtone.dialpad.com/components/chip.html\n */\nexport default {\n name: 'DtChip',\n\n components: {\n DtButton,\n DtIconClose,\n },\n\n props: {\n /**\n * A set of props to be passed into the modal's close button. Requires an 'ariaLabel' property.\n */\n closeButtonProps: {\n type: Object,\n default: function () { return { ariaLabel: 'close' }; },\n validator: (props) => {\n return !!props.ariaLabel;\n },\n },\n\n /**\n * Hides the close button on the chip\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The size of the chip.\n * @values xs, sm, md\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(CHIP_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * The interactivity of the chip.\n * Makes chip clickable, apply hover/focus/active style, emit keyboard events etc.\n * @values true, false\n */\n interactive: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Id to use for the dialog's aria-labelledby.\n */\n id: {\n type: String,\n default: function () { return getUniqueString(); },\n },\n\n /**\n * Descriptive label for the chip content.\n * If this prop is unset the content in the default slot will be used as an aria-label.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the chip element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the span element.\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n emits: [\n /**\n * Native chip click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Close button click event\n *\n * @event close\n */\n 'close',\n\n /**\n * Native chip key up event\n *\n * @event keyup\n * @type {KeyboardEvent}\n */\n 'keyup',\n ],\n\n data () {\n return {\n isActive: false,\n hasSlotContent,\n };\n },\n\n computed: {\n chipListeners () {\n return {\n click: event => {\n if (this.interactive) this.$emit('click', event);\n },\n\n keyup: event => {\n if (event.code?.toLowerCase() === 'delete') {\n this.onClose();\n } else {\n this.$emit('keyup', event);\n }\n },\n };\n },\n\n closeButtonIconSize () {\n return CHIP_ICON_SIZES[this.size];\n },\n },\n\n methods: {\n chipClasses () {\n return [\n this.$attrs['grouped-chip'] ? 'd-chip' : 'd-chip__label',\n CHIP_SIZE_MODIFIERS[this.size],\n this.labelClass,\n ];\n },\n\n chipCloseButtonClasses () {\n return [\n 'd-chip__close',\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS[this.size],\n ];\n },\n\n onClose () {\n if (!this.hideClose) {\n this.$emit('close');\n }\n },\n },\n};\n</script>\n"],"names":["DtButton","DtIconClose","CHIP_SIZE_MODIFIERS","getUniqueString","hasSlotContent","CHIP_ICON_SIZES","CHIP_CLOSE_BUTTON_SIZE_MODIFIERS","_openBlock","_createElementBlock","_createBlock","_resolveDynamicComponent","_mergeProps","_toHandlers","_withCtx","_renderSlot","_createCommentVNode","_normalizeClass","_createVNode"],"mappings":"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"}
1
+ {"version":3,"file":"chip.vue.cjs","sources":["../../../components/chip/chip.vue"],"sourcesContent":["<template>\n <span class=\"d-chip\">\n <component\n :is=\"interactive ? 'button' : 'span'\"\n :id=\"id\"\n :type=\"interactive && 'button'\"\n :class=\"chipClasses()\"\n data-qa=\"dt-chip\"\n :aria-labelledby=\"ariaLabel ? undefined : `${id}-content`\"\n :aria-label=\"ariaLabel\"\n v-on=\"chipListeners\"\n >\n <span\n v-if=\"hasSlotContent($slots.icon)\"\n data-qa=\"dt-chip-icon\"\n class=\"d-chip__icon\"\n >\n <!-- @slot slot for Chip icon -->\n <slot name=\"icon\" />\n </span>\n <span\n v-else-if=\"hasSlotContent($slots.avatar)\"\n data-qa=\"dt-chip-avatar\"\n >\n <!-- @slot slot for Chip avatar -->\n <slot name=\"avatar\" />\n </span>\n <span\n v-if=\"hasSlotContent($slots.default)\"\n :id=\"`${id}-content`\"\n data-qa=\"dt-chip-label\"\n :class=\"['d-chip__text', contentClass]\"\n >\n <!-- @slot slot for Content within chip -->\n <slot />\n </span>\n </component>\n <dt-button\n v-if=\"!hideClose\"\n v-bind=\"closeButtonProps\"\n :class=\"chipCloseButtonClasses()\"\n data-qa=\"dt-chip-close\"\n :aria-label=\"closeButtonProps.ariaLabel\"\n @click=\"$emit('close')\"\n >\n <template #icon>\n <dt-icon-close\n :size=\"closeButtonIconSize\"\n />\n </template>\n </dt-button>\n </span>\n</template>\n\n<script>\nimport { DtButton } from '@/components/button';\nimport { DtIconClose } from '@dialpad/dialtone-icons/vue3';\nimport {\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS,\n CHIP_SIZE_MODIFIERS,\n CHIP_ICON_SIZES,\n} from './chip_constants';\nimport { getUniqueString, hasSlotContent } from '@/common/utils';\n\n/**\n * A chip is a compact UI element that provides brief, descriptive information about an element.\n * It is terse, ideally one word. It is important a button is identifiable, consistent, and\n * communicates its actions clearly, and is appropriately sized to its action.\n * @see https://dialtone.dialpad.com/components/chip.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtChip',\n\n components: {\n DtButton,\n DtIconClose,\n },\n\n props: {\n /**\n * A set of props to be passed into the modal's close button. Requires an 'ariaLabel' property.\n */\n closeButtonProps: {\n type: Object,\n default: function () { return { ariaLabel: 'close' }; },\n validator: (props) => {\n return !!props.ariaLabel;\n },\n },\n\n /**\n * Hides the close button on the chip\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The size of the chip.\n * @values xs, sm, md\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(CHIP_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * The interactivity of the chip.\n * Makes chip clickable, apply hover/focus/active style, emit keyboard events etc.\n * @values true, false\n */\n interactive: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Id to use for the dialog's aria-labelledby.\n */\n id: {\n type: String,\n default: function () { return getUniqueString(); },\n },\n\n /**\n * Descriptive label for the chip content.\n * If this prop is unset the content in the default slot will be used as an aria-label.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the chip element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the span element.\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n emits: [\n /**\n * Native chip click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Close button click event\n *\n * @event close\n */\n 'close',\n\n /**\n * Native chip key up event\n *\n * @event keyup\n * @type {KeyboardEvent}\n */\n 'keyup',\n ],\n\n data () {\n return {\n isActive: false,\n hasSlotContent,\n };\n },\n\n computed: {\n chipListeners () {\n return {\n click: event => {\n if (this.interactive) this.$emit('click', event);\n },\n\n keyup: event => {\n if (event.code?.toLowerCase() === 'delete') {\n this.onClose();\n } else {\n this.$emit('keyup', event);\n }\n },\n };\n },\n\n closeButtonIconSize () {\n return CHIP_ICON_SIZES[this.size];\n },\n },\n\n methods: {\n chipClasses () {\n return [\n this.$attrs['grouped-chip'] ? 'd-chip' : 'd-chip__label',\n CHIP_SIZE_MODIFIERS[this.size],\n this.labelClass,\n ];\n },\n\n chipCloseButtonClasses () {\n return [\n 'd-chip__close',\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS[this.size],\n ];\n },\n\n onClose () {\n if (!this.hideClose) {\n this.$emit('close');\n }\n },\n },\n};\n</script>\n"],"names":["DtButton","DtIconClose","CHIP_SIZE_MODIFIERS","getUniqueString","hasSlotContent","CHIP_ICON_SIZES","CHIP_CLOSE_BUTTON_SIZE_MODIFIERS","_openBlock","_createElementBlock","_createBlock","_resolveDynamicComponent","_mergeProps","_toHandlers","_withCtx","_renderSlot","_createCommentVNode","_normalizeClass","_createVNode"],"mappings":"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"}
@@ -5,6 +5,7 @@ import { resolveComponent, openBlock, createElementBlock, createBlock, resolveDy
5
5
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
6
6
  import DtButton from "../button/button.vue.js";
7
7
  const _sfc_main = {
8
+ compatConfig: { MODE: 3 },
8
9
  name: "DtChip",
9
10
  components: {
10
11
  DtButton,
@@ -1 +1 @@
1
- {"version":3,"file":"chip.vue.js","sources":["../../../components/chip/chip.vue"],"sourcesContent":["<template>\n <span class=\"d-chip\">\n <component\n :is=\"interactive ? 'button' : 'span'\"\n :id=\"id\"\n :type=\"interactive && 'button'\"\n :class=\"chipClasses()\"\n data-qa=\"dt-chip\"\n :aria-labelledby=\"ariaLabel ? undefined : `${id}-content`\"\n :aria-label=\"ariaLabel\"\n v-on=\"chipListeners\"\n >\n <span\n v-if=\"hasSlotContent($slots.icon)\"\n data-qa=\"dt-chip-icon\"\n class=\"d-chip__icon\"\n >\n <!-- @slot slot for Chip icon -->\n <slot name=\"icon\" />\n </span>\n <span\n v-else-if=\"hasSlotContent($slots.avatar)\"\n data-qa=\"dt-chip-avatar\"\n >\n <!-- @slot slot for Chip avatar -->\n <slot name=\"avatar\" />\n </span>\n <span\n v-if=\"hasSlotContent($slots.default)\"\n :id=\"`${id}-content`\"\n data-qa=\"dt-chip-label\"\n :class=\"['d-chip__text', contentClass]\"\n >\n <!-- @slot slot for Content within chip -->\n <slot />\n </span>\n </component>\n <dt-button\n v-if=\"!hideClose\"\n v-bind=\"closeButtonProps\"\n :class=\"chipCloseButtonClasses()\"\n data-qa=\"dt-chip-close\"\n :aria-label=\"closeButtonProps.ariaLabel\"\n @click=\"$emit('close')\"\n >\n <template #icon>\n <dt-icon-close\n :size=\"closeButtonIconSize\"\n />\n </template>\n </dt-button>\n </span>\n</template>\n\n<script>\nimport { DtButton } from '@/components/button';\nimport { DtIconClose } from '@dialpad/dialtone-icons/vue3';\nimport {\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS,\n CHIP_SIZE_MODIFIERS,\n CHIP_ICON_SIZES,\n} from './chip_constants';\nimport { getUniqueString, hasSlotContent } from '@/common/utils';\n\n/**\n * A chip is a compact UI element that provides brief, descriptive information about an element.\n * It is terse, ideally one word. It is important a button is identifiable, consistent, and\n * communicates its actions clearly, and is appropriately sized to its action.\n * @see https://dialtone.dialpad.com/components/chip.html\n */\nexport default {\n name: 'DtChip',\n\n components: {\n DtButton,\n DtIconClose,\n },\n\n props: {\n /**\n * A set of props to be passed into the modal's close button. Requires an 'ariaLabel' property.\n */\n closeButtonProps: {\n type: Object,\n default: function () { return { ariaLabel: 'close' }; },\n validator: (props) => {\n return !!props.ariaLabel;\n },\n },\n\n /**\n * Hides the close button on the chip\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The size of the chip.\n * @values xs, sm, md\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(CHIP_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * The interactivity of the chip.\n * Makes chip clickable, apply hover/focus/active style, emit keyboard events etc.\n * @values true, false\n */\n interactive: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Id to use for the dialog's aria-labelledby.\n */\n id: {\n type: String,\n default: function () { return getUniqueString(); },\n },\n\n /**\n * Descriptive label for the chip content.\n * If this prop is unset the content in the default slot will be used as an aria-label.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the chip element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the span element.\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n emits: [\n /**\n * Native chip click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Close button click event\n *\n * @event close\n */\n 'close',\n\n /**\n * Native chip key up event\n *\n * @event keyup\n * @type {KeyboardEvent}\n */\n 'keyup',\n ],\n\n data () {\n return {\n isActive: false,\n hasSlotContent,\n };\n },\n\n computed: {\n chipListeners () {\n return {\n click: event => {\n if (this.interactive) this.$emit('click', event);\n },\n\n keyup: event => {\n if (event.code?.toLowerCase() === 'delete') {\n this.onClose();\n } else {\n this.$emit('keyup', event);\n }\n },\n };\n },\n\n closeButtonIconSize () {\n return CHIP_ICON_SIZES[this.size];\n },\n },\n\n methods: {\n chipClasses () {\n return [\n this.$attrs['grouped-chip'] ? 'd-chip' : 'd-chip__label',\n CHIP_SIZE_MODIFIERS[this.size],\n this.labelClass,\n ];\n },\n\n chipCloseButtonClasses () {\n return [\n 'd-chip__close',\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS[this.size],\n ];\n },\n\n onClose () {\n if (!this.hideClose) {\n this.$emit('close');\n }\n },\n },\n};\n</script>\n"],"names":["_openBlock","_createElementBlock","_createBlock","_resolveDynamicComponent","_mergeProps","_toHandlers","_withCtx","_renderSlot","_createCommentVNode","_normalizeClass","_createVNode"],"mappings":"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"}
1
+ {"version":3,"file":"chip.vue.js","sources":["../../../components/chip/chip.vue"],"sourcesContent":["<template>\n <span class=\"d-chip\">\n <component\n :is=\"interactive ? 'button' : 'span'\"\n :id=\"id\"\n :type=\"interactive && 'button'\"\n :class=\"chipClasses()\"\n data-qa=\"dt-chip\"\n :aria-labelledby=\"ariaLabel ? undefined : `${id}-content`\"\n :aria-label=\"ariaLabel\"\n v-on=\"chipListeners\"\n >\n <span\n v-if=\"hasSlotContent($slots.icon)\"\n data-qa=\"dt-chip-icon\"\n class=\"d-chip__icon\"\n >\n <!-- @slot slot for Chip icon -->\n <slot name=\"icon\" />\n </span>\n <span\n v-else-if=\"hasSlotContent($slots.avatar)\"\n data-qa=\"dt-chip-avatar\"\n >\n <!-- @slot slot for Chip avatar -->\n <slot name=\"avatar\" />\n </span>\n <span\n v-if=\"hasSlotContent($slots.default)\"\n :id=\"`${id}-content`\"\n data-qa=\"dt-chip-label\"\n :class=\"['d-chip__text', contentClass]\"\n >\n <!-- @slot slot for Content within chip -->\n <slot />\n </span>\n </component>\n <dt-button\n v-if=\"!hideClose\"\n v-bind=\"closeButtonProps\"\n :class=\"chipCloseButtonClasses()\"\n data-qa=\"dt-chip-close\"\n :aria-label=\"closeButtonProps.ariaLabel\"\n @click=\"$emit('close')\"\n >\n <template #icon>\n <dt-icon-close\n :size=\"closeButtonIconSize\"\n />\n </template>\n </dt-button>\n </span>\n</template>\n\n<script>\nimport { DtButton } from '@/components/button';\nimport { DtIconClose } from '@dialpad/dialtone-icons/vue3';\nimport {\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS,\n CHIP_SIZE_MODIFIERS,\n CHIP_ICON_SIZES,\n} from './chip_constants';\nimport { getUniqueString, hasSlotContent } from '@/common/utils';\n\n/**\n * A chip is a compact UI element that provides brief, descriptive information about an element.\n * It is terse, ideally one word. It is important a button is identifiable, consistent, and\n * communicates its actions clearly, and is appropriately sized to its action.\n * @see https://dialtone.dialpad.com/components/chip.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtChip',\n\n components: {\n DtButton,\n DtIconClose,\n },\n\n props: {\n /**\n * A set of props to be passed into the modal's close button. Requires an 'ariaLabel' property.\n */\n closeButtonProps: {\n type: Object,\n default: function () { return { ariaLabel: 'close' }; },\n validator: (props) => {\n return !!props.ariaLabel;\n },\n },\n\n /**\n * Hides the close button on the chip\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The size of the chip.\n * @values xs, sm, md\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(CHIP_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * The interactivity of the chip.\n * Makes chip clickable, apply hover/focus/active style, emit keyboard events etc.\n * @values true, false\n */\n interactive: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Id to use for the dialog's aria-labelledby.\n */\n id: {\n type: String,\n default: function () { return getUniqueString(); },\n },\n\n /**\n * Descriptive label for the chip content.\n * If this prop is unset the content in the default slot will be used as an aria-label.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the chip element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the span element.\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n emits: [\n /**\n * Native chip click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Close button click event\n *\n * @event close\n */\n 'close',\n\n /**\n * Native chip key up event\n *\n * @event keyup\n * @type {KeyboardEvent}\n */\n 'keyup',\n ],\n\n data () {\n return {\n isActive: false,\n hasSlotContent,\n };\n },\n\n computed: {\n chipListeners () {\n return {\n click: event => {\n if (this.interactive) this.$emit('click', event);\n },\n\n keyup: event => {\n if (event.code?.toLowerCase() === 'delete') {\n this.onClose();\n } else {\n this.$emit('keyup', event);\n }\n },\n };\n },\n\n closeButtonIconSize () {\n return CHIP_ICON_SIZES[this.size];\n },\n },\n\n methods: {\n chipClasses () {\n return [\n this.$attrs['grouped-chip'] ? 'd-chip' : 'd-chip__label',\n CHIP_SIZE_MODIFIERS[this.size],\n this.labelClass,\n ];\n },\n\n chipCloseButtonClasses () {\n return [\n 'd-chip__close',\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS[this.size],\n ];\n },\n\n onClose () {\n if (!this.hideClose) {\n this.$emit('close');\n }\n },\n },\n};\n</script>\n"],"names":["_openBlock","_createElementBlock","_createBlock","_resolveDynamicComponent","_mergeProps","_toHandlers","_withCtx","_renderSlot","_createCommentVNode","_normalizeClass","_createVNode"],"mappings":"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"}
@@ -3,6 +3,7 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
3
3
  const vue = require("vue");
4
4
  const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helper.cjs");
5
5
  const _sfc_main = {
6
+ compatConfig: { MODE: 3 },
6
7
  name: "DtCodeblock",
7
8
  props: {
8
9
  text: {
@@ -1 +1 @@
1
- {"version":3,"file":"codeblock.vue.cjs","sources":["../../../components/codeblock/codeblock.vue"],"sourcesContent":["<template>\n <pre>\n <code\n class=\"d-codeblock\"\n >{{ text }}</code>\n </pre>\n</template>\n\n<script>\nexport default {\n name: 'DtCodeblock',\n\n props: {\n text: {\n type: String,\n required: true,\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_createTextVNode","_createElementVNode","_toDisplayString"],"mappings":";;;;AASA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,OAAO;AAAA,IACL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,UAAU;AAAA,IACX;AAAA,EACF;AACH;AAfM,MAAA,aAAA,EAAA,OAAM,cAAa;;0BAFvBA,uBAIM,OAAA,MAAA;AAAA,IALRC,IAAAA,gBACO,MACH;AAAA,IAAAC,IAEkB,mBAAA,QAFlB,YAEkBC,IAAAA,gBAAd,OAAI,IAAA,GAAA,CAAA;AAAA,IAJZF,IAAAA,gBAIsB,MACpB;AAAA;;;;"}
1
+ {"version":3,"file":"codeblock.vue.cjs","sources":["../../../components/codeblock/codeblock.vue"],"sourcesContent":["<template>\n <pre>\n <code\n class=\"d-codeblock\"\n >{{ text }}</code>\n </pre>\n</template>\n\n<script>\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCodeblock',\n\n props: {\n text: {\n type: String,\n required: true,\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_createTextVNode","_createElementVNode","_toDisplayString"],"mappings":";;;;AASA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EAEN,OAAO;AAAA,IACL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,UAAU;AAAA,IACX;AAAA,EACF;AACH;AAhBM,MAAA,aAAA,EAAA,OAAM,cAAa;;0BAFvBA,uBAIM,OAAA,MAAA;AAAA,IALRC,IAAAA,gBACO,MACH;AAAA,IAAAC,IAEkB,mBAAA,QAFlB,YAEkBC,IAAAA,gBAAd,OAAI,IAAA,GAAA,CAAA;AAAA,IAJZF,IAAAA,gBAIsB,MACpB;AAAA;;;;"}
@@ -1,6 +1,7 @@
1
1
  import { openBlock, createElementBlock, createTextVNode, createElementVNode, toDisplayString } from "vue";
2
2
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
3
3
  const _sfc_main = {
4
+ compatConfig: { MODE: 3 },
4
5
  name: "DtCodeblock",
5
6
  props: {
6
7
  text: {
@@ -1 +1 @@
1
- {"version":3,"file":"codeblock.vue.js","sources":["../../../components/codeblock/codeblock.vue"],"sourcesContent":["<template>\n <pre>\n <code\n class=\"d-codeblock\"\n >{{ text }}</code>\n </pre>\n</template>\n\n<script>\nexport default {\n name: 'DtCodeblock',\n\n props: {\n text: {\n type: String,\n required: true,\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_createTextVNode","_createElementVNode","_toDisplayString"],"mappings":";;AASA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,OAAO;AAAA,IACL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,UAAU;AAAA,IACX;AAAA,EACF;AACH;AAfM,MAAA,aAAA,EAAA,OAAM,cAAa;;sBAFvBA,mBAIM,OAAA,MAAA;AAAA,IALRC,gBACO,MACH;AAAA,IAAAC,mBAEkB,QAFlB,YAEkBC,gBAAd,OAAI,IAAA,GAAA,CAAA;AAAA,IAJZF,gBAIsB,MACpB;AAAA;;;"}
1
+ {"version":3,"file":"codeblock.vue.js","sources":["../../../components/codeblock/codeblock.vue"],"sourcesContent":["<template>\n <pre>\n <code\n class=\"d-codeblock\"\n >{{ text }}</code>\n </pre>\n</template>\n\n<script>\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCodeblock',\n\n props: {\n text: {\n type: String,\n required: true,\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_createTextVNode","_createElementVNode","_toDisplayString"],"mappings":";;AASA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EAEN,OAAO;AAAA,IACL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,UAAU;AAAA,IACX;AAAA,EACF;AACH;AAhBM,MAAA,aAAA,EAAA,OAAM,cAAa;;sBAFvBA,mBAIM,OAAA,MAAA;AAAA,IALRC,gBACO,MACH;AAAA,IAAAC,mBAEkB,QAFlB,YAEkBC,gBAAd,OAAI,IAAA,GAAA,CAAA;AAAA,IAJZF,gBAIsB,MACpB;AAAA;;;"}
@@ -8,6 +8,7 @@ const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helpe
8
8
  const button = require("../button/button.vue.cjs");
9
9
  const lazy_show = require("../lazy_show/lazy_show.vue.cjs");
10
10
  const _sfc_main = {
11
+ compatConfig: { MODE: 3 },
11
12
  name: "DtCollapsible",
12
13
  components: {
13
14
  DtButton: button.default,
@@ -1 +1 @@
1
- {"version":3,"file":"collapsible.vue.cjs","sources":["../../../components/collapsible/collapsible.vue"],"sourcesContent":["<template>\n <component\n :is=\"elementType\"\n ref=\"collapsible\"\n v-on=\"collapsibleListeners\"\n >\n <!-- Element for capturing keypress events -->\n <div\n :id=\"!ariaLabelledBy && labelledBy\"\n ref=\"anchor\"\n :class=\"anchorClass\"\n >\n <!-- @slot Slot for the anchor element that toggles the collapsible content -->\n <slot\n name=\"anchor\"\n :attrs=\"{\n 'aria-controls': id,\n 'aria-expanded': isOpen.toString(),\n 'role': 'button',\n }\"\n >\n <dt-button\n importance=\"clear\"\n kind=\"muted\"\n :aria-controls=\"id\"\n :aria-expanded=\"`${isOpen}`\"\n :style=\"{\n 'width': maxWidth,\n }\"\n @click=\"defaultToggleOpen\"\n >\n <dt-icon-chevron-down\n v-if=\"isOpen\"\n class=\"d-collapsible__icon\"\n size=\"300\"\n />\n <dt-icon-chevron-right\n v-else\n class=\"d-collapsible__icon\"\n size=\"300\"\n />\n <span\n class=\"d-collapsible__anchor-text\"\n :title=\"anchorText\"\n >\n {{ anchorText }}\n </span>\n </dt-button>\n </slot>\n </div>\n <dt-collapsible-lazy-show\n :id=\"id\"\n ref=\"contentWrapper\"\n :aria-hidden=\"`${!isOpen}`\"\n :aria-labelledby=\"labelledBy\"\n :aria-label=\"ariaLabel\"\n :show=\"isOpen\"\n :element-type=\"contentElementType\"\n :class=\"contentClass\"\n :style=\"{\n 'max-height': maxHeight,\n 'max-width': maxWidth,\n }\"\n data-qa=\"dt-collapsible--content\"\n tabindex=\"-1\"\n appear\n v-on=\"collapsibleListeners\"\n @after-leave=\"onLeaveTransitionComplete\"\n @after-enter=\"onEnterTransitionComplete\"\n >\n <!-- @slot Slot for the collapsible element that is expanded by the anchor -->\n <slot\n name=\"content\"\n />\n </dt-collapsible-lazy-show>\n </component>\n</template>\n\n<script>\nimport { extractVueListeners, getUniqueString, hasSlotContent } from '@/common/utils';\nimport DtCollapsibleLazyShow from './collapsible_lazy_show.vue';\nimport { DtButton } from '@/components/button';\nimport { DtLazyShow } from '@/components/lazy_show';\nimport { DtIconChevronDown, DtIconChevronRight } from '@dialpad/dialtone-icons/vue3';\n\n/**\n * A collapsible is a component consisting of an interactive anchor that toggled the expandable/collapsible element.\n * @see https://dialtone.dialpad.com/components/collapsible.html\n */\nexport default {\n name: 'DtCollapsible',\n\n components: {\n DtButton,\n DtCollapsibleLazyShow,\n DtLazyShow,\n DtIconChevronDown,\n DtIconChevronRight,\n },\n\n props: {\n /**\n * Text that is displayed on the anchor if nothing is passed in the slot.\n * Ignored if the anchor slot is used.\n */\n anchorText: {\n type: String,\n default: null,\n },\n\n /**\n * Controls whether the collapsible is shown. Leaving this null will have the collapsible start\n * expanded and trigger on click by default. If you set this value, the default trigger\n * 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 * The id of the content wrapper.\n */\n id: {\n type: String,\n default () { return getUniqueString(); },\n },\n\n /**\n * HTML element type (tag name) of the root element of the component.\n */\n elementType: {\n type: String,\n default: 'div',\n },\n\n /**\n * HTML element type (tag name) of the content wrapper element.\n */\n contentElementType: {\n type: String,\n default: 'div',\n },\n\n /**\n * Additional class name for the anchor wrapper element.\n */\n anchorClass: {\n type: [String, Array, Object],\n default: null,\n },\n\n /**\n * Additional class name for the content wrapper element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: null,\n },\n\n /**\n * The maximum width of the anchor and collapsible element.\n * Possible units rem|px|%|em\n */\n maxWidth: {\n type: String,\n default: null,\n },\n\n /**\n * The maximum height of the collapsible element.\n * Possible units rem|px|%|em\n */\n maxHeight: {\n type: String,\n default: null,\n },\n\n /**\n * Label on the collapsible content. Should provide this or ariaLabelledBy but not both.\n */\n ariaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * Id of the element that labels the collapsible content. Defaults to the anchor element.\n * Should provide this or ariaLabel but not both.\n */\n ariaLabelledBy: {\n type: String,\n default: null,\n },\n },\n\n emits: [\n /**\n * Event fired to sync the open prop with the parent component\n * @event update:open\n */\n 'update:open',\n\n /**\n * Event fired when the content is shown or hidden\n *\n * @event opened\n * @type {Boolean}\n */\n 'opened',\n ],\n\n data () {\n return {\n isOpen: true,\n };\n },\n\n computed: {\n labelledBy () {\n // aria-labelledby should be set only if aria-labelledby is passed as a prop, or if\n // there is no aria-label and the labelledby should point to the anchor\n return this.ariaLabelledBy || (!this.ariaLabel && getUniqueString('DtCollapsible__anchor'));\n },\n\n collapsibleListeners () {\n return extractVueListeners(this.$attrs);\n },\n },\n\n watch: {\n open: {\n handler: function (open) {\n if (open !== null) {\n this.isOpen = open;\n }\n },\n\n immediate: true,\n },\n },\n\n created () {\n this.validateProperAnchor();\n },\n\n methods: {\n onLeaveTransitionComplete () {\n this.$emit('opened', false);\n if (this.open !== null) {\n this.$emit('update:open', false);\n }\n },\n\n onEnterTransitionComplete () {\n this.$emit('opened', true, this.$refs.content);\n if (this.open !== null) {\n this.$emit('update:open', true);\n }\n },\n\n defaultToggleOpen () {\n if (this.open === null) {\n this.toggleOpen();\n }\n },\n\n toggleOpen () {\n this.isOpen = !this.isOpen;\n },\n\n validateProperAnchor () {\n if (!this.anchorText && !hasSlotContent(this.$slots.anchor)) {\n console.error('anchor text and anchor slot content cannot both be falsy');\n }\n },\n },\n};\n</script>\n"],"names":["DtButton","DtCollapsibleLazyShow","DtLazyShow","DtIconChevronDown","DtIconChevronRight","getUniqueString","extractVueListeners","hasSlotContent","_openBlock","_createBlock","_resolveDynamicComponent","_mergeProps","_toHandlers","_withCtx","_createElementVNode","_normalizeClass","_renderSlot","_createVNode","_normalizeStyle","_toDisplayString"],"mappings":"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"}
1
+ {"version":3,"file":"collapsible.vue.cjs","sources":["../../../components/collapsible/collapsible.vue"],"sourcesContent":["<template>\n <component\n :is=\"elementType\"\n ref=\"collapsible\"\n v-on=\"collapsibleListeners\"\n >\n <!-- Element for capturing keypress events -->\n <div\n :id=\"!ariaLabelledBy && labelledBy\"\n ref=\"anchor\"\n :class=\"anchorClass\"\n >\n <!-- @slot Slot for the anchor element that toggles the collapsible content -->\n <slot\n name=\"anchor\"\n :attrs=\"{\n 'aria-controls': id,\n 'aria-expanded': isOpen.toString(),\n 'role': 'button',\n }\"\n >\n <dt-button\n importance=\"clear\"\n kind=\"muted\"\n :aria-controls=\"id\"\n :aria-expanded=\"`${isOpen}`\"\n :style=\"{\n 'width': maxWidth,\n }\"\n @click=\"defaultToggleOpen\"\n >\n <dt-icon-chevron-down\n v-if=\"isOpen\"\n class=\"d-collapsible__icon\"\n size=\"300\"\n />\n <dt-icon-chevron-right\n v-else\n class=\"d-collapsible__icon\"\n size=\"300\"\n />\n <span\n class=\"d-collapsible__anchor-text\"\n :title=\"anchorText\"\n >\n {{ anchorText }}\n </span>\n </dt-button>\n </slot>\n </div>\n <dt-collapsible-lazy-show\n :id=\"id\"\n ref=\"contentWrapper\"\n :aria-hidden=\"`${!isOpen}`\"\n :aria-labelledby=\"labelledBy\"\n :aria-label=\"ariaLabel\"\n :show=\"isOpen\"\n :element-type=\"contentElementType\"\n :class=\"contentClass\"\n :style=\"{\n 'max-height': maxHeight,\n 'max-width': maxWidth,\n }\"\n data-qa=\"dt-collapsible--content\"\n tabindex=\"-1\"\n appear\n v-on=\"collapsibleListeners\"\n @after-leave=\"onLeaveTransitionComplete\"\n @after-enter=\"onEnterTransitionComplete\"\n >\n <!-- @slot Slot for the collapsible element that is expanded by the anchor -->\n <slot\n name=\"content\"\n />\n </dt-collapsible-lazy-show>\n </component>\n</template>\n\n<script>\nimport { extractVueListeners, getUniqueString, hasSlotContent } from '@/common/utils';\nimport DtCollapsibleLazyShow from './collapsible_lazy_show.vue';\nimport { DtButton } from '@/components/button';\nimport { DtLazyShow } from '@/components/lazy_show';\nimport { DtIconChevronDown, DtIconChevronRight } from '@dialpad/dialtone-icons/vue3';\n\n/**\n * A collapsible is a component consisting of an interactive anchor that toggled the expandable/collapsible element.\n * @see https://dialtone.dialpad.com/components/collapsible.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCollapsible',\n\n components: {\n DtButton,\n DtCollapsibleLazyShow,\n DtLazyShow,\n DtIconChevronDown,\n DtIconChevronRight,\n },\n\n props: {\n /**\n * Text that is displayed on the anchor if nothing is passed in the slot.\n * Ignored if the anchor slot is used.\n */\n anchorText: {\n type: String,\n default: null,\n },\n\n /**\n * Controls whether the collapsible is shown. Leaving this null will have the collapsible start\n * expanded and trigger on click by default. If you set this value, the default trigger\n * 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 * The id of the content wrapper.\n */\n id: {\n type: String,\n default () { return getUniqueString(); },\n },\n\n /**\n * HTML element type (tag name) of the root element of the component.\n */\n elementType: {\n type: String,\n default: 'div',\n },\n\n /**\n * HTML element type (tag name) of the content wrapper element.\n */\n contentElementType: {\n type: String,\n default: 'div',\n },\n\n /**\n * Additional class name for the anchor wrapper element.\n */\n anchorClass: {\n type: [String, Array, Object],\n default: null,\n },\n\n /**\n * Additional class name for the content wrapper element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: null,\n },\n\n /**\n * The maximum width of the anchor and collapsible element.\n * Possible units rem|px|%|em\n */\n maxWidth: {\n type: String,\n default: null,\n },\n\n /**\n * The maximum height of the collapsible element.\n * Possible units rem|px|%|em\n */\n maxHeight: {\n type: String,\n default: null,\n },\n\n /**\n * Label on the collapsible content. Should provide this or ariaLabelledBy but not both.\n */\n ariaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * Id of the element that labels the collapsible content. Defaults to the anchor element.\n * Should provide this or ariaLabel but not both.\n */\n ariaLabelledBy: {\n type: String,\n default: null,\n },\n },\n\n emits: [\n /**\n * Event fired to sync the open prop with the parent component\n * @event update:open\n */\n 'update:open',\n\n /**\n * Event fired when the content is shown or hidden\n *\n * @event opened\n * @type {Boolean}\n */\n 'opened',\n ],\n\n data () {\n return {\n isOpen: true,\n };\n },\n\n computed: {\n labelledBy () {\n // aria-labelledby should be set only if aria-labelledby is passed as a prop, or if\n // there is no aria-label and the labelledby should point to the anchor\n return this.ariaLabelledBy || (!this.ariaLabel && getUniqueString('DtCollapsible__anchor'));\n },\n\n collapsibleListeners () {\n return extractVueListeners(this.$attrs);\n },\n },\n\n watch: {\n open: {\n handler: function (open) {\n if (open !== null) {\n this.isOpen = open;\n }\n },\n\n immediate: true,\n },\n },\n\n created () {\n this.validateProperAnchor();\n },\n\n methods: {\n onLeaveTransitionComplete () {\n this.$emit('opened', false);\n if (this.open !== null) {\n this.$emit('update:open', false);\n }\n },\n\n onEnterTransitionComplete () {\n this.$emit('opened', true, this.$refs.content);\n if (this.open !== null) {\n this.$emit('update:open', true);\n }\n },\n\n defaultToggleOpen () {\n if (this.open === null) {\n this.toggleOpen();\n }\n },\n\n toggleOpen () {\n this.isOpen = !this.isOpen;\n },\n\n validateProperAnchor () {\n if (!this.anchorText && !hasSlotContent(this.$slots.anchor)) {\n console.error('anchor text and anchor slot content cannot both be falsy');\n }\n },\n },\n};\n</script>\n"],"names":["DtButton","DtCollapsibleLazyShow","DtLazyShow","DtIconChevronDown","DtIconChevronRight","getUniqueString","extractVueListeners","hasSlotContent","_openBlock","_createBlock","_resolveDynamicComponent","_mergeProps","_toHandlers","_withCtx","_createElementVNode","_normalizeClass","_renderSlot","_createVNode","_normalizeStyle","_toDisplayString"],"mappings":"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"}
@@ -6,6 +6,7 @@ import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
6
6
  import DtButton from "../button/button.vue.js";
7
7
  import DtLazyShow from "../lazy_show/lazy_show.vue.js";
8
8
  const _sfc_main = {
9
+ compatConfig: { MODE: 3 },
9
10
  name: "DtCollapsible",
10
11
  components: {
11
12
  DtButton,