@dialpad/dialtone-vue 3.210.0 → 3.211.0-next.2

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 (558) hide show
  1. package/dist/common/constants/index.cjs +1 -1
  2. package/dist/common/constants/index.cjs.map +1 -1
  3. package/dist/common/constants/index.js +10 -10
  4. package/dist/common/constants/index.js.map +1 -1
  5. package/dist/common/mixins/keyboard-list-navigation.cjs +1 -1
  6. package/dist/common/mixins/keyboard-list-navigation.cjs.map +1 -1
  7. package/dist/common/mixins/keyboard-list-navigation.js +7 -7
  8. package/dist/common/mixins/keyboard-list-navigation.js.map +1 -1
  9. package/dist/component-documentation.json +1 -1
  10. package/dist/dialtone-vue.cjs +1 -1
  11. package/dist/dialtone-vue.js +425 -387
  12. package/dist/dialtone-vue.js.map +1 -1
  13. package/dist/lib/attachment-carousel/attachment-carousel.cjs +1 -1
  14. package/dist/lib/attachment-carousel/attachment-carousel.cjs.map +1 -1
  15. package/dist/lib/attachment-carousel/attachment-carousel.js +64 -117
  16. package/dist/lib/attachment-carousel/attachment-carousel.js.map +1 -1
  17. package/dist/lib/avatar/avatar-constants.cjs +1 -1
  18. package/dist/lib/avatar/avatar-constants.cjs.map +1 -1
  19. package/dist/lib/avatar/avatar-constants.js +169 -43
  20. package/dist/lib/avatar/avatar-constants.js.map +1 -1
  21. package/dist/lib/avatar/avatar.cjs +1 -1
  22. package/dist/lib/avatar/avatar.cjs.map +1 -1
  23. package/dist/lib/avatar/avatar.js +185 -100
  24. package/dist/lib/avatar/avatar.js.map +1 -1
  25. package/dist/lib/avatar/index.cjs +1 -1
  26. package/dist/lib/avatar/index.js +16 -10
  27. package/dist/lib/badge/badge.cjs +1 -1
  28. package/dist/lib/badge/badge.cjs.map +1 -1
  29. package/dist/lib/badge/badge.js +47 -35
  30. package/dist/lib/badge/badge.js.map +1 -1
  31. package/dist/lib/banner/banner.cjs +1 -1
  32. package/dist/lib/banner/banner.cjs.map +1 -1
  33. package/dist/lib/banner/banner.js +19 -18
  34. package/dist/lib/banner/banner.js.map +1 -1
  35. package/dist/lib/breadcrumbs/breadcrumb-item.cjs +1 -1
  36. package/dist/lib/breadcrumbs/breadcrumb-item.cjs.map +1 -1
  37. package/dist/lib/breadcrumbs/breadcrumb-item.js +3 -1
  38. package/dist/lib/breadcrumbs/breadcrumb-item.js.map +1 -1
  39. package/dist/lib/breadcrumbs/breadcrumbs.cjs +1 -1
  40. package/dist/lib/breadcrumbs/breadcrumbs.cjs.map +1 -1
  41. package/dist/lib/breadcrumbs/breadcrumbs.js +21 -18
  42. package/dist/lib/breadcrumbs/breadcrumbs.js.map +1 -1
  43. package/dist/lib/button/button-constants.cjs +1 -1
  44. package/dist/lib/button/button-constants.cjs.map +1 -1
  45. package/dist/lib/button/button-constants.js +23 -19
  46. package/dist/lib/button/button-constants.js.map +1 -1
  47. package/dist/lib/button/button.cjs +1 -1
  48. package/dist/lib/button/button.cjs.map +1 -1
  49. package/dist/lib/button/button.js +171 -66
  50. package/dist/lib/button/button.js.map +1 -1
  51. package/dist/lib/callbar-button/callbar-button.cjs +1 -1
  52. package/dist/lib/callbar-button/callbar-button.cjs.map +1 -1
  53. package/dist/lib/callbar-button/callbar-button.js +13 -14
  54. package/dist/lib/callbar-button/callbar-button.js.map +1 -1
  55. package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs +1 -1
  56. package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs.map +1 -1
  57. package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js +42 -30
  58. package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js.map +1 -1
  59. package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.cjs +1 -1
  60. package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.cjs.map +1 -1
  61. package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.js +38 -26
  62. package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.js.map +1 -1
  63. package/dist/lib/callbox/callbox.cjs +1 -1
  64. package/dist/lib/callbox/callbox.cjs.map +1 -1
  65. package/dist/lib/callbox/callbox.js +47 -47
  66. package/dist/lib/callbox/callbox.js.map +1 -1
  67. package/dist/lib/checkbox/checkbox.cjs +1 -1
  68. package/dist/lib/checkbox/checkbox.cjs.map +1 -1
  69. package/dist/lib/checkbox/checkbox.js +97 -43
  70. package/dist/lib/checkbox/checkbox.js.map +1 -1
  71. package/dist/lib/chip/chip.cjs +1 -1
  72. package/dist/lib/chip/chip.cjs.map +1 -1
  73. package/dist/lib/chip/chip.js +1 -1
  74. package/dist/lib/chip/chip.js.map +1 -1
  75. package/dist/lib/codeblock/codeblock-constants.cjs +2 -0
  76. package/dist/lib/codeblock/codeblock-constants.cjs.map +1 -0
  77. package/dist/lib/codeblock/codeblock-constants.js +6 -0
  78. package/dist/lib/codeblock/codeblock-constants.js.map +1 -0
  79. package/dist/lib/codeblock/codeblock.cjs +1 -2
  80. package/dist/lib/codeblock/codeblock.cjs.map +1 -1
  81. package/dist/lib/codeblock/codeblock.js +34 -13
  82. package/dist/lib/codeblock/codeblock.js.map +1 -1
  83. package/dist/lib/combobox-multi-select/combobox-multi-select.cjs +1 -1
  84. package/dist/lib/combobox-multi-select/combobox-multi-select.cjs.map +1 -1
  85. package/dist/lib/combobox-multi-select/combobox-multi-select.js +31 -31
  86. package/dist/lib/combobox-multi-select/combobox-multi-select.js.map +1 -1
  87. package/dist/lib/contact-centers-row/contact-centers-row.cjs +1 -1
  88. package/dist/lib/contact-centers-row/contact-centers-row.cjs.map +1 -1
  89. package/dist/lib/contact-centers-row/contact-centers-row.js +33 -33
  90. package/dist/lib/contact-centers-row/contact-centers-row.js.map +1 -1
  91. package/dist/lib/contact-info/contact-info.cjs +1 -1
  92. package/dist/lib/contact-info/contact-info.cjs.map +1 -1
  93. package/dist/lib/contact-info/contact-info.js +56 -56
  94. package/dist/lib/contact-info/contact-info.js.map +1 -1
  95. package/dist/lib/contact-row/contact-row.cjs +1 -1
  96. package/dist/lib/contact-row/contact-row.cjs.map +1 -1
  97. package/dist/lib/contact-row/contact-row.js +1 -1
  98. package/dist/lib/contact-row/contact-row.js.map +1 -1
  99. package/dist/lib/datepicker/datepicker.cjs +1 -1
  100. package/dist/lib/datepicker/datepicker.cjs.map +1 -1
  101. package/dist/lib/datepicker/datepicker.js +13 -17
  102. package/dist/lib/datepicker/datepicker.js.map +1 -1
  103. package/dist/lib/dropdown/dropdown-list.cjs +1 -1
  104. package/dist/lib/dropdown/dropdown-list.cjs.map +1 -1
  105. package/dist/lib/dropdown/dropdown-list.js +29 -18
  106. package/dist/lib/dropdown/dropdown-list.js.map +1 -1
  107. package/dist/lib/editor/editor.cjs.map +1 -1
  108. package/dist/lib/editor/editor.js.map +1 -1
  109. package/dist/lib/emoji-picker/emoji-picker.cjs +1 -1
  110. package/dist/lib/emoji-picker/emoji-picker.cjs.map +1 -1
  111. package/dist/lib/emoji-picker/emoji-picker.js +2 -2
  112. package/dist/lib/emoji-picker/emoji-picker.js.map +1 -1
  113. package/dist/lib/empty-state/empty-state-constants.cjs +1 -1
  114. package/dist/lib/empty-state/empty-state-constants.cjs.map +1 -1
  115. package/dist/lib/empty-state/empty-state-constants.js +28 -16
  116. package/dist/lib/empty-state/empty-state-constants.js.map +1 -1
  117. package/dist/lib/empty-state/empty-state.cjs +1 -1
  118. package/dist/lib/empty-state/empty-state.cjs.map +1 -1
  119. package/dist/lib/empty-state/empty-state.js +54 -32
  120. package/dist/lib/empty-state/empty-state.js.map +1 -1
  121. package/dist/lib/feed-item-pill/feed-item-pill.cjs +1 -1
  122. package/dist/lib/feed-item-pill/feed-item-pill.cjs.map +1 -1
  123. package/dist/lib/feed-item-pill/feed-item-pill.js +56 -53
  124. package/dist/lib/feed-item-pill/feed-item-pill.js.map +1 -1
  125. package/dist/lib/feed-item-row/feed-item-row.cjs +1 -1
  126. package/dist/lib/feed-item-row/feed-item-row.cjs.map +1 -1
  127. package/dist/lib/feed-item-row/feed-item-row.js +11 -11
  128. package/dist/lib/feed-item-row/feed-item-row.js.map +1 -1
  129. package/dist/lib/filter-pill/filter-pill.cjs +2 -0
  130. package/dist/lib/filter-pill/filter-pill.cjs.map +1 -0
  131. package/dist/lib/filter-pill/filter-pill.js +346 -0
  132. package/dist/lib/filter-pill/filter-pill.js.map +1 -0
  133. package/dist/lib/filter-pill/index.cjs +2 -0
  134. package/dist/lib/filter-pill/index.cjs.map +1 -0
  135. package/dist/lib/filter-pill/index.js +5 -0
  136. package/dist/lib/filter-pill/index.js.map +1 -0
  137. package/dist/lib/general-row/general-row.cjs +1 -1
  138. package/dist/lib/general-row/general-row.cjs.map +1 -1
  139. package/dist/lib/general-row/general-row.js +153 -99
  140. package/dist/lib/general-row/general-row.js.map +1 -1
  141. package/dist/lib/group-row/group-row.cjs +1 -1
  142. package/dist/lib/group-row/group-row.cjs.map +1 -1
  143. package/dist/lib/group-row/group-row.js +1 -1
  144. package/dist/lib/group-row/group-row.js.map +1 -1
  145. package/dist/lib/grouped-chip/grouped-chip.cjs +1 -1
  146. package/dist/lib/grouped-chip/grouped-chip.cjs.map +1 -1
  147. package/dist/lib/grouped-chip/grouped-chip.js +31 -31
  148. package/dist/lib/grouped-chip/grouped-chip.js.map +1 -1
  149. package/dist/lib/input/input-constants.cjs +1 -1
  150. package/dist/lib/input/input-constants.cjs.map +1 -1
  151. package/dist/lib/input/input-constants.js +17 -22
  152. package/dist/lib/input/input-constants.js.map +1 -1
  153. package/dist/lib/input/input.cjs +1 -1
  154. package/dist/lib/input/input.cjs.map +1 -1
  155. package/dist/lib/input/input.js +144 -72
  156. package/dist/lib/input/input.js.map +1 -1
  157. package/dist/lib/input-group/input-group.cjs +1 -1
  158. package/dist/lib/input-group/input-group.cjs.map +1 -1
  159. package/dist/lib/input-group/input-group.js +35 -28
  160. package/dist/lib/input-group/input-group.js.map +1 -1
  161. package/dist/lib/item-layout/item-layout.cjs +3 -3
  162. package/dist/lib/item-layout/item-layout.cjs.map +1 -1
  163. package/dist/lib/item-layout/item-layout.js +74 -39
  164. package/dist/lib/item-layout/item-layout.js.map +1 -1
  165. package/dist/lib/keyboard-shortcut/keyboard-shortcut.cjs +1 -1
  166. package/dist/lib/keyboard-shortcut/keyboard-shortcut.cjs.map +1 -1
  167. package/dist/lib/keyboard-shortcut/keyboard-shortcut.js +56 -43
  168. package/dist/lib/keyboard-shortcut/keyboard-shortcut.js.map +1 -1
  169. package/dist/lib/kitchen-sink/kitchen-sink-view.cjs +2 -0
  170. package/dist/lib/kitchen-sink/kitchen-sink-view.cjs.map +1 -0
  171. package/dist/lib/kitchen-sink/kitchen-sink-view.js +263 -0
  172. package/dist/lib/kitchen-sink/kitchen-sink-view.js.map +1 -0
  173. package/dist/lib/link/link.cjs +1 -1
  174. package/dist/lib/link/link.cjs.map +1 -1
  175. package/dist/lib/link/link.js +22 -12
  176. package/dist/lib/link/link.js.map +1 -1
  177. package/dist/lib/list-item/list-item.cjs +1 -1
  178. package/dist/lib/list-item/list-item.cjs.map +1 -1
  179. package/dist/lib/list-item/list-item.js +25 -15
  180. package/dist/lib/list-item/list-item.js.map +1 -1
  181. package/dist/lib/loader/loader.cjs +13 -1
  182. package/dist/lib/loader/loader.cjs.map +1 -1
  183. package/dist/lib/loader/loader.js +31 -20
  184. package/dist/lib/loader/loader.js.map +1 -1
  185. package/dist/lib/message-input/message-input.cjs +1 -1
  186. package/dist/lib/message-input/message-input.cjs.map +1 -1
  187. package/dist/lib/message-input/message-input.js +39 -39
  188. package/dist/lib/message-input/message-input.js.map +1 -1
  189. package/dist/lib/modal/modal.cjs +1 -1
  190. package/dist/lib/modal/modal.cjs.map +1 -1
  191. package/dist/lib/modal/modal.js +74 -61
  192. package/dist/lib/modal/modal.js.map +1 -1
  193. package/dist/lib/mode-island/index.cjs +2 -0
  194. package/dist/lib/mode-island/index.cjs.map +1 -0
  195. package/dist/lib/mode-island/index.js +7 -0
  196. package/dist/lib/mode-island/index.js.map +1 -0
  197. package/dist/lib/mode-island/mode-island-constants.cjs +2 -0
  198. package/dist/lib/mode-island/mode-island-constants.cjs.map +1 -0
  199. package/dist/lib/mode-island/mode-island-constants.js +12 -0
  200. package/dist/lib/mode-island/mode-island-constants.js.map +1 -0
  201. package/dist/lib/mode-island/mode-island.cjs +2 -0
  202. package/dist/lib/mode-island/mode-island.cjs.map +1 -0
  203. package/dist/lib/mode-island/mode-island.js +130 -0
  204. package/dist/lib/mode-island/mode-island.js.map +1 -0
  205. package/dist/lib/mode-island/utils.cjs +2 -0
  206. package/dist/lib/mode-island/utils.cjs.map +1 -0
  207. package/dist/lib/mode-island/utils.js +32 -0
  208. package/dist/lib/mode-island/utils.js.map +1 -0
  209. package/dist/lib/mode-island/validators.cjs +2 -0
  210. package/dist/lib/mode-island/validators.cjs.map +1 -0
  211. package/dist/lib/mode-island/validators.js +12 -0
  212. package/dist/lib/mode-island/validators.js.map +1 -0
  213. package/dist/lib/notice/notice-action.cjs +1 -1
  214. package/dist/lib/notice/notice-action.cjs.map +1 -1
  215. package/dist/lib/notice/notice-action.js +7 -7
  216. package/dist/lib/notice/notice-action.js.map +1 -1
  217. package/dist/lib/notice/notice-content.cjs +1 -1
  218. package/dist/lib/notice/notice-content.cjs.map +1 -1
  219. package/dist/lib/notice/notice-content.js +38 -21
  220. package/dist/lib/notice/notice-content.js.map +1 -1
  221. package/dist/lib/notice/notice.cjs +1 -1
  222. package/dist/lib/notice/notice.cjs.map +1 -1
  223. package/dist/lib/notice/notice.js +20 -19
  224. package/dist/lib/notice/notice.js.map +1 -1
  225. package/dist/lib/pagination/pagination.cjs +1 -1
  226. package/dist/lib/pagination/pagination.cjs.map +1 -1
  227. package/dist/lib/pagination/pagination.js +15 -14
  228. package/dist/lib/pagination/pagination.js.map +1 -1
  229. package/dist/lib/popover/popover.cjs +1 -1
  230. package/dist/lib/popover/popover.cjs.map +1 -1
  231. package/dist/lib/popover/popover.js +1 -1
  232. package/dist/lib/popover/popover.js.map +1 -1
  233. package/dist/lib/progress-circle/index.cjs +2 -0
  234. package/dist/lib/progress-circle/index.cjs.map +1 -0
  235. package/dist/lib/progress-circle/index.js +10 -0
  236. package/dist/lib/progress-circle/index.js.map +1 -0
  237. package/dist/lib/progress-circle/progress-circle-constants.cjs +2 -0
  238. package/dist/lib/progress-circle/progress-circle-constants.cjs.map +1 -0
  239. package/dist/lib/progress-circle/progress-circle-constants.js +25 -0
  240. package/dist/lib/progress-circle/progress-circle-constants.js.map +1 -0
  241. package/dist/lib/progress-circle/progress-circle.cjs +2 -0
  242. package/dist/lib/progress-circle/progress-circle.cjs.map +1 -0
  243. package/dist/lib/progress-circle/progress-circle.js +136 -0
  244. package/dist/lib/progress-circle/progress-circle.js.map +1 -0
  245. package/dist/lib/radio/radio.cjs +1 -1
  246. package/dist/lib/radio/radio.cjs.map +1 -1
  247. package/dist/lib/radio/radio.js +103 -41
  248. package/dist/lib/radio/radio.js.map +1 -1
  249. package/dist/lib/rich-text-editor/rich-text-editor.cjs +4 -4
  250. package/dist/lib/rich-text-editor/rich-text-editor.cjs.map +1 -1
  251. package/dist/lib/rich-text-editor/rich-text-editor.js +607 -560
  252. package/dist/lib/rich-text-editor/rich-text-editor.js.map +1 -1
  253. package/dist/lib/root-layout/root-layout-constants.cjs +1 -1
  254. package/dist/lib/root-layout/root-layout-constants.cjs.map +1 -1
  255. package/dist/lib/root-layout/root-layout-constants.js +4 -2
  256. package/dist/lib/root-layout/root-layout-constants.js.map +1 -1
  257. package/dist/lib/root-layout/root-layout.cjs +1 -1
  258. package/dist/lib/root-layout/root-layout.cjs.map +1 -1
  259. package/dist/lib/root-layout/root-layout.js +15 -13
  260. package/dist/lib/root-layout/root-layout.js.map +1 -1
  261. package/dist/lib/select-menu/select-menu.cjs +1 -1
  262. package/dist/lib/select-menu/select-menu.cjs.map +1 -1
  263. package/dist/lib/select-menu/select-menu.js +113 -61
  264. package/dist/lib/select-menu/select-menu.js.map +1 -1
  265. package/dist/lib/settings-menu-button/settings-menu-button.cjs +1 -1
  266. package/dist/lib/settings-menu-button/settings-menu-button.cjs.map +1 -1
  267. package/dist/lib/settings-menu-button/settings-menu-button.js +14 -15
  268. package/dist/lib/settings-menu-button/settings-menu-button.js.map +1 -1
  269. package/dist/lib/split-button/split-button-end.cjs +2 -0
  270. package/dist/lib/split-button/split-button-end.cjs.map +1 -0
  271. package/dist/lib/split-button/{split-button-omega.js → split-button-end.js} +13 -13
  272. package/dist/lib/split-button/split-button-end.js.map +1 -0
  273. package/dist/lib/split-button/split-button-start.cjs +2 -0
  274. package/dist/lib/split-button/split-button-start.cjs.map +1 -0
  275. package/dist/lib/split-button/split-button-start.js +231 -0
  276. package/dist/lib/split-button/split-button-start.js.map +1 -0
  277. package/dist/lib/split-button/split-button.cjs +1 -1
  278. package/dist/lib/split-button/split-button.cjs.map +1 -1
  279. package/dist/lib/split-button/split-button.js +334 -98
  280. package/dist/lib/split-button/split-button.js.map +1 -1
  281. package/dist/lib/tab/index.cjs +1 -1
  282. package/dist/lib/tab/index.js +13 -11
  283. package/dist/lib/tab/tab-group.cjs +1 -1
  284. package/dist/lib/tab/tab-group.cjs.map +1 -1
  285. package/dist/lib/tab/tab-group.js +107 -46
  286. package/dist/lib/tab/tab-group.js.map +1 -1
  287. package/dist/lib/tab/tab.cjs +1 -1
  288. package/dist/lib/tab/tab.cjs.map +1 -1
  289. package/dist/lib/tab/tab.js +128 -37
  290. package/dist/lib/tab/tab.js.map +1 -1
  291. package/dist/lib/tab/tabs-constants.cjs +1 -1
  292. package/dist/lib/tab/tabs-constants.cjs.map +1 -1
  293. package/dist/lib/tab/tabs-constants.js +13 -11
  294. package/dist/lib/tab/tabs-constants.js.map +1 -1
  295. package/dist/lib/text/index.cjs +2 -0
  296. package/dist/lib/text/index.cjs.map +1 -0
  297. package/dist/lib/text/index.js +20 -0
  298. package/dist/lib/text/index.js.map +1 -0
  299. package/dist/lib/text/text-constants.cjs +2 -0
  300. package/dist/lib/text/text-constants.cjs.map +1 -0
  301. package/dist/lib/text/text-constants.js +69 -0
  302. package/dist/lib/text/text-constants.js.map +1 -0
  303. package/dist/lib/text/text-tone-tokens.cjs +2 -0
  304. package/dist/lib/text/text-tone-tokens.cjs.map +1 -0
  305. package/dist/lib/text/text-tone-tokens.js +33 -0
  306. package/dist/lib/text/text-tone-tokens.js.map +1 -0
  307. package/dist/lib/text/text.cjs +2 -0
  308. package/dist/lib/text/text.cjs.map +1 -0
  309. package/dist/lib/text/text.js +203 -0
  310. package/dist/lib/text/text.js.map +1 -0
  311. package/dist/lib/toast/toast.cjs +1 -1
  312. package/dist/lib/toast/toast.cjs.map +1 -1
  313. package/dist/lib/toast/toast.js +10 -9
  314. package/dist/lib/toast/toast.js.map +1 -1
  315. package/dist/lib/toggle/toggle.cjs +1 -1
  316. package/dist/lib/toggle/toggle.cjs.map +1 -1
  317. package/dist/lib/toggle/toggle.js +37 -33
  318. package/dist/lib/toggle/toggle.js.map +1 -1
  319. package/dist/lib/top-banner-info/top-banner-info.cjs +1 -1
  320. package/dist/lib/top-banner-info/top-banner-info.cjs.map +1 -1
  321. package/dist/lib/top-banner-info/top-banner-info.js +16 -16
  322. package/dist/lib/top-banner-info/top-banner-info.js.map +1 -1
  323. package/dist/localization/en-US.cjs +2 -0
  324. package/dist/localization/en-US.cjs.map +1 -1
  325. package/dist/localization/en-US.js +2 -0
  326. package/dist/localization/en-US.js.map +1 -1
  327. package/dist/localization/es-LA.cjs +1 -1
  328. package/dist/localization/es-LA.cjs.map +1 -1
  329. package/dist/localization/es-LA.js +1 -1
  330. package/dist/localization/es-LA.js.map +1 -1
  331. package/dist/localization/it-IT.cjs +3 -3
  332. package/dist/localization/it-IT.cjs.map +1 -1
  333. package/dist/localization/it-IT.js +3 -3
  334. package/dist/localization/it-IT.js.map +1 -1
  335. package/dist/localization/nl-NL.cjs +2 -2
  336. package/dist/localization/nl-NL.cjs.map +1 -1
  337. package/dist/localization/nl-NL.js +2 -2
  338. package/dist/localization/nl-NL.js.map +1 -1
  339. package/dist/localization/ru-RU.cjs +1 -1
  340. package/dist/localization/ru-RU.cjs.map +1 -1
  341. package/dist/localization/ru-RU.js +1 -1
  342. package/dist/localization/ru-RU.js.map +1 -1
  343. package/dist/localization/zh-CN.cjs +1 -1
  344. package/dist/localization/zh-CN.cjs.map +1 -1
  345. package/dist/localization/zh-CN.js +1 -1
  346. package/dist/localization/zh-CN.js.map +1 -1
  347. package/dist/node_modules/@tiptap/vue-3.cjs.map +1 -1
  348. package/dist/node_modules/@tiptap/vue-3.js.map +1 -1
  349. package/dist/style.css +1 -1
  350. package/dist/types/common/mixins/keyboard_list_navigation.d.ts.map +1 -1
  351. package/dist/types/common/sr_only_close_button.vue.d.ts +38 -2
  352. package/dist/types/components/avatar/avatar.vue.d.ts +71 -25
  353. package/dist/types/components/avatar/avatar.vue.d.ts.map +1 -1
  354. package/dist/types/components/avatar/avatar_constants.d.ts +86 -29
  355. package/dist/types/components/avatar/avatar_constants.d.ts.map +1 -1
  356. package/dist/types/components/avatar/index.d.ts +1 -1
  357. package/dist/types/components/badge/badge.vue.d.ts.map +1 -1
  358. package/dist/types/components/banner/banner.vue.d.ts +216 -5
  359. package/dist/types/components/banner/banner.vue.d.ts.map +1 -1
  360. package/dist/types/components/breadcrumbs/breadcrumb_item.vue.d.ts +9 -0
  361. package/dist/types/components/breadcrumbs/breadcrumb_item.vue.d.ts.map +1 -1
  362. package/dist/types/components/breadcrumbs/breadcrumbs.vue.d.ts +9 -0
  363. package/dist/types/components/button/button.vue.d.ts +38 -2
  364. package/dist/types/components/button/button.vue.d.ts.map +1 -1
  365. package/dist/types/components/button/button_constants.d.ts +4 -0
  366. package/dist/types/components/button/button_constants.d.ts.map +1 -1
  367. package/dist/types/components/checkbox/checkbox.vue.d.ts +178 -4
  368. package/dist/types/components/checkbox/checkbox.vue.d.ts.map +1 -1
  369. package/dist/types/components/checkbox_group/checkbox_group.vue.d.ts +138 -0
  370. package/dist/types/components/chip/chip.vue.d.ts +38 -2
  371. package/dist/types/components/chip/chip.vue.d.ts.map +1 -1
  372. package/dist/types/components/codeblock/codeblock.vue.d.ts +22 -1
  373. package/dist/types/components/codeblock/codeblock.vue.d.ts.map +1 -1
  374. package/dist/types/components/codeblock/codeblock_constants.d.ts +3 -0
  375. package/dist/types/components/codeblock/codeblock_constants.d.ts.map +1 -0
  376. package/dist/types/components/collapsible/collapsible.vue.d.ts +38 -2
  377. package/dist/types/components/collapsible/collapsible.vue.d.ts.map +1 -1
  378. package/dist/types/components/combobox/combobox.vue.d.ts +81 -15
  379. package/dist/types/components/combobox/combobox.vue.d.ts.map +1 -1
  380. package/dist/types/components/combobox/combobox_empty-list.vue.d.ts +40 -7
  381. package/dist/types/components/combobox/combobox_empty-list.vue.d.ts.map +1 -1
  382. package/dist/types/components/combobox/combobox_loading-list.vue.d.ts +40 -7
  383. package/dist/types/components/combobox/combobox_loading-list.vue.d.ts.map +1 -1
  384. package/dist/types/components/datepicker/modules/month-year-picker.vue.d.ts.map +1 -1
  385. package/dist/types/components/dropdown/dropdown.vue.d.ts +76 -4
  386. package/dist/types/components/dropdown/dropdown.vue.d.ts.map +1 -1
  387. package/dist/types/components/emoji_picker/emoji_picker.vue.d.ts +190 -0
  388. package/dist/types/components/emoji_picker/modules/emoji_search.vue.d.ts +190 -0
  389. package/dist/types/components/emoji_picker/modules/emoji_search.vue.d.ts.map +1 -1
  390. package/dist/types/components/empty_state/empty_state.vue.d.ts.map +1 -1
  391. package/dist/types/components/empty_state/empty_state_constants.d.ts +23 -5
  392. package/dist/types/components/filter_pill/filter_pill.vue.d.ts +2382 -0
  393. package/dist/types/components/filter_pill/filter_pill.vue.d.ts.map +1 -0
  394. package/dist/types/components/filter_pill/index.d.ts +2 -0
  395. package/dist/types/components/filter_pill/index.d.ts.map +1 -0
  396. package/dist/types/components/hovercard/hovercard.vue.d.ts +152 -8
  397. package/dist/types/components/hovercard/hovercard.vue.d.ts.map +1 -1
  398. package/dist/types/components/image_viewer/image_viewer.vue.d.ts +76 -4
  399. package/dist/types/components/image_viewer/image_viewer.vue.d.ts.map +1 -1
  400. package/dist/types/components/input/input.vue.d.ts +182 -0
  401. package/dist/types/components/input/input.vue.d.ts.map +1 -1
  402. package/dist/types/components/input/input_constants.d.ts +4 -11
  403. package/dist/types/components/input_group/input_group.vue.d.ts +138 -0
  404. package/dist/types/components/input_group/input_group.vue.d.ts.map +1 -1
  405. package/dist/types/components/item_layout/item_layout.vue.d.ts +37 -6
  406. package/dist/types/components/item_layout/item_layout.vue.d.ts.map +1 -1
  407. package/dist/types/components/keyboard_shortcut/keyboard_shortcut.vue.d.ts +138 -0
  408. package/dist/types/components/keyboard_shortcut/keyboard_shortcut.vue.d.ts.map +1 -1
  409. package/dist/types/components/link/link.vue.d.ts +9 -0
  410. package/dist/types/components/list_item/list_item.vue.d.ts +40 -7
  411. package/dist/types/components/list_item/list_item.vue.d.ts.map +1 -1
  412. package/dist/types/components/loader/loader.vue.d.ts +1 -32
  413. package/dist/types/components/loader/loader.vue.d.ts.map +1 -1
  414. package/dist/types/components/modal/modal.vue.d.ts +214 -4
  415. package/dist/types/components/modal/modal.vue.d.ts.map +1 -1
  416. package/dist/types/components/mode_island/index.d.ts +3 -0
  417. package/dist/types/components/mode_island/index.d.ts.map +1 -0
  418. package/dist/types/components/mode_island/mode_island.vue.d.ts +3 -0
  419. package/dist/types/components/mode_island/mode_island.vue.d.ts.map +1 -0
  420. package/dist/types/components/mode_island/mode_island_constants.d.ts +10 -0
  421. package/dist/types/components/mode_island/mode_island_constants.d.ts.map +1 -0
  422. package/dist/types/components/mode_island/utils.d.ts +12 -0
  423. package/dist/types/components/mode_island/utils.d.ts.map +1 -0
  424. package/dist/types/components/mode_island/validators.d.ts +6 -0
  425. package/dist/types/components/mode_island/validators.d.ts.map +1 -0
  426. package/dist/types/components/notice/notice.vue.d.ts +216 -5
  427. package/dist/types/components/notice/notice.vue.d.ts.map +1 -1
  428. package/dist/types/components/notice/notice_action.vue.d.ts +76 -4
  429. package/dist/types/components/notice/notice_action.vue.d.ts.map +1 -1
  430. package/dist/types/components/notice/notice_content.vue.d.ts +140 -1
  431. package/dist/types/components/notice/notice_content.vue.d.ts.map +1 -1
  432. package/dist/types/components/pagination/pagination.vue.d.ts +38 -2
  433. package/dist/types/components/pagination/pagination.vue.d.ts.map +1 -1
  434. package/dist/types/components/popover/popover.vue.d.ts +76 -4
  435. package/dist/types/components/popover/popover.vue.d.ts.map +1 -1
  436. package/dist/types/components/popover/popover_header_footer.vue.d.ts +38 -2
  437. package/dist/types/components/popover/popover_header_footer.vue.d.ts.map +1 -1
  438. package/dist/types/components/progress_circle/index.d.ts +3 -0
  439. package/dist/types/components/progress_circle/index.d.ts.map +1 -0
  440. package/dist/types/components/progress_circle/progress_circle.vue.d.ts +70 -0
  441. package/dist/types/components/progress_circle/progress_circle.vue.d.ts.map +1 -0
  442. package/dist/types/components/progress_circle/progress_circle_constants.d.ts +23 -0
  443. package/dist/types/components/progress_circle/progress_circle_constants.d.ts.map +1 -0
  444. package/dist/types/components/radio/radio.vue.d.ts +173 -0
  445. package/dist/types/components/radio/radio.vue.d.ts.map +1 -1
  446. package/dist/types/components/radio_group/radio_group.vue.d.ts +138 -0
  447. package/dist/types/components/rich_text_editor/extensions/channels/ChannelComponent.vue.d.ts +9 -0
  448. package/dist/types/components/rich_text_editor/extensions/channels/ChannelComponent.vue.d.ts.map +1 -1
  449. package/dist/types/components/rich_text_editor/extensions/mentions/MentionComponent.vue.d.ts +9 -0
  450. package/dist/types/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.d.ts +209 -25
  451. package/dist/types/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.d.ts.map +1 -1
  452. package/dist/types/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.d.ts +140 -1
  453. package/dist/types/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.d.ts.map +1 -1
  454. package/dist/types/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.d.ts +40 -7
  455. package/dist/types/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.d.ts.map +1 -1
  456. package/dist/types/components/rich_text_editor/extensions/variable/VariableComponent.vue.d.ts +296 -6
  457. package/dist/types/components/rich_text_editor/extensions/variable/VariableComponent.vue.d.ts.map +1 -1
  458. package/dist/types/components/root_layout/root_layout_constants.d.ts +2 -0
  459. package/dist/types/components/root_layout/root_layout_constants.d.ts.map +1 -1
  460. package/dist/types/components/select_menu/select_menu.vue.d.ts +172 -13
  461. package/dist/types/components/select_menu/select_menu.vue.d.ts.map +1 -1
  462. package/dist/types/components/split_button/{split_button-omega.vue.d.ts → split_button-end.vue.d.ts} +39 -3
  463. package/dist/types/components/split_button/{split_button-omega.vue.d.ts.map → split_button-end.vue.d.ts.map} +1 -1
  464. package/dist/types/components/split_button/{split_button-alpha.vue.d.ts → split_button-start.vue.d.ts} +103 -4
  465. package/dist/types/components/split_button/split_button-start.vue.d.ts.map +1 -0
  466. package/dist/types/components/split_button/split_button.vue.d.ts +443 -34
  467. package/dist/types/components/split_button/split_button.vue.d.ts.map +1 -1
  468. package/dist/types/components/tab/index.d.ts +1 -1
  469. package/dist/types/components/tab/tab.vue.d.ts +73 -7
  470. package/dist/types/components/tab/tab.vue.d.ts.map +1 -1
  471. package/dist/types/components/tab/tab_group.vue.d.ts +42 -0
  472. package/dist/types/components/tab/tab_group.vue.d.ts.map +1 -1
  473. package/dist/types/components/tab/tabs_constants.d.ts +5 -3
  474. package/dist/types/components/tab/tabs_constants.d.ts.map +1 -1
  475. package/dist/types/components/text/index.d.ts +3 -0
  476. package/dist/types/components/text/index.d.ts.map +1 -0
  477. package/dist/types/components/text/scripts/update-text-tone-tokens.d.cts +3 -0
  478. package/dist/types/components/text/scripts/update-text-tone-tokens.d.cts.map +1 -0
  479. package/dist/types/components/text/scripts/update_text_tone_tokens.d.cts +3 -0
  480. package/dist/types/components/text/scripts/update_text_tone_tokens.d.cts.map +1 -0
  481. package/dist/types/components/text/scripts/update_text_tone_tokens.d.ts +1 -0
  482. package/dist/types/components/text/scripts/update_text_tone_tokens.d.ts.map +1 -0
  483. package/dist/types/components/text/text.vue.d.ts +141 -0
  484. package/dist/types/components/text/text.vue.d.ts.map +1 -0
  485. package/dist/types/components/text/text_constants.d.ts +73 -0
  486. package/dist/types/components/text/text_constants.d.ts.map +1 -0
  487. package/dist/types/components/text/text_tone_tokens.d.ts +3 -0
  488. package/dist/types/components/text/text_tone_tokens.d.ts.map +1 -0
  489. package/dist/types/components/toast/layouts/toast_layout_alternate.vue.d.ts +216 -5
  490. package/dist/types/components/toast/layouts/toast_layout_alternate.vue.d.ts.map +1 -1
  491. package/dist/types/components/toast/layouts/toast_layout_default.vue.d.ts +216 -5
  492. package/dist/types/components/toast/layouts/toast_layout_default.vue.d.ts.map +1 -1
  493. package/dist/types/components/toast/toast.vue.d.ts +864 -20
  494. package/dist/types/components/toast/toast.vue.d.ts.map +1 -1
  495. package/dist/types/components/toggle/toggle.vue.d.ts +9 -1
  496. package/dist/types/components/toggle/toggle.vue.d.ts.map +1 -1
  497. package/dist/types/index.d.ts +4 -0
  498. package/dist/types/recipes/buttons/callbar_button/callbar_button.vue.d.ts +38 -2
  499. package/dist/types/recipes/buttons/callbar_button/callbar_button.vue.d.ts.map +1 -1
  500. package/dist/types/recipes/buttons/callbar_button_with_dropdown/callbar_button_with_dropdown.vue.d.ts +152 -8
  501. package/dist/types/recipes/buttons/callbar_button_with_dropdown/callbar_button_with_dropdown.vue.d.ts.map +1 -1
  502. package/dist/types/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts +152 -8
  503. package/dist/types/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts.map +1 -1
  504. package/dist/types/recipes/cards/ivr_node/ivr_node.vue.d.ts +114 -6
  505. package/dist/types/recipes/cards/ivr_node/ivr_node.vue.d.ts.map +1 -1
  506. package/dist/types/recipes/chips/grouped_chip/grouped_chip.vue.d.ts +38 -2
  507. package/dist/types/recipes/chips/grouped_chip/grouped_chip.vue.d.ts.map +1 -1
  508. package/dist/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts +239 -35
  509. package/dist/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts.map +1 -1
  510. package/dist/types/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.d.ts +196 -12
  511. package/dist/types/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.d.ts.map +1 -1
  512. package/dist/types/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.d.ts +158 -10
  513. package/dist/types/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.d.ts.map +1 -1
  514. package/dist/types/recipes/conversation_view/editor/EditorToolbarButton.vue.d.ts +38 -2
  515. package/dist/types/recipes/conversation_view/editor/EditorToolbarDropdownButton.vue.d.ts +114 -6
  516. package/dist/types/recipes/conversation_view/editor/EditorToolbarDropdownButton.vue.d.ts.map +1 -1
  517. package/dist/types/recipes/conversation_view/editor/EditorToolbarPopoverButton.vue.d.ts +114 -6
  518. package/dist/types/recipes/conversation_view/editor/EditorToolbarPopoverButton.vue.d.ts.map +1 -1
  519. package/dist/types/recipes/conversation_view/emoji_row/emoji_row.vue.d.ts +38 -2
  520. package/dist/types/recipes/conversation_view/emoji_row/emoji_row.vue.d.ts.map +1 -1
  521. package/dist/types/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts +75 -8
  522. package/dist/types/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts.map +1 -1
  523. package/dist/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +111 -32
  524. package/dist/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts.map +1 -1
  525. package/dist/types/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.d.ts +75 -8
  526. package/dist/types/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.d.ts.map +1 -1
  527. package/dist/types/recipes/conversation_view/message_input/message_input_button.vue.d.ts +176 -2
  528. package/dist/types/recipes/conversation_view/message_input/message_input_button.vue.d.ts.map +1 -1
  529. package/dist/types/recipes/conversation_view/message_input/message_input_link.vue.d.ts +472 -8
  530. package/dist/types/recipes/conversation_view/message_input/message_input_link.vue.d.ts.map +1 -1
  531. package/dist/types/recipes/conversation_view/message_input/message_input_topbar.vue.d.ts +176 -2
  532. package/dist/types/recipes/conversation_view/message_input/message_input_topbar.vue.d.ts.map +1 -1
  533. package/dist/types/recipes/header/settings_menu_button/settings_menu_button.vue.d.ts +38 -2
  534. package/dist/types/recipes/header/settings_menu_button/settings_menu_button.vue.d.ts.map +1 -1
  535. package/dist/types/recipes/item_layout/contact_info/contact_info.vue.d.ts +108 -31
  536. package/dist/types/recipes/item_layout/contact_info/contact_info.vue.d.ts.map +1 -1
  537. package/dist/types/recipes/leftbar/callbox/callbox.vue.d.ts +71 -25
  538. package/dist/types/recipes/leftbar/callbox/callbox.vue.d.ts.map +1 -1
  539. package/dist/types/recipes/leftbar/contact_centers_row/contact_centers_row.vue.d.ts +38 -2
  540. package/dist/types/recipes/leftbar/contact_centers_row/contact_centers_row.vue.d.ts.map +1 -1
  541. package/dist/types/recipes/leftbar/contact_row/contact_row.vue.d.ts +467 -28
  542. package/dist/types/recipes/leftbar/contact_row/contact_row.vue.d.ts.map +1 -1
  543. package/dist/types/recipes/leftbar/general_row/general_row.vue.d.ts +396 -3
  544. package/dist/types/recipes/leftbar/general_row/general_row.vue.d.ts.map +1 -1
  545. package/dist/types/recipes/leftbar/group_row/group_row.vue.d.ts +396 -3
  546. package/dist/types/recipes/leftbar/group_row/group_row.vue.d.ts.map +1 -1
  547. package/dist/types/recipes/notices/top_banner_info/top_banner_info.vue.d.ts.map +1 -1
  548. package/package.json +6 -5
  549. package/dist/lib/split-button/split-button-alpha.cjs +0 -2
  550. package/dist/lib/split-button/split-button-alpha.cjs.map +0 -1
  551. package/dist/lib/split-button/split-button-alpha.js +0 -138
  552. package/dist/lib/split-button/split-button-alpha.js.map +0 -1
  553. package/dist/lib/split-button/split-button-omega.cjs +0 -2
  554. package/dist/lib/split-button/split-button-omega.cjs.map +0 -1
  555. package/dist/lib/split-button/split-button-omega.js.map +0 -1
  556. package/dist/types/components/split_button/split_button-alpha.vue.d.ts.map +0 -1
  557. package/dist/types/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.d.ts +0 -30
  558. package/dist/types/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.d.ts.map +0 -1
@@ -1,14 +1,14 @@
1
- import { BREADCRUMBS_INVERTED_MODIFIER as u } from "./breadcrumbs-constants.js";
2
- import c from "./breadcrumb-item.js";
3
- import s from "../../common/utils/index.js";
4
- import { DialtoneLocalization as b } from "../../localization/index.js";
5
- import { resolveComponent as _, openBlock as t, createElementBlock as o, normalizeClass as f, createElementVNode as B, renderSlot as p, Fragment as E, renderList as D, createBlock as I, mergeProps as R } from "vue";
1
+ import { BREADCRUMBS_INVERTED_MODIFIER as s } from "./breadcrumbs-constants.js";
2
+ import u from "./breadcrumb-item.js";
3
+ import b from "../../common/utils/index.js";
4
+ import { DialtoneLocalization as _ } from "../../localization/index.js";
5
+ import { resolveComponent as f, openBlock as t, createElementBlock as o, normalizeClass as m, createElementVNode as B, renderSlot as p, Fragment as E, renderList as D, createBlock as I, mergeProps as R } from "vue";
6
6
  import { _ as v } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
7
7
  const g = {
8
8
  compatConfig: { MODE: 3 },
9
9
  name: "DtBreadcrumbs",
10
10
  components: {
11
- DtBreadcrumbItem: c
11
+ DtBreadcrumbItem: u
12
12
  },
13
13
  props: {
14
14
  /**
@@ -22,6 +22,7 @@ const g = {
22
22
  }
23
23
  },
24
24
  /**
25
+ * @ignore
25
26
  * Passed through to link. If true, applies inverted styles to the link.
26
27
  * @values true, false
27
28
  */
@@ -39,37 +40,39 @@ const g = {
39
40
  },
40
41
  data() {
41
42
  return {
42
- BREADCRUMBS_INVERTED_MODIFIER: u,
43
- i18n: new b()
43
+ BREADCRUMBS_INVERTED_MODIFIER: s,
44
+ i18n: new _()
44
45
  };
45
46
  },
46
47
  methods: {
47
48
  getBreadcrumbItemKey(r) {
48
- return `breadcrumbs-item-${r}-${s.getUniqueString()}`;
49
+ return `breadcrumbs-item-${r}-${b.getUniqueString()}`;
49
50
  }
50
51
  }
51
- }, y = ["aria-label"];
52
- function A(r, a, e, L, n, m) {
53
- const d = _("dt-breadcrumb-item");
52
+ }, y = ["aria-label"], A = {
53
+ class: /* @__PURE__ */ m(["d-breadcrumbs__list"])
54
+ };
55
+ function L(r, a, e, C, n, d) {
56
+ const i = f("dt-breadcrumb-item");
54
57
  return t(), o("nav", {
55
58
  "aria-label": e.ariaLabel || n.i18n.$t("DIALTONE_BREADCRUMBS_ARIA_LABEL"),
56
59
  "data-qa": "dt-breadcrumbs",
57
- class: f([
60
+ class: m([
58
61
  "d-breadcrumbs",
59
62
  { [n.BREADCRUMBS_INVERTED_MODIFIER]: e.inverted }
60
63
  ])
61
64
  }, [
62
- B("ol", null, [
65
+ B("ol", A, [
63
66
  p(r.$slots, "default", {}, () => [
64
- (t(!0), o(E, null, D(e.breadcrumbs, (i, l) => (t(), I(d, R({
65
- key: m.getBreadcrumbItemKey(l),
67
+ (t(!0), o(E, null, D(e.breadcrumbs, (c, l) => (t(), I(i, R({
68
+ key: d.getBreadcrumbItemKey(l),
66
69
  inverted: e.inverted
67
- }, { ref_for: !0 }, i), null, 16, ["inverted"]))), 128))
70
+ }, { ref_for: !0 }, c), null, 16, ["inverted"]))), 128))
68
71
  ])
69
72
  ])
70
73
  ], 10, y);
71
74
  }
72
- const U = /* @__PURE__ */ v(g, [["render", A]]);
75
+ const U = /* @__PURE__ */ v(g, [["render", L]]);
73
76
  export {
74
77
  U as default
75
78
  };
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumbs.js","sources":["../../../components/breadcrumbs/breadcrumbs.vue"],"sourcesContent":["<template>\n <nav\n :aria-label=\"ariaLabel || i18n.$t('DIALTONE_BREADCRUMBS_ARIA_LABEL')\"\n data-qa=\"dt-breadcrumbs\"\n :class=\"[\n 'd-breadcrumbs',\n { [BREADCRUMBS_INVERTED_MODIFIER]: inverted },\n ]\"\n >\n <ol>\n <!-- @slot default slot for breadcrumbs content -->\n <slot>\n <dt-breadcrumb-item\n v-for=\"(item, index) in breadcrumbs\"\n :key=\"getBreadcrumbItemKey(index)\"\n :inverted=\"inverted\"\n v-bind=\"item\"\n />\n </slot>\n </ol>\n </nav>\n</template>\n\n<script>\nimport { BREADCRUMBS_INVERTED_MODIFIER } from './breadcrumbs_constants';\nimport DtBreadcrumbItem from './breadcrumb_item.vue';\nimport utils from '@/common/utils';\nimport { DialtoneLocalization } from '@/localization';\n\n/**\n * Breadcrumbs are links used to provide context for the currently-viewed page\n * and where it is located within the overall site structure.\n * @see https://dialtone.dialpad.com/components/breadcrumbs.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtBreadcrumbs',\n\n components: {\n DtBreadcrumbItem,\n },\n\n props: {\n /**\n * A provided list of breadcrumbs. Overridden by default slot\n */\n breadcrumbs: {\n type: Array,\n default: () => [],\n validate (breadcrumbs) {\n return breadcrumbs.every(({ href, label }) => {\n return href !== undefined && label !== undefined;\n });\n },\n },\n\n /**\n * Passed through to link. If true, applies inverted styles to the link.\n * @values true, false\n */\n inverted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Descriptive label for the navigation content.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n },\n\n data () {\n return {\n BREADCRUMBS_INVERTED_MODIFIER,\n i18n: new DialtoneLocalization(),\n };\n },\n\n methods: {\n getBreadcrumbItemKey (index) {\n return `breadcrumbs-item-${index}-${utils.getUniqueString()}`;\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtBreadcrumbItem","breadcrumbs","href","label","BREADCRUMBS_INVERTED_MODIFIER","DialtoneLocalization","index","utils","_createElementBlock","$props","$data","_normalizeClass","_createElementVNode","_renderSlot","_ctx","_openBlock","_Fragment","_renderList","item","_createBlock","_component_dt_breadcrumb_item","_mergeProps","$options"],"mappings":";;;;;;AAkCA,MAAKA,IAAU;AAAA,EACb,cAAc,EAAE,MAAM;EACtB,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,kBAAAC;AAAA;EAGF,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS,MAAM,CAAA;AAAA,MACf,SAAUC,GAAa;AACrB,eAAOA,EAAY,MAAM,CAAC,EAAE,MAAAC,GAAM,OAAAC,QACzBD,MAAS,UAAaC,MAAU,MACxC;AAAA,MACH;AAAA;;;;;IAOF,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;;;;IAMX,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA;;EAIb,OAAQ;AACN,WAAO;AAAA,MACL,+BAAAC;AAAA,MACA,MAAM,IAAIC,EAAoB;AAAA;EAElC;AAAA,EAEA,SAAS;AAAA,IACP,qBAAsBC,GAAO;AAC3B,aAAO,oBAAoBA,CAAK,IAAIC,EAAM,gBAAe,CAAE;AAAA,IAC7D;AAAA;AAEJ;;;cArFEC,EAmBM,OAAA;AAAA,IAlBH,cAAYC,EAAA,aAAaC,EAAA,KAAK,GAAE,iCAAA;AAAA,IACjC,WAAQ;AAAA,IACP,OAAKC,EAAA;AAAA;MAAoC,EAAA,CAAAD,EAAA,6BAA6B,GAAGD,EAAA,SAAQ;AAAA;;IAKlFG,EAUK,MAAA,MAAA;AAAA,MARHC,EAOOC,yBAPP,MAOO;AAAA,SANLC,EAAA,EAAA,GAAAP,EAKEQ,GAAA,MAAAC,EAJwBR,EAAA,aAAW,CAA3BS,GAAMZ,OADhBS,EAAA,GAAAI,EAKEC,GALFC,EAKE;AAAA,UAHC,KAAKC,EAAA,qBAAqBhB,CAAK;AAAA,UAC/B,UAAUG,EAAA;AAAA,4BACHS,CAAI,GAAA,MAAA,IAAA,CAAA,UAAA,CAAA;;;;;;"}
1
+ {"version":3,"file":"breadcrumbs.js","sources":["../../../components/breadcrumbs/breadcrumbs.vue"],"sourcesContent":["<template>\n <nav\n :aria-label=\"ariaLabel || i18n.$t('DIALTONE_BREADCRUMBS_ARIA_LABEL')\"\n data-qa=\"dt-breadcrumbs\"\n :class=\"[\n 'd-breadcrumbs',\n { [BREADCRUMBS_INVERTED_MODIFIER]: inverted },\n ]\"\n >\n <ol :class=\"['d-breadcrumbs__list']\">\n <!-- @slot default slot for breadcrumbs content -->\n <slot>\n <dt-breadcrumb-item\n v-for=\"(item, index) in breadcrumbs\"\n :key=\"getBreadcrumbItemKey(index)\"\n :inverted=\"inverted\"\n v-bind=\"item\"\n />\n </slot>\n </ol>\n </nav>\n</template>\n\n<script>\nimport { BREADCRUMBS_INVERTED_MODIFIER } from './breadcrumbs_constants';\nimport DtBreadcrumbItem from './breadcrumb_item.vue';\nimport utils from '@/common/utils';\nimport { DialtoneLocalization } from '@/localization';\n\n/**\n * Breadcrumbs are links used to provide context for the currently-viewed page\n * and where it is located within the overall site structure.\n * @see https://dialtone.dialpad.com/components/breadcrumbs.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtBreadcrumbs',\n\n components: {\n DtBreadcrumbItem,\n },\n\n props: {\n /**\n * A provided list of breadcrumbs. Overridden by default slot\n */\n breadcrumbs: {\n type: Array,\n default: () => [],\n validate (breadcrumbs) {\n return breadcrumbs.every(({ href, label }) => {\n return href !== undefined && label !== undefined;\n });\n },\n },\n\n /**\n * @ignore\n * Passed through to link. If true, applies inverted styles to the link.\n * @values true, false\n */\n inverted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Descriptive label for the navigation content.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n },\n\n data () {\n return {\n BREADCRUMBS_INVERTED_MODIFIER,\n i18n: new DialtoneLocalization(),\n };\n },\n\n methods: {\n getBreadcrumbItemKey (index) {\n return `breadcrumbs-item-${index}-${utils.getUniqueString()}`;\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtBreadcrumbItem","breadcrumbs","href","label","BREADCRUMBS_INVERTED_MODIFIER","DialtoneLocalization","index","utils","_createElementBlock","$props","$data","_normalizeClass","_createElementVNode","_hoisted_2","_renderSlot","_ctx","_openBlock","_Fragment","_renderList","item","_createBlock","_component_dt_breadcrumb_item","_mergeProps","$options"],"mappings":";;;;;;AAkCA,MAAKA,IAAU;AAAA,EACb,cAAc,EAAE,MAAM;EACtB,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,kBAAAC;AAAA;EAGF,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS,MAAM,CAAA;AAAA,MACf,SAAUC,GAAa;AACrB,eAAOA,EAAY,MAAM,CAAC,EAAE,MAAAC,GAAM,OAAAC,QACzBD,MAAS,UAAaC,MAAU,MACxC;AAAA,MACH;AAAA;;;;;;IAQF,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;;;;IAMX,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA;;EAIb,OAAQ;AACN,WAAO;AAAA,MACL,+BAAAC;AAAA,MACA,MAAM,IAAIC,EAAoB;AAAA;EAElC;AAAA,EAEA,SAAS;AAAA,IACP,qBAAsBC,GAAO;AAC3B,aAAO,oBAAoBA,CAAK,IAAIC,EAAM,gBAAe,CAAE;AAAA,IAC7D;AAAA;AAEJ;EA9ES,yBAAO,CAAA,qBAAA,CAAuB;;;;cARrCC,EAmBM,OAAA;AAAA,IAlBH,cAAYC,EAAA,aAAaC,EAAA,KAAK,GAAE,iCAAA;AAAA,IACjC,WAAQ;AAAA,IACP,OAAKC,EAAA;AAAA;MAAoC,EAAA,CAAAD,EAAA,6BAA6B,GAAGD,EAAA,SAAQ;AAAA;;IAKlFG,EAUK,MAVLC,GAUK;AAAA,MARHC,EAOOC,yBAPP,MAOO;AAAA,SANLC,EAAA,EAAA,GAAAR,EAKES,GAAA,MAAAC,EAJwBT,EAAA,aAAW,CAA3BU,GAAMb,OADhBU,EAAA,GAAAI,EAKEC,GALFC,EAKE;AAAA,UAHC,KAAKC,EAAA,qBAAqBjB,CAAK;AAAA,UAC/B,UAAUG,EAAA;AAAA,4BACHU,CAAI,GAAA,MAAA,IAAA,CAAA,UAAA,CAAA;;;;;;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e="d-btn--unstyled",n={xs:"d-btn--xs",sm:"d-btn--sm",md:"",lg:"d-btn--lg",xl:"d-btn--xl"},i={default:"",muted:"d-btn--muted",danger:"d-btn--danger",positive:"d-btn--positive",inverted:"d-btn--inverted",unstyled:"d-btn--unstyled"},d={clear:"",outlined:"d-btn--outlined",primary:"d-btn--primary"},o=["submit","reset","button"],r={left:"d-btn__icon--left",right:"d-btn__icon--right",top:"d-btn__icon--top",bottom:"d-btn__icon--bottom"},s=[{circle:!0,kind:"default",importance:"primary",message:t(!0,"default","primary")},{circle:!0,kind:"danger",importance:"outlined",message:t(!0,"danger","outlined")},{circle:!0,kind:"muted",importance:"primary",message:t(!0,"muted","primary")},{circle:!1,kind:"muted",importance:"primary",message:t(!1,"muted","primary")}],a={xs:"200",sm:"200",md:"300",lg:"400",xl:"500"};function t(l,I,_){return`You cannot have a ${l?"circle ":""}button with kind: ${I} and importance: ${_} as it does not exist in our design system. See https://dialtone.dialpad.com/components/button.html for a list of available button styles`}const u={BUTTON_SIZE_MODIFIERS:n,BUTTON_KIND_MODIFIERS:i,BUTTON_IMPORTANCE_MODIFIERS:d,BUTTON_TYPES:o,BUTTON_UNSTYLED_CLASS:e,ICON_POSITION_MODIFIERS:r,INVALID_COMBINATION:s,BUTTON_ICON_SIZES:a};exports.BUTTON_ICON_SIZES=a;exports.BUTTON_IMPORTANCE_MODIFIERS=d;exports.BUTTON_KIND_MODIFIERS=i;exports.BUTTON_SIZE_MODIFIERS=n;exports.BUTTON_TYPES=o;exports.BUTTON_UNSTYLED_CLASS=e;exports.ICON_POSITION_MODIFIERS=r;exports.INVALID_COMBINATION=s;exports.default=u;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e="d-btn--unstyled",n={xs:"d-btn--xs",sm:"d-btn--sm",md:"",lg:"d-btn--lg",xl:"d-btn--xl"},o={default:"",muted:"d-btn--muted",danger:"d-btn--danger",positive:"d-btn--positive",inverted:"d-btn--inverted",unstyled:"d-btn--unstyled"},i={clear:"",outlined:"d-btn--outlined",primary:"d-btn--primary"},d=["submit","reset","button"],r={start:"d-btn__icon--left",end:"d-btn__icon--right",blockStart:"d-btn__icon--top",blockEnd:"d-btn__icon--bottom",left:"d-btn__icon--left",right:"d-btn__icon--right",top:"d-btn__icon--top",bottom:"d-btn__icon--bottom"},s=[{circle:!0,kind:"default",importance:"primary",message:t(!0,"default","primary")},{circle:!0,kind:"danger",importance:"outlined",message:t(!0,"danger","outlined")},{circle:!0,kind:"muted",importance:"primary",message:t(!0,"muted","primary")},{circle:!1,kind:"muted",importance:"primary",message:t(!1,"muted","primary")}],a={xs:"200",sm:"200",md:"300",lg:"400",xl:"500"};function t(_,l,c){return`You cannot have a ${_?"circle ":""}button with kind: ${l} and importance: ${c} as it does not exist in our design system. See https://dialtone.dialpad.com/components/button.html for a list of available button styles`}const I={BUTTON_SIZE_MODIFIERS:n,BUTTON_KIND_MODIFIERS:o,BUTTON_IMPORTANCE_MODIFIERS:i,BUTTON_TYPES:d,BUTTON_UNSTYLED_CLASS:e,ICON_POSITION_MODIFIERS:r,INVALID_COMBINATION:s,BUTTON_ICON_SIZES:a};exports.BUTTON_ICON_SIZES=a;exports.BUTTON_IMPORTANCE_MODIFIERS=i;exports.BUTTON_KIND_MODIFIERS=o;exports.BUTTON_SIZE_MODIFIERS=n;exports.BUTTON_TYPES=d;exports.BUTTON_UNSTYLED_CLASS=e;exports.ICON_POSITION_MODIFIERS=r;exports.INVALID_COMBINATION=s;exports.default=I;
2
2
  //# sourceMappingURL=button-constants.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"button-constants.cjs","sources":["../../../components/button/button_constants.js"],"sourcesContent":["export const BUTTON_UNSTYLED_CLASS = 'd-btn--unstyled';\n\nexport const BUTTON_SIZE_MODIFIERS = {\n xs: 'd-btn--xs',\n sm: 'd-btn--sm',\n md: '',\n lg: 'd-btn--lg',\n xl: 'd-btn--xl',\n};\n\nexport const BUTTON_KIND_MODIFIERS = {\n default: '',\n muted: 'd-btn--muted',\n danger: 'd-btn--danger',\n positive: 'd-btn--positive',\n inverted: 'd-btn--inverted',\n unstyled: 'd-btn--unstyled',\n};\n\nexport const BUTTON_IMPORTANCE_MODIFIERS = {\n clear: '',\n outlined: 'd-btn--outlined',\n primary: 'd-btn--primary',\n};\n\nexport const BUTTON_TYPES = ['submit', 'reset', 'button'];\n\nexport const ICON_POSITION_MODIFIERS = {\n left: 'd-btn__icon--left',\n right: 'd-btn__icon--right',\n top: 'd-btn__icon--top',\n bottom: 'd-btn__icon--bottom',\n};\n\nexport const INVALID_COMBINATION = [\n {\n circle: true,\n kind: 'default',\n importance: 'primary',\n message: _invalidCombinationMessage(true, 'default', 'primary'),\n },\n {\n circle: true,\n kind: 'danger',\n importance: 'outlined',\n message: _invalidCombinationMessage(true, 'danger', 'outlined'),\n },\n {\n circle: true,\n kind: 'muted',\n importance: 'primary',\n message: _invalidCombinationMessage(true, 'muted', 'primary'),\n },\n {\n circle: false,\n kind: 'muted',\n importance: 'primary',\n message: _invalidCombinationMessage(false, 'muted', 'primary'),\n },\n];\n\nexport const BUTTON_ICON_SIZES = {\n xs: '200',\n sm: '200',\n md: '300',\n lg: '400',\n xl: '500',\n};\n\nfunction _invalidCombinationMessage (circle, kind, importance) {\n return `You cannot have a ${circle ? 'circle ' : ''}button \\\nwith kind: ${kind} and importance: ${importance} as it \\\ndoes not exist in our design system. \\\nSee https://dialtone.dialpad.com/components/button.html for a \\\nlist of available button styles`;\n}\n\nexport default {\n BUTTON_SIZE_MODIFIERS,\n BUTTON_KIND_MODIFIERS,\n BUTTON_IMPORTANCE_MODIFIERS,\n BUTTON_TYPES,\n BUTTON_UNSTYLED_CLASS,\n ICON_POSITION_MODIFIERS,\n INVALID_COMBINATION,\n BUTTON_ICON_SIZES,\n};\n"],"names":["BUTTON_UNSTYLED_CLASS","BUTTON_SIZE_MODIFIERS","BUTTON_KIND_MODIFIERS","BUTTON_IMPORTANCE_MODIFIERS","BUTTON_TYPES","ICON_POSITION_MODIFIERS","INVALID_COMBINATION","_invalidCombinationMessage","BUTTON_ICON_SIZES","circle","kind","importance","button_constants"],"mappings":"4GAAY,MAACA,EAAwB,kBAExBC,EAAwB,CACnC,GAAI,YACJ,GAAI,YACJ,GAAI,GACJ,GAAI,YACJ,GAAI,WACN,EAEaC,EAAwB,CACnC,QAAS,GACT,MAAO,eACP,OAAQ,gBACR,SAAU,kBACV,SAAU,kBACV,SAAU,iBACZ,EAEaC,EAA8B,CACzC,MAAO,GACP,SAAU,kBACV,QAAS,gBACX,EAEaC,EAAe,CAAC,SAAU,QAAS,QAAQ,EAE3CC,EAA0B,CACrC,KAAM,oBACN,MAAO,qBACP,IAAK,mBACL,OAAQ,qBACV,EAEaC,EAAsB,CACjC,CACE,OAAQ,GACR,KAAM,UACN,WAAY,UACZ,QAASC,EAA2B,GAAM,UAAW,SAAS,CAClE,EACE,CACE,OAAQ,GACR,KAAM,SACN,WAAY,WACZ,QAASA,EAA2B,GAAM,SAAU,UAAU,CAClE,EACE,CACE,OAAQ,GACR,KAAM,QACN,WAAY,UACZ,QAASA,EAA2B,GAAM,QAAS,SAAS,CAChE,EACE,CACE,OAAQ,GACR,KAAM,QACN,WAAY,UACZ,QAASA,EAA2B,GAAO,QAAS,SAAS,CACjE,CACA,EAEaC,EAAoB,CAC/B,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,KACN,EAEA,SAASD,EAA4BE,EAAQC,EAAMC,EAAY,CAC7D,MAAO,qBAAqBF,EAAS,UAAY,EAAE,qBACxCC,CAAI,oBAAoBC,CAAU,2IAI/C,CAEA,MAAAC,EAAe,CACb,sBAAAX,EACA,sBAAAC,EACA,4BAAAC,EACA,aAAAC,EACA,sBAAAJ,EACA,wBAAAK,EACA,oBAAAC,EACA,kBAAAE,CACF"}
1
+ {"version":3,"file":"button-constants.cjs","sources":["../../../components/button/button_constants.js"],"sourcesContent":["export const BUTTON_UNSTYLED_CLASS = 'd-btn--unstyled';\n\nexport const BUTTON_SIZE_MODIFIERS = {\n xs: 'd-btn--xs',\n sm: 'd-btn--sm',\n md: '',\n lg: 'd-btn--lg',\n xl: 'd-btn--xl',\n};\n\nexport const BUTTON_KIND_MODIFIERS = {\n default: '',\n muted: 'd-btn--muted',\n danger: 'd-btn--danger',\n positive: 'd-btn--positive',\n inverted: 'd-btn--inverted',\n unstyled: 'd-btn--unstyled',\n};\n\nexport const BUTTON_IMPORTANCE_MODIFIERS = {\n clear: '',\n outlined: 'd-btn--outlined',\n primary: 'd-btn--primary',\n};\n\nexport const BUTTON_TYPES = ['submit', 'reset', 'button'];\n\nexport const ICON_POSITION_MODIFIERS = {\n start: 'd-btn__icon--left',\n end: 'd-btn__icon--right',\n blockStart: 'd-btn__icon--top',\n blockEnd: 'd-btn__icon--bottom',\n left: 'd-btn__icon--left',\n right: 'd-btn__icon--right',\n top: 'd-btn__icon--top',\n bottom: 'd-btn__icon--bottom',\n};\n\nexport const INVALID_COMBINATION = [\n {\n circle: true,\n kind: 'default',\n importance: 'primary',\n message: _invalidCombinationMessage(true, 'default', 'primary'),\n },\n {\n circle: true,\n kind: 'danger',\n importance: 'outlined',\n message: _invalidCombinationMessage(true, 'danger', 'outlined'),\n },\n {\n circle: true,\n kind: 'muted',\n importance: 'primary',\n message: _invalidCombinationMessage(true, 'muted', 'primary'),\n },\n {\n circle: false,\n kind: 'muted',\n importance: 'primary',\n message: _invalidCombinationMessage(false, 'muted', 'primary'),\n },\n];\n\nexport const BUTTON_ICON_SIZES = {\n xs: '200',\n sm: '200',\n md: '300',\n lg: '400',\n xl: '500',\n};\n\nfunction _invalidCombinationMessage (circle, kind, importance) {\n return `You cannot have a ${circle ? 'circle ' : ''}button \\\nwith kind: ${kind} and importance: ${importance} as it \\\ndoes not exist in our design system. \\\nSee https://dialtone.dialpad.com/components/button.html for a \\\nlist of available button styles`;\n}\n\nexport default {\n BUTTON_SIZE_MODIFIERS,\n BUTTON_KIND_MODIFIERS,\n BUTTON_IMPORTANCE_MODIFIERS,\n BUTTON_TYPES,\n BUTTON_UNSTYLED_CLASS,\n ICON_POSITION_MODIFIERS,\n INVALID_COMBINATION,\n BUTTON_ICON_SIZES,\n};\n"],"names":["BUTTON_UNSTYLED_CLASS","BUTTON_SIZE_MODIFIERS","BUTTON_KIND_MODIFIERS","BUTTON_IMPORTANCE_MODIFIERS","BUTTON_TYPES","ICON_POSITION_MODIFIERS","INVALID_COMBINATION","_invalidCombinationMessage","BUTTON_ICON_SIZES","circle","kind","importance","button_constants"],"mappings":"4GAAY,MAACA,EAAwB,kBAExBC,EAAwB,CACnC,GAAI,YACJ,GAAI,YACJ,GAAI,GACJ,GAAI,YACJ,GAAI,WACN,EAEaC,EAAwB,CACnC,QAAS,GACT,MAAO,eACP,OAAQ,gBACR,SAAU,kBACV,SAAU,kBACV,SAAU,iBACZ,EAEaC,EAA8B,CACzC,MAAO,GACP,SAAU,kBACV,QAAS,gBACX,EAEaC,EAAe,CAAC,SAAU,QAAS,QAAQ,EAE3CC,EAA0B,CACrC,MAAO,oBACP,IAAK,qBACL,WAAY,mBACZ,SAAU,sBACV,KAAM,oBACN,MAAO,qBACP,IAAK,mBACL,OAAQ,qBACV,EAEaC,EAAsB,CACjC,CACE,OAAQ,GACR,KAAM,UACN,WAAY,UACZ,QAASC,EAA2B,GAAM,UAAW,SAAS,CAClE,EACE,CACE,OAAQ,GACR,KAAM,SACN,WAAY,WACZ,QAASA,EAA2B,GAAM,SAAU,UAAU,CAClE,EACE,CACE,OAAQ,GACR,KAAM,QACN,WAAY,UACZ,QAASA,EAA2B,GAAM,QAAS,SAAS,CAChE,EACE,CACE,OAAQ,GACR,KAAM,QACN,WAAY,UACZ,QAASA,EAA2B,GAAO,QAAS,SAAS,CACjE,CACA,EAEaC,EAAoB,CAC/B,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,MACJ,GAAI,KACN,EAEA,SAASD,EAA4BE,EAAQC,EAAMC,EAAY,CAC7D,MAAO,qBAAqBF,EAAS,UAAY,EAAE,qBACxCC,CAAI,oBAAoBC,CAAU,2IAI/C,CAEA,MAAAC,EAAe,CACb,sBAAAX,EACA,sBAAAC,EACA,4BAAAC,EACA,aAAAC,EACA,sBAAAJ,EACA,wBAAAK,EACA,oBAAAC,EACA,kBAAAE,CACF"}
@@ -1,21 +1,25 @@
1
- const d = "d-btn--unstyled", o = {
1
+ const d = "d-btn--unstyled", i = {
2
2
  xs: "d-btn--xs",
3
3
  sm: "d-btn--sm",
4
4
  md: "",
5
5
  lg: "d-btn--lg",
6
6
  xl: "d-btn--xl"
7
- }, s = {
7
+ }, r = {
8
8
  default: "",
9
9
  muted: "d-btn--muted",
10
10
  danger: "d-btn--danger",
11
11
  positive: "d-btn--positive",
12
12
  inverted: "d-btn--inverted",
13
13
  unstyled: "d-btn--unstyled"
14
- }, r = {
14
+ }, s = {
15
15
  clear: "",
16
16
  outlined: "d-btn--outlined",
17
17
  primary: "d-btn--primary"
18
- }, a = ["submit", "reset", "button"], m = {
18
+ }, a = ["submit", "reset", "button"], c = {
19
+ start: "d-btn__icon--left",
20
+ end: "d-btn__icon--right",
21
+ blockStart: "d-btn__icon--top",
22
+ blockEnd: "d-btn__icon--bottom",
19
23
  left: "d-btn__icon--left",
20
24
  right: "d-btn__icon--right",
21
25
  top: "d-btn__icon--top",
@@ -45,35 +49,35 @@ const d = "d-btn--unstyled", o = {
45
49
  importance: "primary",
46
50
  message: t(!1, "muted", "primary")
47
51
  }
48
- ], c = {
52
+ ], m = {
49
53
  xs: "200",
50
54
  sm: "200",
51
55
  md: "300",
52
56
  lg: "400",
53
57
  xl: "500"
54
58
  };
55
- function t(n, e, i) {
56
- return `You cannot have a ${n ? "circle " : ""}button with kind: ${e} and importance: ${i} as it does not exist in our design system. See https://dialtone.dialpad.com/components/button.html for a list of available button styles`;
59
+ function t(n, e, o) {
60
+ return `You cannot have a ${n ? "circle " : ""}button with kind: ${e} and importance: ${o} as it does not exist in our design system. See https://dialtone.dialpad.com/components/button.html for a list of available button styles`;
57
61
  }
58
- const u = {
59
- BUTTON_SIZE_MODIFIERS: o,
60
- BUTTON_KIND_MODIFIERS: s,
61
- BUTTON_IMPORTANCE_MODIFIERS: r,
62
+ const b = {
63
+ BUTTON_SIZE_MODIFIERS: i,
64
+ BUTTON_KIND_MODIFIERS: r,
65
+ BUTTON_IMPORTANCE_MODIFIERS: s,
62
66
  BUTTON_TYPES: a,
63
67
  BUTTON_UNSTYLED_CLASS: d,
64
- ICON_POSITION_MODIFIERS: m,
68
+ ICON_POSITION_MODIFIERS: c,
65
69
  INVALID_COMBINATION: l,
66
- BUTTON_ICON_SIZES: c
70
+ BUTTON_ICON_SIZES: m
67
71
  };
68
72
  export {
69
- c as BUTTON_ICON_SIZES,
70
- r as BUTTON_IMPORTANCE_MODIFIERS,
71
- s as BUTTON_KIND_MODIFIERS,
72
- o as BUTTON_SIZE_MODIFIERS,
73
+ m as BUTTON_ICON_SIZES,
74
+ s as BUTTON_IMPORTANCE_MODIFIERS,
75
+ r as BUTTON_KIND_MODIFIERS,
76
+ i as BUTTON_SIZE_MODIFIERS,
73
77
  a as BUTTON_TYPES,
74
78
  d as BUTTON_UNSTYLED_CLASS,
75
- m as ICON_POSITION_MODIFIERS,
79
+ c as ICON_POSITION_MODIFIERS,
76
80
  l as INVALID_COMBINATION,
77
- u as default
81
+ b as default
78
82
  };
79
83
  //# sourceMappingURL=button-constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"button-constants.js","sources":["../../../components/button/button_constants.js"],"sourcesContent":["export const BUTTON_UNSTYLED_CLASS = 'd-btn--unstyled';\n\nexport const BUTTON_SIZE_MODIFIERS = {\n xs: 'd-btn--xs',\n sm: 'd-btn--sm',\n md: '',\n lg: 'd-btn--lg',\n xl: 'd-btn--xl',\n};\n\nexport const BUTTON_KIND_MODIFIERS = {\n default: '',\n muted: 'd-btn--muted',\n danger: 'd-btn--danger',\n positive: 'd-btn--positive',\n inverted: 'd-btn--inverted',\n unstyled: 'd-btn--unstyled',\n};\n\nexport const BUTTON_IMPORTANCE_MODIFIERS = {\n clear: '',\n outlined: 'd-btn--outlined',\n primary: 'd-btn--primary',\n};\n\nexport const BUTTON_TYPES = ['submit', 'reset', 'button'];\n\nexport const ICON_POSITION_MODIFIERS = {\n left: 'd-btn__icon--left',\n right: 'd-btn__icon--right',\n top: 'd-btn__icon--top',\n bottom: 'd-btn__icon--bottom',\n};\n\nexport const INVALID_COMBINATION = [\n {\n circle: true,\n kind: 'default',\n importance: 'primary',\n message: _invalidCombinationMessage(true, 'default', 'primary'),\n },\n {\n circle: true,\n kind: 'danger',\n importance: 'outlined',\n message: _invalidCombinationMessage(true, 'danger', 'outlined'),\n },\n {\n circle: true,\n kind: 'muted',\n importance: 'primary',\n message: _invalidCombinationMessage(true, 'muted', 'primary'),\n },\n {\n circle: false,\n kind: 'muted',\n importance: 'primary',\n message: _invalidCombinationMessage(false, 'muted', 'primary'),\n },\n];\n\nexport const BUTTON_ICON_SIZES = {\n xs: '200',\n sm: '200',\n md: '300',\n lg: '400',\n xl: '500',\n};\n\nfunction _invalidCombinationMessage (circle, kind, importance) {\n return `You cannot have a ${circle ? 'circle ' : ''}button \\\nwith kind: ${kind} and importance: ${importance} as it \\\ndoes not exist in our design system. \\\nSee https://dialtone.dialpad.com/components/button.html for a \\\nlist of available button styles`;\n}\n\nexport default {\n BUTTON_SIZE_MODIFIERS,\n BUTTON_KIND_MODIFIERS,\n BUTTON_IMPORTANCE_MODIFIERS,\n BUTTON_TYPES,\n BUTTON_UNSTYLED_CLASS,\n ICON_POSITION_MODIFIERS,\n INVALID_COMBINATION,\n BUTTON_ICON_SIZES,\n};\n"],"names":["BUTTON_UNSTYLED_CLASS","BUTTON_SIZE_MODIFIERS","BUTTON_KIND_MODIFIERS","BUTTON_IMPORTANCE_MODIFIERS","BUTTON_TYPES","ICON_POSITION_MODIFIERS","INVALID_COMBINATION","_invalidCombinationMessage","BUTTON_ICON_SIZES","circle","kind","importance","button_constants"],"mappings":"AAAY,MAACA,IAAwB,mBAExBC,IAAwB;AAAA,EACnC,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN,GAEaC,IAAwB;AAAA,EACnC,SAAS;AAAA,EACT,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,UAAU;AAAA,EACV,UAAU;AACZ,GAEaC,IAA8B;AAAA,EACzC,OAAO;AAAA,EACP,UAAU;AAAA,EACV,SAAS;AACX,GAEaC,IAAe,CAAC,UAAU,SAAS,QAAQ,GAE3CC,IAA0B;AAAA,EACrC,MAAM;AAAA,EACN,OAAO;AAAA,EACP,KAAK;AAAA,EACL,QAAQ;AACV,GAEaC,IAAsB;AAAA,EACjC;AAAA,IACE,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,SAASC,EAA2B,IAAM,WAAW,SAAS;AAAA,EAClE;AAAA,EACE;AAAA,IACE,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,SAASA,EAA2B,IAAM,UAAU,UAAU;AAAA,EAClE;AAAA,EACE;AAAA,IACE,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,SAASA,EAA2B,IAAM,SAAS,SAAS;AAAA,EAChE;AAAA,EACE;AAAA,IACE,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,SAASA,EAA2B,IAAO,SAAS,SAAS;AAAA,EACjE;AACA,GAEaC,IAAoB;AAAA,EAC/B,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAEA,SAASD,EAA4BE,GAAQC,GAAMC,GAAY;AAC7D,SAAO,qBAAqBF,IAAS,YAAY,EAAE,qBACxCC,CAAI,oBAAoBC,CAAU;AAI/C;AAEA,MAAAC,IAAe;AAAA,EACb,uBAAAX;AAAA,EACA,uBAAAC;AAAA,EACA,6BAAAC;AAAA,EACA,cAAAC;AAAA,EACA,uBAAAJ;AAAA,EACA,yBAAAK;AAAA,EACA,qBAAAC;AAAA,EACA,mBAAAE;AACF;"}
1
+ {"version":3,"file":"button-constants.js","sources":["../../../components/button/button_constants.js"],"sourcesContent":["export const BUTTON_UNSTYLED_CLASS = 'd-btn--unstyled';\n\nexport const BUTTON_SIZE_MODIFIERS = {\n xs: 'd-btn--xs',\n sm: 'd-btn--sm',\n md: '',\n lg: 'd-btn--lg',\n xl: 'd-btn--xl',\n};\n\nexport const BUTTON_KIND_MODIFIERS = {\n default: '',\n muted: 'd-btn--muted',\n danger: 'd-btn--danger',\n positive: 'd-btn--positive',\n inverted: 'd-btn--inverted',\n unstyled: 'd-btn--unstyled',\n};\n\nexport const BUTTON_IMPORTANCE_MODIFIERS = {\n clear: '',\n outlined: 'd-btn--outlined',\n primary: 'd-btn--primary',\n};\n\nexport const BUTTON_TYPES = ['submit', 'reset', 'button'];\n\nexport const ICON_POSITION_MODIFIERS = {\n start: 'd-btn__icon--left',\n end: 'd-btn__icon--right',\n blockStart: 'd-btn__icon--top',\n blockEnd: 'd-btn__icon--bottom',\n left: 'd-btn__icon--left',\n right: 'd-btn__icon--right',\n top: 'd-btn__icon--top',\n bottom: 'd-btn__icon--bottom',\n};\n\nexport const INVALID_COMBINATION = [\n {\n circle: true,\n kind: 'default',\n importance: 'primary',\n message: _invalidCombinationMessage(true, 'default', 'primary'),\n },\n {\n circle: true,\n kind: 'danger',\n importance: 'outlined',\n message: _invalidCombinationMessage(true, 'danger', 'outlined'),\n },\n {\n circle: true,\n kind: 'muted',\n importance: 'primary',\n message: _invalidCombinationMessage(true, 'muted', 'primary'),\n },\n {\n circle: false,\n kind: 'muted',\n importance: 'primary',\n message: _invalidCombinationMessage(false, 'muted', 'primary'),\n },\n];\n\nexport const BUTTON_ICON_SIZES = {\n xs: '200',\n sm: '200',\n md: '300',\n lg: '400',\n xl: '500',\n};\n\nfunction _invalidCombinationMessage (circle, kind, importance) {\n return `You cannot have a ${circle ? 'circle ' : ''}button \\\nwith kind: ${kind} and importance: ${importance} as it \\\ndoes not exist in our design system. \\\nSee https://dialtone.dialpad.com/components/button.html for a \\\nlist of available button styles`;\n}\n\nexport default {\n BUTTON_SIZE_MODIFIERS,\n BUTTON_KIND_MODIFIERS,\n BUTTON_IMPORTANCE_MODIFIERS,\n BUTTON_TYPES,\n BUTTON_UNSTYLED_CLASS,\n ICON_POSITION_MODIFIERS,\n INVALID_COMBINATION,\n BUTTON_ICON_SIZES,\n};\n"],"names":["BUTTON_UNSTYLED_CLASS","BUTTON_SIZE_MODIFIERS","BUTTON_KIND_MODIFIERS","BUTTON_IMPORTANCE_MODIFIERS","BUTTON_TYPES","ICON_POSITION_MODIFIERS","INVALID_COMBINATION","_invalidCombinationMessage","BUTTON_ICON_SIZES","circle","kind","importance","button_constants"],"mappings":"AAAY,MAACA,IAAwB,mBAExBC,IAAwB;AAAA,EACnC,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN,GAEaC,IAAwB;AAAA,EACnC,SAAS;AAAA,EACT,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,UAAU;AAAA,EACV,UAAU;AACZ,GAEaC,IAA8B;AAAA,EACzC,OAAO;AAAA,EACP,UAAU;AAAA,EACV,SAAS;AACX,GAEaC,IAAe,CAAC,UAAU,SAAS,QAAQ,GAE3CC,IAA0B;AAAA,EACrC,OAAO;AAAA,EACP,KAAK;AAAA,EACL,YAAY;AAAA,EACZ,UAAU;AAAA,EACV,MAAM;AAAA,EACN,OAAO;AAAA,EACP,KAAK;AAAA,EACL,QAAQ;AACV,GAEaC,IAAsB;AAAA,EACjC;AAAA,IACE,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,SAASC,EAA2B,IAAM,WAAW,SAAS;AAAA,EAClE;AAAA,EACE;AAAA,IACE,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,SAASA,EAA2B,IAAM,UAAU,UAAU;AAAA,EAClE;AAAA,EACE;AAAA,IACE,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,SAASA,EAA2B,IAAM,SAAS,SAAS;AAAA,EAChE;AAAA,EACE;AAAA,IACE,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,SAASA,EAA2B,IAAO,SAAS,SAAS;AAAA,EACjE;AACA,GAEaC,IAAoB;AAAA,EAC/B,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAEA,SAASD,EAA4BE,GAAQC,GAAMC,GAAY;AAC7D,SAAO,qBAAqBF,IAAS,YAAY,EAAE,qBACxCC,CAAI,oBAAoBC,CAAU;AAI/C;AAEA,MAAAC,IAAe;AAAA,EACb,uBAAAX;AAAA,EACA,uBAAAC;AAAA,EACA,6BAAAC;AAAA,EACA,cAAAC;AAAA,EACA,uBAAAJ;AAAA,EACA,yBAAAK;AAAA,EACA,qBAAAC;AAAA,EACA,mBAAAE;AACF;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),r=require("../../common/utils/index.cjs"),n=require("./button-constants.cjs"),d=require("../../localization/index.cjs"),c=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),u=require("../link/link-constants.cjs"),h={compatConfig:{MODE:3},name:"DtButton",props:{circle:{type:Boolean,default:!1},iconPosition:{type:String,default:"left",validator:t=>Object.keys(n.ICON_POSITION_MODIFIERS).includes(t)},importance:{type:String,default:"primary",validator:t=>Object.keys(n.BUTTON_IMPORTANCE_MODIFIERS).includes(t)},link:{type:Boolean,default:!1},linkKind:{type:String,default:"default",validator:t=>Object.keys(u.LINK_KIND_MODIFIERS).includes(t)},linkInverted:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},type:{type:String,default:"button",validator:t=>n.BUTTON_TYPES.includes(t)},width:{type:String,default:null},size:{type:String,default:"md",validator:t=>Object.keys(n.BUTTON_SIZE_MODIFIERS).includes(t)},labelClass:{type:[String,Array,Object],default:""},loading:{type:Boolean,default:!1},kind:{type:String,default:"default",validator:t=>Object.keys(n.BUTTON_KIND_MODIFIERS).includes(t)},assertiveOnFocus:{type:Boolean,default:!1},active:{type:Boolean,default:!1},to:{type:[String,Object],default:null},href:{type:String,default:null},target:{type:String,default:null},rel:{type:String,default:null},replace:{type:Boolean,default:!1}},emits:["focusin","focusout"],data(){return{ICON_POSITION_MODIFIERS:n.ICON_POSITION_MODIFIERS,isInFocus:!1,hasSlotContent:r.hasSlotContent,i18n:new d.DialtoneLocalization}},computed:{computedTag(){return this.to?this.resolveRouterLink():this.href?"a":"button"},isNativeButton(){return!this.to&&!this.href},computedAttrs(){return this.to?{to:this.to,replace:this.replace,...this.disabled&&{"aria-disabled":"true",tabindex:"-1"}}:this.href?{href:this.disabled?null:this.href,target:this.target,rel:this.rel,...this.disabled&&{"aria-disabled":"true",tabindex:"-1"}}:{type:this.type,disabled:this.disabled}},computedListeners(){const t={focusin:i=>{this.isInFocus=this.assertiveOnFocus,this.$emit("focusin",i)},focusout:i=>{this.isInFocus=!1,this.$emit("focusout",i)}};return this.isNativeButton||(this.disabled&&(t.click=i=>{i.preventDefault(),i.stopImmediatePropagation()}),t.keydown=i=>{(i.key===" "||i.code==="Space")&&(i.preventDefault(),this.disabled||i.target.click())}),t},computedAriaLive(){return this.assertiveOnFocus&&this.isInFocus?"assertive":this.$attrs.ariaLive},iconSize(){return n.BUTTON_ICON_SIZES[this.size]}},watch:{$props:{deep:!0,immediate:!0,handler(){process.env.NODE_ENV!=="production"&&(this.circle&&this.link&&e.warn("You cannot enable circle and link at the same time",this),this.isInvalidPropCombination(this.circle,this.kind,this.importance))}}},methods:{resolveRouterLink(){try{return e.resolveComponent("RouterLink")}catch{return e.warn('DtButton: "to" prop requires vue-router. Falling back to <a>.'),"a"}},buttonClasses(){return this.link?["d-link",u.getLinkKindModifier(this.linkKind,this.linkInverted),n.BUTTON_SIZE_MODIFIERS[this.size]]:this.kind==="unstyled"?["d-btn--unstyled"]:["d-btn",n.BUTTON_IMPORTANCE_MODIFIERS[this.importance],n.BUTTON_KIND_MODIFIERS[this.kind],n.BUTTON_SIZE_MODIFIERS[this.size],{"d-btn--circle":this.circle,"d-btn--loading":this.loading,"d-btn--icon-only":this.isIconOnly(),"d-btn--vertical":this.isVerticalIconLayout(),"d-btn--active":this.active}]},isInvalidPropCombination(t,i,s){if(this.kind==="unstyled")return!0;for(const l of n.INVALID_COMBINATION)if(t===l.circle&&i===l.kind&&s===l.importance)return e.warn(l.message),!1;return!0},shouldRenderIcon(){return r.hasSlotContent(this.$slots.icon)&&!this.link},isIconOnly(){return this.shouldRenderIcon()&&!r.hasSlotContent(this.$slots.default)},isVerticalIconLayout(){return!this.isIconOnly()&&["top","bottom"].includes(this.iconPosition)}}};function f(t,i,s,l,o,a){return e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.computedTag),e.mergeProps({class:["base-button__button",a.buttonClasses()],"data-qa":"dt-button",style:{width:s.width},"aria-live":a.computedAriaLive,"aria-label":s.loading?o.i18n.$t("DIALTONE_LOADING"):t.$attrs["aria-label"]},a.computedAttrs,e.toHandlers(a.computedListeners)),{default:e.withCtx(()=>[a.shouldRenderIcon()?(e.openBlock(),e.createElementBlock("span",{key:0,"data-qa":"dt-button-icon",class:e.normalizeClass(["base-button__icon",{"d-btn__icon":s.kind!=="unstyled",[o.ICON_POSITION_MODIFIERS[s.iconPosition]]:s.kind!=="unstyled"}])},[e.renderSlot(t.$slots,"icon",{iconSize:a.iconSize})],2)):e.createCommentVNode("",!0),o.hasSlotContent(t.$slots.default)?(e.openBlock(),e.createElementBlock("span",{key:1,"data-qa":"dt-button-label",class:e.normalizeClass(["base-button__label",{"d-btn__label":s.kind!=="unstyled"},s.labelClass])},[e.renderSlot(t.$slots,"default")],2)):e.createCommentVNode("",!0)]),_:3},16,["class","style","aria-live","aria-label"])}const I=c._(h,[["render",f]]);exports.default=I;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("vue"),a=require("../../common/utils/index.cjs"),o=require("./button-constants.cjs"),d=require("../../localization/index.cjs"),u=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),c=require("../link/link-constants.cjs"),h={compatConfig:{MODE:3},name:"DtButton",props:{circle:{type:Boolean,default:!1},iconPosition:{type:String,default:"start",validator:e=>Object.keys(o.ICON_POSITION_MODIFIERS).includes(e)},importance:{type:String,default:"primary",validator:e=>Object.keys(o.BUTTON_IMPORTANCE_MODIFIERS).includes(e)},link:{type:Boolean,default:!1},linkKind:{type:String,default:"default",validator:e=>Object.keys(c.LINK_KIND_MODIFIERS).includes(e)},linkInverted:{type:Boolean,default:!1},underline:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},type:{type:String,default:"button",validator:e=>o.BUTTON_TYPES.includes(e)},width:{type:String,default:null},size:{type:String,default:"md",validator:e=>Object.keys(o.BUTTON_SIZE_MODIFIERS).includes(e)},labelClass:{type:[String,Array,Object],default:""},leadingClass:{type:[String,Array,Object],default:""},trailingClass:{type:[String,Array,Object],default:""},loading:{type:Boolean,default:!1},kind:{type:String,default:"default",validator:e=>Object.keys(o.BUTTON_KIND_MODIFIERS).includes(e)},assertiveOnFocus:{type:Boolean,default:!1},active:{type:Boolean,default:!1},to:{type:[String,Object],default:null},href:{type:String,default:null},target:{type:String,default:null},rel:{type:String,default:null},replace:{type:Boolean,default:!1}},emits:["focusin","focusout"],data(){return{ICON_POSITION_MODIFIERS:o.ICON_POSITION_MODIFIERS,isInFocus:!1,hasSlotContent:a.hasSlotContent,i18n:new d.DialtoneLocalization}},computed:{computedTag(){return this.to?this.resolveRouterLink():this.href?"a":"button"},isNativeButton(){return!this.to&&!this.href},computedAttrs(){return this.to?{to:this.to,replace:this.replace,...this.disabled&&{"aria-disabled":"true",tabindex:"-1"}}:this.href?{href:this.disabled?null:this.href,target:this.target,rel:this.rel,...this.disabled&&{"aria-disabled":"true",tabindex:"-1"}}:{type:this.type,disabled:this.disabled}},computedListeners(){const e={focusin:i=>{this.isInFocus=this.assertiveOnFocus,this.$emit("focusin",i)},focusout:i=>{this.isInFocus=!1,this.$emit("focusout",i)}};return this.isNativeButton||(this.disabled&&(e.click=i=>{i.preventDefault(),i.stopImmediatePropagation()}),e.keydown=i=>{(i.key===" "||i.code==="Space")&&(i.preventDefault(),this.disabled||i.target.click())}),e},computedAriaLive(){return this.assertiveOnFocus&&this.isInFocus?"assertive":this.$attrs.ariaLive},iconSize(){return o.BUTTON_ICON_SIZES[this.size]}},watch:{$props:{deep:!0,immediate:!0,handler(){process.env.NODE_ENV!=="production"&&(this.circle&&this.link&&t.warn("You cannot enable circle and link at the same time",this),this.isInvalidPropCombination(this.circle,this.kind,this.importance))}}},methods:{resolveRouterLink(){try{return t.resolveComponent("RouterLink")}catch{return t.warn('DtButton: "to" prop requires vue-router. Falling back to <a>.'),"a"}},buttonClasses(){return this.link?["d-link",c.getLinkKindModifier(this.linkKind,this.linkInverted),o.BUTTON_SIZE_MODIFIERS[this.size],{"d-link--no-underline":!this.underline}]:this.kind==="unstyled"?["d-btn--unstyled"]:["d-btn",o.BUTTON_IMPORTANCE_MODIFIERS[this.importance],o.BUTTON_KIND_MODIFIERS[this.kind],o.BUTTON_SIZE_MODIFIERS[this.size],{"d-btn--circle":this.circle,"d-btn--loading":this.loading,"d-btn--icon-only":this.isIconOnly(),"d-btn--vertical":this.isVerticalIconLayout(),"d-btn--active":this.active}]},isInvalidPropCombination(e,i,n){if(this.kind==="unstyled")return!0;for(const r of o.INVALID_COMBINATION)if(e===r.circle&&i===r.kind&&n===r.importance)return t.warn(r.message),!1;return!0},hasStartIcon(){return a.hasSlotContent(this.$slots.startIcon)},hasEndIcon(){return a.hasSlotContent(this.$slots.endIcon)},hasBlockStartIcon(){return a.hasSlotContent(this.$slots.blockStartIcon)},hasBlockEndIcon(){return a.hasSlotContent(this.$slots.blockEndIcon)},hasNewIconSlots(){return this.hasStartIcon()||this.hasEndIcon()||this.hasBlockStartIcon()||this.hasBlockEndIcon()},shouldRenderLegacyIcon(){return a.hasSlotContent(this.$slots.icon)&&!this.hasNewIconSlots()&&!this.link},isIconOnly(){return(this.hasNewIconSlots()||this.shouldRenderLegacyIcon())&&!a.hasSlotContent(this.$slots.default)},isVerticalIconLayout(){return this.isIconOnly()?!1:this.hasBlockStartIcon()||this.hasBlockEndIcon()?!0:!this.hasNewIconSlots()&&["top","bottom"].includes(this.iconPosition)}}};function I(e,i,n,r,l,s){return t.openBlock(),t.createBlock(t.resolveDynamicComponent(s.computedTag),t.mergeProps({class:["base-button__button",s.buttonClasses()],"data-qa":"dt-button",style:{width:n.width},"aria-live":s.computedAriaLive,"aria-label":n.loading?l.i18n.$t("DIALTONE_LOADING"):e.$attrs["aria-label"]},s.computedAttrs,t.toHandlers(s.computedListeners)),{default:t.withCtx(()=>[l.hasSlotContent(e.$slots.leading)?(t.openBlock(),t.createElementBlock("span",{key:0,class:t.normalizeClass(["d-btn__leading",n.leadingClass])},[t.renderSlot(e.$slots,"leading")],2)):t.createCommentVNode("",!0),l.hasSlotContent(e.$slots.blockStartIcon)?(t.openBlock(),t.createElementBlock("span",{key:1,"data-qa":"dt-button-block-start-icon",class:t.normalizeClass(["base-button__icon",{"d-btn__icon":n.kind!=="unstyled","d-btn__icon--top":n.kind!=="unstyled"}])},[t.renderSlot(e.$slots,"blockStartIcon",{iconSize:s.iconSize})],2)):t.createCommentVNode("",!0),l.hasSlotContent(e.$slots.startIcon)?(t.openBlock(),t.createElementBlock("span",{key:2,"data-qa":"dt-button-start-icon",class:t.normalizeClass(["base-button__icon",{"d-btn__icon":n.kind!=="unstyled","d-btn__icon--left":n.kind!=="unstyled"}])},[t.renderSlot(e.$slots,"startIcon",{iconSize:s.iconSize})],2)):t.createCommentVNode("",!0),s.shouldRenderLegacyIcon()?(t.openBlock(),t.createElementBlock("span",{key:3,"data-qa":"dt-button-icon",class:t.normalizeClass(["base-button__icon",{"d-btn__icon":n.kind!=="unstyled",[l.ICON_POSITION_MODIFIERS[n.iconPosition]]:n.kind!=="unstyled"}])},[t.renderSlot(e.$slots,"icon",{iconSize:s.iconSize})],2)):t.createCommentVNode("",!0),l.hasSlotContent(e.$slots.default)?(t.openBlock(),t.createElementBlock("span",{key:4,"data-qa":"dt-button-label",class:t.normalizeClass(["base-button__label",{"d-btn__label":n.kind!=="unstyled"},n.labelClass])},[t.renderSlot(e.$slots,"default")],2)):t.createCommentVNode("",!0),l.hasSlotContent(e.$slots.endIcon)?(t.openBlock(),t.createElementBlock("span",{key:5,"data-qa":"dt-button-end-icon",class:t.normalizeClass(["base-button__icon",{"d-btn__icon":n.kind!=="unstyled","d-btn__icon--right":n.kind!=="unstyled"}])},[t.renderSlot(e.$slots,"endIcon",{iconSize:s.iconSize})],2)):t.createCommentVNode("",!0),l.hasSlotContent(e.$slots.blockEndIcon)?(t.openBlock(),t.createElementBlock("span",{key:6,"data-qa":"dt-button-block-end-icon",class:t.normalizeClass(["base-button__icon",{"d-btn__icon":n.kind!=="unstyled","d-btn__icon--bottom":n.kind!=="unstyled"}])},[t.renderSlot(e.$slots,"blockEndIcon",{iconSize:s.iconSize})],2)):t.createCommentVNode("",!0),l.hasSlotContent(e.$slots.trailing)?(t.openBlock(),t.createElementBlock("span",{key:7,class:t.normalizeClass(["d-btn__trailing",n.trailingClass])},[t.renderSlot(e.$slots,"trailing")],2)):t.createCommentVNode("",!0)]),_:3},16,["class","style","aria-live","aria-label"])}const b=u._(h,[["render",I]]);exports.default=b;
2
2
  //# sourceMappingURL=button.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"button.cjs","sources":["../../../components/button/button.vue"],"sourcesContent":["<template>\n <component\n :is=\"computedTag\"\n :class=\"[\n 'base-button__button',\n buttonClasses(),\n ]\"\n data-qa=\"dt-button\"\n :style=\"{ width: width }\"\n :aria-live=\"computedAriaLive\"\n :aria-label=\"loading ? i18n.$t('DIALTONE_LOADING') : $attrs['aria-label']\"\n v-bind=\"computedAttrs\"\n v-on=\"computedListeners\"\n >\n <!-- NOTE(cormac): This span is needed since we can't apply styles to slots. -->\n <span\n v-if=\"shouldRenderIcon()\"\n data-qa=\"dt-button-icon\"\n :class=\"[\n 'base-button__icon',\n {\n 'd-btn__icon': kind !== 'unstyled',\n [ICON_POSITION_MODIFIERS[iconPosition]]: kind !== 'unstyled',\n },\n ]\"\n >\n <!-- @slot Button icon -->\n <slot\n name=\"icon\"\n :icon-size=\"iconSize\"\n />\n </span>\n <span\n v-if=\"hasSlotContent($slots.default)\"\n data-qa=\"dt-button-label\"\n :class=\"[\n 'base-button__label',\n { 'd-btn__label': kind !== 'unstyled' },\n labelClass,\n ]\"\n >\n <!-- @slot Content within button -->\n <slot />\n </span>\n </component>\n</template>\n\n<script>\nimport { warn, resolveComponent } from 'vue';\nimport { hasSlotContent } from '@/common/utils';\n\nimport {\n BUTTON_SIZE_MODIFIERS,\n BUTTON_KIND_MODIFIERS,\n BUTTON_IMPORTANCE_MODIFIERS,\n BUTTON_ICON_SIZES,\n BUTTON_TYPES,\n ICON_POSITION_MODIFIERS,\n INVALID_COMBINATION,\n} from './button_constants';\n\nimport { LINK_KIND_MODIFIERS, getLinkKindModifier } from '@/components/link';\nimport { DialtoneLocalization } from '@/localization';\n\n/**\n * A button is a UI element which allows users to take an action throughout the app.\n * It is important a button is identifiable, consistent, and communicates its actions clearly,\n * and is appropriately sized to its action.\n * @see https://dialtone.dialpad.com/components/button.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtButton',\n\n props: {\n /**\n * Whether the button is a circle or not.\n * @values true, false\n */\n circle: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The position of the icon slot within the button.\n * @values left, right, top, bottom\n */\n iconPosition: {\n type: String,\n default: 'left',\n validator: (position) => Object.keys(ICON_POSITION_MODIFIERS).includes(position),\n },\n\n /**\n * The fill and outline of the button associated with its visual importance.\n * @values clear, outlined, primary\n */\n importance: {\n type: String,\n default: 'primary',\n validator: (i) => Object.keys(BUTTON_IMPORTANCE_MODIFIERS).includes(i),\n },\n\n /**\n * Whether the button should be styled as a link or not.\n * @values true, false\n * @see DtLink\n */\n link: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The color of the link and button if the button is styled as a link.\n * @values default, warning, danger, success, muted\n * @see DtLink\n */\n linkKind: {\n type: String,\n default: 'default',\n validator: (lk) => Object.keys(LINK_KIND_MODIFIERS).includes(lk),\n },\n\n /**\n * Determines whether the link should have inverted styling if the button is styled as a link.\n * @values true, false\n * @see DtLink\n */\n linkInverted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML button disabled attribute\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#disabled\" target=\"_blank\"> (Reference) </a>\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML button type attribute\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-type\" target=\"_blank\">(Reference)</a>\n * @values button, submit, reset\n */\n type: {\n type: String,\n default: 'button',\n validator: (t) => BUTTON_TYPES.includes(t),\n },\n\n /**\n * Button width, accepts\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/width\" target=\"_blank\">CSS width attribute</a> values\n */\n width: {\n type: String,\n default: null,\n },\n\n /**\n * The size of the button.\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(BUTTON_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * Used to customize the label container\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Whether the button should display a loading animation or not.\n * @values true, false\n */\n loading: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The color of the button.\n * @values default, unstyled, muted, danger, positive, inverted\n */\n kind: {\n type: String,\n default: 'default',\n validator: (k) => Object.keys(BUTTON_KIND_MODIFIERS).includes(k),\n },\n\n /**\n * Determines whether a screenreader reads live updates of\n * the button content to the user while the button\n * is in focus. default is to not.\n * @values true, false\n */\n assertiveOnFocus: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Determines whether the button should have active styling\n * default is false.\n * @values true, false\n */\n active: {\n type: Boolean,\n default: false,\n },\n\n /**\n * vue-router `to` prop. When provided, renders a `<router-link>`\n * for client-side SPA navigation.\n * @see https://router.vuejs.org/api/interfaces/RouterLinkProps.html#to\n */\n to: {\n type: [String, Object],\n default: null,\n },\n\n /**\n * When provided, renders an `<a>` element for standard browser navigation.\n */\n href: {\n type: String,\n default: null,\n },\n\n /**\n * HTML anchor target attribute. Only applied when using the `href` prop.\n * @values _self, _blank, _parent, _top\n */\n target: {\n type: String,\n default: null,\n },\n\n /**\n * HTML anchor rel attribute. Only applied when using the `href` prop.\n */\n rel: {\n type: String,\n default: null,\n },\n\n /**\n * vue-router `replace` prop. When true, navigation will not leave a\n * history entry. Only applied when using the `to` prop.\n * @values true, false\n */\n replace: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n /**\n * Native button focus in event\n *\n * @event focusin\n * @type {FocusEvent}\n */\n 'focusin',\n\n /**\n * Native button focus out event\n *\n * @event focusout\n * @type {FocusEvent}\n */\n 'focusout',\n ],\n\n data () {\n return {\n ICON_POSITION_MODIFIERS,\n // whether the button is currently in focus\n isInFocus: false,\n hasSlotContent,\n i18n: new DialtoneLocalization(),\n };\n },\n\n computed: {\n computedTag () {\n if (this.to) return this.resolveRouterLink();\n if (this.href) return 'a';\n return 'button';\n },\n\n isNativeButton () {\n return !this.to && !this.href;\n },\n\n computedAttrs () {\n if (this.to) {\n return {\n to: this.to,\n replace: this.replace,\n ...(this.disabled && { 'aria-disabled': 'true', tabindex: '-1' }),\n };\n }\n if (this.href) {\n return {\n href: this.disabled ? null : this.href,\n target: this.target,\n rel: this.rel,\n ...(this.disabled && { 'aria-disabled': 'true', tabindex: '-1' }),\n };\n }\n return {\n type: this.type,\n disabled: this.disabled,\n };\n },\n\n computedListeners () {\n const listeners = {\n focusin: (e) => {\n this.isInFocus = this.assertiveOnFocus;\n this.$emit('focusin', e);\n },\n\n focusout: (e) => {\n this.isInFocus = false;\n this.$emit('focusout', e);\n },\n };\n\n if (!this.isNativeButton) {\n // Prevent click when disabled for link elements.\n // stopImmediatePropagation prevents parent onClick attrs from firing.\n if (this.disabled) {\n listeners.click = (e) => {\n e.preventDefault();\n e.stopImmediatePropagation();\n };\n }\n\n // Space key handler: <a> only responds to Enter natively,\n // but buttons respond to both Enter and Space.\n listeners.keydown = (e) => {\n if (e.key === ' ' || e.code === 'Space') {\n e.preventDefault();\n if (!this.disabled) {\n e.target.click();\n }\n }\n };\n }\n\n return listeners;\n },\n\n computedAriaLive () {\n return this.assertiveOnFocus && this.isInFocus ? 'assertive' : this.$attrs.ariaLive;\n },\n\n iconSize () {\n return BUTTON_ICON_SIZES[this.size];\n },\n },\n\n watch: {\n $props: {\n deep: true,\n immediate: true,\n handler () {\n if (process.env.NODE_ENV === 'production') return;\n\n if (this.circle && this.link) {\n warn('You cannot enable circle and link at the same time', this);\n }\n\n this.isInvalidPropCombination(this.circle, this.kind, this.importance);\n },\n },\n },\n\n methods: {\n resolveRouterLink () {\n try {\n return resolveComponent('RouterLink');\n } catch {\n warn('DtButton: \"to\" prop requires vue-router. Falling back to <a>.');\n return 'a';\n }\n },\n\n buttonClasses () {\n if (this.link) {\n return [\n 'd-link',\n getLinkKindModifier(this.linkKind, this.linkInverted),\n BUTTON_SIZE_MODIFIERS[this.size],\n ];\n }\n if (this.kind === 'unstyled') {\n return ['d-btn--unstyled'];\n }\n return [\n 'd-btn',\n BUTTON_IMPORTANCE_MODIFIERS[this.importance],\n BUTTON_KIND_MODIFIERS[this.kind],\n BUTTON_SIZE_MODIFIERS[this.size],\n {\n 'd-btn--circle': this.circle,\n 'd-btn--loading': this.loading,\n 'd-btn--icon-only': this.isIconOnly(),\n 'd-btn--vertical': this.isVerticalIconLayout(),\n 'd-btn--active': this.active,\n },\n ];\n },\n\n isInvalidPropCombination (circle, kind, importance) {\n // Skip validation if unstyled is true\n if (this.kind === 'unstyled') {\n return true;\n }\n\n for (const row of INVALID_COMBINATION) {\n if (circle === row.circle && kind === row.kind && importance === row.importance) {\n warn(row.message);\n return false;\n }\n }\n return true;\n },\n\n shouldRenderIcon () {\n return hasSlotContent(this.$slots.icon) && !this.link;\n },\n\n isIconOnly () {\n return this.shouldRenderIcon() && !hasSlotContent(this.$slots.default);\n },\n\n isVerticalIconLayout () {\n return !this.isIconOnly() && ['top', 'bottom'].includes(this.iconPosition);\n },\n },\n};\n</script>\n"],"names":["_sfc_main","position","ICON_POSITION_MODIFIERS","i","BUTTON_IMPORTANCE_MODIFIERS","lk","LINK_KIND_MODIFIERS","BUTTON_TYPES","s","BUTTON_SIZE_MODIFIERS","k","BUTTON_KIND_MODIFIERS","hasSlotContent","DialtoneLocalization","listeners","e","BUTTON_ICON_SIZES","warn","resolveComponent","getLinkKindModifier","circle","kind","importance","row","INVALID_COMBINATION","_createBlock","_resolveDynamicComponent","$options","_mergeProps","$props","$data","_ctx","_toHandlers","_createElementBlock","_normalizeClass","_renderSlot"],"mappings":"6VAsEKA,EAAU,CACb,aAAc,CAAE,KAAM,GACtB,KAAM,WAEN,MAAO,CAKL,OAAQ,CACN,KAAM,QACN,QAAS,IAOX,aAAc,CACZ,KAAM,OACN,QAAS,OACT,UAAYC,GAAa,OAAO,KAAKC,yBAAuB,EAAE,SAASD,CAAQ,GAOjF,WAAY,CACV,KAAM,OACN,QAAS,UACT,UAAYE,GAAM,OAAO,KAAKC,6BAA2B,EAAE,SAASD,CAAC,GAQvE,KAAM,CACJ,KAAM,QACN,QAAS,IAQX,SAAU,CACR,KAAM,OACN,QAAS,UACT,UAAYE,GAAO,OAAO,KAAKC,qBAAmB,EAAE,SAASD,CAAE,GAQjE,aAAc,CACZ,KAAM,QACN,QAAS,IAQX,SAAU,CACR,KAAM,QACN,QAAS,IAQX,KAAM,CACJ,KAAM,OACN,QAAS,SACT,UAAY,GAAME,eAAa,SAAS,CAAC,GAO3C,MAAO,CACL,KAAM,OACN,QAAS,MAOX,KAAM,CACJ,KAAM,OACN,QAAS,KACT,UAAYC,GAAM,OAAO,KAAKC,uBAAqB,EAAE,SAASD,CAAC,GAMjE,WAAY,CACV,KAAM,CAAC,OAAQ,MAAO,MAAM,EAC5B,QAAS,IAOX,QAAS,CACP,KAAM,QACN,QAAS,IAOX,KAAM,CACJ,KAAM,OACN,QAAS,UACT,UAAYE,GAAM,OAAO,KAAKC,uBAAqB,EAAE,SAASD,CAAC,GASjE,iBAAkB,CAChB,KAAM,QACN,QAAS,IAQX,OAAQ,CACN,KAAM,QACN,QAAS,IAQX,GAAI,CACF,KAAM,CAAC,OAAQ,MAAM,EACrB,QAAS,MAMX,KAAM,CACJ,KAAM,OACN,QAAS,MAOX,OAAQ,CACN,KAAM,OACN,QAAS,MAMX,IAAK,CACH,KAAM,OACN,QAAS,MAQX,QAAS,CACP,KAAM,QACN,QAAS,KAIb,MAAO,CAOL,UAQA,YAGF,MAAQ,CACN,MAAO,yBACLR,EAAAA,wBAEA,UAAW,GACX,eAAAU,EAAAA,eACA,KAAM,IAAIC,EAAAA,qBAEd,EAEA,SAAU,CACR,aAAe,CACb,OAAI,KAAK,GAAW,KAAK,kBAAiB,EACtC,KAAK,KAAa,IACf,QACT,EAEA,gBAAkB,CAChB,MAAO,CAAC,KAAK,IAAM,CAAC,KAAK,IAC3B,EAEA,eAAiB,CACf,OAAI,KAAK,GACA,CACL,GAAI,KAAK,GACT,QAAS,KAAK,QACd,GAAI,KAAK,UAAY,CAAE,gBAAiB,OAAQ,SAAU,OAG1D,KAAK,KACA,CACL,KAAM,KAAK,SAAW,KAAO,KAAK,KAClC,OAAQ,KAAK,OACb,IAAK,KAAK,IACV,GAAI,KAAK,UAAY,CAAE,gBAAiB,OAAQ,SAAU,OAGvD,CACL,KAAM,KAAK,KACX,SAAU,KAAK,SAEnB,EAEA,mBAAqB,CACnB,MAAMC,EAAY,CAChB,QAAUC,GAAM,CACd,KAAK,UAAY,KAAK,iBACtB,KAAK,MAAM,UAAWA,CAAC,CACzB,EAEA,SAAWA,GAAM,CACf,KAAK,UAAY,GACjB,KAAK,MAAM,WAAYA,CAAC,CAC1B,GAGF,OAAK,KAAK,iBAGJ,KAAK,WACPD,EAAU,MAASC,GAAM,CACvBA,EAAE,eAAc,EAChBA,EAAE,yBAAwB,CAC5B,GAKFD,EAAU,QAAWC,GAAM,EACrBA,EAAE,MAAQ,KAAOA,EAAE,OAAS,WAC9BA,EAAE,eAAc,EACX,KAAK,UACRA,EAAE,OAAO,MAAK,EAGpB,GAGKD,CACT,EAEA,kBAAoB,CAClB,OAAO,KAAK,kBAAoB,KAAK,UAAY,YAAc,KAAK,OAAO,QAC7E,EAEA,UAAY,CACV,OAAOE,EAAAA,kBAAkB,KAAK,IAAI,CACpC,GAGF,MAAO,CACL,OAAQ,CACN,KAAM,GACN,UAAW,GACX,SAAW,CACL,QAAQ,IAAI,WAAa,eAEzB,KAAK,QAAU,KAAK,MACtBC,EAAAA,KAAK,qDAAsD,IAAI,EAGjE,KAAK,yBAAyB,KAAK,OAAQ,KAAK,KAAM,KAAK,UAAU,EACvE,IAIJ,QAAS,CACP,mBAAqB,CACnB,GAAI,CACF,OAAOC,EAAAA,iBAAiB,YAAY,CACtC,MAAQ,CACND,OAAAA,EAAAA,KAAK,+DAA+D,EAC7D,GACT,CACF,EAEA,eAAiB,CACf,OAAI,KAAK,KACA,CACL,SACAE,EAAAA,oBAAoB,KAAK,SAAU,KAAK,YAAY,EACpDV,EAAAA,sBAAsB,KAAK,IAAI,GAG/B,KAAK,OAAS,WACT,CAAC,iBAAiB,EAEpB,CACL,QACAL,EAAAA,4BAA4B,KAAK,UAAU,EAC3CO,EAAAA,sBAAsB,KAAK,IAAI,EAC/BF,EAAAA,sBAAsB,KAAK,IAAI,EAC/B,CACE,gBAAiB,KAAK,OACtB,iBAAkB,KAAK,QACvB,mBAAoB,KAAK,WAAU,EACnC,kBAAmB,KAAK,qBAAoB,EAC5C,gBAAiB,KAAK,QAG5B,EAEA,yBAA0BW,EAAQC,EAAMC,EAAY,CAElD,GAAI,KAAK,OAAS,WAChB,MAAO,GAGT,UAAWC,KAAOC,sBAChB,GAAIJ,IAAWG,EAAI,QAAUF,IAASE,EAAI,MAAQD,IAAeC,EAAI,WACnEN,OAAAA,EAAAA,KAAKM,EAAI,OAAO,EACT,GAGX,MAAO,EACT,EAEA,kBAAoB,CAClB,OAAOX,EAAAA,eAAe,KAAK,OAAO,IAAI,GAAK,CAAC,KAAK,IACnD,EAEA,YAAc,CACZ,OAAO,KAAK,oBAAsB,CAACA,EAAAA,eAAe,KAAK,OAAO,OAAO,CACvE,EAEA,sBAAwB,CACtB,MAAO,CAAC,KAAK,WAAU,GAAM,CAAC,MAAO,QAAQ,EAAE,SAAS,KAAK,YAAY,CAC3E,EAEJ,+CAvcEa,cA2CYC,EAAAA,wBA1CLC,EAAA,WAAW,EADlBC,aA2CY,CAzCT,MAAK,uBAAuCD,EAAA,cAAa,GAI1D,UAAQ,YACP,aAAgBE,EAAA,KAAK,EACrB,YAAWF,EAAA,iBACX,aAAYE,EAAA,QAAUC,OAAK,uBAAyBC,EAAA,OAAM,YAAA,GACnDJ,EAAA,cACRK,EAAAA,WAAML,EAAA,iBAAiB,CAAA,EAAA,mBAGvB,IAgBO,CAfCA,EAAA,iBAAgB,iBADxBM,EAAAA,mBAgBO,OAAA,OAdL,UAAQ,iBACP,MAAKC,EAAAA,eAAA,oCAAoEL,EAAA,OAAI,YAA4BC,EAAA,wBAAwBD,EAAA,YAAY,CAAA,EAAIA,EAAA,OAAI,gBAStJM,EAAAA,WAGEJ,EAAA,OAAA,OAAA,CADC,SAAWJ,EAAA,QAAQ,CAAA,mCAIhBG,EAAA,eAAeC,EAAA,OAAO,OAAO,iBADrCE,EAAAA,mBAWO,OAAA,OATL,UAAQ,kBACP,MAAKC,EAAAA,eAAA,sCAA4DL,EAAA,OAAI,UAAA,EAA2BA,EAAA,eAOjGM,aAAQJ,EAAA,OAAA,SAAA"}
1
+ {"version":3,"file":"button.cjs","sources":["../../../components/button/button.vue"],"sourcesContent":["<template>\n <component\n :is=\"computedTag\"\n :class=\"[\n 'base-button__button',\n buttonClasses(),\n ]\"\n data-qa=\"dt-button\"\n :style=\"{ width: width }\"\n :aria-live=\"computedAriaLive\"\n :aria-label=\"loading ? i18n.$t('DIALTONE_LOADING') : $attrs['aria-label']\"\n v-bind=\"computedAttrs\"\n v-on=\"computedListeners\"\n >\n <span\n v-if=\"hasSlotContent($slots.leading)\"\n :class=\"['d-btn__leading', leadingClass]\"\n >\n <!-- @slot Optional leading content at the start of the button, such as badges or indicators -->\n <slot name=\"leading\" />\n </span>\n <!-- NEW: Block-start icon slot (above label) -->\n <span\n v-if=\"hasSlotContent($slots.blockStartIcon)\"\n data-qa=\"dt-button-block-start-icon\"\n :class=\"[\n 'base-button__icon',\n {\n 'd-btn__icon': kind !== 'unstyled',\n 'd-btn__icon--top': kind !== 'unstyled',\n },\n ]\"\n >\n <!-- @slot Icon displayed above the button label (block-start) -->\n <slot\n name=\"blockStartIcon\"\n :icon-size=\"iconSize\"\n />\n </span>\n <!-- NEW: Start icon slot -->\n <span\n v-if=\"hasSlotContent($slots.startIcon)\"\n data-qa=\"dt-button-start-icon\"\n :class=\"[\n 'base-button__icon',\n {\n 'd-btn__icon': kind !== 'unstyled',\n 'd-btn__icon--left': kind !== 'unstyled',\n },\n ]\"\n >\n <!-- @slot Icon displayed at the start (left in LTR) of the button -->\n <slot\n name=\"startIcon\"\n :icon-size=\"iconSize\"\n />\n </span>\n <!-- NOTE(cormac): This span is needed since we can't apply styles to slots. -->\n <span\n v-if=\"shouldRenderLegacyIcon()\"\n data-qa=\"dt-button-icon\"\n :class=\"[\n 'base-button__icon',\n {\n 'd-btn__icon': kind !== 'unstyled',\n [ICON_POSITION_MODIFIERS[iconPosition]]: kind !== 'unstyled',\n },\n ]\"\n >\n <!-- @slot Button icon -->\n <slot\n name=\"icon\"\n :icon-size=\"iconSize\"\n />\n </span>\n <span\n v-if=\"hasSlotContent($slots.default)\"\n data-qa=\"dt-button-label\"\n :class=\"[\n 'base-button__label',\n { 'd-btn__label': kind !== 'unstyled' },\n labelClass,\n ]\"\n >\n <!-- @slot Content within button -->\n <slot />\n </span>\n <!-- NEW: End icon slot -->\n <span\n v-if=\"hasSlotContent($slots.endIcon)\"\n data-qa=\"dt-button-end-icon\"\n :class=\"[\n 'base-button__icon',\n {\n 'd-btn__icon': kind !== 'unstyled',\n 'd-btn__icon--right': kind !== 'unstyled',\n },\n ]\"\n >\n <!-- @slot Icon displayed at the end (right in LTR) of the button -->\n <slot\n name=\"endIcon\"\n :icon-size=\"iconSize\"\n />\n </span>\n <!-- NEW: Block-end icon slot (below label) -->\n <span\n v-if=\"hasSlotContent($slots.blockEndIcon)\"\n data-qa=\"dt-button-block-end-icon\"\n :class=\"[\n 'base-button__icon',\n {\n 'd-btn__icon': kind !== 'unstyled',\n 'd-btn__icon--bottom': kind !== 'unstyled',\n },\n ]\"\n >\n <!-- @slot Icon displayed below the button label (block-end) -->\n <slot\n name=\"blockEndIcon\"\n :icon-size=\"iconSize\"\n />\n </span>\n <span\n v-if=\"hasSlotContent($slots.trailing)\"\n :class=\"['d-btn__trailing', trailingClass]\"\n >\n <!-- @slot Optional trailing content at the end of the button, such as badges or indicators -->\n <slot name=\"trailing\" />\n </span>\n </component>\n</template>\n\n<script>\nimport { warn, resolveComponent } from 'vue';\nimport { hasSlotContent } from '@/common/utils';\n\nimport {\n BUTTON_SIZE_MODIFIERS,\n BUTTON_KIND_MODIFIERS,\n BUTTON_IMPORTANCE_MODIFIERS,\n BUTTON_ICON_SIZES,\n BUTTON_TYPES,\n ICON_POSITION_MODIFIERS,\n INVALID_COMBINATION,\n} from './button_constants';\n\nimport { LINK_KIND_MODIFIERS, getLinkKindModifier } from '@/components/link';\nimport { DialtoneLocalization } from '@/localization';\n\n/**\n * A button is a UI element which allows users to take an action throughout the app.\n * It is important a button is identifiable, consistent, and communicates its actions clearly,\n * and is appropriately sized to its action.\n * @see https://dialtone.dialpad.com/components/button.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtButton',\n\n props: {\n /**\n * Whether the button is a circle or not.\n * @values true, false\n */\n circle: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The position of the icon slot within the button.\n * @deprecated Use startIcon / endIcon / blockStartIcon / blockEndIcon slots instead.\n * @values start, end, blockStart, blockEnd, left, right, top, bottom\n */\n iconPosition: {\n type: String,\n default: 'start',\n validator: (position) => Object.keys(ICON_POSITION_MODIFIERS).includes(position),\n },\n\n /**\n * The fill and outline of the button associated with its visual importance.\n * @values clear, outlined, primary\n */\n importance: {\n type: String,\n default: 'primary',\n validator: (i) => Object.keys(BUTTON_IMPORTANCE_MODIFIERS).includes(i),\n },\n\n /**\n * Whether the button should be styled as a link or not.\n * @values true, false\n * @see DtLink\n */\n link: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The color of the link and button if the button is styled as a link.\n * @values default, warning, danger, success, muted\n * @see DtLink\n */\n linkKind: {\n type: String,\n default: 'default',\n validator: (lk) => Object.keys(LINK_KIND_MODIFIERS).includes(lk),\n },\n\n /**\n * Determines whether the link should have inverted styling if the button is styled as a link.\n * @values true, false\n * @see DtLink\n * @ignore\n */\n linkInverted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Determines whether the link-styled button should display an underline.\n * Only applies when the link prop is true.\n * @values true, false\n */\n underline: {\n type: Boolean,\n default: true,\n },\n\n /**\n * HTML button disabled attribute\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#disabled\" target=\"_blank\"> (Reference) </a>\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML button type attribute\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-type\" target=\"_blank\">(Reference)</a>\n * @values button, submit, reset\n */\n type: {\n type: String,\n default: 'button',\n validator: (t) => BUTTON_TYPES.includes(t),\n },\n\n /**\n * Button width, accepts\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/width\" target=\"_blank\">CSS width attribute</a> values\n */\n width: {\n type: String,\n default: null,\n },\n\n /**\n * The size of the button.\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(BUTTON_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * Used to customize the label container\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the leading container\n */\n leadingClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the trailing container\n */\n trailingClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Whether the button should display a loading animation or not.\n * @values true, false\n */\n loading: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The color of the button.\n * @values default, unstyled, muted, danger, positive\n */\n kind: {\n type: String,\n default: 'default',\n validator: (k) => Object.keys(BUTTON_KIND_MODIFIERS).includes(k),\n },\n\n /**\n * Determines whether a screenreader reads live updates of\n * the button content to the user while the button\n * is in focus. default is to not.\n * @values true, false\n */\n assertiveOnFocus: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Determines whether the button should have active styling\n * default is false.\n * @values true, false\n */\n active: {\n type: Boolean,\n default: false,\n },\n\n /**\n * vue-router `to` prop. When provided, renders a `<router-link>`\n * for client-side SPA navigation.\n * @see https://router.vuejs.org/api/interfaces/RouterLinkProps.html#to\n */\n to: {\n type: [String, Object],\n default: null,\n },\n\n /**\n * When provided, renders an `<a>` element for standard browser navigation.\n */\n href: {\n type: String,\n default: null,\n },\n\n /**\n * HTML anchor target attribute. Only applied when using the `href` prop.\n * @values _self, _blank, _parent, _top\n */\n target: {\n type: String,\n default: null,\n },\n\n /**\n * HTML anchor rel attribute. Only applied when using the `href` prop.\n */\n rel: {\n type: String,\n default: null,\n },\n\n /**\n * vue-router `replace` prop. When true, navigation will not leave a\n * history entry. Only applied when using the `to` prop.\n * @values true, false\n */\n replace: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n /**\n * Native button focus in event\n *\n * @event focusin\n * @type {FocusEvent}\n */\n 'focusin',\n\n /**\n * Native button focus out event\n *\n * @event focusout\n * @type {FocusEvent}\n */\n 'focusout',\n ],\n\n data () {\n return {\n ICON_POSITION_MODIFIERS,\n // whether the button is currently in focus\n isInFocus: false,\n hasSlotContent,\n i18n: new DialtoneLocalization(),\n };\n },\n\n computed: {\n computedTag () {\n if (this.to) return this.resolveRouterLink();\n if (this.href) return 'a';\n return 'button';\n },\n\n isNativeButton () {\n return !this.to && !this.href;\n },\n\n computedAttrs () {\n if (this.to) {\n return {\n to: this.to,\n replace: this.replace,\n ...(this.disabled && { 'aria-disabled': 'true', tabindex: '-1' }),\n };\n }\n if (this.href) {\n return {\n href: this.disabled ? null : this.href,\n target: this.target,\n rel: this.rel,\n ...(this.disabled && { 'aria-disabled': 'true', tabindex: '-1' }),\n };\n }\n return {\n type: this.type,\n disabled: this.disabled,\n };\n },\n\n computedListeners () {\n const listeners = {\n focusin: (e) => {\n this.isInFocus = this.assertiveOnFocus;\n this.$emit('focusin', e);\n },\n\n focusout: (e) => {\n this.isInFocus = false;\n this.$emit('focusout', e);\n },\n };\n\n if (!this.isNativeButton) {\n // Prevent click when disabled for link elements.\n // stopImmediatePropagation prevents parent onClick attrs from firing.\n if (this.disabled) {\n listeners.click = (e) => {\n e.preventDefault();\n e.stopImmediatePropagation();\n };\n }\n\n // Space key handler: <a> only responds to Enter natively,\n // but buttons respond to both Enter and Space.\n listeners.keydown = (e) => {\n if (e.key === ' ' || e.code === 'Space') {\n e.preventDefault();\n if (!this.disabled) {\n e.target.click();\n }\n }\n };\n }\n\n return listeners;\n },\n\n computedAriaLive () {\n return this.assertiveOnFocus && this.isInFocus ? 'assertive' : this.$attrs.ariaLive;\n },\n\n iconSize () {\n return BUTTON_ICON_SIZES[this.size];\n },\n\n },\n\n watch: {\n $props: {\n deep: true,\n immediate: true,\n handler () {\n if (process.env.NODE_ENV === 'production') return;\n\n if (this.circle && this.link) {\n warn('You cannot enable circle and link at the same time', this);\n }\n\n this.isInvalidPropCombination(this.circle, this.kind, this.importance);\n },\n },\n },\n\n methods: {\n resolveRouterLink () {\n try {\n return resolveComponent('RouterLink');\n } catch {\n warn('DtButton: \"to\" prop requires vue-router. Falling back to <a>.');\n return 'a';\n }\n },\n\n buttonClasses () {\n if (this.link) {\n return [\n 'd-link',\n getLinkKindModifier(this.linkKind, this.linkInverted),\n BUTTON_SIZE_MODIFIERS[this.size],\n { 'd-link--no-underline': !this.underline },\n ];\n }\n if (this.kind === 'unstyled') {\n return ['d-btn--unstyled'];\n }\n return [\n 'd-btn',\n BUTTON_IMPORTANCE_MODIFIERS[this.importance],\n BUTTON_KIND_MODIFIERS[this.kind],\n BUTTON_SIZE_MODIFIERS[this.size],\n {\n 'd-btn--circle': this.circle,\n 'd-btn--loading': this.loading,\n 'd-btn--icon-only': this.isIconOnly(),\n 'd-btn--vertical': this.isVerticalIconLayout(),\n 'd-btn--active': this.active,\n },\n ];\n },\n\n isInvalidPropCombination (circle, kind, importance) {\n // Skip validation if unstyled is true\n if (this.kind === 'unstyled') {\n return true;\n }\n\n for (const row of INVALID_COMBINATION) {\n if (circle === row.circle && kind === row.kind && importance === row.importance) {\n warn(row.message);\n return false;\n }\n }\n return true;\n },\n\n hasStartIcon () {\n return hasSlotContent(this.$slots.startIcon);\n },\n\n hasEndIcon () {\n return hasSlotContent(this.$slots.endIcon);\n },\n\n hasBlockStartIcon () {\n return hasSlotContent(this.$slots.blockStartIcon);\n },\n\n hasBlockEndIcon () {\n return hasSlotContent(this.$slots.blockEndIcon);\n },\n\n hasNewIconSlots () {\n return this.hasStartIcon() || this.hasEndIcon() || this.hasBlockStartIcon() || this.hasBlockEndIcon();\n },\n\n shouldRenderLegacyIcon () {\n return hasSlotContent(this.$slots.icon) && !this.hasNewIconSlots() && !this.link;\n },\n\n isIconOnly () {\n return (this.hasNewIconSlots() || this.shouldRenderLegacyIcon()) && !hasSlotContent(this.$slots.default);\n },\n\n isVerticalIconLayout () {\n if (this.isIconOnly()) return false;\n if (this.hasBlockStartIcon() || this.hasBlockEndIcon()) return true;\n return !this.hasNewIconSlots() && ['top', 'bottom'].includes(this.iconPosition);\n },\n },\n};\n</script>\n"],"names":["_sfc_main","position","ICON_POSITION_MODIFIERS","i","BUTTON_IMPORTANCE_MODIFIERS","lk","LINK_KIND_MODIFIERS","t","BUTTON_TYPES","s","BUTTON_SIZE_MODIFIERS","k","BUTTON_KIND_MODIFIERS","hasSlotContent","DialtoneLocalization","listeners","e","BUTTON_ICON_SIZES","warn","resolveComponent","getLinkKindModifier","circle","kind","importance","row","INVALID_COMBINATION","_createBlock","_resolveDynamicComponent","$options","_mergeProps","$props","$data","_ctx","_toHandlers","_createElementBlock","_renderSlot","_normalizeClass"],"mappings":"6VA4JKA,EAAU,CACb,aAAc,CAAE,KAAM,GACtB,KAAM,WAEN,MAAO,CAKL,OAAQ,CACN,KAAM,QACN,QAAS,IAQX,aAAc,CACZ,KAAM,OACN,QAAS,QACT,UAAYC,GAAa,OAAO,KAAKC,yBAAuB,EAAE,SAASD,CAAQ,GAOjF,WAAY,CACV,KAAM,OACN,QAAS,UACT,UAAYE,GAAM,OAAO,KAAKC,6BAA2B,EAAE,SAASD,CAAC,GAQvE,KAAM,CACJ,KAAM,QACN,QAAS,IAQX,SAAU,CACR,KAAM,OACN,QAAS,UACT,UAAYE,GAAO,OAAO,KAAKC,qBAAmB,EAAE,SAASD,CAAE,GASjE,aAAc,CACZ,KAAM,QACN,QAAS,IAQX,UAAW,CACT,KAAM,QACN,QAAS,IAQX,SAAU,CACR,KAAM,QACN,QAAS,IAQX,KAAM,CACJ,KAAM,OACN,QAAS,SACT,UAAYE,GAAMC,eAAa,SAASD,CAAC,GAO3C,MAAO,CACL,KAAM,OACN,QAAS,MAOX,KAAM,CACJ,KAAM,OACN,QAAS,KACT,UAAYE,GAAM,OAAO,KAAKC,uBAAqB,EAAE,SAASD,CAAC,GAMjE,WAAY,CACV,KAAM,CAAC,OAAQ,MAAO,MAAM,EAC5B,QAAS,IAMX,aAAc,CACZ,KAAM,CAAC,OAAQ,MAAO,MAAM,EAC5B,QAAS,IAMX,cAAe,CACb,KAAM,CAAC,OAAQ,MAAO,MAAM,EAC5B,QAAS,IAOX,QAAS,CACP,KAAM,QACN,QAAS,IAOX,KAAM,CACJ,KAAM,OACN,QAAS,UACT,UAAYE,GAAM,OAAO,KAAKC,uBAAqB,EAAE,SAASD,CAAC,GASjE,iBAAkB,CAChB,KAAM,QACN,QAAS,IAQX,OAAQ,CACN,KAAM,QACN,QAAS,IAQX,GAAI,CACF,KAAM,CAAC,OAAQ,MAAM,EACrB,QAAS,MAMX,KAAM,CACJ,KAAM,OACN,QAAS,MAOX,OAAQ,CACN,KAAM,OACN,QAAS,MAMX,IAAK,CACH,KAAM,OACN,QAAS,MAQX,QAAS,CACP,KAAM,QACN,QAAS,KAIb,MAAO,CAOL,UAQA,YAGF,MAAQ,CACN,MAAO,yBACLT,EAAAA,wBAEA,UAAW,GACX,eAAAW,EAAAA,eACA,KAAM,IAAIC,EAAAA,qBAEd,EAEA,SAAU,CACR,aAAe,CACb,OAAI,KAAK,GAAW,KAAK,kBAAiB,EACtC,KAAK,KAAa,IACf,QACT,EAEA,gBAAkB,CAChB,MAAO,CAAC,KAAK,IAAM,CAAC,KAAK,IAC3B,EAEA,eAAiB,CACf,OAAI,KAAK,GACA,CACL,GAAI,KAAK,GACT,QAAS,KAAK,QACd,GAAI,KAAK,UAAY,CAAE,gBAAiB,OAAQ,SAAU,OAG1D,KAAK,KACA,CACL,KAAM,KAAK,SAAW,KAAO,KAAK,KAClC,OAAQ,KAAK,OACb,IAAK,KAAK,IACV,GAAI,KAAK,UAAY,CAAE,gBAAiB,OAAQ,SAAU,OAGvD,CACL,KAAM,KAAK,KACX,SAAU,KAAK,SAEnB,EAEA,mBAAqB,CACnB,MAAMC,EAAY,CAChB,QAAUC,GAAM,CACd,KAAK,UAAY,KAAK,iBACtB,KAAK,MAAM,UAAWA,CAAC,CACzB,EAEA,SAAWA,GAAM,CACf,KAAK,UAAY,GACjB,KAAK,MAAM,WAAYA,CAAC,CAC1B,GAGF,OAAK,KAAK,iBAGJ,KAAK,WACPD,EAAU,MAASC,GAAM,CACvBA,EAAE,eAAc,EAChBA,EAAE,yBAAwB,CAC5B,GAKFD,EAAU,QAAWC,GAAM,EACrBA,EAAE,MAAQ,KAAOA,EAAE,OAAS,WAC9BA,EAAE,eAAc,EACX,KAAK,UACRA,EAAE,OAAO,MAAK,EAGpB,GAGKD,CACT,EAEA,kBAAoB,CAClB,OAAO,KAAK,kBAAoB,KAAK,UAAY,YAAc,KAAK,OAAO,QAC7E,EAEA,UAAY,CACV,OAAOE,EAAAA,kBAAkB,KAAK,IAAI,CACpC,GAIF,MAAO,CACL,OAAQ,CACN,KAAM,GACN,UAAW,GACX,SAAW,CACL,QAAQ,IAAI,WAAa,eAEzB,KAAK,QAAU,KAAK,MACtBC,EAAAA,KAAK,qDAAsD,IAAI,EAGjE,KAAK,yBAAyB,KAAK,OAAQ,KAAK,KAAM,KAAK,UAAU,EACvE,IAIJ,QAAS,CACP,mBAAqB,CACnB,GAAI,CACF,OAAOC,EAAAA,iBAAiB,YAAY,CACtC,MAAQ,CACND,OAAAA,EAAAA,KAAK,+DAA+D,EAC7D,GACT,CACF,EAEA,eAAiB,CACf,OAAI,KAAK,KACA,CACL,SACAE,EAAAA,oBAAoB,KAAK,SAAU,KAAK,YAAY,EACpDV,EAAAA,sBAAsB,KAAK,IAAI,EAC/B,CAAE,uBAAwB,CAAC,KAAK,YAGhC,KAAK,OAAS,WACT,CAAC,iBAAiB,EAEpB,CACL,QACAN,EAAAA,4BAA4B,KAAK,UAAU,EAC3CQ,EAAAA,sBAAsB,KAAK,IAAI,EAC/BF,EAAAA,sBAAsB,KAAK,IAAI,EAC/B,CACE,gBAAiB,KAAK,OACtB,iBAAkB,KAAK,QACvB,mBAAoB,KAAK,WAAU,EACnC,kBAAmB,KAAK,qBAAoB,EAC5C,gBAAiB,KAAK,QAG5B,EAEA,yBAA0BW,EAAQC,EAAMC,EAAY,CAElD,GAAI,KAAK,OAAS,WAChB,MAAO,GAGT,UAAWC,KAAOC,sBAChB,GAAIJ,IAAWG,EAAI,QAAUF,IAASE,EAAI,MAAQD,IAAeC,EAAI,WACnEN,OAAAA,EAAAA,KAAKM,EAAI,OAAO,EACT,GAGX,MAAO,EACT,EAEA,cAAgB,CACd,OAAOX,iBAAe,KAAK,OAAO,SAAS,CAC7C,EAEA,YAAc,CACZ,OAAOA,iBAAe,KAAK,OAAO,OAAO,CAC3C,EAEA,mBAAqB,CACnB,OAAOA,iBAAe,KAAK,OAAO,cAAc,CAClD,EAEA,iBAAmB,CACjB,OAAOA,iBAAe,KAAK,OAAO,YAAY,CAChD,EAEA,iBAAmB,CACjB,OAAO,KAAK,aAAY,GAAM,KAAK,cAAgB,KAAK,kBAAiB,GAAM,KAAK,gBAAe,CACrG,EAEA,wBAA0B,CACxB,OAAOA,EAAAA,eAAe,KAAK,OAAO,IAAI,GAAK,CAAC,KAAK,gBAAe,GAAM,CAAC,KAAK,IAC9E,EAEA,YAAc,CACZ,OAAQ,KAAK,gBAAe,GAAM,KAAK,2BAA6B,CAACA,iBAAe,KAAK,OAAO,OAAO,CACzG,EAEA,sBAAwB,CACtB,OAAI,KAAK,WAAU,EAAW,GAC1B,KAAK,kBAAiB,GAAM,KAAK,gBAAe,EAAW,GACxD,CAAC,KAAK,gBAAe,GAAM,CAAC,MAAO,QAAQ,EAAE,SAAS,KAAK,YAAY,CAChF,EAEJ,+CAjlBEa,cAiIYC,EAAAA,wBAhILC,EAAA,WAAW,EADlBC,aAiIY,CA/HT,MAAK,uBAAuCD,EAAA,cAAa,GAI1D,UAAQ,YACP,aAAgBE,EAAA,KAAK,EACrB,YAAWF,EAAA,iBACX,aAAYE,EAAA,QAAUC,OAAK,uBAAyBC,EAAA,OAAM,YAAA,GACnDJ,EAAA,cACRK,EAAAA,WAAML,EAAA,iBAAiB,CAAA,EAAA,mBAEvB,IAMO,CALCG,EAAA,eAAeC,EAAA,OAAO,OAAO,iBADrCE,EAAAA,mBAMO,OAAA,OAJJ,yCAA0BJ,EAAA,YAAY,CAAA,IAGvCK,aAAuBH,EAAA,OAAA,SAAA,mCAIjBD,EAAA,eAAeC,EAAA,OAAO,cAAc,iBAD5CE,EAAAA,mBAgBO,OAAA,OAdL,UAAQ,6BACP,MAAKE,EAAAA,eAAA,oCAAoEN,EAAA,OAAI,8BAA+CA,EAAA,OAAI,gBASjIK,EAAAA,WAGEH,EAAA,OAAA,iBAAA,CADC,SAAWJ,EAAA,QAAQ,CAAA,mCAKhBG,EAAA,eAAeC,EAAA,OAAO,SAAS,iBADvCE,EAAAA,mBAgBO,OAAA,OAdL,UAAQ,uBACP,MAAKE,EAAAA,eAAA,oCAAoEN,EAAA,OAAI,+BAAgDA,EAAA,OAAI,gBASlIK,EAAAA,WAGEH,EAAA,OAAA,YAAA,CADC,SAAWJ,EAAA,QAAQ,CAAA,mCAKhBA,EAAA,uBAAsB,iBAD9BM,EAAAA,mBAgBO,OAAA,OAdL,UAAQ,iBACP,MAAKE,EAAAA,eAAA,oCAAoEN,EAAA,OAAI,YAA4BC,EAAA,wBAAwBD,EAAA,YAAY,CAAA,EAAIA,EAAA,OAAI,gBAStJK,EAAAA,WAGEH,EAAA,OAAA,OAAA,CADC,SAAWJ,EAAA,QAAQ,CAAA,mCAIhBG,EAAA,eAAeC,EAAA,OAAO,OAAO,iBADrCE,EAAAA,mBAWO,OAAA,OATL,UAAQ,kBACP,MAAKE,EAAAA,eAAA,sCAA4DN,EAAA,OAAI,UAAA,EAA2BA,EAAA,eAOjGK,aAAQH,EAAA,OAAA,SAAA,mCAIFD,EAAA,eAAeC,EAAA,OAAO,OAAO,iBADrCE,EAAAA,mBAgBO,OAAA,OAdL,UAAQ,qBACP,MAAKE,EAAAA,eAAA,oCAAoEN,EAAA,OAAI,gCAAiDA,EAAA,OAAI,gBASnIK,EAAAA,WAGEH,EAAA,OAAA,UAAA,CADC,SAAWJ,EAAA,QAAQ,CAAA,mCAKhBG,EAAA,eAAeC,EAAA,OAAO,YAAY,iBAD1CE,EAAAA,mBAgBO,OAAA,OAdL,UAAQ,2BACP,MAAKE,EAAAA,eAAA,oCAAoEN,EAAA,OAAI,iCAAkDA,EAAA,OAAI,gBASpIK,EAAAA,WAGEH,EAAA,OAAA,eAAA,CADC,SAAWJ,EAAA,QAAQ,CAAA,mCAIhBG,EAAA,eAAeC,EAAA,OAAO,QAAQ,iBADtCE,EAAAA,mBAMO,OAAA,OAJJ,0CAA2BJ,EAAA,aAAa,CAAA,IAGzCK,aAAwBH,EAAA,OAAA,UAAA"}