@dialpad/dialtone-vue 3.219.0 → 3.220.0-next.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (970) hide show
  1. package/dist/{attachment_carousel-CouFqFMw.js → attachment_carousel-1qxTI-NN.js} +5 -5
  2. package/dist/attachment_carousel-1qxTI-NN.js.map +1 -0
  3. package/dist/attachment_carousel-wnZS3vEt.cjs +2 -0
  4. package/dist/attachment_carousel-wnZS3vEt.cjs.map +1 -0
  5. package/dist/{combobox-DgClbLOg.js → combobox-BQBKrDTW.js} +36 -35
  6. package/dist/combobox-BQBKrDTW.js.map +1 -0
  7. package/dist/combobox-Da7wBh3G.cjs +3 -0
  8. package/dist/combobox-Da7wBh3G.cjs.map +1 -0
  9. package/dist/common/composables/useIndicatorAnimation.cjs +2 -0
  10. package/dist/common/composables/useIndicatorAnimation.cjs.map +1 -0
  11. package/dist/common/composables/useIndicatorAnimation.d.ts +18 -0
  12. package/dist/common/composables/useIndicatorAnimation.d.ts.map +1 -0
  13. package/dist/common/composables/useIndicatorAnimation.js +78 -0
  14. package/dist/common/composables/useIndicatorAnimation.js.map +1 -0
  15. package/dist/common/constants/index.cjs +1 -1
  16. package/dist/common/constants/index.cjs.map +1 -1
  17. package/dist/common/constants/index.d.ts +27 -21
  18. package/dist/common/constants/index.d.ts.map +1 -1
  19. package/dist/common/constants/index.js +25 -14
  20. package/dist/common/constants/index.js.map +1 -1
  21. package/dist/common/constants/sizes.cjs +2 -0
  22. package/dist/common/constants/sizes.cjs.map +1 -0
  23. package/dist/common/constants/sizes.d.ts +22 -0
  24. package/dist/common/constants/sizes.d.ts.map +1 -0
  25. package/dist/common/constants/sizes.js +19 -0
  26. package/dist/common/constants/sizes.js.map +1 -0
  27. package/dist/common/mixins/index.cjs +1 -1
  28. package/dist/common/mixins/index.d.ts +1 -0
  29. package/dist/common/mixins/index.js +2 -1
  30. package/dist/common/mixins/input.cjs +1 -1
  31. package/dist/common/mixins/input.cjs.map +1 -1
  32. package/dist/common/mixins/input.d.ts +27 -33
  33. package/dist/common/mixins/input.d.ts.map +1 -1
  34. package/dist/common/mixins/input.js +0 -8
  35. package/dist/common/mixins/input.js.map +1 -1
  36. package/dist/common/mixins/mode.cjs +2 -0
  37. package/dist/common/mixins/mode.cjs.map +1 -0
  38. package/dist/common/mixins/mode.d.ts +25 -0
  39. package/dist/common/mixins/mode.d.ts.map +1 -0
  40. package/dist/common/mixins/mode.js +62 -0
  41. package/dist/common/mixins/mode.js.map +1 -0
  42. package/dist/common/mode_constants.d.ts +37 -0
  43. package/dist/common/mode_constants.d.ts.map +1 -0
  44. package/dist/common/sr_only_close_button.vue.d.ts +53 -7
  45. package/dist/common/sr_only_close_button.vue.d.ts.map +1 -1
  46. package/dist/common/utils/index.cjs +1 -1
  47. package/dist/common/utils/index.cjs.map +1 -1
  48. package/dist/common/utils/index.d.ts +2 -8
  49. package/dist/common/utils/index.d.ts.map +1 -1
  50. package/dist/common/utils/index.js +79 -88
  51. package/dist/common/utils/index.js.map +1 -1
  52. package/dist/component-documentation.json +1 -1
  53. package/dist/components/avatar/avatar.vue.d.ts +85 -27
  54. package/dist/components/avatar/avatar.vue.d.ts.map +1 -1
  55. package/dist/components/avatar/avatar_constants.d.ts +86 -29
  56. package/dist/components/avatar/avatar_constants.d.ts.map +1 -1
  57. package/dist/components/avatar/index.d.ts +1 -1
  58. package/dist/components/badge/badge.vue.d.ts +1 -1
  59. package/dist/components/badge/badge.vue.d.ts.map +1 -1
  60. package/dist/components/badge/badge_constants.d.ts +1 -1
  61. package/dist/components/banner/banner.vue.d.ts +269 -34
  62. package/dist/components/banner/banner.vue.d.ts.map +1 -1
  63. package/dist/components/box/box.vue.d.ts +73 -0
  64. package/dist/components/box/box.vue.d.ts.map +1 -0
  65. package/dist/components/box/box_constants.d.ts +11 -0
  66. package/dist/components/box/box_constants.d.ts.map +1 -0
  67. package/dist/components/box/index.d.ts +3 -0
  68. package/dist/components/box/index.d.ts.map +1 -0
  69. package/dist/components/box/validators.d.ts +11 -0
  70. package/dist/components/box/validators.d.ts.map +1 -0
  71. package/dist/components/breadcrumbs/breadcrumb_item.vue.d.ts +26 -17
  72. package/dist/components/breadcrumbs/breadcrumb_item.vue.d.ts.map +1 -1
  73. package/dist/components/breadcrumbs/breadcrumbs.vue.d.ts +25 -16
  74. package/dist/components/button/button.vue.d.ts +53 -7
  75. package/dist/components/button/button.vue.d.ts.map +1 -1
  76. package/dist/components/button/button_constants.d.ts +29 -20
  77. package/dist/components/button/button_constants.d.ts.map +1 -1
  78. package/dist/components/card/card.vue.d.ts +0 -9
  79. package/dist/components/card/card.vue.d.ts.map +1 -1
  80. package/dist/components/checkbox/checkbox.vue.d.ts +183 -10
  81. package/dist/components/checkbox/checkbox.vue.d.ts.map +1 -1
  82. package/dist/components/checkbox/checkbox_constants.d.ts +2 -2
  83. package/dist/components/checkbox_group/checkbox_group.vue.d.ts +142 -0
  84. package/dist/components/chip/chip.vue.d.ts +62 -16
  85. package/dist/components/chip/chip.vue.d.ts.map +1 -1
  86. package/dist/components/chip/chip_constants.d.ts +24 -21
  87. package/dist/components/chip/chip_constants.d.ts.map +1 -1
  88. package/dist/components/codeblock/codeblock.vue.d.ts +25 -2
  89. package/dist/components/codeblock/codeblock.vue.d.ts.map +1 -1
  90. package/dist/components/codeblock/codeblock_constants.d.ts +9 -0
  91. package/dist/components/codeblock/codeblock_constants.d.ts.map +1 -0
  92. package/dist/components/collapsible/collapsible.vue.d.ts +53 -7
  93. package/dist/components/collapsible/collapsible.vue.d.ts.map +1 -1
  94. package/dist/components/combobox/combobox.vue.d.ts +113 -38
  95. package/dist/components/combobox/combobox.vue.d.ts.map +1 -1
  96. package/dist/components/combobox/combobox_empty-list.vue.d.ts +40 -7
  97. package/dist/components/combobox/combobox_empty-list.vue.d.ts.map +1 -1
  98. package/dist/components/combobox/combobox_loading-list.vue.d.ts +64 -22
  99. package/dist/components/combobox/combobox_loading-list.vue.d.ts.map +1 -1
  100. package/dist/components/combobox_multi_select/combobox_multi_select_constants.d.ts +16 -13
  101. package/dist/components/combobox_multi_select/combobox_multi_select_constants.d.ts.map +1 -1
  102. package/dist/components/combobox_with_popover/combobox_with_popover.vue.d.ts +399 -93
  103. package/dist/components/combobox_with_popover/combobox_with_popover.vue.d.ts.map +1 -1
  104. package/dist/components/datepicker/modules/month-year-picker.vue.d.ts.map +1 -1
  105. package/dist/components/dropdown/dropdown.vue.d.ts +175 -19
  106. package/dist/components/dropdown/dropdown.vue.d.ts.map +1 -1
  107. package/dist/components/emoji/emoji.vue.d.ts +24 -15
  108. package/dist/components/emoji_picker/emoji_picker.vue.d.ts +204 -22
  109. package/dist/components/emoji_picker/modules/emoji_search.vue.d.ts +204 -22
  110. package/dist/components/emoji_picker/modules/emoji_search.vue.d.ts.map +1 -1
  111. package/dist/components/emoji_picker/modules/emoji_tabset.vue.d.ts.map +1 -1
  112. package/dist/components/emoji_text_wrapper/emoji_text_wrapper.vue.d.ts +24 -15
  113. package/dist/components/emoji_text_wrapper/emoji_text_wrapper.vue.d.ts.map +1 -1
  114. package/dist/components/empty_state/empty_state.vue.d.ts.map +1 -1
  115. package/dist/components/empty_state/empty_state_constants.d.ts +52 -31
  116. package/dist/components/empty_state/empty_state_constants.d.ts.map +1 -1
  117. package/dist/components/filter_pill/filter_pill.vue.d.ts +4491 -0
  118. package/dist/components/filter_pill/filter_pill.vue.d.ts.map +1 -0
  119. package/dist/components/filter_pill/index.d.ts +2 -0
  120. package/dist/components/filter_pill/index.d.ts.map +1 -0
  121. package/dist/components/hovercard/hovercard.vue.d.ts +380 -41
  122. package/dist/components/hovercard/hovercard.vue.d.ts.map +1 -1
  123. package/dist/components/image_viewer/image_viewer.vue.d.ts +131 -14
  124. package/dist/components/image_viewer/image_viewer.vue.d.ts.map +1 -1
  125. package/dist/components/input/input.vue.d.ts +195 -19
  126. package/dist/components/input/input.vue.d.ts.map +1 -1
  127. package/dist/components/input/input_constants.d.ts +46 -48
  128. package/dist/components/input/input_constants.d.ts.map +1 -1
  129. package/dist/components/input_group/input_group.vue.d.ts +142 -0
  130. package/dist/components/input_group/input_group.vue.d.ts.map +1 -1
  131. package/dist/components/item_layout/item_layout.vue.d.ts +37 -6
  132. package/dist/components/item_layout/item_layout.vue.d.ts.map +1 -1
  133. package/dist/components/keyboard_shortcut/keyboard_shortcut.vue.d.ts +142 -0
  134. package/dist/components/keyboard_shortcut/keyboard_shortcut.vue.d.ts.map +1 -1
  135. package/dist/components/link/index.d.ts +1 -1
  136. package/dist/components/link/link.vue.d.ts +25 -6
  137. package/dist/components/link/link_constants.d.ts +4 -4
  138. package/dist/components/link/link_constants.d.ts.map +1 -1
  139. package/dist/components/list_item/list_item.vue.d.ts +40 -7
  140. package/dist/components/list_item/list_item.vue.d.ts.map +1 -1
  141. package/dist/components/modal/modal.vue.d.ts +292 -97
  142. package/dist/components/modal/modal.vue.d.ts.map +1 -1
  143. package/dist/components/modal/modal_constants.d.ts +7 -6
  144. package/dist/components/mode_island/index.d.ts +3 -0
  145. package/dist/components/mode_island/index.d.ts.map +1 -0
  146. package/dist/components/mode_island/mode_island.vue.d.ts +3 -0
  147. package/dist/components/mode_island/mode_island.vue.d.ts.map +1 -0
  148. package/dist/components/mode_island/mode_island_constants.d.ts +10 -0
  149. package/dist/components/mode_island/mode_island_constants.d.ts.map +1 -0
  150. package/dist/components/mode_island/utils.d.ts +12 -0
  151. package/dist/components/mode_island/utils.d.ts.map +1 -0
  152. package/dist/components/mode_island/validators.d.ts +6 -0
  153. package/dist/components/mode_island/validators.d.ts.map +1 -0
  154. package/dist/components/motion_text/motion_text_constants.d.ts +27 -23
  155. package/dist/components/motion_text/motion_text_constants.d.ts.map +1 -1
  156. package/dist/components/notice/notice.vue.d.ts +269 -34
  157. package/dist/components/notice/notice.vue.d.ts.map +1 -1
  158. package/dist/components/notice/notice_action.vue.d.ts +112 -20
  159. package/dist/components/notice/notice_action.vue.d.ts.map +1 -1
  160. package/dist/components/notice/notice_constants.d.ts.map +1 -1
  161. package/dist/components/notice/notice_content.vue.d.ts +144 -1
  162. package/dist/components/notice/notice_content.vue.d.ts.map +1 -1
  163. package/dist/components/notice/notice_icon.vue.d.ts +2 -2
  164. package/dist/components/notice/notice_icon.vue.d.ts.map +1 -1
  165. package/dist/components/pagination/pagination.vue.d.ts +56 -10
  166. package/dist/components/pagination/pagination.vue.d.ts.map +1 -1
  167. package/dist/components/popover/popover.vue.d.ts +163 -18
  168. package/dist/components/popover/popover.vue.d.ts.map +1 -1
  169. package/dist/components/popover/popover_header_footer.vue.d.ts +62 -7
  170. package/dist/components/popover/popover_header_footer.vue.d.ts.map +1 -1
  171. package/dist/components/radio/radio.vue.d.ts +178 -6
  172. package/dist/components/radio/radio.vue.d.ts.map +1 -1
  173. package/dist/components/radio/radio_constants.d.ts +2 -2
  174. package/dist/components/radio_group/radio_group.vue.d.ts +142 -0
  175. package/dist/components/rich_text_editor/extensions/channels/ChannelComponent.vue.d.ts +25 -6
  176. package/dist/components/rich_text_editor/extensions/channels/ChannelComponent.vue.d.ts.map +1 -1
  177. package/dist/components/rich_text_editor/extensions/channels/ChannelSuggestion.vue.d.ts.map +1 -1
  178. package/dist/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.d.ts +24 -15
  179. package/dist/components/rich_text_editor/extensions/emoji/EmojiSuggestion.vue.d.ts +24 -15
  180. package/dist/components/rich_text_editor/extensions/mentions/MentionComponent.vue.d.ts +25 -6
  181. package/dist/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.d.ts +227 -27
  182. package/dist/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.d.ts.map +1 -1
  183. package/dist/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.d.ts +144 -1
  184. package/dist/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.d.ts.map +1 -1
  185. package/dist/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.d.ts +40 -7
  186. package/dist/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.d.ts.map +1 -1
  187. package/dist/components/rich_text_editor/extensions/variable/VariableComponent.vue.d.ts +411 -44
  188. package/dist/components/rich_text_editor/extensions/variable/VariableComponent.vue.d.ts.map +1 -1
  189. package/dist/components/rich_text_editor/rich_text_editor.vue.d.ts +59 -13
  190. package/dist/components/rich_text_editor/rich_text_editor.vue.d.ts.map +1 -1
  191. package/dist/components/root_layout/root_layout_constants.d.ts +2 -0
  192. package/dist/components/root_layout/root_layout_constants.d.ts.map +1 -1
  193. package/dist/components/scroller/modules/core_scroller.vue.d.ts +2 -2
  194. package/dist/components/scroller/modules/dynamic_scroller.vue.d.ts +12 -12
  195. package/dist/components/scroller/scroller.vue.d.ts +18 -18
  196. package/dist/components/segmented_control/index.d.ts +4 -0
  197. package/dist/components/segmented_control/index.d.ts.map +1 -0
  198. package/dist/components/segmented_control/segmented_control.vue.d.ts +226 -0
  199. package/dist/components/segmented_control/segmented_control.vue.d.ts.map +1 -0
  200. package/dist/components/segmented_control/segmented_control_constants.d.ts +41 -0
  201. package/dist/components/segmented_control/segmented_control_constants.d.ts.map +1 -0
  202. package/dist/components/segmented_control/segmented_control_item.vue.d.ts +35 -0
  203. package/dist/components/segmented_control/segmented_control_item.vue.d.ts.map +1 -0
  204. package/dist/components/select_menu/select_menu.vue.d.ts +189 -31
  205. package/dist/components/select_menu/select_menu.vue.d.ts.map +1 -1
  206. package/dist/components/select_menu/select_menu_constants.d.ts +14 -9
  207. package/dist/components/select_menu/select_menu_constants.d.ts.map +1 -1
  208. package/dist/components/skeleton/skeleton-list-item.vue.d.ts +13 -10
  209. package/dist/components/skeleton/skeleton-paragraph.vue.d.ts +3 -0
  210. package/dist/components/skeleton/skeleton-shape.vue.d.ts +5 -5
  211. package/dist/components/skeleton/skeleton-text.vue.d.ts +3 -0
  212. package/dist/components/skeleton/skeleton.vue.d.ts +24 -15
  213. package/dist/components/skeleton/skeleton_constants.d.ts +18 -13
  214. package/dist/components/skeleton/skeleton_constants.d.ts.map +1 -1
  215. package/dist/components/split_button/{split_button-omega.vue.d.ts → split_button-end.vue.d.ts} +64 -13
  216. package/dist/components/split_button/{split_button-omega.vue.d.ts.map → split_button-end.vue.d.ts.map} +1 -1
  217. package/dist/components/split_button/{split_button-alpha.vue.d.ts → split_button-start.vue.d.ts} +125 -11
  218. package/dist/components/split_button/split_button-start.vue.d.ts.map +1 -0
  219. package/dist/components/split_button/split_button.vue.d.ts +602 -78
  220. package/dist/components/split_button/split_button.vue.d.ts.map +1 -1
  221. package/dist/components/split_button/split_button_constants.d.ts +12 -7
  222. package/dist/components/split_button/split_button_constants.d.ts.map +1 -1
  223. package/dist/components/stack/stack_constants.d.ts.map +1 -1
  224. package/dist/components/tab/index.d.ts +1 -1
  225. package/dist/components/tab/tab.vue.d.ts +86 -11
  226. package/dist/components/tab/tab.vue.d.ts.map +1 -1
  227. package/dist/components/tab/tab_group.vue.d.ts +125 -10
  228. package/dist/components/tab/tab_group.vue.d.ts.map +1 -1
  229. package/dist/components/tab/tabs_constants.d.ts +23 -5
  230. package/dist/components/tab/tabs_constants.d.ts.map +1 -1
  231. package/dist/components/text/index.d.ts +3 -0
  232. package/dist/components/text/index.d.ts.map +1 -0
  233. package/dist/components/text/text.vue.d.ts +145 -0
  234. package/dist/components/text/text.vue.d.ts.map +1 -0
  235. package/dist/components/text/text_constants.d.ts +93 -0
  236. package/dist/components/text/text_constants.d.ts.map +1 -0
  237. package/dist/components/toast/layouts/toast_layout_alternate.vue.d.ts +264 -29
  238. package/dist/components/toast/layouts/toast_layout_alternate.vue.d.ts.map +1 -1
  239. package/dist/components/toast/layouts/toast_layout_alternate_icon.vue.d.ts +2 -2
  240. package/dist/components/toast/layouts/toast_layout_alternate_icon.vue.d.ts.map +1 -1
  241. package/dist/components/toast/layouts/toast_layout_default.vue.d.ts +267 -32
  242. package/dist/components/toast/layouts/toast_layout_default.vue.d.ts.map +1 -1
  243. package/dist/components/toast/toast.vue.d.ts +1125 -185
  244. package/dist/components/toast/toast.vue.d.ts.map +1 -1
  245. package/dist/components/toggle/toggle.vue.d.ts +19 -19
  246. package/dist/components/toggle/toggle.vue.d.ts.map +1 -1
  247. package/dist/components/toggle/toggle_constants.d.ts +6 -4
  248. package/dist/components/toggle/toggle_constants.d.ts.map +1 -1
  249. package/dist/components/tooltip/tooltip.vue.d.ts +31 -5
  250. package/dist/components/tooltip/tooltip.vue.d.ts.map +1 -1
  251. package/dist/{datepicker-LVDRC6Lf.js → datepicker-B2nhxiCg.js} +20 -24
  252. package/dist/datepicker-B2nhxiCg.js.map +1 -0
  253. package/dist/datepicker-CZrNL0Yn.cjs +2 -0
  254. package/dist/datepicker-CZrNL0Yn.cjs.map +1 -0
  255. package/dist/dialtone-vue.cjs +1 -1
  256. package/dist/dialtone-vue.css +1 -1
  257. package/dist/dialtone-vue.js +170 -150
  258. package/dist/directives/focusgroup_directive/focusgroup.d.ts +6 -0
  259. package/dist/directives/focusgroup_directive/focusgroup.d.ts.map +1 -0
  260. package/dist/directives/focusgroup_directive/focusgroup_constants.d.ts +74 -0
  261. package/dist/directives/focusgroup_directive/focusgroup_constants.d.ts.map +1 -0
  262. package/dist/directives/focusgroup_directive/focusgroup_utils.d.ts +15 -0
  263. package/dist/directives/focusgroup_directive/focusgroup_utils.d.ts.map +1 -0
  264. package/dist/directives/focusgroup_directive/index.d.ts +2 -0
  265. package/dist/directives/focusgroup_directive/index.d.ts.map +1 -0
  266. package/dist/directives/focustrap_directive/focustrap.d.ts +6 -0
  267. package/dist/directives/focustrap_directive/focustrap.d.ts.map +1 -0
  268. package/dist/directives/focustrap_directive/focustrap_constants.d.ts +7 -0
  269. package/dist/directives/focustrap_directive/focustrap_constants.d.ts.map +1 -0
  270. package/dist/directives/focustrap_directive/focustrap_utils.d.ts +5 -0
  271. package/dist/directives/focustrap_directive/focustrap_utils.d.ts.map +1 -0
  272. package/dist/directives/focustrap_directive/index.d.ts +2 -0
  273. package/dist/directives/focustrap_directive/index.d.ts.map +1 -0
  274. package/dist/directives/mode_directive/index.d.ts +2 -0
  275. package/dist/directives/mode_directive/index.d.ts.map +1 -0
  276. package/dist/directives/mode_directive/mode.d.ts +6 -0
  277. package/dist/directives/mode_directive/mode.d.ts.map +1 -0
  278. package/dist/directives/tooltip_directive/tooltip.d.ts.map +1 -1
  279. package/dist/emoji_picker-BQW4qRFg.cjs +2 -0
  280. package/dist/emoji_picker-BQW4qRFg.cjs.map +1 -0
  281. package/dist/{emoji_picker-tVHfpHDk.js → emoji_picker-BjgAohQy.js} +9 -8
  282. package/dist/emoji_picker-BjgAohQy.js.map +1 -0
  283. package/dist/index.d.ts +8 -0
  284. package/dist/lib/attachment-carousel/attachment-carousel.cjs +1 -1
  285. package/dist/lib/attachment-carousel/attachment-carousel.js +1 -1
  286. package/dist/lib/attachment-carousel/index.cjs +1 -1
  287. package/dist/lib/attachment-carousel/index.js +1 -1
  288. package/dist/lib/avatar/avatar-constants.cjs +1 -1
  289. package/dist/lib/avatar/avatar-constants.cjs.map +1 -1
  290. package/dist/lib/avatar/avatar-constants.js +111 -24
  291. package/dist/lib/avatar/avatar-constants.js.map +1 -1
  292. package/dist/lib/avatar/avatar.cjs +1 -1
  293. package/dist/lib/avatar/avatar.cjs.map +1 -1
  294. package/dist/lib/avatar/avatar.js +145 -84
  295. package/dist/lib/avatar/avatar.js.map +1 -1
  296. package/dist/lib/avatar/index.cjs +1 -1
  297. package/dist/lib/avatar/index.js +3 -3
  298. package/dist/lib/badge/badge-constants.cjs +1 -1
  299. package/dist/lib/badge/badge-constants.cjs.map +1 -1
  300. package/dist/lib/badge/badge-constants.js +1 -1
  301. package/dist/lib/badge/badge-constants.js.map +1 -1
  302. package/dist/lib/badge/badge.cjs +1 -1
  303. package/dist/lib/badge/badge.cjs.map +1 -1
  304. package/dist/lib/badge/badge.js +26 -14
  305. package/dist/lib/badge/badge.js.map +1 -1
  306. package/dist/lib/banner/banner.cjs +2 -2
  307. package/dist/lib/banner/banner.cjs.map +1 -1
  308. package/dist/lib/banner/banner.js +17 -16
  309. package/dist/lib/banner/banner.js.map +1 -1
  310. package/dist/lib/box/box-constants.cjs +2 -0
  311. package/dist/lib/box/box-constants.cjs.map +1 -0
  312. package/dist/lib/box/box-constants.js +103 -0
  313. package/dist/lib/box/box-constants.js.map +1 -0
  314. package/dist/lib/box/box.cjs +2 -0
  315. package/dist/lib/box/box.cjs.map +1 -0
  316. package/dist/lib/box/box.js +229 -0
  317. package/dist/lib/box/box.js.map +1 -0
  318. package/dist/lib/box/index.cjs +1 -0
  319. package/dist/lib/box/index.js +3 -0
  320. package/dist/lib/box/validators.cjs +2 -0
  321. package/dist/lib/box/validators.cjs.map +1 -0
  322. package/dist/lib/box/validators.js +7 -0
  323. package/dist/lib/box/validators.js.map +1 -0
  324. package/dist/lib/breadcrumbs/breadcrumb-item.cjs +1 -1
  325. package/dist/lib/breadcrumbs/breadcrumb-item.cjs.map +1 -1
  326. package/dist/lib/breadcrumbs/breadcrumb-item.js +29 -38
  327. package/dist/lib/breadcrumbs/breadcrumb-item.js.map +1 -1
  328. package/dist/lib/breadcrumbs/breadcrumbs.cjs +1 -1
  329. package/dist/lib/breadcrumbs/breadcrumbs.cjs.map +1 -1
  330. package/dist/lib/breadcrumbs/breadcrumbs.js +6 -6
  331. package/dist/lib/breadcrumbs/breadcrumbs.js.map +1 -1
  332. package/dist/lib/button/button-constants.cjs +1 -1
  333. package/dist/lib/button/button-constants.cjs.map +1 -1
  334. package/dist/lib/button/button-constants.js +17 -3
  335. package/dist/lib/button/button-constants.js.map +1 -1
  336. package/dist/lib/button/button.cjs +1 -1
  337. package/dist/lib/button/button.cjs.map +1 -1
  338. package/dist/lib/button/button.js +98 -15
  339. package/dist/lib/button/button.js.map +1 -1
  340. package/dist/lib/button-group/button-group.cjs.map +1 -1
  341. package/dist/lib/button-group/button-group.js.map +1 -1
  342. package/dist/lib/callbar-button/callbar-button.cjs +1 -1
  343. package/dist/lib/callbar-button/callbar-button.cjs.map +1 -1
  344. package/dist/lib/callbar-button/callbar-button.js +26 -27
  345. package/dist/lib/callbar-button/callbar-button.js.map +1 -1
  346. package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs +1 -1
  347. package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs.map +1 -1
  348. package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js +45 -36
  349. package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js.map +1 -1
  350. package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.cjs +1 -1
  351. package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.cjs.map +1 -1
  352. package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.js +47 -38
  353. package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.js.map +1 -1
  354. package/dist/lib/callbox/callbox.cjs +1 -1
  355. package/dist/lib/callbox/callbox.cjs.map +1 -1
  356. package/dist/lib/callbox/callbox.js +4 -4
  357. package/dist/lib/callbox/callbox.js.map +1 -1
  358. package/dist/lib/card/card.cjs +1 -1
  359. package/dist/lib/card/card.cjs.map +1 -1
  360. package/dist/lib/card/card.js +10 -18
  361. package/dist/lib/card/card.js.map +1 -1
  362. package/dist/lib/checkbox/checkbox-constants.cjs +1 -1
  363. package/dist/lib/checkbox/checkbox-constants.cjs.map +1 -1
  364. package/dist/lib/checkbox/checkbox-constants.js +2 -2
  365. package/dist/lib/checkbox/checkbox-constants.js.map +1 -1
  366. package/dist/lib/checkbox/checkbox.cjs +1 -1
  367. package/dist/lib/checkbox/checkbox.cjs.map +1 -1
  368. package/dist/lib/checkbox/checkbox.js +79 -28
  369. package/dist/lib/checkbox/checkbox.js.map +1 -1
  370. package/dist/lib/checkbox-group/checkboxes-decorator.cjs +1 -1
  371. package/dist/lib/checkbox-group/checkboxes-decorator.cjs.map +1 -1
  372. package/dist/lib/checkbox-group/checkboxes-decorator.js +0 -1
  373. package/dist/lib/checkbox-group/checkboxes-decorator.js.map +1 -1
  374. package/dist/lib/chip/chip-constants.cjs +1 -1
  375. package/dist/lib/chip/chip-constants.cjs.map +1 -1
  376. package/dist/lib/chip/chip-constants.js +9 -0
  377. package/dist/lib/chip/chip-constants.js.map +1 -1
  378. package/dist/lib/chip/chip.cjs +1 -1
  379. package/dist/lib/chip/chip.cjs.map +1 -1
  380. package/dist/lib/chip/chip.js +13 -13
  381. package/dist/lib/chip/chip.js.map +1 -1
  382. package/dist/lib/codeblock/codeblock-constants.cjs +2 -0
  383. package/dist/lib/codeblock/codeblock-constants.cjs.map +1 -0
  384. package/dist/lib/codeblock/codeblock-constants.js +20 -0
  385. package/dist/lib/codeblock/codeblock-constants.js.map +1 -0
  386. package/dist/lib/codeblock/codeblock.cjs +1 -2
  387. package/dist/lib/codeblock/codeblock.cjs.map +1 -1
  388. package/dist/lib/codeblock/codeblock.js +25 -14
  389. package/dist/lib/codeblock/codeblock.js.map +1 -1
  390. package/dist/lib/collapsible/collapsible.cjs +1 -1
  391. package/dist/lib/collapsible/collapsible.cjs.map +1 -1
  392. package/dist/lib/collapsible/collapsible.js +1 -1
  393. package/dist/lib/collapsible/collapsible.js.map +1 -1
  394. package/dist/lib/combobox/combobox.cjs +1 -1
  395. package/dist/lib/combobox/combobox.js +1 -1
  396. package/dist/lib/combobox/index.cjs +1 -1
  397. package/dist/lib/combobox/index.js +1 -1
  398. package/dist/lib/combobox-multi-select/combobox-multi-select-constants.cjs +1 -1
  399. package/dist/lib/combobox-multi-select/combobox-multi-select-constants.cjs.map +1 -1
  400. package/dist/lib/combobox-multi-select/combobox-multi-select-constants.js +6 -0
  401. package/dist/lib/combobox-multi-select/combobox-multi-select-constants.js.map +1 -1
  402. package/dist/lib/combobox-multi-select/combobox-multi-select.cjs +1 -1
  403. package/dist/lib/combobox-multi-select/combobox-multi-select.cjs.map +1 -1
  404. package/dist/lib/combobox-multi-select/combobox-multi-select.js +34 -33
  405. package/dist/lib/combobox-multi-select/combobox-multi-select.js.map +1 -1
  406. package/dist/lib/combobox-with-popover/combobox-with-popover.cjs +1 -1
  407. package/dist/lib/combobox-with-popover/combobox-with-popover.cjs.map +1 -1
  408. package/dist/lib/combobox-with-popover/combobox-with-popover.js +51 -46
  409. package/dist/lib/combobox-with-popover/combobox-with-popover.js.map +1 -1
  410. package/dist/lib/contact-centers-row/contact-centers-row.cjs +1 -1
  411. package/dist/lib/contact-centers-row/contact-centers-row.cjs.map +1 -1
  412. package/dist/lib/contact-centers-row/contact-centers-row.js +51 -45
  413. package/dist/lib/contact-centers-row/contact-centers-row.js.map +1 -1
  414. package/dist/lib/contact-info/contact-info.cjs +1 -1
  415. package/dist/lib/contact-info/contact-info.cjs.map +1 -1
  416. package/dist/lib/contact-info/contact-info.js +8 -8
  417. package/dist/lib/contact-info/contact-info.js.map +1 -1
  418. package/dist/lib/contact-row/contact-row.cjs +1 -1
  419. package/dist/lib/contact-row/contact-row.cjs.map +1 -1
  420. package/dist/lib/contact-row/contact-row.js +3 -3
  421. package/dist/lib/contact-row/contact-row.js.map +1 -1
  422. package/dist/lib/datepicker/datepicker.cjs +1 -1
  423. package/dist/lib/datepicker/datepicker.js +1 -1
  424. package/dist/lib/datepicker/index.cjs +1 -1
  425. package/dist/lib/datepicker/index.js +1 -1
  426. package/dist/lib/description-list/description-list.cjs +1 -1
  427. package/dist/lib/description-list/description-list.cjs.map +1 -1
  428. package/dist/lib/description-list/description-list.js +1 -1
  429. package/dist/lib/description-list/description-list.js.map +1 -1
  430. package/dist/lib/dropdown/dropdown-constants.cjs +1 -1
  431. package/dist/lib/dropdown/dropdown-constants.cjs.map +1 -1
  432. package/dist/lib/dropdown/dropdown-constants.js +2 -2
  433. package/dist/lib/dropdown/dropdown-constants.js.map +1 -1
  434. package/dist/lib/dropdown/dropdown-list.cjs +1 -1
  435. package/dist/lib/dropdown/dropdown-list.cjs.map +1 -1
  436. package/dist/lib/dropdown/dropdown-list.js +28 -16
  437. package/dist/lib/dropdown/dropdown-list.js.map +1 -1
  438. package/dist/lib/dropdown/dropdown.cjs +1 -1
  439. package/dist/lib/dropdown/dropdown.cjs.map +1 -1
  440. package/dist/lib/dropdown/dropdown.js +30 -26
  441. package/dist/lib/dropdown/dropdown.js.map +1 -1
  442. package/dist/lib/editor/EditorToolbarButton.cjs +1 -1
  443. package/dist/lib/editor/EditorToolbarButton.cjs.map +1 -1
  444. package/dist/lib/editor/EditorToolbarButton.js +1 -1
  445. package/dist/lib/editor/EditorToolbarButton.js.map +1 -1
  446. package/dist/lib/editor/EditorToolbarDropdownButton.cjs +1 -1
  447. package/dist/lib/editor/EditorToolbarDropdownButton.cjs.map +1 -1
  448. package/dist/lib/editor/EditorToolbarDropdownButton.js +1 -1
  449. package/dist/lib/editor/EditorToolbarDropdownButton.js.map +1 -1
  450. package/dist/lib/editor/EditorToolbarPopoverButton.cjs +1 -1
  451. package/dist/lib/editor/EditorToolbarPopoverButton.cjs.map +1 -1
  452. package/dist/lib/editor/EditorToolbarPopoverButton.js +1 -1
  453. package/dist/lib/editor/EditorToolbarPopoverButton.js.map +1 -1
  454. package/dist/lib/editor/editor.cjs +1 -1
  455. package/dist/lib/editor/editor.cjs.map +1 -1
  456. package/dist/lib/editor/editor.js +134 -135
  457. package/dist/lib/editor/editor.js.map +1 -1
  458. package/dist/lib/emoji-picker/emoji-picker.cjs +1 -1
  459. package/dist/lib/emoji-picker/emoji-picker.js +1 -1
  460. package/dist/lib/emoji-picker/index.cjs +1 -1
  461. package/dist/lib/emoji-picker/index.js +1 -1
  462. package/dist/lib/emoji-row/emoji-row.cjs +1 -1
  463. package/dist/lib/emoji-row/emoji-row.cjs.map +1 -1
  464. package/dist/lib/emoji-row/emoji-row.js +1 -1
  465. package/dist/lib/emoji-row/emoji-row.js.map +1 -1
  466. package/dist/lib/emoji-text-wrapper/emoji-text-wrapper.cjs.map +1 -1
  467. package/dist/lib/emoji-text-wrapper/emoji-text-wrapper.js.map +1 -1
  468. package/dist/lib/empty-state/empty-state-constants.cjs +1 -1
  469. package/dist/lib/empty-state/empty-state-constants.cjs.map +1 -1
  470. package/dist/lib/empty-state/empty-state-constants.js +37 -9
  471. package/dist/lib/empty-state/empty-state-constants.js.map +1 -1
  472. package/dist/lib/empty-state/empty-state.cjs +1 -1
  473. package/dist/lib/empty-state/empty-state.cjs.map +1 -1
  474. package/dist/lib/empty-state/empty-state.js +46 -26
  475. package/dist/lib/empty-state/empty-state.js.map +1 -1
  476. package/dist/lib/feed-item-pill/feed-item-pill.cjs +1 -1
  477. package/dist/lib/feed-item-pill/feed-item-pill.cjs.map +1 -1
  478. package/dist/lib/feed-item-pill/feed-item-pill.js +40 -42
  479. package/dist/lib/feed-item-pill/feed-item-pill.js.map +1 -1
  480. package/dist/lib/feed-item-row/feed-item-row.cjs +1 -1
  481. package/dist/lib/feed-item-row/feed-item-row.cjs.map +1 -1
  482. package/dist/lib/feed-item-row/feed-item-row.js +3 -3
  483. package/dist/lib/feed-item-row/feed-item-row.js.map +1 -1
  484. package/dist/lib/filter-pill/filter-pill.cjs +2 -0
  485. package/dist/lib/filter-pill/filter-pill.cjs.map +1 -0
  486. package/dist/lib/filter-pill/filter-pill.js +433 -0
  487. package/dist/lib/filter-pill/filter-pill.js.map +1 -0
  488. package/dist/lib/filter-pill/index.cjs +1 -0
  489. package/dist/lib/filter-pill/index.js +2 -0
  490. package/dist/lib/focusgroup-directive/focusgroup-constants.cjs +2 -0
  491. package/dist/lib/focusgroup-directive/focusgroup-constants.cjs.map +1 -0
  492. package/dist/lib/focusgroup-directive/focusgroup-constants.js +77 -0
  493. package/dist/lib/focusgroup-directive/focusgroup-constants.js.map +1 -0
  494. package/dist/lib/focusgroup-directive/focusgroup-utils.cjs +2 -0
  495. package/dist/lib/focusgroup-directive/focusgroup-utils.cjs.map +1 -0
  496. package/dist/lib/focusgroup-directive/focusgroup-utils.js +33 -0
  497. package/dist/lib/focusgroup-directive/focusgroup-utils.js.map +1 -0
  498. package/dist/lib/focusgroup-directive/focusgroup.cjs +2 -0
  499. package/dist/lib/focusgroup-directive/focusgroup.cjs.map +1 -0
  500. package/dist/lib/focusgroup-directive/focusgroup.js +143 -0
  501. package/dist/lib/focusgroup-directive/focusgroup.js.map +1 -0
  502. package/dist/lib/focusgroup-directive/index.cjs +1 -0
  503. package/dist/lib/focusgroup-directive/index.js +2 -0
  504. package/dist/lib/focustrap-directive/focustrap-constants.cjs +2 -0
  505. package/dist/lib/focustrap-directive/focustrap-constants.cjs.map +1 -0
  506. package/dist/lib/focustrap-directive/focustrap-constants.js +10 -0
  507. package/dist/lib/focustrap-directive/focustrap-constants.js.map +1 -0
  508. package/dist/lib/focustrap-directive/focustrap-utils.cjs +2 -0
  509. package/dist/lib/focustrap-directive/focustrap-utils.cjs.map +1 -0
  510. package/dist/lib/focustrap-directive/focustrap-utils.js +19 -0
  511. package/dist/lib/focustrap-directive/focustrap-utils.js.map +1 -0
  512. package/dist/lib/focustrap-directive/focustrap.cjs +2 -0
  513. package/dist/lib/focustrap-directive/focustrap.cjs.map +1 -0
  514. package/dist/lib/focustrap-directive/focustrap.js +96 -0
  515. package/dist/lib/focustrap-directive/focustrap.js.map +1 -0
  516. package/dist/lib/focustrap-directive/index.cjs +1 -0
  517. package/dist/lib/focustrap-directive/index.js +2 -0
  518. package/dist/lib/general-row/general-row.cjs +1 -1
  519. package/dist/lib/general-row/general-row.cjs.map +1 -1
  520. package/dist/lib/general-row/general-row.js +105 -61
  521. package/dist/lib/general-row/general-row.js.map +1 -1
  522. package/dist/lib/general-row/leftbar-general-row-icon.cjs +1 -1
  523. package/dist/lib/general-row/leftbar-general-row-icon.cjs.map +1 -1
  524. package/dist/lib/general-row/leftbar-general-row-icon.js +1 -1
  525. package/dist/lib/general-row/leftbar-general-row-icon.js.map +1 -1
  526. package/dist/lib/group-row/group-row.cjs +1 -1
  527. package/dist/lib/group-row/group-row.cjs.map +1 -1
  528. package/dist/lib/group-row/group-row.js +2 -2
  529. package/dist/lib/group-row/group-row.js.map +1 -1
  530. package/dist/lib/grouped-chip/grouped-chip.cjs +1 -1
  531. package/dist/lib/grouped-chip/grouped-chip.cjs.map +1 -1
  532. package/dist/lib/grouped-chip/grouped-chip.js +9 -9
  533. package/dist/lib/grouped-chip/grouped-chip.js.map +1 -1
  534. package/dist/lib/hovercard/hovercard.cjs +1 -1
  535. package/dist/lib/hovercard/hovercard.cjs.map +1 -1
  536. package/dist/lib/hovercard/hovercard.js +28 -24
  537. package/dist/lib/hovercard/hovercard.js.map +1 -1
  538. package/dist/lib/icon/icon.cjs +1 -1
  539. package/dist/lib/icon/icon.cjs.map +1 -1
  540. package/dist/lib/icon/icon.js +1 -1
  541. package/dist/lib/icon/icon.js.map +1 -1
  542. package/dist/lib/illustration/illustration.cjs +1 -1
  543. package/dist/lib/illustration/illustration.cjs.map +1 -1
  544. package/dist/lib/illustration/illustration.js +1 -1
  545. package/dist/lib/illustration/illustration.js.map +1 -1
  546. package/dist/lib/image-viewer/image-viewer.cjs +1 -1
  547. package/dist/lib/image-viewer/image-viewer.cjs.map +1 -1
  548. package/dist/lib/image-viewer/image-viewer.js +32 -31
  549. package/dist/lib/image-viewer/image-viewer.js.map +1 -1
  550. package/dist/lib/input/input-constants.cjs +1 -1
  551. package/dist/lib/input/input-constants.cjs.map +1 -1
  552. package/dist/lib/input/input-constants.js +25 -11
  553. package/dist/lib/input/input-constants.js.map +1 -1
  554. package/dist/lib/input/input.cjs +1 -1
  555. package/dist/lib/input/input.cjs.map +1 -1
  556. package/dist/lib/input/input.js +161 -79
  557. package/dist/lib/input/input.js.map +1 -1
  558. package/dist/lib/input-group/input-group.cjs +1 -1
  559. package/dist/lib/input-group/input-group.cjs.map +1 -1
  560. package/dist/lib/input-group/input-group.js +25 -15
  561. package/dist/lib/input-group/input-group.js.map +1 -1
  562. package/dist/lib/item-layout/item-layout.cjs +3 -3
  563. package/dist/lib/item-layout/item-layout.cjs.map +1 -1
  564. package/dist/lib/item-layout/item-layout.js +35 -12
  565. package/dist/lib/item-layout/item-layout.js.map +1 -1
  566. package/dist/lib/ivr-node/ivr-node.cjs +1 -1
  567. package/dist/lib/ivr-node/ivr-node.cjs.map +1 -1
  568. package/dist/lib/ivr-node/ivr-node.js +1 -1
  569. package/dist/lib/ivr-node/ivr-node.js.map +1 -1
  570. package/dist/lib/keyboard-shortcut/keyboard-shortcut.cjs +1 -1
  571. package/dist/lib/keyboard-shortcut/keyboard-shortcut.cjs.map +1 -1
  572. package/dist/lib/keyboard-shortcut/keyboard-shortcut.js +48 -38
  573. package/dist/lib/keyboard-shortcut/keyboard-shortcut.js.map +1 -1
  574. package/dist/lib/kitchen-sink/kitchen-sink-view.cjs +2 -0
  575. package/dist/lib/kitchen-sink/kitchen-sink-view.cjs.map +1 -0
  576. package/dist/lib/kitchen-sink/kitchen-sink-view.js +205 -0
  577. package/dist/lib/kitchen-sink/kitchen-sink-view.js.map +1 -0
  578. package/dist/lib/link/index.cjs +1 -1
  579. package/dist/lib/link/index.js +2 -2
  580. package/dist/lib/link/link-constants.cjs +1 -1
  581. package/dist/lib/link/link-constants.cjs.map +1 -1
  582. package/dist/lib/link/link-constants.js +7 -7
  583. package/dist/lib/link/link-constants.js.map +1 -1
  584. package/dist/lib/link/link.cjs +1 -1
  585. package/dist/lib/link/link.cjs.map +1 -1
  586. package/dist/lib/link/link.js +17 -2
  587. package/dist/lib/link/link.js.map +1 -1
  588. package/dist/lib/list-item/list-item.cjs +1 -1
  589. package/dist/lib/list-item/list-item.cjs.map +1 -1
  590. package/dist/lib/list-item/list-item.js +9 -5
  591. package/dist/lib/list-item/list-item.js.map +1 -1
  592. package/dist/lib/list-item-group/list-item-group.cjs +1 -1
  593. package/dist/lib/list-item-group/list-item-group.cjs.map +1 -1
  594. package/dist/lib/list-item-group/list-item-group.js +1 -1
  595. package/dist/lib/list-item-group/list-item-group.js.map +1 -1
  596. package/dist/lib/message-input/index.cjs +1 -1
  597. package/dist/lib/message-input/index.js +1 -1
  598. package/dist/lib/message-input/message-input-button.cjs +1 -1
  599. package/dist/lib/message-input/message-input-button.cjs.map +1 -1
  600. package/dist/lib/message-input/message-input-button.js +1 -1
  601. package/dist/lib/message-input/message-input-button.js.map +1 -1
  602. package/dist/lib/message-input/message-input-link.cjs +1 -1
  603. package/dist/lib/message-input/message-input-link.cjs.map +1 -1
  604. package/dist/lib/message-input/message-input-link.js +9 -9
  605. package/dist/lib/message-input/message-input-link.js.map +1 -1
  606. package/dist/lib/message-input/message-input-topbar.cjs +1 -1
  607. package/dist/lib/message-input/message-input-topbar.cjs.map +1 -1
  608. package/dist/lib/message-input/message-input-topbar.js +2 -2
  609. package/dist/lib/message-input/message-input-topbar.js.map +1 -1
  610. package/dist/lib/message-input/message-input.cjs +1 -1
  611. package/dist/lib/message-input/message-input.js +1 -1
  612. package/dist/lib/modal/modal-constants.cjs +1 -1
  613. package/dist/lib/modal/modal-constants.cjs.map +1 -1
  614. package/dist/lib/modal/modal-constants.js +3 -3
  615. package/dist/lib/modal/modal-constants.js.map +1 -1
  616. package/dist/lib/modal/modal.cjs +1 -1
  617. package/dist/lib/modal/modal.cjs.map +1 -1
  618. package/dist/lib/modal/modal.js +158 -157
  619. package/dist/lib/modal/modal.js.map +1 -1
  620. package/dist/lib/mode-directive/index.cjs +1 -0
  621. package/dist/lib/mode-directive/index.js +2 -0
  622. package/dist/lib/mode-directive/mode.cjs +2 -0
  623. package/dist/lib/mode-directive/mode.cjs.map +1 -0
  624. package/dist/lib/mode-directive/mode.js +67 -0
  625. package/dist/lib/mode-directive/mode.js.map +1 -0
  626. package/dist/lib/mode-island/index.cjs +1 -0
  627. package/dist/lib/mode-island/index.js +3 -0
  628. package/dist/lib/mode-island/mode-island-constants.cjs +2 -0
  629. package/dist/lib/mode-island/mode-island-constants.cjs.map +1 -0
  630. package/dist/lib/mode-island/mode-island-constants.js +10 -0
  631. package/dist/lib/mode-island/mode-island-constants.js.map +1 -0
  632. package/dist/lib/mode-island/mode-island.cjs +2 -0
  633. package/dist/lib/mode-island/mode-island.cjs.map +1 -0
  634. package/dist/lib/mode-island/mode-island.js +102 -0
  635. package/dist/lib/mode-island/mode-island.js.map +1 -0
  636. package/dist/lib/mode-island/utils.cjs +2 -0
  637. package/dist/lib/mode-island/utils.cjs.map +1 -0
  638. package/dist/lib/mode-island/utils.js +28 -0
  639. package/dist/lib/mode-island/utils.js.map +1 -0
  640. package/dist/lib/mode-island/validators.cjs +2 -0
  641. package/dist/lib/mode-island/validators.cjs.map +1 -0
  642. package/dist/lib/mode-island/validators.js +10 -0
  643. package/dist/lib/mode-island/validators.js.map +1 -0
  644. package/dist/lib/motion-text/motion-text-constants.cjs +1 -1
  645. package/dist/lib/motion-text/motion-text-constants.cjs.map +1 -1
  646. package/dist/lib/motion-text/motion-text-constants.js +18 -6
  647. package/dist/lib/motion-text/motion-text-constants.js.map +1 -1
  648. package/dist/lib/motion-text/motion-text.cjs +1 -1
  649. package/dist/lib/motion-text/motion-text.cjs.map +1 -1
  650. package/dist/lib/motion-text/motion-text.js +5 -7
  651. package/dist/lib/motion-text/motion-text.js.map +1 -1
  652. package/dist/lib/notice/notice-action.cjs +1 -1
  653. package/dist/lib/notice/notice-action.cjs.map +1 -1
  654. package/dist/lib/notice/notice-action.js +14 -14
  655. package/dist/lib/notice/notice-action.js.map +1 -1
  656. package/dist/lib/notice/notice-constants.cjs +1 -1
  657. package/dist/lib/notice/notice-constants.cjs.map +1 -1
  658. package/dist/lib/notice/notice-constants.js +2 -2
  659. package/dist/lib/notice/notice-constants.js.map +1 -1
  660. package/dist/lib/notice/notice-content.cjs +1 -1
  661. package/dist/lib/notice/notice-content.cjs.map +1 -1
  662. package/dist/lib/notice/notice-content.js +29 -12
  663. package/dist/lib/notice/notice-content.js.map +1 -1
  664. package/dist/lib/notice/notice-icon.cjs +1 -1
  665. package/dist/lib/notice/notice-icon.cjs.map +1 -1
  666. package/dist/lib/notice/notice-icon.js +4 -4
  667. package/dist/lib/notice/notice-icon.js.map +1 -1
  668. package/dist/lib/notice/notice.cjs +1 -1
  669. package/dist/lib/notice/notice.cjs.map +1 -1
  670. package/dist/lib/notice/notice.js +17 -16
  671. package/dist/lib/notice/notice.js.map +1 -1
  672. package/dist/lib/pagination/pagination.cjs +1 -1
  673. package/dist/lib/pagination/pagination.cjs.map +1 -1
  674. package/dist/lib/pagination/pagination.js +13 -12
  675. package/dist/lib/pagination/pagination.js.map +1 -1
  676. package/dist/lib/popover/popover-constants.cjs +1 -1
  677. package/dist/lib/popover/popover-constants.cjs.map +1 -1
  678. package/dist/lib/popover/popover-constants.js +6 -6
  679. package/dist/lib/popover/popover-constants.js.map +1 -1
  680. package/dist/lib/popover/popover-header-footer.cjs +1 -1
  681. package/dist/lib/popover/popover-header-footer.cjs.map +1 -1
  682. package/dist/lib/popover/popover-header-footer.js +11 -3
  683. package/dist/lib/popover/popover-header-footer.js.map +1 -1
  684. package/dist/lib/popover/popover.cjs +1 -1
  685. package/dist/lib/popover/popover.cjs.map +1 -1
  686. package/dist/lib/popover/popover.js +78 -58
  687. package/dist/lib/popover/popover.js.map +1 -1
  688. package/dist/lib/radio/radio-constants.cjs +1 -1
  689. package/dist/lib/radio/radio-constants.cjs.map +1 -1
  690. package/dist/lib/radio/radio-constants.js +2 -2
  691. package/dist/lib/radio/radio-constants.js.map +1 -1
  692. package/dist/lib/radio/radio.cjs +1 -1
  693. package/dist/lib/radio/radio.cjs.map +1 -1
  694. package/dist/lib/radio/radio.js +94 -31
  695. package/dist/lib/radio/radio.js.map +1 -1
  696. package/dist/lib/resizable/index.cjs +1 -1
  697. package/dist/lib/resizable/index.js +3 -3
  698. package/dist/lib/resizable/resizable-handle.cjs +1 -1
  699. package/dist/lib/resizable/resizable-handle.js +1 -1
  700. package/dist/lib/resizable/resizable-panel.cjs +1 -1
  701. package/dist/lib/resizable/resizable-panel.js +1 -1
  702. package/dist/lib/resizable/resizable.cjs +1 -1
  703. package/dist/lib/resizable/resizable.js +1 -1
  704. package/dist/lib/rich-text-editor/index.cjs +1 -1
  705. package/dist/lib/rich-text-editor/index.js +1 -1
  706. package/dist/lib/rich-text-editor/markdownRenderer.cjs +1 -1
  707. package/dist/lib/rich-text-editor/markdownRenderer.js +1 -1
  708. package/dist/lib/rich-text-editor/rich-text-editor.cjs +1 -1
  709. package/dist/lib/rich-text-editor/rich-text-editor.js +1 -1
  710. package/dist/lib/root-layout/root-layout-constants.cjs +1 -1
  711. package/dist/lib/root-layout/root-layout-constants.cjs.map +1 -1
  712. package/dist/lib/root-layout/root-layout-constants.js +2 -0
  713. package/dist/lib/root-layout/root-layout-constants.js.map +1 -1
  714. package/dist/lib/root-layout/root-layout.cjs +1 -1
  715. package/dist/lib/root-layout/root-layout.cjs.map +1 -1
  716. package/dist/lib/root-layout/root-layout.js +2 -2
  717. package/dist/lib/root-layout/root-layout.js.map +1 -1
  718. package/dist/lib/scroller/index.cjs +1 -1
  719. package/dist/lib/scroller/index.js +1 -1
  720. package/dist/lib/scroller/scroller.cjs +1 -1
  721. package/dist/lib/scroller/scroller.js +1 -1
  722. package/dist/lib/segmented-control/index.cjs +1 -0
  723. package/dist/lib/segmented-control/index.js +4 -0
  724. package/dist/lib/segmented-control/segmented-control-constants.cjs +2 -0
  725. package/dist/lib/segmented-control/segmented-control-constants.cjs.map +1 -0
  726. package/dist/lib/segmented-control/segmented-control-constants.js +41 -0
  727. package/dist/lib/segmented-control/segmented-control-constants.js.map +1 -0
  728. package/dist/lib/segmented-control/segmented-control-item.cjs +2 -0
  729. package/dist/lib/segmented-control/segmented-control-item.cjs.map +1 -0
  730. package/dist/lib/segmented-control/segmented-control-item.js +104 -0
  731. package/dist/lib/segmented-control/segmented-control-item.js.map +1 -0
  732. package/dist/lib/segmented-control/segmented-control.cjs +2 -0
  733. package/dist/lib/segmented-control/segmented-control.cjs.map +1 -0
  734. package/dist/lib/segmented-control/segmented-control.js +204 -0
  735. package/dist/lib/segmented-control/segmented-control.js.map +1 -0
  736. package/dist/lib/select-menu/select-menu-constants.cjs +1 -1
  737. package/dist/lib/select-menu/select-menu-constants.cjs.map +1 -1
  738. package/dist/lib/select-menu/select-menu-constants.js +7 -2
  739. package/dist/lib/select-menu/select-menu-constants.js.map +1 -1
  740. package/dist/lib/select-menu/select-menu.cjs +1 -1
  741. package/dist/lib/select-menu/select-menu.cjs.map +1 -1
  742. package/dist/lib/select-menu/select-menu.js +117 -58
  743. package/dist/lib/select-menu/select-menu.js.map +1 -1
  744. package/dist/lib/settings-menu-button/settings-menu-button.cjs +1 -1
  745. package/dist/lib/settings-menu-button/settings-menu-button.cjs.map +1 -1
  746. package/dist/lib/settings-menu-button/settings-menu-button.js +5 -5
  747. package/dist/lib/settings-menu-button/settings-menu-button.js.map +1 -1
  748. package/dist/lib/skeleton/skeleton-constants.cjs +1 -1
  749. package/dist/lib/skeleton/skeleton-constants.cjs.map +1 -1
  750. package/dist/lib/skeleton/skeleton-constants.js +10 -2
  751. package/dist/lib/skeleton/skeleton-constants.js.map +1 -1
  752. package/dist/lib/skeleton/skeleton-list-item.cjs +1 -1
  753. package/dist/lib/skeleton/skeleton-list-item.cjs.map +1 -1
  754. package/dist/lib/skeleton/skeleton-list-item.js +2 -2
  755. package/dist/lib/skeleton/skeleton-list-item.js.map +1 -1
  756. package/dist/lib/skeleton/skeleton-shape.cjs +1 -1
  757. package/dist/lib/skeleton/skeleton-shape.cjs.map +1 -1
  758. package/dist/lib/skeleton/skeleton-shape.js +3 -3
  759. package/dist/lib/skeleton/skeleton-shape.js.map +1 -1
  760. package/dist/lib/split-button/split-button-constants.cjs +1 -1
  761. package/dist/lib/split-button/split-button-constants.cjs.map +1 -1
  762. package/dist/lib/split-button/split-button-constants.js +5 -0
  763. package/dist/lib/split-button/split-button-constants.js.map +1 -1
  764. package/dist/lib/split-button/split-button-end.cjs +2 -0
  765. package/dist/lib/split-button/split-button-end.cjs.map +1 -0
  766. package/dist/lib/split-button/{split-button-omega.js → split-button-end.js} +9 -9
  767. package/dist/lib/split-button/split-button-end.js.map +1 -0
  768. package/dist/lib/split-button/split-button-start.cjs +2 -0
  769. package/dist/lib/split-button/split-button-start.cjs.map +1 -0
  770. package/dist/lib/split-button/split-button-start.js +182 -0
  771. package/dist/lib/split-button/split-button-start.js.map +1 -0
  772. package/dist/lib/split-button/split-button.cjs +1 -1
  773. package/dist/lib/split-button/split-button.cjs.map +1 -1
  774. package/dist/lib/split-button/split-button.js +246 -71
  775. package/dist/lib/split-button/split-button.js.map +1 -1
  776. package/dist/lib/stack/stack-constants.cjs +1 -1
  777. package/dist/lib/stack/stack-constants.cjs.map +1 -1
  778. package/dist/lib/stack/stack-constants.js +10 -2
  779. package/dist/lib/stack/stack-constants.js.map +1 -1
  780. package/dist/lib/stack/stack.cjs.map +1 -1
  781. package/dist/lib/stack/stack.js.map +1 -1
  782. package/dist/lib/tab/index.cjs +1 -1
  783. package/dist/lib/tab/index.js +5 -5
  784. package/dist/lib/tab/tab-group.cjs +1 -1
  785. package/dist/lib/tab/tab-group.cjs.map +1 -1
  786. package/dist/lib/tab/tab-group.js +173 -50
  787. package/dist/lib/tab/tab-group.js.map +1 -1
  788. package/dist/lib/tab/tab.cjs +1 -1
  789. package/dist/lib/tab/tab.cjs.map +1 -1
  790. package/dist/lib/tab/tab.js +108 -23
  791. package/dist/lib/tab/tab.js.map +1 -1
  792. package/dist/lib/tab/tabs-constants.cjs +1 -1
  793. package/dist/lib/tab/tabs-constants.cjs.map +1 -1
  794. package/dist/lib/tab/tabs-constants.js +33 -2
  795. package/dist/lib/tab/tabs-constants.js.map +1 -1
  796. package/dist/lib/text/index.cjs +1 -0
  797. package/dist/lib/text/index.js +3 -0
  798. package/dist/lib/text/text-constants.cjs +2 -0
  799. package/dist/lib/text/text-constants.cjs.map +1 -0
  800. package/dist/lib/text/text-constants.js +126 -0
  801. package/dist/lib/text/text-constants.js.map +1 -0
  802. package/dist/lib/text/text.cjs +2 -0
  803. package/dist/lib/text/text.cjs.map +1 -0
  804. package/dist/lib/text/text.js +150 -0
  805. package/dist/lib/text/text.js.map +1 -0
  806. package/dist/lib/toast/index.cjs +1 -1
  807. package/dist/lib/toast/index.js +1 -1
  808. package/dist/lib/toast/toast.cjs +1 -1
  809. package/dist/lib/toast/toast.js +1 -1
  810. package/dist/lib/toggle/toggle-constants.cjs +1 -1
  811. package/dist/lib/toggle/toggle-constants.cjs.map +1 -1
  812. package/dist/lib/toggle/toggle-constants.js +2 -0
  813. package/dist/lib/toggle/toggle-constants.js.map +1 -1
  814. package/dist/lib/toggle/toggle.cjs +1 -1
  815. package/dist/lib/toggle/toggle.cjs.map +1 -1
  816. package/dist/lib/toggle/toggle.js +24 -29
  817. package/dist/lib/toggle/toggle.js.map +1 -1
  818. package/dist/lib/tooltip/tooltip.cjs +1 -4
  819. package/dist/lib/tooltip/tooltip.cjs.map +1 -1
  820. package/dist/lib/tooltip/tooltip.js +36 -31
  821. package/dist/lib/tooltip/tooltip.js.map +1 -1
  822. package/dist/lib/tooltip-directive/tooltip.cjs +1 -1
  823. package/dist/lib/tooltip-directive/tooltip.cjs.map +1 -1
  824. package/dist/lib/tooltip-directive/tooltip.js +36 -35
  825. package/dist/lib/tooltip-directive/tooltip.js.map +1 -1
  826. package/dist/lib/top-banner-info/top-banner-info.cjs +1 -1
  827. package/dist/lib/top-banner-info/top-banner-info.cjs.map +1 -1
  828. package/dist/lib/top-banner-info/top-banner-info.js +4 -4
  829. package/dist/lib/top-banner-info/top-banner-info.js.map +1 -1
  830. package/dist/lib/unread-pill/unread-pill.cjs +1 -1
  831. package/dist/lib/unread-pill/unread-pill.cjs.map +1 -1
  832. package/dist/lib/unread-pill/unread-pill.js +1 -1
  833. package/dist/lib/unread-pill/unread-pill.js.map +1 -1
  834. package/dist/lib/validation-messages/validation-messages.cjs +1 -1
  835. package/dist/lib/validation-messages/validation-messages.cjs.map +1 -1
  836. package/dist/lib/validation-messages/validation-messages.js +2 -2
  837. package/dist/lib/validation-messages/validation-messages.js.map +1 -1
  838. package/dist/localization/en-US.cjs +5 -0
  839. package/dist/localization/en-US.cjs.map +1 -1
  840. package/dist/localization/en-US.js +1 -1
  841. package/dist/localization/en-US.js.map +1 -1
  842. package/dist/{markdownRenderer-DCgGQseq.cjs → markdownRenderer-Dsq-CiH9.cjs} +1 -1
  843. package/dist/{markdownRenderer-DCgGQseq.cjs.map → markdownRenderer-Dsq-CiH9.cjs.map} +1 -1
  844. package/dist/{markdownRenderer-D_P94RyM.js → markdownRenderer-k7_rQkox.js} +1 -1
  845. package/dist/{markdownRenderer-D_P94RyM.js.map → markdownRenderer-k7_rQkox.js.map} +1 -1
  846. package/dist/{message_input-CHlTsBGK.js → message_input-BYy1xKCy.js} +129 -130
  847. package/dist/message_input-BYy1xKCy.js.map +1 -0
  848. package/dist/message_input-sSCHhaeC.cjs +2 -0
  849. package/dist/message_input-sSCHhaeC.cjs.map +1 -0
  850. package/dist/mode_constants-CzYJW9ua.cjs +2 -0
  851. package/dist/mode_constants-CzYJW9ua.cjs.map +1 -0
  852. package/dist/mode_constants-tb7TL85q.js +14 -0
  853. package/dist/mode_constants-tb7TL85q.js.map +1 -0
  854. package/dist/recipes/buttons/callbar_button/callbar_button.vue.d.ts +85 -14
  855. package/dist/recipes/buttons/callbar_button/callbar_button.vue.d.ts.map +1 -1
  856. package/dist/recipes/buttons/callbar_button_with_dropdown/callbar_button_with_dropdown.vue.d.ts +313 -41
  857. package/dist/recipes/buttons/callbar_button_with_dropdown/callbar_button_with_dropdown.vue.d.ts.map +1 -1
  858. package/dist/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts +302 -41
  859. package/dist/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts.map +1 -1
  860. package/dist/recipes/cards/ivr_node/ivr_node.vue.d.ts +228 -35
  861. package/dist/recipes/cards/ivr_node/ivr_node.vue.d.ts.map +1 -1
  862. package/dist/recipes/chips/grouped_chip/grouped_chip.vue.d.ts +62 -16
  863. package/dist/recipes/chips/grouped_chip/grouped_chip.vue.d.ts.map +1 -1
  864. package/dist/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.d.ts +237 -28
  865. package/dist/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.d.ts.map +1 -1
  866. package/dist/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.d.ts +184 -21
  867. package/dist/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.d.ts.map +1 -1
  868. package/dist/recipes/conversation_view/editor/EditorToolbarButton.vue.d.ts +53 -7
  869. package/dist/recipes/conversation_view/editor/EditorToolbarDropdownButton.vue.d.ts +228 -26
  870. package/dist/recipes/conversation_view/editor/EditorToolbarDropdownButton.vue.d.ts.map +1 -1
  871. package/dist/recipes/conversation_view/editor/EditorToolbarPopoverButton.vue.d.ts +216 -25
  872. package/dist/recipes/conversation_view/editor/EditorToolbarPopoverButton.vue.d.ts.map +1 -1
  873. package/dist/recipes/conversation_view/editor/editor.vue.d.ts +1163 -178
  874. package/dist/recipes/conversation_view/editor/editor.vue.d.ts.map +1 -1
  875. package/dist/recipes/conversation_view/emoji_row/emoji_row.vue.d.ts +132 -42
  876. package/dist/recipes/conversation_view/emoji_row/emoji_row.vue.d.ts.map +1 -1
  877. package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts +91 -23
  878. package/dist/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts.map +1 -1
  879. package/dist/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +126 -35
  880. package/dist/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts.map +1 -1
  881. package/dist/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.d.ts +90 -13
  882. package/dist/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.d.ts.map +1 -1
  883. package/dist/recipes/conversation_view/message_input/message_input.vue.d.ts +1622 -207
  884. package/dist/recipes/conversation_view/message_input/message_input.vue.d.ts.map +1 -1
  885. package/dist/recipes/conversation_view/message_input/message_input_button.vue.d.ts +226 -12
  886. package/dist/recipes/conversation_view/message_input/message_input_button.vue.d.ts.map +1 -1
  887. package/dist/recipes/conversation_view/message_input/message_input_link.vue.d.ts +636 -55
  888. package/dist/recipes/conversation_view/message_input/message_input_link.vue.d.ts.map +1 -1
  889. package/dist/recipes/conversation_view/message_input/message_input_topbar.vue.d.ts +226 -12
  890. package/dist/recipes/conversation_view/message_input/message_input_topbar.vue.d.ts.map +1 -1
  891. package/dist/recipes/header/settings_menu_button/settings_menu_button.vue.d.ts +53 -7
  892. package/dist/recipes/header/settings_menu_button/settings_menu_button.vue.d.ts.map +1 -1
  893. package/dist/recipes/item_layout/contact_info/contact_info.vue.d.ts +122 -33
  894. package/dist/recipes/item_layout/contact_info/contact_info.vue.d.ts.map +1 -1
  895. package/dist/recipes/leftbar/callbox/callbox.vue.d.ts +87 -29
  896. package/dist/recipes/leftbar/callbox/callbox.vue.d.ts.map +1 -1
  897. package/dist/recipes/leftbar/contact_centers_row/contact_centers_row.vue.d.ts +82 -28
  898. package/dist/recipes/leftbar/contact_centers_row/contact_centers_row.vue.d.ts.map +1 -1
  899. package/dist/recipes/leftbar/contact_row/contact_row.vue.d.ts +588 -72
  900. package/dist/recipes/leftbar/contact_row/contact_row.vue.d.ts.map +1 -1
  901. package/dist/recipes/leftbar/general_row/general_row.vue.d.ts +480 -31
  902. package/dist/recipes/leftbar/general_row/general_row.vue.d.ts.map +1 -1
  903. package/dist/recipes/leftbar/general_row/leftbar_general_row_icon.vue.d.ts.map +1 -1
  904. package/dist/recipes/leftbar/group_row/group_row.vue.d.ts +479 -30
  905. package/dist/recipes/leftbar/group_row/group_row.vue.d.ts.map +1 -1
  906. package/dist/recipes/leftbar/unread_pill/unread_pill.vue.d.ts.map +1 -1
  907. package/dist/recipes/notices/top_banner_info/top_banner_info.vue.d.ts.map +1 -1
  908. package/dist/{resizable-aOVGO_Os.cjs → resizable-DhowneUp.cjs} +2 -2
  909. package/dist/{resizable-aOVGO_Os.cjs.map → resizable-DhowneUp.cjs.map} +1 -1
  910. package/dist/{resizable-D4-peBOl.js → resizable-xcOu-0_w.js} +3 -3
  911. package/dist/{resizable-D4-peBOl.js.map → resizable-xcOu-0_w.js.map} +1 -1
  912. package/dist/{resizable_handle-BlKBiWnx.js → resizable_handle-BAZzCA_i.js} +3 -3
  913. package/dist/{resizable_handle-BlKBiWnx.js.map → resizable_handle-BAZzCA_i.js.map} +1 -1
  914. package/dist/{resizable_handle-RIKS8frB.cjs → resizable_handle-fjKg48eY.cjs} +2 -2
  915. package/dist/{resizable_handle-RIKS8frB.cjs.map → resizable_handle-fjKg48eY.cjs.map} +1 -1
  916. package/dist/{resizable_utils-DhuzXRdP.cjs → resizable_utils-BE4lK07_.cjs} +1 -1
  917. package/dist/{resizable_utils-DhuzXRdP.cjs.map → resizable_utils-BE4lK07_.cjs.map} +1 -1
  918. package/dist/{resizable_utils-BComtrMV.js → resizable_utils-DsKnGHKW.js} +1 -1
  919. package/dist/{resizable_utils-BComtrMV.js.map → resizable_utils-DsKnGHKW.js.map} +1 -1
  920. package/dist/{rich_text_editor-Ba67C4Uk.js → rich_text_editor-CEW74QNe.js} +637 -598
  921. package/dist/{rich_text_editor-Ba67C4Uk.js.map → rich_text_editor-CEW74QNe.js.map} +1 -1
  922. package/dist/rich_text_editor-immDiKq_.cjs +10 -0
  923. package/dist/{rich_text_editor-DMP5eTlf.cjs.map → rich_text_editor-immDiKq_.cjs.map} +1 -1
  924. package/dist/scroller-C15VLKNK.cjs +2 -0
  925. package/dist/scroller-C15VLKNK.cjs.map +1 -0
  926. package/dist/{scroller-BGVDh3sq.js → scroller-DPqcc_Wl.js} +6 -6
  927. package/dist/scroller-DPqcc_Wl.js.map +1 -0
  928. package/dist/shared/sr_only_close_button.cjs +1 -1
  929. package/dist/shared/sr_only_close_button.cjs.map +1 -1
  930. package/dist/shared/sr_only_close_button.js +1 -1
  931. package/dist/shared/sr_only_close_button.js.map +1 -1
  932. package/dist/toast-B1WZNMAm.cjs +2 -0
  933. package/dist/toast-B1WZNMAm.cjs.map +1 -0
  934. package/dist/{toast-DvPN-bCi.js → toast-DaH2KF7B.js} +52 -51
  935. package/dist/toast-DaH2KF7B.js.map +1 -0
  936. package/dist/{useResizableCalculations-DAajatT4.js → useResizableCalculations-2UpEXvfY.js} +2 -2
  937. package/dist/{useResizableCalculations-DAajatT4.js.map → useResizableCalculations-2UpEXvfY.js.map} +1 -1
  938. package/dist/{useResizableCalculations-BDITle3Q.cjs → useResizableCalculations-DPBjAFWQ.cjs} +2 -2
  939. package/dist/{useResizableCalculations-BDITle3Q.cjs.map → useResizableCalculations-DPBjAFWQ.cjs.map} +1 -1
  940. package/package.json +9 -7
  941. package/dist/attachment_carousel-BHxR7A76.cjs +0 -2
  942. package/dist/attachment_carousel-BHxR7A76.cjs.map +0 -1
  943. package/dist/attachment_carousel-CouFqFMw.js.map +0 -1
  944. package/dist/combobox-DgClbLOg.js.map +0 -1
  945. package/dist/combobox-DhjZxfUw.cjs +0 -3
  946. package/dist/combobox-DhjZxfUw.cjs.map +0 -1
  947. package/dist/components/split_button/split_button-alpha.vue.d.ts.map +0 -1
  948. package/dist/datepicker-DprRX9AH.cjs +0 -2
  949. package/dist/datepicker-DprRX9AH.cjs.map +0 -1
  950. package/dist/datepicker-LVDRC6Lf.js.map +0 -1
  951. package/dist/emoji_picker-Cl-T4BXK.cjs +0 -2
  952. package/dist/emoji_picker-Cl-T4BXK.cjs.map +0 -1
  953. package/dist/emoji_picker-tVHfpHDk.js.map +0 -1
  954. package/dist/lib/split-button/split-button-alpha.cjs +0 -2
  955. package/dist/lib/split-button/split-button-alpha.cjs.map +0 -1
  956. package/dist/lib/split-button/split-button-alpha.js +0 -107
  957. package/dist/lib/split-button/split-button-alpha.js.map +0 -1
  958. package/dist/lib/split-button/split-button-omega.cjs +0 -2
  959. package/dist/lib/split-button/split-button-omega.cjs.map +0 -1
  960. package/dist/lib/split-button/split-button-omega.js.map +0 -1
  961. package/dist/message_input-AWgvtwMV.cjs +0 -2
  962. package/dist/message_input-AWgvtwMV.cjs.map +0 -1
  963. package/dist/message_input-CHlTsBGK.js.map +0 -1
  964. package/dist/rich_text_editor-DMP5eTlf.cjs +0 -10
  965. package/dist/scroller-BGVDh3sq.js.map +0 -1
  966. package/dist/scroller-CjAsgjl9.cjs +0 -2
  967. package/dist/scroller-CjAsgjl9.cjs.map +0 -1
  968. package/dist/toast-DvPN-bCi.js.map +0 -1
  969. package/dist/toast-d8_zmgkL.cjs +0 -2
  970. package/dist/toast-d8_zmgkL.cjs.map +0 -1
@@ -1,26 +1,25 @@
1
- import { EVENT_KEYNAMES as e } from "../../common/constants/index.js";
2
- import { disableRootScrolling as t, enableRootScrolling as n, getUniqueString as r, hasSlotContent as i, returnFirstEl as a } from "../../common/utils/index.js";
3
- import { t as o } from "../../_plugin-vue_export-helper-BTgDAbhb.js";
4
- import s from "../../common/mixins/modal.js";
5
- import { NOTICE_KINDS as c } from "../notice/notice-constants.js";
1
+ import { disableRootScrolling as e, enableRootScrolling as t, getUniqueString as n, hasSlotContent as r, returnFirstEl as i } from "../../common/utils/index.js";
2
+ import { t as a } from "../../_plugin-vue_export-helper-BTgDAbhb.js";
3
+ import o from "../../common/mixins/mode.js";
4
+ import { NOTICE_KINDS as s } from "../notice/notice-constants.js";
5
+ import c from "../text/text.js";
6
6
  import { DialtoneLocalization as l } from "../../localization/index.js";
7
7
  import u from "../button/button.js";
8
8
  import d from "../../shared/sr_only_close_button.js";
9
- import f from "../lazy-show/lazy-show.js";
10
- import { MODAL_BANNER_KINDS as p, MODAL_KIND_MODIFIERS as m, MODAL_SIZE_MODIFIERS as h } from "./modal-constants.js";
11
- import { Teleport as g, Transition as _, createBlock as v, createCommentVNode as y, createElementBlock as b, createElementVNode as x, createTextVNode as S, createVNode as C, mergeProps as w, normalizeClass as T, openBlock as E, renderSlot as D, resolveComponent as O, toDisplayString as k, toHandlers as A, vShow as j, withCtx as M, withDirectives as N } from "vue";
12
- import { DtIconClose as P } from "@dialpad/dialtone-icons/vue3";
9
+ import { MODAL_BANNER_KINDS as f, MODAL_KIND_MODIFIERS as p, MODAL_SIZE_MODIFIERS as m } from "./modal-constants.js";
10
+ import { Teleport as h, Transition as g, createBlock as _, createCommentVNode as v, createElementBlock as y, createElementVNode as b, createTextVNode as x, createVNode as S, mergeProps as C, normalizeClass as w, openBlock as T, renderSlot as E, resolveComponent as D, toDisplayString as O, vShow as k, withCtx as A, withDirectives as j, withModifiers as M } from "vue";
11
+ import { DtIconClose as N } from "@dialpad/dialtone-icons/vue";
13
12
  //#region components/modal/modal.vue
14
- var F = {
13
+ var P = "button:not(:disabled),[href],input:not(:disabled),select:not(:disabled),textarea:not(:disabled),details,[tabindex]:not([tabindex=\"-1\"]):not(:disabled):not([aria-disabled=\"true\"])", F = {
15
14
  compatConfig: { MODE: 3 },
16
15
  name: "DtModal",
17
16
  components: {
18
- DtLazyShow: f,
19
17
  DtButton: u,
20
- DtIconClose: P,
18
+ DtText: c,
19
+ DtIconClose: N,
21
20
  SrOnlyCloseButton: d
22
21
  },
23
- mixins: [s],
22
+ mixins: [o],
24
23
  props: {
25
24
  copy: {
26
25
  type: String,
@@ -33,10 +32,10 @@ var F = {
33
32
  labelledById: {
34
33
  type: String,
35
34
  default: function() {
36
- return r();
35
+ return n();
37
36
  }
38
37
  },
39
- show: {
38
+ open: {
40
39
  type: Boolean,
41
40
  default: !1
42
41
  },
@@ -51,12 +50,12 @@ var F = {
51
50
  kind: {
52
51
  type: String,
53
52
  default: "default",
54
- validator: (e) => Object.keys(m).includes(e)
53
+ validator: (e) => Object.keys(p).includes(e)
55
54
  },
56
55
  size: {
57
56
  type: String,
58
57
  default: "default",
59
- validator: (e) => Object.keys(h).includes(e)
58
+ validator: (e) => Object.keys(m).includes(e)
60
59
  },
61
60
  modalClass: {
62
61
  type: [
@@ -85,8 +84,8 @@ var F = {
85
84
  bannerKind: {
86
85
  type: String,
87
86
  default: "warning",
88
- validate(e) {
89
- return c.includes(e);
87
+ validator(e) {
88
+ return s.includes(e);
90
89
  }
91
90
  },
92
91
  bannerClass: {
@@ -97,9 +96,9 @@ var F = {
97
96
  ],
98
97
  default: ""
99
98
  },
100
- hideClose: {
99
+ showClose: {
101
100
  type: Boolean,
102
- default: !1
101
+ default: !0
103
102
  },
104
103
  closeOnClick: {
105
104
  type: Boolean,
@@ -122,93 +121,88 @@ var F = {
122
121
  emits: [
123
122
  "click",
124
123
  "keydown",
125
- "update:show"
124
+ "update:open"
126
125
  ],
127
126
  data() {
128
127
  return {
129
- MODAL_KIND_MODIFIERS: m,
130
- MODAL_SIZE_MODIFIERS: h,
131
- MODAL_BANNER_KINDS: p,
132
- EVENT_KEYNAMES: e,
133
- hasSlotContent: i,
128
+ MODAL_KIND_MODIFIERS: p,
129
+ MODAL_SIZE_MODIFIERS: m,
130
+ MODAL_BANNER_KINDS: f,
131
+ hasSlotContent: r,
134
132
  i18n: new l()
135
133
  };
136
134
  },
137
135
  computed: {
138
- modalListeners() {
139
- return {
140
- click: (e) => {
141
- this.closeOnClick && e.target === e.currentTarget ? this.close() : this.show && e.target !== e.currentTarget && this.handleModalClick(e), this.$emit("click", e);
142
- },
143
- keydown: (t) => {
144
- switch (t.code) {
145
- case e.esc:
146
- case e.escape:
147
- this.close();
148
- break;
149
- case e.tab:
150
- this.trapFocus(t);
151
- break;
152
- }
153
- this.$emit("keydown", t);
154
- },
155
- "after-enter": async () => {
156
- this.$emit("update:show", !0), await this.setFocusAfterTransition();
157
- },
158
- focusin: (e) => {
159
- let t = this.$refs.modalRoot?.$el || this.$el;
160
- this.show && t && !t.contains(e.target) && (e.preventDefault(), this.focusFirstElement(t));
161
- }
162
- };
163
- },
164
- open() {
165
- return `${!this.show}`;
166
- },
167
136
  hasFooterSlot() {
168
137
  return !!this.$slots.footer;
169
138
  },
170
139
  bannerKindClass() {
171
- return p[this.bannerKind];
140
+ return f[this.bannerKind];
172
141
  },
173
142
  closeButtonTitle() {
174
143
  return this.i18n.$t("DIALTONE_CLOSE_BUTTON");
175
144
  }
176
145
  },
177
- watch: { show: { handler(e) {
178
- e ? (this.previousActiveElement = document.activeElement, t(a(this.$refs.modalRoot?.$el || this.$el).getRootNode().host)) : (n(a(this.$refs.modalRoot?.$el || this.$el).getRootNode().host), this.previousActiveElement?.focus(), this.previousActiveElement = null);
179
- } } },
146
+ watch: { open(e) {
147
+ this.syncDialogState(e);
148
+ } },
149
+ mounted() {
150
+ this.open && this.syncDialogState(!0);
151
+ },
152
+ beforeUnmount() {
153
+ let e = this.$refs.dialogEl;
154
+ e?.open && (e.close(), t(this.getScrollRoot())), this.previousActiveElement = null;
155
+ },
180
156
  methods: {
157
+ getScrollRoot() {
158
+ return i(this.$refs.dialogEl)?.getRootNode()?.host;
159
+ },
160
+ syncDialogState(n) {
161
+ let r = this.$refs.dialogEl;
162
+ r && (n ? (this.previousActiveElement = document.activeElement, r.open || r.showModal(), e(this.getScrollRoot())) : r.open && t(this.getScrollRoot()));
163
+ },
181
164
  close() {
182
- this.$emit("update:show", !1);
165
+ this.$emit("update:open", !1);
183
166
  },
184
- async setFocusAfterTransition() {
185
- let e = this.$refs.modalRoot?.$el || this.$el;
186
- this.initialFocusElement === "first" ? await this.focusFirstElement(e) : this.initialFocusElement.startsWith("#") ? await this.focusElementById(this.initialFocusElement) : this.initialFocusElement instanceof HTMLElement && this.initialFocusElement.focus();
167
+ onBackdropClick(e) {
168
+ this.closeOnClick && e.target === e.currentTarget && this.close(), this.$emit("click", e);
187
169
  },
188
- trapFocus(e) {
189
- if (this.show) {
190
- let t = this.$refs.modalRoot?.$el || this.$el;
191
- this.focusTrappedTabPress(e, t);
192
- }
170
+ onKeydown(e) {
171
+ this.$emit("keydown", e);
193
172
  },
194
- handleModalClick(e) {
195
- let t = e.target, n = this.$refs.modalRoot?.$el || this.$el, r = this._getFocusableElements(n);
196
- r.length && !r.includes(t) && (r.includes(document.activeElement) || this.focusFirstElement(n));
173
+ async onAfterEnter() {
174
+ this.$emit("update:open", !0), await this.setFocusAfterTransition();
175
+ },
176
+ onAfterLeave() {
177
+ let e = this.$refs.dialogEl;
178
+ e?.open && e.close(), this.previousActiveElement?.focus(), this.previousActiveElement = null;
179
+ },
180
+ focusFirstTabbable(e) {
181
+ let t = [...e.querySelectorAll(P)];
182
+ if (!t.length) return;
183
+ let n = t[0];
184
+ n.matches("[type=\"radio\"]:not(:checked)") && (n = t.find((e) => e.checked && e.name === n.name) || n), n.focus({ preventScroll: !0 });
185
+ },
186
+ async setFocusAfterTransition() {
187
+ let e = this.$refs.dialogEl;
188
+ if (e) if (await this.$nextTick(), this.initialFocusElement === "first") this.focusFirstTabbable(e);
189
+ else if (typeof this.initialFocusElement == "string" && this.initialFocusElement.startsWith("#")) {
190
+ let t = e.querySelector(this.initialFocusElement);
191
+ t ? t.focus() : (console.warn("Could not find the element specified in dt-modal prop \"initialFocusElement\". Defaulting to focusing the first element."), this.focusFirstTabbable(e));
192
+ } else this.initialFocusElement instanceof HTMLElement && this.initialFocusElement.focus();
197
193
  }
198
194
  }
199
- }, I = ["aria-describedby", "aria-labelledby"], L = ["id"], R = ["id"], z = {
195
+ }, I = ["aria-describedby", "aria-labelledby"], L = ["id"], R = {
200
196
  key: 4,
201
197
  class: "d-modal__footer"
202
198
  };
203
- function B(e, t, n, r, i, a) {
204
- let o = O("sr-only-close-button"), s = O("dt-icon-close"), c = O("dt-button"), l = O("dt-lazy-show");
205
- return E(), v(g, {
199
+ function z(e, t, n, r, i, a) {
200
+ let o = D("dt-text"), s = D("sr-only-close-button"), c = D("dt-icon-close"), l = D("dt-button");
201
+ return T(), _(h, {
206
202
  disabled: !n.appendTo,
207
203
  to: n.appendTo
208
- }, [C(l, w({
209
- ref: "modalRoot",
210
- transition: "d-zoom",
211
- show: n.show,
204
+ }, [b("dialog", C({
205
+ ref: "dialogEl",
212
206
  class: [
213
207
  "d-modal",
214
208
  i.MODAL_KIND_MODIFIERS[n.kind],
@@ -216,85 +210,92 @@ function B(e, t, n, r, i, a) {
216
210
  n.modalClass
217
211
  ],
218
212
  "data-qa": "dt-modal",
219
- "aria-hidden": a.open
220
- }, A(a.modalListeners)), {
221
- default: M(() => [n.show && (i.hasSlotContent(e.$slots.banner) || n.bannerTitle) ? (E(), b("div", {
222
- key: 0,
223
- "data-qa": "dt-modal-banner",
224
- class: T([
225
- "d-modal__banner",
226
- n.bannerClass,
227
- a.bannerKindClass
228
- ])
229
- }, [D(e.$slots, "banner", {}, () => [S(k(n.bannerTitle), 1)])], 2)) : y("", !0), C(_, {
230
- appear: "",
231
- name: "d-modal__dialog"
232
- }, {
233
- default: M(() => [N(x("div", {
234
- class: T([
235
- "d-modal__dialog",
236
- { "d-modal__dialog--scrollable": n.fixedHeaderFooter },
237
- n.dialogClass
238
- ]),
239
- role: "dialog",
240
- "aria-modal": "true",
241
- "aria-describedby": n.describedById,
242
- "aria-labelledby": n.labelledById
243
- }, [
244
- i.hasSlotContent(e.$slots.header) ? (E(), b("div", {
245
- key: 0,
246
- id: n.labelledById,
247
- class: "d-modal__header",
248
- "data-qa": "dt-modal-title"
249
- }, [D(e.$slots, "header")], 8, L)) : (E(), b("h2", {
250
- key: 1,
251
- id: n.labelledById,
252
- class: "d-modal__header",
253
- "data-qa": "dt-modal-title"
254
- }, k(n.title), 9, R)),
255
- i.hasSlotContent(e.$slots.default) ? (E(), b("div", {
256
- key: 2,
257
- class: T(["d-modal__content", n.contentClass]),
258
- "data-qa": "dt-modal-copy"
259
- }, [D(e.$slots, "default")], 2)) : (E(), b("p", {
260
- key: 3,
261
- class: T(["d-modal__content", n.contentClass]),
262
- "data-qa": "dt-modal-copy"
263
- }, k(n.copy), 3)),
264
- a.hasFooterSlot ? (E(), b("footer", z, [D(e.$slots, "footer")])) : y("", !0),
265
- n.hideClose ? (E(), v(o, {
266
- key: 5,
267
- onClose: a.close
268
- }, null, 8, ["onClose"])) : (E(), v(c, {
269
- key: 6,
270
- class: "d-modal__close",
271
- "data-qa": "dt-modal-close-button",
272
- size: "md",
273
- kind: "muted",
274
- importance: "clear",
275
- "aria-label": a.closeButtonTitle,
276
- title: a.closeButtonTitle,
277
- onClick: a.close
278
- }, {
279
- icon: M(({ iconSize: e }) => [C(s, { size: e }, null, 8, ["size"])]),
280
- _: 1
281
- }, 8, [
282
- "aria-label",
283
- "title",
284
- "onClick"
285
- ]))
286
- ], 10, I), [[j, n.show]])]),
287
- _: 3
288
- })]),
213
+ "aria-describedby": n.describedById || void 0,
214
+ "aria-labelledby": n.labelledById
215
+ }, e.modeAttrs, {
216
+ onCancel: t[0] || (t[0] = M((...e) => a.close && a.close(...e), ["prevent"])),
217
+ onClick: t[1] || (t[1] = (...e) => a.onBackdropClick && a.onBackdropClick(...e)),
218
+ onKeydown: t[2] || (t[2] = (...e) => a.onKeydown && a.onKeydown(...e))
219
+ }), [n.open && (i.hasSlotContent(e.$slots.banner) || n.bannerTitle) ? (T(), y("div", {
220
+ key: 0,
221
+ "data-qa": "dt-modal-banner",
222
+ class: w([
223
+ "d-modal__banner",
224
+ n.bannerClass,
225
+ a.bannerKindClass
226
+ ])
227
+ }, [E(e.$slots, "banner", {}, () => [x(O(n.bannerTitle), 1)])], 2)) : v("", !0), S(g, {
228
+ appear: n.open,
229
+ name: "d-modal__dialog",
230
+ onAfterEnter: a.onAfterEnter,
231
+ onAfterLeave: a.onAfterLeave
232
+ }, {
233
+ default: A(() => [j(b("div", { class: w([
234
+ "d-modal__dialog",
235
+ { "d-modal__dialog--scrollable": n.fixedHeaderFooter },
236
+ n.dialogClass
237
+ ]) }, [
238
+ i.hasSlotContent(e.$slots.header) ? (T(), y("div", {
239
+ key: 0,
240
+ id: n.labelledById,
241
+ class: "d-modal__header",
242
+ "data-qa": "dt-modal-title"
243
+ }, [E(e.$slots, "header")], 8, L)) : (T(), _(o, {
244
+ key: 1,
245
+ id: n.labelledById,
246
+ kind: "headline",
247
+ size: 600,
248
+ strength: "medium",
249
+ density: "100",
250
+ "text-box-trim": "start",
251
+ as: "h2",
252
+ class: "d-modal__header",
253
+ "data-qa": "dt-modal-title"
254
+ }, {
255
+ default: A(() => [x(O(n.title), 1)]),
256
+ _: 1
257
+ }, 8, ["id"])),
258
+ i.hasSlotContent(e.$slots.default) ? (T(), y("div", {
259
+ key: 2,
260
+ class: w(["d-modal__content", n.contentClass]),
261
+ "data-qa": "dt-modal-copy"
262
+ }, [E(e.$slots, "default")], 2)) : (T(), y("p", {
263
+ key: 3,
264
+ class: w(["d-modal__content", n.contentClass]),
265
+ "data-qa": "dt-modal-copy"
266
+ }, O(n.copy), 3)),
267
+ a.hasFooterSlot ? (T(), y("footer", R, [E(e.$slots, "footer")])) : v("", !0),
268
+ n.showClose ? (T(), _(l, {
269
+ key: 6,
270
+ class: "d-modal__close",
271
+ "data-qa": "dt-modal-close-button",
272
+ size: 300,
273
+ kind: "muted",
274
+ importance: "clear",
275
+ "aria-label": a.closeButtonTitle,
276
+ title: a.closeButtonTitle,
277
+ onClick: a.close
278
+ }, {
279
+ icon: A(({ iconSize: e }) => [S(c, { size: e }, null, 8, ["size"])]),
280
+ _: 1
281
+ }, 8, [
282
+ "aria-label",
283
+ "title",
284
+ "onClick"
285
+ ])) : (T(), _(s, {
286
+ key: 5,
287
+ onClose: a.close
288
+ }, null, 8, ["onClose"]))
289
+ ], 2), [[k, n.open]])]),
289
290
  _: 3
290
- }, 16, [
291
- "show",
292
- "class",
293
- "aria-hidden"
294
- ])], 8, ["disabled", "to"]);
291
+ }, 8, [
292
+ "appear",
293
+ "onAfterEnter",
294
+ "onAfterLeave"
295
+ ])], 16, I)], 8, ["disabled", "to"]);
295
296
  }
296
- var V = /* @__PURE__ */ o(F, [["render", B]]);
297
+ var B = /* @__PURE__ */ a(F, [["render", z]]);
297
298
  //#endregion
298
- export { V as default };
299
+ export { B as default };
299
300
 
300
301
  //# sourceMappingURL=modal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"modal.js","names":[],"sources":["../../../components/modal/modal.vue"],"sourcesContent":["<template>\n <teleport\n :disabled=\"!appendTo\"\n :to=\"appendTo\"\n >\n <dt-lazy-show\n ref=\"modalRoot\"\n transition=\"d-zoom\"\n :show=\"show\"\n :class=\"[\n 'd-modal',\n MODAL_KIND_MODIFIERS[kind],\n MODAL_SIZE_MODIFIERS[size],\n modalClass,\n ]\"\n data-qa=\"dt-modal\"\n :aria-hidden=\"open\"\n v-on=\"modalListeners\"\n >\n <div\n v-if=\"show && (hasSlotContent($slots.banner) || bannerTitle)\"\n data-qa=\"dt-modal-banner\"\n :class=\"[\n 'd-modal__banner',\n bannerClass,\n bannerKindClass,\n ]\"\n >\n <!-- @slot Slot for the banner, defaults to bannerTitle prop -->\n <slot name=\"banner\">\n {{ bannerTitle }}\n </slot>\n </div>\n <transition\n appear\n name=\"d-modal__dialog\"\n >\n <div\n v-show=\"show\"\n :class=\"[\n 'd-modal__dialog',\n { 'd-modal__dialog--scrollable': fixedHeaderFooter },\n dialogClass,\n ]\"\n role=\"dialog\"\n aria-modal=\"true\"\n :aria-describedby=\"describedById\"\n :aria-labelledby=\"labelledById\"\n >\n <div\n v-if=\"hasSlotContent($slots.header)\"\n :id=\"labelledById\"\n class=\"d-modal__header\"\n data-qa=\"dt-modal-title\"\n >\n <!-- @slot Slot for dialog header section, taking the place of any \"title\" text prop -->\n <slot name=\"header\" />\n </div>\n <h2\n v-else\n :id=\"labelledById\"\n class=\"d-modal__header\"\n data-qa=\"dt-modal-title\"\n >\n {{ title }}\n </h2>\n <div\n v-if=\"hasSlotContent($slots.default)\"\n :class=\"[\n 'd-modal__content',\n contentClass,\n ]\"\n data-qa=\"dt-modal-copy\"\n >\n <!-- @slot Default slot for dialog body section, taking the place of any \"copy\" text prop -->\n <slot />\n </div>\n <p\n v-else\n :class=\"[\n 'd-modal__content',\n contentClass,\n ]\"\n data-qa=\"dt-modal-copy\"\n >\n {{ copy }}\n </p>\n <footer\n v-if=\"hasFooterSlot\"\n class=\"d-modal__footer\"\n >\n <!-- @slot Slot for dialog footer content, often containing cancel and confirm buttons. -->\n <slot name=\"footer\" />\n </footer>\n <sr-only-close-button\n v-if=\"hideClose\"\n @close=\"close\"\n />\n <dt-button\n v-else\n class=\"d-modal__close\"\n data-qa=\"dt-modal-close-button\"\n size=\"md\"\n kind=\"muted\"\n importance=\"clear\"\n :aria-label=\"closeButtonTitle\"\n :title=\"closeButtonTitle\"\n @click=\"close\"\n >\n <template #icon=\"{ iconSize }\">\n <dt-icon-close\n :size=\"iconSize\"\n />\n </template>\n </dt-button>\n </div>\n </transition>\n </dt-lazy-show>\n </teleport>\n</template>\n\n<script>\n/* eslint-disable max-lines */\nimport { DtButton } from '@/components/button';\nimport { DtIconClose } from '@dialpad/dialtone-icons/vue3';\nimport Modal from '@/common/mixins/modal';\nimport {\n MODAL_BANNER_KINDS,\n MODAL_KIND_MODIFIERS,\n MODAL_SIZE_MODIFIERS,\n} from './modal_constants';\nimport { returnFirstEl, getUniqueString, hasSlotContent, disableRootScrolling, enableRootScrolling } from '@/common/utils';\nimport { DtLazyShow } from '@/components/lazy_show';\nimport { EVENT_KEYNAMES } from '@/common/constants';\nimport SrOnlyCloseButton from '@/common/sr_only_close_button.vue';\nimport { NOTICE_KINDS } from '@/components/notice';\nimport { DialtoneLocalization } from '@/localization';\n\n/**\n * Modals focus the user’s attention exclusively on one task or piece of information\n * via a window that sits on top of the page content.\n * @see https://dialtone.dialpad.com/components/modal.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtModal',\n\n components: {\n DtLazyShow,\n DtButton,\n DtIconClose,\n SrOnlyCloseButton,\n },\n\n mixins: [Modal],\n\n props: {\n /**\n * Body text to display as the modal's main content.\n */\n copy: {\n type: String,\n default: '',\n },\n\n /**\n * Id to use for the dialog's aria-describedby.\n * Recommended only if the dialog content itself isn't enough to give full context,\n * as screen readers should recite the dialog contents by default before any aria-description.\n */\n describedById: {\n type: String,\n default: '',\n },\n\n /**\n * Id to use for the dialog's aria-labelledby.\n */\n labelledById: {\n type: String,\n default: function () { return getUniqueString(); },\n },\n\n /**\n * Whether the modal should be shown.\n * Parent component can sync on this value to control the modal's visibility.\n * @values true, false\n */\n show: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Title text to display in the modal header.\n */\n title: {\n type: String,\n default: '',\n },\n\n /**\n * Title text to display in the modal banner.\n */\n bannerTitle: {\n type: String,\n default: '',\n },\n\n /**\n * The theme of the modal. kind - default or danger,\n * @values default, danger\n */\n kind: {\n type: String,\n default: 'default',\n validator: (k) => Object.keys(MODAL_KIND_MODIFIERS).includes(k),\n },\n\n /**\n * The size of the modal. size - default or full,\n * @values default, full\n */\n size: {\n type: String,\n default: 'default',\n validator: (s) => Object.keys(MODAL_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * Additional class name for the root modal element.\n * Can accept String, Object, and Array, i.e. has the\n * same API as Vue's built-in handling of the class attribute.\n */\n modalClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * Additional class name for the dialog element within the modal.\n * Can accept String, Object, and Array, i.e. has the\n * same API as Vue's built-in handling of the class attribute.\n */\n dialogClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * Additional class name for the content element within the modal.\n * Can accept String, Object, and Array, i.e. has the\n * same API as Vue's built-in handling of the class attribute.\n */\n contentClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * Sets the color of the banner.\n * @values base, error, info, success, warning\n */\n bannerKind: {\n type: String,\n default: 'warning',\n validate (kind) {\n return NOTICE_KINDS.includes(kind);\n },\n },\n\n /**\n * Additional class name for the banner element within the modal.\n * Can accept String, Object, and Array, i.e. has the\n * same API as Vue's built-in handling of the class attribute.\n */\n bannerClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * Hides the close button on the modal\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Whether the modal will close when you click outside of the dialog on the overlay.\n * @values true, false\n */\n closeOnClick: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Scrollable modal that allows scroll the modal content keeping the header and footer fixed\n * @values true, false\n */\n fixedHeaderFooter: {\n type: Boolean,\n default: true,\n },\n\n /**\n * The element that is focused when the modal is opened. This can be an\n * HTMLElement within the modal, a string starting with '#' which will\n * find the element by ID. 'first' which will automatically focus\n * the first element, or 'dialog' which will focus the dialog window itself.\n * If the dialog is modal this prop cannot be 'none'.\n */\n initialFocusElement: {\n type: [String, HTMLElement],\n default: 'first',\n validator: initialFocusElement => {\n return initialFocusElement === 'first' ||\n (initialFocusElement instanceof HTMLElement) ||\n initialFocusElement.startsWith('#');\n },\n },\n\n /**\n * A CSS selector string for the element to portal the modal to. If not provided, the modal will be rendered in its default location.\n */\n appendTo: {\n type: String,\n default: undefined,\n },\n },\n\n emits: [\n /**\n * Native button click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Native keydown event\n *\n * @event keydown\n * @type {KeyboardEvent}\n */\n 'keydown',\n\n /**\n * The modal will emit a \"false\" boolean value for this event when the user performs a modal-closing action.\n * Parent components can sync on this value to create a 2-way binding to control modal visibility.\n *\n * @event update:show\n * @type {Boolean}\n */\n 'update:show',\n ],\n\n data () {\n return {\n MODAL_KIND_MODIFIERS,\n MODAL_SIZE_MODIFIERS,\n MODAL_BANNER_KINDS,\n EVENT_KEYNAMES,\n hasSlotContent,\n i18n: new DialtoneLocalization(),\n };\n },\n\n computed: {\n modalListeners () {\n return {\n click: event => {\n // Handle backdrop clicks for closing modal\n if (this.closeOnClick && event.target === event.currentTarget) {\n this.close();\n } else if (this.show && event.target !== event.currentTarget) {\n // Ensure focus stays within modal when clicking inside it\n this.handleModalClick(event);\n }\n\n this.$emit('click', event);\n },\n\n keydown: event => {\n switch (event.code) {\n case EVENT_KEYNAMES.esc:\n case EVENT_KEYNAMES.escape:\n this.close();\n break;\n case EVENT_KEYNAMES.tab:\n this.trapFocus(event);\n break;\n }\n this.$emit('keydown', event);\n },\n\n 'after-enter': async () => {\n this.$emit('update:show', true);\n await this.setFocusAfterTransition();\n },\n\n focusin: event => {\n // Ensure focus stays within modal\n const modalEl = this.$refs.modalRoot?.$el || this.$el;\n if (this.show && modalEl && !modalEl.contains(event.target)) {\n event.preventDefault();\n this.focusFirstElement(modalEl);\n }\n },\n };\n },\n\n open () {\n return `${!this.show}`;\n },\n\n hasFooterSlot () {\n return !!this.$slots.footer;\n },\n\n bannerKindClass () {\n return MODAL_BANNER_KINDS[this.bannerKind];\n },\n\n closeButtonTitle () {\n return this.i18n.$t('DIALTONE_CLOSE_BUTTON');\n },\n },\n\n watch: {\n show: {\n handler (isShowing) {\n if (isShowing) {\n // Set a reference to the previously-active element, to which we'll return focus on modal close.\n this.previousActiveElement = document.activeElement;\n const modalEl = this.$refs.modalRoot?.$el || this.$el;\n disableRootScrolling(returnFirstEl(modalEl).getRootNode().host);\n } else {\n const modalEl = this.$refs.modalRoot?.$el || this.$el;\n enableRootScrolling(returnFirstEl(modalEl).getRootNode().host);\n // Modal is being hidden, so return focus to the previously active element before clearing the reference.\n this.previousActiveElement?.focus();\n this.previousActiveElement = null;\n }\n },\n },\n },\n\n methods: {\n close () {\n this.$emit('update:show', false);\n },\n\n async setFocusAfterTransition () {\n const modalEl = this.$refs.modalRoot?.$el || this.$el;\n if (this.initialFocusElement === 'first') {\n await this.focusFirstElement(modalEl);\n } else if (this.initialFocusElement.startsWith('#')) {\n await this.focusElementById(this.initialFocusElement);\n } else if (this.initialFocusElement instanceof HTMLElement) {\n this.initialFocusElement.focus();\n }\n },\n\n trapFocus (e) {\n if (this.show) {\n const modalEl = this.$refs.modalRoot?.$el || this.$el;\n this.focusTrappedTabPress(e, modalEl);\n }\n },\n\n handleModalClick (event) {\n // Ensure focus stays within modal when clicking inside it\n const clickedElement = event.target;\n const modalEl = this.$refs.modalRoot?.$el || this.$el;\n const focusableElements = this._getFocusableElements(modalEl);\n\n // If the clicked element is not focusable, ensure focus stays in modal\n if (focusableElements.length && !focusableElements.includes(clickedElement)) {\n // Check if current active element is still within the modal\n if (!focusableElements.includes(document.activeElement)) {\n this.focusFirstElement(modalEl);\n }\n }\n },\n },\n};\n</script>\n"],"mappings":"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"}
1
+ {"version":3,"file":"modal.js","names":[],"sources":["../../../components/modal/modal.vue"],"sourcesContent":["<template>\n <teleport\n :disabled=\"!appendTo\"\n :to=\"appendTo\"\n >\n <!-- eslint-disable-next-line vuejs-accessibility/no-static-element-interactions -->\n <dialog\n ref=\"dialogEl\"\n :class=\"[\n 'd-modal',\n MODAL_KIND_MODIFIERS[kind],\n MODAL_SIZE_MODIFIERS[size],\n modalClass,\n ]\"\n data-qa=\"dt-modal\"\n :aria-describedby=\"describedById || undefined\"\n :aria-labelledby=\"labelledById\"\n v-bind=\"modeAttrs\"\n @cancel.prevent=\"close\"\n @click=\"onBackdropClick\"\n @keydown=\"onKeydown\"\n >\n <div\n v-if=\"open && (hasSlotContent($slots.banner) || bannerTitle)\"\n data-qa=\"dt-modal-banner\"\n :class=\"[\n 'd-modal__banner',\n bannerClass,\n bannerKindClass,\n ]\"\n >\n <!-- @slot Slot for the banner, defaults to bannerTitle prop -->\n <slot name=\"banner\">\n {{ bannerTitle }}\n </slot>\n </div>\n <transition\n :appear=\"open\"\n name=\"d-modal__dialog\"\n @after-enter=\"onAfterEnter\"\n @after-leave=\"onAfterLeave\"\n >\n <div\n v-show=\"open\"\n :class=\"[\n 'd-modal__dialog',\n { 'd-modal__dialog--scrollable': fixedHeaderFooter },\n dialogClass,\n ]\"\n >\n <div\n v-if=\"hasSlotContent($slots.header)\"\n :id=\"labelledById\"\n class=\"d-modal__header\"\n data-qa=\"dt-modal-title\"\n >\n <!-- @slot Slot for dialog header section, taking the place of any \"title\" text prop -->\n <slot name=\"header\" />\n </div>\n <dt-text\n v-else\n :id=\"labelledById\"\n kind=\"headline\"\n :size=\"600\"\n strength=\"medium\"\n density=\"100\"\n text-box-trim=\"start\"\n as=\"h2\"\n class=\"d-modal__header\"\n data-qa=\"dt-modal-title\"\n >\n {{ title }}\n </dt-text>\n <div\n v-if=\"hasSlotContent($slots.default)\"\n :class=\"[\n 'd-modal__content',\n contentClass,\n ]\"\n data-qa=\"dt-modal-copy\"\n >\n <!-- @slot Default slot for dialog body section, taking the place of any \"copy\" text prop -->\n <slot />\n </div>\n <p\n v-else\n :class=\"[\n 'd-modal__content',\n contentClass,\n ]\"\n data-qa=\"dt-modal-copy\"\n >\n {{ copy }}\n </p>\n <footer\n v-if=\"hasFooterSlot\"\n class=\"d-modal__footer\"\n >\n <!-- @slot Slot for dialog footer content, often containing cancel and confirm buttons. -->\n <slot name=\"footer\" />\n </footer>\n <sr-only-close-button\n v-if=\"!showClose\"\n @close=\"close\"\n />\n <dt-button\n v-else\n class=\"d-modal__close\"\n data-qa=\"dt-modal-close-button\"\n :size=\"300\"\n kind=\"muted\"\n importance=\"clear\"\n :aria-label=\"closeButtonTitle\"\n :title=\"closeButtonTitle\"\n @click=\"close\"\n >\n <template #icon=\"{ iconSize }\">\n <dt-icon-close\n :size=\"iconSize\"\n />\n </template>\n </dt-button>\n </div>\n </transition>\n </dialog>\n </teleport>\n</template>\n\n<script>\n/* eslint-disable max-lines */\nimport { DtButton } from '@/components/button';\nimport { DtText } from '@/components/text';\nimport { DtIconClose } from '@dialpad/dialtone-icons/vue';\nimport ModeMixin from '@/common/mixins/mode';\nimport {\n MODAL_BANNER_KINDS,\n MODAL_KIND_MODIFIERS,\n MODAL_SIZE_MODIFIERS,\n} from './modal_constants';\nimport { getUniqueString, hasSlotContent, returnFirstEl, disableRootScrolling, enableRootScrolling } from '@/common/utils';\nimport SrOnlyCloseButton from '@/common/sr_only_close_button.vue';\nimport { NOTICE_KINDS } from '@/components/notice';\nimport { DialtoneLocalization } from '@/localization';\n\nconst focusableSelector = 'button:not(:disabled),[href],input:not(:disabled),select:not(:disabled),' +\n 'textarea:not(:disabled),details,[tabindex]:not([tabindex=\"-1\"]):not(:disabled):not([aria-disabled=\"true\"])';\n\n/**\n * Modals focus the user's attention exclusively on one task or piece of information\n * via a window that sits on top of the page content.\n * @see https://dialtone.dialpad.com/components/modal.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtModal',\n\n components: {\n DtButton,\n DtText,\n DtIconClose,\n SrOnlyCloseButton,\n },\n\n mixins: [ModeMixin],\n\n props: {\n /**\n * Body text to display as the modal's main content.\n */\n copy: {\n type: String,\n default: '',\n },\n\n /**\n * Id to use for the dialog's aria-describedby.\n * Recommended only if the dialog content itself isn't enough to give full context,\n * as screen readers should recite the dialog contents by default before any aria-description.\n */\n describedById: {\n type: String,\n default: '',\n },\n\n /**\n * Id to use for the dialog's aria-labelledby.\n */\n labelledById: {\n type: String,\n default: function () { return getUniqueString(); },\n },\n\n /**\n * Whether the modal should be shown.\n * Parent component can sync on this value to control the modal's visibility.\n * @values true, false\n */\n open: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Title text to display in the modal header.\n */\n title: {\n type: String,\n default: '',\n },\n\n /**\n * Title text to display in the modal banner.\n */\n bannerTitle: {\n type: String,\n default: '',\n },\n\n /**\n * The theme of the modal.\n * @values default, critical\n */\n kind: {\n type: String,\n default: 'default',\n validator: (k) => Object.keys(MODAL_KIND_MODIFIERS).includes(k),\n },\n\n /**\n * The size of the modal. size - default or full,\n * @values default, full\n */\n size: {\n type: String,\n default: 'default',\n validator: (s) => Object.keys(MODAL_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * Additional class name for the root modal element.\n * Can accept String, Object, and Array, i.e. has the\n * same API as Vue's built-in handling of the class attribute.\n */\n modalClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * Additional class name for the dialog element within the modal.\n * Can accept String, Object, and Array, i.e. has the\n * same API as Vue's built-in handling of the class attribute.\n */\n dialogClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * Additional class name for the content element within the modal.\n * Can accept String, Object, and Array, i.e. has the\n * same API as Vue's built-in handling of the class attribute.\n */\n contentClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * Sets the color of the banner.\n * @values base, critical, info, positive, warning\n */\n bannerKind: {\n type: String,\n default: 'warning',\n validator (kind) {\n return NOTICE_KINDS.includes(kind);\n },\n },\n\n /**\n * Additional class name for the banner element within the modal.\n * Can accept String, Object, and Array, i.e. has the\n * same API as Vue's built-in handling of the class attribute.\n */\n bannerClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * Shows the close button on the modal\n * @values true, false\n */\n showClose: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Whether the modal will close when you click outside of the dialog on the overlay.\n * @values true, false\n */\n closeOnClick: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Scrollable modal that allows scroll the modal content keeping the header and footer fixed\n * @values true, false\n */\n fixedHeaderFooter: {\n type: Boolean,\n default: true,\n },\n\n /**\n * The element that is focused when the modal is opened. This can be an\n * HTMLElement within the modal, a string starting with '#' which will\n * find the element by ID. 'first' which will automatically focus\n * the first element, or 'dialog' which will focus the dialog window itself.\n * If the dialog is modal this prop cannot be 'none'.\n */\n initialFocusElement: {\n type: [String, HTMLElement],\n default: 'first',\n validator: initialFocusElement => {\n return initialFocusElement === 'first' ||\n (initialFocusElement instanceof HTMLElement) ||\n initialFocusElement.startsWith('#');\n },\n },\n\n /**\n * A CSS selector string for the element to portal the modal to. If not provided, the modal will be rendered in its default location.\n */\n appendTo: {\n type: String,\n default: undefined,\n },\n },\n\n emits: [\n /**\n * Native button click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Native keydown event\n *\n * @event keydown\n * @type {KeyboardEvent}\n */\n 'keydown',\n\n /**\n * The modal will emit a \"false\" boolean value for this event when the user performs a modal-closing action.\n * Parent components can sync on this value to create a 2-way binding to control modal visibility.\n *\n * @event update:open\n * @type {Boolean}\n */\n 'update:open',\n ],\n\n data () {\n return {\n MODAL_KIND_MODIFIERS,\n MODAL_SIZE_MODIFIERS,\n MODAL_BANNER_KINDS,\n hasSlotContent,\n i18n: new DialtoneLocalization(),\n };\n },\n\n computed: {\n hasFooterSlot () {\n return !!this.$slots.footer;\n },\n\n bannerKindClass () {\n return MODAL_BANNER_KINDS[this.bannerKind];\n },\n\n closeButtonTitle () {\n return this.i18n.$t('DIALTONE_CLOSE_BUTTON');\n },\n },\n\n watch: {\n open (isShowing) {\n this.syncDialogState(isShowing);\n },\n },\n\n mounted () {\n if (this.open) {\n this.syncDialogState(true);\n }\n },\n\n beforeUnmount () {\n const dialogEl = this.$refs.dialogEl;\n if (dialogEl?.open) {\n dialogEl.close();\n enableRootScrolling(this.getScrollRoot());\n }\n this.previousActiveElement = null;\n },\n\n methods: {\n getScrollRoot () {\n return returnFirstEl(this.$refs.dialogEl)?.getRootNode()?.host;\n },\n\n syncDialogState (isShowing) {\n const dialogEl = this.$refs.dialogEl;\n if (!dialogEl) return;\n\n if (isShowing) {\n this.previousActiveElement = document.activeElement;\n if (!dialogEl.open) {\n dialogEl.showModal();\n }\n disableRootScrolling(this.getScrollRoot());\n } else if (dialogEl.open) {\n // Leave transition plays via v-show on inner content.\n // close() is called in onAfterLeave when transition completes.\n enableRootScrolling(this.getScrollRoot());\n }\n },\n\n close () {\n this.$emit('update:open', false);\n },\n\n onBackdropClick (event) {\n if (this.closeOnClick && event.target === event.currentTarget) {\n this.close();\n }\n this.$emit('click', event);\n },\n\n onKeydown (event) {\n this.$emit('keydown', event);\n },\n\n async onAfterEnter () {\n this.$emit('update:open', true);\n await this.setFocusAfterTransition();\n },\n\n onAfterLeave () {\n const dialogEl = this.$refs.dialogEl;\n if (dialogEl?.open) {\n dialogEl.close();\n }\n this.previousActiveElement?.focus();\n this.previousActiveElement = null;\n },\n\n focusFirstTabbable (container) {\n const focusable = [...container.querySelectorAll(focusableSelector)];\n if (!focusable.length) return;\n let target = focusable[0];\n // If first focusable is an unchecked radio, prefer the checked radio in the same group.\n if (target.matches('[type=\"radio\"]:not(:checked)')) {\n target = focusable.find(el => el.checked && el.name === target.name) || target;\n }\n target.focus({ preventScroll: true });\n },\n\n async setFocusAfterTransition () {\n const dialogEl = this.$refs.dialogEl;\n if (!dialogEl) return;\n\n await this.$nextTick();\n\n if (this.initialFocusElement === 'first') {\n this.focusFirstTabbable(dialogEl);\n } else if (typeof this.initialFocusElement === 'string' && this.initialFocusElement.startsWith('#')) {\n const el = dialogEl.querySelector(this.initialFocusElement);\n if (el) {\n el.focus();\n } else {\n // eslint-disable-next-line no-console\n console.warn('Could not find the element specified in dt-modal prop \"initialFocusElement\". ' +\n 'Defaulting to focusing the first element.');\n this.focusFirstTabbable(dialogEl);\n }\n } else if (this.initialFocusElement instanceof HTMLElement) {\n this.initialFocusElement.focus();\n }\n },\n },\n};\n</script>\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./mode.cjs`);exports.DtModeDirective=e.DtModeDirective;
@@ -0,0 +1,2 @@
1
+ import { DtModeDirective as e } from "./mode.js";
2
+ export { e as DtModeDirective };
@@ -0,0 +1,2 @@
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require(`../../mode_constants-CzYJW9ua.cjs`),t=require(`../mode-island/utils.cjs`);var n=e.n,r={inverted:`invert`},i={name:`dt-mode-directive`,install(e){let i=new WeakMap;e.directive(`dt-mode`,{mounted(e,t){if(t.value===!1)return;let n=o(e,a(t.arg));i.set(e,n)},updated(e,t){let n=i.get(e),r=t.value!==t.oldValue,l=a(t.arg),u=l!==n?.arg;if(!r&&!u||(c(n),s(e),i.delete(e),t.value===!1))return;let d=o(e,l);i.set(e,d)},unmounted(e){c(i.get(e)),s(e),i.delete(e)}});function a(e){return e?n.includes(e)?e:r[e]?(console.warn(`[DtModeDirective] Invalid mode "${e}". Did you mean "${r[e]}"? Falling back to "${r[e]}".`),r[e]):(console.warn(`[DtModeDirective] Invalid mode "${e}". Valid modes: ${n.join(`, `)}. Falling back to "invert".`),`invert`):`invert`}function o(e,n){let r={arg:n,contrastObserver:null,modeObserver:null};if(e.setAttribute(`data-dt-contrast`,t.getRootContrast()),r.contrastObserver=new MutationObserver(()=>{e.setAttribute(`data-dt-contrast`,t.getRootContrast())}),r.contrastObserver.observe(document.documentElement,{attributes:!0,attributeFilter:[`data-dt-contrast`]}),n===`light`||n===`dark`)e.setAttribute(`data-dt-mode`,n);else{let n=t.findParentMode(e);e.setAttribute(`data-dt-mode`,t.getOppositeMode(n));let i={attributes:!0,attributeFilter:[`data-dt-mode`],subtree:!1};r.modeObserver=new MutationObserver(()=>{let n=t.findParentMode(e);e.setAttribute(`data-dt-mode`,t.getOppositeMode(n))}),r.modeObserver.observe(document.documentElement,i);let a=e.parentElement;for(;a&&a!==document.documentElement;)r.modeObserver.observe(a,i),a=a.parentElement}return r}function s(e){e.removeAttribute(`data-dt-mode`),e.removeAttribute(`data-dt-contrast`)}function c(e){e&&(e.contrastObserver&&(e.contrastObserver.disconnect(),e.contrastObserver=null),e.modeObserver&&(e.modeObserver.disconnect(),e.modeObserver=null))}}};exports.DtModeDirective=i,exports.default=i;
2
+ //# sourceMappingURL=mode.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mode.cjs","names":["CONTENT_MODE_VALUES","getRootContrast","findParentMode","getOppositeMode"],"sources":["../../../directives/mode_directive/mode.js"],"sourcesContent":["import {\n getOppositeMode,\n getRootContrast,\n findParentMode,\n} from '@/components/mode_island/utils';\nimport { CONTENT_MODE_VALUES } from '@/common/mode_constants';\n\nconst VALID_MODES = CONTENT_MODE_VALUES;\n\nconst SUGGESTIONS = {\n inverted: 'invert',\n};\n\n/**\n * v-dt-mode directive — applies a color mode (light, dark, or invert) to an element.\n *\n * Sets `data-dt-mode` and `data-dt-contrast` attributes so descendant token-based\n * styles (`d-fc-primary`, `d-bgc-secondary`, etc.) resolve to the correct palette.\n *\n * @example\n * // Explicit modes\n * <section v-dt-mode:dark>Dark content</section>\n * <section v-dt-mode:light>Light content</section>\n *\n * // Invert nearest parent mode (default when no arg)\n * <section v-dt-mode>Inverted content</section>\n * <section v-dt-mode:invert>Same as above</section>\n *\n * // Dynamic arg\n * <section v-dt-mode:[reactiveMode]>Reactive mode</section>\n *\n * // Disable with false value\n * <section v-dt-mode:dark=\"false\">No mode applied</section>\n */\nexport const DtModeDirective = {\n name: 'dt-mode-directive',\n install (app) {\n const instances = new WeakMap();\n\n app.directive('dt-mode', {\n mounted (el, binding) {\n if (binding.value === false) return;\n const mode = resolveArg(binding.arg);\n const state = applyMode(el, mode);\n instances.set(el, state);\n },\n\n updated (el, binding) {\n const prev = instances.get(el);\n const valueChanged = binding.value !== binding.oldValue;\n const resolvedArg = resolveArg(binding.arg);\n const argChanged = resolvedArg !== prev?.arg;\n if (!valueChanged && !argChanged) return;\n\n cleanup(prev);\n removeAttributes(el);\n instances.delete(el);\n\n if (binding.value === false) return;\n\n const state = applyMode(el, resolvedArg);\n instances.set(el, state);\n },\n\n unmounted (el) {\n cleanup(instances.get(el));\n removeAttributes(el);\n instances.delete(el);\n },\n });\n\n function resolveArg (arg) {\n if (!arg) return 'invert';\n if (VALID_MODES.includes(arg)) return arg;\n if (SUGGESTIONS[arg]) {\n // eslint-disable-next-line no-console\n console.warn(\n `[DtModeDirective] Invalid mode \"${arg}\". Did you mean \"${SUGGESTIONS[arg]}\"? Falling back to \"${SUGGESTIONS[arg]}\".`,\n );\n return SUGGESTIONS[arg];\n }\n // eslint-disable-next-line no-console\n console.warn(\n `[DtModeDirective] Invalid mode \"${arg}\". Valid modes: ${VALID_MODES.join(', ')}. Falling back to \"invert\".`,\n );\n return 'invert';\n }\n\n function applyMode (el, mode) {\n const state = {\n arg: mode,\n contrastObserver: null,\n modeObserver: null,\n };\n\n // Set contrast from root\n el.setAttribute('data-dt-contrast', getRootContrast());\n\n // Watch for contrast changes on root\n state.contrastObserver = new MutationObserver(() => {\n el.setAttribute('data-dt-contrast', getRootContrast());\n });\n state.contrastObserver.observe(document.documentElement, {\n attributes: true,\n attributeFilter: ['data-dt-contrast'],\n });\n\n if (mode === 'light' || mode === 'dark') {\n el.setAttribute('data-dt-mode', mode);\n } else {\n // invert mode\n const parentMode = findParentMode(el);\n el.setAttribute('data-dt-mode', getOppositeMode(parentMode));\n\n // Watch for mode changes on root and ancestors\n const config = {\n attributes: true,\n attributeFilter: ['data-dt-mode'],\n subtree: false,\n };\n\n state.modeObserver = new MutationObserver(() => {\n const currentParentMode = findParentMode(el);\n el.setAttribute('data-dt-mode', getOppositeMode(currentParentMode));\n });\n\n // Observe root element\n state.modeObserver.observe(document.documentElement, config);\n\n // Observe all ancestor elements for data-dt-mode changes.\n // This includes ancestors that don't yet have the attribute,\n // because a sibling directive may set it after this one mounts\n // (Vue 3 fires child mounted before parent mounted).\n let parent = el.parentElement;\n while (parent && parent !== document.documentElement) {\n state.modeObserver.observe(parent, config);\n parent = parent.parentElement;\n }\n }\n\n return state;\n }\n\n function removeAttributes (el) {\n el.removeAttribute('data-dt-mode');\n el.removeAttribute('data-dt-contrast');\n }\n\n function cleanup (state) {\n if (!state) return;\n if (state.contrastObserver) {\n state.contrastObserver.disconnect();\n state.contrastObserver = null;\n }\n if (state.modeObserver) {\n state.modeObserver.disconnect();\n state.modeObserver = null;\n }\n }\n },\n};\n\nexport default DtModeDirective;\n"],"mappings":"0LAOA,IAAM,EAAcA,EAAAA,EAEd,EAAc,CAClB,SAAU,SACX,CAuBY,EAAkB,CAC7B,KAAM,oBACN,QAAS,EAAK,CACZ,IAAM,EAAY,IAAI,QAEtB,EAAI,UAAU,UAAW,CACvB,QAAS,EAAI,EAAS,CACpB,GAAI,EAAQ,QAAU,GAAO,OAE7B,IAAM,EAAQ,EAAU,EADX,EAAW,EAAQ,IAAI,CACH,CACjC,EAAU,IAAI,EAAI,EAAM,EAG1B,QAAS,EAAI,EAAS,CACpB,IAAM,EAAO,EAAU,IAAI,EAAG,CACxB,EAAe,EAAQ,QAAU,EAAQ,SACzC,EAAc,EAAW,EAAQ,IAAI,CACrC,EAAa,IAAgB,GAAM,IAOzC,GANI,CAAC,GAAgB,CAAC,IAEtB,EAAQ,EAAK,CACb,EAAiB,EAAG,CACpB,EAAU,OAAO,EAAG,CAEhB,EAAQ,QAAU,IAAO,OAE7B,IAAM,EAAQ,EAAU,EAAI,EAAY,CACxC,EAAU,IAAI,EAAI,EAAM,EAG1B,UAAW,EAAI,CACb,EAAQ,EAAU,IAAI,EAAG,CAAC,CAC1B,EAAiB,EAAG,CACpB,EAAU,OAAO,EAAG,EAEvB,CAAC,CAEF,SAAS,EAAY,EAAK,CAcxB,OAbK,EACD,EAAY,SAAS,EAAI,CAAS,EAClC,EAAY,IAEd,QAAQ,KACN,mCAAmC,EAAI,mBAAmB,EAAY,GAAK,sBAAsB,EAAY,GAAK,IACnH,CACM,EAAY,KAGrB,QAAQ,KACN,mCAAmC,EAAI,kBAAkB,EAAY,KAAK,KAAK,CAAC,6BACjF,CACM,UAbU,SAgBnB,SAAS,EAAW,EAAI,EAAM,CAC5B,IAAM,EAAQ,CACZ,IAAK,EACL,iBAAkB,KAClB,aAAc,KACf,CAcD,GAXA,EAAG,aAAa,mBAAoBC,EAAAA,iBAAiB,CAAC,CAGtD,EAAM,iBAAmB,IAAI,qBAAuB,CAClD,EAAG,aAAa,mBAAoBA,EAAAA,iBAAiB,CAAC,EACtD,CACF,EAAM,iBAAiB,QAAQ,SAAS,gBAAiB,CACvD,WAAY,GACZ,gBAAiB,CAAC,mBAAmB,CACtC,CAAC,CAEE,IAAS,SAAW,IAAS,OAC/B,EAAG,aAAa,eAAgB,EAAK,KAChC,CAEL,IAAM,EAAaC,EAAAA,eAAe,EAAG,CACrC,EAAG,aAAa,eAAgBC,EAAAA,gBAAgB,EAAW,CAAC,CAG5D,IAAM,EAAS,CACb,WAAY,GACZ,gBAAiB,CAAC,eAAe,CACjC,QAAS,GACV,CAED,EAAM,aAAe,IAAI,qBAAuB,CAC9C,IAAM,EAAoBD,EAAAA,eAAe,EAAG,CAC5C,EAAG,aAAa,eAAgBC,EAAAA,gBAAgB,EAAkB,CAAC,EACnE,CAGF,EAAM,aAAa,QAAQ,SAAS,gBAAiB,EAAO,CAM5D,IAAI,EAAS,EAAG,cAChB,KAAO,GAAU,IAAW,SAAS,iBACnC,EAAM,aAAa,QAAQ,EAAQ,EAAO,CAC1C,EAAS,EAAO,cAIpB,OAAO,EAGT,SAAS,EAAkB,EAAI,CAC7B,EAAG,gBAAgB,eAAe,CAClC,EAAG,gBAAgB,mBAAmB,CAGxC,SAAS,EAAS,EAAO,CAClB,IACD,EAAM,mBACR,EAAM,iBAAiB,YAAY,CACnC,EAAM,iBAAmB,MAEvB,EAAM,eACR,EAAM,aAAa,YAAY,CAC/B,EAAM,aAAe,SAI5B"}
@@ -0,0 +1,67 @@
1
+ import { n as e } from "../../mode_constants-tb7TL85q.js";
2
+ import { findParentMode as t, getOppositeMode as n, getRootContrast as r } from "../mode-island/utils.js";
3
+ //#region directives/mode_directive/mode.js
4
+ var i = e, a = { inverted: "invert" }, o = {
5
+ name: "dt-mode-directive",
6
+ install(e) {
7
+ let o = /* @__PURE__ */ new WeakMap();
8
+ e.directive("dt-mode", {
9
+ mounted(e, t) {
10
+ if (t.value === !1) return;
11
+ let n = c(e, s(t.arg));
12
+ o.set(e, n);
13
+ },
14
+ updated(e, t) {
15
+ let n = o.get(e), r = t.value !== t.oldValue, i = s(t.arg), a = i !== n?.arg;
16
+ if (!r && !a || (u(n), l(e), o.delete(e), t.value === !1)) return;
17
+ let d = c(e, i);
18
+ o.set(e, d);
19
+ },
20
+ unmounted(e) {
21
+ u(o.get(e)), l(e), o.delete(e);
22
+ }
23
+ });
24
+ function s(e) {
25
+ return e ? i.includes(e) ? e : a[e] ? (console.warn(`[DtModeDirective] Invalid mode "${e}". Did you mean "${a[e]}"? Falling back to "${a[e]}".`), a[e]) : (console.warn(`[DtModeDirective] Invalid mode "${e}". Valid modes: ${i.join(", ")}. Falling back to "invert".`), "invert") : "invert";
26
+ }
27
+ function c(e, i) {
28
+ let a = {
29
+ arg: i,
30
+ contrastObserver: null,
31
+ modeObserver: null
32
+ };
33
+ if (e.setAttribute("data-dt-contrast", r()), a.contrastObserver = new MutationObserver(() => {
34
+ e.setAttribute("data-dt-contrast", r());
35
+ }), a.contrastObserver.observe(document.documentElement, {
36
+ attributes: !0,
37
+ attributeFilter: ["data-dt-contrast"]
38
+ }), i === "light" || i === "dark") e.setAttribute("data-dt-mode", i);
39
+ else {
40
+ let r = t(e);
41
+ e.setAttribute("data-dt-mode", n(r));
42
+ let i = {
43
+ attributes: !0,
44
+ attributeFilter: ["data-dt-mode"],
45
+ subtree: !1
46
+ };
47
+ a.modeObserver = new MutationObserver(() => {
48
+ let r = t(e);
49
+ e.setAttribute("data-dt-mode", n(r));
50
+ }), a.modeObserver.observe(document.documentElement, i);
51
+ let o = e.parentElement;
52
+ for (; o && o !== document.documentElement;) a.modeObserver.observe(o, i), o = o.parentElement;
53
+ }
54
+ return a;
55
+ }
56
+ function l(e) {
57
+ e.removeAttribute("data-dt-mode"), e.removeAttribute("data-dt-contrast");
58
+ }
59
+ function u(e) {
60
+ e && (e.contrastObserver && (e.contrastObserver.disconnect(), e.contrastObserver = null), e.modeObserver && (e.modeObserver.disconnect(), e.modeObserver = null));
61
+ }
62
+ }
63
+ };
64
+ //#endregion
65
+ export { o as DtModeDirective, o as default };
66
+
67
+ //# sourceMappingURL=mode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mode.js","names":[],"sources":["../../../directives/mode_directive/mode.js"],"sourcesContent":["import {\n getOppositeMode,\n getRootContrast,\n findParentMode,\n} from '@/components/mode_island/utils';\nimport { CONTENT_MODE_VALUES } from '@/common/mode_constants';\n\nconst VALID_MODES = CONTENT_MODE_VALUES;\n\nconst SUGGESTIONS = {\n inverted: 'invert',\n};\n\n/**\n * v-dt-mode directive — applies a color mode (light, dark, or invert) to an element.\n *\n * Sets `data-dt-mode` and `data-dt-contrast` attributes so descendant token-based\n * styles (`d-fc-primary`, `d-bgc-secondary`, etc.) resolve to the correct palette.\n *\n * @example\n * // Explicit modes\n * <section v-dt-mode:dark>Dark content</section>\n * <section v-dt-mode:light>Light content</section>\n *\n * // Invert nearest parent mode (default when no arg)\n * <section v-dt-mode>Inverted content</section>\n * <section v-dt-mode:invert>Same as above</section>\n *\n * // Dynamic arg\n * <section v-dt-mode:[reactiveMode]>Reactive mode</section>\n *\n * // Disable with false value\n * <section v-dt-mode:dark=\"false\">No mode applied</section>\n */\nexport const DtModeDirective = {\n name: 'dt-mode-directive',\n install (app) {\n const instances = new WeakMap();\n\n app.directive('dt-mode', {\n mounted (el, binding) {\n if (binding.value === false) return;\n const mode = resolveArg(binding.arg);\n const state = applyMode(el, mode);\n instances.set(el, state);\n },\n\n updated (el, binding) {\n const prev = instances.get(el);\n const valueChanged = binding.value !== binding.oldValue;\n const resolvedArg = resolveArg(binding.arg);\n const argChanged = resolvedArg !== prev?.arg;\n if (!valueChanged && !argChanged) return;\n\n cleanup(prev);\n removeAttributes(el);\n instances.delete(el);\n\n if (binding.value === false) return;\n\n const state = applyMode(el, resolvedArg);\n instances.set(el, state);\n },\n\n unmounted (el) {\n cleanup(instances.get(el));\n removeAttributes(el);\n instances.delete(el);\n },\n });\n\n function resolveArg (arg) {\n if (!arg) return 'invert';\n if (VALID_MODES.includes(arg)) return arg;\n if (SUGGESTIONS[arg]) {\n // eslint-disable-next-line no-console\n console.warn(\n `[DtModeDirective] Invalid mode \"${arg}\". Did you mean \"${SUGGESTIONS[arg]}\"? Falling back to \"${SUGGESTIONS[arg]}\".`,\n );\n return SUGGESTIONS[arg];\n }\n // eslint-disable-next-line no-console\n console.warn(\n `[DtModeDirective] Invalid mode \"${arg}\". Valid modes: ${VALID_MODES.join(', ')}. Falling back to \"invert\".`,\n );\n return 'invert';\n }\n\n function applyMode (el, mode) {\n const state = {\n arg: mode,\n contrastObserver: null,\n modeObserver: null,\n };\n\n // Set contrast from root\n el.setAttribute('data-dt-contrast', getRootContrast());\n\n // Watch for contrast changes on root\n state.contrastObserver = new MutationObserver(() => {\n el.setAttribute('data-dt-contrast', getRootContrast());\n });\n state.contrastObserver.observe(document.documentElement, {\n attributes: true,\n attributeFilter: ['data-dt-contrast'],\n });\n\n if (mode === 'light' || mode === 'dark') {\n el.setAttribute('data-dt-mode', mode);\n } else {\n // invert mode\n const parentMode = findParentMode(el);\n el.setAttribute('data-dt-mode', getOppositeMode(parentMode));\n\n // Watch for mode changes on root and ancestors\n const config = {\n attributes: true,\n attributeFilter: ['data-dt-mode'],\n subtree: false,\n };\n\n state.modeObserver = new MutationObserver(() => {\n const currentParentMode = findParentMode(el);\n el.setAttribute('data-dt-mode', getOppositeMode(currentParentMode));\n });\n\n // Observe root element\n state.modeObserver.observe(document.documentElement, config);\n\n // Observe all ancestor elements for data-dt-mode changes.\n // This includes ancestors that don't yet have the attribute,\n // because a sibling directive may set it after this one mounts\n // (Vue 3 fires child mounted before parent mounted).\n let parent = el.parentElement;\n while (parent && parent !== document.documentElement) {\n state.modeObserver.observe(parent, config);\n parent = parent.parentElement;\n }\n }\n\n return state;\n }\n\n function removeAttributes (el) {\n el.removeAttribute('data-dt-mode');\n el.removeAttribute('data-dt-contrast');\n }\n\n function cleanup (state) {\n if (!state) return;\n if (state.contrastObserver) {\n state.contrastObserver.disconnect();\n state.contrastObserver = null;\n }\n if (state.modeObserver) {\n state.modeObserver.disconnect();\n state.modeObserver = null;\n }\n }\n },\n};\n\nexport default DtModeDirective;\n"],"mappings":";;;AAOA,IAAM,IAAc,GAEd,IAAc,EAClB,UAAU,UACX,EAuBY,IAAkB;CAC7B,MAAM;CACN,QAAS,GAAK;EACZ,IAAM,oBAAY,IAAI,SAAS;AAE/B,IAAI,UAAU,WAAW;GACvB,QAAS,GAAI,GAAS;AACpB,QAAI,EAAQ,UAAU,GAAO;IAE7B,IAAM,IAAQ,EAAU,GADX,EAAW,EAAQ,IAAI,CACH;AACjC,MAAU,IAAI,GAAI,EAAM;;GAG1B,QAAS,GAAI,GAAS;IACpB,IAAM,IAAO,EAAU,IAAI,EAAG,EACxB,IAAe,EAAQ,UAAU,EAAQ,UACzC,IAAc,EAAW,EAAQ,IAAI,EACrC,IAAa,MAAgB,GAAM;AAOzC,QANI,CAAC,KAAgB,CAAC,MAEtB,EAAQ,EAAK,EACb,EAAiB,EAAG,EACpB,EAAU,OAAO,EAAG,EAEhB,EAAQ,UAAU,IAAO;IAE7B,IAAM,IAAQ,EAAU,GAAI,EAAY;AACxC,MAAU,IAAI,GAAI,EAAM;;GAG1B,UAAW,GAAI;AAGb,IAFA,EAAQ,EAAU,IAAI,EAAG,CAAC,EAC1B,EAAiB,EAAG,EACpB,EAAU,OAAO,EAAG;;GAEvB,CAAC;EAEF,SAAS,EAAY,GAAK;AAcxB,UAbK,IACD,EAAY,SAAS,EAAI,GAAS,IAClC,EAAY,MAEd,QAAQ,KACN,mCAAmC,EAAI,mBAAmB,EAAY,GAAK,sBAAsB,EAAY,GAAK,IACnH,EACM,EAAY,OAGrB,QAAQ,KACN,mCAAmC,EAAI,kBAAkB,EAAY,KAAK,KAAK,CAAC,6BACjF,EACM,YAbU;;EAgBnB,SAAS,EAAW,GAAI,GAAM;GAC5B,IAAM,IAAQ;IACZ,KAAK;IACL,kBAAkB;IAClB,cAAc;IACf;AAcD,OAXA,EAAG,aAAa,oBAAoB,GAAiB,CAAC,EAGtD,EAAM,mBAAmB,IAAI,uBAAuB;AAClD,MAAG,aAAa,oBAAoB,GAAiB,CAAC;KACtD,EACF,EAAM,iBAAiB,QAAQ,SAAS,iBAAiB;IACvD,YAAY;IACZ,iBAAiB,CAAC,mBAAmB;IACtC,CAAC,EAEE,MAAS,WAAW,MAAS,OAC/B,GAAG,aAAa,gBAAgB,EAAK;QAChC;IAEL,IAAM,IAAa,EAAe,EAAG;AACrC,MAAG,aAAa,gBAAgB,EAAgB,EAAW,CAAC;IAG5D,IAAM,IAAS;KACb,YAAY;KACZ,iBAAiB,CAAC,eAAe;KACjC,SAAS;KACV;AAQD,IANA,EAAM,eAAe,IAAI,uBAAuB;KAC9C,IAAM,IAAoB,EAAe,EAAG;AAC5C,OAAG,aAAa,gBAAgB,EAAgB,EAAkB,CAAC;MACnE,EAGF,EAAM,aAAa,QAAQ,SAAS,iBAAiB,EAAO;IAM5D,IAAI,IAAS,EAAG;AAChB,WAAO,KAAU,MAAW,SAAS,iBAEnC,CADA,EAAM,aAAa,QAAQ,GAAQ,EAAO,EAC1C,IAAS,EAAO;;AAIpB,UAAO;;EAGT,SAAS,EAAkB,GAAI;AAE7B,GADA,EAAG,gBAAgB,eAAe,EAClC,EAAG,gBAAgB,mBAAmB;;EAGxC,SAAS,EAAS,GAAO;AAClB,SACD,EAAM,qBACR,EAAM,iBAAiB,YAAY,EACnC,EAAM,mBAAmB,OAEvB,EAAM,iBACR,EAAM,aAAa,YAAY,EAC/B,EAAM,eAAe;;;CAI5B"}
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./mode-island-constants.cjs`),t=require(`./mode-island.cjs`);exports.DT_MODE_ISLAND_TYPES=e.DT_MODE_ISLAND_TYPES,exports.DtModeIsland=t.default;
@@ -0,0 +1,3 @@
1
+ import { DT_MODE_ISLAND_TYPES as e } from "./mode-island-constants.js";
2
+ import t from "./mode-island.js";
3
+ export { e as DT_MODE_ISLAND_TYPES, t as DtModeIsland };
@@ -0,0 +1,2 @@
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});var e={INVERTED:`inverted`,LIGHT:`light`,DARK:`dark`},t={DT_MODE_ISLAND_TYPES:e};exports.DT_MODE_ISLAND_TYPES=e,exports.default=t;
2
+ //# sourceMappingURL=mode-island-constants.cjs.map