@dialpad/dialtone 9.98.0 → 9.99.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (413) hide show
  1. package/dist/tokens/doc.json +25115 -25115
  2. package/dist/vue2/recipes/conversation_view/editor/editor.vue.cjs +8 -0
  3. package/dist/vue2/recipes/conversation_view/editor/editor.vue.cjs.map +1 -1
  4. package/dist/vue2/recipes/conversation_view/editor/editor.vue.js +8 -0
  5. package/dist/vue2/recipes/conversation_view/editor/editor.vue.js.map +1 -1
  6. package/dist/vue2/types/recipes/conversation_view/editor/editor.vue.d.ts +2 -0
  7. package/dist/vue3/components/avatar/avatar.vue.cjs +1 -0
  8. package/dist/vue3/components/avatar/avatar.vue.cjs.map +1 -1
  9. package/dist/vue3/components/avatar/avatar.vue.js +1 -0
  10. package/dist/vue3/components/avatar/avatar.vue.js.map +1 -1
  11. package/dist/vue3/components/badge/badge.vue.cjs +1 -0
  12. package/dist/vue3/components/badge/badge.vue.cjs.map +1 -1
  13. package/dist/vue3/components/badge/badge.vue.js +1 -0
  14. package/dist/vue3/components/badge/badge.vue.js.map +1 -1
  15. package/dist/vue3/components/banner/banner.vue.cjs +1 -0
  16. package/dist/vue3/components/banner/banner.vue.cjs.map +1 -1
  17. package/dist/vue3/components/banner/banner.vue.js +1 -0
  18. package/dist/vue3/components/banner/banner.vue.js.map +1 -1
  19. package/dist/vue3/components/breadcrumbs/breadcrumbs.vue.cjs +1 -0
  20. package/dist/vue3/components/breadcrumbs/breadcrumbs.vue.cjs.map +1 -1
  21. package/dist/vue3/components/breadcrumbs/breadcrumbs.vue.js +1 -0
  22. package/dist/vue3/components/breadcrumbs/breadcrumbs.vue.js.map +1 -1
  23. package/dist/vue3/components/button/button.vue.cjs +2 -2
  24. package/dist/vue3/components/button/button.vue.cjs.map +1 -1
  25. package/dist/vue3/components/button/button.vue.js +2 -2
  26. package/dist/vue3/components/button/button.vue.js.map +1 -1
  27. package/dist/vue3/components/button_group/button_group.vue.cjs +1 -0
  28. package/dist/vue3/components/button_group/button_group.vue.cjs.map +1 -1
  29. package/dist/vue3/components/button_group/button_group.vue.js +1 -0
  30. package/dist/vue3/components/button_group/button_group.vue.js.map +1 -1
  31. package/dist/vue3/components/card/card.vue.cjs +1 -0
  32. package/dist/vue3/components/card/card.vue.cjs.map +1 -1
  33. package/dist/vue3/components/card/card.vue.js +1 -0
  34. package/dist/vue3/components/card/card.vue.js.map +1 -1
  35. package/dist/vue3/components/checkbox/checkbox.vue.cjs +1 -0
  36. package/dist/vue3/components/checkbox/checkbox.vue.cjs.map +1 -1
  37. package/dist/vue3/components/checkbox/checkbox.vue.js +1 -0
  38. package/dist/vue3/components/checkbox/checkbox.vue.js.map +1 -1
  39. package/dist/vue3/components/checkbox_group/checkbox_group.vue.cjs +1 -0
  40. package/dist/vue3/components/checkbox_group/checkbox_group.vue.cjs.map +1 -1
  41. package/dist/vue3/components/checkbox_group/checkbox_group.vue.js +1 -0
  42. package/dist/vue3/components/checkbox_group/checkbox_group.vue.js.map +1 -1
  43. package/dist/vue3/components/chip/chip.vue.cjs +1 -0
  44. package/dist/vue3/components/chip/chip.vue.cjs.map +1 -1
  45. package/dist/vue3/components/chip/chip.vue.js +1 -0
  46. package/dist/vue3/components/chip/chip.vue.js.map +1 -1
  47. package/dist/vue3/components/codeblock/codeblock.vue.cjs +1 -0
  48. package/dist/vue3/components/codeblock/codeblock.vue.cjs.map +1 -1
  49. package/dist/vue3/components/codeblock/codeblock.vue.js +1 -0
  50. package/dist/vue3/components/codeblock/codeblock.vue.js.map +1 -1
  51. package/dist/vue3/components/collapsible/collapsible.vue.cjs +1 -0
  52. package/dist/vue3/components/collapsible/collapsible.vue.cjs.map +1 -1
  53. package/dist/vue3/components/collapsible/collapsible.vue.js +1 -0
  54. package/dist/vue3/components/collapsible/collapsible.vue.js.map +1 -1
  55. package/dist/vue3/components/combobox/combobox.vue.cjs +1 -0
  56. package/dist/vue3/components/combobox/combobox.vue.cjs.map +1 -1
  57. package/dist/vue3/components/combobox/combobox.vue.js +1 -0
  58. package/dist/vue3/components/combobox/combobox.vue.js.map +1 -1
  59. package/dist/vue3/components/description_list/description_list.vue.cjs +1 -0
  60. package/dist/vue3/components/description_list/description_list.vue.cjs.map +1 -1
  61. package/dist/vue3/components/description_list/description_list.vue.js +1 -0
  62. package/dist/vue3/components/description_list/description_list.vue.js.map +1 -1
  63. package/dist/vue3/components/dropdown/dropdown.vue.cjs +1 -0
  64. package/dist/vue3/components/dropdown/dropdown.vue.cjs.map +1 -1
  65. package/dist/vue3/components/dropdown/dropdown.vue.js +1 -0
  66. package/dist/vue3/components/dropdown/dropdown.vue.js.map +1 -1
  67. package/dist/vue3/components/dropdown/dropdown_separator.vue.cjs +1 -0
  68. package/dist/vue3/components/dropdown/dropdown_separator.vue.cjs.map +1 -1
  69. package/dist/vue3/components/dropdown/dropdown_separator.vue.js +1 -0
  70. package/dist/vue3/components/dropdown/dropdown_separator.vue.js.map +1 -1
  71. package/dist/vue3/components/emoji/emoji.vue.cjs +1 -0
  72. package/dist/vue3/components/emoji/emoji.vue.cjs.map +1 -1
  73. package/dist/vue3/components/emoji/emoji.vue.js +1 -0
  74. package/dist/vue3/components/emoji/emoji.vue.js.map +1 -1
  75. package/dist/vue3/components/emoji_text_wrapper/emoji_text_wrapper.vue.cjs +1 -0
  76. package/dist/vue3/components/emoji_text_wrapper/emoji_text_wrapper.vue.cjs.map +1 -1
  77. package/dist/vue3/components/emoji_text_wrapper/emoji_text_wrapper.vue.js +1 -0
  78. package/dist/vue3/components/emoji_text_wrapper/emoji_text_wrapper.vue.js.map +1 -1
  79. package/dist/vue3/components/icon/icon.vue.cjs +1 -0
  80. package/dist/vue3/components/icon/icon.vue.cjs.map +1 -1
  81. package/dist/vue3/components/icon/icon.vue.js +1 -0
  82. package/dist/vue3/components/icon/icon.vue.js.map +1 -1
  83. package/dist/vue3/components/image_viewer/image_viewer.vue.cjs +1 -0
  84. package/dist/vue3/components/image_viewer/image_viewer.vue.cjs.map +1 -1
  85. package/dist/vue3/components/image_viewer/image_viewer.vue.js +1 -0
  86. package/dist/vue3/components/image_viewer/image_viewer.vue.js.map +1 -1
  87. package/dist/vue3/components/input/input.vue.cjs +1 -0
  88. package/dist/vue3/components/input/input.vue.cjs.map +1 -1
  89. package/dist/vue3/components/input/input.vue.js +1 -0
  90. package/dist/vue3/components/input/input.vue.js.map +1 -1
  91. package/dist/vue3/components/input_group/input_group.vue.cjs +1 -0
  92. package/dist/vue3/components/input_group/input_group.vue.cjs.map +1 -1
  93. package/dist/vue3/components/input_group/input_group.vue.js +1 -0
  94. package/dist/vue3/components/input_group/input_group.vue.js.map +1 -1
  95. package/dist/vue3/components/item_layout/item_layout.vue.cjs +1 -0
  96. package/dist/vue3/components/item_layout/item_layout.vue.cjs.map +1 -1
  97. package/dist/vue3/components/item_layout/item_layout.vue.js +1 -0
  98. package/dist/vue3/components/item_layout/item_layout.vue.js.map +1 -1
  99. package/dist/vue3/components/keyboard_shortcut/keyboard_shortcut.vue.cjs +1 -0
  100. package/dist/vue3/components/keyboard_shortcut/keyboard_shortcut.vue.cjs.map +1 -1
  101. package/dist/vue3/components/keyboard_shortcut/keyboard_shortcut.vue.js +1 -0
  102. package/dist/vue3/components/keyboard_shortcut/keyboard_shortcut.vue.js.map +1 -1
  103. package/dist/vue3/components/lazy_show/lazy_show.vue.cjs +1 -0
  104. package/dist/vue3/components/lazy_show/lazy_show.vue.cjs.map +1 -1
  105. package/dist/vue3/components/lazy_show/lazy_show.vue.js +1 -0
  106. package/dist/vue3/components/lazy_show/lazy_show.vue.js.map +1 -1
  107. package/dist/vue3/components/link/link.vue.cjs +1 -0
  108. package/dist/vue3/components/link/link.vue.cjs.map +1 -1
  109. package/dist/vue3/components/link/link.vue.js +1 -0
  110. package/dist/vue3/components/link/link.vue.js.map +1 -1
  111. package/dist/vue3/components/list_item/list_item.vue.cjs +1 -0
  112. package/dist/vue3/components/list_item/list_item.vue.cjs.map +1 -1
  113. package/dist/vue3/components/list_item/list_item.vue.js +1 -0
  114. package/dist/vue3/components/list_item/list_item.vue.js.map +1 -1
  115. package/dist/vue3/components/list_item_group/list_item_group.vue.cjs +1 -0
  116. package/dist/vue3/components/list_item_group/list_item_group.vue.cjs.map +1 -1
  117. package/dist/vue3/components/list_item_group/list_item_group.vue.js +1 -0
  118. package/dist/vue3/components/list_item_group/list_item_group.vue.js.map +1 -1
  119. package/dist/vue3/components/modal/modal.vue.cjs +1 -0
  120. package/dist/vue3/components/modal/modal.vue.cjs.map +1 -1
  121. package/dist/vue3/components/modal/modal.vue.js +1 -0
  122. package/dist/vue3/components/modal/modal.vue.js.map +1 -1
  123. package/dist/vue3/components/notice/notice.vue.cjs +1 -0
  124. package/dist/vue3/components/notice/notice.vue.cjs.map +1 -1
  125. package/dist/vue3/components/notice/notice.vue.js +1 -0
  126. package/dist/vue3/components/notice/notice.vue.js.map +1 -1
  127. package/dist/vue3/components/notice/notice_action.vue.cjs +1 -0
  128. package/dist/vue3/components/notice/notice_action.vue.cjs.map +1 -1
  129. package/dist/vue3/components/notice/notice_action.vue.js +1 -0
  130. package/dist/vue3/components/notice/notice_action.vue.js.map +1 -1
  131. package/dist/vue3/components/notice/notice_content.vue.cjs +1 -0
  132. package/dist/vue3/components/notice/notice_content.vue.cjs.map +1 -1
  133. package/dist/vue3/components/notice/notice_content.vue.js +1 -0
  134. package/dist/vue3/components/notice/notice_content.vue.js.map +1 -1
  135. package/dist/vue3/components/notice/notice_icon.vue.cjs +1 -0
  136. package/dist/vue3/components/notice/notice_icon.vue.cjs.map +1 -1
  137. package/dist/vue3/components/notice/notice_icon.vue.js +1 -0
  138. package/dist/vue3/components/notice/notice_icon.vue.js.map +1 -1
  139. package/dist/vue3/components/pagination/pagination.vue.cjs +1 -0
  140. package/dist/vue3/components/pagination/pagination.vue.cjs.map +1 -1
  141. package/dist/vue3/components/pagination/pagination.vue.js +1 -0
  142. package/dist/vue3/components/pagination/pagination.vue.js.map +1 -1
  143. package/dist/vue3/components/popover/popover.vue.cjs +1 -0
  144. package/dist/vue3/components/popover/popover.vue.cjs.map +1 -1
  145. package/dist/vue3/components/popover/popover.vue.js +1 -0
  146. package/dist/vue3/components/popover/popover.vue.js.map +1 -1
  147. package/dist/vue3/components/popover/popover_header_footer.vue.cjs +1 -0
  148. package/dist/vue3/components/popover/popover_header_footer.vue.cjs.map +1 -1
  149. package/dist/vue3/components/popover/popover_header_footer.vue.js +1 -0
  150. package/dist/vue3/components/popover/popover_header_footer.vue.js.map +1 -1
  151. package/dist/vue3/components/presence/presence.vue.cjs +1 -0
  152. package/dist/vue3/components/presence/presence.vue.cjs.map +1 -1
  153. package/dist/vue3/components/presence/presence.vue.js +1 -0
  154. package/dist/vue3/components/presence/presence.vue.js.map +1 -1
  155. package/dist/vue3/components/radio/radio.vue.cjs +1 -0
  156. package/dist/vue3/components/radio/radio.vue.cjs.map +1 -1
  157. package/dist/vue3/components/radio/radio.vue.js +1 -0
  158. package/dist/vue3/components/radio/radio.vue.js.map +1 -1
  159. package/dist/vue3/components/radio_group/radio_group.vue.cjs +1 -0
  160. package/dist/vue3/components/radio_group/radio_group.vue.cjs.map +1 -1
  161. package/dist/vue3/components/radio_group/radio_group.vue.js +1 -0
  162. package/dist/vue3/components/radio_group/radio_group.vue.js.map +1 -1
  163. package/dist/vue3/components/rich_text_editor/extensions/channels/ChannelComponent.vue.cjs +1 -0
  164. package/dist/vue3/components/rich_text_editor/extensions/channels/ChannelComponent.vue.cjs.map +1 -1
  165. package/dist/vue3/components/rich_text_editor/extensions/channels/ChannelComponent.vue.js +1 -0
  166. package/dist/vue3/components/rich_text_editor/extensions/channels/ChannelComponent.vue.js.map +1 -1
  167. package/dist/vue3/components/rich_text_editor/extensions/channels/ChannelSuggestion.vue.cjs +1 -0
  168. package/dist/vue3/components/rich_text_editor/extensions/channels/ChannelSuggestion.vue.cjs.map +1 -1
  169. package/dist/vue3/components/rich_text_editor/extensions/channels/ChannelSuggestion.vue.js +1 -0
  170. package/dist/vue3/components/rich_text_editor/extensions/channels/ChannelSuggestion.vue.js.map +1 -1
  171. package/dist/vue3/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.cjs +1 -0
  172. package/dist/vue3/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.cjs.map +1 -1
  173. package/dist/vue3/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.js +1 -0
  174. package/dist/vue3/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.js.map +1 -1
  175. package/dist/vue3/components/rich_text_editor/extensions/emoji/EmojiSuggestion.vue.cjs +1 -0
  176. package/dist/vue3/components/rich_text_editor/extensions/emoji/EmojiSuggestion.vue.cjs.map +1 -1
  177. package/dist/vue3/components/rich_text_editor/extensions/emoji/EmojiSuggestion.vue.js +1 -0
  178. package/dist/vue3/components/rich_text_editor/extensions/emoji/EmojiSuggestion.vue.js.map +1 -1
  179. package/dist/vue3/components/rich_text_editor/extensions/mentions/MentionComponent.vue.cjs +1 -0
  180. package/dist/vue3/components/rich_text_editor/extensions/mentions/MentionComponent.vue.cjs.map +1 -1
  181. package/dist/vue3/components/rich_text_editor/extensions/mentions/MentionComponent.vue.js +1 -0
  182. package/dist/vue3/components/rich_text_editor/extensions/mentions/MentionComponent.vue.js.map +1 -1
  183. package/dist/vue3/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.cjs +1 -0
  184. package/dist/vue3/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.cjs.map +1 -1
  185. package/dist/vue3/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.js +1 -0
  186. package/dist/vue3/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.js.map +1 -1
  187. package/dist/vue3/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.cjs +1 -0
  188. package/dist/vue3/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.cjs.map +1 -1
  189. package/dist/vue3/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.js +1 -0
  190. package/dist/vue3/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.js.map +1 -1
  191. package/dist/vue3/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.cjs +1 -0
  192. package/dist/vue3/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.cjs.map +1 -1
  193. package/dist/vue3/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.js +1 -0
  194. package/dist/vue3/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.js.map +1 -1
  195. package/dist/vue3/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.cjs +1 -0
  196. package/dist/vue3/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.cjs.map +1 -1
  197. package/dist/vue3/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.js +1 -0
  198. package/dist/vue3/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.js.map +1 -1
  199. package/dist/vue3/components/rich_text_editor/rich_text_editor.vue.cjs +1 -0
  200. package/dist/vue3/components/rich_text_editor/rich_text_editor.vue.cjs.map +1 -1
  201. package/dist/vue3/components/rich_text_editor/rich_text_editor.vue.js +1 -0
  202. package/dist/vue3/components/rich_text_editor/rich_text_editor.vue.js.map +1 -1
  203. package/dist/vue3/components/root_layout/root_layout.vue.cjs +1 -0
  204. package/dist/vue3/components/root_layout/root_layout.vue.cjs.map +1 -1
  205. package/dist/vue3/components/root_layout/root_layout.vue.js +1 -0
  206. package/dist/vue3/components/root_layout/root_layout.vue.js.map +1 -1
  207. package/dist/vue3/components/select_menu/select_menu.vue.cjs +1 -0
  208. package/dist/vue3/components/select_menu/select_menu.vue.cjs.map +1 -1
  209. package/dist/vue3/components/select_menu/select_menu.vue.js +1 -0
  210. package/dist/vue3/components/select_menu/select_menu.vue.js.map +1 -1
  211. package/dist/vue3/components/skeleton/skeleton-list-item.vue.cjs +1 -0
  212. package/dist/vue3/components/skeleton/skeleton-list-item.vue.cjs.map +1 -1
  213. package/dist/vue3/components/skeleton/skeleton-list-item.vue.js +1 -0
  214. package/dist/vue3/components/skeleton/skeleton-list-item.vue.js.map +1 -1
  215. package/dist/vue3/components/skeleton/skeleton-paragraph.vue.cjs +1 -0
  216. package/dist/vue3/components/skeleton/skeleton-paragraph.vue.cjs.map +1 -1
  217. package/dist/vue3/components/skeleton/skeleton-paragraph.vue.js +1 -0
  218. package/dist/vue3/components/skeleton/skeleton-paragraph.vue.js.map +1 -1
  219. package/dist/vue3/components/skeleton/skeleton-shape.vue.cjs +1 -0
  220. package/dist/vue3/components/skeleton/skeleton-shape.vue.cjs.map +1 -1
  221. package/dist/vue3/components/skeleton/skeleton-shape.vue.js +1 -0
  222. package/dist/vue3/components/skeleton/skeleton-shape.vue.js.map +1 -1
  223. package/dist/vue3/components/skeleton/skeleton-text.vue.cjs +1 -0
  224. package/dist/vue3/components/skeleton/skeleton-text.vue.cjs.map +1 -1
  225. package/dist/vue3/components/skeleton/skeleton-text.vue.js +1 -0
  226. package/dist/vue3/components/skeleton/skeleton-text.vue.js.map +1 -1
  227. package/dist/vue3/components/skeleton/skeleton.vue.cjs +1 -0
  228. package/dist/vue3/components/skeleton/skeleton.vue.cjs.map +1 -1
  229. package/dist/vue3/components/skeleton/skeleton.vue.js +1 -0
  230. package/dist/vue3/components/skeleton/skeleton.vue.js.map +1 -1
  231. package/dist/vue3/components/split_button/split_button-alpha.vue.cjs +1 -0
  232. package/dist/vue3/components/split_button/split_button-alpha.vue.cjs.map +1 -1
  233. package/dist/vue3/components/split_button/split_button-alpha.vue.js +1 -0
  234. package/dist/vue3/components/split_button/split_button-alpha.vue.js.map +1 -1
  235. package/dist/vue3/components/split_button/split_button-omega.vue.cjs +1 -0
  236. package/dist/vue3/components/split_button/split_button-omega.vue.cjs.map +1 -1
  237. package/dist/vue3/components/split_button/split_button-omega.vue.js +1 -0
  238. package/dist/vue3/components/split_button/split_button-omega.vue.js.map +1 -1
  239. package/dist/vue3/components/split_button/split_button.vue.cjs +1 -0
  240. package/dist/vue3/components/split_button/split_button.vue.cjs.map +1 -1
  241. package/dist/vue3/components/split_button/split_button.vue.js +1 -0
  242. package/dist/vue3/components/split_button/split_button.vue.js.map +1 -1
  243. package/dist/vue3/components/stack/stack.vue.cjs +1 -0
  244. package/dist/vue3/components/stack/stack.vue.cjs.map +1 -1
  245. package/dist/vue3/components/stack/stack.vue.js +1 -0
  246. package/dist/vue3/components/stack/stack.vue.js.map +1 -1
  247. package/dist/vue3/components/tab/tab.vue.cjs +1 -0
  248. package/dist/vue3/components/tab/tab.vue.cjs.map +1 -1
  249. package/dist/vue3/components/tab/tab.vue.js +1 -0
  250. package/dist/vue3/components/tab/tab.vue.js.map +1 -1
  251. package/dist/vue3/components/tab/tab_group.vue.cjs +1 -0
  252. package/dist/vue3/components/tab/tab_group.vue.cjs.map +1 -1
  253. package/dist/vue3/components/tab/tab_group.vue.js +1 -0
  254. package/dist/vue3/components/tab/tab_group.vue.js.map +1 -1
  255. package/dist/vue3/components/tab/tab_panel.vue.cjs +1 -0
  256. package/dist/vue3/components/tab/tab_panel.vue.cjs.map +1 -1
  257. package/dist/vue3/components/tab/tab_panel.vue.js +1 -0
  258. package/dist/vue3/components/tab/tab_panel.vue.js.map +1 -1
  259. package/dist/vue3/components/toast/toast.vue.cjs +1 -0
  260. package/dist/vue3/components/toast/toast.vue.cjs.map +1 -1
  261. package/dist/vue3/components/toast/toast.vue.js +1 -0
  262. package/dist/vue3/components/toast/toast.vue.js.map +1 -1
  263. package/dist/vue3/components/toggle/toggle.vue.cjs +1 -0
  264. package/dist/vue3/components/toggle/toggle.vue.cjs.map +1 -1
  265. package/dist/vue3/components/toggle/toggle.vue.js +1 -0
  266. package/dist/vue3/components/toggle/toggle.vue.js.map +1 -1
  267. package/dist/vue3/components/tooltip/tooltip.vue.cjs +1 -0
  268. package/dist/vue3/components/tooltip/tooltip.vue.cjs.map +1 -1
  269. package/dist/vue3/components/tooltip/tooltip.vue.js +1 -0
  270. package/dist/vue3/components/tooltip/tooltip.vue.js.map +1 -1
  271. package/dist/vue3/components/validation_messages/validation_messages.vue.cjs +1 -0
  272. package/dist/vue3/components/validation_messages/validation_messages.vue.cjs.map +1 -1
  273. package/dist/vue3/components/validation_messages/validation_messages.vue.js +1 -0
  274. package/dist/vue3/components/validation_messages/validation_messages.vue.js.map +1 -1
  275. package/dist/vue3/recipes/buttons/callbar_button/callbar_button.vue.cjs +1 -0
  276. package/dist/vue3/recipes/buttons/callbar_button/callbar_button.vue.cjs.map +1 -1
  277. package/dist/vue3/recipes/buttons/callbar_button/callbar_button.vue.js +1 -0
  278. package/dist/vue3/recipes/buttons/callbar_button/callbar_button.vue.js.map +1 -1
  279. package/dist/vue3/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.cjs +1 -0
  280. package/dist/vue3/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.cjs.map +1 -1
  281. package/dist/vue3/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.js +1 -0
  282. package/dist/vue3/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.js.map +1 -1
  283. package/dist/vue3/recipes/cards/ivr_node/ivr_node.vue.cjs +1 -0
  284. package/dist/vue3/recipes/cards/ivr_node/ivr_node.vue.cjs.map +1 -1
  285. package/dist/vue3/recipes/cards/ivr_node/ivr_node.vue.js +1 -0
  286. package/dist/vue3/recipes/cards/ivr_node/ivr_node.vue.js.map +1 -1
  287. package/dist/vue3/recipes/chips/grouped_chip/grouped_chip.vue.cjs +1 -0
  288. package/dist/vue3/recipes/chips/grouped_chip/grouped_chip.vue.cjs.map +1 -1
  289. package/dist/vue3/recipes/chips/grouped_chip/grouped_chip.vue.js +1 -0
  290. package/dist/vue3/recipes/chips/grouped_chip/grouped_chip.vue.js.map +1 -1
  291. package/dist/vue3/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs +1 -0
  292. package/dist/vue3/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs.map +1 -1
  293. package/dist/vue3/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js +1 -0
  294. package/dist/vue3/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js.map +1 -1
  295. package/dist/vue3/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.cjs +1 -0
  296. package/dist/vue3/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.cjs.map +1 -1
  297. package/dist/vue3/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.js +1 -0
  298. package/dist/vue3/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.js.map +1 -1
  299. package/dist/vue3/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.cjs +1 -0
  300. package/dist/vue3/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.cjs.map +1 -1
  301. package/dist/vue3/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.js +1 -0
  302. package/dist/vue3/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.js.map +1 -1
  303. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.cjs +1 -0
  304. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.cjs.map +1 -1
  305. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.js +1 -0
  306. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.js.map +1 -1
  307. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.cjs +1 -0
  308. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.cjs.map +1 -1
  309. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.js +1 -0
  310. package/dist/vue3/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.js.map +1 -1
  311. package/dist/vue3/recipes/conversation_view/editor/editor.vue.cjs +9 -0
  312. package/dist/vue3/recipes/conversation_view/editor/editor.vue.cjs.map +1 -1
  313. package/dist/vue3/recipes/conversation_view/editor/editor.vue.js +9 -0
  314. package/dist/vue3/recipes/conversation_view/editor/editor.vue.js.map +1 -1
  315. package/dist/vue3/recipes/conversation_view/emoji_row/emoji_row.vue.cjs +1 -0
  316. package/dist/vue3/recipes/conversation_view/emoji_row/emoji_row.vue.cjs.map +1 -1
  317. package/dist/vue3/recipes/conversation_view/emoji_row/emoji_row.vue.js +1 -0
  318. package/dist/vue3/recipes/conversation_view/emoji_row/emoji_row.vue.js.map +1 -1
  319. package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs +1 -0
  320. package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.cjs.map +1 -1
  321. package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js +1 -0
  322. package/dist/vue3/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.js.map +1 -1
  323. package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs +1 -0
  324. package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row.vue.cjs.map +1 -1
  325. package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row.vue.js +1 -0
  326. package/dist/vue3/recipes/conversation_view/feed_item_row/feed_item_row.vue.js.map +1 -1
  327. package/dist/vue3/recipes/conversation_view/message_input/message_input.vue.cjs +1 -0
  328. package/dist/vue3/recipes/conversation_view/message_input/message_input.vue.cjs.map +1 -1
  329. package/dist/vue3/recipes/conversation_view/message_input/message_input.vue.js +1 -0
  330. package/dist/vue3/recipes/conversation_view/message_input/message_input.vue.js.map +1 -1
  331. package/dist/vue3/recipes/conversation_view/message_input/message_input_button.vue.cjs +1 -0
  332. package/dist/vue3/recipes/conversation_view/message_input/message_input_button.vue.cjs.map +1 -1
  333. package/dist/vue3/recipes/conversation_view/message_input/message_input_button.vue.js +1 -0
  334. package/dist/vue3/recipes/conversation_view/message_input/message_input_button.vue.js.map +1 -1
  335. package/dist/vue3/recipes/conversation_view/message_input/message_input_link.vue.cjs +1 -0
  336. package/dist/vue3/recipes/conversation_view/message_input/message_input_link.vue.cjs.map +1 -1
  337. package/dist/vue3/recipes/conversation_view/message_input/message_input_link.vue.js +1 -0
  338. package/dist/vue3/recipes/conversation_view/message_input/message_input_link.vue.js.map +1 -1
  339. package/dist/vue3/recipes/conversation_view/message_input/message_input_topbar.vue.cjs +1 -0
  340. package/dist/vue3/recipes/conversation_view/message_input/message_input_topbar.vue.cjs.map +1 -1
  341. package/dist/vue3/recipes/conversation_view/message_input/message_input_topbar.vue.js +1 -0
  342. package/dist/vue3/recipes/conversation_view/message_input/message_input_topbar.vue.js.map +1 -1
  343. package/dist/vue3/recipes/conversation_view/time_pill/time_pill.vue.cjs +1 -0
  344. package/dist/vue3/recipes/conversation_view/time_pill/time_pill.vue.cjs.map +1 -1
  345. package/dist/vue3/recipes/conversation_view/time_pill/time_pill.vue.js +1 -0
  346. package/dist/vue3/recipes/conversation_view/time_pill/time_pill.vue.js.map +1 -1
  347. package/dist/vue3/recipes/header/settings_menu_button/settings_menu_button.vue.cjs +1 -0
  348. package/dist/vue3/recipes/header/settings_menu_button/settings_menu_button.vue.cjs.map +1 -1
  349. package/dist/vue3/recipes/header/settings_menu_button/settings_menu_button.vue.js +1 -0
  350. package/dist/vue3/recipes/header/settings_menu_button/settings_menu_button.vue.js.map +1 -1
  351. package/dist/vue3/recipes/item_layout/contact_info/contact_info.vue.cjs +1 -0
  352. package/dist/vue3/recipes/item_layout/contact_info/contact_info.vue.cjs.map +1 -1
  353. package/dist/vue3/recipes/item_layout/contact_info/contact_info.vue.js +1 -0
  354. package/dist/vue3/recipes/item_layout/contact_info/contact_info.vue.js.map +1 -1
  355. package/dist/vue3/recipes/leftbar/callbox/callbox.vue.cjs +1 -0
  356. package/dist/vue3/recipes/leftbar/callbox/callbox.vue.cjs.map +1 -1
  357. package/dist/vue3/recipes/leftbar/callbox/callbox.vue.js +1 -0
  358. package/dist/vue3/recipes/leftbar/callbox/callbox.vue.js.map +1 -1
  359. package/dist/vue3/recipes/leftbar/contact_centers_row/contact_centers_row.vue.cjs +1 -0
  360. package/dist/vue3/recipes/leftbar/contact_centers_row/contact_centers_row.vue.cjs.map +1 -1
  361. package/dist/vue3/recipes/leftbar/contact_centers_row/contact_centers_row.vue.js +1 -0
  362. package/dist/vue3/recipes/leftbar/contact_centers_row/contact_centers_row.vue.js.map +1 -1
  363. package/dist/vue3/recipes/leftbar/contact_row/contact_row.vue.cjs +1 -0
  364. package/dist/vue3/recipes/leftbar/contact_row/contact_row.vue.cjs.map +1 -1
  365. package/dist/vue3/recipes/leftbar/contact_row/contact_row.vue.js +1 -0
  366. package/dist/vue3/recipes/leftbar/contact_row/contact_row.vue.js.map +1 -1
  367. package/dist/vue3/recipes/leftbar/general_row/general_row.vue.cjs +1 -0
  368. package/dist/vue3/recipes/leftbar/general_row/general_row.vue.cjs.map +1 -1
  369. package/dist/vue3/recipes/leftbar/general_row/general_row.vue.js +1 -0
  370. package/dist/vue3/recipes/leftbar/general_row/general_row.vue.js.map +1 -1
  371. package/dist/vue3/recipes/leftbar/general_row/leftbar_general_row_icon.vue.cjs +1 -0
  372. package/dist/vue3/recipes/leftbar/general_row/leftbar_general_row_icon.vue.cjs.map +1 -1
  373. package/dist/vue3/recipes/leftbar/general_row/leftbar_general_row_icon.vue.js +1 -0
  374. package/dist/vue3/recipes/leftbar/general_row/leftbar_general_row_icon.vue.js.map +1 -1
  375. package/dist/vue3/recipes/leftbar/group_row/group_row.vue.cjs +1 -0
  376. package/dist/vue3/recipes/leftbar/group_row/group_row.vue.cjs.map +1 -1
  377. package/dist/vue3/recipes/leftbar/group_row/group_row.vue.js +1 -0
  378. package/dist/vue3/recipes/leftbar/group_row/group_row.vue.js.map +1 -1
  379. package/dist/vue3/recipes/leftbar/unread_pill/unread_pill.vue.cjs +1 -0
  380. package/dist/vue3/recipes/leftbar/unread_pill/unread_pill.vue.cjs.map +1 -1
  381. package/dist/vue3/recipes/leftbar/unread_pill/unread_pill.vue.js +1 -0
  382. package/dist/vue3/recipes/leftbar/unread_pill/unread_pill.vue.js.map +1 -1
  383. package/dist/vue3/recipes/notices/top_banner_info/top_banner_info.vue.cjs +1 -0
  384. package/dist/vue3/recipes/notices/top_banner_info/top_banner_info.vue.cjs.map +1 -1
  385. package/dist/vue3/recipes/notices/top_banner_info/top_banner_info.vue.js +1 -0
  386. package/dist/vue3/recipes/notices/top_banner_info/top_banner_info.vue.js.map +1 -1
  387. package/dist/vue3/types/components/avatar/avatar.vue.d.ts.map +1 -1
  388. package/dist/vue3/types/components/button/button.vue.d.ts.map +1 -1
  389. package/dist/vue3/types/components/card/card.vue.d.ts.map +1 -1
  390. package/dist/vue3/types/components/chip/chip.vue.d.ts.map +1 -1
  391. package/dist/vue3/types/components/combobox/combobox.vue.d.ts.map +1 -1
  392. package/dist/vue3/types/components/emoji_text_wrapper/emoji_text_wrapper.vue.d.ts.map +1 -1
  393. package/dist/vue3/types/components/input/input.vue.d.ts.map +1 -1
  394. package/dist/vue3/types/components/input_group/input_group.vue.d.ts.map +1 -1
  395. package/dist/vue3/types/components/item_layout/item_layout.vue.d.ts.map +1 -1
  396. package/dist/vue3/types/components/lazy_show/lazy_show.vue.d.ts.map +1 -1
  397. package/dist/vue3/types/components/modal/modal.vue.d.ts.map +1 -1
  398. package/dist/vue3/types/components/notice/notice_content.vue.d.ts.map +1 -1
  399. package/dist/vue3/types/components/notice/notice_icon.vue.d.ts.map +1 -1
  400. package/dist/vue3/types/components/popover/popover.vue.d.ts.map +1 -1
  401. package/dist/vue3/types/components/popover/popover_header_footer.vue.d.ts.map +1 -1
  402. package/dist/vue3/types/components/radio/radio.vue.d.ts.map +1 -1
  403. package/dist/vue3/types/components/rich_text_editor/rich_text_editor.vue.d.ts.map +1 -1
  404. package/dist/vue3/types/components/select_menu/select_menu.vue.d.ts.map +1 -1
  405. package/dist/vue3/types/components/toggle/toggle.vue.d.ts.map +1 -1
  406. package/dist/vue3/types/components/tooltip/tooltip.vue.d.ts.map +1 -1
  407. package/dist/vue3/types/components/validation_messages/validation_messages.vue.d.ts.map +1 -1
  408. package/dist/vue3/types/recipes/chips/grouped_chip/grouped_chip.vue.d.ts.map +1 -1
  409. package/dist/vue3/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts.map +1 -1
  410. package/dist/vue3/types/recipes/conversation_view/editor/editor.vue.d.ts +2 -0
  411. package/dist/vue3/types/recipes/conversation_view/message_input/message_input.vue.d.ts.map +1 -1
  412. package/dist/vue3/types/recipes/leftbar/general_row/general_row.vue.d.ts.map +1 -1
  413. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"select_menu.vue.cjs","sources":["../../../components/select_menu/select_menu.vue"],"sourcesContent":["<template>\n <div>\n <label>\n <div\n v-if=\"hasSlotContent($slots.label) || label\"\n :aria-details=\"labelAriaDetails\"\n :class=\"[\n 'd-label',\n LABEL_SIZE_MODIFIERS[size],\n labelClass,\n ]\"\n v-bind=\"labelChildProps\"\n data-qa=\"dt-select-label\"\n >\n <!-- @slot Slot for label, defaults to label prop -->\n <slot name=\"label\">{{ label }}</slot>\n </div>\n <div\n v-if=\"hasSlotContent($slots.description) || description\"\n :id=\"descriptionKey\"\n :class=\"[\n 'd-description',\n DESCRIPTION_SIZE_MODIFIERS[size],\n descriptionClass,\n ]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"dt-select-description\"\n >\n <!-- @slot Slot for description, defaults to description prop -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <div\n :class=\"[\n 'd-select',\n SELECT_SIZE_MODIFIERS[size],\n selectClass,\n { 'd-select--disabled': disabled },\n ]\"\n data-qa=\"dt-select-wrapper\"\n >\n <select\n ref=\"selectElement\"\n :class=\"[\n 'd-select__input',\n SELECT_STATE_MODIFIERS[state],\n ]\"\n v-bind=\"$attrs\"\n data-qa=\"dt-select\"\n :disabled=\"disabled\"\n v-on=\"selectListeners\"\n >\n <!-- @slot Slot for select menu options, defaults to options prop -->\n <slot>\n <option\n v-for=\"option in options\"\n :key=\"getOptionKey(option.value)\"\n :value=\"option.value\"\n :class=\"optionClass\"\n v-bind=\"optionChildProps\"\n >\n {{ option.label }}\n </option>\n </slot>\n </select>\n </div>\n </label>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-select-messages\"\n />\n </div>\n</template>\n\n<script>\nimport { warn } from 'vue';\nimport {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n} from '@/common/constants';\nimport {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n} from './select_menu_constants';\nimport {\n getUniqueString,\n getValidationState,\n hasSlotContent,\n} from '@/common/utils';\nimport { MessagesMixin } from '@/common/mixins/input';\nimport { optionsValidator } from './select_menu_validators.js';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * A select menu is an input control that allows users to choose one option from a list.\n * @property {Boolean} disabled attribute\n * @property {String} name attribute\n * @property {String} value attribute\n * @see https://dialtone.dialpad.com/components/select.html\n */\nexport default {\n name: 'DtSelectMenu',\n\n components: { DtValidationMessages },\n\n mixins: [MessagesMixin],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Label for the select\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Description for the select\n */\n description: {\n type: String,\n default: '',\n },\n\n /**\n * Select Menu Options, overridden by default slot. Each option has the following structure:\n * `{ index: number (optional), value: number || string (required), label: string (required) }`\n * @param {Object[]} options - Optional - A list that can be used to create a list of select menu options\n * @param {number} options[].index - Optional - The index of the option\n * @param {number|string} options[].value - Required - The option value\n * @param {string} options[].label - Required - The option Label\n */\n options: {\n type: Array,\n default: () => [],\n validator: options => optionsValidator(options),\n },\n\n /**\n * Controls the size of the select\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(SELECT_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 * Used to customize the description container\n */\n descriptionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the select\n */\n selectClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize each option, should options be provided via prop\n */\n optionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * A set of props that are passed into the label container\n */\n labelChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into the description container\n */\n descriptionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into each option, should options be provided via prop\n */\n optionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * Disabled state of the select\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {String | Number}\n */\n 'input',\n\n /**\n * Native change event\n *\n * @event change\n * @type {String | Number}\n */\n 'change',\n ],\n\n data () {\n return {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n hasSlotContent,\n };\n },\n\n computed: {\n selectListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through onto the input\n * element which will result in the handler being called twice (once on the select element and once by the\n * emitted input event by the change listener).\n */\n input: () => {},\n change: event => this.emitValue(event.target.value, event),\n };\n },\n\n state () {\n return getValidationState(this.formattedMessages);\n },\n\n selectKey () {\n return getUniqueString();\n },\n\n descriptionKey () {\n return `select-${this.selectKey}-description`;\n },\n\n labelAriaDetails () {\n if (this.$slots.description || this.description) {\n return this.descriptionKey;\n }\n\n return this.$attrs['aria-details'];\n },\n },\n\n watch: {\n // whenever question changes, this function will run\n options () {\n this.$nextTick(() => {\n this.emitValue(this.$refs.selectElement.value, null);\n });\n },\n },\n\n mounted () {\n this.emitValue(this.$refs.selectElement.value, null);\n this.validateOptionsPresence();\n },\n\n beforeUpdate () {\n this.validateOptionsPresence();\n },\n\n methods: {\n emitValue (value, event) {\n this.$emit('input', value, event);\n this.$emit('change', value, event);\n },\n\n getOptionKey (value) {\n return `select-${this.selectKey}-option-${value}`;\n },\n\n validateOptionsPresence () {\n if (this.options?.length < 1 && !this.$slots.default) {\n warn('Options are expected to be provided via prop or slot', this);\n }\n },\n },\n};\n</script>\n"],"names":["DtValidationMessages","MessagesMixin","optionsValidator","SELECT_SIZE_MODIFIERS","LABEL_SIZE_MODIFIERS","DESCRIPTION_SIZE_MODIFIERS","SELECT_STATE_MODIFIERS","hasSlotContent","getValidationState","getUniqueString","warn","_createElementBlock","_createElementVNode","_openBlock","_mergeProps","_renderSlot","_createTextVNode","_toDisplayString","_createCommentVNode","_normalizeClass","_toHandlers","_Fragment","_renderList","_createVNode"],"mappings":"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"}
1
+ {"version":3,"file":"select_menu.vue.cjs","sources":["../../../components/select_menu/select_menu.vue"],"sourcesContent":["<template>\n <div>\n <label>\n <div\n v-if=\"hasSlotContent($slots.label) || label\"\n :aria-details=\"labelAriaDetails\"\n :class=\"[\n 'd-label',\n LABEL_SIZE_MODIFIERS[size],\n labelClass,\n ]\"\n v-bind=\"labelChildProps\"\n data-qa=\"dt-select-label\"\n >\n <!-- @slot Slot for label, defaults to label prop -->\n <slot name=\"label\">{{ label }}</slot>\n </div>\n <div\n v-if=\"hasSlotContent($slots.description) || description\"\n :id=\"descriptionKey\"\n :class=\"[\n 'd-description',\n DESCRIPTION_SIZE_MODIFIERS[size],\n descriptionClass,\n ]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"dt-select-description\"\n >\n <!-- @slot Slot for description, defaults to description prop -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <div\n :class=\"[\n 'd-select',\n SELECT_SIZE_MODIFIERS[size],\n selectClass,\n { 'd-select--disabled': disabled },\n ]\"\n data-qa=\"dt-select-wrapper\"\n >\n <select\n ref=\"selectElement\"\n :class=\"[\n 'd-select__input',\n SELECT_STATE_MODIFIERS[state],\n ]\"\n v-bind=\"$attrs\"\n data-qa=\"dt-select\"\n :disabled=\"disabled\"\n v-on=\"selectListeners\"\n >\n <!-- @slot Slot for select menu options, defaults to options prop -->\n <slot>\n <option\n v-for=\"option in options\"\n :key=\"getOptionKey(option.value)\"\n :value=\"option.value\"\n :class=\"optionClass\"\n v-bind=\"optionChildProps\"\n >\n {{ option.label }}\n </option>\n </slot>\n </select>\n </div>\n </label>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-select-messages\"\n />\n </div>\n</template>\n\n<script>\nimport { warn } from 'vue';\nimport {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n} from '@/common/constants';\nimport {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n} from './select_menu_constants';\nimport {\n getUniqueString,\n getValidationState,\n hasSlotContent,\n} from '@/common/utils';\nimport { MessagesMixin } from '@/common/mixins/input';\nimport { optionsValidator } from './select_menu_validators.js';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * A select menu is an input control that allows users to choose one option from a list.\n * @property {Boolean} disabled attribute\n * @property {String} name attribute\n * @property {String} value attribute\n * @see https://dialtone.dialpad.com/components/select.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtSelectMenu',\n\n components: { DtValidationMessages },\n\n mixins: [MessagesMixin],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Label for the select\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Description for the select\n */\n description: {\n type: String,\n default: '',\n },\n\n /**\n * Select Menu Options, overridden by default slot. Each option has the following structure:\n * `{ index: number (optional), value: number || string (required), label: string (required) }`\n * @param {Object[]} options - Optional - A list that can be used to create a list of select menu options\n * @param {number} options[].index - Optional - The index of the option\n * @param {number|string} options[].value - Required - The option value\n * @param {string} options[].label - Required - The option Label\n */\n options: {\n type: Array,\n default: () => [],\n validator: options => optionsValidator(options),\n },\n\n /**\n * Controls the size of the select\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(SELECT_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 * Used to customize the description container\n */\n descriptionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the select\n */\n selectClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize each option, should options be provided via prop\n */\n optionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * A set of props that are passed into the label container\n */\n labelChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into the description container\n */\n descriptionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into each option, should options be provided via prop\n */\n optionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * Disabled state of the select\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {String | Number}\n */\n 'input',\n\n /**\n * Native change event\n *\n * @event change\n * @type {String | Number}\n */\n 'change',\n ],\n\n data () {\n return {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n hasSlotContent,\n };\n },\n\n computed: {\n selectListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through onto the input\n * element which will result in the handler being called twice (once on the select element and once by the\n * emitted input event by the change listener).\n */\n input: () => {},\n change: event => this.emitValue(event.target.value, event),\n };\n },\n\n state () {\n return getValidationState(this.formattedMessages);\n },\n\n selectKey () {\n return getUniqueString();\n },\n\n descriptionKey () {\n return `select-${this.selectKey}-description`;\n },\n\n labelAriaDetails () {\n if (this.$slots.description || this.description) {\n return this.descriptionKey;\n }\n\n return this.$attrs['aria-details'];\n },\n },\n\n watch: {\n // whenever question changes, this function will run\n options () {\n this.$nextTick(() => {\n this.emitValue(this.$refs.selectElement.value, null);\n });\n },\n },\n\n mounted () {\n this.emitValue(this.$refs.selectElement.value, null);\n this.validateOptionsPresence();\n },\n\n beforeUpdate () {\n this.validateOptionsPresence();\n },\n\n methods: {\n emitValue (value, event) {\n this.$emit('input', value, event);\n this.$emit('change', value, event);\n },\n\n getOptionKey (value) {\n return `select-${this.selectKey}-option-${value}`;\n },\n\n validateOptionsPresence () {\n if (this.options?.length < 1 && !this.$slots.default) {\n warn('Options are expected to be provided via prop or slot', this);\n }\n },\n },\n};\n</script>\n"],"names":["DtValidationMessages","MessagesMixin","optionsValidator","SELECT_SIZE_MODIFIERS","LABEL_SIZE_MODIFIERS","DESCRIPTION_SIZE_MODIFIERS","SELECT_STATE_MODIFIERS","hasSlotContent","getValidationState","getUniqueString","warn","_createElementBlock","_createElementVNode","_openBlock","_mergeProps","_renderSlot","_createTextVNode","_toDisplayString","_createCommentVNode","_normalizeClass","_toHandlers","_Fragment","_renderList","_createVNode"],"mappings":"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"}
@@ -7,6 +7,7 @@ import { optionsValidator } from "./select_menu_validators.js";
7
7
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
8
8
  import DtValidationMessages from "../validation_messages/validation_messages.vue.js";
9
9
  const _sfc_main = {
10
+ compatConfig: { MODE: 3 },
10
11
  name: "DtSelectMenu",
11
12
  components: { DtValidationMessages },
12
13
  mixins: [MessagesMixin],
@@ -1 +1 @@
1
- {"version":3,"file":"select_menu.vue.js","sources":["../../../components/select_menu/select_menu.vue"],"sourcesContent":["<template>\n <div>\n <label>\n <div\n v-if=\"hasSlotContent($slots.label) || label\"\n :aria-details=\"labelAriaDetails\"\n :class=\"[\n 'd-label',\n LABEL_SIZE_MODIFIERS[size],\n labelClass,\n ]\"\n v-bind=\"labelChildProps\"\n data-qa=\"dt-select-label\"\n >\n <!-- @slot Slot for label, defaults to label prop -->\n <slot name=\"label\">{{ label }}</slot>\n </div>\n <div\n v-if=\"hasSlotContent($slots.description) || description\"\n :id=\"descriptionKey\"\n :class=\"[\n 'd-description',\n DESCRIPTION_SIZE_MODIFIERS[size],\n descriptionClass,\n ]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"dt-select-description\"\n >\n <!-- @slot Slot for description, defaults to description prop -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <div\n :class=\"[\n 'd-select',\n SELECT_SIZE_MODIFIERS[size],\n selectClass,\n { 'd-select--disabled': disabled },\n ]\"\n data-qa=\"dt-select-wrapper\"\n >\n <select\n ref=\"selectElement\"\n :class=\"[\n 'd-select__input',\n SELECT_STATE_MODIFIERS[state],\n ]\"\n v-bind=\"$attrs\"\n data-qa=\"dt-select\"\n :disabled=\"disabled\"\n v-on=\"selectListeners\"\n >\n <!-- @slot Slot for select menu options, defaults to options prop -->\n <slot>\n <option\n v-for=\"option in options\"\n :key=\"getOptionKey(option.value)\"\n :value=\"option.value\"\n :class=\"optionClass\"\n v-bind=\"optionChildProps\"\n >\n {{ option.label }}\n </option>\n </slot>\n </select>\n </div>\n </label>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-select-messages\"\n />\n </div>\n</template>\n\n<script>\nimport { warn } from 'vue';\nimport {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n} from '@/common/constants';\nimport {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n} from './select_menu_constants';\nimport {\n getUniqueString,\n getValidationState,\n hasSlotContent,\n} from '@/common/utils';\nimport { MessagesMixin } from '@/common/mixins/input';\nimport { optionsValidator } from './select_menu_validators.js';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * A select menu is an input control that allows users to choose one option from a list.\n * @property {Boolean} disabled attribute\n * @property {String} name attribute\n * @property {String} value attribute\n * @see https://dialtone.dialpad.com/components/select.html\n */\nexport default {\n name: 'DtSelectMenu',\n\n components: { DtValidationMessages },\n\n mixins: [MessagesMixin],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Label for the select\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Description for the select\n */\n description: {\n type: String,\n default: '',\n },\n\n /**\n * Select Menu Options, overridden by default slot. Each option has the following structure:\n * `{ index: number (optional), value: number || string (required), label: string (required) }`\n * @param {Object[]} options - Optional - A list that can be used to create a list of select menu options\n * @param {number} options[].index - Optional - The index of the option\n * @param {number|string} options[].value - Required - The option value\n * @param {string} options[].label - Required - The option Label\n */\n options: {\n type: Array,\n default: () => [],\n validator: options => optionsValidator(options),\n },\n\n /**\n * Controls the size of the select\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(SELECT_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 * Used to customize the description container\n */\n descriptionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the select\n */\n selectClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize each option, should options be provided via prop\n */\n optionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * A set of props that are passed into the label container\n */\n labelChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into the description container\n */\n descriptionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into each option, should options be provided via prop\n */\n optionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * Disabled state of the select\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {String | Number}\n */\n 'input',\n\n /**\n * Native change event\n *\n * @event change\n * @type {String | Number}\n */\n 'change',\n ],\n\n data () {\n return {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n hasSlotContent,\n };\n },\n\n computed: {\n selectListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through onto the input\n * element which will result in the handler being called twice (once on the select element and once by the\n * emitted input event by the change listener).\n */\n input: () => {},\n change: event => this.emitValue(event.target.value, event),\n };\n },\n\n state () {\n return getValidationState(this.formattedMessages);\n },\n\n selectKey () {\n return getUniqueString();\n },\n\n descriptionKey () {\n return `select-${this.selectKey}-description`;\n },\n\n labelAriaDetails () {\n if (this.$slots.description || this.description) {\n return this.descriptionKey;\n }\n\n return this.$attrs['aria-details'];\n },\n },\n\n watch: {\n // whenever question changes, this function will run\n options () {\n this.$nextTick(() => {\n this.emitValue(this.$refs.selectElement.value, null);\n });\n },\n },\n\n mounted () {\n this.emitValue(this.$refs.selectElement.value, null);\n this.validateOptionsPresence();\n },\n\n beforeUpdate () {\n this.validateOptionsPresence();\n },\n\n methods: {\n emitValue (value, event) {\n this.$emit('input', value, event);\n this.$emit('change', value, event);\n },\n\n getOptionKey (value) {\n return `select-${this.selectKey}-option-${value}`;\n },\n\n validateOptionsPresence () {\n if (this.options?.length < 1 && !this.$slots.default) {\n warn('Options are expected to be provided via prop or slot', this);\n }\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_createElementVNode","_openBlock","_mergeProps","_renderSlot","_createTextVNode","_toDisplayString","_createCommentVNode","_normalizeClass","_toHandlers","_Fragment","_renderList","_createVNode"],"mappings":"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"}
1
+ {"version":3,"file":"select_menu.vue.js","sources":["../../../components/select_menu/select_menu.vue"],"sourcesContent":["<template>\n <div>\n <label>\n <div\n v-if=\"hasSlotContent($slots.label) || label\"\n :aria-details=\"labelAriaDetails\"\n :class=\"[\n 'd-label',\n LABEL_SIZE_MODIFIERS[size],\n labelClass,\n ]\"\n v-bind=\"labelChildProps\"\n data-qa=\"dt-select-label\"\n >\n <!-- @slot Slot for label, defaults to label prop -->\n <slot name=\"label\">{{ label }}</slot>\n </div>\n <div\n v-if=\"hasSlotContent($slots.description) || description\"\n :id=\"descriptionKey\"\n :class=\"[\n 'd-description',\n DESCRIPTION_SIZE_MODIFIERS[size],\n descriptionClass,\n ]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"dt-select-description\"\n >\n <!-- @slot Slot for description, defaults to description prop -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <div\n :class=\"[\n 'd-select',\n SELECT_SIZE_MODIFIERS[size],\n selectClass,\n { 'd-select--disabled': disabled },\n ]\"\n data-qa=\"dt-select-wrapper\"\n >\n <select\n ref=\"selectElement\"\n :class=\"[\n 'd-select__input',\n SELECT_STATE_MODIFIERS[state],\n ]\"\n v-bind=\"$attrs\"\n data-qa=\"dt-select\"\n :disabled=\"disabled\"\n v-on=\"selectListeners\"\n >\n <!-- @slot Slot for select menu options, defaults to options prop -->\n <slot>\n <option\n v-for=\"option in options\"\n :key=\"getOptionKey(option.value)\"\n :value=\"option.value\"\n :class=\"optionClass\"\n v-bind=\"optionChildProps\"\n >\n {{ option.label }}\n </option>\n </slot>\n </select>\n </div>\n </label>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-select-messages\"\n />\n </div>\n</template>\n\n<script>\nimport { warn } from 'vue';\nimport {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n} from '@/common/constants';\nimport {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n} from './select_menu_constants';\nimport {\n getUniqueString,\n getValidationState,\n hasSlotContent,\n} from '@/common/utils';\nimport { MessagesMixin } from '@/common/mixins/input';\nimport { optionsValidator } from './select_menu_validators.js';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * A select menu is an input control that allows users to choose one option from a list.\n * @property {Boolean} disabled attribute\n * @property {String} name attribute\n * @property {String} value attribute\n * @see https://dialtone.dialpad.com/components/select.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtSelectMenu',\n\n components: { DtValidationMessages },\n\n mixins: [MessagesMixin],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Label for the select\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Description for the select\n */\n description: {\n type: String,\n default: '',\n },\n\n /**\n * Select Menu Options, overridden by default slot. Each option has the following structure:\n * `{ index: number (optional), value: number || string (required), label: string (required) }`\n * @param {Object[]} options - Optional - A list that can be used to create a list of select menu options\n * @param {number} options[].index - Optional - The index of the option\n * @param {number|string} options[].value - Required - The option value\n * @param {string} options[].label - Required - The option Label\n */\n options: {\n type: Array,\n default: () => [],\n validator: options => optionsValidator(options),\n },\n\n /**\n * Controls the size of the select\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(SELECT_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 * Used to customize the description container\n */\n descriptionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the select\n */\n selectClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize each option, should options be provided via prop\n */\n optionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * A set of props that are passed into the label container\n */\n labelChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into the description container\n */\n descriptionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into each option, should options be provided via prop\n */\n optionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * Disabled state of the select\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {String | Number}\n */\n 'input',\n\n /**\n * Native change event\n *\n * @event change\n * @type {String | Number}\n */\n 'change',\n ],\n\n data () {\n return {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n hasSlotContent,\n };\n },\n\n computed: {\n selectListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through onto the input\n * element which will result in the handler being called twice (once on the select element and once by the\n * emitted input event by the change listener).\n */\n input: () => {},\n change: event => this.emitValue(event.target.value, event),\n };\n },\n\n state () {\n return getValidationState(this.formattedMessages);\n },\n\n selectKey () {\n return getUniqueString();\n },\n\n descriptionKey () {\n return `select-${this.selectKey}-description`;\n },\n\n labelAriaDetails () {\n if (this.$slots.description || this.description) {\n return this.descriptionKey;\n }\n\n return this.$attrs['aria-details'];\n },\n },\n\n watch: {\n // whenever question changes, this function will run\n options () {\n this.$nextTick(() => {\n this.emitValue(this.$refs.selectElement.value, null);\n });\n },\n },\n\n mounted () {\n this.emitValue(this.$refs.selectElement.value, null);\n this.validateOptionsPresence();\n },\n\n beforeUpdate () {\n this.validateOptionsPresence();\n },\n\n methods: {\n emitValue (value, event) {\n this.$emit('input', value, event);\n this.$emit('change', value, event);\n },\n\n getOptionKey (value) {\n return `select-${this.selectKey}-option-${value}`;\n },\n\n validateOptionsPresence () {\n if (this.options?.length < 1 && !this.$slots.default) {\n warn('Options are expected to be provided via prop or slot', this);\n }\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_createElementVNode","_openBlock","_mergeProps","_renderSlot","_createTextVNode","_toDisplayString","_createCommentVNode","_normalizeClass","_toHandlers","_Fragment","_renderList","_createVNode"],"mappings":"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"}
@@ -6,6 +6,7 @@ const skeletonParagraph = require("./skeleton-paragraph.vue.cjs");
6
6
  const vue = require("vue");
7
7
  const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helper.cjs");
8
8
  const _sfc_main = {
9
+ compatConfig: { MODE: 3 },
9
10
  name: "DtSkeletonListItem",
10
11
  components: {
11
12
  DtSkeletonShape: skeletonShape.default,
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton-list-item.vue.cjs","sources":["../../../components/skeleton/skeleton-list-item.vue"],"sourcesContent":["<template>\n <div\n data-qa=\"skeleton-list-item\"\n :class=\"[\n 'd-skeleton-list-item',\n {\n 'd-skeleton-list-item--single': paragraphs.rows === 1,\n },\n contentClass,\n ]\"\n >\n <dt-skeleton-shape\n class=\"d-skeleton-list-item__shape\"\n :size=\"shapeSize\"\n :shape=\"shape\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n :content-class=\"shapeClass\"\n />\n <div class=\"d-skeleton-list-item__paragraph-container\">\n <dt-skeleton-paragraph\n v-bind=\"paragraphs\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport { SKELETON_SHAPES } from './skeleton_constants';\nimport DtSkeletonShape from './skeleton-shape.vue';\nimport DtSkeletonParagraph from './skeleton-paragraph.vue';\n\nexport default {\n name: 'DtSkeletonListItem',\n\n components: {\n DtSkeletonShape,\n DtSkeletonParagraph,\n },\n\n props: {\n /**\n * Defines the shape of the skeleton, accepts circle or square.\n * @values circle, square\n */\n shape: {\n type: String,\n default: 'circle',\n validator: shape => Object.keys(SKELETON_SHAPES).includes(shape),\n },\n\n /**\n * Size of the shape\n * @values xs, sm, md, lg, xl\n */\n shapeSize: {\n type: String,\n default: 'md',\n },\n\n /**\n * Object containing quantity of paragraphs to display\n * and a randomWidth boolean.\n */\n paragraphs: {\n type: Object,\n default: () => ({ rows: 3, randomWidth: true }),\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: true,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n\n /**\n * Additional class name for the shape.\n */\n shapeClass: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the content.\n */\n contentClass: {\n type: String,\n default: '',\n },\n },\n};\n</script>\n"],"names":["DtSkeletonShape","DtSkeletonParagraph","SKELETON_SHAPES","_createElementBlock","_normalizeClass","_createVNode","_createElementVNode","_mergeProps"],"mappings":";;;;;;;AAoCA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,iBAAAA,cAAe;AAAA,IACf,qBAAAC,kBAAmB;AAAA,EACpB;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,WAAS,OAAO,KAAKC,mBAAAA,eAAe,EAAE,SAAS,KAAK;AAAA,IAChE;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS,OAAO,EAAE,MAAM,GAAG,aAAa,KAAG;AAAA,IAC5C;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUD,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AACH;AAnGS,MAAA,aAAA,EAAA,OAAM,4CAA2C;;;;0BAnBxDC,IA2BM,mBAAA,OAAA;AAAA,IA1BJ,WAAQ;AAAA,IACP,OAHLC,IAAAA,eAAA;AAAA;;QAG4F,gCAAA,OAAA,WAAW,SAAI;AAAA;MAAuB,OAAY;AAAA;;IAQ1IC,IAAAA,YAQE,8BAAA;AAAA,MAPA,OAAM;AAAA,MACL,MAAM,OAAS;AAAA,MACf,OAAO,OAAK;AAAA,MACZ,sBAAoB,OAAiB;AAAA,MACrC,SAAS,OAAO;AAAA,MAChB,QAAQ,OAAM;AAAA,MACd,iBAAe,OAAU;AAAA;IAE5BC,IAAA,mBAOM,OAPN,YAOM;AAAA,MANJD,IAAAA,YAKE,kCALFE,eACU,OAAU,YAAA;AAAA,QACjB,sBAAoB,OAAiB;AAAA,QACrC,SAAS,OAAO;AAAA,QAChB,QAAQ,OAAM;AAAA;;;;;;"}
1
+ {"version":3,"file":"skeleton-list-item.vue.cjs","sources":["../../../components/skeleton/skeleton-list-item.vue"],"sourcesContent":["<template>\n <div\n data-qa=\"skeleton-list-item\"\n :class=\"[\n 'd-skeleton-list-item',\n {\n 'd-skeleton-list-item--single': paragraphs.rows === 1,\n },\n contentClass,\n ]\"\n >\n <dt-skeleton-shape\n class=\"d-skeleton-list-item__shape\"\n :size=\"shapeSize\"\n :shape=\"shape\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n :content-class=\"shapeClass\"\n />\n <div class=\"d-skeleton-list-item__paragraph-container\">\n <dt-skeleton-paragraph\n v-bind=\"paragraphs\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport { SKELETON_SHAPES } from './skeleton_constants';\nimport DtSkeletonShape from './skeleton-shape.vue';\nimport DtSkeletonParagraph from './skeleton-paragraph.vue';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtSkeletonListItem',\n\n components: {\n DtSkeletonShape,\n DtSkeletonParagraph,\n },\n\n props: {\n /**\n * Defines the shape of the skeleton, accepts circle or square.\n * @values circle, square\n */\n shape: {\n type: String,\n default: 'circle',\n validator: shape => Object.keys(SKELETON_SHAPES).includes(shape),\n },\n\n /**\n * Size of the shape\n * @values xs, sm, md, lg, xl\n */\n shapeSize: {\n type: String,\n default: 'md',\n },\n\n /**\n * Object containing quantity of paragraphs to display\n * and a randomWidth boolean.\n */\n paragraphs: {\n type: Object,\n default: () => ({ rows: 3, randomWidth: true }),\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: true,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n\n /**\n * Additional class name for the shape.\n */\n shapeClass: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the content.\n */\n contentClass: {\n type: String,\n default: '',\n },\n },\n};\n</script>\n"],"names":["DtSkeletonShape","DtSkeletonParagraph","SKELETON_SHAPES","_createElementBlock","_normalizeClass","_createVNode","_createElementVNode","_mergeProps"],"mappings":";;;;;;;AAoCA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,iBAAAA,cAAe;AAAA,IACf,qBAAAC,kBAAmB;AAAA,EACpB;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,WAAS,OAAO,KAAKC,mBAAAA,eAAe,EAAE,SAAS,KAAK;AAAA,IAChE;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS,OAAO,EAAE,MAAM,GAAG,aAAa,KAAG;AAAA,IAC5C;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUD,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AACH;AApGS,MAAA,aAAA,EAAA,OAAM,4CAA2C;;;;0BAnBxDC,IA2BM,mBAAA,OAAA;AAAA,IA1BJ,WAAQ;AAAA,IACP,OAHLC,IAAAA,eAAA;AAAA;;QAG4F,gCAAA,OAAA,WAAW,SAAI;AAAA;MAAuB,OAAY;AAAA;;IAQ1IC,IAAAA,YAQE,8BAAA;AAAA,MAPA,OAAM;AAAA,MACL,MAAM,OAAS;AAAA,MACf,OAAO,OAAK;AAAA,MACZ,sBAAoB,OAAiB;AAAA,MACrC,SAAS,OAAO;AAAA,MAChB,QAAQ,OAAM;AAAA,MACd,iBAAe,OAAU;AAAA;IAE5BC,IAAA,mBAOM,OAPN,YAOM;AAAA,MANJD,IAAAA,YAKE,kCALFE,eACU,OAAU,YAAA;AAAA,QACjB,sBAAoB,OAAiB;AAAA,QACrC,SAAS,OAAO;AAAA,QAChB,QAAQ,OAAM;AAAA;;;;;;"}
@@ -4,6 +4,7 @@ import DtSkeletonParagraph from "./skeleton-paragraph.vue.js";
4
4
  import { resolveComponent, openBlock, createElementBlock, normalizeClass, createVNode, createElementVNode, mergeProps } from "vue";
5
5
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
6
6
  const _sfc_main = {
7
+ compatConfig: { MODE: 3 },
7
8
  name: "DtSkeletonListItem",
8
9
  components: {
9
10
  DtSkeletonShape,
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton-list-item.vue.js","sources":["../../../components/skeleton/skeleton-list-item.vue"],"sourcesContent":["<template>\n <div\n data-qa=\"skeleton-list-item\"\n :class=\"[\n 'd-skeleton-list-item',\n {\n 'd-skeleton-list-item--single': paragraphs.rows === 1,\n },\n contentClass,\n ]\"\n >\n <dt-skeleton-shape\n class=\"d-skeleton-list-item__shape\"\n :size=\"shapeSize\"\n :shape=\"shape\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n :content-class=\"shapeClass\"\n />\n <div class=\"d-skeleton-list-item__paragraph-container\">\n <dt-skeleton-paragraph\n v-bind=\"paragraphs\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport { SKELETON_SHAPES } from './skeleton_constants';\nimport DtSkeletonShape from './skeleton-shape.vue';\nimport DtSkeletonParagraph from './skeleton-paragraph.vue';\n\nexport default {\n name: 'DtSkeletonListItem',\n\n components: {\n DtSkeletonShape,\n DtSkeletonParagraph,\n },\n\n props: {\n /**\n * Defines the shape of the skeleton, accepts circle or square.\n * @values circle, square\n */\n shape: {\n type: String,\n default: 'circle',\n validator: shape => Object.keys(SKELETON_SHAPES).includes(shape),\n },\n\n /**\n * Size of the shape\n * @values xs, sm, md, lg, xl\n */\n shapeSize: {\n type: String,\n default: 'md',\n },\n\n /**\n * Object containing quantity of paragraphs to display\n * and a randomWidth boolean.\n */\n paragraphs: {\n type: Object,\n default: () => ({ rows: 3, randomWidth: true }),\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: true,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n\n /**\n * Additional class name for the shape.\n */\n shapeClass: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the content.\n */\n contentClass: {\n type: String,\n default: '',\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_createVNode","_createElementVNode","_mergeProps"],"mappings":";;;;;AAoCA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,YAAY;AAAA,IACV;AAAA,IACA;AAAA,EACD;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,WAAS,OAAO,KAAK,eAAe,EAAE,SAAS,KAAK;AAAA,IAChE;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS,OAAO,EAAE,MAAM,GAAG,aAAa,KAAG;AAAA,IAC5C;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUD,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AACH;AAnGS,MAAA,aAAA,EAAA,OAAM,4CAA2C;;;;sBAnBxDA,mBA2BM,OAAA;AAAA,IA1BJ,WAAQ;AAAA,IACP,OAHLC,eAAA;AAAA;;QAG4F,gCAAA,OAAA,WAAW,SAAI;AAAA;MAAuB,OAAY;AAAA;;IAQ1IC,YAQE,8BAAA;AAAA,MAPA,OAAM;AAAA,MACL,MAAM,OAAS;AAAA,MACf,OAAO,OAAK;AAAA,MACZ,sBAAoB,OAAiB;AAAA,MACrC,SAAS,OAAO;AAAA,MAChB,QAAQ,OAAM;AAAA,MACd,iBAAe,OAAU;AAAA;IAE5BC,mBAOM,OAPN,YAOM;AAAA,MANJD,YAKE,kCALFE,WACU,OAAU,YAAA;AAAA,QACjB,sBAAoB,OAAiB;AAAA,QACrC,SAAS,OAAO;AAAA,QAChB,QAAQ,OAAM;AAAA;;;;;"}
1
+ {"version":3,"file":"skeleton-list-item.vue.js","sources":["../../../components/skeleton/skeleton-list-item.vue"],"sourcesContent":["<template>\n <div\n data-qa=\"skeleton-list-item\"\n :class=\"[\n 'd-skeleton-list-item',\n {\n 'd-skeleton-list-item--single': paragraphs.rows === 1,\n },\n contentClass,\n ]\"\n >\n <dt-skeleton-shape\n class=\"d-skeleton-list-item__shape\"\n :size=\"shapeSize\"\n :shape=\"shape\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n :content-class=\"shapeClass\"\n />\n <div class=\"d-skeleton-list-item__paragraph-container\">\n <dt-skeleton-paragraph\n v-bind=\"paragraphs\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport { SKELETON_SHAPES } from './skeleton_constants';\nimport DtSkeletonShape from './skeleton-shape.vue';\nimport DtSkeletonParagraph from './skeleton-paragraph.vue';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtSkeletonListItem',\n\n components: {\n DtSkeletonShape,\n DtSkeletonParagraph,\n },\n\n props: {\n /**\n * Defines the shape of the skeleton, accepts circle or square.\n * @values circle, square\n */\n shape: {\n type: String,\n default: 'circle',\n validator: shape => Object.keys(SKELETON_SHAPES).includes(shape),\n },\n\n /**\n * Size of the shape\n * @values xs, sm, md, lg, xl\n */\n shapeSize: {\n type: String,\n default: 'md',\n },\n\n /**\n * Object containing quantity of paragraphs to display\n * and a randomWidth boolean.\n */\n paragraphs: {\n type: Object,\n default: () => ({ rows: 3, randomWidth: true }),\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: true,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n\n /**\n * Additional class name for the shape.\n */\n shapeClass: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the content.\n */\n contentClass: {\n type: String,\n default: '',\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_createVNode","_createElementVNode","_mergeProps"],"mappings":";;;;;AAoCA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EAEN,YAAY;AAAA,IACV;AAAA,IACA;AAAA,EACD;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,WAAS,OAAO,KAAK,eAAe,EAAE,SAAS,KAAK;AAAA,IAChE;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS,OAAO,EAAE,MAAM,GAAG,aAAa,KAAG;AAAA,IAC5C;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUD,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AACH;AApGS,MAAA,aAAA,EAAA,OAAM,4CAA2C;;;;sBAnBxDA,mBA2BM,OAAA;AAAA,IA1BJ,WAAQ;AAAA,IACP,OAHLC,eAAA;AAAA;;QAG4F,gCAAA,OAAA,WAAW,SAAI;AAAA;MAAuB,OAAY;AAAA;;IAQ1IC,YAQE,8BAAA;AAAA,MAPA,OAAM;AAAA,MACL,MAAM,OAAS;AAAA,MACf,OAAO,OAAK;AAAA,MACZ,sBAAoB,OAAiB;AAAA,MACrC,SAAS,OAAO;AAAA,MAChB,QAAQ,OAAM;AAAA,MACd,iBAAe,OAAU;AAAA;IAE5BC,mBAOM,OAPN,YAOM;AAAA,MANJD,YAKE,kCALFE,WACU,OAAU,YAAA;AAAA,QACjB,sBAAoB,OAAiB;AAAA,QACrC,SAAS,OAAO;AAAA,QAChB,QAAQ,OAAM;AAAA;;;;;"}
@@ -5,6 +5,7 @@ const vue = require("vue");
5
5
  const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helper.cjs");
6
6
  const validator = (number) => number !== "" && !Number.isNaN(Number(number));
7
7
  const _sfc_main = {
8
+ compatConfig: { MODE: 3 },
8
9
  name: "DtSkeletonParagraph",
9
10
  components: {
10
11
  DtSkeletonText: skeletonText.default
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton-paragraph.vue.cjs","sources":["../../../components/skeleton/skeleton-paragraph.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'd-skeleton-paragraph',\n contentClass,\n ]\"\n contentClass\n data-qa=\"skeleton-paragraph\"\n >\n <dt-skeleton-text\n v-for=\"row in integerRows\"\n :key=\"row\"\n data-qa=\"skeleton-paragraph-row\"\n :content-class=\"rowClass\"\n :animate=\"animate\"\n :offset=\"offset\"\n :animation-duration=\"animationDuration\"\n :width=\"getSizeParagraphRow(row)\"\n />\n </div>\n</template>\n\n<script>\nimport DtSkeletonText from './skeleton-text.vue';\n\nconst validator = number => number !== '' && !Number.isNaN(Number(number));\nexport default {\n name: 'DtSkeletonParagraph',\n components: {\n DtSkeletonText,\n },\n\n props: {\n /**\n * Quantity of rows to display\n */\n rows: {\n type: [Number, String],\n default: 3,\n validator,\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Controls the min width of paragraphs\n */\n minWidth: {\n type: [Number, String],\n default: 30,\n validator,\n },\n\n /**\n * Controls the max width of paragraphs\n */\n maxWidth: {\n type: [Number, String],\n default: 100,\n validator,\n },\n\n /**\n * Controls the width of paragraphs\n */\n width: {\n type: [String, Array],\n default: null,\n },\n\n /**\n * If true, row widths will be random\n * @values true, false\n */\n randomWidth: {\n type: Boolean,\n default: false,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * Additional class name for the content.\n */\n contentClass: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the row.\n */\n rowClass: {\n type: String,\n default: '',\n },\n },\n\n computed: {\n integerRows () {\n return Number(this.rows);\n },\n },\n\n methods: {\n randomWidthPercentage () {\n const min = Math.min(this.minWidth, this.maxWidth);\n const max = Math.max(this.minWidth, this.maxWidth);\n return `${Math.round(Math.random() * (max - min)) + min}%`;\n },\n\n getSizeParagraphRow (row) {\n const paragraphWidth = this.width;\n const isArrayWidth = Array.isArray(paragraphWidth);\n const currentWidth = paragraphWidth?.[row - 1];\n const isLastRow = row === this.rows;\n\n if (this.randomWidth) {\n return this.randomWidthPercentage();\n }\n\n if (paragraphWidth && !isArrayWidth) {\n return paragraphWidth;\n }\n\n if (paragraphWidth && isArrayWidth && currentWidth) {\n return currentWidth;\n }\n\n return isLastRow ? '38%' : '100%';\n },\n },\n};\n</script>\n"],"names":["DtSkeletonText","_createElementBlock","_normalizeClass","_openBlock","_Fragment","_renderList","_createBlock"],"mappings":";;;;;AAyBA,MAAM,YAAY,YAAU,WAAW,MAAM,CAAC,OAAO,MAAM,OAAO,MAAM,CAAC;AACzE,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EACN,YAAY;AAAA,IACV,gBAAAA,aAAc;AAAA,EACf;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,MAAM;AAAA,MACJ,MAAM,CAAC,QAAQ,MAAM;AAAA,MACrB,SAAS;AAAA,MACT;AAAA,IACD;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,MAAM,CAAC,QAAQ,MAAM;AAAA,MACrB,SAAS;AAAA,MACT;AAAA,IACD;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,MAAM,CAAC,QAAQ,MAAM;AAAA,MACrB,SAAS;AAAA,MACT;AAAA,IACD;AAAA;AAAA;AAAA;AAAA,IAKD,OAAO;AAAA,MACL,MAAM,CAAC,QAAQ,KAAK;AAAA,MACpB,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUD,QAAQ;AAAA,MACN,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,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,UAAU;AAAA,IACR,cAAe;AACb,aAAO,OAAO,KAAK,IAAI;AAAA,IACxB;AAAA,EACF;AAAA,EAED,SAAS;AAAA,IACP,wBAAyB;AACvB,YAAM,MAAM,KAAK,IAAI,KAAK,UAAU,KAAK,QAAQ;AACjD,YAAM,MAAM,KAAK,IAAI,KAAK,UAAU,KAAK,QAAQ;AACjD,aAAO,GAAG,KAAK,MAAM,KAAK,OAAM,KAAM,MAAM,IAAI,IAAI,GAAG;AAAA,IACxD;AAAA,IAED,oBAAqB,KAAK;AACxB,YAAM,iBAAiB,KAAK;AAC5B,YAAM,eAAe,MAAM,QAAQ,cAAc;AACjD,YAAM,eAAe,iDAAiB,MAAM;AAC5C,YAAM,YAAY,QAAQ,KAAK;AAE/B,UAAI,KAAK,aAAa;AACpB,eAAO,KAAK;MACd;AAEA,UAAI,kBAAkB,CAAC,cAAc;AACnC,eAAO;AAAA,MACT;AAEA,UAAI,kBAAkB,gBAAgB,cAAc;AAClD,eAAO;AAAA,MACT;AAEA,aAAO,YAAY,QAAQ;AAAA,IAC5B;AAAA,EACF;AACH;;;0BA7JEC,IAkBM,mBAAA,OAAA;AAAA,IAjBH,OAFLC,IAAAA,eAAA;AAAA;MAEkD,OAAY;AAAA;IAI1D,cAAA;AAAA,IACA,WAAQ;AAAA;KAERC,cAAA,IAAA,GAAAF,IAAAA,mBASEG,IAlBN,UAAA,MAAAC,IAAAA,WAUoB,SAAW,aAV/B,CAUa,QAAG;8BADZC,IASE,YAAA,6BAAA;AAAA,QAPC,KAAK;AAAA,QACN,WAAQ;AAAA,QACP,iBAAe,OAAQ;AAAA,QACvB,SAAS,OAAO;AAAA,QAChB,QAAQ,OAAM;AAAA,QACd,sBAAoB,OAAiB;AAAA,QACrC,OAAO,SAAmB,oBAAC,GAAG;AAAA;;;;;;"}
1
+ {"version":3,"file":"skeleton-paragraph.vue.cjs","sources":["../../../components/skeleton/skeleton-paragraph.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'd-skeleton-paragraph',\n contentClass,\n ]\"\n contentClass\n data-qa=\"skeleton-paragraph\"\n >\n <dt-skeleton-text\n v-for=\"row in integerRows\"\n :key=\"row\"\n data-qa=\"skeleton-paragraph-row\"\n :content-class=\"rowClass\"\n :animate=\"animate\"\n :offset=\"offset\"\n :animation-duration=\"animationDuration\"\n :width=\"getSizeParagraphRow(row)\"\n />\n </div>\n</template>\n\n<script>\nimport DtSkeletonText from './skeleton-text.vue';\n\nconst validator = number => number !== '' && !Number.isNaN(Number(number));\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtSkeletonParagraph',\n components: {\n DtSkeletonText,\n },\n\n props: {\n /**\n * Quantity of rows to display\n */\n rows: {\n type: [Number, String],\n default: 3,\n validator,\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Controls the min width of paragraphs\n */\n minWidth: {\n type: [Number, String],\n default: 30,\n validator,\n },\n\n /**\n * Controls the max width of paragraphs\n */\n maxWidth: {\n type: [Number, String],\n default: 100,\n validator,\n },\n\n /**\n * Controls the width of paragraphs\n */\n width: {\n type: [String, Array],\n default: null,\n },\n\n /**\n * If true, row widths will be random\n * @values true, false\n */\n randomWidth: {\n type: Boolean,\n default: false,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * Additional class name for the content.\n */\n contentClass: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the row.\n */\n rowClass: {\n type: String,\n default: '',\n },\n },\n\n computed: {\n integerRows () {\n return Number(this.rows);\n },\n },\n\n methods: {\n randomWidthPercentage () {\n const min = Math.min(this.minWidth, this.maxWidth);\n const max = Math.max(this.minWidth, this.maxWidth);\n return `${Math.round(Math.random() * (max - min)) + min}%`;\n },\n\n getSizeParagraphRow (row) {\n const paragraphWidth = this.width;\n const isArrayWidth = Array.isArray(paragraphWidth);\n const currentWidth = paragraphWidth?.[row - 1];\n const isLastRow = row === this.rows;\n\n if (this.randomWidth) {\n return this.randomWidthPercentage();\n }\n\n if (paragraphWidth && !isArrayWidth) {\n return paragraphWidth;\n }\n\n if (paragraphWidth && isArrayWidth && currentWidth) {\n return currentWidth;\n }\n\n return isLastRow ? '38%' : '100%';\n },\n },\n};\n</script>\n"],"names":["DtSkeletonText","_createElementBlock","_normalizeClass","_openBlock","_Fragment","_renderList","_createBlock"],"mappings":";;;;;AAyBA,MAAM,YAAY,YAAU,WAAW,MAAM,CAAC,OAAO,MAAM,OAAO,MAAM,CAAC;AACzE,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EACN,YAAY;AAAA,IACV,gBAAAA,aAAc;AAAA,EACf;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,MAAM;AAAA,MACJ,MAAM,CAAC,QAAQ,MAAM;AAAA,MACrB,SAAS;AAAA,MACT;AAAA,IACD;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,MAAM,CAAC,QAAQ,MAAM;AAAA,MACrB,SAAS;AAAA,MACT;AAAA,IACD;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,MAAM,CAAC,QAAQ,MAAM;AAAA,MACrB,SAAS;AAAA,MACT;AAAA,IACD;AAAA;AAAA;AAAA;AAAA,IAKD,OAAO;AAAA,MACL,MAAM,CAAC,QAAQ,KAAK;AAAA,MACpB,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUD,QAAQ;AAAA,MACN,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,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,UAAU;AAAA,IACR,cAAe;AACb,aAAO,OAAO,KAAK,IAAI;AAAA,IACxB;AAAA,EACF;AAAA,EAED,SAAS;AAAA,IACP,wBAAyB;AACvB,YAAM,MAAM,KAAK,IAAI,KAAK,UAAU,KAAK,QAAQ;AACjD,YAAM,MAAM,KAAK,IAAI,KAAK,UAAU,KAAK,QAAQ;AACjD,aAAO,GAAG,KAAK,MAAM,KAAK,OAAM,KAAM,MAAM,IAAI,IAAI,GAAG;AAAA,IACxD;AAAA,IAED,oBAAqB,KAAK;AACxB,YAAM,iBAAiB,KAAK;AAC5B,YAAM,eAAe,MAAM,QAAQ,cAAc;AACjD,YAAM,eAAe,iDAAiB,MAAM;AAC5C,YAAM,YAAY,QAAQ,KAAK;AAE/B,UAAI,KAAK,aAAa;AACpB,eAAO,KAAK;MACd;AAEA,UAAI,kBAAkB,CAAC,cAAc;AACnC,eAAO;AAAA,MACT;AAEA,UAAI,kBAAkB,gBAAgB,cAAc;AAClD,eAAO;AAAA,MACT;AAEA,aAAO,YAAY,QAAQ;AAAA,IAC5B;AAAA,EACF;AACH;;;0BA9JEC,IAkBM,mBAAA,OAAA;AAAA,IAjBH,OAFLC,IAAAA,eAAA;AAAA;MAEkD,OAAY;AAAA;IAI1D,cAAA;AAAA,IACA,WAAQ;AAAA;KAERC,cAAA,IAAA,GAAAF,IAAAA,mBASEG,IAlBN,UAAA,MAAAC,IAAAA,WAUoB,SAAW,aAV/B,CAUa,QAAG;8BADZC,IASE,YAAA,6BAAA;AAAA,QAPC,KAAK;AAAA,QACN,WAAQ;AAAA,QACP,iBAAe,OAAQ;AAAA,QACvB,SAAS,OAAO;AAAA,QAChB,QAAQ,OAAM;AAAA,QACd,sBAAoB,OAAiB;AAAA,QACrC,OAAO,SAAmB,oBAAC,GAAG;AAAA;;;;;;"}
@@ -3,6 +3,7 @@ import { resolveComponent, openBlock, createElementBlock, normalizeClass, Fragme
3
3
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
4
4
  const validator = (number) => number !== "" && !Number.isNaN(Number(number));
5
5
  const _sfc_main = {
6
+ compatConfig: { MODE: 3 },
6
7
  name: "DtSkeletonParagraph",
7
8
  components: {
8
9
  DtSkeletonText
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton-paragraph.vue.js","sources":["../../../components/skeleton/skeleton-paragraph.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'd-skeleton-paragraph',\n contentClass,\n ]\"\n contentClass\n data-qa=\"skeleton-paragraph\"\n >\n <dt-skeleton-text\n v-for=\"row in integerRows\"\n :key=\"row\"\n data-qa=\"skeleton-paragraph-row\"\n :content-class=\"rowClass\"\n :animate=\"animate\"\n :offset=\"offset\"\n :animation-duration=\"animationDuration\"\n :width=\"getSizeParagraphRow(row)\"\n />\n </div>\n</template>\n\n<script>\nimport DtSkeletonText from './skeleton-text.vue';\n\nconst validator = number => number !== '' && !Number.isNaN(Number(number));\nexport default {\n name: 'DtSkeletonParagraph',\n components: {\n DtSkeletonText,\n },\n\n props: {\n /**\n * Quantity of rows to display\n */\n rows: {\n type: [Number, String],\n default: 3,\n validator,\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Controls the min width of paragraphs\n */\n minWidth: {\n type: [Number, String],\n default: 30,\n validator,\n },\n\n /**\n * Controls the max width of paragraphs\n */\n maxWidth: {\n type: [Number, String],\n default: 100,\n validator,\n },\n\n /**\n * Controls the width of paragraphs\n */\n width: {\n type: [String, Array],\n default: null,\n },\n\n /**\n * If true, row widths will be random\n * @values true, false\n */\n randomWidth: {\n type: Boolean,\n default: false,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * Additional class name for the content.\n */\n contentClass: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the row.\n */\n rowClass: {\n type: String,\n default: '',\n },\n },\n\n computed: {\n integerRows () {\n return Number(this.rows);\n },\n },\n\n methods: {\n randomWidthPercentage () {\n const min = Math.min(this.minWidth, this.maxWidth);\n const max = Math.max(this.minWidth, this.maxWidth);\n return `${Math.round(Math.random() * (max - min)) + min}%`;\n },\n\n getSizeParagraphRow (row) {\n const paragraphWidth = this.width;\n const isArrayWidth = Array.isArray(paragraphWidth);\n const currentWidth = paragraphWidth?.[row - 1];\n const isLastRow = row === this.rows;\n\n if (this.randomWidth) {\n return this.randomWidthPercentage();\n }\n\n if (paragraphWidth && !isArrayWidth) {\n return paragraphWidth;\n }\n\n if (paragraphWidth && isArrayWidth && currentWidth) {\n return currentWidth;\n }\n\n return isLastRow ? '38%' : '100%';\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_openBlock","_Fragment","_renderList","_createBlock"],"mappings":";;;AAyBA,MAAM,YAAY,YAAU,WAAW,MAAM,CAAC,OAAO,MAAM,OAAO,MAAM,CAAC;AACzE,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA,EACD;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,MAAM;AAAA,MACJ,MAAM,CAAC,QAAQ,MAAM;AAAA,MACrB,SAAS;AAAA,MACT;AAAA,IACD;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,MAAM,CAAC,QAAQ,MAAM;AAAA,MACrB,SAAS;AAAA,MACT;AAAA,IACD;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,MAAM,CAAC,QAAQ,MAAM;AAAA,MACrB,SAAS;AAAA,MACT;AAAA,IACD;AAAA;AAAA;AAAA;AAAA,IAKD,OAAO;AAAA,MACL,MAAM,CAAC,QAAQ,KAAK;AAAA,MACpB,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUD,QAAQ;AAAA,MACN,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,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,UAAU;AAAA,IACR,cAAe;AACb,aAAO,OAAO,KAAK,IAAI;AAAA,IACxB;AAAA,EACF;AAAA,EAED,SAAS;AAAA,IACP,wBAAyB;AACvB,YAAM,MAAM,KAAK,IAAI,KAAK,UAAU,KAAK,QAAQ;AACjD,YAAM,MAAM,KAAK,IAAI,KAAK,UAAU,KAAK,QAAQ;AACjD,aAAO,GAAG,KAAK,MAAM,KAAK,OAAM,KAAM,MAAM,IAAI,IAAI,GAAG;AAAA,IACxD;AAAA,IAED,oBAAqB,KAAK;AACxB,YAAM,iBAAiB,KAAK;AAC5B,YAAM,eAAe,MAAM,QAAQ,cAAc;AACjD,YAAM,eAAe,iDAAiB,MAAM;AAC5C,YAAM,YAAY,QAAQ,KAAK;AAE/B,UAAI,KAAK,aAAa;AACpB,eAAO,KAAK;MACd;AAEA,UAAI,kBAAkB,CAAC,cAAc;AACnC,eAAO;AAAA,MACT;AAEA,UAAI,kBAAkB,gBAAgB,cAAc;AAClD,eAAO;AAAA,MACT;AAEA,aAAO,YAAY,QAAQ;AAAA,IAC5B;AAAA,EACF;AACH;;;sBA7JEA,mBAkBM,OAAA;AAAA,IAjBH,OAFLC,eAAA;AAAA;MAEkD,OAAY;AAAA;IAI1D,cAAA;AAAA,IACA,WAAQ;AAAA;KAERC,UAAA,IAAA,GAAAF,mBASEG,UAlBN,MAAAC,WAUoB,SAAW,aAV/B,CAUa,QAAG;0BADZC,YASE,6BAAA;AAAA,QAPC,KAAK;AAAA,QACN,WAAQ;AAAA,QACP,iBAAe,OAAQ;AAAA,QACvB,SAAS,OAAO;AAAA,QAChB,QAAQ,OAAM;AAAA,QACd,sBAAoB,OAAiB;AAAA,QACrC,OAAO,SAAmB,oBAAC,GAAG;AAAA;;;;;"}
1
+ {"version":3,"file":"skeleton-paragraph.vue.js","sources":["../../../components/skeleton/skeleton-paragraph.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n 'd-skeleton-paragraph',\n contentClass,\n ]\"\n contentClass\n data-qa=\"skeleton-paragraph\"\n >\n <dt-skeleton-text\n v-for=\"row in integerRows\"\n :key=\"row\"\n data-qa=\"skeleton-paragraph-row\"\n :content-class=\"rowClass\"\n :animate=\"animate\"\n :offset=\"offset\"\n :animation-duration=\"animationDuration\"\n :width=\"getSizeParagraphRow(row)\"\n />\n </div>\n</template>\n\n<script>\nimport DtSkeletonText from './skeleton-text.vue';\n\nconst validator = number => number !== '' && !Number.isNaN(Number(number));\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtSkeletonParagraph',\n components: {\n DtSkeletonText,\n },\n\n props: {\n /**\n * Quantity of rows to display\n */\n rows: {\n type: [Number, String],\n default: 3,\n validator,\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Controls the min width of paragraphs\n */\n minWidth: {\n type: [Number, String],\n default: 30,\n validator,\n },\n\n /**\n * Controls the max width of paragraphs\n */\n maxWidth: {\n type: [Number, String],\n default: 100,\n validator,\n },\n\n /**\n * Controls the width of paragraphs\n */\n width: {\n type: [String, Array],\n default: null,\n },\n\n /**\n * If true, row widths will be random\n * @values true, false\n */\n randomWidth: {\n type: Boolean,\n default: false,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * Additional class name for the content.\n */\n contentClass: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the row.\n */\n rowClass: {\n type: String,\n default: '',\n },\n },\n\n computed: {\n integerRows () {\n return Number(this.rows);\n },\n },\n\n methods: {\n randomWidthPercentage () {\n const min = Math.min(this.minWidth, this.maxWidth);\n const max = Math.max(this.minWidth, this.maxWidth);\n return `${Math.round(Math.random() * (max - min)) + min}%`;\n },\n\n getSizeParagraphRow (row) {\n const paragraphWidth = this.width;\n const isArrayWidth = Array.isArray(paragraphWidth);\n const currentWidth = paragraphWidth?.[row - 1];\n const isLastRow = row === this.rows;\n\n if (this.randomWidth) {\n return this.randomWidthPercentage();\n }\n\n if (paragraphWidth && !isArrayWidth) {\n return paragraphWidth;\n }\n\n if (paragraphWidth && isArrayWidth && currentWidth) {\n return currentWidth;\n }\n\n return isLastRow ? '38%' : '100%';\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_openBlock","_Fragment","_renderList","_createBlock"],"mappings":";;;AAyBA,MAAM,YAAY,YAAU,WAAW,MAAM,CAAC,OAAO,MAAM,OAAO,MAAM,CAAC;AACzE,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA,EACD;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,MAAM;AAAA,MACJ,MAAM,CAAC,QAAQ,MAAM;AAAA,MACrB,SAAS;AAAA,MACT;AAAA,IACD;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,MAAM,CAAC,QAAQ,MAAM;AAAA,MACrB,SAAS;AAAA,MACT;AAAA,IACD;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,MAAM,CAAC,QAAQ,MAAM;AAAA,MACrB,SAAS;AAAA,MACT;AAAA,IACD;AAAA;AAAA;AAAA;AAAA,IAKD,OAAO;AAAA,MACL,MAAM,CAAC,QAAQ,KAAK;AAAA,MACpB,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUD,QAAQ;AAAA,MACN,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,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,UAAU;AAAA,IACR,cAAe;AACb,aAAO,OAAO,KAAK,IAAI;AAAA,IACxB;AAAA,EACF;AAAA,EAED,SAAS;AAAA,IACP,wBAAyB;AACvB,YAAM,MAAM,KAAK,IAAI,KAAK,UAAU,KAAK,QAAQ;AACjD,YAAM,MAAM,KAAK,IAAI,KAAK,UAAU,KAAK,QAAQ;AACjD,aAAO,GAAG,KAAK,MAAM,KAAK,OAAM,KAAM,MAAM,IAAI,IAAI,GAAG;AAAA,IACxD;AAAA,IAED,oBAAqB,KAAK;AACxB,YAAM,iBAAiB,KAAK;AAC5B,YAAM,eAAe,MAAM,QAAQ,cAAc;AACjD,YAAM,eAAe,iDAAiB,MAAM;AAC5C,YAAM,YAAY,QAAQ,KAAK;AAE/B,UAAI,KAAK,aAAa;AACpB,eAAO,KAAK;MACd;AAEA,UAAI,kBAAkB,CAAC,cAAc;AACnC,eAAO;AAAA,MACT;AAEA,UAAI,kBAAkB,gBAAgB,cAAc;AAClD,eAAO;AAAA,MACT;AAEA,aAAO,YAAY,QAAQ;AAAA,IAC5B;AAAA,EACF;AACH;;;sBA9JEA,mBAkBM,OAAA;AAAA,IAjBH,OAFLC,eAAA;AAAA;MAEkD,OAAY;AAAA;IAI1D,cAAA;AAAA,IACA,WAAQ;AAAA;KAERC,UAAA,IAAA,GAAAF,mBASEG,UAlBN,MAAAC,WAUoB,SAAW,aAV/B,CAUa,QAAG;0BADZC,YASE,6BAAA;AAAA,QAPC,KAAK;AAAA,QACN,WAAQ;AAAA,QACP,iBAAe,OAAQ;AAAA,QACvB,SAAS,OAAO;AAAA,QAChB,QAAQ,OAAM;AAAA,QACd,sBAAoB,OAAiB;AAAA,QACrC,OAAO,SAAmB,oBAAC,GAAG;AAAA;;;;;"}
@@ -5,6 +5,7 @@ const skeleton_constants = require("./skeleton_constants.cjs");
5
5
  const vue = require("vue");
6
6
  const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helper.cjs");
7
7
  const _sfc_main = {
8
+ compatConfig: { MODE: 3 },
8
9
  name: "DtSkeletonShape",
9
10
  mixins: [skeleton.default],
10
11
  props: {
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton-shape.vue.cjs","sources":["../../../components/skeleton/skeleton-shape.vue"],"sourcesContent":["<template>\n <div\n ref=\"skeleton\"\n data-qa=\"skeleton-shape\"\n :class=\"[\n 'd-skeleton-placeholder',\n SKELETON_SHAPES[shape],\n {\n 'd-skeleton-placeholder--animate': animate,\n },\n contentClass,\n ]\"\n :style=\"shapeStyles\"\n />\n</template>\n\n<script>\nimport SkeletonAnimation from '@/common/mixins/skeleton';\nimport {\n SKELETON_SHAPES,\n SKELETON_SHAPE_SIZES,\n} from './skeleton_constants';\n\nexport default {\n name: 'DtSkeletonShape',\n\n mixins: [SkeletonAnimation],\n\n props: {\n /**\n * Defines the shape of the skeleton, accepts circle or square.\n * @values circle, square\n */\n shape: {\n type: String,\n default: 'circle',\n validator: shape => Object.keys(SKELETON_SHAPES).includes(shape),\n },\n\n /**\n * Size of the shape\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: true,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n\n /**\n * Additional class name for the content.\n */\n contentClass: {\n type: [String, Object, Array],\n default: '',\n },\n },\n\n data () {\n return {\n SKELETON_SHAPES,\n };\n },\n\n computed: {\n shapeStyles () {\n const size = SKELETON_SHAPE_SIZES[this.size] || this.size;\n return {\n ...this.skeletonStyle,\n 'min-width': size,\n 'max-width': size,\n 'min-height': size,\n 'max-height': size,\n };\n },\n },\n};\n</script>\n"],"names":["SkeletonAnimation","SKELETON_SHAPES","SKELETON_SHAPE_SIZES","_createElementBlock","_normalizeClass","_normalizeStyle"],"mappings":";;;;;;AAuBA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,QAAQ,CAACA,SAAAA,OAAiB;AAAA,EAE1B,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,WAAS,OAAO,KAAKC,mBAAAA,eAAe,EAAE,SAAS,KAAK;AAAA,IAChE;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUD,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM,CAAC,QAAQ,QAAQ,KAAK;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL,iBAAAA,mBAAe;AAAA;EAElB;AAAA,EAED,UAAU;AAAA,IACR,cAAe;AACb,YAAM,OAAOC,mBAAAA,qBAAqB,KAAK,IAAI,KAAK,KAAK;AACrD,aAAO;AAAA,QACL,GAAG,KAAK;AAAA,QACR,aAAa;AAAA,QACb,aAAa;AAAA,QACb,cAAc;AAAA,QACd,cAAc;AAAA;IAEjB;AAAA,EACF;AACH;;0BAxGEC,IAYE,mBAAA,OAAA;AAAA,IAXA,KAAI;AAAA,IACJ,WAAQ;AAAA,IACP,OAJLC,IAAAA,eAAA;AAAA;MAIoD,MAAA,gBAAgB,OAAK,KAAA;AAAA;2CAAsD,OAAO;AAAA;MAAiB,OAAY;AAAA;IAQ9J,OAZLC,IAAAA,eAYY,SAAW,WAAA;AAAA;;;;"}
1
+ {"version":3,"file":"skeleton-shape.vue.cjs","sources":["../../../components/skeleton/skeleton-shape.vue"],"sourcesContent":["<template>\n <div\n ref=\"skeleton\"\n data-qa=\"skeleton-shape\"\n :class=\"[\n 'd-skeleton-placeholder',\n SKELETON_SHAPES[shape],\n {\n 'd-skeleton-placeholder--animate': animate,\n },\n contentClass,\n ]\"\n :style=\"shapeStyles\"\n />\n</template>\n\n<script>\nimport SkeletonAnimation from '@/common/mixins/skeleton';\nimport {\n SKELETON_SHAPES,\n SKELETON_SHAPE_SIZES,\n} from './skeleton_constants';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtSkeletonShape',\n\n mixins: [SkeletonAnimation],\n\n props: {\n /**\n * Defines the shape of the skeleton, accepts circle or square.\n * @values circle, square\n */\n shape: {\n type: String,\n default: 'circle',\n validator: shape => Object.keys(SKELETON_SHAPES).includes(shape),\n },\n\n /**\n * Size of the shape\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: true,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n\n /**\n * Additional class name for the content.\n */\n contentClass: {\n type: [String, Object, Array],\n default: '',\n },\n },\n\n data () {\n return {\n SKELETON_SHAPES,\n };\n },\n\n computed: {\n shapeStyles () {\n const size = SKELETON_SHAPE_SIZES[this.size] || this.size;\n return {\n ...this.skeletonStyle,\n 'min-width': size,\n 'max-width': size,\n 'min-height': size,\n 'max-height': size,\n };\n },\n },\n};\n</script>\n"],"names":["SkeletonAnimation","SKELETON_SHAPES","SKELETON_SHAPE_SIZES","_createElementBlock","_normalizeClass","_normalizeStyle"],"mappings":";;;;;;AAuBA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EAEN,QAAQ,CAACA,SAAAA,OAAiB;AAAA,EAE1B,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,WAAS,OAAO,KAAKC,mBAAAA,eAAe,EAAE,SAAS,KAAK;AAAA,IAChE;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUD,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM,CAAC,QAAQ,QAAQ,KAAK;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL,iBAAAA,mBAAe;AAAA;EAElB;AAAA,EAED,UAAU;AAAA,IACR,cAAe;AACb,YAAM,OAAOC,mBAAAA,qBAAqB,KAAK,IAAI,KAAK,KAAK;AACrD,aAAO;AAAA,QACL,GAAG,KAAK;AAAA,QACR,aAAa;AAAA,QACb,aAAa;AAAA,QACb,cAAc;AAAA,QACd,cAAc;AAAA;IAEjB;AAAA,EACF;AACH;;0BAzGEC,IAYE,mBAAA,OAAA;AAAA,IAXA,KAAI;AAAA,IACJ,WAAQ;AAAA,IACP,OAJLC,IAAAA,eAAA;AAAA;MAIoD,MAAA,gBAAgB,OAAK,KAAA;AAAA;2CAAsD,OAAO;AAAA;MAAiB,OAAY;AAAA;IAQ9J,OAZLC,IAAAA,eAYY,SAAW,WAAA;AAAA;;;;"}
@@ -3,6 +3,7 @@ import { SKELETON_SHAPES, SKELETON_SHAPE_SIZES } from "./skeleton_constants.js";
3
3
  import { openBlock, createElementBlock, normalizeClass, normalizeStyle } from "vue";
4
4
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
5
5
  const _sfc_main = {
6
+ compatConfig: { MODE: 3 },
6
7
  name: "DtSkeletonShape",
7
8
  mixins: [SkeletonAnimation],
8
9
  props: {
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton-shape.vue.js","sources":["../../../components/skeleton/skeleton-shape.vue"],"sourcesContent":["<template>\n <div\n ref=\"skeleton\"\n data-qa=\"skeleton-shape\"\n :class=\"[\n 'd-skeleton-placeholder',\n SKELETON_SHAPES[shape],\n {\n 'd-skeleton-placeholder--animate': animate,\n },\n contentClass,\n ]\"\n :style=\"shapeStyles\"\n />\n</template>\n\n<script>\nimport SkeletonAnimation from '@/common/mixins/skeleton';\nimport {\n SKELETON_SHAPES,\n SKELETON_SHAPE_SIZES,\n} from './skeleton_constants';\n\nexport default {\n name: 'DtSkeletonShape',\n\n mixins: [SkeletonAnimation],\n\n props: {\n /**\n * Defines the shape of the skeleton, accepts circle or square.\n * @values circle, square\n */\n shape: {\n type: String,\n default: 'circle',\n validator: shape => Object.keys(SKELETON_SHAPES).includes(shape),\n },\n\n /**\n * Size of the shape\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: true,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n\n /**\n * Additional class name for the content.\n */\n contentClass: {\n type: [String, Object, Array],\n default: '',\n },\n },\n\n data () {\n return {\n SKELETON_SHAPES,\n };\n },\n\n computed: {\n shapeStyles () {\n const size = SKELETON_SHAPE_SIZES[this.size] || this.size;\n return {\n ...this.skeletonStyle,\n 'min-width': size,\n 'max-width': size,\n 'min-height': size,\n 'max-height': size,\n };\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_normalizeStyle"],"mappings":";;;;AAuBA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,QAAQ,CAAC,iBAAiB;AAAA,EAE1B,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,WAAS,OAAO,KAAK,eAAe,EAAE,SAAS,KAAK;AAAA,IAChE;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUD,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM,CAAC,QAAQ,QAAQ,KAAK;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL;AAAA;EAEH;AAAA,EAED,UAAU;AAAA,IACR,cAAe;AACb,YAAM,OAAO,qBAAqB,KAAK,IAAI,KAAK,KAAK;AACrD,aAAO;AAAA,QACL,GAAG,KAAK;AAAA,QACR,aAAa;AAAA,QACb,aAAa;AAAA,QACb,cAAc;AAAA,QACd,cAAc;AAAA;IAEjB;AAAA,EACF;AACH;;sBAxGEA,mBAYE,OAAA;AAAA,IAXA,KAAI;AAAA,IACJ,WAAQ;AAAA,IACP,OAJLC,eAAA;AAAA;MAIoD,MAAA,gBAAgB,OAAK,KAAA;AAAA;2CAAsD,OAAO;AAAA;MAAiB,OAAY;AAAA;IAQ9J,OAZLC,eAYY,SAAW,WAAA;AAAA;;;"}
1
+ {"version":3,"file":"skeleton-shape.vue.js","sources":["../../../components/skeleton/skeleton-shape.vue"],"sourcesContent":["<template>\n <div\n ref=\"skeleton\"\n data-qa=\"skeleton-shape\"\n :class=\"[\n 'd-skeleton-placeholder',\n SKELETON_SHAPES[shape],\n {\n 'd-skeleton-placeholder--animate': animate,\n },\n contentClass,\n ]\"\n :style=\"shapeStyles\"\n />\n</template>\n\n<script>\nimport SkeletonAnimation from '@/common/mixins/skeleton';\nimport {\n SKELETON_SHAPES,\n SKELETON_SHAPE_SIZES,\n} from './skeleton_constants';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtSkeletonShape',\n\n mixins: [SkeletonAnimation],\n\n props: {\n /**\n * Defines the shape of the skeleton, accepts circle or square.\n * @values circle, square\n */\n shape: {\n type: String,\n default: 'circle',\n validator: shape => Object.keys(SKELETON_SHAPES).includes(shape),\n },\n\n /**\n * Size of the shape\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: true,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n\n /**\n * Additional class name for the content.\n */\n contentClass: {\n type: [String, Object, Array],\n default: '',\n },\n },\n\n data () {\n return {\n SKELETON_SHAPES,\n };\n },\n\n computed: {\n shapeStyles () {\n const size = SKELETON_SHAPE_SIZES[this.size] || this.size;\n return {\n ...this.skeletonStyle,\n 'min-width': size,\n 'max-width': size,\n 'min-height': size,\n 'max-height': size,\n };\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_normalizeStyle"],"mappings":";;;;AAuBA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EAEN,QAAQ,CAAC,iBAAiB;AAAA,EAE1B,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,WAAS,OAAO,KAAK,eAAe,EAAE,SAAS,KAAK;AAAA,IAChE;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUD,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM,CAAC,QAAQ,QAAQ,KAAK;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL;AAAA;EAEH;AAAA,EAED,UAAU;AAAA,IACR,cAAe;AACb,YAAM,OAAO,qBAAqB,KAAK,IAAI,KAAK,KAAK;AACrD,aAAO;AAAA,QACL,GAAG,KAAK;AAAA,QACR,aAAa;AAAA,QACb,aAAa;AAAA,QACb,cAAc;AAAA,QACd,cAAc;AAAA;IAEjB;AAAA,EACF;AACH;;sBAzGEA,mBAYE,OAAA;AAAA,IAXA,KAAI;AAAA,IACJ,WAAQ;AAAA,IACP,OAJLC,eAAA;AAAA;MAIoD,MAAA,gBAAgB,OAAK,KAAA;AAAA;2CAAsD,OAAO;AAAA;MAAiB,OAAY;AAAA;IAQ9J,OAZLC,eAYY,SAAW,WAAA;AAAA;;;"}
@@ -5,6 +5,7 @@ const skeleton = require("../../common/mixins/skeleton.cjs");
5
5
  const vue = require("vue");
6
6
  const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helper.cjs");
7
7
  const _sfc_main = {
8
+ compatConfig: { MODE: 3 },
8
9
  name: "DtSkeletonText",
9
10
  mixins: [skeleton.default],
10
11
  props: {
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton-text.vue.cjs","sources":["../../../components/skeleton/skeleton-text.vue"],"sourcesContent":["<template>\n <div\n v-if=\"type === 'body'\"\n ref=\"skeleton\"\n data-qa=\"skeleton-text-body\"\n :class=\"[\n 'd-skeleton-text',\n 'd-skeleton-placeholder',\n {\n 'd-skeleton-placeholder--animate': animate,\n },\n contentClass,\n ]\"\n :style=\"{\n width,\n ...skeletonStyle,\n }\"\n />\n <div\n v-else-if=\"type === 'heading'\"\n ref=\"skeleton\"\n data-qa=\"skeleton-text-heading\"\n :class=\"[\n SKELETON_HEADING_HEIGHTS[headingHeight],\n 'd-skeleton-text--heading',\n 'd-skeleton-placeholder',\n {\n 'd-skeleton-placeholder--animate': animate,\n },\n contentClass,\n ]\"\n :style=\"{\n width,\n ...skeletonStyle,\n }\"\n />\n</template>\n\n<script>\nimport { SKELETON_HEADING_HEIGHTS, SKELETON_TEXT_TYPES } from './skeleton_constants';\nimport SkeletonAnimation from '@/common/mixins/skeleton';\n\nexport default {\n name: 'DtSkeletonText',\n\n mixins: [SkeletonAnimation],\n\n props: {\n /**\n * Skeleton type\n * @values body, heading\n */\n type: {\n type: String,\n default: 'body',\n validator: type => SKELETON_TEXT_TYPES.includes(type),\n },\n\n /**\n * Heading height\n * @values sm, md, lg\n */\n headingHeight: {\n type: String,\n default: 'md',\n validator: headingHeight => Object.keys(SKELETON_HEADING_HEIGHTS).includes(headingHeight),\n },\n\n /**\n * Width of the skeleton\n */\n width: {\n type: String,\n default: '100%',\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: false,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n\n /**\n * Additional class name for the content.\n */\n contentClass: {\n type: String,\n default: '',\n },\n },\n\n data () {\n return {\n SKELETON_HEADING_HEIGHTS,\n };\n },\n};\n</script>\n"],"names":["SkeletonAnimation","SKELETON_TEXT_TYPES","SKELETON_HEADING_HEIGHTS","_createElementBlock","_normalizeClass","_normalizeStyle","_createCommentVNode"],"mappings":";;;;;;AA0CA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,QAAQ,CAACA,SAAAA,OAAiB;AAAA,EAE1B,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,UAAQC,uCAAoB,SAAS,IAAI;AAAA,IACrD;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,eAAe;AAAA,MACb,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,mBAAiB,OAAO,KAAKC,mBAAAA,wBAAwB,EAAE,SAAS,aAAa;AAAA,IACzF;AAAA;AAAA;AAAA;AAAA,IAKD,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUD,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,gCACLA,mBAAwB;AAAA;EAE3B;AACH;;SAtHU,OAAI,SAAA,2BADZC,IAgBE,mBAAA,OAAA;AAAA,IAjBJ,KAAA;AAAA,IAGI,KAAI;AAAA,IACJ,WAAQ;AAAA,IACP,OALLC,IAAAA,eAAA;AAAA;;;2CAK0H,OAAO;AAAA;MAAiB,OAAY;AAAA;IAQzJ,OAbLC,IAAAA,eAAA;AAAA,aAaoB,OAAK;AAAA,SAAW,KAAa;AAAA;iBAMlC,OAAI,SAAA,8BADjBF,IAiBE,mBAAA,OAAA;AAAA,IAnCJ,KAAA;AAAA,IAoBI,KAAI;AAAA,IACJ,WAAQ;AAAA,IACP,OAtBLC,IAAAA,eAAA;AAAA,MAsBoB,MAAA,yBAAyB,OAAa,aAAA;AAAA;;;2CAAwH,OAAO;AAAA;MAAiB,OAAY;AAAA;IASjN,OA/BLC,IAAAA,eAAA;AAAA,aA+BoB,OAAK;AAAA,SAAW,KAAa;AAAA;iBA/BjDC,IAAA,mBAAA,IAAA,IAAA;;;;"}
1
+ {"version":3,"file":"skeleton-text.vue.cjs","sources":["../../../components/skeleton/skeleton-text.vue"],"sourcesContent":["<template>\n <div\n v-if=\"type === 'body'\"\n ref=\"skeleton\"\n data-qa=\"skeleton-text-body\"\n :class=\"[\n 'd-skeleton-text',\n 'd-skeleton-placeholder',\n {\n 'd-skeleton-placeholder--animate': animate,\n },\n contentClass,\n ]\"\n :style=\"{\n width,\n ...skeletonStyle,\n }\"\n />\n <div\n v-else-if=\"type === 'heading'\"\n ref=\"skeleton\"\n data-qa=\"skeleton-text-heading\"\n :class=\"[\n SKELETON_HEADING_HEIGHTS[headingHeight],\n 'd-skeleton-text--heading',\n 'd-skeleton-placeholder',\n {\n 'd-skeleton-placeholder--animate': animate,\n },\n contentClass,\n ]\"\n :style=\"{\n width,\n ...skeletonStyle,\n }\"\n />\n</template>\n\n<script>\nimport { SKELETON_HEADING_HEIGHTS, SKELETON_TEXT_TYPES } from './skeleton_constants';\nimport SkeletonAnimation from '@/common/mixins/skeleton';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtSkeletonText',\n\n mixins: [SkeletonAnimation],\n\n props: {\n /**\n * Skeleton type\n * @values body, heading\n */\n type: {\n type: String,\n default: 'body',\n validator: type => SKELETON_TEXT_TYPES.includes(type),\n },\n\n /**\n * Heading height\n * @values sm, md, lg\n */\n headingHeight: {\n type: String,\n default: 'md',\n validator: headingHeight => Object.keys(SKELETON_HEADING_HEIGHTS).includes(headingHeight),\n },\n\n /**\n * Width of the skeleton\n */\n width: {\n type: String,\n default: '100%',\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: false,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n\n /**\n * Additional class name for the content.\n */\n contentClass: {\n type: String,\n default: '',\n },\n },\n\n data () {\n return {\n SKELETON_HEADING_HEIGHTS,\n };\n },\n};\n</script>\n"],"names":["SkeletonAnimation","SKELETON_TEXT_TYPES","SKELETON_HEADING_HEIGHTS","_createElementBlock","_normalizeClass","_normalizeStyle","_createCommentVNode"],"mappings":";;;;;;AA0CA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EAEN,QAAQ,CAACA,SAAAA,OAAiB;AAAA,EAE1B,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,UAAQC,uCAAoB,SAAS,IAAI;AAAA,IACrD;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,eAAe;AAAA,MACb,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,mBAAiB,OAAO,KAAKC,mBAAAA,wBAAwB,EAAE,SAAS,aAAa;AAAA,IACzF;AAAA;AAAA;AAAA;AAAA,IAKD,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUD,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,gCACLA,mBAAwB;AAAA;EAE3B;AACH;;SAvHU,OAAI,SAAA,2BADZC,IAgBE,mBAAA,OAAA;AAAA,IAjBJ,KAAA;AAAA,IAGI,KAAI;AAAA,IACJ,WAAQ;AAAA,IACP,OALLC,IAAAA,eAAA;AAAA;;;2CAK0H,OAAO;AAAA;MAAiB,OAAY;AAAA;IAQzJ,OAbLC,IAAAA,eAAA;AAAA,aAaoB,OAAK;AAAA,SAAW,KAAa;AAAA;iBAMlC,OAAI,SAAA,8BADjBF,IAiBE,mBAAA,OAAA;AAAA,IAnCJ,KAAA;AAAA,IAoBI,KAAI;AAAA,IACJ,WAAQ;AAAA,IACP,OAtBLC,IAAAA,eAAA;AAAA,MAsBoB,MAAA,yBAAyB,OAAa,aAAA;AAAA;;;2CAAwH,OAAO;AAAA;MAAiB,OAAY;AAAA;IASjN,OA/BLC,IAAAA,eAAA;AAAA,aA+BoB,OAAK;AAAA,SAAW,KAAa;AAAA;iBA/BjDC,IAAA,mBAAA,IAAA,IAAA;;;;"}
@@ -3,6 +3,7 @@ import SkeletonAnimation from "../../common/mixins/skeleton.js";
3
3
  import { openBlock, createElementBlock, normalizeClass, normalizeStyle, createCommentVNode } from "vue";
4
4
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
5
5
  const _sfc_main = {
6
+ compatConfig: { MODE: 3 },
6
7
  name: "DtSkeletonText",
7
8
  mixins: [SkeletonAnimation],
8
9
  props: {
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton-text.vue.js","sources":["../../../components/skeleton/skeleton-text.vue"],"sourcesContent":["<template>\n <div\n v-if=\"type === 'body'\"\n ref=\"skeleton\"\n data-qa=\"skeleton-text-body\"\n :class=\"[\n 'd-skeleton-text',\n 'd-skeleton-placeholder',\n {\n 'd-skeleton-placeholder--animate': animate,\n },\n contentClass,\n ]\"\n :style=\"{\n width,\n ...skeletonStyle,\n }\"\n />\n <div\n v-else-if=\"type === 'heading'\"\n ref=\"skeleton\"\n data-qa=\"skeleton-text-heading\"\n :class=\"[\n SKELETON_HEADING_HEIGHTS[headingHeight],\n 'd-skeleton-text--heading',\n 'd-skeleton-placeholder',\n {\n 'd-skeleton-placeholder--animate': animate,\n },\n contentClass,\n ]\"\n :style=\"{\n width,\n ...skeletonStyle,\n }\"\n />\n</template>\n\n<script>\nimport { SKELETON_HEADING_HEIGHTS, SKELETON_TEXT_TYPES } from './skeleton_constants';\nimport SkeletonAnimation from '@/common/mixins/skeleton';\n\nexport default {\n name: 'DtSkeletonText',\n\n mixins: [SkeletonAnimation],\n\n props: {\n /**\n * Skeleton type\n * @values body, heading\n */\n type: {\n type: String,\n default: 'body',\n validator: type => SKELETON_TEXT_TYPES.includes(type),\n },\n\n /**\n * Heading height\n * @values sm, md, lg\n */\n headingHeight: {\n type: String,\n default: 'md',\n validator: headingHeight => Object.keys(SKELETON_HEADING_HEIGHTS).includes(headingHeight),\n },\n\n /**\n * Width of the skeleton\n */\n width: {\n type: String,\n default: '100%',\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: false,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n\n /**\n * Additional class name for the content.\n */\n contentClass: {\n type: String,\n default: '',\n },\n },\n\n data () {\n return {\n SKELETON_HEADING_HEIGHTS,\n };\n },\n};\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_normalizeStyle","_createCommentVNode"],"mappings":";;;;AA0CA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,QAAQ,CAAC,iBAAiB;AAAA,EAE1B,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,UAAQ,oBAAoB,SAAS,IAAI;AAAA,IACrD;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,eAAe;AAAA,MACb,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,mBAAiB,OAAO,KAAK,wBAAwB,EAAE,SAAS,aAAa;AAAA,IACzF;AAAA;AAAA;AAAA;AAAA,IAKD,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUD,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL;AAAA;EAEH;AACH;;SAtHU,OAAI,SAAA,uBADZA,mBAgBE,OAAA;AAAA,IAjBJ,KAAA;AAAA,IAGI,KAAI;AAAA,IACJ,WAAQ;AAAA,IACP,OALLC,eAAA;AAAA;;;2CAK0H,OAAO;AAAA;MAAiB,OAAY;AAAA;IAQzJ,OAbLC,eAAA;AAAA,aAaoB,OAAK;AAAA,SAAW,KAAa;AAAA;iBAMlC,OAAI,SAAA,0BADjBF,mBAiBE,OAAA;AAAA,IAnCJ,KAAA;AAAA,IAoBI,KAAI;AAAA,IACJ,WAAQ;AAAA,IACP,OAtBLC,eAAA;AAAA,MAsBoB,MAAA,yBAAyB,OAAa,aAAA;AAAA;;;2CAAwH,OAAO;AAAA;MAAiB,OAAY;AAAA;IASjN,OA/BLC,eAAA;AAAA,aA+BoB,OAAK;AAAA,SAAW,KAAa;AAAA;iBA/BjDC,mBAAA,IAAA,IAAA;;;"}
1
+ {"version":3,"file":"skeleton-text.vue.js","sources":["../../../components/skeleton/skeleton-text.vue"],"sourcesContent":["<template>\n <div\n v-if=\"type === 'body'\"\n ref=\"skeleton\"\n data-qa=\"skeleton-text-body\"\n :class=\"[\n 'd-skeleton-text',\n 'd-skeleton-placeholder',\n {\n 'd-skeleton-placeholder--animate': animate,\n },\n contentClass,\n ]\"\n :style=\"{\n width,\n ...skeletonStyle,\n }\"\n />\n <div\n v-else-if=\"type === 'heading'\"\n ref=\"skeleton\"\n data-qa=\"skeleton-text-heading\"\n :class=\"[\n SKELETON_HEADING_HEIGHTS[headingHeight],\n 'd-skeleton-text--heading',\n 'd-skeleton-placeholder',\n {\n 'd-skeleton-placeholder--animate': animate,\n },\n contentClass,\n ]\"\n :style=\"{\n width,\n ...skeletonStyle,\n }\"\n />\n</template>\n\n<script>\nimport { SKELETON_HEADING_HEIGHTS, SKELETON_TEXT_TYPES } from './skeleton_constants';\nimport SkeletonAnimation from '@/common/mixins/skeleton';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtSkeletonText',\n\n mixins: [SkeletonAnimation],\n\n props: {\n /**\n * Skeleton type\n * @values body, heading\n */\n type: {\n type: String,\n default: 'body',\n validator: type => SKELETON_TEXT_TYPES.includes(type),\n },\n\n /**\n * Heading height\n * @values sm, md, lg\n */\n headingHeight: {\n type: String,\n default: 'md',\n validator: headingHeight => Object.keys(SKELETON_HEADING_HEIGHTS).includes(headingHeight),\n },\n\n /**\n * Width of the skeleton\n */\n width: {\n type: String,\n default: '100%',\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: false,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n\n /**\n * Additional class name for the content.\n */\n contentClass: {\n type: String,\n default: '',\n },\n },\n\n data () {\n return {\n SKELETON_HEADING_HEIGHTS,\n };\n },\n};\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_normalizeStyle","_createCommentVNode"],"mappings":";;;;AA0CA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EAEN,QAAQ,CAAC,iBAAiB;AAAA,EAE1B,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,UAAQ,oBAAoB,SAAS,IAAI;AAAA,IACrD;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,eAAe;AAAA,MACb,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,mBAAiB,OAAO,KAAK,wBAAwB,EAAE,SAAS,aAAa;AAAA,IACzF;AAAA;AAAA;AAAA;AAAA,IAKD,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUD,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL;AAAA;EAEH;AACH;;SAvHU,OAAI,SAAA,uBADZA,mBAgBE,OAAA;AAAA,IAjBJ,KAAA;AAAA,IAGI,KAAI;AAAA,IACJ,WAAQ;AAAA,IACP,OALLC,eAAA;AAAA;;;2CAK0H,OAAO;AAAA;MAAiB,OAAY;AAAA;IAQzJ,OAbLC,eAAA;AAAA,aAaoB,OAAK;AAAA,SAAW,KAAa;AAAA;iBAMlC,OAAI,SAAA,0BADjBF,mBAiBE,OAAA;AAAA,IAnCJ,KAAA;AAAA,IAoBI,KAAI;AAAA,IACJ,WAAQ;AAAA,IACP,OAtBLC,eAAA;AAAA,MAsBoB,MAAA,yBAAyB,OAAa,aAAA;AAAA;;;2CAAwH,OAAO;AAAA;MAAiB,OAAY;AAAA;IASjN,OA/BLC,eAAA;AAAA,aA+BoB,OAAK;AAAA,SAAW,KAAa;AAAA;iBA/BjDC,mBAAA,IAAA,IAAA;;;"}
@@ -7,6 +7,7 @@ const skeletonText = require("./skeleton-text.vue.cjs");
7
7
  const vue = require("vue");
8
8
  const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helper.cjs");
9
9
  const _sfc_main = {
10
+ compatConfig: { MODE: 3 },
10
11
  name: "DtSkeleton",
11
12
  components: {
12
13
  DtSkeletonText: skeletonText.default,
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton.vue.cjs","sources":["../../../components/skeleton/skeleton.vue"],"sourcesContent":["<template>\n <div\n aria-busy=\"true\"\n role=\"status\"\n :aria-label=\"ariaLabel\"\n >\n <dt-skeleton-list-item\n v-if=\"listItemOption\"\n v-bind=\"listItemOption === true ? {} : listItemOption\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n <dt-skeleton-shape\n v-else-if=\"shapeOption\"\n v-bind=\"shapeOption === true ? {} : shapeOption\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n <dt-skeleton-paragraph\n v-else-if=\"paragraphOption\"\n v-bind=\"paragraphOption === true ? {} : paragraphOption\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n <dt-skeleton-text\n v-else\n v-bind=\"textOption || {}\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n </div>\n</template>\n\n<script>\nimport DtSkeletonShape from './skeleton-shape.vue';\nimport DtSkeletonListItem from './skeleton-list-item.vue';\nimport DtSkeletonParagraph from './skeleton-paragraph.vue';\nimport DtSkeletonText from './skeleton-text.vue';\n\n/**\n * Skeleton loader is a non-interactive placeholder that displays a preview of the UI to visually communicate\n * that content is in the process of loading. Skeleton is used to provide a low fidelity\n * representation of the user interface (UI) before content appears on the page.\n * @see https://dialtone.dialpad.com/components/skeleton.html\n */\nexport default {\n name: 'DtSkeleton',\n components: {\n DtSkeletonText,\n DtSkeletonShape,\n DtSkeletonListItem,\n DtSkeletonParagraph,\n },\n\n props: {\n /**\n * Set this prop to have the skeleton render as multiple lines of text.\n * Set only one option prop at a time.\n */\n paragraphOption: {\n type: [Object, Boolean],\n default: null,\n },\n\n /**\n * Set this prop to have the skeleton render as a list item with an avatar and wrapping text.\n * Set only one option prop at a time.\n */\n listItemOption: {\n type: [Object, Boolean],\n default: null,\n },\n\n /**\n * Set this prop to have the skeleton render as a single line of text.\n * Set only one option prop at a time.\n */\n textOption: {\n type: Object,\n default: null,\n },\n\n /**\n * Set this prop to have the skeleton render as a specific shape.\n * Set only one option prop at a time.\n */\n shapeOption: {\n type: [Object, Boolean],\n default: null,\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * Descriptive label for the content.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: true,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n },\n\n computed: {\n validationOptions () {\n return {\n paragraphOption: this.paragraphOption,\n listItemOption: this.listItemOption,\n textOption: this.textOption,\n shapeOption: this.shapeOption,\n };\n },\n },\n\n watch: {\n $props: {\n immediate: true,\n handler: 'validator',\n },\n },\n\n methods: {\n validator () {\n const filtered = Object.entries(this.validationOptions)\n .filter(([_, option]) => option);\n if (filtered.length >= 2) {\n const errorMessage = `Use only one of ${filtered.map(([key]) => key).join(' | ')} options at the same time`;\n console.error(errorMessage);\n }\n },\n },\n};\n</script>\n"],"names":["DtSkeletonText","DtSkeletonShape","DtSkeletonListItem","DtSkeletonParagraph","_createElementBlock","_openBlock","_createBlock","_mergeProps"],"mappings":"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"}
1
+ {"version":3,"file":"skeleton.vue.cjs","sources":["../../../components/skeleton/skeleton.vue"],"sourcesContent":["<template>\n <div\n aria-busy=\"true\"\n role=\"status\"\n :aria-label=\"ariaLabel\"\n >\n <dt-skeleton-list-item\n v-if=\"listItemOption\"\n v-bind=\"listItemOption === true ? {} : listItemOption\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n <dt-skeleton-shape\n v-else-if=\"shapeOption\"\n v-bind=\"shapeOption === true ? {} : shapeOption\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n <dt-skeleton-paragraph\n v-else-if=\"paragraphOption\"\n v-bind=\"paragraphOption === true ? {} : paragraphOption\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n <dt-skeleton-text\n v-else\n v-bind=\"textOption || {}\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n </div>\n</template>\n\n<script>\nimport DtSkeletonShape from './skeleton-shape.vue';\nimport DtSkeletonListItem from './skeleton-list-item.vue';\nimport DtSkeletonParagraph from './skeleton-paragraph.vue';\nimport DtSkeletonText from './skeleton-text.vue';\n\n/**\n * Skeleton loader is a non-interactive placeholder that displays a preview of the UI to visually communicate\n * that content is in the process of loading. Skeleton is used to provide a low fidelity\n * representation of the user interface (UI) before content appears on the page.\n * @see https://dialtone.dialpad.com/components/skeleton.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtSkeleton',\n components: {\n DtSkeletonText,\n DtSkeletonShape,\n DtSkeletonListItem,\n DtSkeletonParagraph,\n },\n\n props: {\n /**\n * Set this prop to have the skeleton render as multiple lines of text.\n * Set only one option prop at a time.\n */\n paragraphOption: {\n type: [Object, Boolean],\n default: null,\n },\n\n /**\n * Set this prop to have the skeleton render as a list item with an avatar and wrapping text.\n * Set only one option prop at a time.\n */\n listItemOption: {\n type: [Object, Boolean],\n default: null,\n },\n\n /**\n * Set this prop to have the skeleton render as a single line of text.\n * Set only one option prop at a time.\n */\n textOption: {\n type: Object,\n default: null,\n },\n\n /**\n * Set this prop to have the skeleton render as a specific shape.\n * Set only one option prop at a time.\n */\n shapeOption: {\n type: [Object, Boolean],\n default: null,\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * Descriptive label for the content.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: true,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n },\n\n computed: {\n validationOptions () {\n return {\n paragraphOption: this.paragraphOption,\n listItemOption: this.listItemOption,\n textOption: this.textOption,\n shapeOption: this.shapeOption,\n };\n },\n },\n\n watch: {\n $props: {\n immediate: true,\n handler: 'validator',\n },\n },\n\n methods: {\n validator () {\n const filtered = Object.entries(this.validationOptions)\n .filter(([_, option]) => option);\n if (filtered.length >= 2) {\n const errorMessage = `Use only one of ${filtered.map(([key]) => key).join(' | ')} options at the same time`;\n console.error(errorMessage);\n }\n },\n },\n};\n</script>\n"],"names":["DtSkeletonText","DtSkeletonShape","DtSkeletonListItem","DtSkeletonParagraph","_createElementBlock","_openBlock","_createBlock","_mergeProps"],"mappings":"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"}
@@ -5,6 +5,7 @@ import DtSkeletonText from "./skeleton-text.vue.js";
5
5
  import { resolveComponent, openBlock, createElementBlock, createBlock, mergeProps } from "vue";
6
6
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
7
7
  const _sfc_main = {
8
+ compatConfig: { MODE: 3 },
8
9
  name: "DtSkeleton",
9
10
  components: {
10
11
  DtSkeletonText,
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton.vue.js","sources":["../../../components/skeleton/skeleton.vue"],"sourcesContent":["<template>\n <div\n aria-busy=\"true\"\n role=\"status\"\n :aria-label=\"ariaLabel\"\n >\n <dt-skeleton-list-item\n v-if=\"listItemOption\"\n v-bind=\"listItemOption === true ? {} : listItemOption\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n <dt-skeleton-shape\n v-else-if=\"shapeOption\"\n v-bind=\"shapeOption === true ? {} : shapeOption\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n <dt-skeleton-paragraph\n v-else-if=\"paragraphOption\"\n v-bind=\"paragraphOption === true ? {} : paragraphOption\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n <dt-skeleton-text\n v-else\n v-bind=\"textOption || {}\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n </div>\n</template>\n\n<script>\nimport DtSkeletonShape from './skeleton-shape.vue';\nimport DtSkeletonListItem from './skeleton-list-item.vue';\nimport DtSkeletonParagraph from './skeleton-paragraph.vue';\nimport DtSkeletonText from './skeleton-text.vue';\n\n/**\n * Skeleton loader is a non-interactive placeholder that displays a preview of the UI to visually communicate\n * that content is in the process of loading. Skeleton is used to provide a low fidelity\n * representation of the user interface (UI) before content appears on the page.\n * @see https://dialtone.dialpad.com/components/skeleton.html\n */\nexport default {\n name: 'DtSkeleton',\n components: {\n DtSkeletonText,\n DtSkeletonShape,\n DtSkeletonListItem,\n DtSkeletonParagraph,\n },\n\n props: {\n /**\n * Set this prop to have the skeleton render as multiple lines of text.\n * Set only one option prop at a time.\n */\n paragraphOption: {\n type: [Object, Boolean],\n default: null,\n },\n\n /**\n * Set this prop to have the skeleton render as a list item with an avatar and wrapping text.\n * Set only one option prop at a time.\n */\n listItemOption: {\n type: [Object, Boolean],\n default: null,\n },\n\n /**\n * Set this prop to have the skeleton render as a single line of text.\n * Set only one option prop at a time.\n */\n textOption: {\n type: Object,\n default: null,\n },\n\n /**\n * Set this prop to have the skeleton render as a specific shape.\n * Set only one option prop at a time.\n */\n shapeOption: {\n type: [Object, Boolean],\n default: null,\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * Descriptive label for the content.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: true,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n },\n\n computed: {\n validationOptions () {\n return {\n paragraphOption: this.paragraphOption,\n listItemOption: this.listItemOption,\n textOption: this.textOption,\n shapeOption: this.shapeOption,\n };\n },\n },\n\n watch: {\n $props: {\n immediate: true,\n handler: 'validator',\n },\n },\n\n methods: {\n validator () {\n const filtered = Object.entries(this.validationOptions)\n .filter(([_, option]) => option);\n if (filtered.length >= 2) {\n const errorMessage = `Use only one of ${filtered.map(([key]) => key).join(' | ')} options at the same time`;\n console.error(errorMessage);\n }\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_openBlock","_createBlock","_mergeProps"],"mappings":"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"}
1
+ {"version":3,"file":"skeleton.vue.js","sources":["../../../components/skeleton/skeleton.vue"],"sourcesContent":["<template>\n <div\n aria-busy=\"true\"\n role=\"status\"\n :aria-label=\"ariaLabel\"\n >\n <dt-skeleton-list-item\n v-if=\"listItemOption\"\n v-bind=\"listItemOption === true ? {} : listItemOption\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n <dt-skeleton-shape\n v-else-if=\"shapeOption\"\n v-bind=\"shapeOption === true ? {} : shapeOption\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n <dt-skeleton-paragraph\n v-else-if=\"paragraphOption\"\n v-bind=\"paragraphOption === true ? {} : paragraphOption\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n <dt-skeleton-text\n v-else\n v-bind=\"textOption || {}\"\n :animation-duration=\"animationDuration\"\n :animate=\"animate\"\n :offset=\"offset\"\n />\n </div>\n</template>\n\n<script>\nimport DtSkeletonShape from './skeleton-shape.vue';\nimport DtSkeletonListItem from './skeleton-list-item.vue';\nimport DtSkeletonParagraph from './skeleton-paragraph.vue';\nimport DtSkeletonText from './skeleton-text.vue';\n\n/**\n * Skeleton loader is a non-interactive placeholder that displays a preview of the UI to visually communicate\n * that content is in the process of loading. Skeleton is used to provide a low fidelity\n * representation of the user interface (UI) before content appears on the page.\n * @see https://dialtone.dialpad.com/components/skeleton.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtSkeleton',\n components: {\n DtSkeletonText,\n DtSkeletonShape,\n DtSkeletonListItem,\n DtSkeletonParagraph,\n },\n\n props: {\n /**\n * Set this prop to have the skeleton render as multiple lines of text.\n * Set only one option prop at a time.\n */\n paragraphOption: {\n type: [Object, Boolean],\n default: null,\n },\n\n /**\n * Set this prop to have the skeleton render as a list item with an avatar and wrapping text.\n * Set only one option prop at a time.\n */\n listItemOption: {\n type: [Object, Boolean],\n default: null,\n },\n\n /**\n * Set this prop to have the skeleton render as a single line of text.\n * Set only one option prop at a time.\n */\n textOption: {\n type: Object,\n default: null,\n },\n\n /**\n * Set this prop to have the skeleton render as a specific shape.\n * Set only one option prop at a time.\n */\n shapeOption: {\n type: [Object, Boolean],\n default: null,\n },\n\n /**\n * Duration time of the animation (ms), set -1 for an infinite animation.\n */\n animationDuration: {\n type: Number,\n default: -1,\n },\n\n /**\n * Descriptive label for the content.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * This property has higher priority than \"option.animate\"\n * @values true, false\n */\n animate: {\n type: Boolean,\n default: true,\n },\n\n /**\n * RippleDuration controls how long the delay is for the animation of a\n * placeholder 1000 pixels from the top of the page. Each placeholder\n * from the top down will have a delay duration from 0 to this offset.\n * The delay of each placeholder animation is based on how far down the page\n * the placeholder is rendered. This is a linear relationship. The unit\n * is milliseconds.\n */\n offset: {\n type: Number,\n default: 1,\n },\n },\n\n computed: {\n validationOptions () {\n return {\n paragraphOption: this.paragraphOption,\n listItemOption: this.listItemOption,\n textOption: this.textOption,\n shapeOption: this.shapeOption,\n };\n },\n },\n\n watch: {\n $props: {\n immediate: true,\n handler: 'validator',\n },\n },\n\n methods: {\n validator () {\n const filtered = Object.entries(this.validationOptions)\n .filter(([_, option]) => option);\n if (filtered.length >= 2) {\n const errorMessage = `Use only one of ${filtered.map(([key]) => key).join(' | ')} options at the same time`;\n console.error(errorMessage);\n }\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_openBlock","_createBlock","_mergeProps"],"mappings":";;;;;;AAiDA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,iBAAiB;AAAA,MACf,MAAM,CAAC,QAAQ,OAAO;AAAA,MACtB,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,gBAAgB;AAAA,MACd,MAAM,CAAC,QAAQ,OAAO;AAAA,MACtB,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,aAAa;AAAA,MACX,MAAM,CAAC,QAAQ,OAAO;AAAA,MACtB,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUD,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,UAAU;AAAA,IACR,oBAAqB;AACnB,aAAO;AAAA,QACL,iBAAiB,KAAK;AAAA,QACtB,gBAAgB,KAAK;AAAA,QACrB,YAAY,KAAK;AAAA,QACjB,aAAa,KAAK;AAAA;IAErB;AAAA,EACF;AAAA,EAED,OAAO;AAAA,IACL,QAAQ;AAAA,MACN,WAAW;AAAA,MACX,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,SAAS;AAAA,IACP,YAAa;AACX,YAAM,WAAW,OAAO,QAAQ,KAAK,iBAAiB,EACnD,OAAO,CAAC,CAAC,GAAG,MAAM,MAAM,MAAM;AACjC,UAAI,SAAS,UAAU,GAAG;AACxB,cAAM,eAAe,mBAAmB,SAAS,IAAI,CAAC,CAAC,GAAG,MAAM,GAAG,EAAE,KAAK,KAAK,CAAC;AAChF,gBAAQ,MAAM,YAAY;AAAA,MAC5B;AAAA,IACD;AAAA,EACF;AACH;AAnKA,MAAA,aAAA,CAAA,YAAA;;;;;;sBACEA,mBAiCM,OAAA;AAAA,IAhCJ,aAAU;AAAA,IACV,MAAK;AAAA,IACJ,cAAY,OAAS;AAAA;IAGd,OAAc,kBADtBC,UAAA,GAAAC,YAME,kCANFC,WAME,EAZN,KAAA,KAQc,OAAA,+BAA+B,OAAc,gBAAA;AAAA,MACpD,sBAAoB,OAAiB;AAAA,MACrC,SAAS,OAAO;AAAA,MAChB,QAAQ,OAAM;AAAA,kEAGJ,OAAW,eADxBF,UAAA,GAAAC,YAME,8BANFC,WAME,EAnBN,KAAA,KAec,OAAA,4BAA4B,OAAW,aAAA;AAAA,MAC9C,sBAAoB,OAAiB;AAAA,MACrC,SAAS,OAAO;AAAA,MAChB,QAAQ,OAAM;AAAA,kEAGJ,OAAe,mBAD5BF,UAAA,GAAAC,YAME,kCANFC,WAME,EA1BN,KAAA,KAsBc,OAAA,gCAAgC,OAAe,iBAAA;AAAA,MACtD,sBAAoB,OAAiB;AAAA,MACrC,SAAS,OAAO;AAAA,MAChB,QAAQ,OAAM;AAAA,mEAEjBF,aAAAC,YAME,6BANFC,WAME,EAjCN,KAAA,KA6Bc,OAAU,cAAA,IAAA;AAAA,MACjB,sBAAoB,OAAiB;AAAA,MACrC,SAAS,OAAO;AAAA,MAChB,QAAQ,OAAM;AAAA;EAhCrB,GAAA,GAAA,UAAA;;;"}
@@ -5,6 +5,7 @@ const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helpe
5
5
  const button = require("../button/button.vue.cjs");
6
6
  const button_constants = require("../button/button_constants.cjs");
7
7
  const _sfc_main = {
8
+ compatConfig: { MODE: 3 },
8
9
  name: "SplitButtonAlpha",
9
10
  components: {
10
11
  DtButton: button.default
@@ -1 +1 @@
1
- {"version":3,"file":"split_button-alpha.vue.cjs","sources":["../../../components/split_button/split_button-alpha.vue"],"sourcesContent":["<template>\n <dt-button\n v-dt-tooltip=\"tooltipText\"\n data-qa=\"dt-split-button-alpha\"\n :active=\"active\"\n :aria-label=\"ariaLabel\"\n :assertive-on-focus=\"assertiveOnFocus\"\n :class=\"`d-split-btn__alpha d-split-btn__alpha--${size}`\"\n :disabled=\"disabled\"\n :icon-position=\"iconPosition\"\n :importance=\"importance\"\n :kind=\"kind\"\n :label-class=\"labelClass\"\n :loading=\"loading\"\n :size=\"size\"\n >\n <template #icon>\n <slot\n name=\"icon\"\n :size=\"BUTTON_ICON_SIZES[size]\"\n />\n </template>\n <slot name=\"default\" />\n </dt-button>\n</template>\n\n<script>\nimport { BUTTON_ICON_SIZES, DtButton } from '@/components/button';\n\nexport default {\n name: 'SplitButtonAlpha',\n\n components: {\n DtButton,\n },\n\n props: {\n /**\n * Determines whether the button should have active styling\n */\n active: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Descriptive label for the button\n */\n ariaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * The position of the icon slot within the button.\n */\n iconPosition: {\n type: String,\n default: 'left',\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 */\n loading: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Text shown in tooltip when you hover the button\n */\n tooltipText: {\n type: String,\n default: '',\n },\n\n /**\n * Determines whether a screenreader reads live updates of\n * the button content to the user while the button is in focus.\n */\n assertiveOnFocus: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML button disabled attribute\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The fill and outline of the button associated with its visual importance.\n */\n importance: {\n type: String,\n default: 'primary',\n },\n\n /**\n * The color of the button.\n */\n kind: {\n type: String,\n default: 'default',\n },\n\n /**\n * The size of the button.\n */\n size: {\n type: String,\n default: 'md',\n },\n },\n\n data () {\n return {\n BUTTON_ICON_SIZES,\n };\n },\n};\n</script>\n"],"names":["DtButton","BUTTON_ICON_SIZES","_createBlock","_normalizeClass","_renderSlot","_withCtx"],"mappings":";;;;;;AA6BA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,UAAAA,OAAQ;AAAA,EACT;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,YAAY;AAAA,MACV,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,kBAAkB;AAAA,MAChB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL,mBAAAC,iBAAiB;AAAA;EAEpB;AACH;;;;8CAnIEC,IAAAA,YAsBY,sBAAA;AAAA,IApBV,WAAQ;AAAA,IACP,QAAQ,OAAM;AAAA,IACd,cAAY,OAAS;AAAA,IACrB,sBAAoB,OAAgB;AAAA,IACpC,OAPLC,6DAOsD,OAAI,IAAA,EAAA;AAAA,IACrD,UAAU,OAAQ;AAAA,IAClB,iBAAe,OAAY;AAAA,IAC3B,YAAY,OAAU;AAAA,IACtB,MAAM,OAAI;AAAA,IACV,eAAa,OAAU;AAAA,IACvB,SAAS,OAAO;AAAA,IAChB,MAAM,OAAI;AAAA;IAEA,kBACT,MAGE;AAAA,MAHFC,eAGE,KAAA,QAAA,QAAA;AAAA,QADC,MAAM,MAAiB,kBAAC,OAAI,IAAA;AAAA;;IAnBrC,SAAAC,IAAA,QAsBI,MAAuB;AAAA,MAAvBD,eAAuB,KAAA,QAAA,SAAA;AAAA;IAtB3B,GAAA;AAAA;4BAEkB,OAAW,WAAA;AAAA;;;;"}
1
+ {"version":3,"file":"split_button-alpha.vue.cjs","sources":["../../../components/split_button/split_button-alpha.vue"],"sourcesContent":["<template>\n <dt-button\n v-dt-tooltip=\"tooltipText\"\n data-qa=\"dt-split-button-alpha\"\n :active=\"active\"\n :aria-label=\"ariaLabel\"\n :assertive-on-focus=\"assertiveOnFocus\"\n :class=\"`d-split-btn__alpha d-split-btn__alpha--${size}`\"\n :disabled=\"disabled\"\n :icon-position=\"iconPosition\"\n :importance=\"importance\"\n :kind=\"kind\"\n :label-class=\"labelClass\"\n :loading=\"loading\"\n :size=\"size\"\n >\n <template #icon>\n <slot\n name=\"icon\"\n :size=\"BUTTON_ICON_SIZES[size]\"\n />\n </template>\n <slot name=\"default\" />\n </dt-button>\n</template>\n\n<script>\nimport { BUTTON_ICON_SIZES, DtButton } from '@/components/button';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'SplitButtonAlpha',\n\n components: {\n DtButton,\n },\n\n props: {\n /**\n * Determines whether the button should have active styling\n */\n active: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Descriptive label for the button\n */\n ariaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * The position of the icon slot within the button.\n */\n iconPosition: {\n type: String,\n default: 'left',\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 */\n loading: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Text shown in tooltip when you hover the button\n */\n tooltipText: {\n type: String,\n default: '',\n },\n\n /**\n * Determines whether a screenreader reads live updates of\n * the button content to the user while the button is in focus.\n */\n assertiveOnFocus: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML button disabled attribute\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The fill and outline of the button associated with its visual importance.\n */\n importance: {\n type: String,\n default: 'primary',\n },\n\n /**\n * The color of the button.\n */\n kind: {\n type: String,\n default: 'default',\n },\n\n /**\n * The size of the button.\n */\n size: {\n type: String,\n default: 'md',\n },\n },\n\n data () {\n return {\n BUTTON_ICON_SIZES,\n };\n },\n};\n</script>\n"],"names":["DtButton","BUTTON_ICON_SIZES","_createBlock","_normalizeClass","_renderSlot","_withCtx"],"mappings":";;;;;;AA6BA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,UAAAA,OAAQ;AAAA,EACT;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,YAAY;AAAA,MACV,MAAM,CAAC,QAAQ,OAAO,MAAM;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,kBAAkB;AAAA,MAChB,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA,EAED,OAAQ;AACN,WAAO;AAAA,MACL,mBAAAC,iBAAiB;AAAA;EAEpB;AACH;;;;8CApIEC,IAAAA,YAsBY,sBAAA;AAAA,IApBV,WAAQ;AAAA,IACP,QAAQ,OAAM;AAAA,IACd,cAAY,OAAS;AAAA,IACrB,sBAAoB,OAAgB;AAAA,IACpC,OAPLC,6DAOsD,OAAI,IAAA,EAAA;AAAA,IACrD,UAAU,OAAQ;AAAA,IAClB,iBAAe,OAAY;AAAA,IAC3B,YAAY,OAAU;AAAA,IACtB,MAAM,OAAI;AAAA,IACV,eAAa,OAAU;AAAA,IACvB,SAAS,OAAO;AAAA,IAChB,MAAM,OAAI;AAAA;IAEA,kBACT,MAGE;AAAA,MAHFC,eAGE,KAAA,QAAA,QAAA;AAAA,QADC,MAAM,MAAiB,kBAAC,OAAI,IAAA;AAAA;;IAnBrC,SAAAC,IAAA,QAsBI,MAAuB;AAAA,MAAvBD,eAAuB,KAAA,QAAA,SAAA;AAAA;IAtB3B,GAAA;AAAA;4BAEkB,OAAW,WAAA;AAAA;;;;"}
@@ -3,6 +3,7 @@ import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
3
3
  import DtButton from "../button/button.vue.js";
4
4
  import { BUTTON_ICON_SIZES } from "../button/button_constants.js";
5
5
  const _sfc_main = {
6
+ compatConfig: { MODE: 3 },
6
7
  name: "SplitButtonAlpha",
7
8
  components: {
8
9
  DtButton