@dialpad/dialtone-vue 3.187.3 → 3.188.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (628) hide show
  1. package/dist/common/constants/index.cjs.map +1 -1
  2. package/dist/common/constants/index.js.map +1 -1
  3. package/dist/common/dates/index.cjs.map +1 -1
  4. package/dist/common/dates/index.js +3 -3
  5. package/dist/common/dates/index.js.map +1 -1
  6. package/dist/common/emoji/index.cjs +1 -1
  7. package/dist/common/emoji/index.cjs.map +1 -1
  8. package/dist/common/emoji/index.js +39 -33
  9. package/dist/common/emoji/index.js.map +1 -1
  10. package/dist/common/mixins/dom.cjs.map +1 -1
  11. package/dist/common/mixins/dom.js.map +1 -1
  12. package/dist/common/mixins/input-group.cjs.map +1 -1
  13. package/dist/common/mixins/input-group.js +5 -5
  14. package/dist/common/mixins/input-group.js.map +1 -1
  15. package/dist/common/mixins/input.cjs.map +1 -1
  16. package/dist/common/mixins/input.js.map +1 -1
  17. package/dist/common/mixins/keyboard-list-navigation.cjs.map +1 -1
  18. package/dist/common/mixins/keyboard-list-navigation.js.map +1 -1
  19. package/dist/common/mixins/modal.cjs.map +1 -1
  20. package/dist/common/mixins/modal.js.map +1 -1
  21. package/dist/common/mixins/skeleton.cjs.map +1 -1
  22. package/dist/common/mixins/skeleton.js.map +1 -1
  23. package/dist/common/utils/index.cjs.map +1 -1
  24. package/dist/common/utils/index.js +3 -3
  25. package/dist/common/utils/index.js.map +1 -1
  26. package/dist/common/validators/index.cjs.map +1 -1
  27. package/dist/common/validators/index.js.map +1 -1
  28. package/dist/component-documentation.json +1 -1
  29. package/dist/lib/attachment-carousel/attachment-carousel.cjs +1 -1
  30. package/dist/lib/attachment-carousel/attachment-carousel.cjs.map +1 -1
  31. package/dist/lib/attachment-carousel/attachment-carousel.js +5 -5
  32. package/dist/lib/attachment-carousel/attachment-carousel.js.map +1 -1
  33. package/dist/lib/avatar/avatar-constants.cjs.map +1 -1
  34. package/dist/lib/avatar/avatar-constants.js.map +1 -1
  35. package/dist/lib/avatar/avatar.cjs.map +1 -1
  36. package/dist/lib/avatar/avatar.js +11 -11
  37. package/dist/lib/avatar/avatar.js.map +1 -1
  38. package/dist/lib/avatar/utils.cjs.map +1 -1
  39. package/dist/lib/avatar/utils.js.map +1 -1
  40. package/dist/lib/badge/badge.cjs.map +1 -1
  41. package/dist/lib/badge/badge.js +12 -12
  42. package/dist/lib/badge/badge.js.map +1 -1
  43. package/dist/lib/banner/banner.cjs +1 -1
  44. package/dist/lib/banner/banner.cjs.map +1 -1
  45. package/dist/lib/banner/banner.js +7 -7
  46. package/dist/lib/banner/banner.js.map +1 -1
  47. package/dist/lib/breadcrumbs/breadcrumb-item.cjs.map +1 -1
  48. package/dist/lib/breadcrumbs/breadcrumb-item.js +5 -5
  49. package/dist/lib/breadcrumbs/breadcrumb-item.js.map +1 -1
  50. package/dist/lib/breadcrumbs/breadcrumbs.cjs.map +1 -1
  51. package/dist/lib/breadcrumbs/breadcrumbs.js +1 -1
  52. package/dist/lib/breadcrumbs/breadcrumbs.js.map +1 -1
  53. package/dist/lib/button/button-constants.cjs.map +1 -1
  54. package/dist/lib/button/button-constants.js.map +1 -1
  55. package/dist/lib/button/button.cjs.map +1 -1
  56. package/dist/lib/button/button.js +22 -22
  57. package/dist/lib/button/button.js.map +1 -1
  58. package/dist/lib/button-group/button-group.cjs.map +1 -1
  59. package/dist/lib/button-group/button-group.js +2 -2
  60. package/dist/lib/button-group/button-group.js.map +1 -1
  61. package/dist/lib/button-group/buttons-decorator.cjs.map +1 -1
  62. package/dist/lib/button-group/buttons-decorator.js +2 -2
  63. package/dist/lib/button-group/buttons-decorator.js.map +1 -1
  64. package/dist/lib/callbar-button/callbar-button-constants.cjs.map +1 -1
  65. package/dist/lib/callbar-button/callbar-button-constants.js.map +1 -1
  66. package/dist/lib/callbar-button/callbar-button.cjs +1 -1
  67. package/dist/lib/callbar-button/callbar-button.cjs.map +1 -1
  68. package/dist/lib/callbar-button/callbar-button.js +13 -13
  69. package/dist/lib/callbar-button/callbar-button.js.map +1 -1
  70. package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs +1 -1
  71. package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs.map +1 -1
  72. package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js +13 -13
  73. package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js.map +1 -1
  74. package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.cjs +1 -1
  75. package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.cjs.map +1 -1
  76. package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.js +13 -13
  77. package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.js.map +1 -1
  78. package/dist/lib/callbox/callbox-constants.cjs.map +1 -1
  79. package/dist/lib/callbox/callbox-constants.js.map +1 -1
  80. package/dist/lib/callbox/callbox.cjs.map +1 -1
  81. package/dist/lib/callbox/callbox.js +6 -6
  82. package/dist/lib/callbox/callbox.js.map +1 -1
  83. package/dist/lib/card/card.cjs.map +1 -1
  84. package/dist/lib/card/card.js +4 -4
  85. package/dist/lib/card/card.js.map +1 -1
  86. package/dist/lib/checkbox/checkbox-constants.cjs.map +1 -1
  87. package/dist/lib/checkbox/checkbox-constants.js.map +1 -1
  88. package/dist/lib/checkbox/checkbox.cjs.map +1 -1
  89. package/dist/lib/checkbox/checkbox.js +8 -8
  90. package/dist/lib/checkbox/checkbox.js.map +1 -1
  91. package/dist/lib/checkbox-group/checkbox-group.cjs.map +1 -1
  92. package/dist/lib/checkbox-group/checkbox-group.js.map +1 -1
  93. package/dist/lib/checkbox-group/checkboxes-decorator.cjs.map +1 -1
  94. package/dist/lib/checkbox-group/checkboxes-decorator.js +1 -1
  95. package/dist/lib/checkbox-group/checkboxes-decorator.js.map +1 -1
  96. package/dist/lib/chip/chip-constants.cjs.map +1 -1
  97. package/dist/lib/chip/chip-constants.js.map +1 -1
  98. package/dist/lib/chip/chip.cjs.map +1 -1
  99. package/dist/lib/chip/chip.js +13 -13
  100. package/dist/lib/chip/chip.js.map +1 -1
  101. package/dist/lib/codeblock/codeblock.cjs.map +1 -1
  102. package/dist/lib/codeblock/codeblock.js +2 -2
  103. package/dist/lib/codeblock/codeblock.js.map +1 -1
  104. package/dist/lib/collapsible/collapsible-lazy-show.cjs.map +1 -1
  105. package/dist/lib/collapsible/collapsible-lazy-show.js +3 -3
  106. package/dist/lib/collapsible/collapsible-lazy-show.js.map +1 -1
  107. package/dist/lib/collapsible/collapsible.cjs +1 -1
  108. package/dist/lib/collapsible/collapsible.cjs.map +1 -1
  109. package/dist/lib/collapsible/collapsible.js +18 -18
  110. package/dist/lib/collapsible/collapsible.js.map +1 -1
  111. package/dist/lib/combobox/combobox-constants.cjs.map +1 -1
  112. package/dist/lib/combobox/combobox-constants.js.map +1 -1
  113. package/dist/lib/combobox/combobox-empty-list.cjs.map +1 -1
  114. package/dist/lib/combobox/combobox-empty-list.js +2 -2
  115. package/dist/lib/combobox/combobox-empty-list.js.map +1 -1
  116. package/dist/lib/combobox/combobox-loading-list.cjs +1 -1
  117. package/dist/lib/combobox/combobox-loading-list.cjs.map +1 -1
  118. package/dist/lib/combobox/combobox-loading-list.js +6 -6
  119. package/dist/lib/combobox/combobox-loading-list.js.map +1 -1
  120. package/dist/lib/combobox/combobox.cjs +1 -1
  121. package/dist/lib/combobox/combobox.cjs.map +1 -1
  122. package/dist/lib/combobox/combobox.js +8 -8
  123. package/dist/lib/combobox/combobox.js.map +1 -1
  124. package/dist/lib/combobox-multi-select/combobox-multi-select-constants.cjs.map +1 -1
  125. package/dist/lib/combobox-multi-select/combobox-multi-select-constants.js.map +1 -1
  126. package/dist/lib/combobox-multi-select/combobox-multi-select-story-constants.cjs.map +1 -1
  127. package/dist/lib/combobox-multi-select/combobox-multi-select-story-constants.js.map +1 -1
  128. package/dist/lib/combobox-multi-select/combobox-multi-select.cjs +1 -1
  129. package/dist/lib/combobox-multi-select/combobox-multi-select.cjs.map +1 -1
  130. package/dist/lib/combobox-multi-select/combobox-multi-select.js +16 -16
  131. package/dist/lib/combobox-multi-select/combobox-multi-select.js.map +1 -1
  132. package/dist/lib/combobox-with-popover/combobox-with-popover.cjs +1 -1
  133. package/dist/lib/combobox-with-popover/combobox-with-popover.cjs.map +1 -1
  134. package/dist/lib/combobox-with-popover/combobox-with-popover.js +13 -13
  135. package/dist/lib/combobox-with-popover/combobox-with-popover.js.map +1 -1
  136. package/dist/lib/contact-centers-row/contact-centers-row.cjs +1 -1
  137. package/dist/lib/contact-centers-row/contact-centers-row.cjs.map +1 -1
  138. package/dist/lib/contact-centers-row/contact-centers-row.js +19 -19
  139. package/dist/lib/contact-centers-row/contact-centers-row.js.map +1 -1
  140. package/dist/lib/contact-info/contact-info.cjs.map +1 -1
  141. package/dist/lib/contact-info/contact-info.js +1 -1
  142. package/dist/lib/contact-info/contact-info.js.map +1 -1
  143. package/dist/lib/contact-row/contact-row.cjs +1 -1
  144. package/dist/lib/contact-row/contact-row.cjs.map +1 -1
  145. package/dist/lib/contact-row/contact-row.js +12 -12
  146. package/dist/lib/contact-row/contact-row.js.map +1 -1
  147. package/dist/lib/datepicker/datepicker.cjs +1 -1
  148. package/dist/lib/datepicker/datepicker.cjs.map +1 -1
  149. package/dist/lib/datepicker/datepicker.js +139 -139
  150. package/dist/lib/datepicker/datepicker.js.map +1 -1
  151. package/dist/lib/datepicker/formatUtils.cjs.map +1 -1
  152. package/dist/lib/datepicker/formatUtils.js.map +1 -1
  153. package/dist/lib/datepicker/utils.cjs.map +1 -1
  154. package/dist/lib/datepicker/utils.js.map +1 -1
  155. package/dist/lib/description-list/description-list.cjs.map +1 -1
  156. package/dist/lib/description-list/description-list.js +3 -3
  157. package/dist/lib/description-list/description-list.js.map +1 -1
  158. package/dist/lib/dropdown/dropdown-constants.cjs.map +1 -1
  159. package/dist/lib/dropdown/dropdown-constants.js.map +1 -1
  160. package/dist/lib/dropdown/dropdown-list.cjs.map +1 -1
  161. package/dist/lib/dropdown/dropdown-list.js +5 -5
  162. package/dist/lib/dropdown/dropdown-list.js.map +1 -1
  163. package/dist/lib/dropdown/dropdown-separator.cjs.map +1 -1
  164. package/dist/lib/dropdown/dropdown-separator.js +2 -2
  165. package/dist/lib/dropdown/dropdown-separator.js.map +1 -1
  166. package/dist/lib/dropdown/dropdown-story-constants.cjs.map +1 -1
  167. package/dist/lib/dropdown/dropdown-story-constants.js.map +1 -1
  168. package/dist/lib/dropdown/dropdown.cjs +1 -1
  169. package/dist/lib/dropdown/dropdown.cjs.map +1 -1
  170. package/dist/lib/dropdown/dropdown.js +3 -3
  171. package/dist/lib/dropdown/dropdown.js.map +1 -1
  172. package/dist/lib/editor/editor-constants.cjs.map +1 -1
  173. package/dist/lib/editor/editor-constants.js.map +1 -1
  174. package/dist/lib/editor/editor.cjs +1 -1
  175. package/dist/lib/editor/editor.cjs.map +1 -1
  176. package/dist/lib/editor/editor.js +48 -48
  177. package/dist/lib/editor/editor.js.map +1 -1
  178. package/dist/lib/emoji/emoji.cjs +1 -1
  179. package/dist/lib/emoji/emoji.cjs.map +1 -1
  180. package/dist/lib/emoji/emoji.js +18 -18
  181. package/dist/lib/emoji/emoji.js.map +1 -1
  182. package/dist/lib/emoji-picker/emoji-picker-constants.cjs.map +1 -1
  183. package/dist/lib/emoji-picker/emoji-picker-constants.js.map +1 -1
  184. package/dist/lib/emoji-picker/emoji-picker.cjs.map +1 -1
  185. package/dist/lib/emoji-picker/emoji-picker.js +2 -2
  186. package/dist/lib/emoji-picker/emoji-picker.js.map +1 -1
  187. package/dist/lib/emoji-row/emoji-row-constants.cjs.map +1 -1
  188. package/dist/lib/emoji-row/emoji-row-constants.js.map +1 -1
  189. package/dist/lib/emoji-row/emoji-row.cjs +1 -1
  190. package/dist/lib/emoji-row/emoji-row.cjs.map +1 -1
  191. package/dist/lib/emoji-row/emoji-row.js +10 -10
  192. package/dist/lib/emoji-row/emoji-row.js.map +1 -1
  193. package/dist/lib/emoji-text-wrapper/emoji-text-wrapper.cjs +1 -1
  194. package/dist/lib/emoji-text-wrapper/emoji-text-wrapper.cjs.map +1 -1
  195. package/dist/lib/emoji-text-wrapper/emoji-text-wrapper.js +1 -1
  196. package/dist/lib/emoji-text-wrapper/emoji-text-wrapper.js.map +1 -1
  197. package/dist/lib/empty-state/empty-state-constants.cjs.map +1 -1
  198. package/dist/lib/empty-state/empty-state-constants.js.map +1 -1
  199. package/dist/lib/empty-state/empty-state.cjs.map +1 -1
  200. package/dist/lib/empty-state/empty-state.js +7 -7
  201. package/dist/lib/feed-item-pill/feed-item-pill-constants.cjs.map +1 -1
  202. package/dist/lib/feed-item-pill/feed-item-pill-constants.js.map +1 -1
  203. package/dist/lib/feed-item-pill/feed-item-pill.cjs +1 -1
  204. package/dist/lib/feed-item-pill/feed-item-pill.cjs.map +1 -1
  205. package/dist/lib/feed-item-pill/feed-item-pill.js +6 -6
  206. package/dist/lib/feed-item-pill/feed-item-pill.js.map +1 -1
  207. package/dist/lib/feed-item-row/feed-item-row-constants.cjs.map +1 -1
  208. package/dist/lib/feed-item-row/feed-item-row-constants.js.map +1 -1
  209. package/dist/lib/feed-item-row/feed-item-row.cjs +1 -1
  210. package/dist/lib/feed-item-row/feed-item-row.cjs.map +1 -1
  211. package/dist/lib/feed-item-row/feed-item-row.js +56 -56
  212. package/dist/lib/feed-item-row/feed-item-row.js.map +1 -1
  213. package/dist/lib/general-row/general-row-constants.cjs.map +1 -1
  214. package/dist/lib/general-row/general-row-constants.js.map +1 -1
  215. package/dist/lib/general-row/general-row.cjs +1 -1
  216. package/dist/lib/general-row/general-row.cjs.map +1 -1
  217. package/dist/lib/general-row/general-row.js +30 -30
  218. package/dist/lib/general-row/general-row.js.map +1 -1
  219. package/dist/lib/general-row/leftbar-general-row-icon.cjs.map +1 -1
  220. package/dist/lib/general-row/leftbar-general-row-icon.js +35 -35
  221. package/dist/lib/general-row/leftbar-general-row-icon.js.map +1 -1
  222. package/dist/lib/group-row/group-row.cjs.map +1 -1
  223. package/dist/lib/group-row/group-row.js +3 -3
  224. package/dist/lib/group-row/group-row.js.map +1 -1
  225. package/dist/lib/grouped-chip/grouped-chip.cjs.map +1 -1
  226. package/dist/lib/grouped-chip/grouped-chip.js +14 -14
  227. package/dist/lib/grouped-chip/grouped-chip.js.map +1 -1
  228. package/dist/lib/hovercard/hovercard.cjs +1 -1
  229. package/dist/lib/hovercard/hovercard.cjs.map +1 -1
  230. package/dist/lib/hovercard/hovercard.js +6 -6
  231. package/dist/lib/hovercard/hovercard.js.map +1 -1
  232. package/dist/lib/icon/icon-constants.cjs.map +1 -1
  233. package/dist/lib/icon/icon-constants.js.map +1 -1
  234. package/dist/lib/icon/icon.cjs.map +1 -1
  235. package/dist/lib/icon/icon.js +6 -6
  236. package/dist/lib/icon/icon.js.map +1 -1
  237. package/dist/lib/illustration/illustration-constants.cjs.map +1 -1
  238. package/dist/lib/illustration/illustration-constants.js.map +1 -1
  239. package/dist/lib/illustration/illustration.cjs.map +1 -1
  240. package/dist/lib/illustration/illustration.js +3 -3
  241. package/dist/lib/image-viewer/image-viewer.cjs.map +1 -1
  242. package/dist/lib/image-viewer/image-viewer.js +12 -12
  243. package/dist/lib/image-viewer/image-viewer.js.map +1 -1
  244. package/dist/lib/input/input-constants.cjs.map +1 -1
  245. package/dist/lib/input/input-constants.js.map +1 -1
  246. package/dist/lib/input/input.cjs.map +1 -1
  247. package/dist/lib/input/input.js +20 -20
  248. package/dist/lib/input/input.js.map +1 -1
  249. package/dist/lib/input-group/input-group.cjs.map +1 -1
  250. package/dist/lib/input-group/input-group.js +8 -8
  251. package/dist/lib/input-group/input-group.js.map +1 -1
  252. package/dist/lib/item-layout/item-layout.cjs.map +1 -1
  253. package/dist/lib/item-layout/item-layout.js +13 -13
  254. package/dist/lib/item-layout/item-layout.js.map +1 -1
  255. package/dist/lib/ivr-node/ivr-node-constants.cjs.map +1 -1
  256. package/dist/lib/ivr-node/ivr-node-constants.js.map +1 -1
  257. package/dist/lib/ivr-node/ivr-node.cjs +1 -1
  258. package/dist/lib/ivr-node/ivr-node.cjs.map +1 -1
  259. package/dist/lib/ivr-node/ivr-node.js +36 -36
  260. package/dist/lib/ivr-node/ivr-node.js.map +1 -1
  261. package/dist/lib/keyboard-shortcut/keyboard-shortcut.cjs.map +1 -1
  262. package/dist/lib/keyboard-shortcut/keyboard-shortcut.js +15 -15
  263. package/dist/lib/keyboard-shortcut/keyboard-shortcut.js.map +1 -1
  264. package/dist/lib/lazy-show/lazy-show.cjs.map +1 -1
  265. package/dist/lib/lazy-show/lazy-show.js +2 -2
  266. package/dist/lib/lazy-show/lazy-show.js.map +1 -1
  267. package/dist/lib/link/link-constants.cjs.map +1 -1
  268. package/dist/lib/link/link-constants.js.map +1 -1
  269. package/dist/lib/link/link.cjs.map +1 -1
  270. package/dist/lib/link/link.js +5 -5
  271. package/dist/lib/link/link.js.map +1 -1
  272. package/dist/lib/list-item/list-item-constants.cjs.map +1 -1
  273. package/dist/lib/list-item/list-item-constants.js.map +1 -1
  274. package/dist/lib/list-item/list-item.cjs.map +1 -1
  275. package/dist/lib/list-item/list-item.js +4 -4
  276. package/dist/lib/list-item/list-item.js.map +1 -1
  277. package/dist/lib/list-item-group/list-item-group-constants.cjs.map +1 -1
  278. package/dist/lib/list-item-group/list-item-group-constants.js.map +1 -1
  279. package/dist/lib/list-item-group/list-item-group.cjs.map +1 -1
  280. package/dist/lib/list-item-group/list-item-group.js +5 -5
  281. package/dist/lib/list-item-group/list-item-group.js.map +1 -1
  282. package/dist/lib/loader/loader.cjs.map +1 -1
  283. package/dist/lib/loader/loader.js +2 -2
  284. package/dist/lib/loader/loader.js.map +1 -1
  285. package/dist/lib/message-input/last-active-nodes.cjs +1 -1
  286. package/dist/lib/message-input/last-active-nodes.cjs.map +1 -1
  287. package/dist/lib/message-input/last-active-nodes.js +22 -22
  288. package/dist/lib/message-input/last-active-nodes.js.map +1 -1
  289. package/dist/lib/message-input/message-input-button.cjs +1 -1
  290. package/dist/lib/message-input/message-input-button.cjs.map +1 -1
  291. package/dist/lib/message-input/message-input-button.js +14 -14
  292. package/dist/lib/message-input/message-input-button.js.map +1 -1
  293. package/dist/lib/message-input/message-input-constants.cjs.map +1 -1
  294. package/dist/lib/message-input/message-input-constants.js.map +1 -1
  295. package/dist/lib/message-input/message-input-link.cjs +1 -1
  296. package/dist/lib/message-input/message-input-link.cjs.map +1 -1
  297. package/dist/lib/message-input/message-input-link.js +10 -10
  298. package/dist/lib/message-input/message-input-link.js.map +1 -1
  299. package/dist/lib/message-input/message-input-topbar.cjs.map +1 -1
  300. package/dist/lib/message-input/message-input-topbar.js +11 -11
  301. package/dist/lib/message-input/message-input-topbar.js.map +1 -1
  302. package/dist/lib/message-input/message-input.cjs +1 -1
  303. package/dist/lib/message-input/message-input.cjs.map +1 -1
  304. package/dist/lib/message-input/message-input.js +88 -80
  305. package/dist/lib/message-input/message-input.js.map +1 -1
  306. package/dist/lib/modal/modal.cjs +1 -1
  307. package/dist/lib/modal/modal.cjs.map +1 -1
  308. package/dist/lib/modal/modal.js +14 -14
  309. package/dist/lib/modal/modal.js.map +1 -1
  310. package/dist/lib/notice/notice-action.cjs.map +1 -1
  311. package/dist/lib/notice/notice-action.js +1 -1
  312. package/dist/lib/notice/notice-action.js.map +1 -1
  313. package/dist/lib/notice/notice-constants.cjs.map +1 -1
  314. package/dist/lib/notice/notice-constants.js.map +1 -1
  315. package/dist/lib/notice/notice-content.cjs.map +1 -1
  316. package/dist/lib/notice/notice-content.js +6 -6
  317. package/dist/lib/notice/notice-content.js.map +1 -1
  318. package/dist/lib/notice/notice-icon.cjs.map +1 -1
  319. package/dist/lib/notice/notice-icon.js +13 -13
  320. package/dist/lib/notice/notice-icon.js.map +1 -1
  321. package/dist/lib/notice/notice.cjs.map +1 -1
  322. package/dist/lib/notice/notice.js +4 -4
  323. package/dist/lib/notice/notice.js.map +1 -1
  324. package/dist/lib/pagination/pagination.cjs.map +1 -1
  325. package/dist/lib/pagination/pagination.js +4 -4
  326. package/dist/lib/pagination/pagination.js.map +1 -1
  327. package/dist/lib/popover/popover-constants.cjs.map +1 -1
  328. package/dist/lib/popover/popover-constants.js.map +1 -1
  329. package/dist/lib/popover/popover-header-footer.cjs.map +1 -1
  330. package/dist/lib/popover/popover-header-footer.js +6 -6
  331. package/dist/lib/popover/popover-header-footer.js.map +1 -1
  332. package/dist/lib/popover/popover.cjs +1 -1
  333. package/dist/lib/popover/popover.cjs.map +1 -1
  334. package/dist/lib/popover/popover.js +17 -17
  335. package/dist/lib/popover/popover.js.map +1 -1
  336. package/dist/lib/popover/tippy-utils.cjs +1 -1
  337. package/dist/lib/popover/tippy-utils.cjs.map +1 -1
  338. package/dist/lib/popover/tippy-utils.js +16 -18
  339. package/dist/lib/popover/tippy-utils.js.map +1 -1
  340. package/dist/lib/presence/presence.cjs.map +1 -1
  341. package/dist/lib/presence/presence.js +4 -4
  342. package/dist/lib/presence/presence.js.map +1 -1
  343. package/dist/lib/radio/radio-constants.cjs.map +1 -1
  344. package/dist/lib/radio/radio-constants.js.map +1 -1
  345. package/dist/lib/radio/radio.cjs.map +1 -1
  346. package/dist/lib/radio/radio.js +13 -13
  347. package/dist/lib/radio/radio.js.map +1 -1
  348. package/dist/lib/radio-group/radio-group.cjs.map +1 -1
  349. package/dist/lib/radio-group/radio-group.js.map +1 -1
  350. package/dist/lib/radio-group/radios-decorator.cjs.map +1 -1
  351. package/dist/lib/radio-group/radios-decorator.js +1 -1
  352. package/dist/lib/radio-group/radios-decorator.js.map +1 -1
  353. package/dist/lib/recipes/eslint.config.cjs +2 -0
  354. package/dist/lib/recipes/eslint.config.cjs.map +1 -0
  355. package/dist/lib/recipes/eslint.config.js +12 -0
  356. package/dist/lib/recipes/eslint.config.js.map +1 -0
  357. package/dist/lib/rich-text-editor/channel-suggestion.cjs.map +1 -1
  358. package/dist/lib/rich-text-editor/channel-suggestion.js.map +1 -1
  359. package/dist/lib/rich-text-editor/mention-suggestion.cjs.map +1 -1
  360. package/dist/lib/rich-text-editor/mention-suggestion.js.map +1 -1
  361. package/dist/lib/rich-text-editor/rich-text-editor-constants.cjs.map +1 -1
  362. package/dist/lib/rich-text-editor/rich-text-editor-constants.js.map +1 -1
  363. package/dist/lib/rich-text-editor/rich-text-editor.cjs +2 -2
  364. package/dist/lib/rich-text-editor/rich-text-editor.cjs.map +1 -1
  365. package/dist/lib/rich-text-editor/rich-text-editor.js +132 -119
  366. package/dist/lib/rich-text-editor/rich-text-editor.js.map +1 -1
  367. package/dist/lib/rich-text-editor/slash-command-suggestion.cjs.map +1 -1
  368. package/dist/lib/rich-text-editor/slash-command-suggestion.js.map +1 -1
  369. package/dist/lib/root-layout/root-layout-constants.cjs.map +1 -1
  370. package/dist/lib/root-layout/root-layout-constants.js.map +1 -1
  371. package/dist/lib/root-layout/root-layout.cjs.map +1 -1
  372. package/dist/lib/root-layout/root-layout.js +3 -3
  373. package/dist/lib/root-layout/root-layout.js.map +1 -1
  374. package/dist/lib/scrollbar-directive/scrollbar.cjs.map +1 -1
  375. package/dist/lib/scrollbar-directive/scrollbar.js.map +1 -1
  376. package/dist/lib/scroller/scroller.cjs +1 -1
  377. package/dist/lib/scroller/scroller.cjs.map +1 -1
  378. package/dist/lib/scroller/scroller.js +2 -2
  379. package/dist/lib/scroller/scroller.js.map +1 -1
  380. package/dist/lib/select-menu/select-menu-constants.cjs.map +1 -1
  381. package/dist/lib/select-menu/select-menu-constants.js.map +1 -1
  382. package/dist/lib/select-menu/select-menu.cjs.map +1 -1
  383. package/dist/lib/select-menu/select-menu.js +21 -21
  384. package/dist/lib/select-menu/select-menu.js.map +1 -1
  385. package/dist/lib/settings-menu-button/settings-menu-button.cjs.map +1 -1
  386. package/dist/lib/settings-menu-button/settings-menu-button.js +3 -3
  387. package/dist/lib/settings-menu-button/settings-menu-button.js.map +1 -1
  388. package/dist/lib/skeleton/skeleton-constants.cjs.map +1 -1
  389. package/dist/lib/skeleton/skeleton-constants.js.map +1 -1
  390. package/dist/lib/skeleton/skeleton-list-item.cjs.map +1 -1
  391. package/dist/lib/skeleton/skeleton-list-item.js +2 -2
  392. package/dist/lib/skeleton/skeleton-list-item.js.map +1 -1
  393. package/dist/lib/skeleton/skeleton-paragraph.cjs.map +1 -1
  394. package/dist/lib/skeleton/skeleton-paragraph.js +1 -1
  395. package/dist/lib/skeleton/skeleton-paragraph.js.map +1 -1
  396. package/dist/lib/skeleton/skeleton-shape.cjs.map +1 -1
  397. package/dist/lib/skeleton/skeleton-shape.js +5 -5
  398. package/dist/lib/skeleton/skeleton-shape.js.map +1 -1
  399. package/dist/lib/skeleton/skeleton-text.cjs.map +1 -1
  400. package/dist/lib/skeleton/skeleton-text.js +7 -7
  401. package/dist/lib/skeleton/skeleton-text.js.map +1 -1
  402. package/dist/lib/skeleton/skeleton.cjs +1 -1
  403. package/dist/lib/skeleton/skeleton.cjs.map +1 -1
  404. package/dist/lib/skeleton/skeleton.js +11 -11
  405. package/dist/lib/skeleton/skeleton.js.map +1 -1
  406. package/dist/lib/split-button/split-button-alpha.cjs.map +1 -1
  407. package/dist/lib/split-button/split-button-alpha.js +2 -2
  408. package/dist/lib/split-button/split-button-alpha.js.map +1 -1
  409. package/dist/lib/split-button/split-button-constants.cjs.map +1 -1
  410. package/dist/lib/split-button/split-button-constants.js.map +1 -1
  411. package/dist/lib/split-button/split-button-omega.cjs.map +1 -1
  412. package/dist/lib/split-button/split-button-omega.js +2 -2
  413. package/dist/lib/split-button/split-button-omega.js.map +1 -1
  414. package/dist/lib/split-button/split-button.cjs.map +1 -1
  415. package/dist/lib/split-button/split-button.js +19 -19
  416. package/dist/lib/split-button/split-button.js.map +1 -1
  417. package/dist/lib/stack/stack-constants.cjs.map +1 -1
  418. package/dist/lib/stack/stack-constants.js.map +1 -1
  419. package/dist/lib/stack/stack.cjs.map +1 -1
  420. package/dist/lib/stack/stack.js +11 -11
  421. package/dist/lib/stack/stack.js.map +1 -1
  422. package/dist/lib/stack/utils.cjs.map +1 -1
  423. package/dist/lib/stack/utils.js.map +1 -1
  424. package/dist/lib/stack/validators.cjs.map +1 -1
  425. package/dist/lib/stack/validators.js +5 -5
  426. package/dist/lib/stack/validators.js.map +1 -1
  427. package/dist/lib/tab/tab-group.cjs.map +1 -1
  428. package/dist/lib/tab/tab-group.js +7 -7
  429. package/dist/lib/tab/tab-group.js.map +1 -1
  430. package/dist/lib/tab/tab-panel.cjs.map +1 -1
  431. package/dist/lib/tab/tab-panel.js +2 -2
  432. package/dist/lib/tab/tab-panel.js.map +1 -1
  433. package/dist/lib/tab/tab.cjs.map +1 -1
  434. package/dist/lib/tab/tab.js +2 -2
  435. package/dist/lib/tab/tab.js.map +1 -1
  436. package/dist/lib/time-pill/time-pill.cjs.map +1 -1
  437. package/dist/lib/time-pill/time-pill.js +2 -2
  438. package/dist/lib/time-pill/time-pill.js.map +1 -1
  439. package/dist/lib/toast/toast-constants.cjs.map +1 -1
  440. package/dist/lib/toast/toast-constants.js.map +1 -1
  441. package/dist/lib/toast/toast.cjs +1 -1
  442. package/dist/lib/toast/toast.cjs.map +1 -1
  443. package/dist/lib/toast/toast.js +12 -12
  444. package/dist/lib/toast/toast.js.map +1 -1
  445. package/dist/lib/toggle/toggle-constants.cjs.map +1 -1
  446. package/dist/lib/toggle/toggle-constants.js.map +1 -1
  447. package/dist/lib/toggle/toggle.cjs +1 -1
  448. package/dist/lib/toggle/toggle.cjs.map +1 -1
  449. package/dist/lib/toggle/toggle.js +14 -14
  450. package/dist/lib/toggle/toggle.js.map +1 -1
  451. package/dist/lib/tooltip/tooltip-constants.cjs.map +1 -1
  452. package/dist/lib/tooltip/tooltip-constants.js.map +1 -1
  453. package/dist/lib/tooltip/tooltip.cjs +1 -1
  454. package/dist/lib/tooltip/tooltip.cjs.map +1 -1
  455. package/dist/lib/tooltip/tooltip.js +20 -22
  456. package/dist/lib/tooltip/tooltip.js.map +1 -1
  457. package/dist/lib/tooltip-directive/tooltip.cjs.map +1 -1
  458. package/dist/lib/tooltip-directive/tooltip.js +1 -1
  459. package/dist/lib/tooltip-directive/tooltip.js.map +1 -1
  460. package/dist/lib/top-banner-info/top-banner-info-constants.cjs.map +1 -1
  461. package/dist/lib/top-banner-info/top-banner-info-constants.js.map +1 -1
  462. package/dist/lib/top-banner-info/top-banner-info.cjs.map +1 -1
  463. package/dist/lib/top-banner-info/top-banner-info.js +2 -2
  464. package/dist/lib/top-banner-info/top-banner-info.js.map +1 -1
  465. package/dist/lib/unread-pill/unread-pill-constants.cjs.map +1 -1
  466. package/dist/lib/unread-pill/unread-pill-constants.js.map +1 -1
  467. package/dist/lib/unread-pill/unread-pill.cjs.map +1 -1
  468. package/dist/lib/unread-pill/unread-pill.js +7 -7
  469. package/dist/lib/unread-pill/unread-pill.js.map +1 -1
  470. package/dist/lib/validation-messages/validation-messages.cjs.map +1 -1
  471. package/dist/lib/validation-messages/validation-messages.js +9 -9
  472. package/dist/lib/validation-messages/validation-messages.js.map +1 -1
  473. package/dist/localization/de-DE.cjs.map +1 -1
  474. package/dist/localization/de-DE.js.map +1 -1
  475. package/dist/localization/en-US.cjs.map +1 -1
  476. package/dist/localization/en-US.js.map +1 -1
  477. package/dist/localization/es-LA.cjs.map +1 -1
  478. package/dist/localization/es-LA.js.map +1 -1
  479. package/dist/localization/fr-FR.cjs.map +1 -1
  480. package/dist/localization/fr-FR.js.map +1 -1
  481. package/dist/localization/index.cjs.map +1 -1
  482. package/dist/localization/index.js.map +1 -1
  483. package/dist/localization/it-IT.cjs.map +1 -1
  484. package/dist/localization/it-IT.js.map +1 -1
  485. package/dist/localization/ja-JP.cjs.map +1 -1
  486. package/dist/localization/ja-JP.js.map +1 -1
  487. package/dist/localization/nl-NL.cjs.map +1 -1
  488. package/dist/localization/nl-NL.js.map +1 -1
  489. package/dist/localization/pt-BR.cjs.map +1 -1
  490. package/dist/localization/pt-BR.js.map +1 -1
  491. package/dist/localization/ru-RU.cjs.map +1 -1
  492. package/dist/localization/ru-RU.js.map +1 -1
  493. package/dist/localization/zh-CN.cjs.map +1 -1
  494. package/dist/localization/zh-CN.js.map +1 -1
  495. package/dist/node_modules/@tiptap/vue-3.cjs.map +1 -1
  496. package/dist/node_modules/@tiptap/vue-3.js +3 -3
  497. package/dist/node_modules/@tiptap/vue-3.js.map +1 -1
  498. package/dist/shared/sr_only_close_button.cjs.map +1 -1
  499. package/dist/shared/sr_only_close_button.js +2 -2
  500. package/dist/shared/sr_only_close_button.js.map +1 -1
  501. package/dist/types/common/constants/index.d.ts.map +1 -1
  502. package/dist/types/common/dates/index.d.ts.map +1 -1
  503. package/dist/types/common/emoji/index.d.ts.map +1 -1
  504. package/dist/types/common/mixins/dom.d.ts.map +1 -1
  505. package/dist/types/common/mixins/input.d.ts +6 -6
  506. package/dist/types/common/mixins/input.d.ts.map +1 -1
  507. package/dist/types/common/mixins/input_group.d.ts +2 -2
  508. package/dist/types/common/mixins/modal.d.ts.map +1 -1
  509. package/dist/types/common/utils/index.d.ts.map +1 -1
  510. package/dist/types/components/avatar/avatar.vue.d.ts +12 -12
  511. package/dist/types/components/badge/badge.vue.d.ts +4 -4
  512. package/dist/types/components/banner/banner.vue.d.ts +1 -1
  513. package/dist/types/components/banner/banner.vue.d.ts.map +1 -1
  514. package/dist/types/components/breadcrumbs/breadcrumbs_constants.d.ts.map +1 -1
  515. package/dist/types/components/button/button.vue.d.ts +3 -3
  516. package/dist/types/components/button/button_constants.d.ts.map +1 -1
  517. package/dist/types/components/card/card.vue.d.ts +12 -12
  518. package/dist/types/components/checkbox/checkbox.vue.d.ts +6 -6
  519. package/dist/types/components/checkbox_group/checkbox_group.vue.d.ts +2 -2
  520. package/dist/types/components/chip/chip.vue.d.ts +6 -6
  521. package/dist/types/components/collapsible/collapsible.vue.d.ts +6 -6
  522. package/dist/types/components/combobox/combobox.vue.d.ts +4 -4
  523. package/dist/types/components/combobox/combobox_empty-list.vue.d.ts +3 -3
  524. package/dist/types/components/datepicker/datepicker_constants.d.ts.map +1 -1
  525. package/dist/types/components/datepicker/formatUtils.d.ts +5 -5
  526. package/dist/types/components/datepicker/formatUtils.d.ts.map +1 -1
  527. package/dist/types/components/datepicker/modules/calendar.vue.d.ts +1 -1
  528. package/dist/types/components/datepicker/modules/month-year-picker.vue.d.ts +1 -1
  529. package/dist/types/components/description_list/description_list.vue.d.ts +6 -6
  530. package/dist/types/components/dropdown/dropdown.vue.d.ts +10 -10
  531. package/dist/types/components/emoji/emoji.vue.d.ts +3 -3
  532. package/dist/types/components/emoji_picker/emoji_picker_constants.d.ts.map +1 -1
  533. package/dist/types/components/emoji_picker/modules/emoji_search.vue.d.ts.map +1 -1
  534. package/dist/types/components/emoji_picker/modules/emoji_selector.vue.d.ts.map +1 -1
  535. package/dist/types/components/emoji_picker/modules/emoji_skin_selector.vue.d.ts.map +1 -1
  536. package/dist/types/components/emoji_picker/modules/emoji_tabset.vue.d.ts.map +1 -1
  537. package/dist/types/components/emoji_text_wrapper/emoji_text_wrapper.vue.d.ts +1 -1
  538. package/dist/types/components/emoji_text_wrapper/emoji_text_wrapper.vue.d.ts.map +1 -1
  539. package/dist/types/components/empty_state/empty_state.vue.d.ts +7 -11
  540. package/dist/types/components/empty_state/empty_state.vue.d.ts.map +1 -1
  541. package/dist/types/components/eslint.config.d.ts +8 -0
  542. package/dist/types/components/eslint.config.d.ts.map +1 -0
  543. package/dist/types/components/hovercard/hovercard.vue.d.ts +686 -11
  544. package/dist/types/components/hovercard/hovercard.vue.d.ts.map +1 -1
  545. package/dist/types/components/image_viewer/image_viewer.vue.d.ts.map +1 -1
  546. package/dist/types/components/input/input.vue.d.ts +8 -8
  547. package/dist/types/components/input_group/input_group.vue.d.ts +2 -2
  548. package/dist/types/components/item_layout/item_layout.vue.d.ts +1 -1
  549. package/dist/types/components/keyboard_shortcut/keyboard_shortcut.vue.d.ts +7 -210
  550. package/dist/types/components/lazy_show/lazy_show.vue.d.ts +1 -1
  551. package/dist/types/components/link/link_constants.d.ts.map +1 -1
  552. package/dist/types/components/list_item/list_item.vue.d.ts +3 -3
  553. package/dist/types/components/list_item_group/list_item_group.vue.d.ts +6 -6
  554. package/dist/types/components/modal/modal.vue.d.ts +16 -16
  555. package/dist/types/components/modal/modal.vue.d.ts.map +1 -1
  556. package/dist/types/components/notice/notice.vue.d.ts +1 -1
  557. package/dist/types/components/notice/notice_icon.vue.d.ts +1 -30
  558. package/dist/types/components/notice/notice_icon.vue.d.ts.map +1 -1
  559. package/dist/types/components/popover/popover.vue.d.ts +26 -26
  560. package/dist/types/components/popover/popover.vue.d.ts.map +1 -1
  561. package/dist/types/components/popover/popover_header_footer.vue.d.ts +3 -3
  562. package/dist/types/components/popover/tippy_utils.d.ts +2 -3
  563. package/dist/types/components/popover/tippy_utils.d.ts.map +1 -1
  564. package/dist/types/components/radio/radio.vue.d.ts +6 -6
  565. package/dist/types/components/radio_group/radio_group.vue.d.ts +2 -2
  566. package/dist/types/components/rich_text_editor/extensions/channels/ChannelComponent.vue.d.ts +22 -22
  567. package/dist/types/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.d.ts +22 -22
  568. package/dist/types/components/rich_text_editor/extensions/emoji/suggestion.d.ts +1 -1
  569. package/dist/types/components/rich_text_editor/extensions/emoji/suggestion.d.ts.map +1 -1
  570. package/dist/types/components/rich_text_editor/extensions/mentions/MentionComponent.vue.d.ts +22 -22
  571. package/dist/types/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.d.ts +22 -22
  572. package/dist/types/components/rich_text_editor/extensions/slash_command/slash_command.d.ts +1 -1
  573. package/dist/types/components/rich_text_editor/extensions/slash_command/slash_command.d.ts.map +1 -1
  574. package/dist/types/components/rich_text_editor/rich_text_editor.vue.d.ts +7 -12
  575. package/dist/types/components/rich_text_editor/rich_text_editor.vue.d.ts.map +1 -1
  576. package/dist/types/components/root_layout/root_layout.vue.d.ts +15 -15
  577. package/dist/types/components/scroller/modules/core_scroller.vue.d.ts +26 -16
  578. package/dist/types/components/scroller/modules/core_scroller.vue.d.ts.map +1 -1
  579. package/dist/types/components/scroller/modules/scroller_item.vue.d.ts +1 -1
  580. package/dist/types/components/scroller/scroller.vue.d.ts +245 -12
  581. package/dist/types/components/scroller/scroller.vue.d.ts.map +1 -1
  582. package/dist/types/components/select_menu/select_menu.vue.d.ts +13 -13
  583. package/dist/types/components/skeleton/skeleton-list-item.vue.d.ts +1 -1
  584. package/dist/types/components/skeleton/skeleton-paragraph.vue.d.ts +3 -3
  585. package/dist/types/components/skeleton/skeleton-shape.vue.d.ts +4 -4
  586. package/dist/types/components/skeleton/skeleton-text.vue.d.ts +1 -1
  587. package/dist/types/components/skeleton/skeleton.vue.d.ts +1 -1
  588. package/dist/types/components/skeleton/skeleton_constants.d.ts.map +1 -1
  589. package/dist/types/components/split_button/split_button-alpha.vue.d.ts +3 -3
  590. package/dist/types/components/split_button/split_button.vue.d.ts +3 -3
  591. package/dist/types/components/tab/tab.vue.d.ts +3 -3
  592. package/dist/types/components/tab/tab_group.vue.d.ts +3 -3
  593. package/dist/types/components/tab/tab_panel.vue.d.ts +3 -3
  594. package/dist/types/components/tab/tab_panel.vue.d.ts.map +1 -1
  595. package/dist/types/components/toast/layouts/toast_layout_alternate.vue.d.ts +1 -1
  596. package/dist/types/components/toast/layouts/toast_layout_alternate_icon.vue.d.ts +1 -30
  597. package/dist/types/components/toast/layouts/toast_layout_default.vue.d.ts +1 -1
  598. package/dist/types/components/toast/toast.vue.d.ts +4 -4
  599. package/dist/types/components/toast/toast_constants.d.ts.map +1 -1
  600. package/dist/types/components/toggle/toggle.vue.d.ts +7 -7
  601. package/dist/types/components/tooltip/tooltip.vue.d.ts +10 -10
  602. package/dist/types/components/tooltip/tooltip_constants.d.ts.map +1 -1
  603. package/dist/types/components/validation_messages/validation_messages.vue.d.ts +0 -1
  604. package/dist/types/components/validation_messages/validation_messages.vue.d.ts.map +1 -1
  605. package/dist/types/recipes/buttons/callbar_button/callbar_button.vue.d.ts +7 -7
  606. package/dist/types/recipes/buttons/callbar_button_with_dropdown/callbar_button_with_dropdown.vue.d.ts +7 -7
  607. package/dist/types/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts +9 -9
  608. package/dist/types/recipes/cards/ivr_node/ivr_node.vue.d.ts +1 -30
  609. package/dist/types/recipes/cards/ivr_node/ivr_node.vue.d.ts.map +1 -1
  610. package/dist/types/recipes/cards/ivr_node/ivr_node_constants.d.ts.map +1 -1
  611. package/dist/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts +9 -9
  612. package/dist/types/recipes/conversation_view/editor/editor.vue.d.ts +9 -241
  613. package/dist/types/recipes/conversation_view/editor/editor.vue.d.ts.map +1 -1
  614. package/dist/types/recipes/conversation_view/editor/editor_constants.d.ts.map +1 -1
  615. package/dist/types/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts +7 -36
  616. package/dist/types/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts.map +1 -1
  617. package/dist/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +1 -1
  618. package/dist/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts.map +1 -1
  619. package/dist/types/recipes/conversation_view/feed_item_row/feed_item_row_constants.d.ts.map +1 -1
  620. package/dist/types/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.d.ts +22 -22
  621. package/dist/types/recipes/conversation_view/message_input/last_active_nodes.d.ts.map +1 -1
  622. package/dist/types/recipes/conversation_view/message_input/message_input.vue.d.ts +9 -8
  623. package/dist/types/recipes/conversation_view/message_input/message_input.vue.d.ts.map +1 -1
  624. package/dist/types/recipes/eslint.config.d.ts +8 -0
  625. package/dist/types/recipes/eslint.config.d.ts.map +1 -0
  626. package/dist/types/recipes/item_layout/contact_info/contact_info.vue.d.ts +1 -1
  627. package/dist/types/recipes/leftbar/general_row/leftbar_general_row_icon.vue.d.ts +1 -30
  628. package/package.json +6 -6
@@ -1,4 +1,4 @@
1
- import { openBlock as a, createBlock as n, Transition as l, mergeProps as s, withCtx as i, withDirectives as f, resolveDynamicComponent as h, normalizeProps as c, guardReactiveProps as u, renderSlot as p, createCommentVNode as d, vShow as m } from "vue";
1
+ import { createBlock as a, openBlock as n, Transition as l, mergeProps as s, withCtx as i, withDirectives as f, resolveDynamicComponent as h, normalizeProps as c, guardReactiveProps as u, renderSlot as p, createCommentVNode as d, vShow as m } from "vue";
2
2
  import { _ as v } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
3
3
  const y = {
4
4
  name: "DtCollapsibleLazyShow",
@@ -111,7 +111,7 @@ const y = {
111
111
  }
112
112
  };
113
113
  function E(e, g, r, _, o, t) {
114
- return a(), n(l, s({
114
+ return n(), a(l, s({
115
115
  appear: r.appear,
116
116
  "enter-active-class": "d-collapsible__enter-active",
117
117
  "leave-active-class": "d-collapsible__leave-active"
@@ -125,7 +125,7 @@ function E(e, g, r, _, o, t) {
125
125
  onAfterLeave: t.afterLeave
126
126
  }), {
127
127
  default: i(() => [
128
- f((a(), n(h(r.elementType), c(u(e.$attrs)), {
128
+ f((n(), a(h(r.elementType), c(u(e.$attrs)), {
129
129
  default: i(() => [
130
130
  o.initialized ? p(e.$slots, "default", { key: 0 }) : d("", !0)
131
131
  ]),
@@ -1 +1 @@
1
- {"version":3,"file":"collapsible-lazy-show.js","sources":["../../../components/collapsible/collapsible_lazy_show.vue"],"sourcesContent":["<template>\n <!-- applies the transition on initial render -->\n <transition\n :appear=\"appear\"\n enter-active-class=\"d-collapsible__enter-active\"\n leave-active-class=\"d-collapsible__leave-active\"\n v-bind=\"$attrs\"\n :css=\"isCSSEnabled\"\n @before-enter=\"beforeEnter\"\n @enter=\"enter\"\n @after-enter=\"afterEnter\"\n @before-leave=\"beforeLeave\"\n @leave=\"leave\"\n @after-leave=\"afterLeave\"\n >\n <component\n :is=\"elementType\"\n v-show=\"show\"\n v-bind=\"$attrs\"\n >\n <!-- @slot slot for Content within collapsible -->\n <slot v-if=\"initialized\" />\n </component>\n </transition>\n</template>\n\n<script>\nexport default {\n name: 'DtCollapsibleLazyShow',\n\n inheritAttrs: false,\n\n /******************\n * PROPS *\n ******************/\n props: {\n /**\n * Whether the child slot is shown.\n */\n show: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Enable/Disable transition animation\n */\n appear: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML element type (tag name) of the content wrapper element.\n */\n elementType: {\n type: String,\n default: 'div',\n },\n },\n\n /******************\n * DATA *\n ******************/\n data () {\n return {\n initialized: !!this.show,\n };\n },\n\n /******************\n * COMPUTED *\n ******************/\n computed: {\n /**\n * Set the css property to false when running tests only.\n * Refer to: https://vuejs.org/guide/built-ins/transition.html#javascript-hooks for details about\n * transition `css` property\n * @returns {boolean}\n */\n isCSSEnabled () {\n return process.env.NODE_ENV !== 'test';\n },\n },\n\n /******************\n * WATCH *\n ******************/\n watch: {\n show: function (newValue) {\n if (!newValue || this.initialized) return;\n\n this.initialized = true;\n },\n },\n\n methods: {\n /**\n * @param {HTMLElement} element\n */\n beforeEnter (element) {\n requestAnimationFrame(() => {\n if (!element.style.height) {\n element.style.height = '0px';\n }\n });\n },\n\n /**\n * @param {HTMLElement} element\n */\n enter (element) {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n element.style.height = `${element.scrollHeight}px`;\n });\n });\n },\n\n /**\n * @param {HTMLElement} element\n */\n afterEnter (element) {\n element.style.height = null;\n },\n\n /**\n * @param {HTMLElement} element\n */\n beforeLeave (element) {\n requestAnimationFrame(() => {\n if (!element.style.height) {\n element.style.height = `${element.offsetHeight}px`;\n }\n });\n },\n\n /**\n * @param {HTMLElement} element\n */\n leave (element) {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n element.style.height = '0px';\n });\n });\n },\n\n /**\n * @param {HTMLElement} element\n */\n afterLeave (element) {\n element.style.height = null;\n },\n },\n};\n</script>\n"],"names":["_sfc_main","newValue","element","_openBlock","_createBlock","_Transition","_mergeProps","$props","_ctx","$options","_withCtx","_withDirectives","_resolveDynamicComponent","_normalizeProps","_guardReactiveProps","$data","_renderSlot","_createCommentVNode"],"mappings":";;AA2BA,MAAKA,IAAU;AAAA,EACb,MAAM;AAAA,EAEN,cAAc;AAAA;AAAA;AAAA;AAAA,EAKd,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAKD,OAAQ;AACN,WAAO;AAAA,MACL,aAAa,CAAC,CAAC,KAAK;AAAA;EAEvB;AAAA;AAAA;AAAA;AAAA,EAKD,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOR,eAAgB;AACd,aAAO,QAAQ,IAAI,aAAa;AAAA,IACjC;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAKD,OAAO;AAAA,IACL,MAAM,SAAUC,GAAU;AACxB,MAAI,CAACA,KAAY,KAAK,gBAEtB,KAAK,cAAc;AAAA,IACpB;AAAA,EACF;AAAA,EAED,SAAS;AAAA;AAAA;AAAA;AAAA,IAIP,YAAaC,GAAS;AACpB,4BAAsB,MAAM;AAC1B,QAAKA,EAAQ,MAAM,WACjBA,EAAQ,MAAM,SAAS;AAAA,MAE3B,CAAC;AAAA,IACF;AAAA;AAAA;AAAA;AAAA,IAKD,MAAOA,GAAS;AACd,4BAAsB,MAAM;AAC1B,8BAAsB,MAAM;AAC1B,UAAAA,EAAQ,MAAM,SAAS,GAAGA,EAAQ,YAAY;AAAA,QAChD,CAAC;AAAA,MACH,CAAC;AAAA,IACF;AAAA;AAAA;AAAA;AAAA,IAKD,WAAYA,GAAS;AACnB,MAAAA,EAAQ,MAAM,SAAS;AAAA,IACxB;AAAA;AAAA;AAAA;AAAA,IAKD,YAAaA,GAAS;AACpB,4BAAsB,MAAM;AAC1B,QAAKA,EAAQ,MAAM,WACjBA,EAAQ,MAAM,SAAS,GAAGA,EAAQ,YAAY;AAAA,MAElD,CAAC;AAAA,IACF;AAAA;AAAA;AAAA;AAAA,IAKD,MAAOA,GAAS;AACd,4BAAsB,MAAM;AAC1B,8BAAsB,MAAM;AAC1B,UAAAA,EAAQ,MAAM,SAAS;AAAA,QACzB,CAAC;AAAA,MACH,CAAC;AAAA,IACF;AAAA;AAAA;AAAA;AAAA,IAKD,WAAYA,GAAS;AACnB,MAAAA,EAAQ,MAAM,SAAS;AAAA,IACxB;AAAA,EACF;AACH;;AAzJE,SAAAC,EAAA,GAAAC,EAqBaC,GArBbC,EAqBa;AAAA,IApBV,QAAQC,EAAM;AAAA,IACf,sBAAmB;AAAA,IACnB,sBAAmB;AAAA,KACXC,EAAM,QAAA;AAAA,IACb,KAAKC,EAAY;AAAA,IACjB,eAAcA,EAAW;AAAA,IACzB,SAAOA,EAAK;AAAA,IACZ,cAAaA,EAAU;AAAA,IACvB,eAAcA,EAAW;AAAA,IACzB,SAAOA,EAAK;AAAA,IACZ,cAAaA,EAAU;AAAA;IAb5B,SAAAC,EAeI,MAOY;AAAA,MAPZC,GAAAR,EAAA,GAAAC,EAOYQ,EANLL,EAAA,WAAW,GAhBtBM,EAAAC,EAkBcN,EAAM,MAAA,CAAA,GAAA;AAAA,QAlBpB,SAAAE,EAqBM,MAA2B;AAAA,UAAfK,EAAW,cAAvBC,EAA2BR,uBArBjC,KAAA,GAAA,IAAAS,EAAA,IAAA,EAAA;AAAA;QAAA,GAAA;AAAA;YAiBcV,EAAI,IAAA;AAAA;;IAjBlB,GAAA;AAAA;;;"}
1
+ {"version":3,"file":"collapsible-lazy-show.js","sources":["../../../components/collapsible/collapsible_lazy_show.vue"],"sourcesContent":["<template>\n <!-- applies the transition on initial render -->\n <transition\n :appear=\"appear\"\n enter-active-class=\"d-collapsible__enter-active\"\n leave-active-class=\"d-collapsible__leave-active\"\n v-bind=\"$attrs\"\n :css=\"isCSSEnabled\"\n @before-enter=\"beforeEnter\"\n @enter=\"enter\"\n @after-enter=\"afterEnter\"\n @before-leave=\"beforeLeave\"\n @leave=\"leave\"\n @after-leave=\"afterLeave\"\n >\n <component\n :is=\"elementType\"\n v-show=\"show\"\n v-bind=\"$attrs\"\n >\n <!-- @slot slot for Content within collapsible -->\n <slot v-if=\"initialized\" />\n </component>\n </transition>\n</template>\n\n<script>\nexport default {\n name: 'DtCollapsibleLazyShow',\n\n inheritAttrs: false,\n\n /******************\n * PROPS *\n ******************/\n props: {\n /**\n * Whether the child slot is shown.\n */\n show: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Enable/Disable transition animation\n */\n appear: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML element type (tag name) of the content wrapper element.\n */\n elementType: {\n type: String,\n default: 'div',\n },\n },\n\n /******************\n * DATA *\n ******************/\n data () {\n return {\n initialized: !!this.show,\n };\n },\n\n /******************\n * COMPUTED *\n ******************/\n computed: {\n /**\n * Set the css property to false when running tests only.\n * Refer to: https://vuejs.org/guide/built-ins/transition.html#javascript-hooks for details about\n * transition `css` property\n * @returns {boolean}\n */\n isCSSEnabled () {\n return process.env.NODE_ENV !== 'test';\n },\n },\n\n /******************\n * WATCH *\n ******************/\n watch: {\n show: function (newValue) {\n if (!newValue || this.initialized) return;\n\n this.initialized = true;\n },\n },\n\n methods: {\n /**\n * @param {HTMLElement} element\n */\n beforeEnter (element) {\n requestAnimationFrame(() => {\n if (!element.style.height) {\n element.style.height = '0px';\n }\n });\n },\n\n /**\n * @param {HTMLElement} element\n */\n enter (element) {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n element.style.height = `${element.scrollHeight}px`;\n });\n });\n },\n\n /**\n * @param {HTMLElement} element\n */\n afterEnter (element) {\n element.style.height = null;\n },\n\n /**\n * @param {HTMLElement} element\n */\n beforeLeave (element) {\n requestAnimationFrame(() => {\n if (!element.style.height) {\n element.style.height = `${element.offsetHeight}px`;\n }\n });\n },\n\n /**\n * @param {HTMLElement} element\n */\n leave (element) {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n element.style.height = '0px';\n });\n });\n },\n\n /**\n * @param {HTMLElement} element\n */\n afterLeave (element) {\n element.style.height = null;\n },\n },\n};\n</script>\n"],"names":["_sfc_main","newValue","element","_openBlock","_createBlock","_Transition","_mergeProps","$props","_ctx","$options","_withCtx","_withDirectives","_resolveDynamicComponent","_normalizeProps","_guardReactiveProps","$data","_renderSlot","_createCommentVNode"],"mappings":";;AA2BA,MAAKA,IAAU;AAAA,EACb,MAAM;AAAA,EAEN,cAAc;AAAA;AAAA;AAAA;AAAA,EAKd,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA;;;;IAMX,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA;;;;IAMX,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA;;;;;EAOb,OAAQ;AACN,WAAO;AAAA,MACL,aAAa,CAAC,CAAC,KAAK;AAAA;EAExB;AAAA;AAAA;AAAA;AAAA,EAKA,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOR,eAAgB;AACd,aAAO,QAAQ,IAAI,aAAa;AAAA,IAClC;AAAA;;;;EAMF,OAAO;AAAA,IACL,MAAM,SAAUC,GAAU;AACxB,MAAI,CAACA,KAAY,KAAK,gBAEtB,KAAK,cAAc;AAAA,IACrB;AAAA;EAGF,SAAS;AAAA;AAAA;AAAA;AAAA,IAIP,YAAaC,GAAS;AACpB,4BAAsB,MAAM;AAC1B,QAAKA,EAAQ,MAAM,WACjBA,EAAQ,MAAM,SAAS;AAAA,MAE3B,CAAC;AAAA,IACH;AAAA;AAAA;AAAA;AAAA,IAKA,MAAOA,GAAS;AACd,4BAAsB,MAAM;AAC1B,8BAAsB,MAAM;AAC1B,UAAAA,EAAQ,MAAM,SAAS,GAAGA,EAAQ,YAAY;AAAA,QAChD,CAAC;AAAA,MACH,CAAC;AAAA,IACH;AAAA;AAAA;AAAA;AAAA,IAKA,WAAYA,GAAS;AACnB,MAAAA,EAAQ,MAAM,SAAS;AAAA,IACzB;AAAA;AAAA;AAAA;AAAA,IAKA,YAAaA,GAAS;AACpB,4BAAsB,MAAM;AAC1B,QAAKA,EAAQ,MAAM,WACjBA,EAAQ,MAAM,SAAS,GAAGA,EAAQ,YAAY;AAAA,MAElD,CAAC;AAAA,IACH;AAAA;AAAA;AAAA;AAAA,IAKA,MAAOA,GAAS;AACd,4BAAsB,MAAM;AAC1B,8BAAsB,MAAM;AAC1B,UAAAA,EAAQ,MAAM,SAAS;AAAA,QACzB,CAAC;AAAA,MACH,CAAC;AAAA,IACH;AAAA;AAAA;AAAA;AAAA,IAKA,WAAYA,GAAS;AACnB,MAAAA,EAAQ,MAAM,SAAS;AAAA,IACzB;AAAA;AAEJ;;AAzJE,SAAAC,EAAA,GAAAC,EAqBaC,GArBbC,EAqBa;AAAA,IApBV,QAAQC,EAAA;AAAA,IACT,sBAAmB;AAAA,IACnB,sBAAmB;AAAA,KACXC,EAAA,QAAM;AAAA,IACb,KAAKC,EAAA;AAAA,IACL,eAAcA,EAAA;AAAA,IACd,SAAOA,EAAA;AAAA,IACP,cAAaA,EAAA;AAAA,IACb,eAAcA,EAAA;AAAA,IACd,SAAOA,EAAA;AAAA,IACP,cAAaA,EAAA;AAAA;IAblB,SAAAC,EAeI,MAOY;AAAA,MAPZC,GAAAR,EAAA,GAAAC,EAOYQ,EANLL,EAAA,WAAW,GAhBtBM,EAAAC,EAkBcN,EAAA,MAAM,CAAA,GAAA;AAAA,QAlBpB,SAAAE,EAqBM,MAA2B;AAAA,UAAfK,EAAA,cAAZC,EAA2BR,uBArBjC,KAAA,EAAA,CAAA,IAAAS,EAAA,IAAA,EAAA;AAAA;QAAA,GAAA;AAAA;YAiBcV,EAAA,IAAI;AAAA;;IAjBlB,GAAA;AAAA;;;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a=require("../../common/utils/index.cjs"),h=require("./collapsible-lazy-show.cjs"),i=require("@dialpad/dialtone-icons/vue3"),e=require("vue"),u=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),p=require("../button/button.cjs"),m=require("../lazy-show/lazy-show.cjs"),_={compatConfig:{MODE:3},name:"DtCollapsible",components:{DtButton:p.default,DtCollapsibleLazyShow:h.default,DtLazyShow:m.default,DtIconChevronDown:i.DtIconChevronDown,DtIconChevronRight:i.DtIconChevronRight},props:{anchorText:{type:String,default:null},open:{type:Boolean,default:null},id:{type:String,default(){return a.getUniqueString()}},elementType:{type:String,default:"div"},contentElementType:{type:String,default:"div"},anchorClass:{type:[String,Array,Object],default:null},contentClass:{type:[String,Array,Object],default:null},maxWidth:{type:String,default:null},maxHeight:{type:String,default:null},ariaLabel:{type:String,default:null},ariaLabelledBy:{type:String,default:null}},emits:["update:open","opened"],data(){return{isOpen:!0}},computed:{labelledBy(){return this.ariaLabelledBy||!this.ariaLabel&&a.getUniqueString("DtCollapsible__anchor")},collapsibleListeners(){return a.extractVueListeners(this.$attrs)}},watch:{open:{handler:function(l){l!==null&&(this.isOpen=l)},immediate:!0}},created(){this.validateProperAnchor()},methods:{onLeaveTransitionComplete(){this.$emit("opened",!1),this.open!==null&&this.$emit("update:open",!1)},onEnterTransitionComplete(){this.$emit("opened",!0,this.$refs.content),this.open!==null&&this.$emit("update:open",!0)},defaultToggleOpen(){this.open===null&&this.toggleOpen()},toggleOpen(){this.isOpen=!this.isOpen},validateProperAnchor(){!this.anchorText&&!a.hasSlotContent(this.$slots.anchor)&&console.error("anchor text and anchor slot content cannot both be falsy")}}},b=["id"],y=["title"];function f(l,C,t,v,o,n){const r=e.resolveComponent("dt-icon-chevron-down"),s=e.resolveComponent("dt-icon-chevron-right"),c=e.resolveComponent("dt-button"),d=e.resolveComponent("dt-collapsible-lazy-show");return e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.elementType),e.mergeProps({ref:"collapsible"},e.toHandlers(n.collapsibleListeners)),{default:e.withCtx(()=>[e.createElementVNode("div",{id:!t.ariaLabelledBy&&n.labelledBy,ref:"anchor",class:e.normalizeClass(t.anchorClass)},[e.renderSlot(l.$slots,"anchor",{attrs:{"aria-controls":t.id,"aria-expanded":o.isOpen.toString(),role:"button"}},()=>[e.createVNode(c,{importance:"clear",kind:"muted","aria-controls":t.id,"aria-expanded":`${o.isOpen}`,style:e.normalizeStyle({width:t.maxWidth}),onClick:n.defaultToggleOpen},{default:e.withCtx(()=>[o.isOpen?(e.openBlock(),e.createBlock(r,{key:0,class:"d-collapsible__icon",size:"300"})):(e.openBlock(),e.createBlock(s,{key:1,class:"d-collapsible__icon",size:"300"})),e.createElementVNode("span",{class:"d-collapsible__anchor-text",title:t.anchorText},e.toDisplayString(t.anchorText),9,y)]),_:1},8,["aria-controls","aria-expanded","style","onClick"])])],10,b),e.createVNode(d,e.mergeProps({id:t.id,ref:"contentWrapper","aria-hidden":`${!o.isOpen}`,"aria-labelledby":n.labelledBy,"aria-label":t.ariaLabel,show:o.isOpen,"element-type":t.contentElementType,class:t.contentClass,style:{"max-height":t.maxHeight,"max-width":t.maxWidth},"data-qa":"dt-collapsible--content",tabindex:"-1",appear:""},e.toHandlers(n.collapsibleListeners),{onAfterLeave:n.onLeaveTransitionComplete,onAfterEnter:n.onEnterTransitionComplete}),{default:e.withCtx(()=>[e.renderSlot(l.$slots,"content")]),_:3},16,["id","aria-hidden","aria-labelledby","aria-label","show","element-type","class","style","onAfterLeave","onAfterEnter"])]),_:3},16)}const g=u._(_,[["render",f]]);exports.default=g;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a=require("../../common/utils/index.cjs"),h=require("./collapsible-lazy-show.cjs"),i=require("@dialpad/dialtone-icons/vue3"),e=require("vue"),u=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),p=require("../lazy-show/lazy-show.cjs"),m=require("../button/button.cjs"),_={compatConfig:{MODE:3},name:"DtCollapsible",components:{DtButton:m.default,DtCollapsibleLazyShow:h.default,DtLazyShow:p.default,DtIconChevronDown:i.DtIconChevronDown,DtIconChevronRight:i.DtIconChevronRight},props:{anchorText:{type:String,default:null},open:{type:Boolean,default:null},id:{type:String,default(){return a.getUniqueString()}},elementType:{type:String,default:"div"},contentElementType:{type:String,default:"div"},anchorClass:{type:[String,Array,Object],default:null},contentClass:{type:[String,Array,Object],default:null},maxWidth:{type:String,default:null},maxHeight:{type:String,default:null},ariaLabel:{type:String,default:null},ariaLabelledBy:{type:String,default:null}},emits:["update:open","opened"],data(){return{isOpen:!0}},computed:{labelledBy(){return this.ariaLabelledBy||!this.ariaLabel&&a.getUniqueString("DtCollapsible__anchor")},collapsibleListeners(){return a.extractVueListeners(this.$attrs)}},watch:{open:{handler:function(l){l!==null&&(this.isOpen=l)},immediate:!0}},created(){this.validateProperAnchor()},methods:{onLeaveTransitionComplete(){this.$emit("opened",!1),this.open!==null&&this.$emit("update:open",!1)},onEnterTransitionComplete(){this.$emit("opened",!0,this.$refs.content),this.open!==null&&this.$emit("update:open",!0)},defaultToggleOpen(){this.open===null&&this.toggleOpen()},toggleOpen(){this.isOpen=!this.isOpen},validateProperAnchor(){!this.anchorText&&!a.hasSlotContent(this.$slots.anchor)&&console.error("anchor text and anchor slot content cannot both be falsy")}}},b=["id"],y=["title"];function f(l,C,t,v,o,n){const r=e.resolveComponent("dt-icon-chevron-down"),s=e.resolveComponent("dt-icon-chevron-right"),c=e.resolveComponent("dt-button"),d=e.resolveComponent("dt-collapsible-lazy-show");return e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.elementType),e.mergeProps({ref:"collapsible"},e.toHandlers(n.collapsibleListeners)),{default:e.withCtx(()=>[e.createElementVNode("div",{id:!t.ariaLabelledBy&&n.labelledBy,ref:"anchor",class:e.normalizeClass(t.anchorClass)},[e.renderSlot(l.$slots,"anchor",{attrs:{"aria-controls":t.id,"aria-expanded":o.isOpen.toString(),role:"button"}},()=>[e.createVNode(c,{importance:"clear",kind:"muted","aria-controls":t.id,"aria-expanded":`${o.isOpen}`,style:e.normalizeStyle({width:t.maxWidth}),onClick:n.defaultToggleOpen},{default:e.withCtx(()=>[o.isOpen?(e.openBlock(),e.createBlock(r,{key:0,class:"d-collapsible__icon",size:"300"})):(e.openBlock(),e.createBlock(s,{key:1,class:"d-collapsible__icon",size:"300"})),e.createElementVNode("span",{class:"d-collapsible__anchor-text",title:t.anchorText},e.toDisplayString(t.anchorText),9,y)]),_:1},8,["aria-controls","aria-expanded","style","onClick"])])],10,b),e.createVNode(d,e.mergeProps({id:t.id,ref:"contentWrapper","aria-hidden":`${!o.isOpen}`,"aria-labelledby":n.labelledBy,"aria-label":t.ariaLabel,show:o.isOpen,"element-type":t.contentElementType,class:t.contentClass,style:{"max-height":t.maxHeight,"max-width":t.maxWidth},"data-qa":"dt-collapsible--content",tabindex:"-1",appear:""},e.toHandlers(n.collapsibleListeners),{onAfterLeave:n.onLeaveTransitionComplete,onAfterEnter:n.onEnterTransitionComplete}),{default:e.withCtx(()=>[e.renderSlot(l.$slots,"content")]),_:3},16,["id","aria-hidden","aria-labelledby","aria-label","show","element-type","class","style","onAfterLeave","onAfterEnter"])]),_:3},16)}const g=u._(_,[["render",f]]);exports.default=g;
2
2
  //# sourceMappingURL=collapsible.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"collapsible.cjs","sources":["../../../components/collapsible/collapsible.vue"],"sourcesContent":["<template>\n <component\n :is=\"elementType\"\n ref=\"collapsible\"\n v-on=\"collapsibleListeners\"\n >\n <!-- Element for capturing keypress events -->\n <div\n :id=\"!ariaLabelledBy && labelledBy\"\n ref=\"anchor\"\n :class=\"anchorClass\"\n >\n <!-- @slot Slot for the anchor element that toggles the collapsible content -->\n <slot\n name=\"anchor\"\n :attrs=\"{\n 'aria-controls': id,\n 'aria-expanded': isOpen.toString(),\n 'role': 'button',\n }\"\n >\n <dt-button\n importance=\"clear\"\n kind=\"muted\"\n :aria-controls=\"id\"\n :aria-expanded=\"`${isOpen}`\"\n :style=\"{\n 'width': maxWidth,\n }\"\n @click=\"defaultToggleOpen\"\n >\n <dt-icon-chevron-down\n v-if=\"isOpen\"\n class=\"d-collapsible__icon\"\n size=\"300\"\n />\n <dt-icon-chevron-right\n v-else\n class=\"d-collapsible__icon\"\n size=\"300\"\n />\n <span\n class=\"d-collapsible__anchor-text\"\n :title=\"anchorText\"\n >\n {{ anchorText }}\n </span>\n </dt-button>\n </slot>\n </div>\n <dt-collapsible-lazy-show\n :id=\"id\"\n ref=\"contentWrapper\"\n :aria-hidden=\"`${!isOpen}`\"\n :aria-labelledby=\"labelledBy\"\n :aria-label=\"ariaLabel\"\n :show=\"isOpen\"\n :element-type=\"contentElementType\"\n :class=\"contentClass\"\n :style=\"{\n 'max-height': maxHeight,\n 'max-width': maxWidth,\n }\"\n data-qa=\"dt-collapsible--content\"\n tabindex=\"-1\"\n appear\n v-on=\"collapsibleListeners\"\n @after-leave=\"onLeaveTransitionComplete\"\n @after-enter=\"onEnterTransitionComplete\"\n >\n <!-- @slot Slot for the collapsible element that is expanded by the anchor -->\n <slot\n name=\"content\"\n />\n </dt-collapsible-lazy-show>\n </component>\n</template>\n\n<script>\nimport { extractVueListeners, getUniqueString, hasSlotContent } from '@/common/utils';\nimport DtCollapsibleLazyShow from './collapsible_lazy_show.vue';\nimport { DtButton } from '@/components/button';\nimport { DtLazyShow } from '@/components/lazy_show';\nimport { DtIconChevronDown, DtIconChevronRight } from '@dialpad/dialtone-icons/vue3';\n\n/**\n * A collapsible is a component consisting of an interactive anchor that toggled the expandable/collapsible element.\n * @see https://dialtone.dialpad.com/components/collapsible.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCollapsible',\n\n components: {\n DtButton,\n DtCollapsibleLazyShow,\n DtLazyShow,\n DtIconChevronDown,\n DtIconChevronRight,\n },\n\n props: {\n /**\n * Text that is displayed on the anchor if nothing is passed in the slot.\n * Ignored if the anchor slot is used.\n */\n anchorText: {\n type: String,\n default: null,\n },\n\n /**\n * Controls whether the collapsible is shown. Leaving this null will have the collapsible start\n * expanded and trigger on click by default. If you set this value, the default trigger\n * behavior will be disabled, and you can control it as you need.\n * Supports .sync modifier\n * @values null, true, false\n */\n open: {\n type: Boolean,\n default: null,\n },\n\n /**\n * The id of the content wrapper.\n */\n id: {\n type: String,\n default () { return getUniqueString(); },\n },\n\n /**\n * HTML element type (tag name) of the root element of the component.\n */\n elementType: {\n type: String,\n default: 'div',\n },\n\n /**\n * HTML element type (tag name) of the content wrapper element.\n */\n contentElementType: {\n type: String,\n default: 'div',\n },\n\n /**\n * Additional class name for the anchor wrapper element.\n */\n anchorClass: {\n type: [String, Array, Object],\n default: null,\n },\n\n /**\n * Additional class name for the content wrapper element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: null,\n },\n\n /**\n * The maximum width of the anchor and collapsible element.\n * Possible units rem|px|%|em\n */\n maxWidth: {\n type: String,\n default: null,\n },\n\n /**\n * The maximum height of the collapsible element.\n * Possible units rem|px|%|em\n */\n maxHeight: {\n type: String,\n default: null,\n },\n\n /**\n * Label on the collapsible content. Should provide this or ariaLabelledBy but not both.\n */\n ariaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * Id of the element that labels the collapsible content. Defaults to the anchor element.\n * Should provide this or ariaLabel but not both.\n */\n ariaLabelledBy: {\n type: String,\n default: null,\n },\n },\n\n emits: [\n /**\n * Event fired to sync the open prop with the parent component\n * @event update:open\n */\n 'update:open',\n\n /**\n * Event fired when the content is shown or hidden\n *\n * @event opened\n * @type {Boolean}\n */\n 'opened',\n ],\n\n data () {\n return {\n isOpen: true,\n };\n },\n\n computed: {\n labelledBy () {\n // aria-labelledby should be set only if aria-labelledby is passed as a prop, or if\n // there is no aria-label and the labelledby should point to the anchor\n return this.ariaLabelledBy || (!this.ariaLabel && getUniqueString('DtCollapsible__anchor'));\n },\n\n collapsibleListeners () {\n return extractVueListeners(this.$attrs);\n },\n },\n\n watch: {\n open: {\n handler: function (open) {\n if (open !== null) {\n this.isOpen = open;\n }\n },\n\n immediate: true,\n },\n },\n\n created () {\n this.validateProperAnchor();\n },\n\n methods: {\n onLeaveTransitionComplete () {\n this.$emit('opened', false);\n if (this.open !== null) {\n this.$emit('update:open', false);\n }\n },\n\n onEnterTransitionComplete () {\n this.$emit('opened', true, this.$refs.content);\n if (this.open !== null) {\n this.$emit('update:open', true);\n }\n },\n\n defaultToggleOpen () {\n if (this.open === null) {\n this.toggleOpen();\n }\n },\n\n toggleOpen () {\n this.isOpen = !this.isOpen;\n },\n\n validateProperAnchor () {\n if (!this.anchorText && !hasSlotContent(this.$slots.anchor)) {\n console.error('anchor text and anchor slot content cannot both be falsy');\n }\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtButton","DtCollapsibleLazyShow","DtLazyShow","DtIconChevronDown","DtIconChevronRight","getUniqueString","extractVueListeners","open","hasSlotContent","_hoisted_1","_hoisted_2","_openBlock","_createBlock","_resolveDynamicComponent","$props","_mergeProps","_toHandlers","$options","_withCtx","_createElementVNode","_normalizeClass","_renderSlot","_ctx","$data","_createVNode","_component_dt_button","_normalizeStyle","_component_dt_icon_chevron_down","_component_dt_icon_chevron_right","_toDisplayString","_component_dt_collapsible_lazy_show"],"mappings":"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"}
1
+ {"version":3,"file":"collapsible.cjs","sources":["../../../components/collapsible/collapsible.vue"],"sourcesContent":["<template>\n <component\n :is=\"elementType\"\n ref=\"collapsible\"\n v-on=\"collapsibleListeners\"\n >\n <!-- Element for capturing keypress events -->\n <div\n :id=\"!ariaLabelledBy && labelledBy\"\n ref=\"anchor\"\n :class=\"anchorClass\"\n >\n <!-- @slot Slot for the anchor element that toggles the collapsible content -->\n <slot\n name=\"anchor\"\n :attrs=\"{\n 'aria-controls': id,\n 'aria-expanded': isOpen.toString(),\n 'role': 'button',\n }\"\n >\n <dt-button\n importance=\"clear\"\n kind=\"muted\"\n :aria-controls=\"id\"\n :aria-expanded=\"`${isOpen}`\"\n :style=\"{\n 'width': maxWidth,\n }\"\n @click=\"defaultToggleOpen\"\n >\n <dt-icon-chevron-down\n v-if=\"isOpen\"\n class=\"d-collapsible__icon\"\n size=\"300\"\n />\n <dt-icon-chevron-right\n v-else\n class=\"d-collapsible__icon\"\n size=\"300\"\n />\n <span\n class=\"d-collapsible__anchor-text\"\n :title=\"anchorText\"\n >\n {{ anchorText }}\n </span>\n </dt-button>\n </slot>\n </div>\n <dt-collapsible-lazy-show\n :id=\"id\"\n ref=\"contentWrapper\"\n :aria-hidden=\"`${!isOpen}`\"\n :aria-labelledby=\"labelledBy\"\n :aria-label=\"ariaLabel\"\n :show=\"isOpen\"\n :element-type=\"contentElementType\"\n :class=\"contentClass\"\n :style=\"{\n 'max-height': maxHeight,\n 'max-width': maxWidth,\n }\"\n data-qa=\"dt-collapsible--content\"\n tabindex=\"-1\"\n appear\n v-on=\"collapsibleListeners\"\n @after-leave=\"onLeaveTransitionComplete\"\n @after-enter=\"onEnterTransitionComplete\"\n >\n <!-- @slot Slot for the collapsible element that is expanded by the anchor -->\n <slot\n name=\"content\"\n />\n </dt-collapsible-lazy-show>\n </component>\n</template>\n\n<script>\nimport { extractVueListeners, getUniqueString, hasSlotContent } from '@/common/utils';\nimport DtCollapsibleLazyShow from './collapsible_lazy_show.vue';\nimport { DtButton } from '@/components/button';\nimport { DtLazyShow } from '@/components/lazy_show';\nimport { DtIconChevronDown, DtIconChevronRight } from '@dialpad/dialtone-icons/vue3';\n\n/**\n * A collapsible is a component consisting of an interactive anchor that toggled the expandable/collapsible element.\n * @see https://dialtone.dialpad.com/components/collapsible.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCollapsible',\n\n components: {\n DtButton,\n DtCollapsibleLazyShow,\n DtLazyShow,\n DtIconChevronDown,\n DtIconChevronRight,\n },\n\n props: {\n /**\n * Text that is displayed on the anchor if nothing is passed in the slot.\n * Ignored if the anchor slot is used.\n */\n anchorText: {\n type: String,\n default: null,\n },\n\n /**\n * Controls whether the collapsible is shown. Leaving this null will have the collapsible start\n * expanded and trigger on click by default. If you set this value, the default trigger\n * behavior will be disabled, and you can control it as you need.\n * Supports .sync modifier\n * @values null, true, false\n */\n open: {\n type: Boolean,\n default: null,\n },\n\n /**\n * The id of the content wrapper.\n */\n id: {\n type: String,\n default () { return getUniqueString(); },\n },\n\n /**\n * HTML element type (tag name) of the root element of the component.\n */\n elementType: {\n type: String,\n default: 'div',\n },\n\n /**\n * HTML element type (tag name) of the content wrapper element.\n */\n contentElementType: {\n type: String,\n default: 'div',\n },\n\n /**\n * Additional class name for the anchor wrapper element.\n */\n anchorClass: {\n type: [String, Array, Object],\n default: null,\n },\n\n /**\n * Additional class name for the content wrapper element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: null,\n },\n\n /**\n * The maximum width of the anchor and collapsible element.\n * Possible units rem|px|%|em\n */\n maxWidth: {\n type: String,\n default: null,\n },\n\n /**\n * The maximum height of the collapsible element.\n * Possible units rem|px|%|em\n */\n maxHeight: {\n type: String,\n default: null,\n },\n\n /**\n * Label on the collapsible content. Should provide this or ariaLabelledBy but not both.\n */\n ariaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * Id of the element that labels the collapsible content. Defaults to the anchor element.\n * Should provide this or ariaLabel but not both.\n */\n ariaLabelledBy: {\n type: String,\n default: null,\n },\n },\n\n emits: [\n /**\n * Event fired to sync the open prop with the parent component\n * @event update:open\n */\n 'update:open',\n\n /**\n * Event fired when the content is shown or hidden\n *\n * @event opened\n * @type {Boolean}\n */\n 'opened',\n ],\n\n data () {\n return {\n isOpen: true,\n };\n },\n\n computed: {\n labelledBy () {\n // aria-labelledby should be set only if aria-labelledby is passed as a prop, or if\n // there is no aria-label and the labelledby should point to the anchor\n return this.ariaLabelledBy || (!this.ariaLabel && getUniqueString('DtCollapsible__anchor'));\n },\n\n collapsibleListeners () {\n return extractVueListeners(this.$attrs);\n },\n },\n\n watch: {\n open: {\n handler: function (open) {\n if (open !== null) {\n this.isOpen = open;\n }\n },\n\n immediate: true,\n },\n },\n\n created () {\n this.validateProperAnchor();\n },\n\n methods: {\n onLeaveTransitionComplete () {\n this.$emit('opened', false);\n if (this.open !== null) {\n this.$emit('update:open', false);\n }\n },\n\n onEnterTransitionComplete () {\n this.$emit('opened', true, this.$refs.content);\n if (this.open !== null) {\n this.$emit('update:open', true);\n }\n },\n\n defaultToggleOpen () {\n if (this.open === null) {\n this.toggleOpen();\n }\n },\n\n toggleOpen () {\n this.isOpen = !this.isOpen;\n },\n\n validateProperAnchor () {\n if (!this.anchorText && !hasSlotContent(this.$slots.anchor)) {\n console.error('anchor text and anchor slot content cannot both be falsy');\n }\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtButton","DtCollapsibleLazyShow","DtLazyShow","DtIconChevronDown","DtIconChevronRight","getUniqueString","extractVueListeners","open","hasSlotContent","_hoisted_1","_hoisted_2","_openBlock","_createBlock","_resolveDynamicComponent","$props","_mergeProps","_toHandlers","$options","_withCtx","_createElementVNode","_normalizeClass","_renderSlot","_ctx","$data","_createVNode","_component_dt_button","_normalizeStyle","_component_dt_icon_chevron_down","_component_dt_icon_chevron_right","_toDisplayString","_component_dt_collapsible_lazy_show"],"mappings":"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"}
@@ -1,19 +1,19 @@
1
- import { getUniqueString as s, extractVueListeners as b, hasSlotContent as g } from "../../common/utils/index.js";
1
+ import { hasSlotContent as b, extractVueListeners as g, getUniqueString as s } from "../../common/utils/index.js";
2
2
  import C from "./collapsible-lazy-show.js";
3
- import { DtIconChevronDown as x, DtIconChevronRight as S } from "@dialpad/dialtone-icons/vue3";
4
- import { resolveComponent as a, openBlock as o, createBlock as i, resolveDynamicComponent as v, mergeProps as c, toHandlers as d, withCtx as r, createElementVNode as h, normalizeClass as L, renderSlot as p, createVNode as m, normalizeStyle as O, toDisplayString as T } from "vue";
3
+ import { DtIconChevronRight as x, DtIconChevronDown as S } from "@dialpad/dialtone-icons/vue3";
4
+ import { resolveComponent as a, createBlock as o, openBlock as i, resolveDynamicComponent as v, mergeProps as c, toHandlers as d, withCtx as r, createElementVNode as h, createVNode as p, normalizeClass as L, renderSlot as m, normalizeStyle as O, toDisplayString as T } from "vue";
5
5
  import { _ as w } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
6
- import D from "../button/button.js";
7
- import B from "../lazy-show/lazy-show.js";
6
+ import D from "../lazy-show/lazy-show.js";
7
+ import B from "../button/button.js";
8
8
  const z = {
9
9
  compatConfig: { MODE: 3 },
10
10
  name: "DtCollapsible",
11
11
  components: {
12
- DtButton: D,
12
+ DtButton: B,
13
13
  DtCollapsibleLazyShow: C,
14
- DtLazyShow: B,
15
- DtIconChevronDown: x,
16
- DtIconChevronRight: S
14
+ DtLazyShow: D,
15
+ DtIconChevronDown: S,
16
+ DtIconChevronRight: x
17
17
  },
18
18
  props: {
19
19
  /**
@@ -128,7 +128,7 @@ const z = {
128
128
  return this.ariaLabelledBy || !this.ariaLabel && s("DtCollapsible__anchor");
129
129
  },
130
130
  collapsibleListeners() {
131
- return b(this.$attrs);
131
+ return g(this.$attrs);
132
132
  }
133
133
  },
134
134
  watch: {
@@ -156,27 +156,27 @@ const z = {
156
156
  this.isOpen = !this.isOpen;
157
157
  },
158
158
  validateProperAnchor() {
159
- !this.anchorText && !g(this.$slots.anchor) && console.error("anchor text and anchor slot content cannot both be falsy");
159
+ !this.anchorText && !b(this.$slots.anchor) && console.error("anchor text and anchor slot content cannot both be falsy");
160
160
  }
161
161
  }
162
162
  }, A = ["id"], E = ["title"];
163
163
  function k(n, W, e, H, l, t) {
164
164
  const u = a("dt-icon-chevron-down"), f = a("dt-icon-chevron-right"), y = a("dt-button"), _ = a("dt-collapsible-lazy-show");
165
- return o(), i(v(e.elementType), c({ ref: "collapsible" }, d(t.collapsibleListeners)), {
165
+ return i(), o(v(e.elementType), c({ ref: "collapsible" }, d(t.collapsibleListeners)), {
166
166
  default: r(() => [
167
167
  h("div", {
168
168
  id: !e.ariaLabelledBy && t.labelledBy,
169
169
  ref: "anchor",
170
170
  class: L(e.anchorClass)
171
171
  }, [
172
- p(n.$slots, "anchor", {
172
+ m(n.$slots, "anchor", {
173
173
  attrs: {
174
174
  "aria-controls": e.id,
175
175
  "aria-expanded": l.isOpen.toString(),
176
176
  role: "button"
177
177
  }
178
178
  }, () => [
179
- m(y, {
179
+ p(y, {
180
180
  importance: "clear",
181
181
  kind: "muted",
182
182
  "aria-controls": e.id,
@@ -187,11 +187,11 @@ function k(n, W, e, H, l, t) {
187
187
  onClick: t.defaultToggleOpen
188
188
  }, {
189
189
  default: r(() => [
190
- l.isOpen ? (o(), i(u, {
190
+ l.isOpen ? (i(), o(u, {
191
191
  key: 0,
192
192
  class: "d-collapsible__icon",
193
193
  size: "300"
194
- })) : (o(), i(f, {
194
+ })) : (i(), o(f, {
195
195
  key: 1,
196
196
  class: "d-collapsible__icon",
197
197
  size: "300"
@@ -205,7 +205,7 @@ function k(n, W, e, H, l, t) {
205
205
  }, 8, ["aria-controls", "aria-expanded", "style", "onClick"])
206
206
  ])
207
207
  ], 10, A),
208
- m(_, c({
208
+ p(_, c({
209
209
  id: e.id,
210
210
  ref: "contentWrapper",
211
211
  "aria-hidden": `${!l.isOpen}`,
@@ -226,7 +226,7 @@ function k(n, W, e, H, l, t) {
226
226
  onAfterEnter: t.onEnterTransitionComplete
227
227
  }), {
228
228
  default: r(() => [
229
- p(n.$slots, "content")
229
+ m(n.$slots, "content")
230
230
  ]),
231
231
  _: 3
232
232
  }, 16, ["id", "aria-hidden", "aria-labelledby", "aria-label", "show", "element-type", "class", "style", "onAfterLeave", "onAfterEnter"])
@@ -1 +1 @@
1
- {"version":3,"file":"collapsible.js","sources":["../../../components/collapsible/collapsible.vue"],"sourcesContent":["<template>\n <component\n :is=\"elementType\"\n ref=\"collapsible\"\n v-on=\"collapsibleListeners\"\n >\n <!-- Element for capturing keypress events -->\n <div\n :id=\"!ariaLabelledBy && labelledBy\"\n ref=\"anchor\"\n :class=\"anchorClass\"\n >\n <!-- @slot Slot for the anchor element that toggles the collapsible content -->\n <slot\n name=\"anchor\"\n :attrs=\"{\n 'aria-controls': id,\n 'aria-expanded': isOpen.toString(),\n 'role': 'button',\n }\"\n >\n <dt-button\n importance=\"clear\"\n kind=\"muted\"\n :aria-controls=\"id\"\n :aria-expanded=\"`${isOpen}`\"\n :style=\"{\n 'width': maxWidth,\n }\"\n @click=\"defaultToggleOpen\"\n >\n <dt-icon-chevron-down\n v-if=\"isOpen\"\n class=\"d-collapsible__icon\"\n size=\"300\"\n />\n <dt-icon-chevron-right\n v-else\n class=\"d-collapsible__icon\"\n size=\"300\"\n />\n <span\n class=\"d-collapsible__anchor-text\"\n :title=\"anchorText\"\n >\n {{ anchorText }}\n </span>\n </dt-button>\n </slot>\n </div>\n <dt-collapsible-lazy-show\n :id=\"id\"\n ref=\"contentWrapper\"\n :aria-hidden=\"`${!isOpen}`\"\n :aria-labelledby=\"labelledBy\"\n :aria-label=\"ariaLabel\"\n :show=\"isOpen\"\n :element-type=\"contentElementType\"\n :class=\"contentClass\"\n :style=\"{\n 'max-height': maxHeight,\n 'max-width': maxWidth,\n }\"\n data-qa=\"dt-collapsible--content\"\n tabindex=\"-1\"\n appear\n v-on=\"collapsibleListeners\"\n @after-leave=\"onLeaveTransitionComplete\"\n @after-enter=\"onEnterTransitionComplete\"\n >\n <!-- @slot Slot for the collapsible element that is expanded by the anchor -->\n <slot\n name=\"content\"\n />\n </dt-collapsible-lazy-show>\n </component>\n</template>\n\n<script>\nimport { extractVueListeners, getUniqueString, hasSlotContent } from '@/common/utils';\nimport DtCollapsibleLazyShow from './collapsible_lazy_show.vue';\nimport { DtButton } from '@/components/button';\nimport { DtLazyShow } from '@/components/lazy_show';\nimport { DtIconChevronDown, DtIconChevronRight } from '@dialpad/dialtone-icons/vue3';\n\n/**\n * A collapsible is a component consisting of an interactive anchor that toggled the expandable/collapsible element.\n * @see https://dialtone.dialpad.com/components/collapsible.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCollapsible',\n\n components: {\n DtButton,\n DtCollapsibleLazyShow,\n DtLazyShow,\n DtIconChevronDown,\n DtIconChevronRight,\n },\n\n props: {\n /**\n * Text that is displayed on the anchor if nothing is passed in the slot.\n * Ignored if the anchor slot is used.\n */\n anchorText: {\n type: String,\n default: null,\n },\n\n /**\n * Controls whether the collapsible is shown. Leaving this null will have the collapsible start\n * expanded and trigger on click by default. If you set this value, the default trigger\n * behavior will be disabled, and you can control it as you need.\n * Supports .sync modifier\n * @values null, true, false\n */\n open: {\n type: Boolean,\n default: null,\n },\n\n /**\n * The id of the content wrapper.\n */\n id: {\n type: String,\n default () { return getUniqueString(); },\n },\n\n /**\n * HTML element type (tag name) of the root element of the component.\n */\n elementType: {\n type: String,\n default: 'div',\n },\n\n /**\n * HTML element type (tag name) of the content wrapper element.\n */\n contentElementType: {\n type: String,\n default: 'div',\n },\n\n /**\n * Additional class name for the anchor wrapper element.\n */\n anchorClass: {\n type: [String, Array, Object],\n default: null,\n },\n\n /**\n * Additional class name for the content wrapper element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: null,\n },\n\n /**\n * The maximum width of the anchor and collapsible element.\n * Possible units rem|px|%|em\n */\n maxWidth: {\n type: String,\n default: null,\n },\n\n /**\n * The maximum height of the collapsible element.\n * Possible units rem|px|%|em\n */\n maxHeight: {\n type: String,\n default: null,\n },\n\n /**\n * Label on the collapsible content. Should provide this or ariaLabelledBy but not both.\n */\n ariaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * Id of the element that labels the collapsible content. Defaults to the anchor element.\n * Should provide this or ariaLabel but not both.\n */\n ariaLabelledBy: {\n type: String,\n default: null,\n },\n },\n\n emits: [\n /**\n * Event fired to sync the open prop with the parent component\n * @event update:open\n */\n 'update:open',\n\n /**\n * Event fired when the content is shown or hidden\n *\n * @event opened\n * @type {Boolean}\n */\n 'opened',\n ],\n\n data () {\n return {\n isOpen: true,\n };\n },\n\n computed: {\n labelledBy () {\n // aria-labelledby should be set only if aria-labelledby is passed as a prop, or if\n // there is no aria-label and the labelledby should point to the anchor\n return this.ariaLabelledBy || (!this.ariaLabel && getUniqueString('DtCollapsible__anchor'));\n },\n\n collapsibleListeners () {\n return extractVueListeners(this.$attrs);\n },\n },\n\n watch: {\n open: {\n handler: function (open) {\n if (open !== null) {\n this.isOpen = open;\n }\n },\n\n immediate: true,\n },\n },\n\n created () {\n this.validateProperAnchor();\n },\n\n methods: {\n onLeaveTransitionComplete () {\n this.$emit('opened', false);\n if (this.open !== null) {\n this.$emit('update:open', false);\n }\n },\n\n onEnterTransitionComplete () {\n this.$emit('opened', true, this.$refs.content);\n if (this.open !== null) {\n this.$emit('update:open', true);\n }\n },\n\n defaultToggleOpen () {\n if (this.open === null) {\n this.toggleOpen();\n }\n },\n\n toggleOpen () {\n this.isOpen = !this.isOpen;\n },\n\n validateProperAnchor () {\n if (!this.anchorText && !hasSlotContent(this.$slots.anchor)) {\n console.error('anchor text and anchor slot content cannot both be falsy');\n }\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtButton","DtCollapsibleLazyShow","DtLazyShow","DtIconChevronDown","DtIconChevronRight","getUniqueString","extractVueListeners","open","hasSlotContent","_hoisted_1","_hoisted_2","_openBlock","_createBlock","_resolveDynamicComponent","$props","_mergeProps","_toHandlers","$options","_withCtx","_createElementVNode","_normalizeClass","_renderSlot","_ctx","$data","_createVNode","_component_dt_button","_normalizeStyle","_component_dt_icon_chevron_down","_component_dt_icon_chevron_right","_toDisplayString","_component_dt_collapsible_lazy_show"],"mappings":"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"}
1
+ {"version":3,"file":"collapsible.js","sources":["../../../components/collapsible/collapsible.vue"],"sourcesContent":["<template>\n <component\n :is=\"elementType\"\n ref=\"collapsible\"\n v-on=\"collapsibleListeners\"\n >\n <!-- Element for capturing keypress events -->\n <div\n :id=\"!ariaLabelledBy && labelledBy\"\n ref=\"anchor\"\n :class=\"anchorClass\"\n >\n <!-- @slot Slot for the anchor element that toggles the collapsible content -->\n <slot\n name=\"anchor\"\n :attrs=\"{\n 'aria-controls': id,\n 'aria-expanded': isOpen.toString(),\n 'role': 'button',\n }\"\n >\n <dt-button\n importance=\"clear\"\n kind=\"muted\"\n :aria-controls=\"id\"\n :aria-expanded=\"`${isOpen}`\"\n :style=\"{\n 'width': maxWidth,\n }\"\n @click=\"defaultToggleOpen\"\n >\n <dt-icon-chevron-down\n v-if=\"isOpen\"\n class=\"d-collapsible__icon\"\n size=\"300\"\n />\n <dt-icon-chevron-right\n v-else\n class=\"d-collapsible__icon\"\n size=\"300\"\n />\n <span\n class=\"d-collapsible__anchor-text\"\n :title=\"anchorText\"\n >\n {{ anchorText }}\n </span>\n </dt-button>\n </slot>\n </div>\n <dt-collapsible-lazy-show\n :id=\"id\"\n ref=\"contentWrapper\"\n :aria-hidden=\"`${!isOpen}`\"\n :aria-labelledby=\"labelledBy\"\n :aria-label=\"ariaLabel\"\n :show=\"isOpen\"\n :element-type=\"contentElementType\"\n :class=\"contentClass\"\n :style=\"{\n 'max-height': maxHeight,\n 'max-width': maxWidth,\n }\"\n data-qa=\"dt-collapsible--content\"\n tabindex=\"-1\"\n appear\n v-on=\"collapsibleListeners\"\n @after-leave=\"onLeaveTransitionComplete\"\n @after-enter=\"onEnterTransitionComplete\"\n >\n <!-- @slot Slot for the collapsible element that is expanded by the anchor -->\n <slot\n name=\"content\"\n />\n </dt-collapsible-lazy-show>\n </component>\n</template>\n\n<script>\nimport { extractVueListeners, getUniqueString, hasSlotContent } from '@/common/utils';\nimport DtCollapsibleLazyShow from './collapsible_lazy_show.vue';\nimport { DtButton } from '@/components/button';\nimport { DtLazyShow } from '@/components/lazy_show';\nimport { DtIconChevronDown, DtIconChevronRight } from '@dialpad/dialtone-icons/vue3';\n\n/**\n * A collapsible is a component consisting of an interactive anchor that toggled the expandable/collapsible element.\n * @see https://dialtone.dialpad.com/components/collapsible.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCollapsible',\n\n components: {\n DtButton,\n DtCollapsibleLazyShow,\n DtLazyShow,\n DtIconChevronDown,\n DtIconChevronRight,\n },\n\n props: {\n /**\n * Text that is displayed on the anchor if nothing is passed in the slot.\n * Ignored if the anchor slot is used.\n */\n anchorText: {\n type: String,\n default: null,\n },\n\n /**\n * Controls whether the collapsible is shown. Leaving this null will have the collapsible start\n * expanded and trigger on click by default. If you set this value, the default trigger\n * behavior will be disabled, and you can control it as you need.\n * Supports .sync modifier\n * @values null, true, false\n */\n open: {\n type: Boolean,\n default: null,\n },\n\n /**\n * The id of the content wrapper.\n */\n id: {\n type: String,\n default () { return getUniqueString(); },\n },\n\n /**\n * HTML element type (tag name) of the root element of the component.\n */\n elementType: {\n type: String,\n default: 'div',\n },\n\n /**\n * HTML element type (tag name) of the content wrapper element.\n */\n contentElementType: {\n type: String,\n default: 'div',\n },\n\n /**\n * Additional class name for the anchor wrapper element.\n */\n anchorClass: {\n type: [String, Array, Object],\n default: null,\n },\n\n /**\n * Additional class name for the content wrapper element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: null,\n },\n\n /**\n * The maximum width of the anchor and collapsible element.\n * Possible units rem|px|%|em\n */\n maxWidth: {\n type: String,\n default: null,\n },\n\n /**\n * The maximum height of the collapsible element.\n * Possible units rem|px|%|em\n */\n maxHeight: {\n type: String,\n default: null,\n },\n\n /**\n * Label on the collapsible content. Should provide this or ariaLabelledBy but not both.\n */\n ariaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * Id of the element that labels the collapsible content. Defaults to the anchor element.\n * Should provide this or ariaLabel but not both.\n */\n ariaLabelledBy: {\n type: String,\n default: null,\n },\n },\n\n emits: [\n /**\n * Event fired to sync the open prop with the parent component\n * @event update:open\n */\n 'update:open',\n\n /**\n * Event fired when the content is shown or hidden\n *\n * @event opened\n * @type {Boolean}\n */\n 'opened',\n ],\n\n data () {\n return {\n isOpen: true,\n };\n },\n\n computed: {\n labelledBy () {\n // aria-labelledby should be set only if aria-labelledby is passed as a prop, or if\n // there is no aria-label and the labelledby should point to the anchor\n return this.ariaLabelledBy || (!this.ariaLabel && getUniqueString('DtCollapsible__anchor'));\n },\n\n collapsibleListeners () {\n return extractVueListeners(this.$attrs);\n },\n },\n\n watch: {\n open: {\n handler: function (open) {\n if (open !== null) {\n this.isOpen = open;\n }\n },\n\n immediate: true,\n },\n },\n\n created () {\n this.validateProperAnchor();\n },\n\n methods: {\n onLeaveTransitionComplete () {\n this.$emit('opened', false);\n if (this.open !== null) {\n this.$emit('update:open', false);\n }\n },\n\n onEnterTransitionComplete () {\n this.$emit('opened', true, this.$refs.content);\n if (this.open !== null) {\n this.$emit('update:open', true);\n }\n },\n\n defaultToggleOpen () {\n if (this.open === null) {\n this.toggleOpen();\n }\n },\n\n toggleOpen () {\n this.isOpen = !this.isOpen;\n },\n\n validateProperAnchor () {\n if (!this.anchorText && !hasSlotContent(this.$slots.anchor)) {\n console.error('anchor text and anchor slot content cannot both be falsy');\n }\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtButton","DtCollapsibleLazyShow","DtLazyShow","DtIconChevronDown","DtIconChevronRight","getUniqueString","extractVueListeners","open","hasSlotContent","_hoisted_1","_hoisted_2","_openBlock","_createBlock","_resolveDynamicComponent","$props","_mergeProps","_toHandlers","$options","_withCtx","_createElementVNode","_normalizeClass","_renderSlot","_ctx","$data","_createVNode","_component_dt_button","_normalizeStyle","_component_dt_icon_chevron_down","_component_dt_icon_chevron_right","_toDisplayString","_component_dt_collapsible_lazy_show"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"combobox-constants.cjs","sources":["../../../components/combobox/combobox_constants.js"],"sourcesContent":["export const COMBOBOX_LABEL_SIZES = {\n EXTRA_SMALL: 'xs',\n SMALL: 'sm',\n DEFAULT: 'md',\n LARGE: 'lg',\n EXTRA_LARGE: 'xl',\n};\n\nexport default {\n COMBOBOX_LABEL_SIZES,\n};\n"],"names":["COMBOBOX_LABEL_SIZES","combobox_constants"],"mappings":"4GAAY,MAACA,EAAuB,CAClC,YAAa,KACb,MAAO,KACP,QAAS,KACT,MAAO,KACP,YAAa,IACf,EAEeC,EAAA,CACb,qBAAAD,CACF"}
1
+ {"version":3,"file":"combobox-constants.cjs","sources":["../../../components/combobox/combobox_constants.js"],"sourcesContent":["export const COMBOBOX_LABEL_SIZES = {\n EXTRA_SMALL: 'xs',\n SMALL: 'sm',\n DEFAULT: 'md',\n LARGE: 'lg',\n EXTRA_LARGE: 'xl',\n};\n\nexport default {\n COMBOBOX_LABEL_SIZES,\n};\n"],"names":["COMBOBOX_LABEL_SIZES","combobox_constants"],"mappings":"4GAAY,MAACA,EAAuB,CAClC,YAAa,KACb,MAAO,KACP,QAAS,KACT,MAAO,KACP,YAAa,IACf,EAEAC,EAAe,CACb,qBAAAD,CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"combobox-constants.js","sources":["../../../components/combobox/combobox_constants.js"],"sourcesContent":["export const COMBOBOX_LABEL_SIZES = {\n EXTRA_SMALL: 'xs',\n SMALL: 'sm',\n DEFAULT: 'md',\n LARGE: 'lg',\n EXTRA_LARGE: 'xl',\n};\n\nexport default {\n COMBOBOX_LABEL_SIZES,\n};\n"],"names":["COMBOBOX_LABEL_SIZES","combobox_constants"],"mappings":"AAAY,MAACA,IAAuB;AAAA,EAClC,aAAa;AAAA,EACb,OAAO;AAAA,EACP,SAAS;AAAA,EACT,OAAO;AAAA,EACP,aAAa;AACf,GAEeC,IAAA;AAAA,EACb,sBAAAD;AACF;"}
1
+ {"version":3,"file":"combobox-constants.js","sources":["../../../components/combobox/combobox_constants.js"],"sourcesContent":["export const COMBOBOX_LABEL_SIZES = {\n EXTRA_SMALL: 'xs',\n SMALL: 'sm',\n DEFAULT: 'md',\n LARGE: 'lg',\n EXTRA_LARGE: 'xl',\n};\n\nexport default {\n COMBOBOX_LABEL_SIZES,\n};\n"],"names":["COMBOBOX_LABEL_SIZES","combobox_constants"],"mappings":"AAAY,MAACA,IAAuB;AAAA,EAClC,aAAa;AAAA,EACb,OAAO;AAAA,EACP,SAAS;AAAA,EACT,OAAO;AAAA,EACP,aAAa;AACf,GAEAC,IAAe;AAAA,EACb,sBAAAD;AACF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"combobox-empty-list.cjs","sources":["../../../components/combobox/combobox_empty-list.vue"],"sourcesContent":["<template>\n <ol\n class=\"d-combobox__empty-list\"\n data-qa=\"dt-combobox-empty-list\"\n >\n <slot>\n <dt-list-item\n role=\"option\"\n navigation-type=\"none\"\n type=\"custom\"\n :class=\"['d-combobox__empty-list-item', itemClass]\"\n >\n <span>{{ message }}</span>\n </dt-list-item>\n </slot>\n </ol>\n</template>\n\n<script>\nimport { DtListItem } from '@/components/list_item';\n\nexport default {\n name: 'ComboboxEmptyList',\n\n components: { DtListItem },\n\n props: {\n /**\n * Message to display when list is empty\n */\n message: {\n type: String,\n required: true,\n },\n\n /**\n * Additional class name for the empty list element.\n * Can accept all of String, Object, and Array, i.e. has the\n * same api as Vue's built-in handling of the class attribute.\n */\n itemClass: {\n type: [String, Object, Array],\n default: '',\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtListItem","_openBlock","_createElementBlock","_hoisted_1","_renderSlot","_ctx","_createVNode","_component_dt_list_item","_normalizeClass","$props","_withCtx","_createElementVNode"],"mappings":"qOAqBKA,EAAU,CACb,KAAM,oBAEN,WAAY,CAAEC,WAAAA,EAAAA,OAAY,EAE1B,MAAO,CAIL,QAAS,CACP,KAAM,OACN,SAAU,EACX,EAOD,UAAW,CACT,KAAM,CAAC,OAAQ,OAAQ,KAAK,EAC5B,QAAS,EACV,CACF,CACH,KA3CI,MAAM,yBACN,UAAQ,6FAFV,OAAAC,YAAA,EAAAC,qBAcK,KAdLC,EAcK,CAVHC,EAAAA,WASOC,sBATP,IASO,CARLC,EAAAA,YAOeC,EAAA,CANb,KAAK,SACL,kBAAgB,OAChB,KAAK,SACJ,MAVTC,EAAAA,8CAUgDC,EAAS,SAAA,CAAA,IAVzD,QAAAC,EAAA,QAYQ,IAA0B,CAA1BC,EAAA,mBAA0B,8BAAjBF,EAAO,OAAA,EAAA,CAAA,IAZxB,EAAA"}
1
+ {"version":3,"file":"combobox-empty-list.cjs","sources":["../../../components/combobox/combobox_empty-list.vue"],"sourcesContent":["<template>\n <ol\n class=\"d-combobox__empty-list\"\n data-qa=\"dt-combobox-empty-list\"\n >\n <slot>\n <dt-list-item\n role=\"option\"\n navigation-type=\"none\"\n type=\"custom\"\n :class=\"['d-combobox__empty-list-item', itemClass]\"\n >\n <span>{{ message }}</span>\n </dt-list-item>\n </slot>\n </ol>\n</template>\n\n<script>\nimport { DtListItem } from '@/components/list_item';\n\nexport default {\n name: 'ComboboxEmptyList',\n\n components: { DtListItem },\n\n props: {\n /**\n * Message to display when list is empty\n */\n message: {\n type: String,\n required: true,\n },\n\n /**\n * Additional class name for the empty list element.\n * Can accept all of String, Object, and Array, i.e. has the\n * same api as Vue's built-in handling of the class attribute.\n */\n itemClass: {\n type: [String, Object, Array],\n default: '',\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtListItem","_openBlock","_createElementBlock","_hoisted_1","_renderSlot","_ctx","_createVNode","_component_dt_list_item","_normalizeClass","$props","_withCtx","_createElementVNode"],"mappings":"qOAqBKA,EAAU,CACb,KAAM,oBAEN,WAAY,CAAA,WAAEC,EAAAA,OAAS,EAEvB,MAAO,CAIL,QAAS,CACP,KAAM,OACN,SAAU,IAQZ,UAAW,CACT,KAAM,CAAC,OAAQ,OAAQ,KAAK,EAC5B,QAAS,IAGf,KA3CI,MAAM,yBACN,UAAQ,6FAFV,OAAAC,YAAA,EAAAC,qBAcK,KAdLC,EAcK,CAVHC,EAAAA,WASOC,sBATP,IASO,CARLC,EAAAA,YAOeC,EAAA,CANb,KAAK,SACL,kBAAgB,OAChB,KAAK,SACJ,MAVTC,EAAAA,8CAUgDC,EAAA,SAAS,CAAA,IAVzD,QAAAC,EAAAA,QAYQ,IAA0B,CAA1BC,EAAAA,mBAA0B,8BAAjBF,EAAA,OAAO,EAAA,CAAA,IAZxB,EAAA"}
@@ -1,4 +1,4 @@
1
- import { resolveComponent as s, openBlock as m, createElementBlock as n, renderSlot as a, createVNode as i, normalizeClass as r, withCtx as l, createElementVNode as c, toDisplayString as p } from "vue";
1
+ import { resolveComponent as s, createElementBlock as m, openBlock as n, renderSlot as a, createVNode as i, normalizeClass as r, withCtx as l, createElementVNode as c, toDisplayString as p } from "vue";
2
2
  import { _ } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
3
3
  import d from "../list-item/list-item.js";
4
4
  const b = {
@@ -28,7 +28,7 @@ const b = {
28
28
  };
29
29
  function u(e, y, t, x, C, g) {
30
30
  const o = s("dt-list-item");
31
- return m(), n("ol", f, [
31
+ return n(), m("ol", f, [
32
32
  a(e.$slots, "default", {}, () => [
33
33
  i(o, {
34
34
  role: "option",
@@ -1 +1 @@
1
- {"version":3,"file":"combobox-empty-list.js","sources":["../../../components/combobox/combobox_empty-list.vue"],"sourcesContent":["<template>\n <ol\n class=\"d-combobox__empty-list\"\n data-qa=\"dt-combobox-empty-list\"\n >\n <slot>\n <dt-list-item\n role=\"option\"\n navigation-type=\"none\"\n type=\"custom\"\n :class=\"['d-combobox__empty-list-item', itemClass]\"\n >\n <span>{{ message }}</span>\n </dt-list-item>\n </slot>\n </ol>\n</template>\n\n<script>\nimport { DtListItem } from '@/components/list_item';\n\nexport default {\n name: 'ComboboxEmptyList',\n\n components: { DtListItem },\n\n props: {\n /**\n * Message to display when list is empty\n */\n message: {\n type: String,\n required: true,\n },\n\n /**\n * Additional class name for the empty list element.\n * Can accept all of String, Object, and Array, i.e. has the\n * same api as Vue's built-in handling of the class attribute.\n */\n itemClass: {\n type: [String, Object, Array],\n default: '',\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtListItem","_openBlock","_createElementBlock","_hoisted_1","_renderSlot","_ctx","_createVNode","_component_dt_list_item","_normalizeClass","$props","_withCtx","_createElementVNode"],"mappings":";;;AAqBA,MAAKA,IAAU;AAAA,EACb,MAAM;AAAA,EAEN,YAAY,EAAE,YAAAC,EAAY;AAAA,EAE1B,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,SAAS;AAAA,MACP,MAAM;AAAA,MACN,UAAU;AAAA,IACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOD,WAAW;AAAA,MACT,MAAM,CAAC,QAAQ,QAAQ,KAAK;AAAA,MAC5B,SAAS;AAAA,IACV;AAAA,EACF;AACH;EA3CI,OAAM;AAAA,EACN,WAAQ;;;;AAFV,SAAAC,EAAA,GAAAC,EAcK,MAdLC,GAcK;AAAA,IAVHC,EASOC,yBATP,MASO;AAAA,MARLC,EAOeC,GAAA;AAAA,QANb,MAAK;AAAA,QACL,mBAAgB;AAAA,QAChB,MAAK;AAAA,QACJ,OAVTC,kCAUgDC,EAAS,SAAA,CAAA;AAAA;QAVzD,SAAAC,EAYQ,MAA0B;AAAA,UAA1BC,EAA0B,gBAAjBF,EAAO,OAAA,GAAA,CAAA;AAAA;QAZxB,GAAA;AAAA;;;;;"}
1
+ {"version":3,"file":"combobox-empty-list.js","sources":["../../../components/combobox/combobox_empty-list.vue"],"sourcesContent":["<template>\n <ol\n class=\"d-combobox__empty-list\"\n data-qa=\"dt-combobox-empty-list\"\n >\n <slot>\n <dt-list-item\n role=\"option\"\n navigation-type=\"none\"\n type=\"custom\"\n :class=\"['d-combobox__empty-list-item', itemClass]\"\n >\n <span>{{ message }}</span>\n </dt-list-item>\n </slot>\n </ol>\n</template>\n\n<script>\nimport { DtListItem } from '@/components/list_item';\n\nexport default {\n name: 'ComboboxEmptyList',\n\n components: { DtListItem },\n\n props: {\n /**\n * Message to display when list is empty\n */\n message: {\n type: String,\n required: true,\n },\n\n /**\n * Additional class name for the empty list element.\n * Can accept all of String, Object, and Array, i.e. has the\n * same api as Vue's built-in handling of the class attribute.\n */\n itemClass: {\n type: [String, Object, Array],\n default: '',\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtListItem","_openBlock","_createElementBlock","_hoisted_1","_renderSlot","_ctx","_createVNode","_component_dt_list_item","_normalizeClass","$props","_withCtx","_createElementVNode"],"mappings":";;;AAqBA,MAAKA,IAAU;AAAA,EACb,MAAM;AAAA,EAEN,YAAY,EAAE,YAAAC,EAAS;AAAA,EAEvB,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,SAAS;AAAA,MACP,MAAM;AAAA,MACN,UAAU;AAAA;;;;;;IAQZ,WAAW;AAAA,MACT,MAAM,CAAC,QAAQ,QAAQ,KAAK;AAAA,MAC5B,SAAS;AAAA;;AAGf;EA3CI,OAAM;AAAA,EACN,WAAQ;;;;AAFV,SAAAC,EAAA,GAAAC,EAcK,MAdLC,GAcK;AAAA,IAVHC,EASOC,yBATP,MASO;AAAA,MARLC,EAOeC,GAAA;AAAA,QANb,MAAK;AAAA,QACL,mBAAgB;AAAA,QAChB,MAAK;AAAA,QACJ,OAVTC,kCAUgDC,EAAA,SAAS,CAAA;AAAA;QAVzD,SAAAC,EAYQ,MAA0B;AAAA,UAA1BC,EAA0B,gBAAjBF,EAAA,OAAO,GAAA,CAAA;AAAA;QAZxB,GAAA;AAAA;;;;;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),s=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),l=require("../list-item/list-item.cjs"),r=require("../skeleton/skeleton.cjs"),i={name:"ComboboxLoadingList",components:{DtListItem:l.default,DtSkeleton:r.default}},c={class:"d-combobox__loading-list","aria-busy":"true"};function _(u,d,m,p,b,f){const t=e.resolveComponent("dt-skeleton"),o=e.resolveComponent("dt-list-item");return e.openBlock(),e.createElementBlock("ol",c,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,n=>e.createVNode(o,{key:n,role:"option","navigation-type":"none"},{default:e.withCtx(()=>[e.createVNode(t,{"text-option":{type:"body"},offset:0})]),_:2},1024)),64))])}const a=s._(i,[["render",_]]);exports.default=a;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),s=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),l=require("../skeleton/skeleton.cjs"),r=require("../list-item/list-item.cjs"),i={name:"ComboboxLoadingList",components:{DtListItem:r.default,DtSkeleton:l.default}},c={class:"d-combobox__loading-list","aria-busy":"true"};function _(u,d,m,p,b,f){const t=e.resolveComponent("dt-skeleton"),o=e.resolveComponent("dt-list-item");return e.openBlock(),e.createElementBlock("ol",c,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,n=>e.createVNode(o,{key:n,role:"option","navigation-type":"none"},{default:e.withCtx(()=>[e.createVNode(t,{"text-option":{type:"body"},offset:0})]),_:2},1024)),64))])}const a=s._(i,[["render",_]]);exports.default=a;
2
2
  //# sourceMappingURL=combobox-loading-list.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"combobox-loading-list.cjs","sources":["../../../components/combobox/combobox_loading-list.vue"],"sourcesContent":["<template>\n <ol\n class=\"d-combobox__loading-list\"\n aria-busy=\"true\"\n >\n <dt-list-item\n v-for=\"index in 7\"\n :key=\"index\"\n role=\"option\"\n navigation-type=\"none\"\n >\n <dt-skeleton\n :text-option=\"{ type: 'body' }\"\n :offset=\"0\"\n />\n </dt-list-item>\n </ol>\n</template>\n\n<script>\nimport { DtListItem } from '@/components/list_item';\nimport { DtSkeleton } from '@/components/skeleton';\n\nexport default {\n name: 'ComboboxLoadingList',\n\n components: { DtListItem, DtSkeleton },\n};\n</script>\n"],"names":["_sfc_main","DtListItem","DtSkeleton","_openBlock","_createElementBlock","_hoisted_1","_Fragment","_renderList","index","_createVNode","_component_dt_list_item","_withCtx","_component_dt_skeleton"],"mappings":"2QAuBKA,EAAU,CACb,KAAM,sBAEN,WAAY,CAAA,WAAEC,EAAU,QAAA,WAAEC,SAAY,CACxC,KAzBI,MAAM,2BACN,YAAU,+GAFZ,OAAAC,YAAA,EAAAC,qBAeK,KAfLC,EAeK,EAXHF,EAAA,UAAA,EAAAC,EAAAA,mBAUeE,EAfnB,SAAA,KAAAC,aAMsB,EAATC,GADTC,EAAAA,YAUeC,EAAA,CARZ,IAAKF,EACN,KAAK,SACL,kBAAgB,SATtB,QAAAG,EAAA,QAWM,IAGE,CAHFF,EAAAA,YAGEG,EAAA,CAFC,cAAa,CAAgB,KAAA,MAAA,EAC7B,OAAQ,MAbjB,EAAA"}
1
+ {"version":3,"file":"combobox-loading-list.cjs","sources":["../../../components/combobox/combobox_loading-list.vue"],"sourcesContent":["<template>\n <ol\n class=\"d-combobox__loading-list\"\n aria-busy=\"true\"\n >\n <dt-list-item\n v-for=\"index in 7\"\n :key=\"index\"\n role=\"option\"\n navigation-type=\"none\"\n >\n <dt-skeleton\n :text-option=\"{ type: 'body' }\"\n :offset=\"0\"\n />\n </dt-list-item>\n </ol>\n</template>\n\n<script>\nimport { DtListItem } from '@/components/list_item';\nimport { DtSkeleton } from '@/components/skeleton';\n\nexport default {\n name: 'ComboboxLoadingList',\n\n components: { DtListItem, DtSkeleton },\n};\n</script>\n"],"names":["_sfc_main","DtListItem","DtSkeleton","_openBlock","_createElementBlock","_hoisted_1","_Fragment","_renderList","index","_createVNode","_component_dt_list_item","_withCtx","_component_dt_skeleton"],"mappings":"2QAuBKA,EAAU,CACb,KAAM,sBAEN,WAAY,CAAA,WAAEC,EAAAA,QAAU,WAAEC,UAC5B,KAzBI,MAAM,2BACN,YAAU,+GAFZ,OAAAC,YAAA,EAAAC,qBAeK,KAfLC,EAeK,EAXHF,EAAAA,UAAA,EAAAC,EAAAA,mBAUeE,EAAAA,SAAA,KAfnBC,aAMsB,EAATC,GADTC,EAAAA,YAUeC,EAAA,CARZ,IAAKF,EACN,KAAK,SACL,kBAAgB,SATtB,QAAAG,EAAAA,QAWM,IAGE,CAHFF,EAAAA,YAGEG,EAAA,CAFC,cAAa,CAAA,KAAA,MAAA,EACb,OAAQ,MAbjB,EAAA"}
@@ -1,18 +1,18 @@
1
- import { resolveComponent as t, openBlock as o, createElementBlock as e, Fragment as m, renderList as c, createVNode as n, withCtx as _ } from "vue";
1
+ import { resolveComponent as t, createElementBlock as o, openBlock as e, Fragment as m, renderList as c, createVNode as n, withCtx as _ } from "vue";
2
2
  import { _ as a } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
3
- import p from "../list-item/list-item.js";
4
- import l from "../skeleton/skeleton.js";
3
+ import p from "../skeleton/skeleton.js";
4
+ import l from "../list-item/list-item.js";
5
5
  const d = {
6
6
  name: "ComboboxLoadingList",
7
- components: { DtListItem: p, DtSkeleton: l }
7
+ components: { DtListItem: l, DtSkeleton: p }
8
8
  }, f = {
9
9
  class: "d-combobox__loading-list",
10
10
  "aria-busy": "true"
11
11
  };
12
12
  function u(b, x, k, L, g, y) {
13
13
  const s = t("dt-skeleton"), r = t("dt-list-item");
14
- return o(), e("ol", f, [
15
- (o(), e(m, null, c(7, (i) => n(r, {
14
+ return e(), o("ol", f, [
15
+ (e(), o(m, null, c(7, (i) => n(r, {
16
16
  key: i,
17
17
  role: "option",
18
18
  "navigation-type": "none"
@@ -1 +1 @@
1
- {"version":3,"file":"combobox-loading-list.js","sources":["../../../components/combobox/combobox_loading-list.vue"],"sourcesContent":["<template>\n <ol\n class=\"d-combobox__loading-list\"\n aria-busy=\"true\"\n >\n <dt-list-item\n v-for=\"index in 7\"\n :key=\"index\"\n role=\"option\"\n navigation-type=\"none\"\n >\n <dt-skeleton\n :text-option=\"{ type: 'body' }\"\n :offset=\"0\"\n />\n </dt-list-item>\n </ol>\n</template>\n\n<script>\nimport { DtListItem } from '@/components/list_item';\nimport { DtSkeleton } from '@/components/skeleton';\n\nexport default {\n name: 'ComboboxLoadingList',\n\n components: { DtListItem, DtSkeleton },\n};\n</script>\n"],"names":["_sfc_main","DtListItem","DtSkeleton","_openBlock","_createElementBlock","_hoisted_1","_Fragment","_renderList","index","_createVNode","_component_dt_list_item","_withCtx","_component_dt_skeleton"],"mappings":";;;;AAuBA,MAAKA,IAAU;AAAA,EACb,MAAM;AAAA,EAEN,YAAY,EAAE,YAAAC,GAAY,YAAAC,EAAY;AACxC;EAzBI,OAAM;AAAA,EACN,aAAU;;;;AAFZ,SAAAC,EAAA,GAAAC,EAeK,MAfLC,GAeK;AAAA,KAXHF,EAAA,GAAAC,EAUeE,GAfnB,MAAAC,EAMsB,GANtB,CAMaC,MADTC,EAUeC,GAAA;AAAA,MARZ,KAAKF;AAAA,MACN,MAAK;AAAA,MACL,mBAAgB;AAAA;MATtB,SAAAG,EAWM,MAGE;AAAA,QAHFF,EAGEG,GAAA;AAAA,UAFC,eAAa,EAAgB,MAAA,OAAA;AAAA,UAC7B,QAAQ;AAAA;;MAbjB,GAAA;AAAA;;;;"}
1
+ {"version":3,"file":"combobox-loading-list.js","sources":["../../../components/combobox/combobox_loading-list.vue"],"sourcesContent":["<template>\n <ol\n class=\"d-combobox__loading-list\"\n aria-busy=\"true\"\n >\n <dt-list-item\n v-for=\"index in 7\"\n :key=\"index\"\n role=\"option\"\n navigation-type=\"none\"\n >\n <dt-skeleton\n :text-option=\"{ type: 'body' }\"\n :offset=\"0\"\n />\n </dt-list-item>\n </ol>\n</template>\n\n<script>\nimport { DtListItem } from '@/components/list_item';\nimport { DtSkeleton } from '@/components/skeleton';\n\nexport default {\n name: 'ComboboxLoadingList',\n\n components: { DtListItem, DtSkeleton },\n};\n</script>\n"],"names":["_sfc_main","DtListItem","DtSkeleton","_openBlock","_createElementBlock","_hoisted_1","_Fragment","_renderList","index","_createVNode","_component_dt_list_item","_withCtx","_component_dt_skeleton"],"mappings":";;;;AAuBA,MAAKA,IAAU;AAAA,EACb,MAAM;AAAA,EAEN,YAAY,EAAE,YAAAC,GAAY,YAAAC;AAC5B;EAzBI,OAAM;AAAA,EACN,aAAU;;;;AAFZ,SAAAC,EAAA,GAAAC,EAeK,MAfLC,GAeK;AAAA,KAXHF,EAAA,GAAAC,EAUeE,GAAA,MAfnBC,EAMsB,GANtB,CAMaC,MADTC,EAUeC,GAAA;AAAA,MARZ,KAAKF;AAAA,MACN,MAAK;AAAA,MACL,mBAAgB;AAAA;MATtB,SAAAG,EAWM,MAGE;AAAA,QAHFF,EAGEG,GAAA;AAAA,UAFC,eAAa,EAAA,MAAA,OAAA;AAAA,UACb,QAAQ;AAAA;;MAbjB,GAAA;AAAA;;;;"}
@@ -1,3 +1,3 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a=require("./combobox-loading-list.cjs"),g=require("./combobox-empty-list.cjs"),l=require("../../common/utils/index.cjs"),e=require("vue"),u=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),m=require("../../common/mixins/keyboard-list-navigation.cjs"),p=require("./combobox-constants.cjs"),y={compatConfig:{MODE:3},name:"DtCombobox",components:{ComboboxLoadingList:a.default,ComboboxEmptyList:g.default},mixins:[m.default({indexKey:"highlightIndex",idKey:"highlightId",listElementKey:"getListElement",afterHighlightMethod:"afterHighlight",beginningOfListMethod:"beginningOfListMethod",endOfListMethod:"endOfListMethod",activeItemKey:"activeItemEl"})],props:{label:{type:String,required:!0},labelVisible:{type:Boolean,default:!0},size:{type:String,default:null,validator:i=>Object.values(p.COMBOBOX_LABEL_SIZES).includes(i)},description:{type:String,default:""},listId:{type:String,default(){return l.getUniqueString()}},onBeginningOfList:{type:Function,default:null},onEndOfList:{type:Function,default:null},showList:{type:Boolean,default:!1},listRenderedOutside:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},emptyList:{type:Boolean,default:!1},emptyStateMessage:{type:String,default:""},emptyStateClass:{type:[String,Object,Array],default:""},clickOnSelect:{type:Boolean,default:!1}},emits:["select","escape","highlight","opened"],data(){return{outsideRenderedListRef:null,hasSlotContent:l.hasSlotContent}},computed:{inputProps(){return{label:this.label,labelVisible:this.labelVisible,size:this.size,description:this.description,role:"combobox","aria-label":this.label,"aria-expanded":this.showList.toString(),"aria-owns":this.listId,"aria-haspopup":"listbox","aria-activedescendant":this.activeItemId,"aria-controls":this.listId}},listProps(){return{role:"listbox",id:this.listId,class:"d-ps-relative","aria-label":this.label}},beginningOfListMethod(){return this.onBeginningOfList||this.jumpToEnd},endOfListMethod(){return this.onEndOfList||this.jumpToBeginning},activeItemId(){if(!(!this.showList||this.highlightIndex<0||this.loading))return this.highlightId},activeItemEl(){return this.highlightId?this.getListElement().querySelector("#"+this.highlightId):""}},watch:{showList(i){this.listRenderedOutside||(this.setInitialHighlightIndex(),this.$emit("opened",i)),!i&&this.outsideRenderedListRef&&(this.outsideRenderedListRef.removeEventListener("mousemove",this.onMouseHighlight),this.outsideRenderedListRef=null)},loading(i){this.$nextTick(()=>{this.setInitialHighlightIndex()})},$props:{deep:!0,immediate:!0,handler(){this.validateEmptyListProps()}}},created(){this.validateEmptyListProps()},methods:{onMouseHighlight(i){if(this.loading)return;const t=i.target.closest("li");t&&this.highlightId!==t.id&&this.setHighlightId(t.id)},getListElement(){var i;return this.outsideRenderedListRef??((i=this.$refs.listWrapper)==null?void 0:i.querySelector(`#${this.listId}`))},clearHighlightIndex(){this.showList&&this.setHighlightIndex(-1)},afterHighlight(){this.loading||this.$emit("highlight",this.highlightIndex)},onEnterKey(){var i;this.loading||this.emptyList||this.highlightIndex>=0&&(this.$emit("select",this.highlightIndex),this.clickOnSelect&&((i=this.activeItemEl)==null||i.click()))},onEscapeKey(){this.$emit("escape")},onOpen(i,t){var n;this.outsideRenderedListRef=t,(n=this.outsideRenderedListRef)==null||n.addEventListener("mousemove",this.onMouseHighlight),this.$emit("opened",i),i&&this.setInitialHighlightIndex()},onKeyValidation(i,t){!this.showList||!this.getListElement()||this[t](i)},setInitialHighlightIndex(){this.showList&&this.$nextTick(()=>{this.setHighlightIndex(this.loading?-1:0)})},validateEmptyListProps(){this.$slots.emptyListItem||this.emptyList&&!this.emptyStateMessage&&console.error(`Invalid props: you must pass both props emptyList and emptyStateMessage to show the
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a=require("./combobox-loading-list.cjs"),g=require("./combobox-empty-list.cjs"),l=require("../../common/utils/index.cjs"),e=require("vue"),u=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),m=require("../../common/mixins/keyboard-list-navigation.cjs"),p=require("./combobox-constants.cjs"),y={compatConfig:{MODE:3},name:"DtCombobox",components:{ComboboxLoadingList:a.default,ComboboxEmptyList:g.default},mixins:[m.default({indexKey:"highlightIndex",idKey:"highlightId",listElementKey:"getListElement",afterHighlightMethod:"afterHighlight",beginningOfListMethod:"beginningOfListMethod",endOfListMethod:"endOfListMethod",activeItemKey:"activeItemEl"})],props:{label:{type:String,required:!0},labelVisible:{type:Boolean,default:!0},size:{type:String,default:null,validator:i=>Object.values(p.COMBOBOX_LABEL_SIZES).includes(i)},description:{type:String,default:""},listId:{type:String,default(){return l.getUniqueString()}},onBeginningOfList:{type:Function,default:null},onEndOfList:{type:Function,default:null},showList:{type:Boolean,default:!1},listRenderedOutside:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},emptyList:{type:Boolean,default:!1},emptyStateMessage:{type:String,default:""},emptyStateClass:{type:[String,Object,Array],default:""},clickOnSelect:{type:Boolean,default:!1}},emits:["select","escape","highlight","opened"],data(){return{outsideRenderedListRef:null,hasSlotContent:l.hasSlotContent}},computed:{inputProps(){return{label:this.label,labelVisible:this.labelVisible,size:this.size,description:this.description,role:"combobox","aria-label":this.label,"aria-expanded":this.showList.toString(),"aria-owns":this.listId,"aria-haspopup":"listbox","aria-activedescendant":this.activeItemId,"aria-controls":this.listId}},listProps(){return{role:"listbox",id:this.listId,class:"d-ps-relative","aria-label":this.label}},beginningOfListMethod(){return this.onBeginningOfList||this.jumpToEnd},endOfListMethod(){return this.onEndOfList||this.jumpToBeginning},activeItemId(){if(!(!this.showList||this.highlightIndex<0||this.loading))return this.highlightId},activeItemEl(){return this.highlightId?this.getListElement().querySelector("#"+this.highlightId):""}},watch:{showList(i){this.listRenderedOutside||(this.setInitialHighlightIndex(),this.$emit("opened",i)),!i&&this.outsideRenderedListRef&&(this.outsideRenderedListRef.removeEventListener("mousemove",this.onMouseHighlight),this.outsideRenderedListRef=null)},loading(){this.$nextTick(()=>{this.setInitialHighlightIndex()})},$props:{deep:!0,immediate:!0,handler(){this.validateEmptyListProps()}}},created(){this.validateEmptyListProps()},methods:{onMouseHighlight(i){if(this.loading)return;const t=i.target.closest("li");t&&this.highlightId!==t.id&&this.setHighlightId(t.id)},getListElement(){var i;return this.outsideRenderedListRef??((i=this.$refs.listWrapper)==null?void 0:i.querySelector(`#${this.listId}`))},clearHighlightIndex(){this.showList&&this.setHighlightIndex(-1)},afterHighlight(){this.loading||this.$emit("highlight",this.highlightIndex)},onEnterKey(){var i;this.loading||this.emptyList||this.highlightIndex>=0&&(this.$emit("select",this.highlightIndex),this.clickOnSelect&&((i=this.activeItemEl)==null||i.click()))},onEscapeKey(){this.$emit("escape")},onOpen(i,t){var n;this.outsideRenderedListRef=t,(n=this.outsideRenderedListRef)==null||n.addEventListener("mousemove",this.onMouseHighlight),this.$emit("opened",i),i&&this.setInitialHighlightIndex()},onKeyValidation(i,t){!this.showList||!this.getListElement()||this[t](i)},setInitialHighlightIndex(){this.showList&&this.$nextTick(()=>{this.setHighlightIndex(this.loading?-1:0)})},validateEmptyListProps(){this.$slots.emptyListItem||this.emptyList&&!this.emptyStateMessage&&console.error(`Invalid props: you must pass both props emptyList and emptyStateMessage to show the
2
2
  empty message.`)}}},f={"data-qa":"dt-combobox-input-wrapper"};function c(i,t,n,L,r,s){const d=e.resolveComponent("combobox-loading-list"),h=e.resolveComponent("combobox-empty-list");return e.openBlock(),e.createElementBlock("div",{onKeydown:[t[3]||(t[3]=e.withKeys(e.withModifiers(o=>s.onKeyValidation(o,"onEscapeKey"),["stop"]),["esc"])),t[4]||(t[4]=e.withKeys(e.withModifiers(o=>s.onKeyValidation(o,"onEnterKey"),["exact"]),["enter"])),t[5]||(t[5]=e.withKeys(e.withModifiers(o=>s.onKeyValidation(o,"onUpKey"),["stop","prevent"]),["up"])),t[6]||(t[6]=e.withKeys(e.withModifiers(o=>s.onKeyValidation(o,"onDownKey"),["stop","prevent"]),["down"])),t[7]||(t[7]=e.withKeys(e.withModifiers(o=>s.onKeyValidation(o,"onHomeKey"),["stop","prevent"]),["home"])),t[8]||(t[8]=e.withKeys(e.withModifiers(o=>s.onKeyValidation(o,"onEndKey"),["stop","prevent"]),["end"]))]},[e.createElementVNode("div",f,[e.renderSlot(i.$slots,"input",{inputProps:s.inputProps})]),n.showList?(e.openBlock(),e.createElementBlock("div",{key:0,ref:"listWrapper","data-qa":"dt-combobox-list-wrapper",onMouseleave:t[0]||(t[0]=(...o)=>s.clearHighlightIndex&&s.clearHighlightIndex(...o)),onFocusout:t[1]||(t[1]=(...o)=>s.clearHighlightIndex&&s.clearHighlightIndex(...o)),onMousemoveCapture:t[2]||(t[2]=(...o)=>s.onMouseHighlight&&s.onMouseHighlight(...o))},[n.loading&&!n.listRenderedOutside?(e.openBlock(),e.createBlock(d,e.normalizeProps(e.mergeProps({key:0},s.listProps)),null,16)):n.emptyList&&(n.emptyStateMessage||r.hasSlotContent(i.$slots.emptyListItem))&&!n.listRenderedOutside?(e.openBlock(),e.createBlock(h,e.mergeProps({key:1},s.listProps,{message:n.emptyStateMessage,"item-class":n.emptyStateClass}),{default:e.withCtx(()=>[e.renderSlot(i.$slots,"emptyListItem")]),_:3},16,["message","item-class"])):e.renderSlot(i.$slots,"list",{key:2,listProps:s.listProps,opened:s.onOpen,clearHighlightIndex:s.clearHighlightIndex})],544)):e.createCommentVNode("",!0)],32)}const b=u._(y,[["render",c]]);exports.default=b;
3
3
  //# sourceMappingURL=combobox.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"combobox.cjs","sources":["../../../components/combobox/combobox.vue"],"sourcesContent":["<!-- eslint-disable vuejs-accessibility/no-static-element-interactions -->\n<template>\n <div\n @keydown.esc.stop=\"onKeyValidation($event, 'onEscapeKey')\"\n @keydown.enter.exact=\"onKeyValidation($event, 'onEnterKey')\"\n @keydown.up.stop.prevent=\"onKeyValidation($event, 'onUpKey')\"\n @keydown.down.stop.prevent=\"onKeyValidation($event, 'onDownKey')\"\n @keydown.home.stop.prevent=\"onKeyValidation($event, 'onHomeKey')\"\n @keydown.end.stop.prevent=\"onKeyValidation($event, 'onEndKey')\"\n >\n <div data-qa=\"dt-combobox-input-wrapper\">\n <!-- @slot Slot for the combobox input element -->\n <slot\n name=\"input\"\n :input-props=\"inputProps\"\n />\n </div>\n\n <div\n v-if=\"showList\"\n ref=\"listWrapper\"\n data-qa=\"dt-combobox-list-wrapper\"\n @mouseleave=\"clearHighlightIndex\"\n @focusout=\"clearHighlightIndex\"\n @mousemove.capture=\"onMouseHighlight\"\n >\n <combobox-loading-list\n v-if=\"loading && !listRenderedOutside\"\n v-bind=\"listProps\"\n />\n <combobox-empty-list\n v-else-if=\"emptyList && (emptyStateMessage || hasSlotContent($slots.emptyListItem)) && !listRenderedOutside\"\n v-bind=\"listProps\"\n :message=\"emptyStateMessage\"\n :item-class=\"emptyStateClass\"\n >\n <slot name=\"emptyListItem\" />\n </combobox-empty-list>\n <!-- @slot Slot for the combobox list element -->\n <slot\n v-else\n name=\"list\"\n :list-props=\"listProps\"\n :opened=\"onOpen\"\n :clear-highlight-index=\"clearHighlightIndex\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport ComboboxLoadingList from './combobox_loading-list.vue';\nimport ComboboxEmptyList from './combobox_empty-list.vue';\nimport { DtKeyboardListNavigationMixin } from '@/common/mixins';\nimport { getUniqueString, hasSlotContent } from '@/common/utils';\nimport { COMBOBOX_LABEL_SIZES } from '@/components/combobox';\n\n/**\n * A combobox is a semantic component that displays an input element combined with a listbox,\n * which enables the user to select items from the list.\n * @see https://dialtone.dialpad.com/components/combobox.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCombobox',\n\n components: {\n ComboboxLoadingList,\n ComboboxEmptyList,\n },\n\n mixins: [\n DtKeyboardListNavigationMixin({\n indexKey: 'highlightIndex',\n idKey: 'highlightId',\n listElementKey: 'getListElement',\n afterHighlightMethod: 'afterHighlight',\n beginningOfListMethod: 'beginningOfListMethod',\n endOfListMethod: 'endOfListMethod',\n activeItemKey: 'activeItemEl',\n }),\n ],\n\n props: {\n /**\n * String to use for the input label.\n */\n label: {\n type: String,\n required: true,\n },\n\n /**\n * Determines visibility of input label.\n * @values true, false\n */\n labelVisible: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Size of the input, one of `xs`, `sm`, `md`, `lg`, `xl`\n * @values null, xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: null,\n validator: (t) => Object.values(COMBOBOX_LABEL_SIZES).includes(t),\n },\n\n /**\n * Description for the input\n */\n description: {\n type: String,\n default: '',\n },\n\n /**\n * Sets an ID on the list element of the component. Used by several aria attributes\n * as well as when deriving the IDs for each item.\n */\n listId: {\n type: String,\n default () { return getUniqueString(); },\n },\n\n /**\n * A method that will be called when the selection goes past the beginning of the list.\n */\n onBeginningOfList: {\n type: Function,\n default: null,\n },\n\n /**\n * A method that will be called when the selection goes past the end of the list.\n */\n onEndOfList: {\n type: Function,\n default: null,\n },\n\n /**\n * Determines when to show the list element and also controls the aria-expanded attribute.\n * @values true, false\n */\n showList: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If the list is rendered outside the component, like when using popover as the list wrapper.\n * @values true, false\n */\n listRenderedOutside: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Determines when to show the skeletons and also controls aria-busy attribute.\n * @values true, false\n */\n loading: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Sets the list to an empty state, and displays the message from prop `emptyStateMessage`.\n * @values true, false\n */\n emptyList: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Message to show when the list is empty\n */\n emptyStateMessage: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the empty list element.\n * Can accept all of String, Object, and Array, i.e. has the\n * same api as Vue's built-in handling of the class attribute.\n */\n emptyStateClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * Programmatically click on the active list item element when a selection\n * comes from keyboard navigation, i.e. pressing the \"Enter\" key.\n * @values true, false\n */\n clickOnSelect: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n /**\n * Event fired when item selected\n *\n * @event select\n * @type {Number}\n */\n 'select',\n\n /**\n * Event fired when pressing escape\n *\n * @event escape\n */\n 'escape',\n\n /**\n * Event fired when the highlight changes\n *\n * @event highlight\n * @type {Number}\n */\n 'highlight',\n\n /**\n * Event fired when list is shown or hidden\n *\n * @event opened\n * @type {Boolean}\n */\n 'opened',\n ],\n\n data () {\n return {\n // If the list is rendered at the root, rather than as a child\n // of this component, this is the ref to that dom element. Set\n // by the onOpen method.\n outsideRenderedListRef: null,\n hasSlotContent,\n };\n },\n\n computed: {\n inputProps () {\n return {\n label: this.label,\n labelVisible: this.labelVisible,\n size: this.size,\n description: this.description,\n role: 'combobox',\n 'aria-label': this.label,\n 'aria-expanded': this.showList.toString(),\n 'aria-owns': this.listId,\n 'aria-haspopup': 'listbox',\n 'aria-activedescendant': this.activeItemId,\n 'aria-controls': this.listId,\n };\n },\n\n listProps () {\n return {\n role: 'listbox',\n id: this.listId,\n // The list has to be positioned relatively so that the auto-scroll can\n // calculate the correct offset for the list items.\n class: 'd-ps-relative',\n 'aria-label': this.label,\n };\n },\n\n beginningOfListMethod () {\n return this.onBeginningOfList || this.jumpToEnd;\n },\n\n endOfListMethod () {\n return this.onEndOfList || this.jumpToBeginning;\n },\n\n activeItemId () {\n if (!this.showList || this.highlightIndex < 0 || this.loading) {\n return;\n }\n return this.highlightId;\n },\n\n activeItemEl () {\n if (!this.highlightId) return '';\n return this.getListElement().querySelector('#' + this.highlightId);\n },\n },\n\n watch: {\n showList (showList) {\n // When the list's visibility changes reset the highlight index.\n\n if (!this.listRenderedOutside) {\n this.setInitialHighlightIndex();\n this.$emit('opened', showList);\n }\n\n if (!showList && this.outsideRenderedListRef) {\n this.outsideRenderedListRef.removeEventListener('mousemove', this.onMouseHighlight);\n this.outsideRenderedListRef = null;\n }\n },\n\n loading (loading) {\n this.$nextTick(() => {\n this.setInitialHighlightIndex();\n });\n },\n\n $props: {\n deep: true,\n immediate: true,\n handler () {\n this.validateEmptyListProps();\n },\n },\n },\n\n created () {\n this.validateEmptyListProps();\n },\n\n methods: {\n onMouseHighlight (e) {\n if (this.loading) return;\n\n const liElement = e.target.closest('li');\n\n if (liElement && this.highlightId !== liElement.id) {\n this.setHighlightId(liElement.id);\n }\n },\n\n getListElement () {\n return this.outsideRenderedListRef ?? this.$refs.listWrapper?.querySelector(`#${this.listId}`);\n },\n\n clearHighlightIndex () {\n if (this.showList) {\n this.setHighlightIndex(-1);\n }\n },\n\n afterHighlight () {\n if (this.loading) return;\n this.$emit('highlight', this.highlightIndex);\n },\n\n onEnterKey () {\n if (this.loading || this.emptyList) return;\n\n if (this.highlightIndex >= 0) {\n this.$emit('select', this.highlightIndex);\n\n if (this.clickOnSelect) {\n this.activeItemEl?.click();\n }\n }\n },\n\n onEscapeKey () {\n this.$emit('escape');\n },\n\n onOpen (open, contentRef) {\n this.outsideRenderedListRef = contentRef;\n this.outsideRenderedListRef?.addEventListener('mousemove', this.onMouseHighlight);\n this.$emit('opened', open);\n\n if (open) {\n this.setInitialHighlightIndex();\n }\n },\n\n onKeyValidation (e, eventHandler) {\n if (!this.showList || !this.getListElement()) return;\n\n this[eventHandler](e);\n },\n\n setInitialHighlightIndex () {\n if (!this.showList) return;\n this.$nextTick(() => {\n // When the list's is shown, reset the highlight index.\n // If the list is loading, set to -1\n this.setHighlightIndex(this.loading ? -1 : 0);\n });\n },\n\n validateEmptyListProps () {\n if (this.$slots.emptyListItem) { return; }\n\n if (this.emptyList && !this.emptyStateMessage) {\n console.error(`Invalid props: you must pass both props emptyList and emptyStateMessage to show the\n empty message.`);\n }\n },\n },\n};\n</script>\n"],"names":["_sfc_main","ComboboxLoadingList","ComboboxEmptyList","DtKeyboardListNavigationMixin","t","COMBOBOX_LABEL_SIZES","getUniqueString","hasSlotContent","showList","loading","e","liElement","_a","open","contentRef","eventHandler","_hoisted_1","_createElementBlock","_withKeys","_withModifiers","$event","$options","_createElementVNode","_renderSlot","_ctx","$props","args","_cache","_openBlock","_createBlock","_component_combobox_loading_list","_normalizeProps","_mergeProps","$data","_component_combobox_empty_list","_withCtx","_createCommentVNode"],"mappings":"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"}
1
+ {"version":3,"file":"combobox.cjs","sources":["../../../components/combobox/combobox.vue"],"sourcesContent":["<!-- eslint-disable vuejs-accessibility/no-static-element-interactions -->\n<template>\n <div\n @keydown.esc.stop=\"onKeyValidation($event, 'onEscapeKey')\"\n @keydown.enter.exact=\"onKeyValidation($event, 'onEnterKey')\"\n @keydown.up.stop.prevent=\"onKeyValidation($event, 'onUpKey')\"\n @keydown.down.stop.prevent=\"onKeyValidation($event, 'onDownKey')\"\n @keydown.home.stop.prevent=\"onKeyValidation($event, 'onHomeKey')\"\n @keydown.end.stop.prevent=\"onKeyValidation($event, 'onEndKey')\"\n >\n <div data-qa=\"dt-combobox-input-wrapper\">\n <!-- @slot Slot for the combobox input element -->\n <slot\n name=\"input\"\n :input-props=\"inputProps\"\n />\n </div>\n\n <div\n v-if=\"showList\"\n ref=\"listWrapper\"\n data-qa=\"dt-combobox-list-wrapper\"\n @mouseleave=\"clearHighlightIndex\"\n @focusout=\"clearHighlightIndex\"\n @mousemove.capture=\"onMouseHighlight\"\n >\n <combobox-loading-list\n v-if=\"loading && !listRenderedOutside\"\n v-bind=\"listProps\"\n />\n <combobox-empty-list\n v-else-if=\"emptyList && (emptyStateMessage || hasSlotContent($slots.emptyListItem)) && !listRenderedOutside\"\n v-bind=\"listProps\"\n :message=\"emptyStateMessage\"\n :item-class=\"emptyStateClass\"\n >\n <slot name=\"emptyListItem\" />\n </combobox-empty-list>\n <!-- @slot Slot for the combobox list element -->\n <slot\n v-else\n name=\"list\"\n :list-props=\"listProps\"\n :opened=\"onOpen\"\n :clear-highlight-index=\"clearHighlightIndex\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport ComboboxLoadingList from './combobox_loading-list.vue';\nimport ComboboxEmptyList from './combobox_empty-list.vue';\nimport { DtKeyboardListNavigationMixin } from '@/common/mixins';\nimport { getUniqueString, hasSlotContent } from '@/common/utils';\nimport { COMBOBOX_LABEL_SIZES } from '@/components/combobox';\n\n/**\n * A combobox is a semantic component that displays an input element combined with a listbox,\n * which enables the user to select items from the list.\n * @see https://dialtone.dialpad.com/components/combobox.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtCombobox',\n\n components: {\n ComboboxLoadingList,\n ComboboxEmptyList,\n },\n\n mixins: [\n DtKeyboardListNavigationMixin({\n indexKey: 'highlightIndex',\n idKey: 'highlightId',\n listElementKey: 'getListElement',\n afterHighlightMethod: 'afterHighlight',\n beginningOfListMethod: 'beginningOfListMethod',\n endOfListMethod: 'endOfListMethod',\n activeItemKey: 'activeItemEl',\n }),\n ],\n\n props: {\n /**\n * String to use for the input label.\n */\n label: {\n type: String,\n required: true,\n },\n\n /**\n * Determines visibility of input label.\n * @values true, false\n */\n labelVisible: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Size of the input, one of `xs`, `sm`, `md`, `lg`, `xl`\n * @values null, xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: null,\n validator: (t) => Object.values(COMBOBOX_LABEL_SIZES).includes(t),\n },\n\n /**\n * Description for the input\n */\n description: {\n type: String,\n default: '',\n },\n\n /**\n * Sets an ID on the list element of the component. Used by several aria attributes\n * as well as when deriving the IDs for each item.\n */\n listId: {\n type: String,\n default () { return getUniqueString(); },\n },\n\n /**\n * A method that will be called when the selection goes past the beginning of the list.\n */\n onBeginningOfList: {\n type: Function,\n default: null,\n },\n\n /**\n * A method that will be called when the selection goes past the end of the list.\n */\n onEndOfList: {\n type: Function,\n default: null,\n },\n\n /**\n * Determines when to show the list element and also controls the aria-expanded attribute.\n * @values true, false\n */\n showList: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If the list is rendered outside the component, like when using popover as the list wrapper.\n * @values true, false\n */\n listRenderedOutside: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Determines when to show the skeletons and also controls aria-busy attribute.\n * @values true, false\n */\n loading: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Sets the list to an empty state, and displays the message from prop `emptyStateMessage`.\n * @values true, false\n */\n emptyList: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Message to show when the list is empty\n */\n emptyStateMessage: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the empty list element.\n * Can accept all of String, Object, and Array, i.e. has the\n * same api as Vue's built-in handling of the class attribute.\n */\n emptyStateClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * Programmatically click on the active list item element when a selection\n * comes from keyboard navigation, i.e. pressing the \"Enter\" key.\n * @values true, false\n */\n clickOnSelect: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n /**\n * Event fired when item selected\n *\n * @event select\n * @type {Number}\n */\n 'select',\n\n /**\n * Event fired when pressing escape\n *\n * @event escape\n */\n 'escape',\n\n /**\n * Event fired when the highlight changes\n *\n * @event highlight\n * @type {Number}\n */\n 'highlight',\n\n /**\n * Event fired when list is shown or hidden\n *\n * @event opened\n * @type {Boolean}\n */\n 'opened',\n ],\n\n data () {\n return {\n // If the list is rendered at the root, rather than as a child\n // of this component, this is the ref to that dom element. Set\n // by the onOpen method.\n outsideRenderedListRef: null,\n hasSlotContent,\n };\n },\n\n computed: {\n inputProps () {\n return {\n label: this.label,\n labelVisible: this.labelVisible,\n size: this.size,\n description: this.description,\n role: 'combobox',\n 'aria-label': this.label,\n 'aria-expanded': this.showList.toString(),\n 'aria-owns': this.listId,\n 'aria-haspopup': 'listbox',\n 'aria-activedescendant': this.activeItemId,\n 'aria-controls': this.listId,\n };\n },\n\n listProps () {\n return {\n role: 'listbox',\n id: this.listId,\n // The list has to be positioned relatively so that the auto-scroll can\n // calculate the correct offset for the list items.\n class: 'd-ps-relative',\n 'aria-label': this.label,\n };\n },\n\n beginningOfListMethod () {\n return this.onBeginningOfList || this.jumpToEnd;\n },\n\n endOfListMethod () {\n return this.onEndOfList || this.jumpToBeginning;\n },\n\n activeItemId () {\n if (!this.showList || this.highlightIndex < 0 || this.loading) {\n return;\n }\n return this.highlightId;\n },\n\n activeItemEl () {\n if (!this.highlightId) return '';\n return this.getListElement().querySelector('#' + this.highlightId);\n },\n },\n\n watch: {\n showList (showList) {\n // When the list's visibility changes reset the highlight index.\n\n if (!this.listRenderedOutside) {\n this.setInitialHighlightIndex();\n this.$emit('opened', showList);\n }\n\n if (!showList && this.outsideRenderedListRef) {\n this.outsideRenderedListRef.removeEventListener('mousemove', this.onMouseHighlight);\n this.outsideRenderedListRef = null;\n }\n },\n\n loading () {\n this.$nextTick(() => {\n this.setInitialHighlightIndex();\n });\n },\n\n $props: {\n deep: true,\n immediate: true,\n handler () {\n this.validateEmptyListProps();\n },\n },\n },\n\n created () {\n this.validateEmptyListProps();\n },\n\n methods: {\n onMouseHighlight (e) {\n if (this.loading) return;\n\n const liElement = e.target.closest('li');\n\n if (liElement && this.highlightId !== liElement.id) {\n this.setHighlightId(liElement.id);\n }\n },\n\n getListElement () {\n return this.outsideRenderedListRef ?? this.$refs.listWrapper?.querySelector(`#${this.listId}`);\n },\n\n clearHighlightIndex () {\n if (this.showList) {\n this.setHighlightIndex(-1);\n }\n },\n\n afterHighlight () {\n if (this.loading) return;\n this.$emit('highlight', this.highlightIndex);\n },\n\n onEnterKey () {\n if (this.loading || this.emptyList) return;\n\n if (this.highlightIndex >= 0) {\n this.$emit('select', this.highlightIndex);\n\n if (this.clickOnSelect) {\n this.activeItemEl?.click();\n }\n }\n },\n\n onEscapeKey () {\n this.$emit('escape');\n },\n\n onOpen (open, contentRef) {\n this.outsideRenderedListRef = contentRef;\n this.outsideRenderedListRef?.addEventListener('mousemove', this.onMouseHighlight);\n this.$emit('opened', open);\n\n if (open) {\n this.setInitialHighlightIndex();\n }\n },\n\n onKeyValidation (e, eventHandler) {\n if (!this.showList || !this.getListElement()) return;\n\n this[eventHandler](e);\n },\n\n setInitialHighlightIndex () {\n if (!this.showList) return;\n this.$nextTick(() => {\n // When the list's is shown, reset the highlight index.\n // If the list is loading, set to -1\n this.setHighlightIndex(this.loading ? -1 : 0);\n });\n },\n\n validateEmptyListProps () {\n if (this.$slots.emptyListItem) { return; }\n\n if (this.emptyList && !this.emptyStateMessage) {\n console.error(`Invalid props: you must pass both props emptyList and emptyStateMessage to show the\n empty message.`);\n }\n },\n },\n};\n</script>\n"],"names":["_sfc_main","ComboboxLoadingList","ComboboxEmptyList","DtKeyboardListNavigationMixin","t","COMBOBOX_LABEL_SIZES","getUniqueString","hasSlotContent","showList","e","liElement","_a","open","contentRef","eventHandler","_hoisted_1","_createElementBlock","_withKeys","_withModifiers","$event","$options","_createElementVNode","_renderSlot","_ctx","$props","args","_cache","_openBlock","_createBlock","_component_combobox_loading_list","_normalizeProps","_mergeProps","$data","_component_combobox_empty_list","_withCtx","_createCommentVNode"],"mappings":"2ZA8DKA,EAAU,CACb,aAAc,CAAE,KAAM,GACtB,KAAM,aAEN,WAAY,CACV,oBAAAC,EAAAA,QACA,kBAAAC,EAAAA,SAGF,OAAQ,CACNC,UAA8B,CAC5B,SAAU,iBACV,MAAO,cACP,eAAgB,iBAChB,qBAAsB,iBACtB,sBAAuB,wBACvB,gBAAiB,kBACjB,cAAe,cACjB,CAAC,GAGH,MAAO,CAIL,MAAO,CACL,KAAM,OACN,SAAU,IAOZ,aAAc,CACZ,KAAM,QACN,QAAS,IAOX,KAAM,CACJ,KAAM,OACN,QAAS,KACT,UAAYC,GAAM,OAAO,OAAOC,sBAAoB,EAAE,SAASD,CAAC,GAMlE,YAAa,CACX,KAAM,OACN,QAAS,IAOX,OAAQ,CACN,KAAM,OACN,SAAW,CAAE,OAAOE,EAAAA,gBAAe,CAAI,GAMzC,kBAAmB,CACjB,KAAM,SACN,QAAS,MAMX,YAAa,CACX,KAAM,SACN,QAAS,MAOX,SAAU,CACR,KAAM,QACN,QAAS,IAOX,oBAAqB,CACnB,KAAM,QACN,QAAS,IAOX,QAAS,CACP,KAAM,QACN,QAAS,IAOX,UAAW,CACT,KAAM,QACN,QAAS,IAMX,kBAAmB,CACjB,KAAM,OACN,QAAS,IAQX,gBAAiB,CACf,KAAM,CAAC,OAAQ,OAAQ,KAAK,EAC5B,QAAS,IAQX,cAAe,CACb,KAAM,QACN,QAAS,KAIb,MAAO,CAOL,SAOA,SAQA,YAQA,UAGF,MAAQ,CACN,MAAO,CAIL,uBAAwB,KACxB,eAAAC,EAAAA,eAEJ,EAEA,SAAU,CACR,YAAc,CACZ,MAAO,CACL,MAAO,KAAK,MACZ,aAAc,KAAK,aACnB,KAAM,KAAK,KACX,YAAa,KAAK,YAClB,KAAM,WACN,aAAc,KAAK,MACnB,gBAAiB,KAAK,SAAS,SAAQ,EACvC,YAAa,KAAK,OAClB,gBAAiB,UACjB,wBAAyB,KAAK,aAC9B,gBAAiB,KAAK,OAE1B,EAEA,WAAa,CACX,MAAO,CACL,KAAM,UACN,GAAI,KAAK,OAGT,MAAO,gBACP,aAAc,KAAK,MAEvB,EAEA,uBAAyB,CACvB,OAAO,KAAK,mBAAqB,KAAK,SACxC,EAEA,iBAAmB,CACjB,OAAO,KAAK,aAAe,KAAK,eAClC,EAEA,cAAgB,CACd,GAAI,GAAC,KAAK,UAAY,KAAK,eAAiB,GAAK,KAAK,SAGtD,OAAO,KAAK,WACd,EAEA,cAAgB,CACd,OAAK,KAAK,YACH,KAAK,eAAc,EAAG,cAAc,IAAM,KAAK,WAAW,EADnC,EAEhC,GAGF,MAAO,CACL,SAAUC,EAAU,CAGb,KAAK,sBACR,KAAK,yBAAwB,EAC7B,KAAK,MAAM,SAAUA,CAAQ,GAG3B,CAACA,GAAY,KAAK,yBACpB,KAAK,uBAAuB,oBAAoB,YAAa,KAAK,gBAAgB,EAClF,KAAK,uBAAyB,KAElC,EAEA,SAAW,CACT,KAAK,UAAU,IAAM,CACnB,KAAK,yBAAwB,CAC/B,CAAC,CACH,EAEA,OAAQ,CACN,KAAM,GACN,UAAW,GACX,SAAW,CACT,KAAK,uBAAsB,CAC7B,IAIJ,SAAW,CACT,KAAK,uBAAsB,CAC7B,EAEA,QAAS,CACP,iBAAkBC,EAAG,CACnB,GAAI,KAAK,QAAS,OAElB,MAAMC,EAAYD,EAAE,OAAO,QAAQ,IAAI,EAEnCC,GAAa,KAAK,cAAgBA,EAAU,IAC9C,KAAK,eAAeA,EAAU,EAAE,CAEpC,EAEA,gBAAkB,OAChB,OAAO,KAAK,0BAA0BC,EAAA,KAAK,MAAM,cAAX,YAAAA,EAAwB,cAAc,IAAI,KAAK,MAAM,IAC7F,EAEA,qBAAuB,CACjB,KAAK,UACP,KAAK,kBAAkB,EAAE,CAE7B,EAEA,gBAAkB,CACZ,KAAK,SACT,KAAK,MAAM,YAAa,KAAK,cAAc,CAC7C,EAEA,YAAc,OACR,KAAK,SAAW,KAAK,WAErB,KAAK,gBAAkB,IACzB,KAAK,MAAM,SAAU,KAAK,cAAc,EAEpC,KAAK,iBACPA,EAAA,KAAK,eAAL,MAAAA,EAAmB,SAGzB,EAEA,aAAe,CACb,KAAK,MAAM,QAAQ,CACrB,EAEA,OAAQC,EAAMC,EAAY,OACxB,KAAK,uBAAyBA,GAC9BF,EAAA,KAAK,yBAAL,MAAAA,EAA6B,iBAAiB,YAAa,KAAK,kBAChE,KAAK,MAAM,SAAUC,CAAI,EAErBA,GACF,KAAK,yBAAwB,CAEjC,EAEA,gBAAiBH,EAAGK,EAAc,CAC5B,CAAC,KAAK,UAAY,CAAC,KAAK,eAAc,GAE1C,KAAKA,CAAY,EAAEL,CAAC,CACtB,EAEA,0BAA4B,CACrB,KAAK,UACV,KAAK,UAAU,IAAM,CAGnB,KAAK,kBAAkB,KAAK,QAAU,GAAK,CAAC,CAC9C,CAAC,CACH,EAEA,wBAA0B,CACpB,KAAK,OAAO,eAEZ,KAAK,WAAa,CAAC,KAAK,mBAC1B,QAAQ,MAAM;AAAA,qBACD,CAEjB,EAEJ,EAjZSM,EAAA,CAAA,UAAQ,2BAA2B,+IAR1CC,EAAAA,mBA6CM,MAAA,CA5CH,UAAO,aAHZC,EAAAA,SAAAC,EAAAA,cAAAC,GAGuBC,EAAA,gBAAgBD,EAAM,aAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,KAAA,CAAA,eAH7CF,EAAAA,SAAAC,EAAAA,cAAAC,GAI0BC,EAAA,gBAAgBD,EAAM,YAAA,EAAA,CAAA,OAAA,CAAA,EAAA,CAAA,OAAA,CAAA,eAJhDF,WAAAC,EAAAA,cAAAC,GAK8BC,EAAA,gBAAgBD,EAAM,SAAA,EAAA,CAAA,OAAA,SAAA,CAAA,EAAA,CAAA,IAAA,CAAA,eALpDF,WAAAC,EAAAA,cAAAC,GAMgCC,EAAA,gBAAgBD,EAAM,WAAA,EAAA,CAAA,OAAA,SAAA,CAAA,EAAA,CAAA,MAAA,CAAA,eANtDF,WAAAC,EAAAA,cAAAC,GAOgCC,EAAA,gBAAgBD,EAAM,WAAA,EAAA,CAAA,OAAA,SAAA,CAAA,EAAA,CAAA,MAAA,CAAA,eAPtDF,WAAAC,EAAAA,cAAAC,GAQ+BC,EAAA,gBAAgBD,EAAM,UAAA,EAAA,CAAA,OAAA,SAAA,CAAA,EAAA,CAAA,KAAA,CAAA,MAEjDE,EAAAA,mBAMM,MANNN,EAMM,CAJJO,EAAAA,WAGEC,EAAA,OAAA,QAAA,CADC,WAAaH,EAAA,UAAU,CAAA,IAKpBI,EAAA,wBADRR,EAAAA,mBA4BM,MAAA,CA9CV,IAAA,EAoBM,IAAI,cACJ,UAAQ,2BACP,iCAAYI,EAAA,qBAAAA,EAAA,oBAAA,GAAAK,CAAA,GACZ,+BAAUL,EAAA,qBAAAA,EAAA,oBAAA,GAAAK,CAAA,GAvBjB,mBAAAC,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAA,IAAAD,IAwB0BL,EAAA,kBAAAA,EAAA,iBAAA,GAAAK,CAAA,KAGZD,EAAA,UAAYA,EAAA,qBADpBG,EAAAA,UAAA,EAAAC,EAAAA,YAGEC,EA7BRC,EAAAA,eAAAC,EAAAA,WAAA,CAAA,IAAA,GA4BgBX,EAAA,SAAS,CAAA,EAAA,KAAA,EAAA,GAGNI,EAAA,YAAcA,qBAAqBQ,EAAA,eAAeT,EAAA,OAAO,aAAa,IAAA,CAAOC,EAAA,qBAD1FG,YAAA,EAAAC,cAOsBK,EAPtBF,EAAAA,WAOsB,CArC5B,IAAA,GAgCgBX,EAAA,UAAS,CAChB,QAASI,EAAA,kBACT,aAAYA,EAAA,mBAlCrB,QAAAU,EAAAA,QAoCQ,IAA6B,CAA7BZ,aAA6BC,EAAA,OAAA,eAAA,IApCrC,EAAA,iCAuCMD,aAMEC,EAAA,OAAA,OAAA,CA7CR,IAAA,EA0CS,UAAYH,EAAA,UACZ,OAAQA,EAAA,OACR,oBAAuBA,EAAA,6BA5ChCe,EAAAA,mBAAA,GAAA,EAAA"}
@@ -1,7 +1,7 @@
1
1
  import y from "./combobox-loading-list.js";
2
2
  import I from "./combobox-empty-list.js";
3
- import { getUniqueString as L, hasSlotContent as b } from "../../common/utils/index.js";
4
- import { resolveComponent as h, openBlock as d, createElementBlock as a, withKeys as l, withModifiers as o, createElementVNode as c, renderSlot as r, createBlock as g, normalizeProps as x, mergeProps as m, withCtx as v, createCommentVNode as E } from "vue";
3
+ import { hasSlotContent as L, getUniqueString as b } from "../../common/utils/index.js";
4
+ import { resolveComponent as h, createElementBlock as a, openBlock as d, withKeys as l, withModifiers as o, createElementVNode as c, createCommentVNode as x, renderSlot as r, createBlock as g, normalizeProps as v, mergeProps as m, withCtx as E } from "vue";
5
5
  import { _ as O } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
6
6
  import S from "../../common/mixins/keyboard-list-navigation.js";
7
7
  import { COMBOBOX_LABEL_SIZES as H } from "./combobox-constants.js";
@@ -62,7 +62,7 @@ const K = {
62
62
  listId: {
63
63
  type: String,
64
64
  default() {
65
- return L();
65
+ return b();
66
66
  }
67
67
  },
68
68
  /**
@@ -172,7 +172,7 @@ const K = {
172
172
  // of this component, this is the ref to that dom element. Set
173
173
  // by the onOpen method.
174
174
  outsideRenderedListRef: null,
175
- hasSlotContent: b
175
+ hasSlotContent: L
176
176
  };
177
177
  },
178
178
  computed: {
@@ -219,7 +219,7 @@ const K = {
219
219
  showList(e) {
220
220
  this.listRenderedOutside || (this.setInitialHighlightIndex(), this.$emit("opened", e)), !e && this.outsideRenderedListRef && (this.outsideRenderedListRef.removeEventListener("mousemove", this.onMouseHighlight), this.outsideRenderedListRef = null);
221
221
  },
222
- loading(e) {
222
+ loading() {
223
223
  this.$nextTick(() => {
224
224
  this.setInitialHighlightIndex();
225
225
  });
@@ -299,11 +299,11 @@ function w(e, t, n, R, p, i) {
299
299
  onFocusout: t[1] || (t[1] = (...s) => i.clearHighlightIndex && i.clearHighlightIndex(...s)),
300
300
  onMousemoveCapture: t[2] || (t[2] = (...s) => i.onMouseHighlight && i.onMouseHighlight(...s))
301
301
  }, [
302
- n.loading && !n.listRenderedOutside ? (d(), g(u, x(m({ key: 0 }, i.listProps)), null, 16)) : n.emptyList && (n.emptyStateMessage || p.hasSlotContent(e.$slots.emptyListItem)) && !n.listRenderedOutside ? (d(), g(f, m({ key: 1 }, i.listProps, {
302
+ n.loading && !n.listRenderedOutside ? (d(), g(u, v(m({ key: 0 }, i.listProps)), null, 16)) : n.emptyList && (n.emptyStateMessage || p.hasSlotContent(e.$slots.emptyListItem)) && !n.listRenderedOutside ? (d(), g(f, m({ key: 1 }, i.listProps, {
303
303
  message: n.emptyStateMessage,
304
304
  "item-class": n.emptyStateClass
305
305
  }), {
306
- default: v(() => [
306
+ default: E(() => [
307
307
  r(e.$slots, "emptyListItem")
308
308
  ]),
309
309
  _: 3
@@ -313,7 +313,7 @@ function w(e, t, n, R, p, i) {
313
313
  opened: i.onOpen,
314
314
  clearHighlightIndex: i.clearHighlightIndex
315
315
  })
316
- ], 544)) : E("", !0)
316
+ ], 544)) : x("", !0)
317
317
  ], 32);
318
318
  }
319
319
  const z = /* @__PURE__ */ O(K, [["render", w]]);