@dialpad/dialtone 9.65.0 → 9.66.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 (870) hide show
  1. package/dist/chunks/tokens-base-dark--ozK7f0P.js +4 -0
  2. package/dist/chunks/tokens-base-dark-V8E4WaJI.js +1 -0
  3. package/dist/chunks/tokens-base-light-LYlvM3eZ.js +1 -0
  4. package/dist/chunks/tokens-base-light-ljPrpLe2.js +4 -0
  5. package/dist/css/dialtone-default-theme.css +57 -55
  6. package/dist/css/dialtone-default-theme.min.css +1 -1
  7. package/dist/css/dialtone.css +8 -6
  8. package/dist/css/dialtone.min.css +1 -1
  9. package/dist/css/tokens/tokens-base-dark.css +5 -5
  10. package/dist/css/tokens/tokens-base-light.css +5 -5
  11. package/dist/css/tokens/tokens-dp-dark.css +44 -44
  12. package/dist/css/tokens/tokens-dp-light.css +44 -44
  13. package/dist/css/tokens/tokens-expressive-dark.css +50 -50
  14. package/dist/css/tokens/tokens-expressive-light.css +50 -50
  15. package/dist/css/tokens/tokens-expressive-sm-dark.css +50 -50
  16. package/dist/css/tokens/tokens-expressive-sm-light.css +50 -50
  17. package/dist/css/tokens/tokens-tmo-dark.css +44 -44
  18. package/dist/css/tokens/tokens-tmo-light.css +44 -44
  19. package/dist/themes/dp-dark.cjs +1 -1
  20. package/dist/themes/dp-dark.js +2 -2
  21. package/dist/themes/dp-light.cjs +1 -1
  22. package/dist/themes/dp-light.js +2 -2
  23. package/dist/themes/expressive-dark.cjs +1 -1
  24. package/dist/themes/expressive-dark.js +2 -2
  25. package/dist/themes/expressive-light.cjs +1 -1
  26. package/dist/themes/expressive-light.js +2 -2
  27. package/dist/themes/expressive-sm-dark.cjs +1 -1
  28. package/dist/themes/expressive-sm-dark.js +2 -2
  29. package/dist/themes/expressive-sm-light.cjs +1 -1
  30. package/dist/themes/expressive-sm-light.js +2 -2
  31. package/dist/themes/tmo-dark.cjs +1 -1
  32. package/dist/themes/tmo-dark.js +2 -2
  33. package/dist/themes/tmo-light.cjs +1 -1
  34. package/dist/themes/tmo-light.js +2 -2
  35. package/dist/tokens/css/tokens-base-dark.css +5 -5
  36. package/dist/tokens/css/tokens-base-light.css +5 -5
  37. package/dist/tokens/css/tokens-dp-dark.css +44 -44
  38. package/dist/tokens/css/tokens-dp-light.css +44 -44
  39. package/dist/tokens/css/tokens-expressive-dark.css +50 -50
  40. package/dist/tokens/css/tokens-expressive-light.css +50 -50
  41. package/dist/tokens/css/tokens-expressive-sm-dark.css +50 -50
  42. package/dist/tokens/css/tokens-expressive-sm-light.css +50 -50
  43. package/dist/tokens/css/tokens-tmo-dark.css +44 -44
  44. package/dist/tokens/css/tokens-tmo-light.css +44 -44
  45. package/dist/tokens/doc.json +14285 -14285
  46. package/dist/tokens/less/tokens-base-dark.less +5 -5
  47. package/dist/tokens/less/tokens-base-light.less +5 -5
  48. package/dist/tokens/less/tokens-dp-dark.less +44 -44
  49. package/dist/tokens/less/tokens-dp-light.less +44 -44
  50. package/dist/tokens/less/tokens-expressive-dark.less +50 -50
  51. package/dist/tokens/less/tokens-expressive-light.less +50 -50
  52. package/dist/tokens/less/tokens-expressive-sm-dark.less +50 -50
  53. package/dist/tokens/less/tokens-expressive-sm-light.less +50 -50
  54. package/dist/tokens/less/tokens-tmo-dark.less +44 -44
  55. package/dist/tokens/less/tokens-tmo-light.less +44 -44
  56. package/dist/tokens/tokens-base-dark.json +5 -5
  57. package/dist/tokens/tokens-base-light.json +5 -5
  58. package/dist/tokens/tokens-dp-dark.json +44 -44
  59. package/dist/tokens/tokens-dp-light.json +44 -44
  60. package/dist/tokens/tokens-expressive-dark.json +50 -50
  61. package/dist/tokens/tokens-expressive-light.json +50 -50
  62. package/dist/tokens/tokens-expressive-sm-dark.json +50 -50
  63. package/dist/tokens/tokens-expressive-sm-light.json +50 -50
  64. package/dist/tokens/tokens-tmo-dark.json +44 -44
  65. package/dist/tokens/tokens-tmo-light.json +44 -44
  66. package/dist/vue2/chunks/{dropdown-6UoczdUY.js → dropdown-YdCyJ5Dq.js} +77 -41
  67. package/dist/vue2/chunks/{dropdown-pHxnQPzT.js.map → dropdown-YdCyJ5Dq.js.map} +1 -1
  68. package/dist/vue2/chunks/{dropdown-pHxnQPzT.js → dropdown-mjrYu_mK.js} +77 -41
  69. package/dist/vue2/chunks/{dropdown-6UoczdUY.js.map → dropdown-mjrYu_mK.js.map} +1 -1
  70. package/dist/vue2/chunks/dropdown_constants-2pGCXy7m.js.map +1 -1
  71. package/dist/vue2/chunks/dropdown_constants-w1MXGC3Z.js.map +1 -1
  72. package/dist/vue2/chunks/{icon_constants-Dy4MEUJL.js → icon_constants-TdxqLsS2.js} +3 -2
  73. package/dist/vue2/chunks/icon_constants-TdxqLsS2.js.map +1 -0
  74. package/dist/vue2/chunks/{icon_constants-QYpmdE0R.js → icon_constants-VEA0wI5C.js} +3 -2
  75. package/dist/vue2/chunks/icon_constants-VEA0wI5C.js.map +1 -0
  76. package/dist/vue2/chunks/{index-gj1jEXP4.js → index-DyqUqjvI.js} +122 -87
  77. package/dist/vue2/chunks/{index-eJ-WWRdf.js.map → index-DyqUqjvI.js.map} +1 -1
  78. package/dist/vue2/chunks/{index-anN_sx1F.js → index-NYFNZeHH.js} +5 -13
  79. package/dist/vue2/chunks/{index-anN_sx1F.js.map → index-NYFNZeHH.js.map} +1 -1
  80. package/dist/vue2/chunks/{index-ODod4Oj_.js → index-i65YVk-U.js} +5 -13
  81. package/dist/vue2/chunks/{index-ODod4Oj_.js.map → index-i65YVk-U.js.map} +1 -1
  82. package/dist/vue2/chunks/{index-eJ-WWRdf.js → index-mBWay1Qb.js} +122 -87
  83. package/dist/vue2/chunks/{index-gj1jEXP4.js.map → index-mBWay1Qb.js.map} +1 -1
  84. package/dist/vue2/chunks/{input-Axw-wFj2.js → input-Hqw33WBe.js} +3 -9
  85. package/dist/vue2/chunks/{input-Axw-wFj2.js.map → input-Hqw33WBe.js.map} +1 -1
  86. package/dist/vue2/chunks/{input-6kbd8Pju.js → input-PhJeBN6r.js} +3 -9
  87. package/dist/vue2/chunks/{input-6kbd8Pju.js.map → input-PhJeBN6r.js.map} +1 -1
  88. package/dist/vue2/chunks/{input_group-qVZaS5Bb.js → input_group-ZI7aVGEp.js} +4 -2
  89. package/dist/vue2/chunks/{input_group-m3cWYUfI.js.map → input_group-ZI7aVGEp.js.map} +1 -1
  90. package/dist/vue2/chunks/{input_group-m3cWYUfI.js → input_group-pE6ec9R3.js} +4 -2
  91. package/dist/vue2/chunks/{input_group-qVZaS5Bb.js.map → input_group-pE6ec9R3.js.map} +1 -1
  92. package/dist/vue2/chunks/{keyboard_list_navigation-ScXhrxya.js → keyboard_list_navigation-YIqTuw1W.js} +6 -5
  93. package/dist/{vue3/chunks/keyboard_list_navigation-fJnl_Iox.js.map → vue2/chunks/keyboard_list_navigation-YIqTuw1W.js.map} +1 -1
  94. package/dist/vue2/chunks/{keyboard_list_navigation-fJnl_Iox.js → keyboard_list_navigation-x3D6RcC7.js} +6 -5
  95. package/dist/vue2/chunks/{keyboard_list_navigation-ScXhrxya.js.map → keyboard_list_navigation-x3D6RcC7.js.map} +1 -1
  96. package/dist/vue2/chunks/link_constants-AfTWrr-n.js.map +1 -1
  97. package/dist/vue2/chunks/link_constants-x8NwdqmA.js.map +1 -1
  98. package/dist/vue2/chunks/list_item_constants-EiqkqZvP.js.map +1 -1
  99. package/dist/vue2/chunks/list_item_constants-u1xcN9Dd.js.map +1 -1
  100. package/dist/vue2/chunks/{modal-XOr4kiNZ.js → modal-8X6poIZW.js} +4 -2
  101. package/dist/{vue3/chunks/modal-XOr4kiNZ.js.map → vue2/chunks/modal-8X6poIZW.js.map} +1 -1
  102. package/dist/vue2/chunks/{modal-VgxXAQFP.js → modal-OaWxzqNt.js} +4 -2
  103. package/dist/vue2/chunks/{modal-VgxXAQFP.js.map → modal-OaWxzqNt.js.map} +1 -1
  104. package/dist/vue2/chunks/{notice_action-IRUoLX2d.js → notice_action-qQr3K2TC.js} +71 -46
  105. package/dist/vue2/chunks/{notice_action-IRUoLX2d.js.map → notice_action-qQr3K2TC.js.map} +1 -1
  106. package/dist/vue2/chunks/{notice_action-P6uDyE9x.js → notice_action-tEvvMg7Q.js} +71 -46
  107. package/dist/vue2/chunks/{notice_action-P6uDyE9x.js.map → notice_action-tEvvMg7Q.js.map} +1 -1
  108. package/dist/vue2/chunks/notice_constants-7Qt2CQEY.js.map +1 -1
  109. package/dist/vue2/chunks/notice_constants-UXo9e3bS.js.map +1 -1
  110. package/dist/vue2/chunks/{popover_constants-WsOUIY-m.js → popover_constants-6YkPPbnk.js} +26 -47
  111. package/dist/vue2/chunks/{popover_constants-WsOUIY-m.js.map → popover_constants-6YkPPbnk.js.map} +1 -1
  112. package/dist/vue2/chunks/{popover_constants-XnGWXaxX.js → popover_constants-h9MD6WUt.js} +26 -47
  113. package/dist/{vue3/chunks/popover_constants-WsOUIY-m.js.map → vue2/chunks/popover_constants-h9MD6WUt.js.map} +1 -1
  114. package/dist/vue2/chunks/{sr_only_close_button-ZaGdAHz7.js → sr_only_close_button-2Q9Ny1Nc.js} +24 -18
  115. package/dist/vue2/chunks/{sr_only_close_button-ZaGdAHz7.js.map → sr_only_close_button-2Q9Ny1Nc.js.map} +1 -1
  116. package/dist/vue2/chunks/{sr_only_close_button-81bHIpPu.js → sr_only_close_button-IjMVfBDE.js} +24 -18
  117. package/dist/vue2/chunks/{sr_only_close_button-81bHIpPu.js.map → sr_only_close_button-IjMVfBDE.js.map} +1 -1
  118. package/dist/vue2/chunks/stack_constants-HraCekPm.js.map +1 -1
  119. package/dist/vue2/chunks/stack_constants-SMzMWnAQ.js.map +1 -1
  120. package/dist/vue2/chunks/{tab-FcsV5VmK.js → tab-79yMX6m6.js} +86 -68
  121. package/dist/vue2/chunks/{tab-V4cb44Ry.js.map → tab-79yMX6m6.js.map} +1 -1
  122. package/dist/vue2/chunks/{tab-V4cb44Ry.js → tab-muPOS7JE.js} +86 -68
  123. package/dist/vue2/chunks/{tab-FcsV5VmK.js.map → tab-muPOS7JE.js.map} +1 -1
  124. package/dist/vue2/common/constants.cjs.map +1 -1
  125. package/dist/vue2/common/constants.js.map +1 -1
  126. package/dist/vue2/common/dates.cjs +3 -1
  127. package/dist/vue2/common/dates.cjs.map +1 -1
  128. package/dist/vue2/common/dates.js +3 -1
  129. package/dist/vue2/common/dates.js.map +1 -1
  130. package/dist/vue2/common/emoji.cjs +1 -1
  131. package/dist/vue2/common/emoji.js +1 -1
  132. package/dist/vue2/common/mixins.cjs +3 -3
  133. package/dist/vue2/common/mixins.js +3 -3
  134. package/dist/vue2/common/utils.cjs +8 -44
  135. package/dist/vue2/common/utils.cjs.map +1 -1
  136. package/dist/vue2/common/utils.js +8 -44
  137. package/dist/vue2/common/utils.js.map +1 -1
  138. package/dist/vue2/common/validators.cjs.map +1 -1
  139. package/dist/vue2/common/validators.js.map +1 -1
  140. package/dist/vue2/component-documentation.json +1 -1
  141. package/dist/vue2/dialtone-vue.cjs +12 -12
  142. package/dist/vue2/dialtone-vue.js +12 -12
  143. package/dist/vue2/lib/attachment-carousel.cjs +172 -48
  144. package/dist/vue2/lib/attachment-carousel.cjs.map +1 -1
  145. package/dist/vue2/lib/attachment-carousel.js +172 -48
  146. package/dist/vue2/lib/attachment-carousel.js.map +1 -1
  147. package/dist/vue2/lib/avatar.cjs +75 -58
  148. package/dist/vue2/lib/avatar.cjs.map +1 -1
  149. package/dist/vue2/lib/avatar.js +75 -58
  150. package/dist/vue2/lib/avatar.js.map +1 -1
  151. package/dist/vue2/lib/badge.cjs +31 -20
  152. package/dist/vue2/lib/badge.cjs.map +1 -1
  153. package/dist/vue2/lib/badge.js +31 -20
  154. package/dist/vue2/lib/badge.js.map +1 -1
  155. package/dist/vue2/lib/banner.cjs +53 -29
  156. package/dist/vue2/lib/banner.cjs.map +1 -1
  157. package/dist/vue2/lib/banner.js +53 -29
  158. package/dist/vue2/lib/banner.js.map +1 -1
  159. package/dist/vue2/lib/breadcrumbs.cjs +36 -30
  160. package/dist/vue2/lib/breadcrumbs.cjs.map +1 -1
  161. package/dist/vue2/lib/breadcrumbs.js +36 -30
  162. package/dist/vue2/lib/breadcrumbs.js.map +1 -1
  163. package/dist/vue2/lib/button-group.cjs +7 -14
  164. package/dist/vue2/lib/button-group.cjs.map +1 -1
  165. package/dist/vue2/lib/button-group.js +7 -14
  166. package/dist/vue2/lib/button-group.js.map +1 -1
  167. package/dist/vue2/lib/button.cjs +55 -62
  168. package/dist/vue2/lib/button.cjs.map +1 -1
  169. package/dist/vue2/lib/button.js +55 -62
  170. package/dist/vue2/lib/button.js.map +1 -1
  171. package/dist/vue2/lib/callbar-button-with-popover.cjs +91 -23
  172. package/dist/vue2/lib/callbar-button-with-popover.cjs.map +1 -1
  173. package/dist/vue2/lib/callbar-button-with-popover.js +91 -23
  174. package/dist/vue2/lib/callbar-button-with-popover.js.map +1 -1
  175. package/dist/vue2/lib/callbar-button.cjs +49 -33
  176. package/dist/vue2/lib/callbar-button.cjs.map +1 -1
  177. package/dist/vue2/lib/callbar-button.js +49 -33
  178. package/dist/vue2/lib/callbar-button.js.map +1 -1
  179. package/dist/vue2/lib/callbox.cjs +78 -15
  180. package/dist/vue2/lib/callbox.cjs.map +1 -1
  181. package/dist/vue2/lib/callbox.js +78 -15
  182. package/dist/vue2/lib/callbox.js.map +1 -1
  183. package/dist/vue2/lib/card.cjs +16 -23
  184. package/dist/vue2/lib/card.cjs.map +1 -1
  185. package/dist/vue2/lib/card.js +16 -23
  186. package/dist/vue2/lib/card.js.map +1 -1
  187. package/dist/vue2/lib/checkbox-group.cjs +3 -15
  188. package/dist/vue2/lib/checkbox-group.cjs.map +1 -1
  189. package/dist/vue2/lib/checkbox-group.js +3 -15
  190. package/dist/vue2/lib/checkbox-group.js.map +1 -1
  191. package/dist/vue2/lib/checkbox.cjs +52 -16
  192. package/dist/vue2/lib/checkbox.cjs.map +1 -1
  193. package/dist/vue2/lib/checkbox.js +52 -16
  194. package/dist/vue2/lib/checkbox.js.map +1 -1
  195. package/dist/vue2/lib/chip.cjs +58 -26
  196. package/dist/vue2/lib/chip.cjs.map +1 -1
  197. package/dist/vue2/lib/chip.js +58 -26
  198. package/dist/vue2/lib/chip.js.map +1 -1
  199. package/dist/vue2/lib/codeblock.cjs +4 -11
  200. package/dist/vue2/lib/codeblock.cjs.map +1 -1
  201. package/dist/vue2/lib/codeblock.js +4 -11
  202. package/dist/vue2/lib/codeblock.js.map +1 -1
  203. package/dist/vue2/lib/collapsible.cjs +91 -34
  204. package/dist/vue2/lib/collapsible.cjs.map +1 -1
  205. package/dist/vue2/lib/collapsible.js +91 -34
  206. package/dist/vue2/lib/collapsible.js.map +1 -1
  207. package/dist/vue2/lib/combobox-multi-select.cjs +131 -38
  208. package/dist/vue2/lib/combobox-multi-select.cjs.map +1 -1
  209. package/dist/vue2/lib/combobox-multi-select.js +131 -38
  210. package/dist/vue2/lib/combobox-multi-select.js.map +1 -1
  211. package/dist/vue2/lib/combobox-with-popover.cjs +130 -39
  212. package/dist/vue2/lib/combobox-with-popover.cjs.map +1 -1
  213. package/dist/vue2/lib/combobox-with-popover.js +130 -39
  214. package/dist/vue2/lib/combobox-with-popover.js.map +1 -1
  215. package/dist/vue2/lib/combobox.cjs +3 -3
  216. package/dist/vue2/lib/combobox.js +3 -3
  217. package/dist/vue2/lib/contact-centers-row.cjs +86 -29
  218. package/dist/vue2/lib/contact-centers-row.cjs.map +1 -1
  219. package/dist/vue2/lib/contact-centers-row.js +86 -29
  220. package/dist/vue2/lib/contact-centers-row.js.map +1 -1
  221. package/dist/vue2/lib/contact-info.cjs +95 -24
  222. package/dist/vue2/lib/contact-info.cjs.map +1 -1
  223. package/dist/vue2/lib/contact-info.js +95 -24
  224. package/dist/vue2/lib/contact-info.js.map +1 -1
  225. package/dist/vue2/lib/contact-row.cjs +61 -18
  226. package/dist/vue2/lib/contact-row.cjs.map +1 -1
  227. package/dist/vue2/lib/contact-row.js +61 -18
  228. package/dist/vue2/lib/contact-row.js.map +1 -1
  229. package/dist/vue2/lib/datepicker.cjs +361 -102
  230. package/dist/vue2/lib/datepicker.cjs.map +1 -1
  231. package/dist/vue2/lib/datepicker.js +361 -102
  232. package/dist/vue2/lib/datepicker.js.map +1 -1
  233. package/dist/vue2/lib/description-list.cjs +11 -12
  234. package/dist/vue2/lib/description-list.cjs.map +1 -1
  235. package/dist/vue2/lib/description-list.js +11 -12
  236. package/dist/vue2/lib/description-list.js.map +1 -1
  237. package/dist/vue2/lib/dropdown.cjs +13 -17
  238. package/dist/vue2/lib/dropdown.cjs.map +1 -1
  239. package/dist/vue2/lib/dropdown.js +13 -17
  240. package/dist/vue2/lib/dropdown.js.map +1 -1
  241. package/dist/vue2/lib/editor.cjs +409 -109
  242. package/dist/vue2/lib/editor.cjs.map +1 -1
  243. package/dist/vue2/lib/editor.js +409 -109
  244. package/dist/vue2/lib/editor.js.map +1 -1
  245. package/dist/vue2/lib/emoji-picker.cjs +512 -234
  246. package/dist/vue2/lib/emoji-picker.cjs.map +1 -1
  247. package/dist/vue2/lib/emoji-picker.js +512 -234
  248. package/dist/vue2/lib/emoji-picker.js.map +1 -1
  249. package/dist/vue2/lib/emoji-row.cjs +69 -31
  250. package/dist/vue2/lib/emoji-row.cjs.map +1 -1
  251. package/dist/vue2/lib/emoji-row.js +69 -31
  252. package/dist/vue2/lib/emoji-row.js.map +1 -1
  253. package/dist/vue2/lib/emoji-text-wrapper.cjs +14 -22
  254. package/dist/vue2/lib/emoji-text-wrapper.cjs.map +1 -1
  255. package/dist/vue2/lib/emoji-text-wrapper.js +14 -22
  256. package/dist/vue2/lib/emoji-text-wrapper.js.map +1 -1
  257. package/dist/vue2/lib/emoji.cjs +40 -13
  258. package/dist/vue2/lib/emoji.cjs.map +1 -1
  259. package/dist/vue2/lib/emoji.js +40 -13
  260. package/dist/vue2/lib/emoji.js.map +1 -1
  261. package/dist/vue2/lib/empty-state.cjs +27 -12
  262. package/dist/vue2/lib/empty-state.cjs.map +1 -1
  263. package/dist/vue2/lib/empty-state.js +27 -12
  264. package/dist/vue2/lib/empty-state.js.map +1 -1
  265. package/dist/vue2/lib/feed-item-row.cjs +106 -27
  266. package/dist/vue2/lib/feed-item-row.cjs.map +1 -1
  267. package/dist/vue2/lib/feed-item-row.js +106 -27
  268. package/dist/vue2/lib/feed-item-row.js.map +1 -1
  269. package/dist/vue2/lib/feed-pill.cjs +90 -35
  270. package/dist/vue2/lib/feed-pill.cjs.map +1 -1
  271. package/dist/vue2/lib/feed-pill.js +90 -35
  272. package/dist/vue2/lib/feed-pill.js.map +1 -1
  273. package/dist/vue2/lib/general-row.cjs +184 -75
  274. package/dist/vue2/lib/general-row.cjs.map +1 -1
  275. package/dist/vue2/lib/general-row.js +184 -75
  276. package/dist/vue2/lib/general-row.js.map +1 -1
  277. package/dist/vue2/lib/group-row.cjs +27 -16
  278. package/dist/vue2/lib/group-row.cjs.map +1 -1
  279. package/dist/vue2/lib/group-row.js +27 -16
  280. package/dist/vue2/lib/group-row.js.map +1 -1
  281. package/dist/vue2/lib/grouped-chip.cjs +68 -20
  282. package/dist/vue2/lib/grouped-chip.cjs.map +1 -1
  283. package/dist/vue2/lib/grouped-chip.js +68 -20
  284. package/dist/vue2/lib/grouped-chip.js.map +1 -1
  285. package/dist/vue2/lib/hovercard.cjs +71 -41
  286. package/dist/vue2/lib/hovercard.cjs.map +1 -1
  287. package/dist/vue2/lib/hovercard.js +71 -41
  288. package/dist/vue2/lib/hovercard.js.map +1 -1
  289. package/dist/vue2/lib/icon.cjs +10 -12
  290. package/dist/vue2/lib/icon.cjs.map +1 -1
  291. package/dist/vue2/lib/icon.js +10 -12
  292. package/dist/vue2/lib/icon.js.map +1 -1
  293. package/dist/vue2/lib/illustration.cjs +9 -12
  294. package/dist/vue2/lib/illustration.cjs.map +1 -1
  295. package/dist/vue2/lib/illustration.js +9 -12
  296. package/dist/vue2/lib/illustration.js.map +1 -1
  297. package/dist/vue2/lib/image-viewer.cjs +98 -23
  298. package/dist/vue2/lib/image-viewer.cjs.map +1 -1
  299. package/dist/vue2/lib/image-viewer.js +98 -23
  300. package/dist/vue2/lib/image-viewer.js.map +1 -1
  301. package/dist/vue2/lib/input-group.cjs +24 -14
  302. package/dist/vue2/lib/input-group.cjs.map +1 -1
  303. package/dist/vue2/lib/input-group.js +24 -14
  304. package/dist/vue2/lib/input-group.js.map +1 -1
  305. package/dist/vue2/lib/input.cjs +108 -40
  306. package/dist/vue2/lib/input.cjs.map +1 -1
  307. package/dist/vue2/lib/input.js +108 -40
  308. package/dist/vue2/lib/input.js.map +1 -1
  309. package/dist/vue2/lib/item-layout.cjs +42 -11
  310. package/dist/vue2/lib/item-layout.cjs.map +1 -1
  311. package/dist/vue2/lib/item-layout.js +42 -11
  312. package/dist/vue2/lib/item-layout.js.map +1 -1
  313. package/dist/vue2/lib/ivr-node.cjs +135 -47
  314. package/dist/vue2/lib/ivr-node.cjs.map +1 -1
  315. package/dist/vue2/lib/ivr-node.js +135 -47
  316. package/dist/vue2/lib/ivr-node.js.map +1 -1
  317. package/dist/vue2/lib/keyboard-shortcut.cjs +35 -23
  318. package/dist/vue2/lib/keyboard-shortcut.cjs.map +1 -1
  319. package/dist/vue2/lib/keyboard-shortcut.js +35 -23
  320. package/dist/vue2/lib/keyboard-shortcut.js.map +1 -1
  321. package/dist/vue2/lib/lazy-show.cjs +15 -11
  322. package/dist/vue2/lib/lazy-show.cjs.map +1 -1
  323. package/dist/vue2/lib/lazy-show.js +15 -11
  324. package/dist/vue2/lib/lazy-show.js.map +1 -1
  325. package/dist/vue2/lib/link.cjs +9 -15
  326. package/dist/vue2/lib/link.cjs.map +1 -1
  327. package/dist/vue2/lib/link.js +9 -15
  328. package/dist/vue2/lib/link.js.map +1 -1
  329. package/dist/vue2/lib/list-item-group.cjs +17 -11
  330. package/dist/vue2/lib/list-item-group.cjs.map +1 -1
  331. package/dist/vue2/lib/list-item-group.js +17 -11
  332. package/dist/vue2/lib/list-item-group.js.map +1 -1
  333. package/dist/vue2/lib/list-item.cjs +42 -23
  334. package/dist/vue2/lib/list-item.cjs.map +1 -1
  335. package/dist/vue2/lib/list-item.js +42 -23
  336. package/dist/vue2/lib/list-item.js.map +1 -1
  337. package/dist/vue2/lib/message-input.cjs +367 -97
  338. package/dist/vue2/lib/message-input.cjs.map +1 -1
  339. package/dist/vue2/lib/message-input.js +367 -97
  340. package/dist/vue2/lib/message-input.js.map +1 -1
  341. package/dist/vue2/lib/modal.cjs +94 -36
  342. package/dist/vue2/lib/modal.cjs.map +1 -1
  343. package/dist/vue2/lib/modal.js +94 -36
  344. package/dist/vue2/lib/modal.js.map +1 -1
  345. package/dist/vue2/lib/notice.cjs +40 -21
  346. package/dist/vue2/lib/notice.cjs.map +1 -1
  347. package/dist/vue2/lib/notice.js +40 -21
  348. package/dist/vue2/lib/notice.js.map +1 -1
  349. package/dist/vue2/lib/pagination.cjs +81 -20
  350. package/dist/vue2/lib/pagination.cjs.map +1 -1
  351. package/dist/vue2/lib/pagination.js +81 -20
  352. package/dist/vue2/lib/pagination.js.map +1 -1
  353. package/dist/vue2/lib/popover.cjs +194 -75
  354. package/dist/vue2/lib/popover.cjs.map +1 -1
  355. package/dist/vue2/lib/popover.js +195 -76
  356. package/dist/vue2/lib/popover.js.map +1 -1
  357. package/dist/vue2/lib/presence.cjs +23 -22
  358. package/dist/vue2/lib/presence.cjs.map +1 -1
  359. package/dist/vue2/lib/presence.js +23 -22
  360. package/dist/vue2/lib/presence.js.map +1 -1
  361. package/dist/vue2/lib/radio-group.cjs +2 -11
  362. package/dist/vue2/lib/radio-group.cjs.map +1 -1
  363. package/dist/vue2/lib/radio-group.js +2 -11
  364. package/dist/vue2/lib/radio-group.js.map +1 -1
  365. package/dist/vue2/lib/radio.cjs +47 -15
  366. package/dist/vue2/lib/radio.cjs.map +1 -1
  367. package/dist/vue2/lib/radio.js +47 -15
  368. package/dist/vue2/lib/radio.js.map +1 -1
  369. package/dist/vue2/lib/rich-text-editor.cjs +340 -327
  370. package/dist/vue2/lib/rich-text-editor.cjs.map +1 -1
  371. package/dist/vue2/lib/rich-text-editor.js +340 -327
  372. package/dist/vue2/lib/rich-text-editor.js.map +1 -1
  373. package/dist/vue2/lib/root-layout.cjs +33 -15
  374. package/dist/vue2/lib/root-layout.cjs.map +1 -1
  375. package/dist/vue2/lib/root-layout.js +33 -15
  376. package/dist/vue2/lib/root-layout.js.map +1 -1
  377. package/dist/vue2/lib/scrollbar-directive.cjs.map +1 -1
  378. package/dist/vue2/lib/scrollbar-directive.js.map +1 -1
  379. package/dist/vue2/lib/select-menu.cjs +52 -33
  380. package/dist/vue2/lib/select-menu.cjs.map +1 -1
  381. package/dist/vue2/lib/select-menu.js +52 -33
  382. package/dist/vue2/lib/select-menu.js.map +1 -1
  383. package/dist/vue2/lib/settings-menu-button.cjs +42 -16
  384. package/dist/vue2/lib/settings-menu-button.cjs.map +1 -1
  385. package/dist/vue2/lib/settings-menu-button.js +42 -16
  386. package/dist/vue2/lib/settings-menu-button.js.map +1 -1
  387. package/dist/vue2/lib/skeleton.cjs +118 -93
  388. package/dist/vue2/lib/skeleton.cjs.map +1 -1
  389. package/dist/vue2/lib/skeleton.js +118 -93
  390. package/dist/vue2/lib/skeleton.js.map +1 -1
  391. package/dist/vue2/lib/split-button.cjs +164 -64
  392. package/dist/vue2/lib/split-button.cjs.map +1 -1
  393. package/dist/vue2/lib/split-button.js +164 -64
  394. package/dist/vue2/lib/split-button.js.map +1 -1
  395. package/dist/vue2/lib/stack.cjs +21 -33
  396. package/dist/vue2/lib/stack.cjs.map +1 -1
  397. package/dist/vue2/lib/stack.js +21 -33
  398. package/dist/vue2/lib/stack.js.map +1 -1
  399. package/dist/vue2/lib/tabs.cjs +20 -13
  400. package/dist/vue2/lib/tabs.cjs.map +1 -1
  401. package/dist/vue2/lib/tabs.js +20 -13
  402. package/dist/vue2/lib/tabs.js.map +1 -1
  403. package/dist/vue2/lib/time-pill.cjs +8 -11
  404. package/dist/vue2/lib/time-pill.cjs.map +1 -1
  405. package/dist/vue2/lib/time-pill.js +8 -11
  406. package/dist/vue2/lib/time-pill.js.map +1 -1
  407. package/dist/vue2/lib/toast.cjs +42 -21
  408. package/dist/vue2/lib/toast.cjs.map +1 -1
  409. package/dist/vue2/lib/toast.js +42 -21
  410. package/dist/vue2/lib/toast.js.map +1 -1
  411. package/dist/vue2/lib/toggle.cjs +28 -24
  412. package/dist/vue2/lib/toggle.cjs.map +1 -1
  413. package/dist/vue2/lib/toggle.js +28 -24
  414. package/dist/vue2/lib/toggle.js.map +1 -1
  415. package/dist/vue2/lib/tooltip-directive.cjs +32 -26
  416. package/dist/vue2/lib/tooltip-directive.cjs.map +1 -1
  417. package/dist/vue2/lib/tooltip-directive.js +32 -26
  418. package/dist/vue2/lib/tooltip-directive.js.map +1 -1
  419. package/dist/vue2/lib/tooltip.cjs +31 -21
  420. package/dist/vue2/lib/tooltip.cjs.map +1 -1
  421. package/dist/vue2/lib/tooltip.js +32 -22
  422. package/dist/vue2/lib/tooltip.js.map +1 -1
  423. package/dist/vue2/lib/top-banner-info.cjs +18 -21
  424. package/dist/vue2/lib/top-banner-info.cjs.map +1 -1
  425. package/dist/vue2/lib/top-banner-info.js +18 -21
  426. package/dist/vue2/lib/top-banner-info.js.map +1 -1
  427. package/dist/vue2/lib/unread-pill.cjs +18 -12
  428. package/dist/vue2/lib/unread-pill.cjs.map +1 -1
  429. package/dist/vue2/lib/unread-pill.js +18 -12
  430. package/dist/vue2/lib/unread-pill.js.map +1 -1
  431. package/dist/vue2/lib/validation-messages.cjs +23 -16
  432. package/dist/vue2/lib/validation-messages.cjs.map +1 -1
  433. package/dist/vue2/lib/validation-messages.js +23 -16
  434. package/dist/vue2/lib/validation-messages.js.map +1 -1
  435. package/dist/vue2/style.css +5 -0
  436. package/dist/vue2/types/common/emoji/index.d.ts +2 -59236
  437. package/dist/vue2/types/common/emoji/index.d.ts.map +1 -1
  438. package/dist/vue2/types/components/button/button.vue.d.ts +1 -1
  439. package/dist/vue2/types/components/chip/chip.vue.d.ts +1 -1
  440. package/dist/vue2/types/components/combobox/combobox.vue.d.ts +1 -1
  441. package/dist/vue2/types/components/icon/icon.vue.d.ts +2 -2
  442. package/dist/vue2/types/components/icon/icon_constants.d.ts +1 -1
  443. package/dist/vue2/types/components/icon/icon_constants.d.ts.map +1 -1
  444. package/dist/vue2/types/components/illustration/illustration.vue.d.ts +2 -2
  445. package/dist/vue2/types/components/illustration/illustration_constants.d.ts +1 -1
  446. package/dist/vue2/types/components/illustration/illustration_constants.d.ts.map +1 -1
  447. package/dist/vue2/types/components/image_viewer/image_viewer.vue.d.ts +21 -0
  448. package/dist/vue2/types/components/image_viewer/image_viewer.vue.d.ts.map +1 -1
  449. package/dist/vue2/types/components/input/input.vue.d.ts +1 -1
  450. package/dist/vue2/types/components/modal/modal.vue.d.ts +1 -1
  451. package/dist/vue2/types/components/rich_text_editor/extensions/custom_link/custom_link.d.ts.map +1 -1
  452. package/dist/vue2/types/components/rich_text_editor/mention_suggestion.d.ts.map +1 -1
  453. package/dist/vue2/types/components/rich_text_editor/rich_text_editor.vue.d.ts +5 -3
  454. package/dist/vue2/types/components/rich_text_editor/rich_text_editor.vue.d.ts.map +1 -1
  455. package/dist/vue2/types/components/split_button/split_button-alpha.vue.d.ts +1 -1
  456. package/dist/vue2/types/components/toast/toast.vue.d.ts +1 -1
  457. package/dist/vue2/types/components/tooltip/tooltip.vue.d.ts +1 -1
  458. package/dist/vue2/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts +1 -1
  459. package/dist/vue2/types/recipes/conversation_view/editor/editor.vue.d.ts +1 -1
  460. package/dist/vue2/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +1 -1
  461. package/dist/vue2/types/recipes/conversation_view/message_input/message_input.vue.d.ts +1 -1
  462. package/dist/vue3/chunks/{dropdown-oA-_Gotg.js → dropdown-6HXkh24e.js} +40 -45
  463. package/dist/vue3/chunks/{dropdown-p-Azgwov.js.map → dropdown-6HXkh24e.js.map} +1 -1
  464. package/dist/vue3/chunks/{dropdown-p-Azgwov.js → dropdown-QNvAb160.js} +40 -45
  465. package/dist/vue3/chunks/{dropdown-oA-_Gotg.js.map → dropdown-QNvAb160.js.map} +1 -1
  466. package/dist/vue3/chunks/dropdown_constants-2pGCXy7m.js.map +1 -1
  467. package/dist/vue3/chunks/dropdown_constants-w1MXGC3Z.js.map +1 -1
  468. package/dist/vue3/chunks/{icon_constants-QYpmdE0R.js → icon_constants-bvhFNOPu.js} +3 -2
  469. package/dist/vue3/chunks/icon_constants-bvhFNOPu.js.map +1 -0
  470. package/dist/vue3/chunks/{icon_constants-Dy4MEUJL.js → icon_constants-gIQj4mf7.js} +3 -2
  471. package/dist/vue3/chunks/icon_constants-gIQj4mf7.js.map +1 -0
  472. package/dist/vue3/chunks/{index-b_MgDylR.js → index-T15rAIdX.js} +71 -84
  473. package/dist/vue3/chunks/{index-4qgKeErp.js.map → index-T15rAIdX.js.map} +1 -1
  474. package/dist/vue3/chunks/{index-GVD15GIB.js → index-dfdrE-3M.js} +3 -12
  475. package/dist/vue3/chunks/{index-GVD15GIB.js.map → index-dfdrE-3M.js.map} +1 -1
  476. package/dist/vue3/chunks/{index-lu2o2f4r.js → index-fEp0B-5Z.js} +3 -12
  477. package/dist/vue3/chunks/{index-lu2o2f4r.js.map → index-fEp0B-5Z.js.map} +1 -1
  478. package/dist/vue3/chunks/{index-4qgKeErp.js → index-ouh7Bvm-.js} +71 -84
  479. package/dist/vue3/chunks/{index-b_MgDylR.js.map → index-ouh7Bvm-.js.map} +1 -1
  480. package/dist/vue3/chunks/{input-NmYDD5bn.js → input-HIysg24t.js} +3 -9
  481. package/dist/vue3/chunks/{input-NmYDD5bn.js.map → input-HIysg24t.js.map} +1 -1
  482. package/dist/vue3/chunks/{input-ttnte8zB.js → input-dLLo3Wtg.js} +3 -9
  483. package/dist/vue3/chunks/{input-ttnte8zB.js.map → input-dLLo3Wtg.js.map} +1 -1
  484. package/dist/vue3/chunks/{input_group-jWnq2DJT.js → input_group-hV1WT2it.js} +4 -2
  485. package/dist/vue3/chunks/{input_group-jWnq2DJT.js.map → input_group-hV1WT2it.js.map} +1 -1
  486. package/dist/vue3/chunks/{input_group-M-D25pOJ.js → input_group-rE6nhye8.js} +4 -2
  487. package/dist/vue3/chunks/{input_group-M-D25pOJ.js.map → input_group-rE6nhye8.js.map} +1 -1
  488. package/dist/vue3/chunks/{keyboard_list_navigation-ScXhrxya.js → keyboard_list_navigation-YIqTuw1W.js} +6 -5
  489. package/dist/{vue2/chunks/keyboard_list_navigation-fJnl_Iox.js.map → vue3/chunks/keyboard_list_navigation-YIqTuw1W.js.map} +1 -1
  490. package/dist/vue3/chunks/{keyboard_list_navigation-fJnl_Iox.js → keyboard_list_navigation-x3D6RcC7.js} +6 -5
  491. package/dist/vue3/chunks/{keyboard_list_navigation-ScXhrxya.js.map → keyboard_list_navigation-x3D6RcC7.js.map} +1 -1
  492. package/dist/vue3/chunks/link_constants-AfTWrr-n.js.map +1 -1
  493. package/dist/vue3/chunks/link_constants-x8NwdqmA.js.map +1 -1
  494. package/dist/vue3/chunks/list_item_constants-EiqkqZvP.js.map +1 -1
  495. package/dist/vue3/chunks/list_item_constants-u1xcN9Dd.js.map +1 -1
  496. package/dist/vue3/chunks/{modal-XOr4kiNZ.js → modal-8X6poIZW.js} +4 -2
  497. package/dist/vue3/chunks/{modal-VgxXAQFP.js.map → modal-8X6poIZW.js.map} +1 -1
  498. package/dist/vue3/chunks/{modal-VgxXAQFP.js → modal-OaWxzqNt.js} +4 -2
  499. package/dist/{vue2/chunks/modal-XOr4kiNZ.js.map → vue3/chunks/modal-OaWxzqNt.js.map} +1 -1
  500. package/dist/vue3/chunks/{notice_action-WTucGhvr.js → notice_action-3ed0uIMN.js} +40 -61
  501. package/dist/vue3/chunks/{notice_action-p-ePanW_.js.map → notice_action-3ed0uIMN.js.map} +1 -1
  502. package/dist/vue3/chunks/{notice_action-p-ePanW_.js → notice_action-e08Lw5W6.js} +40 -61
  503. package/dist/vue3/chunks/{notice_action-WTucGhvr.js.map → notice_action-e08Lw5W6.js.map} +1 -1
  504. package/dist/vue3/chunks/notice_constants-7Qt2CQEY.js.map +1 -1
  505. package/dist/vue3/chunks/notice_constants-UXo9e3bS.js.map +1 -1
  506. package/dist/vue3/chunks/{popover_constants-WsOUIY-m.js → popover_constants-6YkPPbnk.js} +26 -47
  507. package/dist/{vue2/chunks/popover_constants-XnGWXaxX.js.map → vue3/chunks/popover_constants-6YkPPbnk.js.map} +1 -1
  508. package/dist/vue3/chunks/{popover_constants-XnGWXaxX.js → popover_constants-h9MD6WUt.js} +26 -47
  509. package/dist/vue3/chunks/{popover_constants-XnGWXaxX.js.map → popover_constants-h9MD6WUt.js.map} +1 -1
  510. package/dist/vue3/chunks/{sr_only_close_button-3EdsV-dH.js → sr_only_close_button-Ji3Zlts6.js} +4 -4
  511. package/dist/vue3/chunks/{sr_only_close_button-3EdsV-dH.js.map → sr_only_close_button-Ji3Zlts6.js.map} +1 -1
  512. package/dist/vue3/chunks/{sr_only_close_button-xGrHFjwA.js → sr_only_close_button-gKr0Vlbz.js} +4 -4
  513. package/dist/vue3/chunks/{sr_only_close_button-xGrHFjwA.js.map → sr_only_close_button-gKr0Vlbz.js.map} +1 -1
  514. package/dist/vue3/chunks/stack_constants-HraCekPm.js.map +1 -1
  515. package/dist/vue3/chunks/stack_constants-SMzMWnAQ.js.map +1 -1
  516. package/dist/vue3/chunks/{tab-qc3f42Yp.js → tab-X7IvNGTl.js} +46 -49
  517. package/dist/vue3/chunks/{tab-qc3f42Yp.js.map → tab-X7IvNGTl.js.map} +1 -1
  518. package/dist/vue3/chunks/{tab-RTDgnD9-.js → tab-aD6t0MNo.js} +46 -49
  519. package/dist/vue3/chunks/{tab-RTDgnD9-.js.map → tab-aD6t0MNo.js.map} +1 -1
  520. package/dist/vue3/common/constants.cjs.map +1 -1
  521. package/dist/vue3/common/constants.js.map +1 -1
  522. package/dist/vue3/common/dates.cjs +3 -1
  523. package/dist/vue3/common/dates.cjs.map +1 -1
  524. package/dist/vue3/common/dates.js +3 -1
  525. package/dist/vue3/common/dates.js.map +1 -1
  526. package/dist/vue3/common/emoji.cjs +1 -1
  527. package/dist/vue3/common/emoji.js +1 -1
  528. package/dist/vue3/common/mixins.cjs +3 -3
  529. package/dist/vue3/common/mixins.js +3 -3
  530. package/dist/vue3/common/utils.cjs +11 -45
  531. package/dist/vue3/common/utils.cjs.map +1 -1
  532. package/dist/vue3/common/utils.js +11 -45
  533. package/dist/vue3/common/utils.js.map +1 -1
  534. package/dist/vue3/common/validators.cjs.map +1 -1
  535. package/dist/vue3/common/validators.js.map +1 -1
  536. package/dist/vue3/component-documentation.json +1 -1
  537. package/dist/vue3/dialtone-vue.cjs +12 -12
  538. package/dist/vue3/dialtone-vue.js +12 -12
  539. package/dist/vue3/lib/attachment-carousel.cjs +87 -108
  540. package/dist/vue3/lib/attachment-carousel.cjs.map +1 -1
  541. package/dist/vue3/lib/attachment-carousel.js +87 -108
  542. package/dist/vue3/lib/attachment-carousel.js.map +1 -1
  543. package/dist/vue3/lib/avatar.cjs +56 -88
  544. package/dist/vue3/lib/avatar.cjs.map +1 -1
  545. package/dist/vue3/lib/avatar.js +56 -88
  546. package/dist/vue3/lib/avatar.js.map +1 -1
  547. package/dist/vue3/lib/badge.cjs +15 -31
  548. package/dist/vue3/lib/badge.cjs.map +1 -1
  549. package/dist/vue3/lib/badge.js +15 -31
  550. package/dist/vue3/lib/badge.js.map +1 -1
  551. package/dist/vue3/lib/banner.cjs +38 -56
  552. package/dist/vue3/lib/banner.cjs.map +1 -1
  553. package/dist/vue3/lib/banner.js +38 -56
  554. package/dist/vue3/lib/banner.js.map +1 -1
  555. package/dist/vue3/lib/breadcrumbs.cjs +25 -36
  556. package/dist/vue3/lib/breadcrumbs.cjs.map +1 -1
  557. package/dist/vue3/lib/breadcrumbs.js +25 -36
  558. package/dist/vue3/lib/breadcrumbs.js.map +1 -1
  559. package/dist/vue3/lib/button-group.cjs +2 -7
  560. package/dist/vue3/lib/button-group.cjs.map +1 -1
  561. package/dist/vue3/lib/button-group.js +2 -7
  562. package/dist/vue3/lib/button-group.js.map +1 -1
  563. package/dist/vue3/lib/button.cjs +44 -69
  564. package/dist/vue3/lib/button.cjs.map +1 -1
  565. package/dist/vue3/lib/button.js +44 -69
  566. package/dist/vue3/lib/button.js.map +1 -1
  567. package/dist/vue3/lib/callbar-button-with-popover.cjs +68 -81
  568. package/dist/vue3/lib/callbar-button-with-popover.cjs.map +1 -1
  569. package/dist/vue3/lib/callbar-button-with-popover.js +68 -81
  570. package/dist/vue3/lib/callbar-button-with-popover.js.map +1 -1
  571. package/dist/vue3/lib/callbar-button.cjs +32 -45
  572. package/dist/vue3/lib/callbar-button.cjs.map +1 -1
  573. package/dist/vue3/lib/callbar-button.js +32 -45
  574. package/dist/vue3/lib/callbar-button.js.map +1 -1
  575. package/dist/vue3/lib/callbox.cjs +38 -57
  576. package/dist/vue3/lib/callbox.cjs.map +1 -1
  577. package/dist/vue3/lib/callbox.js +38 -57
  578. package/dist/vue3/lib/callbox.js.map +1 -1
  579. package/dist/vue3/lib/card.cjs +13 -33
  580. package/dist/vue3/lib/card.cjs.map +1 -1
  581. package/dist/vue3/lib/card.js +13 -33
  582. package/dist/vue3/lib/card.js.map +1 -1
  583. package/dist/vue3/lib/checkbox-group.cjs +2 -5
  584. package/dist/vue3/lib/checkbox-group.cjs.map +1 -1
  585. package/dist/vue3/lib/checkbox-group.js +2 -5
  586. package/dist/vue3/lib/checkbox-group.js.map +1 -1
  587. package/dist/vue3/lib/checkbox.cjs +41 -45
  588. package/dist/vue3/lib/checkbox.cjs.map +1 -1
  589. package/dist/vue3/lib/checkbox.js +41 -45
  590. package/dist/vue3/lib/checkbox.js.map +1 -1
  591. package/dist/vue3/lib/chip.cjs +38 -53
  592. package/dist/vue3/lib/chip.cjs.map +1 -1
  593. package/dist/vue3/lib/chip.js +38 -53
  594. package/dist/vue3/lib/chip.js.map +1 -1
  595. package/dist/vue3/lib/codeblock.cjs +4 -6
  596. package/dist/vue3/lib/codeblock.cjs.map +1 -1
  597. package/dist/vue3/lib/codeblock.js +4 -6
  598. package/dist/vue3/lib/codeblock.js.map +1 -1
  599. package/dist/vue3/lib/collapsible.cjs +62 -76
  600. package/dist/vue3/lib/collapsible.cjs.map +1 -1
  601. package/dist/vue3/lib/collapsible.js +62 -76
  602. package/dist/vue3/lib/collapsible.js.map +1 -1
  603. package/dist/vue3/lib/combobox-multi-select.cjs +75 -88
  604. package/dist/vue3/lib/combobox-multi-select.cjs.map +1 -1
  605. package/dist/vue3/lib/combobox-multi-select.js +75 -88
  606. package/dist/vue3/lib/combobox-multi-select.js.map +1 -1
  607. package/dist/vue3/lib/combobox-with-popover.cjs +77 -85
  608. package/dist/vue3/lib/combobox-with-popover.cjs.map +1 -1
  609. package/dist/vue3/lib/combobox-with-popover.js +77 -85
  610. package/dist/vue3/lib/combobox-with-popover.js.map +1 -1
  611. package/dist/vue3/lib/combobox.cjs +3 -3
  612. package/dist/vue3/lib/combobox.js +3 -3
  613. package/dist/vue3/lib/contact-centers-row.cjs +65 -89
  614. package/dist/vue3/lib/contact-centers-row.cjs.map +1 -1
  615. package/dist/vue3/lib/contact-centers-row.js +65 -89
  616. package/dist/vue3/lib/contact-centers-row.js.map +1 -1
  617. package/dist/vue3/lib/contact-info.cjs +58 -73
  618. package/dist/vue3/lib/contact-info.cjs.map +1 -1
  619. package/dist/vue3/lib/contact-info.js +58 -73
  620. package/dist/vue3/lib/contact-info.js.map +1 -1
  621. package/dist/vue3/lib/contact-row.cjs +37 -47
  622. package/dist/vue3/lib/contact-row.cjs.map +1 -1
  623. package/dist/vue3/lib/contact-row.js +37 -47
  624. package/dist/vue3/lib/contact-row.js.map +1 -1
  625. package/dist/vue3/lib/datepicker.cjs +267 -263
  626. package/dist/vue3/lib/datepicker.cjs.map +1 -1
  627. package/dist/vue3/lib/datepicker.js +267 -263
  628. package/dist/vue3/lib/datepicker.js.map +1 -1
  629. package/dist/vue3/lib/description-list.cjs +9 -14
  630. package/dist/vue3/lib/description-list.cjs.map +1 -1
  631. package/dist/vue3/lib/description-list.js +9 -14
  632. package/dist/vue3/lib/description-list.js.map +1 -1
  633. package/dist/vue3/lib/dropdown.cjs +6 -6
  634. package/dist/vue3/lib/dropdown.cjs.map +1 -1
  635. package/dist/vue3/lib/dropdown.js +6 -6
  636. package/dist/vue3/lib/dropdown.js.map +1 -1
  637. package/dist/vue3/lib/editor.cjs +312 -249
  638. package/dist/vue3/lib/editor.cjs.map +1 -1
  639. package/dist/vue3/lib/editor.js +312 -249
  640. package/dist/vue3/lib/editor.js.map +1 -1
  641. package/dist/vue3/lib/emoji-picker.cjs +387 -419
  642. package/dist/vue3/lib/emoji-picker.cjs.map +1 -1
  643. package/dist/vue3/lib/emoji-picker.js +387 -419
  644. package/dist/vue3/lib/emoji-picker.js.map +1 -1
  645. package/dist/vue3/lib/emoji-row.cjs +59 -69
  646. package/dist/vue3/lib/emoji-row.cjs.map +1 -1
  647. package/dist/vue3/lib/emoji-row.js +59 -69
  648. package/dist/vue3/lib/emoji-row.js.map +1 -1
  649. package/dist/vue3/lib/emoji-text-wrapper.cjs +13 -12
  650. package/dist/vue3/lib/emoji-text-wrapper.cjs.map +1 -1
  651. package/dist/vue3/lib/emoji-text-wrapper.js +13 -12
  652. package/dist/vue3/lib/emoji-text-wrapper.js.map +1 -1
  653. package/dist/vue3/lib/emoji.cjs +19 -23
  654. package/dist/vue3/lib/emoji.cjs.map +1 -1
  655. package/dist/vue3/lib/emoji.js +19 -23
  656. package/dist/vue3/lib/emoji.js.map +1 -1
  657. package/dist/vue3/lib/empty-state.cjs +20 -30
  658. package/dist/vue3/lib/empty-state.cjs.map +1 -1
  659. package/dist/vue3/lib/empty-state.js +20 -30
  660. package/dist/vue3/lib/empty-state.js.map +1 -1
  661. package/dist/vue3/lib/feed-item-row.cjs +43 -74
  662. package/dist/vue3/lib/feed-item-row.cjs.map +1 -1
  663. package/dist/vue3/lib/feed-item-row.js +43 -74
  664. package/dist/vue3/lib/feed-item-row.js.map +1 -1
  665. package/dist/vue3/lib/feed-pill.cjs +45 -55
  666. package/dist/vue3/lib/feed-pill.cjs.map +1 -1
  667. package/dist/vue3/lib/feed-pill.js +45 -55
  668. package/dist/vue3/lib/feed-pill.js.map +1 -1
  669. package/dist/vue3/lib/general-row.cjs +115 -165
  670. package/dist/vue3/lib/general-row.cjs.map +1 -1
  671. package/dist/vue3/lib/general-row.js +115 -165
  672. package/dist/vue3/lib/general-row.js.map +1 -1
  673. package/dist/vue3/lib/group-row.cjs +7 -9
  674. package/dist/vue3/lib/group-row.cjs.map +1 -1
  675. package/dist/vue3/lib/group-row.js +7 -9
  676. package/dist/vue3/lib/group-row.js.map +1 -1
  677. package/dist/vue3/lib/grouped-chip.cjs +27 -48
  678. package/dist/vue3/lib/grouped-chip.cjs.map +1 -1
  679. package/dist/vue3/lib/grouped-chip.js +27 -48
  680. package/dist/vue3/lib/grouped-chip.js.map +1 -1
  681. package/dist/vue3/lib/hovercard.cjs +25 -33
  682. package/dist/vue3/lib/hovercard.cjs.map +1 -1
  683. package/dist/vue3/lib/hovercard.js +25 -33
  684. package/dist/vue3/lib/hovercard.js.map +1 -1
  685. package/dist/vue3/lib/icon.cjs +1 -1
  686. package/dist/vue3/lib/icon.cjs.map +1 -1
  687. package/dist/vue3/lib/icon.js +1 -1
  688. package/dist/vue3/lib/icon.js.map +1 -1
  689. package/dist/vue3/lib/illustration.cjs +2 -1
  690. package/dist/vue3/lib/illustration.cjs.map +1 -1
  691. package/dist/vue3/lib/illustration.js +2 -1
  692. package/dist/vue3/lib/illustration.js.map +1 -1
  693. package/dist/vue3/lib/image-viewer.cjs +62 -66
  694. package/dist/vue3/lib/image-viewer.cjs.map +1 -1
  695. package/dist/vue3/lib/image-viewer.js +62 -66
  696. package/dist/vue3/lib/image-viewer.js.map +1 -1
  697. package/dist/vue3/lib/input-group.cjs +15 -19
  698. package/dist/vue3/lib/input-group.cjs.map +1 -1
  699. package/dist/vue3/lib/input-group.js +15 -19
  700. package/dist/vue3/lib/input-group.js.map +1 -1
  701. package/dist/vue3/lib/input.cjs +76 -104
  702. package/dist/vue3/lib/input.cjs.map +1 -1
  703. package/dist/vue3/lib/input.js +76 -104
  704. package/dist/vue3/lib/input.js.map +1 -1
  705. package/dist/vue3/lib/item-layout.cjs +10 -27
  706. package/dist/vue3/lib/item-layout.cjs.map +1 -1
  707. package/dist/vue3/lib/item-layout.js +10 -27
  708. package/dist/vue3/lib/item-layout.js.map +1 -1
  709. package/dist/vue3/lib/ivr-node.cjs +80 -89
  710. package/dist/vue3/lib/ivr-node.cjs.map +1 -1
  711. package/dist/vue3/lib/ivr-node.js +80 -89
  712. package/dist/vue3/lib/ivr-node.js.map +1 -1
  713. package/dist/vue3/lib/keyboard-shortcut.cjs +26 -31
  714. package/dist/vue3/lib/keyboard-shortcut.cjs.map +1 -1
  715. package/dist/vue3/lib/keyboard-shortcut.js +26 -31
  716. package/dist/vue3/lib/keyboard-shortcut.js.map +1 -1
  717. package/dist/vue3/lib/lazy-show.cjs +6 -8
  718. package/dist/vue3/lib/lazy-show.cjs.map +1 -1
  719. package/dist/vue3/lib/lazy-show.js +6 -8
  720. package/dist/vue3/lib/lazy-show.js.map +1 -1
  721. package/dist/vue3/lib/link.cjs +2 -7
  722. package/dist/vue3/lib/link.cjs.map +1 -1
  723. package/dist/vue3/lib/link.js +2 -7
  724. package/dist/vue3/lib/link.js.map +1 -1
  725. package/dist/vue3/lib/list-item-group.cjs +7 -14
  726. package/dist/vue3/lib/list-item-group.cjs.map +1 -1
  727. package/dist/vue3/lib/list-item-group.js +7 -14
  728. package/dist/vue3/lib/list-item-group.js.map +1 -1
  729. package/dist/vue3/lib/list-item.cjs +24 -25
  730. package/dist/vue3/lib/list-item.cjs.map +1 -1
  731. package/dist/vue3/lib/list-item.js +24 -25
  732. package/dist/vue3/lib/list-item.js.map +1 -1
  733. package/dist/vue3/lib/message-input.cjs +239 -277
  734. package/dist/vue3/lib/message-input.cjs.map +1 -1
  735. package/dist/vue3/lib/message-input.js +240 -278
  736. package/dist/vue3/lib/message-input.js.map +1 -1
  737. package/dist/vue3/lib/modal.cjs +59 -99
  738. package/dist/vue3/lib/modal.cjs.map +1 -1
  739. package/dist/vue3/lib/modal.js +59 -99
  740. package/dist/vue3/lib/modal.js.map +1 -1
  741. package/dist/vue3/lib/notice.cjs +33 -46
  742. package/dist/vue3/lib/notice.cjs.map +1 -1
  743. package/dist/vue3/lib/notice.js +33 -46
  744. package/dist/vue3/lib/notice.js.map +1 -1
  745. package/dist/vue3/lib/pagination.cjs +49 -61
  746. package/dist/vue3/lib/pagination.cjs.map +1 -1
  747. package/dist/vue3/lib/pagination.js +49 -61
  748. package/dist/vue3/lib/pagination.js.map +1 -1
  749. package/dist/vue3/lib/popover.cjs +133 -156
  750. package/dist/vue3/lib/popover.cjs.map +1 -1
  751. package/dist/vue3/lib/popover.js +134 -157
  752. package/dist/vue3/lib/popover.js.map +1 -1
  753. package/dist/vue3/lib/presence.cjs +9 -17
  754. package/dist/vue3/lib/presence.cjs.map +1 -1
  755. package/dist/vue3/lib/presence.js +9 -17
  756. package/dist/vue3/lib/presence.js.map +1 -1
  757. package/dist/vue3/lib/radio-group.cjs +1 -1
  758. package/dist/vue3/lib/radio-group.cjs.map +1 -1
  759. package/dist/vue3/lib/radio-group.js +1 -1
  760. package/dist/vue3/lib/radio-group.js.map +1 -1
  761. package/dist/vue3/lib/radio.cjs +34 -41
  762. package/dist/vue3/lib/radio.cjs.map +1 -1
  763. package/dist/vue3/lib/radio.js +34 -41
  764. package/dist/vue3/lib/radio.js.map +1 -1
  765. package/dist/vue3/lib/rich-text-editor.cjs +297 -298
  766. package/dist/vue3/lib/rich-text-editor.cjs.map +1 -1
  767. package/dist/vue3/lib/rich-text-editor.js +297 -298
  768. package/dist/vue3/lib/rich-text-editor.js.map +1 -1
  769. package/dist/vue3/lib/root-layout.cjs +24 -39
  770. package/dist/vue3/lib/root-layout.cjs.map +1 -1
  771. package/dist/vue3/lib/root-layout.js +24 -39
  772. package/dist/vue3/lib/root-layout.js.map +1 -1
  773. package/dist/vue3/lib/scrollbar-directive.cjs.map +1 -1
  774. package/dist/vue3/lib/scrollbar-directive.js.map +1 -1
  775. package/dist/vue3/lib/scroller.cjs +100 -83
  776. package/dist/vue3/lib/scroller.cjs.map +1 -1
  777. package/dist/vue3/lib/scroller.js +100 -83
  778. package/dist/vue3/lib/scroller.js.map +1 -1
  779. package/dist/vue3/lib/select-menu.cjs +40 -67
  780. package/dist/vue3/lib/select-menu.cjs.map +1 -1
  781. package/dist/vue3/lib/select-menu.js +40 -67
  782. package/dist/vue3/lib/select-menu.js.map +1 -1
  783. package/dist/vue3/lib/settings-menu-button.cjs +10 -16
  784. package/dist/vue3/lib/settings-menu-button.cjs.map +1 -1
  785. package/dist/vue3/lib/settings-menu-button.js +10 -16
  786. package/dist/vue3/lib/settings-menu-button.js.map +1 -1
  787. package/dist/vue3/lib/skeleton.cjs +74 -93
  788. package/dist/vue3/lib/skeleton.cjs.map +1 -1
  789. package/dist/vue3/lib/skeleton.js +74 -93
  790. package/dist/vue3/lib/skeleton.js.map +1 -1
  791. package/dist/vue3/lib/split-button.cjs +68 -74
  792. package/dist/vue3/lib/split-button.cjs.map +1 -1
  793. package/dist/vue3/lib/split-button.js +68 -74
  794. package/dist/vue3/lib/split-button.js.map +1 -1
  795. package/dist/vue3/lib/stack.cjs +18 -26
  796. package/dist/vue3/lib/stack.cjs.map +1 -1
  797. package/dist/vue3/lib/stack.js +18 -26
  798. package/dist/vue3/lib/stack.js.map +1 -1
  799. package/dist/vue3/lib/tabs.cjs +3 -7
  800. package/dist/vue3/lib/tabs.cjs.map +1 -1
  801. package/dist/vue3/lib/tabs.js +3 -7
  802. package/dist/vue3/lib/tabs.js.map +1 -1
  803. package/dist/vue3/lib/time-pill.cjs.map +1 -1
  804. package/dist/vue3/lib/time-pill.js.map +1 -1
  805. package/dist/vue3/lib/toast.cjs +35 -51
  806. package/dist/vue3/lib/toast.cjs.map +1 -1
  807. package/dist/vue3/lib/toast.js +35 -51
  808. package/dist/vue3/lib/toast.js.map +1 -1
  809. package/dist/vue3/lib/toggle.cjs +24 -34
  810. package/dist/vue3/lib/toggle.cjs.map +1 -1
  811. package/dist/vue3/lib/toggle.js +24 -34
  812. package/dist/vue3/lib/toggle.js.map +1 -1
  813. package/dist/vue3/lib/tooltip-directive.cjs +26 -19
  814. package/dist/vue3/lib/tooltip-directive.cjs.map +1 -1
  815. package/dist/vue3/lib/tooltip-directive.js +26 -19
  816. package/dist/vue3/lib/tooltip-directive.js.map +1 -1
  817. package/dist/vue3/lib/tooltip.cjs +21 -32
  818. package/dist/vue3/lib/tooltip.cjs.map +1 -1
  819. package/dist/vue3/lib/tooltip.js +22 -33
  820. package/dist/vue3/lib/tooltip.js.map +1 -1
  821. package/dist/vue3/lib/top-banner-info.cjs +8 -23
  822. package/dist/vue3/lib/top-banner-info.cjs.map +1 -1
  823. package/dist/vue3/lib/top-banner-info.js +8 -23
  824. package/dist/vue3/lib/top-banner-info.js.map +1 -1
  825. package/dist/vue3/lib/unread-pill.cjs +8 -11
  826. package/dist/vue3/lib/unread-pill.cjs.map +1 -1
  827. package/dist/vue3/lib/unread-pill.js +8 -11
  828. package/dist/vue3/lib/unread-pill.js.map +1 -1
  829. package/dist/vue3/lib/validation-messages.cjs +14 -17
  830. package/dist/vue3/lib/validation-messages.cjs.map +1 -1
  831. package/dist/vue3/lib/validation-messages.js +14 -17
  832. package/dist/vue3/lib/validation-messages.js.map +1 -1
  833. package/dist/vue3/style.css +5 -0
  834. package/dist/vue3/types/components/button/button.vue.d.ts +1 -1
  835. package/dist/vue3/types/components/chip/chip.vue.d.ts +1 -1
  836. package/dist/vue3/types/components/combobox/combobox.vue.d.ts +1 -1
  837. package/dist/vue3/types/components/datepicker/modules/month-year-picker.vue.d.ts +1 -1
  838. package/dist/vue3/types/components/icon/icon.vue.d.ts +2 -2
  839. package/dist/vue3/types/components/icon/icon_constants.d.ts +1 -1
  840. package/dist/vue3/types/components/icon/icon_constants.d.ts.map +1 -1
  841. package/dist/vue3/types/components/illustration/illustration_constants.d.ts +1 -1
  842. package/dist/vue3/types/components/illustration/illustration_constants.d.ts.map +1 -1
  843. package/dist/vue3/types/components/image_viewer/image_viewer.vue.d.ts +21 -0
  844. package/dist/vue3/types/components/image_viewer/image_viewer.vue.d.ts.map +1 -1
  845. package/dist/vue3/types/components/input/input.vue.d.ts +1 -1
  846. package/dist/vue3/types/components/modal/modal.vue.d.ts +1 -1
  847. package/dist/vue3/types/components/notice/notice.vue.d.ts +1 -1
  848. package/dist/vue3/types/components/radio/radio.vue.d.ts +1 -1
  849. package/dist/vue3/types/components/rich_text_editor/extensions/custom_link/custom_link.d.ts.map +1 -1
  850. package/dist/vue3/types/components/rich_text_editor/mention_suggestion.d.ts.map +1 -1
  851. package/dist/vue3/types/components/rich_text_editor/rich_text_editor.vue.d.ts +5 -3
  852. package/dist/vue3/types/components/rich_text_editor/rich_text_editor.vue.d.ts.map +1 -1
  853. package/dist/vue3/types/components/scroller/modules/scroller_item.vue.d.ts +1 -1
  854. package/dist/vue3/types/components/split_button/split_button-alpha.vue.d.ts +1 -1
  855. package/dist/vue3/types/components/tabs/tab.vue.d.ts +1 -1
  856. package/dist/vue3/types/components/toast/toast.vue.d.ts +2 -2
  857. package/dist/vue3/types/components/tooltip/tooltip.vue.d.ts +1 -1
  858. package/dist/vue3/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts +1 -1
  859. package/dist/vue3/types/recipes/conversation_view/editor/editor.vue.d.ts +1 -1
  860. package/dist/vue3/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +1 -1
  861. package/dist/vue3/types/recipes/conversation_view/message_input/message_input.vue.d.ts +1 -1
  862. package/package.json +3 -3
  863. package/dist/chunks/tokens-base-dark-BC3U5KoN.js +0 -4
  864. package/dist/chunks/tokens-base-dark-zbBpWlfP.js +0 -1
  865. package/dist/chunks/tokens-base-light-PCrr7t8W.js +0 -4
  866. package/dist/chunks/tokens-base-light-dvWvBHbM.js +0 -1
  867. package/dist/vue2/chunks/icon_constants-Dy4MEUJL.js.map +0 -1
  868. package/dist/vue2/chunks/icon_constants-QYpmdE0R.js.map +0 -1
  869. package/dist/vue3/chunks/icon_constants-Dy4MEUJL.js.map +0 -1
  870. package/dist/vue3/chunks/icon_constants-QYpmdE0R.js.map +0 -1
@@ -3,7 +3,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const vue = require("vue");
4
4
  const common_constants = require("../common/constants.cjs");
5
5
  const common_utils = require("../common/utils.cjs");
6
- const input = require("../chunks/input-ttnte8zB.js");
6
+ const input = require("../chunks/input-dLLo3Wtg.js");
7
7
  const _pluginVue_exportHelper = require("../chunks/_plugin-vue_export-helper-fhnQq0tA.js");
8
8
  const lib_validationMessages = require("./validation-messages.cjs");
9
9
  require("../common/validators.cjs");
@@ -51,7 +51,9 @@ const optionsValidator = (options) => {
51
51
  };
52
52
  const _sfc_main = {
53
53
  name: "DtSelectMenu",
54
- components: { DtValidationMessages: lib_validationMessages.DtValidationMessages },
54
+ components: {
55
+ DtValidationMessages: lib_validationMessages.DtValidationMessages
56
+ },
55
57
  mixins: [input.MessagesMixin],
56
58
  inheritAttrs: false,
57
59
  props: {
@@ -240,71 +242,42 @@ const _hoisted_3 = ["disabled"];
240
242
  const _hoisted_4 = ["value"];
241
243
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
242
244
  const _component_dt_validation_messages = vue.resolveComponent("dt-validation-messages");
243
- return vue.openBlock(), vue.createElementBlock("div", null, [
244
- vue.createElementVNode("label", null, [
245
- $data.hasSlotContent(_ctx.$slots.label) || $props.label ? (vue.openBlock(), vue.createElementBlock("div", vue.mergeProps({
246
- key: 0,
247
- "aria-details": $options.labelAriaDetails,
248
- class: [
249
- "d-label",
250
- $data.LABEL_SIZE_MODIFIERS[$props.size],
251
- $props.labelClass
252
- ]
253
- }, $props.labelChildProps, { "data-qa": "dt-select-label" }), [
254
- vue.renderSlot(_ctx.$slots, "label", {}, () => [
255
- vue.createTextVNode(vue.toDisplayString($props.label), 1)
256
- ])
257
- ], 16, _hoisted_1)) : vue.createCommentVNode("", true),
258
- $data.hasSlotContent(_ctx.$slots.description) || $props.description ? (vue.openBlock(), vue.createElementBlock("div", vue.mergeProps({
259
- key: 1,
260
- id: $options.descriptionKey,
261
- class: [
262
- "d-description",
263
- $data.DESCRIPTION_SIZE_MODIFIERS[$props.size],
264
- $props.descriptionClass
265
- ]
266
- }, $props.descriptionChildProps, { "data-qa": "dt-select-description" }), [
267
- vue.renderSlot(_ctx.$slots, "description", {}, () => [
268
- vue.createTextVNode(vue.toDisplayString($props.description), 1)
269
- ])
270
- ], 16, _hoisted_2)) : vue.createCommentVNode("", true),
271
- vue.createElementVNode("div", {
272
- class: vue.normalizeClass([
273
- "d-select",
274
- $data.SELECT_SIZE_MODIFIERS[$props.size],
275
- $props.selectClass,
276
- { "d-select--disabled": $props.disabled }
277
- ]),
278
- "data-qa": "dt-select-wrapper"
279
- }, [
280
- vue.createElementVNode("select", vue.mergeProps({
281
- ref: "selectElement",
282
- class: [
283
- "d-select__input",
284
- $data.SELECT_STATE_MODIFIERS[$options.state]
285
- ]
286
- }, _ctx.$attrs, {
287
- "data-qa": "dt-select",
288
- disabled: $props.disabled
289
- }, vue.toHandlers($options.selectListeners, true)), [
290
- vue.renderSlot(_ctx.$slots, "default", {}, () => [
291
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList($props.options, (option) => {
292
- return vue.openBlock(), vue.createElementBlock("option", vue.mergeProps({
293
- key: $options.getOptionKey(option.value),
294
- value: option.value,
295
- class: $props.optionClass
296
- }, $props.optionChildProps), vue.toDisplayString(option.label), 17, _hoisted_4);
297
- }), 128))
298
- ])
299
- ], 16, _hoisted_3)
300
- ], 2)
301
- ]),
302
- vue.createVNode(_component_dt_validation_messages, vue.mergeProps({
303
- "validation-messages": _ctx.formattedMessages,
304
- "show-messages": _ctx.showMessages,
305
- class: _ctx.messagesClass
306
- }, _ctx.messagesChildProps, { "data-qa": "dt-select-messages" }), null, 16, ["validation-messages", "show-messages", "class"])
307
- ]);
245
+ return vue.openBlock(), vue.createElementBlock("div", null, [vue.createElementVNode("label", null, [$data.hasSlotContent(_ctx.$slots.label) || $props.label ? (vue.openBlock(), vue.createElementBlock("div", vue.mergeProps({
246
+ key: 0,
247
+ "aria-details": $options.labelAriaDetails,
248
+ class: ["d-label", $data.LABEL_SIZE_MODIFIERS[$props.size], $props.labelClass]
249
+ }, $props.labelChildProps, {
250
+ "data-qa": "dt-select-label"
251
+ }), [vue.renderSlot(_ctx.$slots, "label", {}, () => [vue.createTextVNode(vue.toDisplayString($props.label), 1)])], 16, _hoisted_1)) : vue.createCommentVNode("", true), $data.hasSlotContent(_ctx.$slots.description) || $props.description ? (vue.openBlock(), vue.createElementBlock("div", vue.mergeProps({
252
+ key: 1,
253
+ id: $options.descriptionKey,
254
+ class: ["d-description", $data.DESCRIPTION_SIZE_MODIFIERS[$props.size], $props.descriptionClass]
255
+ }, $props.descriptionChildProps, {
256
+ "data-qa": "dt-select-description"
257
+ }), [vue.renderSlot(_ctx.$slots, "description", {}, () => [vue.createTextVNode(vue.toDisplayString($props.description), 1)])], 16, _hoisted_2)) : vue.createCommentVNode("", true), vue.createElementVNode("div", {
258
+ class: vue.normalizeClass(["d-select", $data.SELECT_SIZE_MODIFIERS[$props.size], $props.selectClass, {
259
+ "d-select--disabled": $props.disabled
260
+ }]),
261
+ "data-qa": "dt-select-wrapper"
262
+ }, [vue.createElementVNode("select", vue.mergeProps({
263
+ ref: "selectElement",
264
+ class: ["d-select__input", $data.SELECT_STATE_MODIFIERS[$options.state]]
265
+ }, _ctx.$attrs, {
266
+ "data-qa": "dt-select",
267
+ disabled: $props.disabled
268
+ }, vue.toHandlers($options.selectListeners, true)), [vue.renderSlot(_ctx.$slots, "default", {}, () => [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList($props.options, (option) => {
269
+ return vue.openBlock(), vue.createElementBlock("option", vue.mergeProps({
270
+ key: $options.getOptionKey(option.value),
271
+ value: option.value,
272
+ class: $props.optionClass
273
+ }, $props.optionChildProps), vue.toDisplayString(option.label), 17, _hoisted_4);
274
+ }), 128))])], 16, _hoisted_3)], 2)]), vue.createVNode(_component_dt_validation_messages, vue.mergeProps({
275
+ "validation-messages": _ctx.formattedMessages,
276
+ "show-messages": _ctx.showMessages,
277
+ class: _ctx.messagesClass
278
+ }, _ctx.messagesChildProps, {
279
+ "data-qa": "dt-select-messages"
280
+ }), null, 16, ["validation-messages", "show-messages", "class"])]);
308
281
  }
309
282
  const select_menu = /* @__PURE__ */ _pluginVue_exportHelper._export_sfc(_sfc_main, [["render", _sfc_render]]);
310
283
  exports.DtSelectMenu = select_menu;
@@ -1 +1 @@
1
- {"version":3,"file":"select-menu.cjs","sources":["../../components/select_menu/select_menu_constants.js","../../components/select_menu/select_menu_validators.js","../../components/select_menu/select_menu.vue"],"sourcesContent":["export const SELECT_SIZE_MODIFIERS = {\n xs: 'd-select--xs',\n sm: 'd-select--sm',\n md: '',\n lg: 'd-select--lg',\n xl: 'd-select--xl',\n};\n\nexport const SELECT_STATE_MODIFIERS = {\n error: 'd-select__input--error',\n warning: 'd-select__input--warning',\n success: 'd-select__input--success',\n};\n\nexport default {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n};\n","const hasValidOptionIndex = option => !option.index || typeof option.index === 'number';\n\nconst hasValidOptionValue = option => {\n if (!option.value) {\n return false;\n }\n\n return typeof option.value === 'string' || typeof option.value === 'number';\n};\n\nconst hasValidOptionLabel = option => {\n if (!option.label) {\n return false;\n }\n\n return typeof option.label === 'string';\n};\n\nexport const optionsValidator = options => {\n if (!options) {\n return true;\n }\n\n return options.every(option => {\n if (!hasValidOptionIndex(option)) {\n return false;\n }\n\n if (!hasValidOptionValue(option)) {\n return false;\n }\n\n if (!hasValidOptionLabel(option)) {\n return false;\n }\n\n return true;\n });\n};\n","<template>\n <div>\n <label>\n <div\n v-if=\"hasSlotContent($slots.label) || label\"\n :aria-details=\"labelAriaDetails\"\n :class=\"[\n 'd-label',\n LABEL_SIZE_MODIFIERS[size],\n labelClass,\n ]\"\n v-bind=\"labelChildProps\"\n data-qa=\"dt-select-label\"\n >\n <!-- @slot Slot for label, defaults to label prop -->\n <slot name=\"label\">{{ label }}</slot>\n </div>\n <div\n v-if=\"hasSlotContent($slots.description) || description\"\n :id=\"descriptionKey\"\n :class=\"[\n 'd-description',\n DESCRIPTION_SIZE_MODIFIERS[size],\n descriptionClass,\n ]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"dt-select-description\"\n >\n <!-- @slot Slot for description, defaults to description prop -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <div\n :class=\"[\n 'd-select',\n SELECT_SIZE_MODIFIERS[size],\n selectClass,\n { 'd-select--disabled': disabled },\n ]\"\n data-qa=\"dt-select-wrapper\"\n >\n <select\n ref=\"selectElement\"\n :class=\"[\n 'd-select__input',\n SELECT_STATE_MODIFIERS[state],\n ]\"\n v-bind=\"$attrs\"\n data-qa=\"dt-select\"\n :disabled=\"disabled\"\n v-on=\"selectListeners\"\n >\n <!-- @slot Slot for select menu options, defaults to options prop -->\n <slot>\n <option\n v-for=\"option in options\"\n :key=\"getOptionKey(option.value)\"\n :value=\"option.value\"\n :class=\"optionClass\"\n v-bind=\"optionChildProps\"\n >\n {{ option.label }}\n </option>\n </slot>\n </select>\n </div>\n </label>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-select-messages\"\n />\n </div>\n</template>\n\n<script>\nimport { warn } from 'vue';\nimport {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n} from '@/common/constants';\nimport {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n} from './select_menu_constants';\nimport {\n getUniqueString,\n getValidationState,\n hasSlotContent,\n} from '@/common/utils';\nimport { MessagesMixin } from '@/common/mixins/input';\nimport { optionsValidator } from './select_menu_validators.js';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * A select menu is an input control that allows users to choose one option from a list.\n * @property {Boolean} disabled attribute\n * @property {String} name attribute\n * @property {String} value attribute\n * @see https://dialtone.dialpad.com/components/select.html\n */\nexport default {\n name: 'DtSelectMenu',\n\n components: { DtValidationMessages },\n\n mixins: [MessagesMixin],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Label for the select\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Description for the select\n */\n description: {\n type: String,\n default: '',\n },\n\n /**\n * Select Menu Options, overridden by default slot. Each option has the following structure:\n * `{ index: number (optional), value: number || string (required), label: string (required) }`\n * @param {Object[]} options - Optional - A list that can be used to create a list of select menu options\n * @param {number} options[].index - Optional - The index of the option\n * @param {number|string} options[].value - Required - The option value\n * @param {string} options[].label - Required - The option Label\n */\n options: {\n type: Array,\n default: () => [],\n validator: options => optionsValidator(options),\n },\n\n /**\n * Controls the size of the select\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(SELECT_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * Used to customize the label container\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the description container\n */\n descriptionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the select\n */\n selectClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize each option, should options be provided via prop\n */\n optionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * A set of props that are passed into the label container\n */\n labelChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into the description container\n */\n descriptionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into each option, should options be provided via prop\n */\n optionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * Disabled state of the select\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {String | Number}\n */\n 'input',\n\n /**\n * Native change event\n *\n * @event change\n * @type {String | Number}\n */\n 'change',\n ],\n\n data () {\n return {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n hasSlotContent,\n };\n },\n\n computed: {\n selectListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through onto the input\n * element which will result in the handler being called twice (once on the select element and once by the\n * emitted input event by the change listener).\n */\n input: () => {},\n change: event => this.emitValue(event.target.value, event),\n };\n },\n\n state () {\n return getValidationState(this.formattedMessages);\n },\n\n selectKey () {\n return getUniqueString();\n },\n\n descriptionKey () {\n return `select-${this.selectKey}-description`;\n },\n\n labelAriaDetails () {\n if (this.$slots.description || this.description) {\n return this.descriptionKey;\n }\n\n return this.$attrs['aria-details'];\n },\n },\n\n watch: {\n // whenever question changes, this function will run\n options () {\n this.$nextTick(() => {\n this.emitValue(this.$refs.selectElement.value, null);\n });\n },\n },\n\n mounted () {\n this.emitValue(this.$refs.selectElement.value, null);\n this.validateOptionsPresence();\n },\n\n beforeUpdate () {\n this.validateOptionsPresence();\n },\n\n methods: {\n emitValue (value, event) {\n this.$emit('input', value, event);\n this.$emit('change', value, event);\n },\n\n getOptionKey (value) {\n return `select-${this.selectKey}-option-${value}`;\n },\n\n validateOptionsPresence () {\n if (this.options?.length < 1 && !this.$slots.default) {\n warn('Options are expected to be provided via prop or slot', this);\n }\n },\n },\n};\n</script>\n"],"names":["DtValidationMessages","MessagesMixin","LABEL_SIZE_MODIFIERS","DESCRIPTION_SIZE_MODIFIERS","hasSlotContent","getValidationState","getUniqueString","warn","_createElementBlock","_createElementVNode","_openBlock","_mergeProps","_renderSlot","_normalizeClass","_toHandlers","_Fragment","_renderList","_toDisplayString","_createVNode"],"mappings":"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"}
1
+ {"version":3,"file":"select-menu.cjs","sources":["../../components/select_menu/select_menu_constants.js","../../components/select_menu/select_menu_validators.js","../../components/select_menu/select_menu.vue"],"sourcesContent":["export const SELECT_SIZE_MODIFIERS = {\n xs: 'd-select--xs',\n sm: 'd-select--sm',\n md: '',\n lg: 'd-select--lg',\n xl: 'd-select--xl',\n};\n\nexport const SELECT_STATE_MODIFIERS = {\n error: 'd-select__input--error',\n warning: 'd-select__input--warning',\n success: 'd-select__input--success',\n};\n\nexport default {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n};\n","const hasValidOptionIndex = option => !option.index || typeof option.index === 'number';\n\nconst hasValidOptionValue = option => {\n if (!option.value) {\n return false;\n }\n\n return typeof option.value === 'string' || typeof option.value === 'number';\n};\n\nconst hasValidOptionLabel = option => {\n if (!option.label) {\n return false;\n }\n\n return typeof option.label === 'string';\n};\n\nexport const optionsValidator = options => {\n if (!options) {\n return true;\n }\n\n return options.every(option => {\n if (!hasValidOptionIndex(option)) {\n return false;\n }\n\n if (!hasValidOptionValue(option)) {\n return false;\n }\n\n if (!hasValidOptionLabel(option)) {\n return false;\n }\n\n return true;\n });\n};\n","<template>\n <div>\n <label>\n <div\n v-if=\"hasSlotContent($slots.label) || label\"\n :aria-details=\"labelAriaDetails\"\n :class=\"[\n 'd-label',\n LABEL_SIZE_MODIFIERS[size],\n labelClass,\n ]\"\n v-bind=\"labelChildProps\"\n data-qa=\"dt-select-label\"\n >\n <!-- @slot Slot for label, defaults to label prop -->\n <slot name=\"label\">{{ label }}</slot>\n </div>\n <div\n v-if=\"hasSlotContent($slots.description) || description\"\n :id=\"descriptionKey\"\n :class=\"[\n 'd-description',\n DESCRIPTION_SIZE_MODIFIERS[size],\n descriptionClass,\n ]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"dt-select-description\"\n >\n <!-- @slot Slot for description, defaults to description prop -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <div\n :class=\"[\n 'd-select',\n SELECT_SIZE_MODIFIERS[size],\n selectClass,\n { 'd-select--disabled': disabled },\n ]\"\n data-qa=\"dt-select-wrapper\"\n >\n <select\n ref=\"selectElement\"\n :class=\"[\n 'd-select__input',\n SELECT_STATE_MODIFIERS[state],\n ]\"\n v-bind=\"$attrs\"\n data-qa=\"dt-select\"\n :disabled=\"disabled\"\n v-on=\"selectListeners\"\n >\n <!-- @slot Slot for select menu options, defaults to options prop -->\n <slot>\n <option\n v-for=\"option in options\"\n :key=\"getOptionKey(option.value)\"\n :value=\"option.value\"\n :class=\"optionClass\"\n v-bind=\"optionChildProps\"\n >\n {{ option.label }}\n </option>\n </slot>\n </select>\n </div>\n </label>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-select-messages\"\n />\n </div>\n</template>\n\n<script>\nimport { warn } from 'vue';\nimport {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n} from '@/common/constants';\nimport {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n} from './select_menu_constants';\nimport {\n getUniqueString,\n getValidationState,\n hasSlotContent,\n} from '@/common/utils';\nimport { MessagesMixin } from '@/common/mixins/input';\nimport { optionsValidator } from './select_menu_validators.js';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * A select menu is an input control that allows users to choose one option from a list.\n * @property {Boolean} disabled attribute\n * @property {String} name attribute\n * @property {String} value attribute\n * @see https://dialtone.dialpad.com/components/select.html\n */\nexport default {\n name: 'DtSelectMenu',\n\n components: { DtValidationMessages },\n\n mixins: [MessagesMixin],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Label for the select\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Description for the select\n */\n description: {\n type: String,\n default: '',\n },\n\n /**\n * Select Menu Options, overridden by default slot. Each option has the following structure:\n * `{ index: number (optional), value: number || string (required), label: string (required) }`\n * @param {Object[]} options - Optional - A list that can be used to create a list of select menu options\n * @param {number} options[].index - Optional - The index of the option\n * @param {number|string} options[].value - Required - The option value\n * @param {string} options[].label - Required - The option Label\n */\n options: {\n type: Array,\n default: () => [],\n validator: options => optionsValidator(options),\n },\n\n /**\n * Controls the size of the select\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(SELECT_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * Used to customize the label container\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the description container\n */\n descriptionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the select\n */\n selectClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize each option, should options be provided via prop\n */\n optionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * A set of props that are passed into the label container\n */\n labelChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into the description container\n */\n descriptionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into each option, should options be provided via prop\n */\n optionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * Disabled state of the select\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {String | Number}\n */\n 'input',\n\n /**\n * Native change event\n *\n * @event change\n * @type {String | Number}\n */\n 'change',\n ],\n\n data () {\n return {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n hasSlotContent,\n };\n },\n\n computed: {\n selectListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through onto the input\n * element which will result in the handler being called twice (once on the select element and once by the\n * emitted input event by the change listener).\n */\n input: () => {},\n change: event => this.emitValue(event.target.value, event),\n };\n },\n\n state () {\n return getValidationState(this.formattedMessages);\n },\n\n selectKey () {\n return getUniqueString();\n },\n\n descriptionKey () {\n return `select-${this.selectKey}-description`;\n },\n\n labelAriaDetails () {\n if (this.$slots.description || this.description) {\n return this.descriptionKey;\n }\n\n return this.$attrs['aria-details'];\n },\n },\n\n watch: {\n // whenever question changes, this function will run\n options () {\n this.$nextTick(() => {\n this.emitValue(this.$refs.selectElement.value, null);\n });\n },\n },\n\n mounted () {\n this.emitValue(this.$refs.selectElement.value, null);\n this.validateOptionsPresence();\n },\n\n beforeUpdate () {\n this.validateOptionsPresence();\n },\n\n methods: {\n emitValue (value, event) {\n this.$emit('input', value, event);\n this.$emit('change', value, event);\n },\n\n getOptionKey (value) {\n return `select-${this.selectKey}-option-${value}`;\n },\n\n validateOptionsPresence () {\n if (this.options?.length < 1 && !this.$slots.default) {\n warn('Options are expected to be provided via prop or slot', this);\n }\n },\n },\n};\n</script>\n"],"names":["SELECT_SIZE_MODIFIERS","xs","sm","md","lg","xl","SELECT_STATE_MODIFIERS","error","warning","success","hasValidOptionIndex","option","index","hasValidOptionValue","value","hasValidOptionLabel","label","optionsValidator","options","every","_sfc_main","name","components","DtValidationMessages","mixins","MessagesMixin","inheritAttrs","props","type","String","default","description","Array","validator","size","s","Object","keys","includes","labelClass","descriptionClass","selectClass","optionClass","labelChildProps","descriptionChildProps","optionChildProps","disabled","Boolean","emits","data","LABEL_SIZE_MODIFIERS","DESCRIPTION_SIZE_MODIFIERS","hasSlotContent","computed","selectListeners","input","change","event","emitValue","target","state","getValidationState","formattedMessages","selectKey","getUniqueString","descriptionKey","labelAriaDetails","$slots","$attrs","watch","$nextTick","$refs","selectElement","mounted","validateOptionsPresence","beforeUpdate","methods","$emit","getOptionKey","length","warn","_createElementBlock","_createElementVNode","$data","_ctx","$props","_openBlock","_mergeProps","$options","class","_renderSlot","id","_normalizeClass","ref","_toHandlers","_Fragment","_renderList","key","_toDisplayString","_hoisted_4","_createVNode","_component_dt_validation_messages","showMessages","messagesClass","messagesChildProps"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { warn, resolveComponent, openBlock, createElementBlock, createElementVNode, mergeProps, renderSlot, createTextVNode, toDisplayString, createCommentVNode, normalizeClass, toHandlers, Fragment, renderList, createVNode } from "vue";
2
2
  import { LABEL_SIZE_MODIFIERS, DESCRIPTION_SIZE_MODIFIERS } from "../common/constants.js";
3
3
  import { hasSlotContent, getValidationState, getUniqueString } from "../common/utils.js";
4
- import { MessagesMixin } from "../chunks/input-NmYDD5bn.js";
4
+ import { MessagesMixin } from "../chunks/input-HIysg24t.js";
5
5
  import { _export_sfc } from "../chunks/_plugin-vue_export-helper-caHeSgYY.js";
6
6
  import { DtValidationMessages } from "./validation-messages.js";
7
7
  import "../common/validators.js";
@@ -49,7 +49,9 @@ const optionsValidator = (options) => {
49
49
  };
50
50
  const _sfc_main = {
51
51
  name: "DtSelectMenu",
52
- components: { DtValidationMessages },
52
+ components: {
53
+ DtValidationMessages
54
+ },
53
55
  mixins: [MessagesMixin],
54
56
  inheritAttrs: false,
55
57
  props: {
@@ -238,71 +240,42 @@ const _hoisted_3 = ["disabled"];
238
240
  const _hoisted_4 = ["value"];
239
241
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
240
242
  const _component_dt_validation_messages = resolveComponent("dt-validation-messages");
241
- return openBlock(), createElementBlock("div", null, [
242
- createElementVNode("label", null, [
243
- $data.hasSlotContent(_ctx.$slots.label) || $props.label ? (openBlock(), createElementBlock("div", mergeProps({
244
- key: 0,
245
- "aria-details": $options.labelAriaDetails,
246
- class: [
247
- "d-label",
248
- $data.LABEL_SIZE_MODIFIERS[$props.size],
249
- $props.labelClass
250
- ]
251
- }, $props.labelChildProps, { "data-qa": "dt-select-label" }), [
252
- renderSlot(_ctx.$slots, "label", {}, () => [
253
- createTextVNode(toDisplayString($props.label), 1)
254
- ])
255
- ], 16, _hoisted_1)) : createCommentVNode("", true),
256
- $data.hasSlotContent(_ctx.$slots.description) || $props.description ? (openBlock(), createElementBlock("div", mergeProps({
257
- key: 1,
258
- id: $options.descriptionKey,
259
- class: [
260
- "d-description",
261
- $data.DESCRIPTION_SIZE_MODIFIERS[$props.size],
262
- $props.descriptionClass
263
- ]
264
- }, $props.descriptionChildProps, { "data-qa": "dt-select-description" }), [
265
- renderSlot(_ctx.$slots, "description", {}, () => [
266
- createTextVNode(toDisplayString($props.description), 1)
267
- ])
268
- ], 16, _hoisted_2)) : createCommentVNode("", true),
269
- createElementVNode("div", {
270
- class: normalizeClass([
271
- "d-select",
272
- $data.SELECT_SIZE_MODIFIERS[$props.size],
273
- $props.selectClass,
274
- { "d-select--disabled": $props.disabled }
275
- ]),
276
- "data-qa": "dt-select-wrapper"
277
- }, [
278
- createElementVNode("select", mergeProps({
279
- ref: "selectElement",
280
- class: [
281
- "d-select__input",
282
- $data.SELECT_STATE_MODIFIERS[$options.state]
283
- ]
284
- }, _ctx.$attrs, {
285
- "data-qa": "dt-select",
286
- disabled: $props.disabled
287
- }, toHandlers($options.selectListeners, true)), [
288
- renderSlot(_ctx.$slots, "default", {}, () => [
289
- (openBlock(true), createElementBlock(Fragment, null, renderList($props.options, (option) => {
290
- return openBlock(), createElementBlock("option", mergeProps({
291
- key: $options.getOptionKey(option.value),
292
- value: option.value,
293
- class: $props.optionClass
294
- }, $props.optionChildProps), toDisplayString(option.label), 17, _hoisted_4);
295
- }), 128))
296
- ])
297
- ], 16, _hoisted_3)
298
- ], 2)
299
- ]),
300
- createVNode(_component_dt_validation_messages, mergeProps({
301
- "validation-messages": _ctx.formattedMessages,
302
- "show-messages": _ctx.showMessages,
303
- class: _ctx.messagesClass
304
- }, _ctx.messagesChildProps, { "data-qa": "dt-select-messages" }), null, 16, ["validation-messages", "show-messages", "class"])
305
- ]);
243
+ return openBlock(), createElementBlock("div", null, [createElementVNode("label", null, [$data.hasSlotContent(_ctx.$slots.label) || $props.label ? (openBlock(), createElementBlock("div", mergeProps({
244
+ key: 0,
245
+ "aria-details": $options.labelAriaDetails,
246
+ class: ["d-label", $data.LABEL_SIZE_MODIFIERS[$props.size], $props.labelClass]
247
+ }, $props.labelChildProps, {
248
+ "data-qa": "dt-select-label"
249
+ }), [renderSlot(_ctx.$slots, "label", {}, () => [createTextVNode(toDisplayString($props.label), 1)])], 16, _hoisted_1)) : createCommentVNode("", true), $data.hasSlotContent(_ctx.$slots.description) || $props.description ? (openBlock(), createElementBlock("div", mergeProps({
250
+ key: 1,
251
+ id: $options.descriptionKey,
252
+ class: ["d-description", $data.DESCRIPTION_SIZE_MODIFIERS[$props.size], $props.descriptionClass]
253
+ }, $props.descriptionChildProps, {
254
+ "data-qa": "dt-select-description"
255
+ }), [renderSlot(_ctx.$slots, "description", {}, () => [createTextVNode(toDisplayString($props.description), 1)])], 16, _hoisted_2)) : createCommentVNode("", true), createElementVNode("div", {
256
+ class: normalizeClass(["d-select", $data.SELECT_SIZE_MODIFIERS[$props.size], $props.selectClass, {
257
+ "d-select--disabled": $props.disabled
258
+ }]),
259
+ "data-qa": "dt-select-wrapper"
260
+ }, [createElementVNode("select", mergeProps({
261
+ ref: "selectElement",
262
+ class: ["d-select__input", $data.SELECT_STATE_MODIFIERS[$options.state]]
263
+ }, _ctx.$attrs, {
264
+ "data-qa": "dt-select",
265
+ disabled: $props.disabled
266
+ }, toHandlers($options.selectListeners, true)), [renderSlot(_ctx.$slots, "default", {}, () => [(openBlock(true), createElementBlock(Fragment, null, renderList($props.options, (option) => {
267
+ return openBlock(), createElementBlock("option", mergeProps({
268
+ key: $options.getOptionKey(option.value),
269
+ value: option.value,
270
+ class: $props.optionClass
271
+ }, $props.optionChildProps), toDisplayString(option.label), 17, _hoisted_4);
272
+ }), 128))])], 16, _hoisted_3)], 2)]), createVNode(_component_dt_validation_messages, mergeProps({
273
+ "validation-messages": _ctx.formattedMessages,
274
+ "show-messages": _ctx.showMessages,
275
+ class: _ctx.messagesClass
276
+ }, _ctx.messagesChildProps, {
277
+ "data-qa": "dt-select-messages"
278
+ }), null, 16, ["validation-messages", "show-messages", "class"])]);
306
279
  }
307
280
  const select_menu = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
308
281
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"select-menu.js","sources":["../../components/select_menu/select_menu_constants.js","../../components/select_menu/select_menu_validators.js","../../components/select_menu/select_menu.vue"],"sourcesContent":["export const SELECT_SIZE_MODIFIERS = {\n xs: 'd-select--xs',\n sm: 'd-select--sm',\n md: '',\n lg: 'd-select--lg',\n xl: 'd-select--xl',\n};\n\nexport const SELECT_STATE_MODIFIERS = {\n error: 'd-select__input--error',\n warning: 'd-select__input--warning',\n success: 'd-select__input--success',\n};\n\nexport default {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n};\n","const hasValidOptionIndex = option => !option.index || typeof option.index === 'number';\n\nconst hasValidOptionValue = option => {\n if (!option.value) {\n return false;\n }\n\n return typeof option.value === 'string' || typeof option.value === 'number';\n};\n\nconst hasValidOptionLabel = option => {\n if (!option.label) {\n return false;\n }\n\n return typeof option.label === 'string';\n};\n\nexport const optionsValidator = options => {\n if (!options) {\n return true;\n }\n\n return options.every(option => {\n if (!hasValidOptionIndex(option)) {\n return false;\n }\n\n if (!hasValidOptionValue(option)) {\n return false;\n }\n\n if (!hasValidOptionLabel(option)) {\n return false;\n }\n\n return true;\n });\n};\n","<template>\n <div>\n <label>\n <div\n v-if=\"hasSlotContent($slots.label) || label\"\n :aria-details=\"labelAriaDetails\"\n :class=\"[\n 'd-label',\n LABEL_SIZE_MODIFIERS[size],\n labelClass,\n ]\"\n v-bind=\"labelChildProps\"\n data-qa=\"dt-select-label\"\n >\n <!-- @slot Slot for label, defaults to label prop -->\n <slot name=\"label\">{{ label }}</slot>\n </div>\n <div\n v-if=\"hasSlotContent($slots.description) || description\"\n :id=\"descriptionKey\"\n :class=\"[\n 'd-description',\n DESCRIPTION_SIZE_MODIFIERS[size],\n descriptionClass,\n ]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"dt-select-description\"\n >\n <!-- @slot Slot for description, defaults to description prop -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <div\n :class=\"[\n 'd-select',\n SELECT_SIZE_MODIFIERS[size],\n selectClass,\n { 'd-select--disabled': disabled },\n ]\"\n data-qa=\"dt-select-wrapper\"\n >\n <select\n ref=\"selectElement\"\n :class=\"[\n 'd-select__input',\n SELECT_STATE_MODIFIERS[state],\n ]\"\n v-bind=\"$attrs\"\n data-qa=\"dt-select\"\n :disabled=\"disabled\"\n v-on=\"selectListeners\"\n >\n <!-- @slot Slot for select menu options, defaults to options prop -->\n <slot>\n <option\n v-for=\"option in options\"\n :key=\"getOptionKey(option.value)\"\n :value=\"option.value\"\n :class=\"optionClass\"\n v-bind=\"optionChildProps\"\n >\n {{ option.label }}\n </option>\n </slot>\n </select>\n </div>\n </label>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-select-messages\"\n />\n </div>\n</template>\n\n<script>\nimport { warn } from 'vue';\nimport {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n} from '@/common/constants';\nimport {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n} from './select_menu_constants';\nimport {\n getUniqueString,\n getValidationState,\n hasSlotContent,\n} from '@/common/utils';\nimport { MessagesMixin } from '@/common/mixins/input';\nimport { optionsValidator } from './select_menu_validators.js';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * A select menu is an input control that allows users to choose one option from a list.\n * @property {Boolean} disabled attribute\n * @property {String} name attribute\n * @property {String} value attribute\n * @see https://dialtone.dialpad.com/components/select.html\n */\nexport default {\n name: 'DtSelectMenu',\n\n components: { DtValidationMessages },\n\n mixins: [MessagesMixin],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Label for the select\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Description for the select\n */\n description: {\n type: String,\n default: '',\n },\n\n /**\n * Select Menu Options, overridden by default slot. Each option has the following structure:\n * `{ index: number (optional), value: number || string (required), label: string (required) }`\n * @param {Object[]} options - Optional - A list that can be used to create a list of select menu options\n * @param {number} options[].index - Optional - The index of the option\n * @param {number|string} options[].value - Required - The option value\n * @param {string} options[].label - Required - The option Label\n */\n options: {\n type: Array,\n default: () => [],\n validator: options => optionsValidator(options),\n },\n\n /**\n * Controls the size of the select\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(SELECT_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * Used to customize the label container\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the description container\n */\n descriptionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the select\n */\n selectClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize each option, should options be provided via prop\n */\n optionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * A set of props that are passed into the label container\n */\n labelChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into the description container\n */\n descriptionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into each option, should options be provided via prop\n */\n optionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * Disabled state of the select\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {String | Number}\n */\n 'input',\n\n /**\n * Native change event\n *\n * @event change\n * @type {String | Number}\n */\n 'change',\n ],\n\n data () {\n return {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n hasSlotContent,\n };\n },\n\n computed: {\n selectListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through onto the input\n * element which will result in the handler being called twice (once on the select element and once by the\n * emitted input event by the change listener).\n */\n input: () => {},\n change: event => this.emitValue(event.target.value, event),\n };\n },\n\n state () {\n return getValidationState(this.formattedMessages);\n },\n\n selectKey () {\n return getUniqueString();\n },\n\n descriptionKey () {\n return `select-${this.selectKey}-description`;\n },\n\n labelAriaDetails () {\n if (this.$slots.description || this.description) {\n return this.descriptionKey;\n }\n\n return this.$attrs['aria-details'];\n },\n },\n\n watch: {\n // whenever question changes, this function will run\n options () {\n this.$nextTick(() => {\n this.emitValue(this.$refs.selectElement.value, null);\n });\n },\n },\n\n mounted () {\n this.emitValue(this.$refs.selectElement.value, null);\n this.validateOptionsPresence();\n },\n\n beforeUpdate () {\n this.validateOptionsPresence();\n },\n\n methods: {\n emitValue (value, event) {\n this.$emit('input', value, event);\n this.$emit('change', value, event);\n },\n\n getOptionKey (value) {\n return `select-${this.selectKey}-option-${value}`;\n },\n\n validateOptionsPresence () {\n if (this.options?.length < 1 && !this.$slots.default) {\n warn('Options are expected to be provided via prop or slot', this);\n }\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_createElementVNode","_openBlock","_mergeProps","_renderSlot","_normalizeClass","_toHandlers","_Fragment","_renderList","_toDisplayString","_createVNode"],"mappings":"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"}
1
+ {"version":3,"file":"select-menu.js","sources":["../../components/select_menu/select_menu_constants.js","../../components/select_menu/select_menu_validators.js","../../components/select_menu/select_menu.vue"],"sourcesContent":["export const SELECT_SIZE_MODIFIERS = {\n xs: 'd-select--xs',\n sm: 'd-select--sm',\n md: '',\n lg: 'd-select--lg',\n xl: 'd-select--xl',\n};\n\nexport const SELECT_STATE_MODIFIERS = {\n error: 'd-select__input--error',\n warning: 'd-select__input--warning',\n success: 'd-select__input--success',\n};\n\nexport default {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n};\n","const hasValidOptionIndex = option => !option.index || typeof option.index === 'number';\n\nconst hasValidOptionValue = option => {\n if (!option.value) {\n return false;\n }\n\n return typeof option.value === 'string' || typeof option.value === 'number';\n};\n\nconst hasValidOptionLabel = option => {\n if (!option.label) {\n return false;\n }\n\n return typeof option.label === 'string';\n};\n\nexport const optionsValidator = options => {\n if (!options) {\n return true;\n }\n\n return options.every(option => {\n if (!hasValidOptionIndex(option)) {\n return false;\n }\n\n if (!hasValidOptionValue(option)) {\n return false;\n }\n\n if (!hasValidOptionLabel(option)) {\n return false;\n }\n\n return true;\n });\n};\n","<template>\n <div>\n <label>\n <div\n v-if=\"hasSlotContent($slots.label) || label\"\n :aria-details=\"labelAriaDetails\"\n :class=\"[\n 'd-label',\n LABEL_SIZE_MODIFIERS[size],\n labelClass,\n ]\"\n v-bind=\"labelChildProps\"\n data-qa=\"dt-select-label\"\n >\n <!-- @slot Slot for label, defaults to label prop -->\n <slot name=\"label\">{{ label }}</slot>\n </div>\n <div\n v-if=\"hasSlotContent($slots.description) || description\"\n :id=\"descriptionKey\"\n :class=\"[\n 'd-description',\n DESCRIPTION_SIZE_MODIFIERS[size],\n descriptionClass,\n ]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"dt-select-description\"\n >\n <!-- @slot Slot for description, defaults to description prop -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <div\n :class=\"[\n 'd-select',\n SELECT_SIZE_MODIFIERS[size],\n selectClass,\n { 'd-select--disabled': disabled },\n ]\"\n data-qa=\"dt-select-wrapper\"\n >\n <select\n ref=\"selectElement\"\n :class=\"[\n 'd-select__input',\n SELECT_STATE_MODIFIERS[state],\n ]\"\n v-bind=\"$attrs\"\n data-qa=\"dt-select\"\n :disabled=\"disabled\"\n v-on=\"selectListeners\"\n >\n <!-- @slot Slot for select menu options, defaults to options prop -->\n <slot>\n <option\n v-for=\"option in options\"\n :key=\"getOptionKey(option.value)\"\n :value=\"option.value\"\n :class=\"optionClass\"\n v-bind=\"optionChildProps\"\n >\n {{ option.label }}\n </option>\n </slot>\n </select>\n </div>\n </label>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-select-messages\"\n />\n </div>\n</template>\n\n<script>\nimport { warn } from 'vue';\nimport {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n} from '@/common/constants';\nimport {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n} from './select_menu_constants';\nimport {\n getUniqueString,\n getValidationState,\n hasSlotContent,\n} from '@/common/utils';\nimport { MessagesMixin } from '@/common/mixins/input';\nimport { optionsValidator } from './select_menu_validators.js';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * A select menu is an input control that allows users to choose one option from a list.\n * @property {Boolean} disabled attribute\n * @property {String} name attribute\n * @property {String} value attribute\n * @see https://dialtone.dialpad.com/components/select.html\n */\nexport default {\n name: 'DtSelectMenu',\n\n components: { DtValidationMessages },\n\n mixins: [MessagesMixin],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Label for the select\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Description for the select\n */\n description: {\n type: String,\n default: '',\n },\n\n /**\n * Select Menu Options, overridden by default slot. Each option has the following structure:\n * `{ index: number (optional), value: number || string (required), label: string (required) }`\n * @param {Object[]} options - Optional - A list that can be used to create a list of select menu options\n * @param {number} options[].index - Optional - The index of the option\n * @param {number|string} options[].value - Required - The option value\n * @param {string} options[].label - Required - The option Label\n */\n options: {\n type: Array,\n default: () => [],\n validator: options => optionsValidator(options),\n },\n\n /**\n * Controls the size of the select\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(SELECT_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * Used to customize the label container\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the description container\n */\n descriptionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the select\n */\n selectClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize each option, should options be provided via prop\n */\n optionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * A set of props that are passed into the label container\n */\n labelChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into the description container\n */\n descriptionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into each option, should options be provided via prop\n */\n optionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * Disabled state of the select\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {String | Number}\n */\n 'input',\n\n /**\n * Native change event\n *\n * @event change\n * @type {String | Number}\n */\n 'change',\n ],\n\n data () {\n return {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n hasSlotContent,\n };\n },\n\n computed: {\n selectListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through onto the input\n * element which will result in the handler being called twice (once on the select element and once by the\n * emitted input event by the change listener).\n */\n input: () => {},\n change: event => this.emitValue(event.target.value, event),\n };\n },\n\n state () {\n return getValidationState(this.formattedMessages);\n },\n\n selectKey () {\n return getUniqueString();\n },\n\n descriptionKey () {\n return `select-${this.selectKey}-description`;\n },\n\n labelAriaDetails () {\n if (this.$slots.description || this.description) {\n return this.descriptionKey;\n }\n\n return this.$attrs['aria-details'];\n },\n },\n\n watch: {\n // whenever question changes, this function will run\n options () {\n this.$nextTick(() => {\n this.emitValue(this.$refs.selectElement.value, null);\n });\n },\n },\n\n mounted () {\n this.emitValue(this.$refs.selectElement.value, null);\n this.validateOptionsPresence();\n },\n\n beforeUpdate () {\n this.validateOptionsPresence();\n },\n\n methods: {\n emitValue (value, event) {\n this.$emit('input', value, event);\n this.$emit('change', value, event);\n },\n\n getOptionKey (value) {\n return `select-${this.selectKey}-option-${value}`;\n },\n\n validateOptionsPresence () {\n if (this.options?.length < 1 && !this.$slots.default) {\n warn('Options are expected to be provided via prop or slot', this);\n }\n },\n },\n};\n</script>\n"],"names":["SELECT_SIZE_MODIFIERS","xs","sm","md","lg","xl","SELECT_STATE_MODIFIERS","error","warning","success","hasValidOptionIndex","option","index","hasValidOptionValue","value","hasValidOptionLabel","label","optionsValidator","options","every","_sfc_main","name","components","DtValidationMessages","mixins","MessagesMixin","inheritAttrs","props","type","String","default","description","Array","validator","size","s","Object","keys","includes","labelClass","descriptionClass","selectClass","optionClass","labelChildProps","descriptionChildProps","optionChildProps","disabled","Boolean","emits","data","LABEL_SIZE_MODIFIERS","DESCRIPTION_SIZE_MODIFIERS","hasSlotContent","computed","selectListeners","input","change","event","emitValue","target","state","getValidationState","formattedMessages","selectKey","getUniqueString","descriptionKey","labelAriaDetails","$slots","$attrs","watch","$nextTick","$refs","selectElement","mounted","validateOptionsPresence","beforeUpdate","methods","$emit","getOptionKey","length","warn","_createElementBlock","_createElementVNode","$data","_ctx","$props","_openBlock","_mergeProps","$options","class","_renderSlot","id","_normalizeClass","ref","_toHandlers","_Fragment","_renderList","key","_toDisplayString","_hoisted_4","_createVNode","_component_dt_validation_messages","showMessages","messagesClass","messagesChildProps"],"mappings":";;;;;;;AAAO,MAAMA,wBAAwB;AAAA,EACnCC,IAAI;AAAA,EACJC,IAAI;AAAA,EACJC,IAAI;AAAA,EACJC,IAAI;AAAA,EACJC,IAAI;AACN;AAEO,MAAMC,yBAAyB;AAAA,EACpCC,OAAO;AAAA,EACPC,SAAS;AAAA,EACTC,SAAS;AACX;ACZA,MAAMC,sBAAsBC,YAAU,CAACA,OAAOC,SAAS,OAAOD,OAAOC,UAAU;AAE/E,MAAMC,sBAAsBF,YAAU;AACpC,MAAI,CAACA,OAAOG,OAAO;AACjB,WAAO;AAAA,EACT;AAEA,SAAO,OAAOH,OAAOG,UAAU,YAAY,OAAOH,OAAOG,UAAU;AACrE;AAEA,MAAMC,sBAAsBJ,YAAU;AACpC,MAAI,CAACA,OAAOK,OAAO;AACjB,WAAO;AAAA,EACT;AAEA,SAAO,OAAOL,OAAOK,UAAU;AACjC;AAEO,MAAMC,mBAAmBC,aAAW;AACzC,MAAI,CAACA,SAAS;AACZ,WAAO;AAAA,EACT;AAEA,SAAOA,QAAQC,MAAMR,YAAU;AAC7B,QAAI,CAACD,oBAAoBC,MAAM,GAAG;AAChC,aAAO;AAAA,IACT;AAEA,QAAI,CAACE,oBAAoBF,MAAM,GAAG;AAChC,aAAO;AAAA,IACT;AAEA,QAAI,CAACI,oBAAoBJ,MAAM,GAAG;AAChC,aAAO;AAAA,IACT;AAEA,WAAO;AAAA,EACT,CAAC;AACH;ACgEA,MAAKS,YAAU;AAAA,EACbC,MAAM;AAAA,EAENC,YAAY;AAAA,IAAEC;AAAAA,EAAsB;AAAA,EAEpCC,QAAQ,CAACC,aAAa;AAAA,EAEtBC,cAAc;AAAA,EAEdC,OAAO;AAAA;AAAA;AAAA;AAAA,IAILX,OAAO;AAAA,MACLY,MAAMC;AAAAA,MACNC,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKDC,aAAa;AAAA,MACXH,MAAMC;AAAAA,MACNC,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUDZ,SAAS;AAAA,MACPU,MAAMI;AAAAA,MACNF,SAASA,MAAM,CAAE;AAAA,MACjBG,WAAWf,aAAWD,iBAAiBC,OAAO;AAAA,IAC/C;AAAA;AAAA;AAAA;AAAA;AAAA,IAMDgB,MAAM;AAAA,MACJN,MAAMC;AAAAA,MACNC,SAAS;AAAA,MACTG,WAAYE,OAAMC,OAAOC,KAAKrC,qBAAqB,EAAEsC,SAASH,CAAC;AAAA,IAChE;AAAA;AAAA;AAAA;AAAA,IAKDI,YAAY;AAAA,MACVX,MAAM,CAACC,QAAQG,OAAOI,MAAM;AAAA,MAC5BN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKDU,kBAAkB;AAAA,MAChBZ,MAAM,CAACC,QAAQG,OAAOI,MAAM;AAAA,MAC5BN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKDW,aAAa;AAAA,MACXb,MAAM,CAACC,QAAQG,OAAOI,MAAM;AAAA,MAC5BN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKDY,aAAa;AAAA,MACXd,MAAM,CAACC,QAAQG,OAAOI,MAAM;AAAA,MAC5BN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKDa,iBAAiB;AAAA,MACff,MAAMQ;AAAAA,MACNN,SAASA,OAAO,CAAA;AAAA,IACjB;AAAA;AAAA;AAAA;AAAA,IAKDc,uBAAuB;AAAA,MACrBhB,MAAMQ;AAAAA,MACNN,SAASA,OAAO,CAAA;AAAA,IACjB;AAAA;AAAA;AAAA;AAAA,IAKDe,kBAAkB;AAAA,MAChBjB,MAAMQ;AAAAA,MACNN,SAASA,OAAO,CAAA;AAAA,IACjB;AAAA;AAAA;AAAA;AAAA;AAAA,IAMDgB,UAAU;AAAA,MACRlB,MAAMmB;AAAAA,MACNjB,SAAS;AAAA,IACX;AAAA,EACD;AAAA,EAEDkB,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA;AAAA,EAAQ;AAAA,EAGVC,OAAQ;AACN,WAAO;AAAA,MACLC;AAAAA,MACAC;AAAAA,MACAnD;AAAAA,MACAM;AAAAA,MACA8C;AAAAA;EAEH;AAAA,EAEDC,UAAU;AAAA,IACRC,kBAAmB;AACjB,aAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAMLC,OAAOA,MAAM;AAAA,QAAE;AAAA,QACfC,QAAQC,WAAS,KAAKC,UAAUD,MAAME,OAAO7C,OAAO2C,KAAK;AAAA;IAE5D;AAAA,IAEDG,QAAS;AACP,aAAOC,mBAAmB,KAAKC,iBAAiB;AAAA,IACjD;AAAA,IAEDC,YAAa;AACX,aAAOC,gBAAe;AAAA,IACvB;AAAA,IAEDC,iBAAkB;AAChB,aAAO,UAAU,KAAKF,SAAS;AAAA,IAChC;AAAA,IAEDG,mBAAoB;AAClB,UAAI,KAAKC,OAAOpC,eAAe,KAAKA,aAAa;AAC/C,eAAO,KAAKkC;AAAAA,MACd;AAEA,aAAO,KAAKG,OAAO,cAAc;AAAA,IACnC;AAAA,EACD;AAAA,EAEDC,OAAO;AAAA;AAAA,IAELnD,UAAW;AACT,WAAKoD,UAAU,MAAM;AACnB,aAAKZ,UAAU,KAAKa,MAAMC,cAAc1D,OAAO,IAAI;AAAA,MACrD,CAAC;AAAA,IACH;AAAA,EACD;AAAA,EAED2D,UAAW;AACT,SAAKf,UAAU,KAAKa,MAAMC,cAAc1D,OAAO,IAAI;AACnD,SAAK4D,wBAAuB;AAAA,EAC7B;AAAA,EAEDC,eAAgB;AACd,SAAKD,wBAAuB;AAAA,EAC7B;AAAA,EAEDE,SAAS;AAAA,IACPlB,UAAW5C,OAAO2C,OAAO;AACvB,WAAKoB,MAAM,SAAS/D,OAAO2C,KAAK;AAChC,WAAKoB,MAAM,UAAU/D,OAAO2C,KAAK;AAAA,IAClC;AAAA,IAEDqB,aAAchE,OAAO;AACnB,aAAO,UAAU,KAAKiD,SAAS,WAAWjD,KAAK;AAAA,IAChD;AAAA,IAED4D,0BAA2B;;AACzB,YAAI,UAAKxD,YAAL,mBAAc6D,UAAS,KAAK,CAAC,KAAKZ,OAAOrC,SAAS;AACpDkD,aAAK,wDAAwD,IAAI;AAAA,MACnE;AAAA,IACF;AAAA,EACF;AACF;;;;;;;sBAzTEC,mBAwEM,OAAA,MAAA,CAvEJC,mBA+DQ,SAAA,MAAA,CA7DEC,MAAA/B,eAAegC,KAAAjB,OAAOnD,KAAK,KAAKqE,OAAKrE,SAD7CsE,aAAAL,mBAaM,OAbNM,WAaM;AAAA;IAXH,gBAAcC,SAAgBtB;AAAAA,IAC9BuB,OAAK,YAAmCN,MAAAjC,qBAAqBmC,OAAInD,IAAA,GAAamD,OAAU9C,UAAA;AAAA,KAKjF8C,OAAe1C,iBAAA;AAAA,IACvB,WAAQ;AAAA,EAAiB,CAAA,GAAA,CAGzB+C,WAAqCN,0BAArC,MAAqC,iCAAfC,OAAKrE,KAAA,GAAA,CAAA,CAAA,sDAGrBmE,MAAA/B,eAAegC,KAAAjB,OAAOpC,WAAW,KAAKsD,OAAWtD,eADzDuD,UAAA,GAAAL,mBAaM,OAbNM,WAaM;AAAA;IAXHI,IAAIH,SAAcvB;AAAAA,IAClBwB,OAAK,kBAAyCN,MAAAhC,2BAA2BkC,OAAInD,IAAA,GAAamD,OAAgB7C,gBAAA;AAAA,KAKnG6C,OAAqBzC,uBAAA;AAAA,IAC7B,WAAQ;AAAA,EAAuB,CAAA,GAAA,CAG/B8C,WAAiDN,gCAAjD,MAAiD,iCAArBC,OAAWtD,WAAA,GAAA,CAAA,CAAA,sDAEzCmD,mBAiCM,OAAA;AAAA,IAhCHO,OAAKG,eAAA,aAAoCT,MAAAnF,sBAAsBqF,OAAInD,IAAA,GAAamD,OAAW5C;4BAAoC4C,OAAQvC;AAAAA,IAAA,CAAA;IAMxI,WAAQ;AAAA,MAERoC,mBAuBS,UAvBTK,WAuBS;AAAA,IAtBPM,KAAI;AAAA,IACHJ,OAAK,oBAA+CN,MAAA7E,uBAAuBkF,SAAK5B,KAAA,CAAA;AAAA,KAIzEwB,KAAMhB,QAAA;AAAA,IACd,WAAQ;AAAA,IACPtB,UAAUuC,OAAQvC;AAAAA,EACnB,GAAAgD,WAAMN,SAAelC,iBAAA,IAAA,CAAA,GAAA,CAGrBoC,WAUON,4BAVP,MAUO,mBATLH,mBAQSc,UAAA,MAAAC,WAPUX,OAAOnE,SAAjBP,YAAM;AADf,WAAA2E,UAAA,GAAAL,mBAQS,UARTM,WAQS;AAAA,MANNU,KAAKT,SAAAV,aAAanE,OAAOG,KAAK;AAAA,MAC9BA,OAAOH,OAAOG;AAAAA,MACd2E,OAAOJ,OAAW3C;AAAAA,OACX2C,OAAgBxC,gBAAA,GAAAqD,gBAErBvF,OAAOK,KAAK,GAAA,IAAAmF,UAAA;AAAA,wCAMzBC,YAMEC,mCANFd,WAME;AAAA,IALC,uBAAqBH,KAAiBtB;AAAAA,IACtC,iBAAesB,KAAYkB;AAAAA,IAC3Bb,OAAOL,KAAamB;AAAAA,KACbnB,KAAkBoB,oBAAA;AAAA,IAC1B,WAAQ;AAAA,EAAoB,CAAA,GAAA,MAAA,IAAA,CAAA,uBAAA,iBAAA,OAAA,CAAA,CAAA;;;"}
@@ -8,7 +8,7 @@ require("../common/utils.cjs");
8
8
  require("../common/constants.cjs");
9
9
  require("../chunks/link_constants-x8NwdqmA.js");
10
10
  require("@dialpad/dialtone-icons/vue3");
11
- require("../chunks/icon_constants-QYpmdE0R.js");
11
+ require("../chunks/icon_constants-bvhFNOPu.js");
12
12
  require("@dialpad/dialtone-icons/icons.json");
13
13
  const _sfc_main = {
14
14
  name: "DtRecipeSettingsMenuButton",
@@ -47,15 +47,11 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
47
47
  class: "settings-menu-button-update",
48
48
  "aria-label": $props.ariaLabel
49
49
  }, _ctx.$attrs), {
50
- icon: vue.withCtx(() => [
51
- vue.createVNode(_component_dt_icon, {
52
- name: "more-vertical",
53
- size: "300"
54
- })
55
- ]),
56
- default: vue.withCtx(() => [
57
- vue.renderSlot(_ctx.$slots, "default", {}, void 0, true)
58
- ]),
50
+ icon: vue.withCtx(() => [vue.createVNode(_component_dt_icon, {
51
+ name: "more-vertical",
52
+ size: "300"
53
+ })]),
54
+ default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "default", {}, void 0, true)]),
59
55
  _: 3
60
56
  }, 16, ["aria-label"])) : (vue.openBlock(), vue.createBlock(_component_dt_button, vue.mergeProps({
61
57
  key: 1,
@@ -64,12 +60,10 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
64
60
  class: "settings-menu-button",
65
61
  "aria-label": $props.ariaLabel
66
62
  }, _ctx.$attrs), {
67
- icon: vue.withCtx(() => [
68
- vue.createVNode(_component_dt_icon, {
69
- name: "more-vertical",
70
- size: "300"
71
- })
72
- ]),
63
+ icon: vue.withCtx(() => [vue.createVNode(_component_dt_icon, {
64
+ name: "more-vertical",
65
+ size: "300"
66
+ })]),
73
67
  _: 1
74
68
  }, 16, ["aria-label"]));
75
69
  }
@@ -1 +1 @@
1
- {"version":3,"file":"settings-menu-button.cjs","sources":["../../recipes/header/settings_menu_button/settings_menu_button.vue"],"sourcesContent":["<template>\n <dt-button\n v-if=\"updateAvailable\"\n importance=\"outlined\"\n size=\"xs\"\n icon-position=\"right\"\n class=\"settings-menu-button-update\"\n :aria-label=\"ariaLabel\"\n v-bind=\"$attrs\"\n >\n <slot />\n <template #icon>\n <dt-icon\n name=\"more-vertical\"\n size=\"300\"\n />\n </template>\n </dt-button>\n <dt-button\n v-else\n importance=\"clear\"\n kind=\"inverted\"\n class=\"settings-menu-button\"\n :aria-label=\"ariaLabel\"\n v-bind=\"$attrs\"\n >\n <template #icon>\n <dt-icon\n name=\"more-vertical\"\n size=\"300\"\n />\n </template>\n </dt-button>\n</template>\n\n<script>\nimport DtButton from '@/components/button/button.vue';\nimport { DtIcon } from '@/components/icon';\n\nexport default {\n name: 'DtRecipeSettingsMenuButton',\n\n components: {\n DtButton,\n DtIcon,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Determines whether the button should display the update state\n * default is false\n * @values true, false\n */\n updateAvailable: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Aria label\n */\n ariaLabel: {\n type: String,\n required: true,\n },\n },\n\n};\n</script>\n\n<style scoped lang=\"less\">\n.settings-menu-button {\n padding: var(--dt-space-0);\n border-radius: var(--dt-size-550);\n height: var(--dt-size-600);\n width: var(--dt-size-550);\n color: var(--dt-theme-topbar-button-color-foreground);\n background-color: var(--dt-theme-topbar-button-color-background);\n\n &:hover {\n background-color: var(--dt-theme-topbar-button-color-background-hover);\n color: var(--dt-theme-topbar-button-color-foreground-hover);\n }\n\n &:active {\n background-color: var(--dt-theme-topbar-button-color-background-active);\n }\n}\n\n.settings-menu-button-update {\n background-color: hsla(var(--dt-color-blue-200-hsl) / 25%);\n color: var(--dt-color-blue-500);\n border-color: hsla(var(--dt-color-blue-200-hsl) / 25%);\n border-radius: var(--dt-size-radius-pill);\n height: var(--dt-size-600);\n\n &:hover {\n background-color: hsla(var(--dt-color-blue-200-hsl) / 50%);\n color: var(--dt-theme-topbar-button-color-foreground-hover);\n }\n}\n</style>\n"],"names":["DtButton","DtIcon","_openBlock","_createBlock","_mergeProps","_createVNode","_renderSlot"],"mappings":";;;;;;;;;;;;AAuCA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,UAAAA,WAAQ;AAAA,IACR,QAAAC,SAAM;AAAA,EACP;AAAA,EAED,cAAc;AAAA,EAEd,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAML,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,WAAW;AAAA,MACT,MAAM;AAAA,MACN,UAAU;AAAA,IACX;AAAA,EACF;AAEH;;;;SAnEU,OAAe,mBADvBC,IAAAA,aAAAC,IAAAA,YAgBY,sBAhBZC,eAgBY;AAAA;IAdV,YAAW;AAAA,IACX,MAAK;AAAA,IACL,iBAAc;AAAA,IACd,OAAM;AAAA,IACL,cAAY,OAAS;AAAA,KACd,KAAM,MAAA,GAAA;AAAA,IAGH,kBACT,MAGE;AAAA,MAHFC,IAAAA,YAGE,oBAAA;AAAA,QAFA,MAAK;AAAA,QACL,MAAK;AAAA;;yBAJT,MAAQ;AAAA,MAARC,IAAQ,WAAA,KAAA,QAAA,WAAA,CAAA,GAAA,QAAA,IAAA;AAAA;;6BAQVJ,IAAAA,aAAAC,IAAAA,YAcY,sBAdZC,eAcY;AAAA;IAZV,YAAW;AAAA,IACX,MAAK;AAAA,IACL,OAAM;AAAA,IACL,cAAY,OAAS;AAAA,KACd,KAAM,MAAA,GAAA;AAAA,IAEH,kBACT,MAGE;AAAA,MAHFC,IAAAA,YAGE,oBAAA;AAAA,QAFA,MAAK;AAAA,QACL,MAAK;AAAA;;;;;;;"}
1
+ {"version":3,"file":"settings-menu-button.cjs","sources":["../../recipes/header/settings_menu_button/settings_menu_button.vue"],"sourcesContent":["<template>\n <dt-button\n v-if=\"updateAvailable\"\n importance=\"outlined\"\n size=\"xs\"\n icon-position=\"right\"\n class=\"settings-menu-button-update\"\n :aria-label=\"ariaLabel\"\n v-bind=\"$attrs\"\n >\n <slot />\n <template #icon>\n <dt-icon\n name=\"more-vertical\"\n size=\"300\"\n />\n </template>\n </dt-button>\n <dt-button\n v-else\n importance=\"clear\"\n kind=\"inverted\"\n class=\"settings-menu-button\"\n :aria-label=\"ariaLabel\"\n v-bind=\"$attrs\"\n >\n <template #icon>\n <dt-icon\n name=\"more-vertical\"\n size=\"300\"\n />\n </template>\n </dt-button>\n</template>\n\n<script>\nimport DtButton from '@/components/button/button.vue';\nimport { DtIcon } from '@/components/icon';\n\nexport default {\n name: 'DtRecipeSettingsMenuButton',\n\n components: {\n DtButton,\n DtIcon,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Determines whether the button should display the update state\n * default is false\n * @values true, false\n */\n updateAvailable: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Aria label\n */\n ariaLabel: {\n type: String,\n required: true,\n },\n },\n\n};\n</script>\n\n<style scoped lang=\"less\">\n.settings-menu-button {\n padding: var(--dt-space-0);\n border-radius: var(--dt-size-550);\n height: var(--dt-size-600);\n width: var(--dt-size-550);\n color: var(--dt-theme-topbar-button-color-foreground);\n background-color: var(--dt-theme-topbar-button-color-background);\n\n &:hover {\n background-color: var(--dt-theme-topbar-button-color-background-hover);\n color: var(--dt-theme-topbar-button-color-foreground-hover);\n }\n\n &:active {\n background-color: var(--dt-theme-topbar-button-color-background-active);\n }\n}\n\n.settings-menu-button-update {\n background-color: hsla(var(--dt-color-blue-200-hsl) / 25%);\n color: var(--dt-color-blue-500);\n border-color: hsla(var(--dt-color-blue-200-hsl) / 25%);\n border-radius: var(--dt-size-radius-pill);\n height: var(--dt-size-600);\n\n &:hover {\n background-color: hsla(var(--dt-color-blue-200-hsl) / 50%);\n color: var(--dt-theme-topbar-button-color-foreground-hover);\n }\n}\n</style>\n"],"names":["_sfc_main","name","components","DtButton","DtIcon","inheritAttrs","props","updateAvailable","type","Boolean","default","ariaLabel","String","required","$props","_openBlock","_createBlock","_component_dt_button","_mergeProps","importance","size","class","_ctx","$attrs","icon","_createVNode","_component_dt_icon","_renderSlot","$slots","undefined","kind"],"mappings":";;;;;;;;;;;;AAuCA,MAAKA,YAAU;AAAA,EACbC,MAAM;AAAA,EAENC,YAAY;AAAA,cACVC,WAAQ;AAAA,IACRC,QAAAA,SAAAA;AAAAA,EACD;AAAA,EAEDC,cAAc;AAAA,EAEdC,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMLC,iBAAiB;AAAA,MACfC,MAAMC;AAAAA,MACNC,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKDC,WAAW;AAAA,MACTH,MAAMI;AAAAA,MACNC,UAAU;AAAA,IACZ;AAAA,EACF;AAEF;;;;SAnEUC,OAAeP,mBADvBQ,IAAAA,UAAA,GAAAC,IAAA,YAgBYC,sBAhBZC,eAgBY;AAAA;IAdVC,YAAW;AAAA,IACXC,MAAK;AAAA,IACL,iBAAc;AAAA,IACdC,OAAM;AAAA,IACL,cAAYP,OAASH;AAAAA,KACdW,KAAMC,MAAA,GAAA;AAAA,IAGHC,kBACT,MAGE,CAHFC,IAAAA,YAGEC,oBAAA;AAAA,MAFAzB,MAAK;AAAA,MACLmB,MAAK;AAAA;yBAJT,MAAQ,CAARO,IAAAA,WAAQL,KAAAM,QAAA,WAAA,CAAA,GAAAC,QAAA,IAAA,CAAA;;6BAQVd,IAAA,UAAA,GAAAC,IAAA,YAcYC,sBAdZC,eAcY;AAAA;IAZVC,YAAW;AAAA,IACXW,MAAK;AAAA,IACLT,OAAM;AAAA,IACL,cAAYP,OAASH;AAAAA,KACdW,KAAMC,MAAA,GAAA;AAAA,IAEHC,kBACT,MAGE,CAHFC,IAAAA,YAGEC,oBAAA;AAAA,MAFAzB,MAAK;AAAA,MACLmB,MAAK;AAAA;;;;;;"}
@@ -6,7 +6,7 @@ import "../common/utils.js";
6
6
  import "../common/constants.js";
7
7
  import "../chunks/link_constants-AfTWrr-n.js";
8
8
  import "@dialpad/dialtone-icons/vue3";
9
- import "../chunks/icon_constants-Dy4MEUJL.js";
9
+ import "../chunks/icon_constants-gIQj4mf7.js";
10
10
  import "@dialpad/dialtone-icons/icons.json";
11
11
  const _sfc_main = {
12
12
  name: "DtRecipeSettingsMenuButton",
@@ -45,15 +45,11 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
45
45
  class: "settings-menu-button-update",
46
46
  "aria-label": $props.ariaLabel
47
47
  }, _ctx.$attrs), {
48
- icon: withCtx(() => [
49
- createVNode(_component_dt_icon, {
50
- name: "more-vertical",
51
- size: "300"
52
- })
53
- ]),
54
- default: withCtx(() => [
55
- renderSlot(_ctx.$slots, "default", {}, void 0, true)
56
- ]),
48
+ icon: withCtx(() => [createVNode(_component_dt_icon, {
49
+ name: "more-vertical",
50
+ size: "300"
51
+ })]),
52
+ default: withCtx(() => [renderSlot(_ctx.$slots, "default", {}, void 0, true)]),
57
53
  _: 3
58
54
  }, 16, ["aria-label"])) : (openBlock(), createBlock(_component_dt_button, mergeProps({
59
55
  key: 1,
@@ -62,12 +58,10 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
62
58
  class: "settings-menu-button",
63
59
  "aria-label": $props.ariaLabel
64
60
  }, _ctx.$attrs), {
65
- icon: withCtx(() => [
66
- createVNode(_component_dt_icon, {
67
- name: "more-vertical",
68
- size: "300"
69
- })
70
- ]),
61
+ icon: withCtx(() => [createVNode(_component_dt_icon, {
62
+ name: "more-vertical",
63
+ size: "300"
64
+ })]),
71
65
  _: 1
72
66
  }, 16, ["aria-label"]));
73
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"settings-menu-button.js","sources":["../../recipes/header/settings_menu_button/settings_menu_button.vue"],"sourcesContent":["<template>\n <dt-button\n v-if=\"updateAvailable\"\n importance=\"outlined\"\n size=\"xs\"\n icon-position=\"right\"\n class=\"settings-menu-button-update\"\n :aria-label=\"ariaLabel\"\n v-bind=\"$attrs\"\n >\n <slot />\n <template #icon>\n <dt-icon\n name=\"more-vertical\"\n size=\"300\"\n />\n </template>\n </dt-button>\n <dt-button\n v-else\n importance=\"clear\"\n kind=\"inverted\"\n class=\"settings-menu-button\"\n :aria-label=\"ariaLabel\"\n v-bind=\"$attrs\"\n >\n <template #icon>\n <dt-icon\n name=\"more-vertical\"\n size=\"300\"\n />\n </template>\n </dt-button>\n</template>\n\n<script>\nimport DtButton from '@/components/button/button.vue';\nimport { DtIcon } from '@/components/icon';\n\nexport default {\n name: 'DtRecipeSettingsMenuButton',\n\n components: {\n DtButton,\n DtIcon,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Determines whether the button should display the update state\n * default is false\n * @values true, false\n */\n updateAvailable: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Aria label\n */\n ariaLabel: {\n type: String,\n required: true,\n },\n },\n\n};\n</script>\n\n<style scoped lang=\"less\">\n.settings-menu-button {\n padding: var(--dt-space-0);\n border-radius: var(--dt-size-550);\n height: var(--dt-size-600);\n width: var(--dt-size-550);\n color: var(--dt-theme-topbar-button-color-foreground);\n background-color: var(--dt-theme-topbar-button-color-background);\n\n &:hover {\n background-color: var(--dt-theme-topbar-button-color-background-hover);\n color: var(--dt-theme-topbar-button-color-foreground-hover);\n }\n\n &:active {\n background-color: var(--dt-theme-topbar-button-color-background-active);\n }\n}\n\n.settings-menu-button-update {\n background-color: hsla(var(--dt-color-blue-200-hsl) / 25%);\n color: var(--dt-color-blue-500);\n border-color: hsla(var(--dt-color-blue-200-hsl) / 25%);\n border-radius: var(--dt-size-radius-pill);\n height: var(--dt-size-600);\n\n &:hover {\n background-color: hsla(var(--dt-color-blue-200-hsl) / 50%);\n color: var(--dt-theme-topbar-button-color-foreground-hover);\n }\n}\n</style>\n"],"names":["_openBlock","_createBlock","_mergeProps","_createVNode","_renderSlot"],"mappings":";;;;;;;;;;AAuCA,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EAEN,YAAY;AAAA,IACV;AAAA,IACA;AAAA,EACD;AAAA,EAED,cAAc;AAAA,EAEd,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAML,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKD,WAAW;AAAA,MACT,MAAM;AAAA,MACN,UAAU;AAAA,IACX;AAAA,EACF;AAEH;;;;SAnEU,OAAe,mBADvBA,aAAAC,YAgBY,sBAhBZC,WAgBY;AAAA;IAdV,YAAW;AAAA,IACX,MAAK;AAAA,IACL,iBAAc;AAAA,IACd,OAAM;AAAA,IACL,cAAY,OAAS;AAAA,KACd,KAAM,MAAA,GAAA;AAAA,IAGH,cACT,MAGE;AAAA,MAHFC,YAGE,oBAAA;AAAA,QAFA,MAAK;AAAA,QACL,MAAK;AAAA;;qBAJT,MAAQ;AAAA,MAARC,WAAQ,KAAA,QAAA,WAAA,CAAA,GAAA,QAAA,IAAA;AAAA;;6BAQVJ,aAAAC,YAcY,sBAdZC,WAcY;AAAA;IAZV,YAAW;AAAA,IACX,MAAK;AAAA,IACL,OAAM;AAAA,IACL,cAAY,OAAS;AAAA,KACd,KAAM,MAAA,GAAA;AAAA,IAEH,cACT,MAGE;AAAA,MAHFC,YAGE,oBAAA;AAAA,QAFA,MAAK;AAAA,QACL,MAAK;AAAA;;;;;;"}
1
+ {"version":3,"file":"settings-menu-button.js","sources":["../../recipes/header/settings_menu_button/settings_menu_button.vue"],"sourcesContent":["<template>\n <dt-button\n v-if=\"updateAvailable\"\n importance=\"outlined\"\n size=\"xs\"\n icon-position=\"right\"\n class=\"settings-menu-button-update\"\n :aria-label=\"ariaLabel\"\n v-bind=\"$attrs\"\n >\n <slot />\n <template #icon>\n <dt-icon\n name=\"more-vertical\"\n size=\"300\"\n />\n </template>\n </dt-button>\n <dt-button\n v-else\n importance=\"clear\"\n kind=\"inverted\"\n class=\"settings-menu-button\"\n :aria-label=\"ariaLabel\"\n v-bind=\"$attrs\"\n >\n <template #icon>\n <dt-icon\n name=\"more-vertical\"\n size=\"300\"\n />\n </template>\n </dt-button>\n</template>\n\n<script>\nimport DtButton from '@/components/button/button.vue';\nimport { DtIcon } from '@/components/icon';\n\nexport default {\n name: 'DtRecipeSettingsMenuButton',\n\n components: {\n DtButton,\n DtIcon,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Determines whether the button should display the update state\n * default is false\n * @values true, false\n */\n updateAvailable: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Aria label\n */\n ariaLabel: {\n type: String,\n required: true,\n },\n },\n\n};\n</script>\n\n<style scoped lang=\"less\">\n.settings-menu-button {\n padding: var(--dt-space-0);\n border-radius: var(--dt-size-550);\n height: var(--dt-size-600);\n width: var(--dt-size-550);\n color: var(--dt-theme-topbar-button-color-foreground);\n background-color: var(--dt-theme-topbar-button-color-background);\n\n &:hover {\n background-color: var(--dt-theme-topbar-button-color-background-hover);\n color: var(--dt-theme-topbar-button-color-foreground-hover);\n }\n\n &:active {\n background-color: var(--dt-theme-topbar-button-color-background-active);\n }\n}\n\n.settings-menu-button-update {\n background-color: hsla(var(--dt-color-blue-200-hsl) / 25%);\n color: var(--dt-color-blue-500);\n border-color: hsla(var(--dt-color-blue-200-hsl) / 25%);\n border-radius: var(--dt-size-radius-pill);\n height: var(--dt-size-600);\n\n &:hover {\n background-color: hsla(var(--dt-color-blue-200-hsl) / 50%);\n color: var(--dt-theme-topbar-button-color-foreground-hover);\n }\n}\n</style>\n"],"names":["_sfc_main","name","components","DtButton","DtIcon","inheritAttrs","props","updateAvailable","type","Boolean","default","ariaLabel","String","required","$props","_openBlock","_createBlock","_component_dt_button","_mergeProps","importance","size","class","_ctx","$attrs","icon","_createVNode","_component_dt_icon","_renderSlot","$slots","undefined","kind"],"mappings":";;;;;;;;;;AAuCA,MAAKA,YAAU;AAAA,EACbC,MAAM;AAAA,EAENC,YAAY;AAAA,IACVC;AAAAA,IACAC;AAAAA,EACD;AAAA,EAEDC,cAAc;AAAA,EAEdC,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMLC,iBAAiB;AAAA,MACfC,MAAMC;AAAAA,MACNC,SAAS;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAKDC,WAAW;AAAA,MACTH,MAAMI;AAAAA,MACNC,UAAU;AAAA,IACZ;AAAA,EACF;AAEF;;;;SAnEUC,OAAeP,mBADvBQ,UAAA,GAAAC,YAgBYC,sBAhBZC,WAgBY;AAAA;IAdVC,YAAW;AAAA,IACXC,MAAK;AAAA,IACL,iBAAc;AAAA,IACdC,OAAM;AAAA,IACL,cAAYP,OAASH;AAAAA,KACdW,KAAMC,MAAA,GAAA;AAAA,IAGHC,cACT,MAGE,CAHFC,YAGEC,oBAAA;AAAA,MAFAzB,MAAK;AAAA,MACLmB,MAAK;AAAA;qBAJT,MAAQ,CAARO,WAAQL,KAAAM,QAAA,WAAA,CAAA,GAAAC,QAAA,IAAA,CAAA;;6BAQVd,UAAA,GAAAC,YAcYC,sBAdZC,WAcY;AAAA;IAZVC,YAAW;AAAA,IACXW,MAAK;AAAA,IACLT,OAAM;AAAA,IACL,cAAYP,OAASH;AAAAA,KACdW,KAAMC,MAAA,GAAA;AAAA,IAEHC,cACT,MAGE,CAHFC,YAGEC,oBAAA;AAAA,MAFAzB,MAAK;AAAA,MACLmB,MAAK;AAAA;;;;;"}