@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,15 +1,45 @@
1
- import { InputMixin as m, CheckableMixin as p, GroupableMixin as b, MessagesMixin as k } from "../../common/mixins/input.js";
2
- import { addClassStyleAttrs as f, removeClassStyleAttrs as C } from "../../common/utils/index.js";
3
- import { CHECKBOX_INPUT_VALIDATION_CLASSES as g } from "./checkbox-constants.js";
4
- import { resolveComponent as v, openBlock as l, createElementBlock as o, mergeProps as i, createElementVNode as n, normalizeClass as V, toHandlers as M, renderSlot as d, createTextVNode as c, toDisplayString as h, createCommentVNode as r, createVNode as y } from "vue";
5
- import { _ as S } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
6
- import $ from "../validation-messages/validation-messages.js";
7
- const A = {
1
+ import { InputMixin as k, CheckableMixin as g, GroupableMixin as C, MessagesMixin as v } from "../../common/mixins/input.js";
2
+ import { addClassStyleAttrs as S, removeClassStyleAttrs as V } from "../../common/utils/index.js";
3
+ import { CHECKBOX_INPUT_VALIDATION_CLASSES as y } from "./checkbox-constants.js";
4
+ import { resolveComponent as d, openBlock as l, createElementBlock as u, mergeProps as i, createElementVNode as n, normalizeClass as M, toHandlers as D, createBlock as c, withCtx as h, renderSlot as m, createTextVNode as b, toDisplayString as p, createCommentVNode as o, createVNode as I } from "vue";
5
+ import { _ as E } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
6
+ import L from "../text/text.js";
7
+ import T from "../validation-messages/validation-messages.js";
8
+ import { TEXT_STRENGTH_MODIFIERS as _, TEXT_SIZE_MODIFIERS as A } from "../text/text-constants.js";
9
+ const z = {
8
10
  compatConfig: { MODE: 3 },
9
11
  name: "DtCheckbox",
10
- components: { DtValidationMessages: $ },
11
- mixins: [m, p, b, k],
12
+ components: { DtValidationMessages: T, DtText: L },
13
+ mixins: [k, g, C, v],
12
14
  inheritAttrs: !1,
15
+ props: {
16
+ /**
17
+ * Determines visibility of checkbox label.
18
+ * @values true, false
19
+ */
20
+ labelVisible: {
21
+ type: Boolean,
22
+ default: !0
23
+ },
24
+ /**
25
+ * Overrides the label text size.
26
+ * @values lg, md, sm, xs
27
+ */
28
+ labelSize: {
29
+ type: String,
30
+ default: null,
31
+ validator: (e) => A.label.includes(e)
32
+ },
33
+ /**
34
+ * Overrides the label font weight.
35
+ * @values bold, semibold, medium, normal
36
+ */
37
+ labelStrength: {
38
+ type: String,
39
+ default: null,
40
+ validator: (e) => Object.keys(_).includes(e)
41
+ }
42
+ },
13
43
  emits: [
14
44
  /**
15
45
  * Native input event
@@ -41,16 +71,22 @@ const A = {
41
71
  "focusout"
42
72
  ],
43
73
  computed: {
74
+ resolvedLabelSize() {
75
+ return this.labelSize ?? "md";
76
+ },
44
77
  inputValidationClass() {
45
- return g[this.internalValidationState];
78
+ return y[this.internalValidationState];
46
79
  },
47
80
  checkboxGroupValueChecked() {
48
- var e, a;
49
- return ((a = (e = this.groupContext) == null ? void 0 : e.selectedValues) == null ? void 0 : a.includes(this.value)) ?? !1;
81
+ var e, t;
82
+ return ((t = (e = this.groupContext) == null ? void 0 : e.selectedValues) == null ? void 0 : t.includes(this.value)) ?? !1;
50
83
  },
51
- hasLabel() {
84
+ hasLabelContent() {
52
85
  return !!(this.$slots.default || this.label);
53
86
  },
87
+ hasLabel() {
88
+ return this.labelVisible && this.hasLabelContent;
89
+ },
54
90
  hasMessages() {
55
91
  return this.formattedMessages.length && this.showMessages;
56
92
  },
@@ -81,65 +117,83 @@ const A = {
81
117
  this.runValidations();
82
118
  },
83
119
  methods: {
84
- removeClassStyleAttrs: C,
85
- addClassStyleAttrs: f,
120
+ removeClassStyleAttrs: V,
121
+ addClassStyleAttrs: S,
86
122
  emitValue(e) {
87
- let { value: a, checked: t } = e;
88
- this.internalIndeterminate && (t = !1, this.internalIndeterminate = !1, e.checked = !1), this.setGroupValue(a, t), this.$emit("input", t), this.$emit("update:modelValue", t);
123
+ let { value: t, checked: s } = e;
124
+ this.internalIndeterminate && (s = !1, this.internalIndeterminate = !1, e.checked = !1), this.setGroupValue(t, s), this.$emit("input", s), this.$emit("update:modelValue", s);
89
125
  },
90
126
  runValidations() {
91
- this.validateInputLabels(this.hasLabel, this.$attrs["aria-label"]);
127
+ !this.hasLabelContent && !this.$attrs["aria-label"] && console.warn(
128
+ '[Dialtone] A label is required for accessibility. Provide a label prop and use label-visible="false" to hide it visually.'
129
+ );
92
130
  }
93
131
  }
94
- }, D = { class: "d-checkbox__input" }, I = ["checked", "name", "value", "disabled", ".indeterminate"], L = {
132
+ }, N = { class: "d-checkbox__input" }, w = ["checked", "name", "value", "disabled", "aria-label", ".indeterminate"], $ = {
95
133
  key: 0,
96
134
  class: "d-checkbox__messages",
97
135
  "data-qa": "checkbox-description-messages"
98
136
  };
99
- function N(e, a, t, w, E, s) {
100
- const u = v("dt-validation-messages");
101
- return l(), o("div", i({ class: e.rootClass }, s.addClassStyleAttrs(e.$attrs)), [
137
+ function G(e, t, s, O, P, a) {
138
+ const r = d("dt-text"), f = d("dt-validation-messages");
139
+ return l(), u("div", i({ class: e.rootClass }, a.addClassStyleAttrs(e.$attrs)), [
102
140
  n("label", {
103
- class: V(["d-checkbox-group", { "d-checkbox-group--disabled": e.internalDisabled }])
141
+ class: M(["d-checkbox-group", { "d-checkbox-group--disabled": e.internalDisabled }])
104
142
  }, [
105
- n("div", D, [
143
+ n("div", N, [
106
144
  n("input", i({
107
145
  type: "checkbox",
108
146
  checked: e.internalChecked,
109
147
  name: e.internalName,
110
148
  value: e.value,
111
149
  disabled: e.internalDisabled,
112
- class: ["d-checkbox", s.inputValidationClass, e.inputClass]
113
- }, s.removeClassStyleAttrs(e.$attrs), { ".indeterminate": e.internalIndeterminate }, M(s.inputListeners, !0)), null, 48, I)
150
+ class: ["d-checkbox", a.inputValidationClass, e.inputClass],
151
+ "aria-label": !s.labelVisible && e.label ? e.label : void 0
152
+ }, a.removeClassStyleAttrs(e.$attrs), { ".indeterminate": e.internalIndeterminate }, D(a.inputListeners, !0)), null, 48, w)
114
153
  ]),
115
- s.hasLabel ? (l(), o("div", i({
154
+ a.hasLabel ? (l(), c(r, i({
116
155
  key: 0,
156
+ as: "div",
157
+ kind: "label",
158
+ size: a.resolvedLabelSize,
159
+ strength: s.labelStrength ?? "normal",
160
+ tone: e.internalDisabled ? "disabled" : "primary",
117
161
  class: [e.labelClass, "d-checkbox__copy d-checkbox__label"]
118
- }, e.labelChildProps, { "data-qa": "checkbox-label" }), [
119
- d(e.$slots, "default", {}, () => [
120
- c(h(e.label), 1)
121
- ])
122
- ], 16)) : r("", !0)
162
+ }, e.labelChildProps, { "data-qa": "checkbox-label" }), {
163
+ default: h(() => [
164
+ m(e.$slots, "default", {}, () => [
165
+ b(p(e.label), 1)
166
+ ])
167
+ ]),
168
+ _: 3
169
+ }, 16, ["size", "strength", "tone", "class"])) : o("", !0)
123
170
  ], 2),
124
- e.$slots.description || e.description || s.hasMessages ? (l(), o("div", L, [
125
- e.$slots.description || e.description ? (l(), o("div", i({
171
+ e.$slots.description || e.description || a.hasMessages ? (l(), u("div", $, [
172
+ e.$slots.description || e.description ? (l(), c(r, i({
126
173
  key: 0,
174
+ kind: "body",
175
+ size: "sm",
176
+ tone: "tertiary",
177
+ as: "div",
127
178
  class: ["d-description", e.descriptionClass]
128
- }, e.descriptionChildProps, { "data-qa": "checkbox-description" }), [
129
- d(e.$slots, "description", {}, () => [
130
- c(h(e.description), 1)
131
- ])
132
- ], 16)) : r("", !0),
133
- y(u, i({
179
+ }, e.descriptionChildProps, { "data-qa": "checkbox-description" }), {
180
+ default: h(() => [
181
+ m(e.$slots, "description", {}, () => [
182
+ b(p(e.description), 1)
183
+ ])
184
+ ]),
185
+ _: 3
186
+ }, 16, ["class"])) : o("", !0),
187
+ I(f, i({
134
188
  "validation-messages": e.formattedMessages,
135
189
  "show-messages": e.showMessages,
136
190
  class: e.messagesClass
137
191
  }, e.messagesChildProps, { "data-qa": "dt-checkbox-validation-messages" }), null, 16, ["validation-messages", "show-messages", "class"])
138
- ])) : r("", !0)
192
+ ])) : o("", !0)
139
193
  ], 16);
140
194
  }
141
- const T = /* @__PURE__ */ S(A, [["render", N]]);
195
+ const K = /* @__PURE__ */ E(z, [["render", G]]);
142
196
  export {
143
- T as default
197
+ K as default
144
198
  };
145
199
  //# sourceMappingURL=checkbox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.js","sources":["../../../components/checkbox/checkbox.vue"],"sourcesContent":["<template>\n <div\n :class=\"rootClass\"\n v-bind=\"addClassStyleAttrs($attrs)\"\n >\n <label :class=\"['d-checkbox-group', { 'd-checkbox-group--disabled': internalDisabled }]\">\n <div class=\"d-checkbox__input\">\n <input\n type=\"checkbox\"\n :checked=\"internalChecked\"\n :name=\"internalName\"\n :value=\"value\"\n :disabled=\"internalDisabled\"\n :class=\"['d-checkbox', inputValidationClass, inputClass]\"\n v-bind=\"removeClassStyleAttrs($attrs)\"\n :indeterminate.prop=\"internalIndeterminate\"\n v-on=\"inputListeners\"\n >\n </div>\n <div\n v-if=\"hasLabel\"\n :class=\"[labelClass, 'd-checkbox__copy d-checkbox__label']\"\n v-bind=\"labelChildProps\"\n data-qa=\"checkbox-label\"\n >\n <!-- @slot slot for Checkbox Label -->\n <slot>{{ label }}</slot>\n </div>\n </label>\n <div\n v-if=\"$slots.description || description || hasMessages\"\n class=\"d-checkbox__messages\"\n data-qa=\"checkbox-description-messages\"\n >\n <div\n v-if=\"$slots.description || description\"\n :class=\"['d-description', descriptionClass]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"checkbox-description\"\n >\n <!-- @slot slot for Checkbox Description -->\n <slot name=\"description\">\n {{ description }}\n </slot>\n </div>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-checkbox-validation-messages\"\n />\n </div>\n </div>\n</template>\n\n<script>\n// Imports\nimport {\n InputMixin,\n CheckableMixin,\n GroupableMixin,\n MessagesMixin,\n} from '@/common/mixins/input';\nimport { removeClassStyleAttrs, addClassStyleAttrs } from '@/common/utils';\nimport { CHECKBOX_INPUT_VALIDATION_CLASSES } from './checkbox_constants';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * Checkboxes are control elements that allow the user to make a selection.They are typically used in a\n * Checkbox Group which allows the user to make one or more selections from a list of options.\n * @see https://dialtone.dialpad.com/components/checkbox.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCheckbox',\n\n components: { DtValidationMessages },\n\n mixins: [InputMixin, CheckableMixin, GroupableMixin, MessagesMixin],\n\n inheritAttrs: false,\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {Boolean}\n */\n 'input',\n /**\n * Event fired to sync the modelValue prop with the parent component\n *\n * @event update:modelValue\n * @type {Boolean}\n */\n 'update:modelValue',\n\n /**\n * Native input focusin event\n *\n * @event focusin\n * @type {FocusEvent}\n */\n 'focusin',\n\n /**\n * Native input focusout event\n *\n * @event focusout\n * @type {FocusEvent}\n */\n 'focusout',\n ],\n\n computed: {\n inputValidationClass () {\n return CHECKBOX_INPUT_VALIDATION_CLASSES[this.internalValidationState];\n },\n\n checkboxGroupValueChecked () {\n return this.groupContext?.selectedValues?.includes(this.value) ?? false;\n },\n\n hasLabel () {\n return !!(this.$slots.default || this.label);\n },\n\n hasMessages () {\n return this.formattedMessages.length && this.showMessages;\n },\n\n inputListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through\n * onto the input element which will result in the handler being called twice\n * (once on the input element and once by the emitted input event by the change listener).\n */\n input: () => {},\n focusin: event => this.$emit('focusin', event),\n focusout: event => this.$emit('focusout', event),\n change: event => this.emitValue(event.target),\n };\n },\n },\n\n watch: {\n checkboxGroupValueChecked: {\n immediate: true,\n handler (newCheckboxGroupValueChecked) {\n if (this.hasGroup) {\n // update internal value when the checkbox group value changes\n this.internalChecked = newCheckboxGroupValueChecked;\n }\n },\n },\n },\n\n mounted () {\n this.runValidations();\n },\n\n methods: {\n removeClassStyleAttrs,\n addClassStyleAttrs,\n\n emitValue (target) {\n let { value, checked } = target;\n // Expected: Indeterminate -> unchecked. We need to manually set DOM property `checked` to false\n // and update this.internalIndeterminate.\n if (this.internalIndeterminate) {\n checked = false;\n this.internalIndeterminate = false;\n target.checked = false;\n }\n // update provided value if injected\n this.setGroupValue(value, checked);\n\n // emit the state of the checkbox\n this.$emit('input', checked);\n this.$emit('update:modelValue', checked);\n },\n\n runValidations () {\n this.validateInputLabels(this.hasLabel, this.$attrs['aria-label']);\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtValidationMessages","InputMixin","CheckableMixin","GroupableMixin","MessagesMixin","CHECKBOX_INPUT_VALIDATION_CLASSES","_b","_a","event","newCheckboxGroupValueChecked","removeClassStyleAttrs","addClassStyleAttrs","target","value","checked","_hoisted_1","_createElementBlock","_mergeProps","_ctx","$options","_createElementVNode","_toHandlers","_hoisted_2","_openBlock","_renderSlot","_hoisted_3","_createVNode","_component_dt_validation_messages"],"mappings":"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"}
1
+ {"version":3,"file":"checkbox.js","sources":["../../../components/checkbox/checkbox.vue"],"sourcesContent":["<template>\n <div\n :class=\"rootClass\"\n v-bind=\"addClassStyleAttrs($attrs)\"\n >\n <label :class=\"['d-checkbox-group', { 'd-checkbox-group--disabled': internalDisabled }]\">\n <div class=\"d-checkbox__input\">\n <input\n type=\"checkbox\"\n :checked=\"internalChecked\"\n :name=\"internalName\"\n :value=\"value\"\n :disabled=\"internalDisabled\"\n :class=\"['d-checkbox', inputValidationClass, inputClass]\"\n :aria-label=\"!labelVisible && label ? label : undefined\"\n v-bind=\"removeClassStyleAttrs($attrs)\"\n :indeterminate.prop=\"internalIndeterminate\"\n v-on=\"inputListeners\"\n >\n </div>\n <dt-text\n v-if=\"hasLabel\"\n as=\"div\"\n kind=\"label\"\n :size=\"resolvedLabelSize\"\n :strength=\"labelStrength ?? 'normal'\"\n :tone=\"internalDisabled ? 'disabled' : 'primary'\"\n :class=\"[labelClass, 'd-checkbox__copy d-checkbox__label']\"\n v-bind=\"labelChildProps\"\n data-qa=\"checkbox-label\"\n >\n <!-- @slot slot for Checkbox Label -->\n <slot>{{ label }}</slot>\n </dt-text>\n </label>\n <div\n v-if=\"$slots.description || description || hasMessages\"\n class=\"d-checkbox__messages\"\n data-qa=\"checkbox-description-messages\"\n >\n <dt-text\n v-if=\"$slots.description || description\"\n kind=\"body\"\n size=\"sm\"\n tone=\"tertiary\"\n as=\"div\"\n :class=\"['d-description', descriptionClass]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"checkbox-description\"\n >\n <!-- @slot slot for Checkbox Description -->\n <slot name=\"description\">\n {{ description }}\n </slot>\n </dt-text>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-checkbox-validation-messages\"\n />\n </div>\n </div>\n</template>\n\n<script>\n// Imports\nimport {\n InputMixin,\n CheckableMixin,\n GroupableMixin,\n MessagesMixin,\n} from '@/common/mixins/input';\nimport { removeClassStyleAttrs, addClassStyleAttrs } from '@/common/utils';\nimport { CHECKBOX_INPUT_VALIDATION_CLASSES } from './checkbox_constants';\nimport { DtValidationMessages } from '../validation_messages';\nimport { DtText, TEXT_SIZE_MODIFIERS, TEXT_STRENGTH_MODIFIERS } from '@/components/text';\n\n/**\n * Checkboxes are control elements that allow the user to make a selection.They are typically used in a\n * Checkbox Group which allows the user to make one or more selections from a list of options.\n * @see https://dialtone.dialpad.com/components/checkbox.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCheckbox',\n\n components: { DtValidationMessages, DtText },\n\n mixins: [InputMixin, CheckableMixin, GroupableMixin, MessagesMixin],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Determines visibility of checkbox label.\n * @values true, false\n */\n labelVisible: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Overrides the label text size.\n * @values lg, md, sm, xs\n */\n labelSize: {\n type: String,\n default: null,\n validator: (s) => TEXT_SIZE_MODIFIERS.label.includes(s),\n },\n\n /**\n * Overrides the label font weight.\n * @values bold, semibold, medium, normal\n */\n labelStrength: {\n type: String,\n default: null,\n validator: (s) => Object.keys(TEXT_STRENGTH_MODIFIERS).includes(s),\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {Boolean}\n */\n 'input',\n /**\n * Event fired to sync the modelValue prop with the parent component\n *\n * @event update:modelValue\n * @type {Boolean}\n */\n 'update:modelValue',\n\n /**\n * Native input focusin event\n *\n * @event focusin\n * @type {FocusEvent}\n */\n 'focusin',\n\n /**\n * Native input focusout event\n *\n * @event focusout\n * @type {FocusEvent}\n */\n 'focusout',\n ],\n\n computed: {\n resolvedLabelSize () {\n return this.labelSize ?? 'md';\n },\n\n inputValidationClass () {\n return CHECKBOX_INPUT_VALIDATION_CLASSES[this.internalValidationState];\n },\n\n checkboxGroupValueChecked () {\n return this.groupContext?.selectedValues?.includes(this.value) ?? false;\n },\n\n hasLabelContent () {\n return !!(this.$slots.default || this.label);\n },\n\n hasLabel () {\n return this.labelVisible && this.hasLabelContent;\n },\n\n hasMessages () {\n return this.formattedMessages.length && this.showMessages;\n },\n\n inputListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through\n * onto the input element which will result in the handler being called twice\n * (once on the input element and once by the emitted input event by the change listener).\n */\n input: () => {},\n focusin: event => this.$emit('focusin', event),\n focusout: event => this.$emit('focusout', event),\n change: event => this.emitValue(event.target),\n };\n },\n },\n\n watch: {\n checkboxGroupValueChecked: {\n immediate: true,\n handler (newCheckboxGroupValueChecked) {\n if (this.hasGroup) {\n // update internal value when the checkbox group value changes\n this.internalChecked = newCheckboxGroupValueChecked;\n }\n },\n },\n },\n\n mounted () {\n this.runValidations();\n },\n\n methods: {\n removeClassStyleAttrs,\n addClassStyleAttrs,\n\n emitValue (target) {\n let { value, checked } = target;\n // Expected: Indeterminate -> unchecked. We need to manually set DOM property `checked` to false\n // and update this.internalIndeterminate.\n if (this.internalIndeterminate) {\n checked = false;\n this.internalIndeterminate = false;\n target.checked = false;\n }\n // update provided value if injected\n this.setGroupValue(value, checked);\n\n // emit the state of the checkbox\n this.$emit('input', checked);\n this.$emit('update:modelValue', checked);\n },\n\n runValidations () {\n if (!this.hasLabelContent && !this.$attrs['aria-label']) {\n console.warn(\n '[Dialtone] A label is required for accessibility. Provide a label prop and use label-visible=\"false\" to hide it visually.',\n );\n }\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtValidationMessages","DtText","InputMixin","CheckableMixin","GroupableMixin","MessagesMixin","s","TEXT_SIZE_MODIFIERS","TEXT_STRENGTH_MODIFIERS","CHECKBOX_INPUT_VALIDATION_CLASSES","_b","_a","event","newCheckboxGroupValueChecked","removeClassStyleAttrs","addClassStyleAttrs","target","value","checked","_hoisted_1","_createElementBlock","_mergeProps","_ctx","$options","_createElementVNode","$props","_toHandlers","_hoisted_2","_openBlock","_createBlock","_component_dt_text","_renderSlot","_hoisted_3","_createVNode","_component_dt_validation_messages"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=require("@dialpad/dialtone-icons/vue3"),n=require("./chip-constants.cjs"),o=require("../../common/utils/index.cjs"),u=require("../../localization/index.cjs"),e=require("vue"),h=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),_=require("../button/button.cjs"),b={compatConfig:{MODE:3},name:"DtChip",components:{DtButton:_.default,DtIconClose:r.DtIconClose},props:{disabled:{type:Boolean,default:!1},hideClose:{type:Boolean,default:!1},size:{type:String,default:"md",validator:t=>Object.keys(n.CHIP_SIZE_MODIFIERS).includes(t)},interactive:{type:Boolean,default:!0},id:{type:String,default:function(){return o.getUniqueString()}},ariaLabel:{type:String,default:""},contentClass:{type:[String,Array,Object],default:""},labelClass:{type:[String,Array,Object],default:""}},emits:["click","close","keyup","keydown"],data(){return{isActive:!1,hasSlotContent:o.hasSlotContent,i18n:new u.DialtoneLocalization}},computed:{chipListeners(){return{click:t=>{this.interactive&&this.$emit("click",t)},keydown:t=>{var a;((a=t.code)==null?void 0:a.toLowerCase())==="delete"?this.onClose():this.$emit("keydown",t)},keyup:t=>{this.$emit("keyup",t)}}},closeButtonIconSize(){return n.CHIP_ICON_SIZES[this.size]},closeButtonTitle(){return this.i18n.$t("DIALTONE_CLOSE_BUTTON")}},methods:{chipClasses(){return[this.$attrs["grouped-chip"]?"d-chip":"d-chip__label",n.CHIP_SIZE_MODIFIERS[this.size],this.labelClass,this.disabled&&"d-chip--disabled"]},chipCloseButtonClasses(){return["d-chip__close",n.CHIP_CLOSE_BUTTON_SIZE_MODIFIERS[this.size],this.disabled&&"d-chip__close--disabled"]},onClose(){this.hideClose||this.$emit("close")}}},C={class:"d-chip"},p={key:0,class:"d-chip__icon","data-qa":"dt-chip-icon"},m={key:1,"data-qa":"dt-chip-avatar"},S=["id"];function k(t,a,i,f,s,l){const c=e.resolveComponent("dt-icon-close"),d=e.resolveComponent("dt-button");return e.openBlock(),e.createElementBlock("span",C,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.interactive?"button":"span"),e.mergeProps({id:i.id,"aria-label":i.ariaLabel,"aria-labelledby":i.ariaLabel?void 0:`${i.id}-content`,"aria-disabled":i.disabled,class:l.chipClasses(),type:i.interactive&&"button","data-qa":"dt-chip",tabindex:i.disabled?-1:null},e.toHandlers(l.chipListeners)),{default:e.withCtx(()=>[s.hasSlotContent(t.$slots.icon)?(e.openBlock(),e.createElementBlock("span",p,[e.renderSlot(t.$slots,"icon")])):s.hasSlotContent(t.$slots.avatar)?(e.openBlock(),e.createElementBlock("span",m,[e.renderSlot(t.$slots,"avatar")])):e.createCommentVNode("",!0),s.hasSlotContent(t.$slots.default)?(e.openBlock(),e.createElementBlock("span",{key:2,id:`${i.id}-content`,class:e.normalizeClass(["d-chip__text",i.contentClass]),"data-qa":"dt-chip-label"},[e.renderSlot(t.$slots,"default")],10,S)):e.createCommentVNode("",!0)]),_:3},16,["id","aria-label","aria-labelledby","aria-disabled","class","type","tabindex"])),i.hideClose?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(d,{key:0,class:e.normalizeClass(l.chipCloseButtonClasses()),"data-qa":"dt-chip-close","aria-label":l.closeButtonTitle,"aria-disabled":i.disabled,title:l.closeButtonTitle,tabindex:i.disabled?-1:null,onClick:a[0]||(a[0]=B=>t.$emit("close"))},{icon:e.withCtx(()=>[e.createVNode(c,{size:l.closeButtonIconSize},null,8,["size"])]),_:1},8,["class","aria-label","aria-disabled","title","tabindex"]))])}const y=h._(b,[["render",k]]);exports.default=y;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=require("@dialpad/dialtone-icons/vue3"),n=require("./chip-constants.cjs"),o=require("../../common/utils/index.cjs"),u=require("../../localization/index.cjs"),e=require("vue"),h=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),_=require("../button/button.cjs"),b={compatConfig:{MODE:3},name:"DtChip",components:{DtButton:_.default,DtIconClose:r.DtIconClose},props:{disabled:{type:Boolean,default:!1},hideClose:{type:Boolean,default:!1},size:{type:String,default:"md",validator:t=>Object.keys(n.CHIP_SIZE_MODIFIERS).includes(t)},interactive:{type:Boolean,default:!0},id:{type:String,default:function(){return o.getUniqueString()}},ariaLabel:{type:String,default:""},contentClass:{type:[String,Array,Object],default:""},labelClass:{type:[String,Array,Object],default:""}},emits:["click","close","keyup","keydown"],data(){return{isActive:!1,hasSlotContent:o.hasSlotContent,i18n:new u.DialtoneLocalization}},computed:{chipListeners(){return{click:t=>{this.interactive&&this.$emit("click",t)},keydown:t=>{var a;((a=t.code)==null?void 0:a.toLowerCase())==="delete"?this.onClose():this.$emit("keydown",t)},keyup:t=>{this.$emit("keyup",t)}}},closeButtonIconSize(){return n.CHIP_ICON_SIZES[this.size]},closeButtonTitle(){return this.i18n.$t("DIALTONE_CLOSE_BUTTON")}},methods:{chipClasses(){return[this.$attrs["grouped-chip"]?"d-chip":"d-chip__label",n.CHIP_SIZE_MODIFIERS[this.size],this.labelClass,this.disabled&&"d-chip--disabled"]},chipCloseButtonClasses(){return["d-chip__close",n.CHIP_CLOSE_BUTTON_SIZE_MODIFIERS[this.size],this.disabled&&"d-chip__close--disabled"]},onClose(){this.hideClose||this.$emit("close")}}},C={class:"d-chip"},p={key:0,class:"d-chip__icon","data-qa":"dt-chip-icon"},m={key:1,"data-qa":"dt-chip-avatar"},S=["id"];function k(t,a,i,f,s,l){const c=e.resolveComponent("dt-icon-close"),d=e.resolveComponent("dt-button");return e.openBlock(),e.createElementBlock("span",C,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.interactive?"button":"span"),e.mergeProps({id:i.id,"aria-label":i.ariaLabel,"aria-labelledby":i.ariaLabel?void 0:`${i.id}-content`,"aria-disabled":i.disabled,class:l.chipClasses(),type:i.interactive&&"button","data-qa":"dt-chip",tabindex:i.disabled?-1:null},e.toHandlers(l.chipListeners)),{default:e.withCtx(()=>[s.hasSlotContent(t.$slots.icon)?(e.openBlock(),e.createElementBlock("span",p,[e.renderSlot(t.$slots,"icon")])):s.hasSlotContent(t.$slots.avatar)?(e.openBlock(),e.createElementBlock("span",m,[e.renderSlot(t.$slots,"avatar")])):e.createCommentVNode("",!0),s.hasSlotContent(t.$slots.default)?(e.openBlock(),e.createElementBlock("span",{key:2,id:`${i.id}-content`,class:e.normalizeClass(["d-chip__text",i.contentClass]),"data-qa":"dt-chip-label"},[e.renderSlot(t.$slots,"default")],10,S)):e.createCommentVNode("",!0)]),_:3},16,["id","aria-label","aria-labelledby","aria-disabled","class","type","tabindex"])),i.hideClose?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(d,{key:0,class:e.normalizeClass(l.chipCloseButtonClasses()),"data-qa":"dt-chip-close","aria-label":l.closeButtonTitle,"aria-disabled":i.disabled,title:l.closeButtonTitle,tabindex:i.disabled?-1:null,onClick:a[0]||(a[0]=B=>t.$emit("close"))},{startIcon:e.withCtx(()=>[e.createVNode(c,{size:l.closeButtonIconSize},null,8,["size"])]),_:1},8,["class","aria-label","aria-disabled","title","tabindex"]))])}const y=h._(b,[["render",k]]);exports.default=y;
2
2
  //# sourceMappingURL=chip.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"chip.cjs","sources":["../../../components/chip/chip.vue"],"sourcesContent":["<template>\n <span class=\"d-chip\">\n <component\n :is=\"interactive ? 'button' : 'span'\"\n :id=\"id\"\n :aria-label=\"ariaLabel\"\n :aria-labelledby=\"ariaLabel ? undefined : `${id}-content`\"\n :aria-disabled=\"disabled\"\n :class=\"chipClasses()\"\n :type=\"interactive && 'button'\"\n data-qa=\"dt-chip\"\n :tabindex=\"disabled ? -1 : null\"\n v-on=\"chipListeners\"\n >\n <span\n v-if=\"hasSlotContent($slots.icon)\"\n class=\"d-chip__icon\"\n data-qa=\"dt-chip-icon\"\n >\n <!-- @slot slot for Chip icon -->\n <slot name=\"icon\" />\n </span>\n <span\n v-else-if=\"hasSlotContent($slots.avatar)\"\n data-qa=\"dt-chip-avatar\"\n >\n <!-- @slot slot for Chip avatar -->\n <slot name=\"avatar\" />\n </span>\n <span\n v-if=\"hasSlotContent($slots.default)\"\n :id=\"`${id}-content`\"\n :class=\"['d-chip__text', contentClass]\"\n data-qa=\"dt-chip-label\"\n >\n <!-- @slot slot for Content within chip -->\n <slot />\n </span>\n </component>\n <dt-button\n v-if=\"!hideClose\"\n :class=\"chipCloseButtonClasses()\"\n data-qa=\"dt-chip-close\"\n :aria-label=\"closeButtonTitle\"\n :aria-disabled=\"disabled\"\n :title=\"closeButtonTitle\"\n :tabindex=\"disabled ? -1 : null\"\n @click=\"$emit('close')\"\n >\n <template #icon>\n <dt-icon-close\n :size=\"closeButtonIconSize\"\n />\n </template>\n </dt-button>\n </span>\n</template>\n\n<script>\nimport { DtButton } from '@/components/button';\nimport { DtIconClose } from '@dialpad/dialtone-icons/vue3';\nimport {\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS,\n CHIP_SIZE_MODIFIERS,\n CHIP_ICON_SIZES,\n} from './chip_constants';\nimport { getUniqueString, hasSlotContent } from '@/common/utils';\nimport { DialtoneLocalization } from '@/localization';\n\n/**\n * A chip is a compact UI element that provides brief, descriptive information about an element.\n * It is terse, ideally one word. It is important a button is identifiable, consistent, and\n * communicates its actions clearly, and is appropriately sized to its action.\n * @see https://dialtone.dialpad.com/components/chip.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtChip',\n\n components: {\n DtButton,\n DtIconClose,\n },\n\n props: {\n /**\n * Whether the chip is disabled\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Hides the close button on the chip\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The size of the chip.\n * @values xs, sm, md\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(CHIP_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * The interactivity of the chip.\n * Makes chip clickable, apply hover/focus/active style, emit keyboard events etc.\n * @values true, false\n */\n interactive: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Id to use for the dialog's aria-labelledby.\n */\n id: {\n type: String,\n default: function () { return getUniqueString(); },\n },\n\n /**\n * Descriptive label for the chip content.\n * If this prop is unset the content in the default slot will be used as an aria-label.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the chip element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the span element.\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n emits: [\n /**\n * Native chip click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Close button click event\n *\n * @event close\n */\n 'close',\n\n /**\n * Native chip key up event\n *\n * @event keyup\n * @type {KeyboardEvent}\n */\n 'keyup',\n\n /**\n * Native chip key down event\n *\n * @event keydown\n * @type {KeyboardEvent}\n */\n 'keydown',\n ],\n\n data () {\n return {\n isActive: false,\n hasSlotContent,\n i18n: new DialtoneLocalization(),\n };\n },\n\n computed: {\n chipListeners () {\n return {\n click: event => {\n if (this.interactive) this.$emit('click', event);\n },\n\n keydown: event => {\n if (event.code?.toLowerCase() === 'delete') {\n this.onClose();\n } else {\n this.$emit('keydown', event);\n }\n },\n\n keyup: event => {\n this.$emit('keyup', event);\n },\n };\n },\n\n closeButtonIconSize () {\n return CHIP_ICON_SIZES[this.size];\n },\n\n closeButtonTitle () {\n return this.i18n.$t('DIALTONE_CLOSE_BUTTON');\n },\n },\n\n methods: {\n chipClasses () {\n return [\n this.$attrs['grouped-chip'] ? 'd-chip' : 'd-chip__label',\n CHIP_SIZE_MODIFIERS[this.size],\n this.labelClass,\n this.disabled && 'd-chip--disabled',\n ];\n },\n\n chipCloseButtonClasses () {\n return [\n 'd-chip__close',\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS[this.size],\n this.disabled && 'd-chip__close--disabled',\n ];\n },\n\n onClose () {\n if (!this.hideClose) {\n this.$emit('close');\n }\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtButton","DtIconClose","s","CHIP_SIZE_MODIFIERS","getUniqueString","hasSlotContent","DialtoneLocalization","event","_a","CHIP_ICON_SIZES","CHIP_CLOSE_BUTTON_SIZE_MODIFIERS","_hoisted_1","_openBlock","_createElementBlock","_createBlock","_resolveDynamicComponent","$props","_mergeProps","$options","_toHandlers","$data","_ctx","_hoisted_2","_renderSlot","_hoisted_3","_component_dt_button","_createVNode","_component_dt_icon_close"],"mappings":"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"}
1
+ {"version":3,"file":"chip.cjs","sources":["../../../components/chip/chip.vue"],"sourcesContent":["<template>\n <span class=\"d-chip\">\n <component\n :is=\"interactive ? 'button' : 'span'\"\n :id=\"id\"\n :aria-label=\"ariaLabel\"\n :aria-labelledby=\"ariaLabel ? undefined : `${id}-content`\"\n :aria-disabled=\"disabled\"\n :class=\"chipClasses()\"\n :type=\"interactive && 'button'\"\n data-qa=\"dt-chip\"\n :tabindex=\"disabled ? -1 : null\"\n v-on=\"chipListeners\"\n >\n <span\n v-if=\"hasSlotContent($slots.icon)\"\n class=\"d-chip__icon\"\n data-qa=\"dt-chip-icon\"\n >\n <!-- @slot slot for Chip icon -->\n <slot name=\"icon\" />\n </span>\n <span\n v-else-if=\"hasSlotContent($slots.avatar)\"\n data-qa=\"dt-chip-avatar\"\n >\n <!-- @slot slot for Chip avatar -->\n <slot name=\"avatar\" />\n </span>\n <span\n v-if=\"hasSlotContent($slots.default)\"\n :id=\"`${id}-content`\"\n :class=\"['d-chip__text', contentClass]\"\n data-qa=\"dt-chip-label\"\n >\n <!-- @slot slot for Content within chip -->\n <slot />\n </span>\n </component>\n <dt-button\n v-if=\"!hideClose\"\n :class=\"chipCloseButtonClasses()\"\n data-qa=\"dt-chip-close\"\n :aria-label=\"closeButtonTitle\"\n :aria-disabled=\"disabled\"\n :title=\"closeButtonTitle\"\n :tabindex=\"disabled ? -1 : null\"\n @click=\"$emit('close')\"\n >\n <template #startIcon>\n <dt-icon-close\n :size=\"closeButtonIconSize\"\n />\n </template>\n </dt-button>\n </span>\n</template>\n\n<script>\nimport { DtButton } from '@/components/button';\nimport { DtIconClose } from '@dialpad/dialtone-icons/vue3';\nimport {\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS,\n CHIP_SIZE_MODIFIERS,\n CHIP_ICON_SIZES,\n} from './chip_constants';\nimport { getUniqueString, hasSlotContent } from '@/common/utils';\nimport { DialtoneLocalization } from '@/localization';\n\n/**\n * A chip is a compact UI element that provides brief, descriptive information about an element.\n * It is terse, ideally one word. It is important a button is identifiable, consistent, and\n * communicates its actions clearly, and is appropriately sized to its action.\n * @see https://dialtone.dialpad.com/components/chip.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtChip',\n\n components: {\n DtButton,\n DtIconClose,\n },\n\n props: {\n /**\n * Whether the chip is disabled\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Hides the close button on the chip\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The size of the chip.\n * @values xs, sm, md\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(CHIP_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * The interactivity of the chip.\n * Makes chip clickable, apply hover/focus/active style, emit keyboard events etc.\n * @values true, false\n */\n interactive: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Id to use for the dialog's aria-labelledby.\n */\n id: {\n type: String,\n default: function () { return getUniqueString(); },\n },\n\n /**\n * Descriptive label for the chip content.\n * If this prop is unset the content in the default slot will be used as an aria-label.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the chip element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the span element.\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n emits: [\n /**\n * Native chip click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Close button click event\n *\n * @event close\n */\n 'close',\n\n /**\n * Native chip key up event\n *\n * @event keyup\n * @type {KeyboardEvent}\n */\n 'keyup',\n\n /**\n * Native chip key down event\n *\n * @event keydown\n * @type {KeyboardEvent}\n */\n 'keydown',\n ],\n\n data () {\n return {\n isActive: false,\n hasSlotContent,\n i18n: new DialtoneLocalization(),\n };\n },\n\n computed: {\n chipListeners () {\n return {\n click: event => {\n if (this.interactive) this.$emit('click', event);\n },\n\n keydown: event => {\n if (event.code?.toLowerCase() === 'delete') {\n this.onClose();\n } else {\n this.$emit('keydown', event);\n }\n },\n\n keyup: event => {\n this.$emit('keyup', event);\n },\n };\n },\n\n closeButtonIconSize () {\n return CHIP_ICON_SIZES[this.size];\n },\n\n closeButtonTitle () {\n return this.i18n.$t('DIALTONE_CLOSE_BUTTON');\n },\n },\n\n methods: {\n chipClasses () {\n return [\n this.$attrs['grouped-chip'] ? 'd-chip' : 'd-chip__label',\n CHIP_SIZE_MODIFIERS[this.size],\n this.labelClass,\n this.disabled && 'd-chip--disabled',\n ];\n },\n\n chipCloseButtonClasses () {\n return [\n 'd-chip__close',\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS[this.size],\n this.disabled && 'd-chip__close--disabled',\n ];\n },\n\n onClose () {\n if (!this.hideClose) {\n this.$emit('close');\n }\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtButton","DtIconClose","s","CHIP_SIZE_MODIFIERS","getUniqueString","hasSlotContent","DialtoneLocalization","event","_a","CHIP_ICON_SIZES","CHIP_CLOSE_BUTTON_SIZE_MODIFIERS","_hoisted_1","_openBlock","_createElementBlock","_createBlock","_resolveDynamicComponent","$props","_mergeProps","$options","_toHandlers","$data","_ctx","_hoisted_2","_renderSlot","_hoisted_3","_component_dt_button","_createVNode","_component_dt_icon_close"],"mappings":"+XA2EKA,EAAU,CACb,aAAc,CAAE,KAAM,GACtB,KAAM,SAEN,WAAY,CACV,SAAAC,EAAAA,oBACAC,EAAAA,aAGF,MAAO,CAKL,SAAU,CACR,KAAM,QACN,QAAS,IAOX,UAAW,CACT,KAAM,QACN,QAAS,IAOX,KAAM,CACJ,KAAM,OACN,QAAS,KACT,UAAYC,GAAM,OAAO,KAAKC,qBAAmB,EAAE,SAASD,CAAC,GAQ/D,YAAa,CACX,KAAM,QACN,QAAS,IAMX,GAAI,CACF,KAAM,OACN,QAAS,UAAY,CAAE,OAAOE,EAAAA,gBAAe,CAAI,GAOnD,UAAW,CACT,KAAM,OACN,QAAS,IAMX,aAAc,CACZ,KAAM,CAAC,OAAQ,MAAO,MAAM,EAC5B,QAAS,IAMX,WAAY,CACV,KAAM,CAAC,OAAQ,MAAO,MAAM,EAC5B,QAAS,KAIb,MAAO,CAOL,QAOA,QAQA,QAQA,WAGF,MAAQ,CACN,MAAO,CACL,SAAU,GACV,eAAAC,EAAAA,eACA,KAAM,IAAIC,EAAAA,qBAEd,EAEA,SAAU,CACR,eAAiB,CACf,MAAO,CACL,MAAOC,GAAS,CACV,KAAK,aAAa,KAAK,MAAM,QAASA,CAAK,CACjD,EAEA,QAASA,GAAS,SACZC,EAAAD,EAAM,OAAN,YAAAC,EAAY,iBAAkB,SAChC,KAAK,QAAO,EAEZ,KAAK,MAAM,UAAWD,CAAK,CAE/B,EAEA,MAAOA,GAAS,CACd,KAAK,MAAM,QAASA,CAAK,CAC3B,EAEJ,EAEA,qBAAuB,CACrB,OAAOE,EAAAA,gBAAgB,KAAK,IAAI,CAClC,EAEA,kBAAoB,CAClB,OAAO,KAAK,KAAK,GAAG,uBAAuB,CAC7C,GAGF,QAAS,CACP,aAAe,CACb,MAAO,CACL,KAAK,OAAO,cAAc,EAAI,SAAW,gBACzCN,EAAAA,oBAAoB,KAAK,IAAI,EAC7B,KAAK,WACL,KAAK,UAAY,mBAErB,EAEA,wBAA0B,CACxB,MAAO,CACL,gBACAO,EAAAA,iCAAiC,KAAK,IAAI,EAC1C,KAAK,UAAY,0BAErB,EAEA,SAAW,CACJ,KAAK,WACR,KAAK,MAAM,OAAO,CAEtB,EAEJ,EA3PQC,EAAA,CAAA,MAAM,QAAQ,WAed,MAAM,eACN,UAAQ,yBAOR,UAAQ,iIAvBd,OAAAC,YAAA,EAAAC,qBAsDO,OAtDPF,EAsDO,gBArDLG,EAAAA,YAoCYC,0BAnCLC,EAAA,YAAW,SAAA,MAAA,EADlBC,aAoCY,CAlCT,GAAID,EAAA,GACJ,aAAYA,EAAA,UACZ,kBAAiBA,EAAA,UAAY,UAAeA,EAAA,EAAE,WAC9C,gBAAeA,EAAA,SACf,MAAOE,EAAA,YAAW,EAClB,KAAMF,EAAA,aAAW,SAClB,UAAQ,UACP,SAAUA,EAAA,SAAQ,GAAA,IACnB,EAAAG,aAAoBD,EAAd,aAAa,CAAA,EAAA,mBAEnB,IAOO,CANCE,EAAA,eAAeC,EAAA,OAAO,IAAI,GADlCT,EAAAA,YAAAC,EAAAA,mBAOO,OAPPS,EAOO,CADLC,aAAoBF,EAAA,OAAA,MAAA,KAGTD,EAAA,eAAeC,EAAA,OAAO,MAAM,GADzCT,EAAAA,YAAAC,EAAAA,mBAMO,OANPW,EAMO,CADLD,aAAsBF,EAAA,OAAA,QAAA,iCAGhBD,EAAA,eAAeC,EAAA,OAAO,OAAO,iBADrCR,EAAAA,mBAQO,OAAA,OANJ,MAAOG,EAAA,EAAE,WACT,uCAAwBA,EAAA,YAAY,CAAA,EACrC,UAAQ,kBAGRO,aAAQF,EAAA,OAAA,SAAA,kIAIHL,EAAA,qDADTF,EAAAA,YAeYW,EAAA,OAbT,uBAAOP,EAAA,wBAAsB,EAC9B,UAAQ,gBACP,aAAYA,EAAA,iBACZ,gBAAeF,EAAA,SACf,MAAOE,EAAA,iBACP,SAAUF,EAAA,SAAQ,GAAA,KAClB,uBAAOK,EAAA,MAAK,OAAA,KAEF,oBACT,IAEE,CAFFK,cAEEC,EAAA,CADC,KAAMT,EAAA,mBAAmB,EAAA,KAAA,EAAA,CAAA,MAAA,CAAA"}
@@ -205,7 +205,7 @@ function w(e, s, t, N, n, i) {
205
205
  tabindex: t.disabled ? -1 : null,
206
206
  onClick: s[0] || (s[0] = (A) => e.$emit("close"))
207
207
  }, {
208
- icon: h(() => [
208
+ startIcon: h(() => [
209
209
  v(m, { size: i.closeButtonIconSize }, null, 8, ["size"])
210
210
  ]),
211
211
  _: 1
@@ -1 +1 @@
1
- {"version":3,"file":"chip.js","sources":["../../../components/chip/chip.vue"],"sourcesContent":["<template>\n <span class=\"d-chip\">\n <component\n :is=\"interactive ? 'button' : 'span'\"\n :id=\"id\"\n :aria-label=\"ariaLabel\"\n :aria-labelledby=\"ariaLabel ? undefined : `${id}-content`\"\n :aria-disabled=\"disabled\"\n :class=\"chipClasses()\"\n :type=\"interactive && 'button'\"\n data-qa=\"dt-chip\"\n :tabindex=\"disabled ? -1 : null\"\n v-on=\"chipListeners\"\n >\n <span\n v-if=\"hasSlotContent($slots.icon)\"\n class=\"d-chip__icon\"\n data-qa=\"dt-chip-icon\"\n >\n <!-- @slot slot for Chip icon -->\n <slot name=\"icon\" />\n </span>\n <span\n v-else-if=\"hasSlotContent($slots.avatar)\"\n data-qa=\"dt-chip-avatar\"\n >\n <!-- @slot slot for Chip avatar -->\n <slot name=\"avatar\" />\n </span>\n <span\n v-if=\"hasSlotContent($slots.default)\"\n :id=\"`${id}-content`\"\n :class=\"['d-chip__text', contentClass]\"\n data-qa=\"dt-chip-label\"\n >\n <!-- @slot slot for Content within chip -->\n <slot />\n </span>\n </component>\n <dt-button\n v-if=\"!hideClose\"\n :class=\"chipCloseButtonClasses()\"\n data-qa=\"dt-chip-close\"\n :aria-label=\"closeButtonTitle\"\n :aria-disabled=\"disabled\"\n :title=\"closeButtonTitle\"\n :tabindex=\"disabled ? -1 : null\"\n @click=\"$emit('close')\"\n >\n <template #icon>\n <dt-icon-close\n :size=\"closeButtonIconSize\"\n />\n </template>\n </dt-button>\n </span>\n</template>\n\n<script>\nimport { DtButton } from '@/components/button';\nimport { DtIconClose } from '@dialpad/dialtone-icons/vue3';\nimport {\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS,\n CHIP_SIZE_MODIFIERS,\n CHIP_ICON_SIZES,\n} from './chip_constants';\nimport { getUniqueString, hasSlotContent } from '@/common/utils';\nimport { DialtoneLocalization } from '@/localization';\n\n/**\n * A chip is a compact UI element that provides brief, descriptive information about an element.\n * It is terse, ideally one word. It is important a button is identifiable, consistent, and\n * communicates its actions clearly, and is appropriately sized to its action.\n * @see https://dialtone.dialpad.com/components/chip.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtChip',\n\n components: {\n DtButton,\n DtIconClose,\n },\n\n props: {\n /**\n * Whether the chip is disabled\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Hides the close button on the chip\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The size of the chip.\n * @values xs, sm, md\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(CHIP_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * The interactivity of the chip.\n * Makes chip clickable, apply hover/focus/active style, emit keyboard events etc.\n * @values true, false\n */\n interactive: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Id to use for the dialog's aria-labelledby.\n */\n id: {\n type: String,\n default: function () { return getUniqueString(); },\n },\n\n /**\n * Descriptive label for the chip content.\n * If this prop is unset the content in the default slot will be used as an aria-label.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the chip element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the span element.\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n emits: [\n /**\n * Native chip click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Close button click event\n *\n * @event close\n */\n 'close',\n\n /**\n * Native chip key up event\n *\n * @event keyup\n * @type {KeyboardEvent}\n */\n 'keyup',\n\n /**\n * Native chip key down event\n *\n * @event keydown\n * @type {KeyboardEvent}\n */\n 'keydown',\n ],\n\n data () {\n return {\n isActive: false,\n hasSlotContent,\n i18n: new DialtoneLocalization(),\n };\n },\n\n computed: {\n chipListeners () {\n return {\n click: event => {\n if (this.interactive) this.$emit('click', event);\n },\n\n keydown: event => {\n if (event.code?.toLowerCase() === 'delete') {\n this.onClose();\n } else {\n this.$emit('keydown', event);\n }\n },\n\n keyup: event => {\n this.$emit('keyup', event);\n },\n };\n },\n\n closeButtonIconSize () {\n return CHIP_ICON_SIZES[this.size];\n },\n\n closeButtonTitle () {\n return this.i18n.$t('DIALTONE_CLOSE_BUTTON');\n },\n },\n\n methods: {\n chipClasses () {\n return [\n this.$attrs['grouped-chip'] ? 'd-chip' : 'd-chip__label',\n CHIP_SIZE_MODIFIERS[this.size],\n this.labelClass,\n this.disabled && 'd-chip--disabled',\n ];\n },\n\n chipCloseButtonClasses () {\n return [\n 'd-chip__close',\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS[this.size],\n this.disabled && 'd-chip__close--disabled',\n ];\n },\n\n onClose () {\n if (!this.hideClose) {\n this.$emit('close');\n }\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtButton","DtIconClose","s","CHIP_SIZE_MODIFIERS","getUniqueString","hasSlotContent","DialtoneLocalization","event","_a","CHIP_ICON_SIZES","CHIP_CLOSE_BUTTON_SIZE_MODIFIERS","_hoisted_1","_openBlock","_createElementBlock","_createBlock","_resolveDynamicComponent","$props","_mergeProps","$options","_toHandlers","$data","_ctx","_hoisted_2","_renderSlot","_hoisted_3","_component_dt_button","_createVNode","_component_dt_icon_close"],"mappings":"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"}
1
+ {"version":3,"file":"chip.js","sources":["../../../components/chip/chip.vue"],"sourcesContent":["<template>\n <span class=\"d-chip\">\n <component\n :is=\"interactive ? 'button' : 'span'\"\n :id=\"id\"\n :aria-label=\"ariaLabel\"\n :aria-labelledby=\"ariaLabel ? undefined : `${id}-content`\"\n :aria-disabled=\"disabled\"\n :class=\"chipClasses()\"\n :type=\"interactive && 'button'\"\n data-qa=\"dt-chip\"\n :tabindex=\"disabled ? -1 : null\"\n v-on=\"chipListeners\"\n >\n <span\n v-if=\"hasSlotContent($slots.icon)\"\n class=\"d-chip__icon\"\n data-qa=\"dt-chip-icon\"\n >\n <!-- @slot slot for Chip icon -->\n <slot name=\"icon\" />\n </span>\n <span\n v-else-if=\"hasSlotContent($slots.avatar)\"\n data-qa=\"dt-chip-avatar\"\n >\n <!-- @slot slot for Chip avatar -->\n <slot name=\"avatar\" />\n </span>\n <span\n v-if=\"hasSlotContent($slots.default)\"\n :id=\"`${id}-content`\"\n :class=\"['d-chip__text', contentClass]\"\n data-qa=\"dt-chip-label\"\n >\n <!-- @slot slot for Content within chip -->\n <slot />\n </span>\n </component>\n <dt-button\n v-if=\"!hideClose\"\n :class=\"chipCloseButtonClasses()\"\n data-qa=\"dt-chip-close\"\n :aria-label=\"closeButtonTitle\"\n :aria-disabled=\"disabled\"\n :title=\"closeButtonTitle\"\n :tabindex=\"disabled ? -1 : null\"\n @click=\"$emit('close')\"\n >\n <template #startIcon>\n <dt-icon-close\n :size=\"closeButtonIconSize\"\n />\n </template>\n </dt-button>\n </span>\n</template>\n\n<script>\nimport { DtButton } from '@/components/button';\nimport { DtIconClose } from '@dialpad/dialtone-icons/vue3';\nimport {\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS,\n CHIP_SIZE_MODIFIERS,\n CHIP_ICON_SIZES,\n} from './chip_constants';\nimport { getUniqueString, hasSlotContent } from '@/common/utils';\nimport { DialtoneLocalization } from '@/localization';\n\n/**\n * A chip is a compact UI element that provides brief, descriptive information about an element.\n * It is terse, ideally one word. It is important a button is identifiable, consistent, and\n * communicates its actions clearly, and is appropriately sized to its action.\n * @see https://dialtone.dialpad.com/components/chip.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtChip',\n\n components: {\n DtButton,\n DtIconClose,\n },\n\n props: {\n /**\n * Whether the chip is disabled\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Hides the close button on the chip\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The size of the chip.\n * @values xs, sm, md\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(CHIP_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * The interactivity of the chip.\n * Makes chip clickable, apply hover/focus/active style, emit keyboard events etc.\n * @values true, false\n */\n interactive: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Id to use for the dialog's aria-labelledby.\n */\n id: {\n type: String,\n default: function () { return getUniqueString(); },\n },\n\n /**\n * Descriptive label for the chip content.\n * If this prop is unset the content in the default slot will be used as an aria-label.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the chip element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the span element.\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n emits: [\n /**\n * Native chip click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Close button click event\n *\n * @event close\n */\n 'close',\n\n /**\n * Native chip key up event\n *\n * @event keyup\n * @type {KeyboardEvent}\n */\n 'keyup',\n\n /**\n * Native chip key down event\n *\n * @event keydown\n * @type {KeyboardEvent}\n */\n 'keydown',\n ],\n\n data () {\n return {\n isActive: false,\n hasSlotContent,\n i18n: new DialtoneLocalization(),\n };\n },\n\n computed: {\n chipListeners () {\n return {\n click: event => {\n if (this.interactive) this.$emit('click', event);\n },\n\n keydown: event => {\n if (event.code?.toLowerCase() === 'delete') {\n this.onClose();\n } else {\n this.$emit('keydown', event);\n }\n },\n\n keyup: event => {\n this.$emit('keyup', event);\n },\n };\n },\n\n closeButtonIconSize () {\n return CHIP_ICON_SIZES[this.size];\n },\n\n closeButtonTitle () {\n return this.i18n.$t('DIALTONE_CLOSE_BUTTON');\n },\n },\n\n methods: {\n chipClasses () {\n return [\n this.$attrs['grouped-chip'] ? 'd-chip' : 'd-chip__label',\n CHIP_SIZE_MODIFIERS[this.size],\n this.labelClass,\n this.disabled && 'd-chip--disabled',\n ];\n },\n\n chipCloseButtonClasses () {\n return [\n 'd-chip__close',\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS[this.size],\n this.disabled && 'd-chip__close--disabled',\n ];\n },\n\n onClose () {\n if (!this.hideClose) {\n this.$emit('close');\n }\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtButton","DtIconClose","s","CHIP_SIZE_MODIFIERS","getUniqueString","hasSlotContent","DialtoneLocalization","event","_a","CHIP_ICON_SIZES","CHIP_CLOSE_BUTTON_SIZE_MODIFIERS","_hoisted_1","_openBlock","_createElementBlock","_createBlock","_resolveDynamicComponent","$props","_mergeProps","$options","_toHandlers","$data","_ctx","_hoisted_2","_renderSlot","_hoisted_3","_component_dt_button","_createVNode","_component_dt_icon_close"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const E=["xs","sm","md","lg"],O="sm";exports.CODEBLOCK_SIZES=E;exports.CODEBLOCK_SIZE_DEFAULT=O;
2
+ //# sourceMappingURL=codeblock-constants.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codeblock-constants.cjs","sources":["../../../components/codeblock/codeblock_constants.js"],"sourcesContent":["export const CODEBLOCK_SIZES = ['xs', 'sm', 'md', 'lg'];\nexport const CODEBLOCK_SIZE_DEFAULT = 'sm';\n"],"names":["CODEBLOCK_SIZES","CODEBLOCK_SIZE_DEFAULT"],"mappings":"gFAAY,MAACA,EAAkB,CAAC,KAAM,KAAM,KAAM,IAAI,EACzCC,EAAyB"}
@@ -0,0 +1,6 @@
1
+ const s = ["xs", "sm", "md", "lg"], E = "sm";
2
+ export {
3
+ s as CODEBLOCK_SIZES,
4
+ E as CODEBLOCK_SIZE_DEFAULT
5
+ };
6
+ //# sourceMappingURL=codeblock-constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codeblock-constants.js","sources":["../../../components/codeblock/codeblock_constants.js"],"sourcesContent":["export const CODEBLOCK_SIZES = ['xs', 'sm', 'md', 'lg'];\nexport const CODEBLOCK_SIZE_DEFAULT = 'sm';\n"],"names":["CODEBLOCK_SIZES","CODEBLOCK_SIZE_DEFAULT"],"mappings":"AAAY,MAACA,IAAkB,CAAC,MAAM,MAAM,MAAM,IAAI,GACzCC,IAAyB;"}
@@ -1,3 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),r=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),n={compatConfig:{MODE:3},name:"DtCodeblock",props:{text:{type:String,required:!0}}},c={class:"d-codeblock"};function l(u,t,o,d,i,p){return e.openBlock(),e.createElementBlock("pre",null,[t[0]||(t[0]=e.createTextVNode(" ",-1)),e.createElementVNode("code",c,e.toDisplayString(o.text),1),t[1]||(t[1]=e.createTextVNode(`
2
- `,-1))])}const s=r._(n,[["render",l]]);exports.default=s;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const c=require("./codeblock-constants.cjs"),e=require("vue"),r=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),d={compatConfig:{MODE:3},name:"DtCodeblock",props:{text:{type:String,required:!0},bordered:{type:Boolean,default:!1},size:{type:String,default:"sm",validator:t=>c.CODEBLOCK_SIZES.includes(t)}}};function l(t,s,o,a,i,u){return e.openBlock(),e.createElementBlock("pre",{class:e.normalizeClass(["d-codeblock",{"d-codeblock--bordered":o.bordered}])},[e.createElementVNode("code",{class:e.normalizeClass(["d-codeblock__code",`d-codeblock__code--${o.size}`])},e.toDisplayString(o.text),3)],2)}const n=r._(d,[["render",l]]);exports.default=n;
3
2
  //# sourceMappingURL=codeblock.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"codeblock.cjs","sources":["../../../components/codeblock/codeblock.vue"],"sourcesContent":["<template>\n <pre>\n <code\n class=\"d-codeblock\"\n >{{ text }}</code>\n </pre>\n</template>\n\n<script>\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCodeblock',\n\n props: {\n text: {\n type: String,\n required: true,\n },\n },\n};\n</script>\n"],"names":["_sfc_main","_hoisted_1","_createElementBlock","_createElementVNode","_toDisplayString","$props"],"mappings":"6LASKA,EAAU,CACb,aAAc,CAAE,KAAM,GACtB,KAAM,cAEN,MAAO,CACL,KAAM,CACJ,KAAM,OACN,SAAU,IAGhB,EAhBMC,EAAA,CAAA,MAAM,aAAa,+CAFvBC,qBAIM,MAAA,KAAA,+BAJD,OACH,EAAA,GAAAC,EAAAA,mBAEkB,OAFlBF,EAEkBG,EAAAA,gBAAdC,EAAA,IAAI,EAAA,CAAA,gCAAU;AAAA,IACpB,EAAA"}
1
+ {"version":3,"file":"codeblock.cjs","sources":["../../../components/codeblock/codeblock.vue"],"sourcesContent":["<template>\n <pre\n class=\"d-codeblock\"\n :class=\"{ 'd-codeblock--bordered': bordered }\"\n ><code\n class=\"d-codeblock__code\"\n :class=\"`d-codeblock__code--${size}`\"\n >{{ text }}</code></pre> <!-- this must be a single line -->\n</template>\n\n<script>\nimport { CODEBLOCK_SIZES } from './codeblock_constants';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCodeblock',\n\n props: {\n /**\n * The text to display in the codeblock.\n */\n text: {\n type: String,\n required: true,\n },\n\n /**\n * Whether to render as a styled container block.\n */\n bordered: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Font size of the code block.\n * @values xs, sm, md, lg\n */\n size: {\n type: String,\n default: 'sm',\n validator: (val) => CODEBLOCK_SIZES.includes(val),\n },\n },\n};\n</script>\n"],"names":["_sfc_main","val","CODEBLOCK_SIZES","_createElementBlock","_normalizeClass","$props","_createElementVNode"],"mappings":"oOAaKA,EAAU,CACb,aAAc,CAAE,KAAM,GACtB,KAAM,cAEN,MAAO,CAIL,KAAM,CACJ,KAAM,OACN,SAAU,IAMZ,SAAU,CACR,KAAM,QACN,QAAS,IAOX,KAAM,CACJ,KAAM,OACN,QAAS,KACT,UAAYC,GAAQC,kBAAgB,SAASD,CAAG,GAGtD,+CA3CEE,EAAAA,mBAMwB,MAAA,CALtB,MAAKC,EAAAA,eAAA,CAAC,cAAa,CAAA,wBACgBC,EAAA,SAAQ,CAAA,IAC5CC,EAAAA,mBAGiB,OAAA,CAFhB,MAAKF,EAAAA,eAAA,CAAC,oBAAmB,sBACKC,EAAA,IAAI,EAAA,CAAA,qBAChCA,EAAA,IAAI,EAAA,CAAA"}
@@ -1,25 +1,46 @@
1
- import { openBlock as r, createElementBlock as n, createTextVNode as t, createElementVNode as c, toDisplayString as s } from "vue";
2
- import { _ as d } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
3
- const p = {
1
+ import { CODEBLOCK_SIZES as c } from "./codeblock-constants.js";
2
+ import { openBlock as r, createElementBlock as d, normalizeClass as t, createElementVNode as a, toDisplayString as l } from "vue";
3
+ import { _ as n } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
4
+ const s = {
4
5
  compatConfig: { MODE: 3 },
5
6
  name: "DtCodeblock",
6
7
  props: {
8
+ /**
9
+ * The text to display in the codeblock.
10
+ */
7
11
  text: {
8
12
  type: String,
9
13
  required: !0
14
+ },
15
+ /**
16
+ * Whether to render as a styled container block.
17
+ */
18
+ bordered: {
19
+ type: Boolean,
20
+ default: !1
21
+ },
22
+ /**
23
+ * Font size of the code block.
24
+ * @values xs, sm, md, lg
25
+ */
26
+ size: {
27
+ type: String,
28
+ default: "sm",
29
+ validator: (o) => c.includes(o)
10
30
  }
11
31
  }
12
- }, l = { class: "d-codeblock" };
13
- function i(a, e, o, m, f, u) {
14
- return r(), n("pre", null, [
15
- e[0] || (e[0] = t(" ", -1)),
16
- c("code", l, s(o.text), 1),
17
- e[1] || (e[1] = t(`
18
- `, -1))
19
- ]);
32
+ };
33
+ function i(o, _, e, m, f, p) {
34
+ return r(), d("pre", {
35
+ class: t(["d-codeblock", { "d-codeblock--bordered": e.bordered }])
36
+ }, [
37
+ a("code", {
38
+ class: t(["d-codeblock__code", `d-codeblock__code--${e.size}`])
39
+ }, l(e.text), 3)
40
+ ], 2);
20
41
  }
21
- const k = /* @__PURE__ */ d(p, [["render", i]]);
42
+ const x = /* @__PURE__ */ n(s, [["render", i]]);
22
43
  export {
23
- k as default
44
+ x as default
24
45
  };
25
46
  //# sourceMappingURL=codeblock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codeblock.js","sources":["../../../components/codeblock/codeblock.vue"],"sourcesContent":["<template>\n <pre>\n <code\n class=\"d-codeblock\"\n >{{ text }}</code>\n </pre>\n</template>\n\n<script>\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCodeblock',\n\n props: {\n text: {\n type: String,\n required: true,\n },\n },\n};\n</script>\n"],"names":["_sfc_main","_hoisted_1","_createElementBlock","_createElementVNode","_toDisplayString","$props"],"mappings":";;AASA,MAAKA,IAAU;AAAA,EACb,cAAc,EAAE,MAAM;EACtB,MAAM;AAAA,EAEN,OAAO;AAAA,IACL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,UAAU;AAAA;;AAGhB,GAhBMC,IAAA,EAAA,OAAM,cAAa;;cAFvBC,EAIM,OAAA,MAAA;AAAA,sBAJD,QACH,EAAA;AAAA,IAAAC,EAEkB,QAFlBF,GAEkBG,EAAdC,EAAA,IAAI,GAAA,CAAA;AAAA,sBAAU;AAAA,KACpB,EAAA;AAAA;;;"}
1
+ {"version":3,"file":"codeblock.js","sources":["../../../components/codeblock/codeblock.vue"],"sourcesContent":["<template>\n <pre\n class=\"d-codeblock\"\n :class=\"{ 'd-codeblock--bordered': bordered }\"\n ><code\n class=\"d-codeblock__code\"\n :class=\"`d-codeblock__code--${size}`\"\n >{{ text }}</code></pre> <!-- this must be a single line -->\n</template>\n\n<script>\nimport { CODEBLOCK_SIZES } from './codeblock_constants';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCodeblock',\n\n props: {\n /**\n * The text to display in the codeblock.\n */\n text: {\n type: String,\n required: true,\n },\n\n /**\n * Whether to render as a styled container block.\n */\n bordered: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Font size of the code block.\n * @values xs, sm, md, lg\n */\n size: {\n type: String,\n default: 'sm',\n validator: (val) => CODEBLOCK_SIZES.includes(val),\n },\n },\n};\n</script>\n"],"names":["_sfc_main","val","CODEBLOCK_SIZES","_createElementBlock","_normalizeClass","$props","_createElementVNode"],"mappings":";;;AAaA,MAAKA,IAAU;AAAA,EACb,cAAc,EAAE,MAAM;EACtB,MAAM;AAAA,EAEN,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,UAAU;AAAA;;;;IAMZ,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;;;;;IAOX,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,CAACC,MAAQC,EAAgB,SAASD,CAAG;AAAA;;AAGtD;;cA3CEE,EAMwB,OAAA;AAAA,IALtB,OAAKC,EAAA,CAAC,eAAa,EAAA,yBACgBC,EAAA,UAAQ,CAAA;AAAA;IAC5CC,EAGiB,QAAA;AAAA,MAFhB,OAAKF,EAAA,CAAC,qBAAmB,sBACKC,EAAA,IAAI,EAAA,CAAA;AAAA,SAChCA,EAAA,IAAI,GAAA,CAAA;AAAA;;;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const f=require("../combobox-with-popover/combobox-with-popover.cjs"),b=require("../input/input.cjs"),C=require("../chip/chip.cjs"),x=require("../validation-messages/validation-messages.cjs"),y=require("../../common/validators/index.cjs"),h=require("../../common/utils/index.cjs"),I=require("../popover/popover-constants.cjs"),p=require("./combobox-multi-select-constants.cjs"),s=require("vue"),w=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),_={compatConfig:{MODE:3},name:"DtRecipeComboboxMultiSelect",components:{DtRecipeComboboxWithPopover:f.default,DtInput:b.default,DtChip:C.default,DtValidationMessages:x.default},inheritAttrs:!1,props:{label:{type:String,required:!0},labelVisible:{type:Boolean,default:!0},description:{type:String,default:""},placeholder:{type:String,default:"Select one or start typing"},inputMessages:{type:Array,default:()=>[],validator:e=>y.validationMessageValidator(e)},showInputMessages:{type:Boolean,default:!0},loading:{type:Boolean,default:!1},loadingMessage:{type:String,default:"loading..."},showList:{type:Boolean,default:null},listMaxHeight:{type:String,default:"300px"},selectedItems:{type:Array,default:function(){return[]}},maxSelected:{type:Number,default:0},maxSelectedMessage:{type:Array,default:function(){return[]}},hasSuggestionList:{type:Boolean,default:!0},size:{type:String,default:"md",validator:e=>Object.values(p.MULTI_SELECT_SIZES).includes(e)},appendTo:{type:[HTMLElement,String],default:"body",validator:e=>I.POPOVER_APPEND_TO_VALUES.includes(e)||e instanceof HTMLElement},transition:{type:String,default:"fade"},collapseOnFocusOut:{type:Boolean,default:!1},listMaxWidth:{type:String,default:""},reservedRightSpace:{type:Number,default:64},chipMaxWidth:{type:String,default:""},inputClass:{type:[String,Object,Array],default:""},inputWrapperClass:{type:[String,Object,Array],default:""},disabled:{type:Boolean,default:!1}},emits:["input","select","remove","max-selected","keyup","keydown","combobox-highlight"],data(){return{value:"",popoverOffset:[0,4],showValidationMessages:!1,resizeWindowObserver:null,initialInputHeight:null,CHIP_SIZES:p.CHIP_SIZES,hasSlotContent:h.hasSlotContent,inputFocused:!1,hideInputText:!1}},computed:{inputPlaceHolder(){var e;return((e=this.selectedItems)==null?void 0:e.length)>0?"":this.placeholder},chipListeners(){return{keydown:e=>{this.onChipKeyDown(e),this.$emit("keydown",e)}}},inputListeners(){return{...h.extractVueListeners(this.$attrs),onInput:e=>{this.$emit("input",e),this.hasSuggestionList&&this.showComboboxList()},onKeydown:e=>{this.onInputKeyDown(e)},onKeyup:e=>{this.$emit("keyup",e)},onClick:()=>{this.hasSuggestionList&&this.showComboboxList()}}},chipWrapperClass(){return{[`d-recipe-combobox-multi-select__chip-wrapper-${this.size}--collapsed`]:!this.inputFocused&&this.collapseOnFocusOut}}},watch:{selectedItems:{deep:!0,handler:async function(){await this.initSelectedItems()}},chipMaxWidth:{async handler(){await this.initSelectedItems()}},async label(){await this.$nextTick(),this.setChipsTopPosition()},async description(){await this.$nextTick(),this.setChipsTopPosition()},size:{async handler(){await this.$nextTick();const e=this.getInput();this.revertInputPadding(e),this.initialInputHeight=e.getBoundingClientRect().height,this.setInputPadding(),this.setChipsTopPosition()}}},async mounted(){this.setInitialInputHeight(),this.resizeWindowObserver=new ResizeObserver(async()=>{this.setChipsTopPosition(),this.setInputPadding()}),this.resizeWindowObserver.observe(document.body),await this.initSelectedItems()},beforeUnmount(){var e;(e=this.resizeWindowObserver)==null||e.unobserve(document.body)},methods:{extractNonListeners:h.extractNonListeners,comboboxHighlight(e){this.$emit("combobox-highlight",e)},async initSelectedItems(){await this.$nextTick(),this.setInputPadding(),this.setChipsTopPosition(),this.setInputMinWidth(),this.checkMaxSelected()},onChipRemove(e){var t;this.$emit("remove",e),(t=this.$refs.input)==null||t.focus()},onComboboxSelect(e){this.loading||(this.value="",this.$emit("select",e))},showComboboxList(){var e;this.showList==null&&((e=this.$refs.comboboxWithPopover)==null||e.showComboboxList())},closeComboboxList(){var e;this.showList==null&&((e=this.$refs.comboboxWithPopover)==null||e.closeComboboxList())},getChips(){return!this.selectedItems.length||!this.$refs.chips?null:this.selectedItems.map(t=>this.$refs.chips.find(i=>{var n,o,r;return((r=(o=(n=h.returnFirstEl(i.$el))==null?void 0:n.querySelector(".d-chip__label"))==null?void 0:o.textContent)==null?void 0:r.trim())===t})).filter(Boolean).map(t=>h.returnFirstEl(t.$el))},getChipButtons(){const e=this.getChips();return e&&e.map(t=>h.returnFirstEl(t).querySelector("button"))},getLastChipButton(){const e=this.getChipButtons();return e&&e[e.length-1]},getLastChip(){const e=this.getChips();return e&&e[e.length-1]},getFirstChip(){const e=this.getChips();return e&&e[0]},getInput(){var e;return(e=this.$refs.input)==null?void 0:e.$refs.input},onChipKeyDown(e){var i;const t=(i=e.code)==null?void 0:i.toLowerCase();t==="arrowleft"?this.navigateBetweenChips(e.target,!0):t==="arrowright"&&(e.target.id===this.getLastChipButton().id?this.moveFromChipToInput():this.navigateBetweenChips(e.target,!1))},onInputKeyDown(e){var i;const t=(i=e.code)==null?void 0:i.toLowerCase();if(this.selectedItems.length>0&&e.target.selectionStart===0){if(e.target.selectionEnd!==e.target.selectionStart)return;(t==="backspace"||t==="arrowleft")&&this.moveFromInputToChip()}},moveFromInputToChip(){var e;this.getLastChipButton().focus(),(e=this.$refs.input)==null||e.blur(),this.closeComboboxList()},moveFromChipToInput(){var e;this.getLastChipButton().blur(),(e=this.$refs.input)==null||e.focus(),this.showComboboxList()},navigateBetweenChips(e,t){var n;const i=this.getChipButtons().indexOf(e),l=t?i-1:i+1;l<0||l>=((n=this.$refs.chips)==null?void 0:n.length)||(this.getChipButtons()[i].blur(),this.getChipButtons()[l].focus(),this.closeComboboxList())},setChipsTopPosition(){const e=this.getInput();if(!e)return;const t=this.$refs.inputSlotWrapper,i=e.getBoundingClientRect().top-t.getBoundingClientRect().top,l=this.$refs.chipsWrapper;l.style.top=i-p.CHIP_TOP_POSITION[this.size]+"px"},setInputPadding(){const e=this.getLastChip(),t=this.getInput(),i=this.$refs.chipsWrapper;if(!t||(this.revertInputPadding(t),this.popoverOffset=[0,4],!e)||this.collapseOnFocusOut&&!this.inputFocused)return;const l=e.offsetLeft+this.getFullWidth(e),n=t.getBoundingClientRect().width-l;n>this.reservedRightSpace?t.style.paddingLeft=l+"px":t.style.paddingLeft="4px";const o=i.getBoundingClientRect().height-4,r=e.getBoundingClientRect().height-4,u=n>this.reservedRightSpace?e.offsetTop+2:o+r-9;t.style.paddingTop=`${u}px`},revertInputPadding(e){e.style.paddingLeft="",e.style.paddingTop="",e.style.paddingBottom=""},getFullWidth(e){const t=window.getComputedStyle(e);return e.offsetWidth+parseInt(t.marginLeft)+parseInt(t.marginRight)},setInputMinWidth(){const e=this.getFirstChip(),t=this.getInput();t&&(e?t.style.minWidth=this.getFullWidth(e)+4+"px":t.style.minWidth="")},checkMaxSelected(){this.maxSelected!==0&&(this.selectedItems.length>this.maxSelected?(this.showValidationMessages=!0,this.$emit("max-selected")):this.showValidationMessages=!1)},setInitialInputHeight(){const e=this.getInput();e&&(this.initialInputHeight=e.getBoundingClientRect().height)},async handleInputFocusIn(){this.inputFocused=!0,this.collapseOnFocusOut&&(this.hideInputText=!1,await this.$nextTick(),this.setInputPadding())},async handleInputFocusOut(){if(this.inputFocused=!1,this.collapseOnFocusOut){this.hideInputText=!0;const e=this.getInput();if(!e||!e.style.paddingTop)return;this.revertInputPadding(e)}}}},S={ref:"header"},v={key:1,class:"d-recipe-combobox-multi-select__list--loading"},L={ref:"footer"};function M(e,t,i,l,n,o){const r=s.resolveComponent("dt-chip"),u=s.resolveComponent("dt-input"),c=s.resolveComponent("dt-validation-messages"),d=s.resolveComponent("dt-recipe-combobox-with-popover");return s.openBlock(),s.createBlock(d,s.mergeProps({ref:"comboboxWithPopover",label:i.label,"show-list":i.showList,"max-height":i.listMaxHeight,"max-width":i.listMaxWidth,"popover-offset":n.popoverOffset,"has-suggestion-list":i.hasSuggestionList,"content-width":"anchor","append-to":i.appendTo,transition:i.transition},o.extractNonListeners(e.$attrs),{onSelect:o.onComboboxSelect,onHighlight:o.comboboxHighlight}),s.createSlots({input:s.withCtx(({onInput:g})=>[s.createElementVNode("span",{ref:"inputSlotWrapper",class:"d-recipe-combobox-multi-select__input-wrapper",onFocusin:t[1]||(t[1]=(...a)=>o.handleInputFocusIn&&o.handleInputFocusIn(...a)),onFocusout:t[2]||(t[2]=(...a)=>o.handleInputFocusOut&&o.handleInputFocusOut(...a))},[s.createElementVNode("span",{ref:"chipsWrapper",class:s.normalizeClass(["d-recipe-combobox-multi-select__chip-wrapper",o.chipWrapperClass])},[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(i.selectedItems,a=>(s.openBlock(),s.createBlock(r,s.mergeProps({ref_for:!0,ref:"chips",key:a,"label-class":["d-chip__label"],class:["d-recipe-combobox-multi-select__chip",{"d-recipe-combobox-multi-select__chip--truncate":!!i.chipMaxWidth}],style:{maxWidth:i.chipMaxWidth},size:n.CHIP_SIZES[i.size],disabled:i.disabled},s.toHandlers(o.chipListeners),{onKeydown:s.withKeys(m=>o.onChipRemove(a),["backspace"]),onClose:m=>o.onChipRemove(a)}),{default:s.withCtx(()=>[s.createTextVNode(s.toDisplayString(a),1)]),_:2},1040,["class","style","size","disabled","onKeydown","onClose"]))),128))],2),s.createVNode(u,s.mergeProps({ref:"input",modelValue:n.value,"onUpdate:modelValue":t[0]||(t[0]=a=>n.value=a),class:"d-recipe-combobox-multi-select__input","input-class":[i.inputClass,{"d-recipe-combobox-multi-select__input--hidden":n.hideInputText}],"input-wrapper-class":i.inputWrapperClass,disabled:i.disabled,"aria-label":i.label,label:i.labelVisible?i.label:"",description:i.description,placeholder:o.inputPlaceHolder,"show-messages":i.showInputMessages,messages:i.inputMessages,size:i.size},o.inputListeners,{onInput:g}),null,16,["modelValue","input-class","input-wrapper-class","disabled","aria-label","label","description","placeholder","show-messages","messages","size","onInput"]),s.createVNode(c,{"validation-messages":i.maxSelectedMessage,"show-messages":n.showValidationMessages},null,8,["validation-messages","show-messages"])],544)]),list:s.withCtx(()=>[s.createElementVNode("div",{ref:"list",class:"d-recipe-combobox-multi-select__list",onMousedown:t[3]||(t[3]=s.withModifiers(()=>{},["prevent"]))},[i.loading?(s.openBlock(),s.createElementBlock("div",v,s.toDisplayString(i.loadingMessage),1)):s.renderSlot(e.$slots,"list",{key:0})],544)]),_:2},[n.hasSlotContent(e.$slots.header)?{name:"header",fn:s.withCtx(()=>[s.createElementVNode("div",S,[s.renderSlot(e.$slots,"header")],512)]),key:"0"}:void 0,n.hasSlotContent(e.$slots.footer)?{name:"footer",fn:s.withCtx(()=>[s.createElementVNode("div",L,[s.renderSlot(e.$slots,"footer")],512)]),key:"1"}:void 0]),1040,["label","show-list","max-height","max-width","popover-offset","has-suggestion-list","append-to","transition","onSelect","onHighlight"])}const W=w._(_,[["render",M]]);exports.default=W;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const f=require("../combobox-with-popover/combobox-with-popover.cjs"),b=require("../input/input.cjs"),C=require("../chip/chip.cjs"),x=require("../validation-messages/validation-messages.cjs"),y=require("../../common/validators/index.cjs"),h=require("../../common/utils/index.cjs"),I=require("../popover/popover-constants.cjs"),c=require("./combobox-multi-select-constants.cjs"),s=require("vue"),w=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),S={compatConfig:{MODE:3},name:"DtRecipeComboboxMultiSelect",components:{DtRecipeComboboxWithPopover:f.default,DtInput:b.default,DtChip:C.default,DtValidationMessages:x.default},inheritAttrs:!1,props:{label:{type:String,required:!0},labelVisible:{type:Boolean,default:!0},description:{type:String,default:""},placeholder:{type:String,default:"Select one or start typing"},inputMessages:{type:Array,default:()=>[],validator:e=>y.validationMessageValidator(e)},showInputMessages:{type:Boolean,default:!0},loading:{type:Boolean,default:!1},loadingMessage:{type:String,default:"loading..."},showList:{type:Boolean,default:null},listMaxHeight:{type:String,default:"300px"},selectedItems:{type:Array,default:function(){return[]}},maxSelected:{type:Number,default:0},maxSelectedMessage:{type:Array,default:function(){return[]}},hasSuggestionList:{type:Boolean,default:!0},size:{type:String,default:"md",validator:e=>Object.values(c.MULTI_SELECT_SIZES).includes(e)},appendTo:{type:[HTMLElement,String],default:"body",validator:e=>I.POPOVER_APPEND_TO_VALUES.includes(e)||e instanceof HTMLElement},transition:{type:String,default:"fade"},collapseOnFocusOut:{type:Boolean,default:!1},listMaxWidth:{type:String,default:""},reservedRightSpace:{type:Number,default:64},chipMaxWidth:{type:String,default:""},inputClass:{type:[String,Object,Array],default:""},inputWrapperClass:{type:[String,Object,Array],default:""},disabled:{type:Boolean,default:!1}},emits:["input","select","remove","max-selected","keyup","keydown","combobox-highlight"],data(){return{value:"",popoverOffset:[0,4],showValidationMessages:!1,resizeWindowObserver:null,initialInputHeight:null,CHIP_SIZES:c.CHIP_SIZES,hasSlotContent:h.hasSlotContent,inputFocused:!1,hideInputText:!1}},computed:{inputPlaceHolder(){var e;return((e=this.selectedItems)==null?void 0:e.length)>0?"":this.placeholder},chipListeners(){return{keydown:e=>{this.onChipKeyDown(e),this.$emit("keydown",e)}}},inputListeners(){return{...h.extractVueListeners(this.$attrs),onInput:e=>{this.$emit("input",e),this.hasSuggestionList&&this.showComboboxList()},onKeydown:e=>{this.onInputKeyDown(e)},onKeyup:e=>{this.$emit("keyup",e)},onClick:()=>{this.hasSuggestionList&&this.showComboboxList()}}},chipWrapperClass(){return{[`d-recipe-combobox-multi-select__chip-wrapper-${this.size}--collapsed`]:!this.inputFocused&&this.collapseOnFocusOut}}},watch:{selectedItems:{deep:!0,handler:async function(){await this.initSelectedItems()}},chipMaxWidth:{async handler(){await this.initSelectedItems()}},async label(){await this.$nextTick(),this.setChipsTopPosition()},async description(){await this.$nextTick(),this.setChipsTopPosition()},size:{async handler(){await this.$nextTick();const e=this.getInput();this.revertInputPadding(e),this.initialInputHeight=e.getBoundingClientRect().height,this.setInputPadding(),this.setChipsTopPosition()}}},async mounted(){this.setInitialInputHeight(),this.resizeWindowObserver=new ResizeObserver(async()=>{this.setChipsTopPosition(),this.setInputPadding()}),this.resizeWindowObserver.observe(document.body),await this.initSelectedItems()},beforeUnmount(){var e;(e=this.resizeWindowObserver)==null||e.unobserve(document.body)},methods:{extractNonListeners:h.extractNonListeners,comboboxHighlight(e){this.$emit("combobox-highlight",e)},async initSelectedItems(){await this.$nextTick(),this.setInputPadding(),this.setChipsTopPosition(),this.setInputMinWidth(),this.checkMaxSelected()},onChipRemove(e){var t;this.$emit("remove",e),(t=this.$refs.input)==null||t.focus()},onComboboxSelect(e){this.loading||(this.value="",this.$emit("select",e))},showComboboxList(){var e;this.showList==null&&((e=this.$refs.comboboxWithPopover)==null||e.showComboboxList())},closeComboboxList(){var e;this.showList==null&&((e=this.$refs.comboboxWithPopover)==null||e.closeComboboxList())},getChips(){return!this.selectedItems.length||!this.$refs.chips?null:this.selectedItems.map(t=>this.$refs.chips.find(i=>{var o,n,r;return((r=(n=(o=h.returnFirstEl(i.$el))==null?void 0:o.querySelector(".d-chip__label"))==null?void 0:n.textContent)==null?void 0:r.trim())===t})).filter(Boolean).map(t=>h.returnFirstEl(t.$el))},getChipButtons(){const e=this.getChips();return e&&e.map(t=>h.returnFirstEl(t).querySelector("button"))},getLastChipButton(){const e=this.getChipButtons();return e&&e[e.length-1]},getLastChip(){const e=this.getChips();return e&&e[e.length-1]},getFirstChip(){const e=this.getChips();return e&&e[0]},getInput(){var e;return(e=this.$refs.input)==null?void 0:e.$refs.input},onChipKeyDown(e){var i;const t=(i=e.code)==null?void 0:i.toLowerCase();t==="arrowleft"?this.navigateBetweenChips(e.target,!0):t==="arrowright"&&(e.target.id===this.getLastChipButton().id?this.moveFromChipToInput():this.navigateBetweenChips(e.target,!1))},onInputKeyDown(e){var i;const t=(i=e.code)==null?void 0:i.toLowerCase();if(this.selectedItems.length>0&&e.target.selectionStart===0){if(e.target.selectionEnd!==e.target.selectionStart)return;(t==="backspace"||t==="arrowleft")&&this.moveFromInputToChip()}},moveFromInputToChip(){var e;this.getLastChipButton().focus(),(e=this.$refs.input)==null||e.blur(),this.closeComboboxList()},moveFromChipToInput(){var e;this.getLastChipButton().blur(),(e=this.$refs.input)==null||e.focus(),this.showComboboxList()},navigateBetweenChips(e,t){var o;const i=this.getChipButtons().indexOf(e),l=t?i-1:i+1;l<0||l>=((o=this.$refs.chips)==null?void 0:o.length)||(this.getChipButtons()[i].blur(),this.getChipButtons()[l].focus(),this.closeComboboxList())},setChipsTopPosition(){const e=this.getInput();if(!e)return;const t=this.$refs.inputSlotWrapper,i=e.getBoundingClientRect().top-t.getBoundingClientRect().top,l=this.$refs.chipsWrapper;l.style.top=i-c.CHIP_TOP_POSITION[this.size]+"px"},setInputPadding(){const e=this.getLastChip(),t=this.getInput(),i=this.$refs.chipsWrapper;if(!t||(this.revertInputPadding(t),this.popoverOffset=[0,4],!e)||this.collapseOnFocusOut&&!this.inputFocused)return;const l=e.offsetLeft+this.getFullWidth(e),o=t.getBoundingClientRect().width-l;o>this.reservedRightSpace?t.style.paddingInlineStart=l+"px":t.style.paddingInlineStart="4px";const n=i.getBoundingClientRect().height-4,r=e.getBoundingClientRect().height-4,u=o>this.reservedRightSpace?e.offsetTop+2:n+r-9;t.style.paddingBlockStart=`${u}px`},revertInputPadding(e){e.style.paddingInlineStart="",e.style.paddingBlockStart="",e.style.paddingBlockEnd=""},getFullWidth(e){const t=window.getComputedStyle(e);return e.offsetWidth+parseInt(t.marginLeft)+parseInt(t.marginRight)},setInputMinWidth(){const e=this.getFirstChip(),t=this.getInput();t&&(e?t.style.minWidth=this.getFullWidth(e)+4+"px":t.style.minWidth="")},checkMaxSelected(){this.maxSelected!==0&&(this.selectedItems.length>this.maxSelected?(this.showValidationMessages=!0,this.$emit("max-selected")):this.showValidationMessages=!1)},setInitialInputHeight(){const e=this.getInput();e&&(this.initialInputHeight=e.getBoundingClientRect().height)},async handleInputFocusIn(){this.inputFocused=!0,this.collapseOnFocusOut&&(this.hideInputText=!1,await this.$nextTick(),this.setInputPadding())},async handleInputFocusOut(){if(this.inputFocused=!1,this.collapseOnFocusOut){this.hideInputText=!0;const e=this.getInput();if(!e||!e.style.paddingTop)return;this.revertInputPadding(e)}}}},_={ref:"header"},v={key:1,class:"d-recipe-combobox-multi-select__list--loading"},L={ref:"footer"};function B(e,t,i,l,o,n){const r=s.resolveComponent("dt-chip"),u=s.resolveComponent("dt-input"),p=s.resolveComponent("dt-validation-messages"),d=s.resolveComponent("dt-recipe-combobox-with-popover");return s.openBlock(),s.createBlock(d,s.mergeProps({ref:"comboboxWithPopover",label:i.label,"show-list":i.showList,"max-height":i.listMaxHeight,"max-width":i.listMaxWidth,"popover-offset":o.popoverOffset,"has-suggestion-list":i.hasSuggestionList,"content-width":"anchor","append-to":i.appendTo,transition:i.transition},n.extractNonListeners(e.$attrs),{onSelect:n.onComboboxSelect,onHighlight:n.comboboxHighlight}),s.createSlots({input:s.withCtx(({onInput:g})=>[s.createElementVNode("span",{ref:"inputSlotWrapper",class:"d-recipe-combobox-multi-select__input-wrapper",onFocusin:t[1]||(t[1]=(...a)=>n.handleInputFocusIn&&n.handleInputFocusIn(...a)),onFocusout:t[2]||(t[2]=(...a)=>n.handleInputFocusOut&&n.handleInputFocusOut(...a))},[s.createElementVNode("span",{ref:"chipsWrapper",class:s.normalizeClass(["d-recipe-combobox-multi-select__chip-wrapper",n.chipWrapperClass])},[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(i.selectedItems,a=>(s.openBlock(),s.createBlock(r,s.mergeProps({ref_for:!0,ref:"chips",key:a,"label-class":["d-chip__label"],class:["d-recipe-combobox-multi-select__chip",{"d-recipe-combobox-multi-select__chip--truncate":!!i.chipMaxWidth}],style:{maxWidth:i.chipMaxWidth},size:o.CHIP_SIZES[i.size],disabled:i.disabled},s.toHandlers(n.chipListeners),{onKeydown:s.withKeys(m=>n.onChipRemove(a),["backspace"]),onClose:m=>n.onChipRemove(a)}),{default:s.withCtx(()=>[s.createTextVNode(s.toDisplayString(a),1)]),_:2},1040,["class","style","size","disabled","onKeydown","onClose"]))),128))],2),s.createVNode(u,s.mergeProps({ref:"input",modelValue:o.value,"onUpdate:modelValue":t[0]||(t[0]=a=>o.value=a),class:"d-recipe-combobox-multi-select__input","input-class":[i.inputClass,{"d-recipe-combobox-multi-select__input--hidden":o.hideInputText}],"input-wrapper-class":i.inputWrapperClass,disabled:i.disabled,"aria-label":i.label,label:i.labelVisible?i.label:"",description:i.description,placeholder:n.inputPlaceHolder,"show-messages":i.showInputMessages,messages:i.inputMessages,size:i.size},n.inputListeners,{onInput:g}),null,16,["modelValue","input-class","input-wrapper-class","disabled","aria-label","label","description","placeholder","show-messages","messages","size","onInput"]),s.createVNode(p,{"validation-messages":i.maxSelectedMessage,"show-messages":o.showValidationMessages},null,8,["validation-messages","show-messages"])],544)]),list:s.withCtx(()=>[s.createElementVNode("div",{ref:"list",class:"d-recipe-combobox-multi-select__list",onMousedown:t[3]||(t[3]=s.withModifiers(()=>{},["prevent"]))},[i.loading?(s.openBlock(),s.createElementBlock("div",v,s.toDisplayString(i.loadingMessage),1)):s.renderSlot(e.$slots,"list",{key:0})],544)]),_:2},[o.hasSlotContent(e.$slots.header)?{name:"header",fn:s.withCtx(()=>[s.createElementVNode("div",_,[s.renderSlot(e.$slots,"header")],512)]),key:"0"}:void 0,o.hasSlotContent(e.$slots.footer)?{name:"footer",fn:s.withCtx(()=>[s.createElementVNode("div",L,[s.renderSlot(e.$slots,"footer")],512)]),key:"1"}:void 0]),1040,["label","show-list","max-height","max-width","popover-offset","has-suggestion-list","append-to","transition","onSelect","onHighlight"])}const M=w._(S,[["render",B]]);exports.default=M;
2
2
  //# sourceMappingURL=combobox-multi-select.cjs.map