@dialpad/dialtone-vue 3.218.3 → 3.219.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.
- package/dist/common/constants/index.cjs +1 -1
- package/dist/common/constants/index.cjs.map +1 -1
- package/dist/common/constants/index.js +37 -20
- package/dist/common/constants/index.js.map +1 -1
- package/dist/common/constants/sizes.cjs +2 -0
- package/dist/common/constants/sizes.cjs.map +1 -0
- package/dist/common/constants/sizes.js +20 -0
- package/dist/common/constants/sizes.js.map +1 -0
- package/dist/common/mixins/index.cjs +1 -1
- package/dist/common/mixins/index.js +9 -7
- package/dist/common/mixins/index.js.map +1 -1
- package/dist/common/mixins/mode.cjs +2 -0
- package/dist/common/mixins/mode.cjs.map +1 -0
- package/dist/common/mixins/mode.js +82 -0
- package/dist/common/mixins/mode.js.map +1 -0
- package/dist/component-documentation.json +1 -1
- package/dist/dialtone-vue.cjs +1 -1
- package/dist/dialtone-vue.js +464 -408
- package/dist/dialtone-vue.js.map +1 -1
- package/dist/lib/attachment-carousel/attachment-carousel.cjs +1 -1
- package/dist/lib/attachment-carousel/attachment-carousel.cjs.map +1 -1
- package/dist/lib/attachment-carousel/attachment-carousel.js +8 -8
- package/dist/lib/attachment-carousel/attachment-carousel.js.map +1 -1
- package/dist/lib/avatar/avatar-constants.cjs +1 -1
- package/dist/lib/avatar/avatar-constants.cjs.map +1 -1
- package/dist/lib/avatar/avatar-constants.js +169 -43
- package/dist/lib/avatar/avatar-constants.js.map +1 -1
- package/dist/lib/avatar/avatar.cjs +1 -1
- package/dist/lib/avatar/avatar.cjs.map +1 -1
- package/dist/lib/avatar/avatar.js +186 -100
- package/dist/lib/avatar/avatar.js.map +1 -1
- package/dist/lib/avatar/index.cjs +1 -1
- package/dist/lib/avatar/index.js +16 -10
- package/dist/lib/badge/badge.cjs +1 -1
- package/dist/lib/badge/badge.cjs.map +1 -1
- package/dist/lib/badge/badge.js +47 -35
- package/dist/lib/badge/badge.js.map +1 -1
- package/dist/lib/banner/banner.cjs +1 -1
- package/dist/lib/banner/banner.cjs.map +1 -1
- package/dist/lib/banner/banner.js +19 -18
- package/dist/lib/banner/banner.js.map +1 -1
- package/dist/lib/breadcrumbs/breadcrumb-item.cjs +1 -1
- package/dist/lib/breadcrumbs/breadcrumb-item.cjs.map +1 -1
- package/dist/lib/breadcrumbs/breadcrumb-item.js +4 -1
- package/dist/lib/breadcrumbs/breadcrumb-item.js.map +1 -1
- package/dist/lib/breadcrumbs/breadcrumbs.cjs +1 -1
- package/dist/lib/breadcrumbs/breadcrumbs.cjs.map +1 -1
- package/dist/lib/breadcrumbs/breadcrumbs.js +22 -18
- package/dist/lib/breadcrumbs/breadcrumbs.js.map +1 -1
- package/dist/lib/button/button-constants.cjs +1 -1
- package/dist/lib/button/button-constants.cjs.map +1 -1
- package/dist/lib/button/button-constants.js +33 -15
- package/dist/lib/button/button-constants.js.map +1 -1
- package/dist/lib/button/button.cjs +1 -1
- package/dist/lib/button/button.cjs.map +1 -1
- package/dist/lib/button/button.js +195 -78
- package/dist/lib/button/button.js.map +1 -1
- package/dist/lib/button-group/button-group.cjs.map +1 -1
- package/dist/lib/button-group/button-group.js +1 -0
- package/dist/lib/button-group/button-group.js.map +1 -1
- package/dist/lib/callbar-button/callbar-button.cjs +1 -1
- package/dist/lib/callbar-button/callbar-button.cjs.map +1 -1
- package/dist/lib/callbar-button/callbar-button.js +14 -15
- package/dist/lib/callbar-button/callbar-button.js.map +1 -1
- package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs +1 -1
- package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs.map +1 -1
- package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js +44 -32
- package/dist/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js.map +1 -1
- package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.cjs +1 -1
- package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.cjs.map +1 -1
- package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.js +40 -28
- package/dist/lib/callbar-button-with-popover/callbar-button-with-popover.js.map +1 -1
- package/dist/lib/callbox/callbox.cjs +1 -1
- package/dist/lib/callbox/callbox.cjs.map +1 -1
- package/dist/lib/callbox/callbox.js +48 -48
- package/dist/lib/callbox/callbox.js.map +1 -1
- package/dist/lib/checkbox/checkbox.cjs +1 -1
- package/dist/lib/checkbox/checkbox.cjs.map +1 -1
- package/dist/lib/checkbox/checkbox.js +97 -43
- package/dist/lib/checkbox/checkbox.js.map +1 -1
- package/dist/lib/chip/chip-constants.cjs +1 -1
- package/dist/lib/chip/chip-constants.cjs.map +1 -1
- package/dist/lib/chip/chip-constants.js +17 -2
- package/dist/lib/chip/chip-constants.js.map +1 -1
- package/dist/lib/chip/chip.cjs +1 -1
- package/dist/lib/chip/chip.cjs.map +1 -1
- package/dist/lib/chip/chip.js +17 -17
- package/dist/lib/chip/chip.js.map +1 -1
- package/dist/lib/codeblock/codeblock-constants.cjs +2 -0
- package/dist/lib/codeblock/codeblock-constants.cjs.map +1 -0
- package/dist/lib/codeblock/codeblock-constants.js +12 -0
- package/dist/lib/codeblock/codeblock-constants.js.map +1 -0
- package/dist/lib/codeblock/codeblock.cjs +1 -2
- package/dist/lib/codeblock/codeblock.cjs.map +1 -1
- package/dist/lib/codeblock/codeblock.js +38 -12
- package/dist/lib/codeblock/codeblock.js.map +1 -1
- package/dist/lib/collapsible/collapsible.cjs +1 -1
- package/dist/lib/collapsible/collapsible.cjs.map +1 -1
- package/dist/lib/collapsible/collapsible.js +1 -1
- package/dist/lib/collapsible/collapsible.js.map +1 -1
- package/dist/lib/combobox/combobox.cjs +2 -2
- package/dist/lib/combobox/combobox.cjs.map +1 -1
- package/dist/lib/combobox/combobox.js +22 -21
- package/dist/lib/combobox/combobox.js.map +1 -1
- package/dist/lib/combobox-multi-select/combobox-multi-select-constants.cjs +1 -1
- package/dist/lib/combobox-multi-select/combobox-multi-select-constants.cjs.map +1 -1
- package/dist/lib/combobox-multi-select/combobox-multi-select-constants.js +16 -6
- package/dist/lib/combobox-multi-select/combobox-multi-select-constants.js.map +1 -1
- package/dist/lib/combobox-multi-select/combobox-multi-select.cjs +1 -1
- package/dist/lib/combobox-multi-select/combobox-multi-select.cjs.map +1 -1
- package/dist/lib/combobox-multi-select/combobox-multi-select.js +48 -46
- package/dist/lib/combobox-multi-select/combobox-multi-select.js.map +1 -1
- package/dist/lib/combobox-with-popover/combobox-with-popover.cjs +1 -1
- package/dist/lib/combobox-with-popover/combobox-with-popover.cjs.map +1 -1
- package/dist/lib/combobox-with-popover/combobox-with-popover.js +37 -29
- package/dist/lib/combobox-with-popover/combobox-with-popover.js.map +1 -1
- package/dist/lib/contact-centers-row/contact-centers-row.cjs +1 -1
- package/dist/lib/contact-centers-row/contact-centers-row.cjs.map +1 -1
- package/dist/lib/contact-centers-row/contact-centers-row.js +36 -36
- package/dist/lib/contact-centers-row/contact-centers-row.js.map +1 -1
- package/dist/lib/contact-info/contact-info.cjs +1 -1
- package/dist/lib/contact-info/contact-info.cjs.map +1 -1
- package/dist/lib/contact-info/contact-info.js +56 -56
- package/dist/lib/contact-info/contact-info.js.map +1 -1
- package/dist/lib/contact-row/contact-row.cjs +1 -1
- package/dist/lib/contact-row/contact-row.cjs.map +1 -1
- package/dist/lib/contact-row/contact-row.js +3 -3
- package/dist/lib/contact-row/contact-row.js.map +1 -1
- package/dist/lib/datepicker/datepicker.cjs +1 -1
- package/dist/lib/datepicker/datepicker.cjs.map +1 -1
- package/dist/lib/datepicker/datepicker.js +93 -95
- package/dist/lib/datepicker/datepicker.js.map +1 -1
- package/dist/lib/description-list/description-list.cjs +1 -1
- package/dist/lib/description-list/description-list.cjs.map +1 -1
- package/dist/lib/description-list/description-list.js +2 -2
- package/dist/lib/description-list/description-list.js.map +1 -1
- package/dist/lib/dropdown/dropdown-constants.cjs +1 -1
- package/dist/lib/dropdown/dropdown-constants.cjs.map +1 -1
- package/dist/lib/dropdown/dropdown-constants.js +2 -2
- package/dist/lib/dropdown/dropdown-constants.js.map +1 -1
- package/dist/lib/dropdown/dropdown-list.cjs +1 -1
- package/dist/lib/dropdown/dropdown-list.cjs.map +1 -1
- package/dist/lib/dropdown/dropdown-list.js +29 -18
- package/dist/lib/dropdown/dropdown-list.js.map +1 -1
- package/dist/lib/dropdown/dropdown.cjs +1 -1
- package/dist/lib/dropdown/dropdown.cjs.map +1 -1
- package/dist/lib/dropdown/dropdown.js +27 -19
- package/dist/lib/dropdown/dropdown.js.map +1 -1
- package/dist/lib/editor/EditorToolbarButton.cjs +1 -1
- package/dist/lib/editor/EditorToolbarButton.cjs.map +1 -1
- package/dist/lib/editor/EditorToolbarButton.js +6 -6
- package/dist/lib/editor/EditorToolbarButton.js.map +1 -1
- package/dist/lib/editor/EditorToolbarDropdownButton.cjs +1 -1
- package/dist/lib/editor/EditorToolbarDropdownButton.cjs.map +1 -1
- package/dist/lib/editor/EditorToolbarDropdownButton.js +3 -3
- package/dist/lib/editor/EditorToolbarDropdownButton.js.map +1 -1
- package/dist/lib/editor/EditorToolbarPopoverButton.cjs +1 -1
- package/dist/lib/editor/EditorToolbarPopoverButton.cjs.map +1 -1
- package/dist/lib/editor/EditorToolbarPopoverButton.js +3 -3
- package/dist/lib/editor/EditorToolbarPopoverButton.js.map +1 -1
- package/dist/lib/editor/editor.cjs +1 -1
- package/dist/lib/editor/editor.cjs.map +1 -1
- package/dist/lib/editor/editor.js +48 -48
- package/dist/lib/editor/editor.js.map +1 -1
- package/dist/lib/emoji-picker/emoji-picker.cjs +1 -1
- package/dist/lib/emoji-picker/emoji-picker.cjs.map +1 -1
- package/dist/lib/emoji-picker/emoji-picker.js +62 -59
- package/dist/lib/emoji-picker/emoji-picker.js.map +1 -1
- package/dist/lib/emoji-row/emoji-row.cjs +1 -1
- package/dist/lib/emoji-row/emoji-row.cjs.map +1 -1
- package/dist/lib/emoji-row/emoji-row.js +10 -10
- package/dist/lib/emoji-row/emoji-row.js.map +1 -1
- package/dist/lib/emoji-text-wrapper/emoji-text-wrapper.cjs.map +1 -1
- package/dist/lib/emoji-text-wrapper/emoji-text-wrapper.js +2 -1
- package/dist/lib/emoji-text-wrapper/emoji-text-wrapper.js.map +1 -1
- package/dist/lib/empty-state/empty-state-constants.cjs +1 -1
- package/dist/lib/empty-state/empty-state-constants.cjs.map +1 -1
- package/dist/lib/empty-state/empty-state-constants.js +54 -12
- package/dist/lib/empty-state/empty-state-constants.js.map +1 -1
- package/dist/lib/empty-state/empty-state.cjs +1 -1
- package/dist/lib/empty-state/empty-state.cjs.map +1 -1
- package/dist/lib/empty-state/empty-state.js +60 -36
- package/dist/lib/empty-state/empty-state.js.map +1 -1
- package/dist/lib/feed-item-pill/feed-item-pill.cjs +1 -1
- package/dist/lib/feed-item-pill/feed-item-pill.cjs.map +1 -1
- package/dist/lib/feed-item-pill/feed-item-pill.js +56 -53
- package/dist/lib/feed-item-pill/feed-item-pill.js.map +1 -1
- package/dist/lib/feed-item-row/feed-item-row.cjs +1 -1
- package/dist/lib/feed-item-row/feed-item-row.cjs.map +1 -1
- package/dist/lib/feed-item-row/feed-item-row.js +12 -12
- package/dist/lib/feed-item-row/feed-item-row.js.map +1 -1
- package/dist/lib/filter-pill/filter-pill.cjs +2 -0
- package/dist/lib/filter-pill/filter-pill.cjs.map +1 -0
- package/dist/lib/filter-pill/filter-pill.js +569 -0
- package/dist/lib/filter-pill/filter-pill.js.map +1 -0
- package/dist/lib/filter-pill/index.cjs +2 -0
- package/dist/lib/filter-pill/index.cjs.map +1 -0
- package/dist/lib/filter-pill/index.js +5 -0
- package/dist/lib/filter-pill/index.js.map +1 -0
- package/dist/lib/general-row/general-row.cjs +1 -1
- package/dist/lib/general-row/general-row.cjs.map +1 -1
- package/dist/lib/general-row/general-row.js +154 -100
- package/dist/lib/general-row/general-row.js.map +1 -1
- package/dist/lib/general-row/leftbar-general-row-icon.cjs +1 -1
- package/dist/lib/general-row/leftbar-general-row-icon.cjs.map +1 -1
- package/dist/lib/general-row/leftbar-general-row-icon.js +1 -1
- package/dist/lib/general-row/leftbar-general-row-icon.js.map +1 -1
- package/dist/lib/group-row/group-row.cjs +1 -1
- package/dist/lib/group-row/group-row.cjs.map +1 -1
- package/dist/lib/group-row/group-row.js +2 -2
- package/dist/lib/group-row/group-row.js.map +1 -1
- package/dist/lib/grouped-chip/grouped-chip.cjs +1 -1
- package/dist/lib/grouped-chip/grouped-chip.cjs.map +1 -1
- package/dist/lib/grouped-chip/grouped-chip.js +33 -33
- package/dist/lib/grouped-chip/grouped-chip.js.map +1 -1
- package/dist/lib/hovercard/hovercard.cjs +1 -1
- package/dist/lib/hovercard/hovercard.cjs.map +1 -1
- package/dist/lib/hovercard/hovercard.js +37 -28
- package/dist/lib/hovercard/hovercard.js.map +1 -1
- package/dist/lib/icon/icon.cjs +1 -1
- package/dist/lib/icon/icon.cjs.map +1 -1
- package/dist/lib/icon/icon.js +1 -1
- package/dist/lib/icon/icon.js.map +1 -1
- package/dist/lib/illustration/illustration.cjs +1 -1
- package/dist/lib/illustration/illustration.cjs.map +1 -1
- package/dist/lib/illustration/illustration.js +1 -1
- package/dist/lib/illustration/illustration.js.map +1 -1
- package/dist/lib/image-viewer/image-viewer.cjs +1 -1
- package/dist/lib/image-viewer/image-viewer.cjs.map +1 -1
- package/dist/lib/image-viewer/image-viewer.js +28 -27
- package/dist/lib/image-viewer/image-viewer.js.map +1 -1
- package/dist/lib/input/input-constants.cjs +1 -1
- package/dist/lib/input/input-constants.cjs.map +1 -1
- package/dist/lib/input/input-constants.js +43 -22
- package/dist/lib/input/input-constants.js.map +1 -1
- package/dist/lib/input/input.cjs +1 -1
- package/dist/lib/input/input.cjs.map +1 -1
- package/dist/lib/input/input.js +165 -79
- package/dist/lib/input/input.js.map +1 -1
- package/dist/lib/input-group/input-group.cjs +1 -1
- package/dist/lib/input-group/input-group.cjs.map +1 -1
- package/dist/lib/input-group/input-group.js +35 -28
- package/dist/lib/input-group/input-group.js.map +1 -1
- package/dist/lib/item-layout/item-layout.cjs +3 -3
- package/dist/lib/item-layout/item-layout.cjs.map +1 -1
- package/dist/lib/item-layout/item-layout.js +74 -39
- package/dist/lib/item-layout/item-layout.js.map +1 -1
- package/dist/lib/ivr-node/ivr-node.cjs +1 -1
- package/dist/lib/ivr-node/ivr-node.cjs.map +1 -1
- package/dist/lib/ivr-node/ivr-node.js +1 -1
- package/dist/lib/ivr-node/ivr-node.js.map +1 -1
- package/dist/lib/keyboard-shortcut/keyboard-shortcut.cjs +1 -1
- package/dist/lib/keyboard-shortcut/keyboard-shortcut.cjs.map +1 -1
- package/dist/lib/keyboard-shortcut/keyboard-shortcut.js +57 -43
- package/dist/lib/keyboard-shortcut/keyboard-shortcut.js.map +1 -1
- package/dist/lib/kitchen-sink/kitchen-sink-view.cjs +2 -0
- package/dist/lib/kitchen-sink/kitchen-sink-view.cjs.map +1 -0
- package/dist/lib/kitchen-sink/kitchen-sink-view.js +263 -0
- package/dist/lib/kitchen-sink/kitchen-sink-view.js.map +1 -0
- package/dist/lib/link/link.cjs +1 -1
- package/dist/lib/link/link.cjs.map +1 -1
- package/dist/lib/link/link.js +22 -12
- package/dist/lib/link/link.js.map +1 -1
- package/dist/lib/list-item/list-item.cjs +1 -1
- package/dist/lib/list-item/list-item.cjs.map +1 -1
- package/dist/lib/list-item/list-item.js +27 -16
- package/dist/lib/list-item/list-item.js.map +1 -1
- package/dist/lib/message-input/message-input-button.cjs +1 -1
- package/dist/lib/message-input/message-input-button.cjs.map +1 -1
- package/dist/lib/message-input/message-input-button.js +4 -4
- package/dist/lib/message-input/message-input-button.js.map +1 -1
- package/dist/lib/message-input/message-input-link.cjs +1 -1
- package/dist/lib/message-input/message-input-link.cjs.map +1 -1
- package/dist/lib/message-input/message-input-link.js +12 -12
- package/dist/lib/message-input/message-input-link.js.map +1 -1
- package/dist/lib/message-input/message-input-topbar.cjs +1 -1
- package/dist/lib/message-input/message-input-topbar.cjs.map +1 -1
- package/dist/lib/message-input/message-input-topbar.js +2 -2
- package/dist/lib/message-input/message-input-topbar.js.map +1 -1
- package/dist/lib/message-input/message-input.cjs +1 -1
- package/dist/lib/message-input/message-input.cjs.map +1 -1
- package/dist/lib/message-input/message-input.js +52 -52
- package/dist/lib/message-input/message-input.js.map +1 -1
- package/dist/lib/modal/modal.cjs +1 -1
- package/dist/lib/modal/modal.cjs.map +1 -1
- package/dist/lib/modal/modal.js +120 -106
- package/dist/lib/modal/modal.js.map +1 -1
- package/dist/lib/mode-directive/index.cjs +2 -0
- package/dist/lib/mode-directive/index.cjs.map +1 -0
- package/dist/lib/mode-directive/index.js +5 -0
- package/dist/lib/mode-directive/index.js.map +1 -0
- package/dist/lib/mode-directive/mode.cjs +2 -0
- package/dist/lib/mode-directive/mode.cjs.map +1 -0
- package/dist/lib/mode-directive/mode.js +75 -0
- package/dist/lib/mode-directive/mode.js.map +1 -0
- package/dist/lib/mode-island/index.cjs +2 -0
- package/dist/lib/mode-island/index.cjs.map +1 -0
- package/dist/lib/mode-island/index.js +7 -0
- package/dist/lib/mode-island/index.js.map +1 -0
- package/dist/lib/mode-island/mode-island-constants.cjs +2 -0
- package/dist/lib/mode-island/mode-island-constants.cjs.map +1 -0
- package/dist/lib/mode-island/mode-island-constants.js +12 -0
- package/dist/lib/mode-island/mode-island-constants.js.map +1 -0
- package/dist/lib/mode-island/mode-island.cjs +2 -0
- package/dist/lib/mode-island/mode-island.cjs.map +1 -0
- package/dist/lib/mode-island/mode-island.js +130 -0
- package/dist/lib/mode-island/mode-island.js.map +1 -0
- package/dist/lib/mode-island/utils.cjs +2 -0
- package/dist/lib/mode-island/utils.cjs.map +1 -0
- package/dist/lib/mode-island/utils.js +32 -0
- package/dist/lib/mode-island/utils.js.map +1 -0
- package/dist/lib/mode-island/validators.cjs +2 -0
- package/dist/lib/mode-island/validators.cjs.map +1 -0
- package/dist/lib/mode-island/validators.js +12 -0
- package/dist/lib/mode-island/validators.js.map +1 -0
- package/dist/lib/motion-text/motion-text-constants.cjs +1 -1
- package/dist/lib/motion-text/motion-text-constants.cjs.map +1 -1
- package/dist/lib/motion-text/motion-text-constants.js +18 -8
- package/dist/lib/motion-text/motion-text-constants.js.map +1 -1
- package/dist/lib/motion-text/motion-text.cjs +1 -1
- package/dist/lib/motion-text/motion-text.cjs.map +1 -1
- package/dist/lib/motion-text/motion-text.js +17 -17
- package/dist/lib/motion-text/motion-text.js.map +1 -1
- package/dist/lib/notice/notice-action.cjs +1 -1
- package/dist/lib/notice/notice-action.cjs.map +1 -1
- package/dist/lib/notice/notice-action.js +9 -9
- package/dist/lib/notice/notice-action.js.map +1 -1
- package/dist/lib/notice/notice-content.cjs +1 -1
- package/dist/lib/notice/notice-content.cjs.map +1 -1
- package/dist/lib/notice/notice-content.js +38 -21
- package/dist/lib/notice/notice-content.js.map +1 -1
- package/dist/lib/notice/notice-icon.cjs +1 -1
- package/dist/lib/notice/notice-icon.cjs.map +1 -1
- package/dist/lib/notice/notice-icon.js +1 -1
- package/dist/lib/notice/notice-icon.js.map +1 -1
- package/dist/lib/notice/notice.cjs +1 -1
- package/dist/lib/notice/notice.cjs.map +1 -1
- package/dist/lib/notice/notice.js +20 -19
- package/dist/lib/notice/notice.js.map +1 -1
- package/dist/lib/pagination/pagination.cjs +1 -1
- package/dist/lib/pagination/pagination.cjs.map +1 -1
- package/dist/lib/pagination/pagination.js +16 -15
- package/dist/lib/pagination/pagination.js.map +1 -1
- package/dist/lib/popover/popover-constants.cjs +1 -1
- package/dist/lib/popover/popover-constants.cjs.map +1 -1
- package/dist/lib/popover/popover-constants.js +16 -16
- package/dist/lib/popover/popover-constants.js.map +1 -1
- package/dist/lib/popover/popover-header-footer.cjs +1 -1
- package/dist/lib/popover/popover-header-footer.cjs.map +1 -1
- package/dist/lib/popover/popover-header-footer.js +19 -12
- package/dist/lib/popover/popover-header-footer.js.map +1 -1
- package/dist/lib/popover/popover.cjs +1 -1
- package/dist/lib/popover/popover.cjs.map +1 -1
- package/dist/lib/popover/popover.js +80 -62
- package/dist/lib/popover/popover.js.map +1 -1
- package/dist/lib/radio/radio.cjs +1 -1
- package/dist/lib/radio/radio.cjs.map +1 -1
- package/dist/lib/radio/radio.js +103 -41
- package/dist/lib/radio/radio.js.map +1 -1
- package/dist/lib/rich-text-editor/rich-text-editor.cjs +3 -3
- package/dist/lib/rich-text-editor/rich-text-editor.cjs.map +1 -1
- package/dist/lib/rich-text-editor/rich-text-editor.js +637 -590
- package/dist/lib/rich-text-editor/rich-text-editor.js.map +1 -1
- package/dist/lib/root-layout/root-layout-constants.cjs +1 -1
- package/dist/lib/root-layout/root-layout-constants.cjs.map +1 -1
- package/dist/lib/root-layout/root-layout-constants.js +4 -2
- package/dist/lib/root-layout/root-layout-constants.js.map +1 -1
- package/dist/lib/root-layout/root-layout.cjs +1 -1
- package/dist/lib/root-layout/root-layout.cjs.map +1 -1
- package/dist/lib/root-layout/root-layout.js +15 -13
- package/dist/lib/root-layout/root-layout.js.map +1 -1
- package/dist/lib/segmented-control/index.cjs +2 -0
- package/dist/lib/segmented-control/index.cjs.map +1 -0
- package/dist/lib/segmented-control/index.js +20 -0
- package/dist/lib/segmented-control/index.js.map +1 -0
- package/dist/lib/segmented-control/segmented-control-constants.cjs +2 -0
- package/dist/lib/segmented-control/segmented-control-constants.cjs.map +1 -0
- package/dist/lib/segmented-control/segmented-control-constants.js +45 -0
- package/dist/lib/segmented-control/segmented-control-constants.js.map +1 -0
- package/dist/lib/segmented-control/segmented-control-item.cjs +2 -0
- package/dist/lib/segmented-control/segmented-control-item.cjs.map +1 -0
- package/dist/lib/segmented-control/segmented-control-item.js +124 -0
- package/dist/lib/segmented-control/segmented-control-item.js.map +1 -0
- package/dist/lib/segmented-control/segmented-control.cjs +2 -0
- package/dist/lib/segmented-control/segmented-control.cjs.map +1 -0
- package/dist/lib/segmented-control/segmented-control.js +236 -0
- package/dist/lib/segmented-control/segmented-control.js.map +1 -0
- package/dist/lib/select-menu/select-menu-constants.cjs +1 -1
- package/dist/lib/select-menu/select-menu-constants.cjs.map +1 -1
- package/dist/lib/select-menu/select-menu-constants.js +13 -6
- package/dist/lib/select-menu/select-menu-constants.js.map +1 -1
- package/dist/lib/select-menu/select-menu.cjs +1 -1
- package/dist/lib/select-menu/select-menu.cjs.map +1 -1
- package/dist/lib/select-menu/select-menu.js +133 -67
- package/dist/lib/select-menu/select-menu.js.map +1 -1
- package/dist/lib/settings-menu-button/settings-menu-button.cjs +1 -1
- package/dist/lib/settings-menu-button/settings-menu-button.cjs.map +1 -1
- package/dist/lib/settings-menu-button/settings-menu-button.js +20 -20
- package/dist/lib/settings-menu-button/settings-menu-button.js.map +1 -1
- package/dist/lib/skeleton/skeleton-constants.cjs +1 -1
- package/dist/lib/skeleton/skeleton-constants.cjs.map +1 -1
- package/dist/lib/skeleton/skeleton-constants.js +26 -14
- package/dist/lib/skeleton/skeleton-constants.js.map +1 -1
- package/dist/lib/skeleton/skeleton-list-item.cjs +1 -1
- package/dist/lib/skeleton/skeleton-list-item.cjs.map +1 -1
- package/dist/lib/skeleton/skeleton-list-item.js +3 -3
- package/dist/lib/skeleton/skeleton-list-item.js.map +1 -1
- package/dist/lib/skeleton/skeleton-shape.cjs +1 -1
- package/dist/lib/skeleton/skeleton-shape.cjs.map +1 -1
- package/dist/lib/skeleton/skeleton-shape.js +11 -11
- package/dist/lib/skeleton/skeleton-shape.js.map +1 -1
- package/dist/lib/split-button/split-button-constants.cjs +1 -1
- package/dist/lib/split-button/split-button-constants.cjs.map +1 -1
- package/dist/lib/split-button/split-button-constants.js +7 -0
- package/dist/lib/split-button/split-button-constants.js.map +1 -1
- package/dist/lib/split-button/split-button-end.cjs +2 -0
- package/dist/lib/split-button/split-button-end.cjs.map +1 -0
- package/dist/lib/split-button/{split-button-omega.js → split-button-end.js} +16 -16
- package/dist/lib/split-button/split-button-end.js.map +1 -0
- package/dist/lib/split-button/split-button-start.cjs +2 -0
- package/dist/lib/split-button/split-button-start.cjs.map +1 -0
- package/dist/lib/split-button/split-button-start.js +231 -0
- package/dist/lib/split-button/split-button-start.js.map +1 -0
- package/dist/lib/split-button/split-button.cjs +1 -1
- package/dist/lib/split-button/split-button.cjs.map +1 -1
- package/dist/lib/split-button/split-button.js +337 -101
- package/dist/lib/split-button/split-button.js.map +1 -1
- package/dist/lib/stack/stack-constants.cjs +1 -1
- package/dist/lib/stack/stack-constants.cjs.map +1 -1
- package/dist/lib/stack/stack-constants.js +1 -1
- package/dist/lib/stack/stack-constants.js.map +1 -1
- package/dist/lib/stack/stack.cjs.map +1 -1
- package/dist/lib/stack/stack.js +5 -3
- package/dist/lib/stack/stack.js.map +1 -1
- package/dist/lib/tab/index.cjs +1 -1
- package/dist/lib/tab/index.js +14 -11
- package/dist/lib/tab/tab-group.cjs +1 -1
- package/dist/lib/tab/tab-group.cjs.map +1 -1
- package/dist/lib/tab/tab-group.js +171 -56
- package/dist/lib/tab/tab-group.js.map +1 -1
- package/dist/lib/tab/tab.cjs +1 -1
- package/dist/lib/tab/tab.cjs.map +1 -1
- package/dist/lib/tab/tab.js +105 -31
- package/dist/lib/tab/tab.js.map +1 -1
- package/dist/lib/tab/tabs-constants.cjs +1 -1
- package/dist/lib/tab/tabs-constants.cjs.map +1 -1
- package/dist/lib/tab/tabs-constants.js +31 -10
- package/dist/lib/tab/tabs-constants.js.map +1 -1
- package/dist/lib/text/index.cjs +2 -0
- package/dist/lib/text/index.cjs.map +1 -0
- package/dist/lib/text/index.js +20 -0
- package/dist/lib/text/index.js.map +1 -0
- package/dist/lib/text/text-constants.cjs +2 -0
- package/dist/lib/text/text-constants.cjs.map +1 -0
- package/dist/lib/text/text-constants.js +78 -0
- package/dist/lib/text/text-constants.js.map +1 -0
- package/dist/lib/text/text-tone-tokens.cjs +2 -0
- package/dist/lib/text/text-tone-tokens.cjs.map +1 -0
- package/dist/lib/text/text-tone-tokens.js +33 -0
- package/dist/lib/text/text-tone-tokens.js.map +1 -0
- package/dist/lib/text/text.cjs +2 -0
- package/dist/lib/text/text.cjs.map +1 -0
- package/dist/lib/text/text.js +206 -0
- package/dist/lib/text/text.js.map +1 -0
- package/dist/lib/toast/toast.cjs +1 -1
- package/dist/lib/toast/toast.cjs.map +1 -1
- package/dist/lib/toast/toast.js +12 -11
- package/dist/lib/toast/toast.js.map +1 -1
- package/dist/lib/toggle/toggle-constants.cjs +1 -1
- package/dist/lib/toggle/toggle-constants.cjs.map +1 -1
- package/dist/lib/toggle/toggle-constants.js +6 -2
- package/dist/lib/toggle/toggle-constants.js.map +1 -1
- package/dist/lib/toggle/toggle.cjs +1 -1
- package/dist/lib/toggle/toggle.cjs.map +1 -1
- package/dist/lib/toggle/toggle.js +39 -35
- package/dist/lib/toggle/toggle.js.map +1 -1
- package/dist/lib/tooltip/tooltip.cjs +2 -2
- package/dist/lib/tooltip/tooltip.cjs.map +1 -1
- package/dist/lib/tooltip/tooltip.js +31 -26
- package/dist/lib/tooltip/tooltip.js.map +1 -1
- package/dist/lib/tooltip-directive/tooltip.cjs +1 -1
- package/dist/lib/tooltip-directive/tooltip.cjs.map +1 -1
- package/dist/lib/tooltip-directive/tooltip.js +40 -39
- package/dist/lib/tooltip-directive/tooltip.js.map +1 -1
- package/dist/lib/top-banner-info/top-banner-info.cjs +1 -1
- package/dist/lib/top-banner-info/top-banner-info.cjs.map +1 -1
- package/dist/lib/top-banner-info/top-banner-info.js +16 -16
- package/dist/lib/top-banner-info/top-banner-info.js.map +1 -1
- package/dist/lib/unread-pill/unread-pill.cjs +1 -1
- package/dist/lib/unread-pill/unread-pill.cjs.map +1 -1
- package/dist/lib/unread-pill/unread-pill.js +1 -1
- package/dist/lib/unread-pill/unread-pill.js.map +1 -1
- package/dist/localization/en-US.cjs +5 -0
- package/dist/localization/en-US.cjs.map +1 -1
- package/dist/localization/en-US.js +5 -0
- package/dist/localization/en-US.js.map +1 -1
- package/dist/mode_constants-C1GFodVj.js +14 -0
- package/dist/mode_constants-C1GFodVj.js.map +1 -0
- package/dist/mode_constants-DeLSnTcQ.cjs +2 -0
- package/dist/mode_constants-DeLSnTcQ.cjs.map +1 -0
- package/dist/node_modules/@tiptap/vue-3.cjs.map +1 -1
- package/dist/node_modules/@tiptap/vue-3.js.map +1 -1
- package/dist/shared/sr_only_close_button.cjs +1 -1
- package/dist/shared/sr_only_close_button.cjs.map +1 -1
- package/dist/shared/sr_only_close_button.js +1 -1
- package/dist/shared/sr_only_close_button.js.map +1 -1
- package/dist/style.css +1 -1
- package/dist/types/common/constants/index.d.ts +25 -19
- package/dist/types/common/constants/index.d.ts.map +1 -1
- package/dist/types/common/constants/sizes.d.ts +22 -0
- package/dist/types/common/constants/sizes.d.ts.map +1 -0
- package/dist/types/common/mixins/index.d.ts +1 -0
- package/dist/types/common/mixins/mode.d.ts +25 -0
- package/dist/types/common/mixins/mode.d.ts.map +1 -0
- package/dist/types/common/mode_constants.d.ts +37 -0
- package/dist/types/common/mode_constants.d.ts.map +1 -0
- package/dist/types/common/sr_only_close_button.vue.d.ts +53 -7
- package/dist/types/common/sr_only_close_button.vue.d.ts.map +1 -1
- package/dist/types/components/avatar/avatar.vue.d.ts +71 -25
- package/dist/types/components/avatar/avatar.vue.d.ts.map +1 -1
- package/dist/types/components/avatar/avatar_constants.d.ts +86 -29
- package/dist/types/components/avatar/avatar_constants.d.ts.map +1 -1
- package/dist/types/components/avatar/index.d.ts +1 -1
- package/dist/types/components/badge/badge.vue.d.ts.map +1 -1
- package/dist/types/components/banner/banner.vue.d.ts +246 -15
- package/dist/types/components/banner/banner.vue.d.ts.map +1 -1
- package/dist/types/components/breadcrumbs/breadcrumb_item.vue.d.ts +9 -0
- package/dist/types/components/breadcrumbs/breadcrumb_item.vue.d.ts.map +1 -1
- package/dist/types/components/breadcrumbs/breadcrumbs.vue.d.ts +9 -0
- package/dist/types/components/button/button.vue.d.ts +53 -7
- package/dist/types/components/button/button.vue.d.ts.map +1 -1
- package/dist/types/components/button/button_constants.d.ts +28 -19
- package/dist/types/components/button/button_constants.d.ts.map +1 -1
- package/dist/types/components/checkbox/checkbox.vue.d.ts +178 -4
- package/dist/types/components/checkbox/checkbox.vue.d.ts.map +1 -1
- package/dist/types/components/checkbox_group/checkbox_group.vue.d.ts +138 -0
- package/dist/types/components/chip/chip.vue.d.ts +58 -12
- package/dist/types/components/chip/chip.vue.d.ts.map +1 -1
- package/dist/types/components/chip/chip_constants.d.ts +24 -21
- package/dist/types/components/chip/chip_constants.d.ts.map +1 -1
- package/dist/types/components/codeblock/codeblock.vue.d.ts +25 -2
- package/dist/types/components/codeblock/codeblock.vue.d.ts.map +1 -1
- package/dist/types/components/codeblock/codeblock_constants.d.ts +9 -0
- package/dist/types/components/codeblock/codeblock_constants.d.ts.map +1 -0
- package/dist/types/components/collapsible/collapsible.vue.d.ts +53 -7
- package/dist/types/components/collapsible/collapsible.vue.d.ts.map +1 -1
- package/dist/types/components/combobox/combobox.vue.d.ts +109 -34
- package/dist/types/components/combobox/combobox.vue.d.ts.map +1 -1
- package/dist/types/components/combobox/combobox_empty-list.vue.d.ts +40 -7
- package/dist/types/components/combobox/combobox_empty-list.vue.d.ts.map +1 -1
- package/dist/types/components/combobox/combobox_loading-list.vue.d.ts +64 -22
- package/dist/types/components/combobox/combobox_loading-list.vue.d.ts.map +1 -1
- package/dist/types/components/combobox_multi_select/combobox_multi_select_constants.d.ts +16 -13
- package/dist/types/components/combobox_multi_select/combobox_multi_select_constants.d.ts.map +1 -1
- package/dist/types/components/combobox_with_popover/combobox_with_popover.vue.d.ts +388 -82
- package/dist/types/components/combobox_with_popover/combobox_with_popover.vue.d.ts.map +1 -1
- package/dist/types/components/datepicker/modules/month-year-picker.vue.d.ts.map +1 -1
- package/dist/types/components/dropdown/dropdown.vue.d.ts +170 -14
- package/dist/types/components/dropdown/dropdown.vue.d.ts.map +1 -1
- package/dist/types/components/emoji/emoji.vue.d.ts +24 -15
- package/dist/types/components/emoji_picker/emoji_picker.vue.d.ts +196 -6
- package/dist/types/components/emoji_picker/modules/emoji_search.vue.d.ts +196 -6
- package/dist/types/components/emoji_picker/modules/emoji_search.vue.d.ts.map +1 -1
- package/dist/types/components/emoji_picker/modules/emoji_tabset.vue.d.ts.map +1 -1
- package/dist/types/components/emoji_text_wrapper/emoji_text_wrapper.vue.d.ts +24 -15
- package/dist/types/components/emoji_text_wrapper/emoji_text_wrapper.vue.d.ts.map +1 -1
- package/dist/types/components/empty_state/empty_state.vue.d.ts.map +1 -1
- package/dist/types/components/empty_state/empty_state_constants.d.ts +52 -31
- package/dist/types/components/empty_state/empty_state_constants.d.ts.map +1 -1
- package/dist/types/components/filter_pill/filter_pill.vue.d.ts +4487 -0
- package/dist/types/components/filter_pill/filter_pill.vue.d.ts.map +1 -0
- package/dist/types/components/filter_pill/index.d.ts +2 -0
- package/dist/types/components/filter_pill/index.d.ts.map +1 -0
- package/dist/types/components/hovercard/hovercard.vue.d.ts +368 -29
- package/dist/types/components/hovercard/hovercard.vue.d.ts.map +1 -1
- package/dist/types/components/image_viewer/image_viewer.vue.d.ts +131 -14
- package/dist/types/components/image_viewer/image_viewer.vue.d.ts.map +1 -1
- package/dist/types/components/input/input.vue.d.ts +187 -5
- package/dist/types/components/input/input.vue.d.ts.map +1 -1
- package/dist/types/components/input/input_constants.d.ts +44 -46
- package/dist/types/components/input/input_constants.d.ts.map +1 -1
- package/dist/types/components/input_group/input_group.vue.d.ts +138 -0
- package/dist/types/components/input_group/input_group.vue.d.ts.map +1 -1
- package/dist/types/components/item_layout/item_layout.vue.d.ts +37 -6
- package/dist/types/components/item_layout/item_layout.vue.d.ts.map +1 -1
- package/dist/types/components/keyboard_shortcut/keyboard_shortcut.vue.d.ts +138 -0
- package/dist/types/components/keyboard_shortcut/keyboard_shortcut.vue.d.ts.map +1 -1
- package/dist/types/components/link/link.vue.d.ts +9 -0
- package/dist/types/components/list_item/list_item.vue.d.ts +40 -7
- package/dist/types/components/list_item/list_item.vue.d.ts.map +1 -1
- package/dist/types/components/modal/modal.vue.d.ts +271 -16
- package/dist/types/components/modal/modal.vue.d.ts.map +1 -1
- package/dist/types/components/mode_island/index.d.ts +3 -0
- package/dist/types/components/mode_island/index.d.ts.map +1 -0
- package/dist/types/components/mode_island/mode_island.vue.d.ts +3 -0
- package/dist/types/components/mode_island/mode_island.vue.d.ts.map +1 -0
- package/dist/types/components/mode_island/mode_island_constants.d.ts +10 -0
- package/dist/types/components/mode_island/mode_island_constants.d.ts.map +1 -0
- package/dist/types/components/mode_island/utils.d.ts +12 -0
- package/dist/types/components/mode_island/utils.d.ts.map +1 -0
- package/dist/types/components/mode_island/validators.d.ts +6 -0
- package/dist/types/components/mode_island/validators.d.ts.map +1 -0
- package/dist/types/components/motion_text/motion_text_constants.d.ts +27 -23
- package/dist/types/components/motion_text/motion_text_constants.d.ts.map +1 -1
- package/dist/types/components/notice/notice.vue.d.ts +246 -15
- package/dist/types/components/notice/notice.vue.d.ts.map +1 -1
- package/dist/types/components/notice/notice_action.vue.d.ts +106 -14
- package/dist/types/components/notice/notice_action.vue.d.ts.map +1 -1
- package/dist/types/components/notice/notice_content.vue.d.ts +140 -1
- package/dist/types/components/notice/notice_content.vue.d.ts.map +1 -1
- package/dist/types/components/notice/notice_icon.vue.d.ts.map +1 -1
- package/dist/types/components/pagination/pagination.vue.d.ts +53 -7
- package/dist/types/components/pagination/pagination.vue.d.ts.map +1 -1
- package/dist/types/components/popover/popover.vue.d.ts +159 -14
- package/dist/types/components/popover/popover.vue.d.ts.map +1 -1
- package/dist/types/components/popover/popover_header_footer.vue.d.ts +62 -7
- package/dist/types/components/popover/popover_header_footer.vue.d.ts.map +1 -1
- package/dist/types/components/radio/radio.vue.d.ts +173 -0
- package/dist/types/components/radio/radio.vue.d.ts.map +1 -1
- package/dist/types/components/radio_group/radio_group.vue.d.ts +138 -0
- package/dist/types/components/rich_text_editor/extensions/channels/ChannelComponent.vue.d.ts +9 -0
- package/dist/types/components/rich_text_editor/extensions/channels/ChannelComponent.vue.d.ts.map +1 -1
- package/dist/types/components/rich_text_editor/extensions/channels/ChannelSuggestion.vue.d.ts.map +1 -1
- package/dist/types/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.d.ts +24 -15
- package/dist/types/components/rich_text_editor/extensions/emoji/EmojiSuggestion.vue.d.ts +24 -15
- package/dist/types/components/rich_text_editor/extensions/mentions/MentionComponent.vue.d.ts +9 -0
- package/dist/types/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.d.ts +209 -25
- package/dist/types/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.d.ts.map +1 -1
- package/dist/types/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.d.ts +140 -1
- package/dist/types/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.d.ts.map +1 -1
- package/dist/types/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.d.ts +40 -7
- package/dist/types/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.d.ts.map +1 -1
- package/dist/types/components/rich_text_editor/extensions/variable/VariableComponent.vue.d.ts +399 -26
- package/dist/types/components/rich_text_editor/extensions/variable/VariableComponent.vue.d.ts.map +1 -1
- package/dist/types/components/root_layout/root_layout_constants.d.ts +2 -0
- package/dist/types/components/root_layout/root_layout_constants.d.ts.map +1 -1
- package/dist/types/components/segmented_control/index.d.ts +4 -0
- package/dist/types/components/segmented_control/index.d.ts.map +1 -0
- package/dist/types/components/segmented_control/segmented_control.vue.d.ts +224 -0
- package/dist/types/components/segmented_control/segmented_control.vue.d.ts.map +1 -0
- package/dist/types/components/segmented_control/segmented_control_constants.d.ts +41 -0
- package/dist/types/components/segmented_control/segmented_control_constants.d.ts.map +1 -0
- package/dist/types/components/segmented_control/segmented_control_item.vue.d.ts +35 -0
- package/dist/types/components/segmented_control/segmented_control_item.vue.d.ts.map +1 -0
- package/dist/types/components/select_menu/select_menu.vue.d.ts +182 -18
- package/dist/types/components/select_menu/select_menu.vue.d.ts.map +1 -1
- package/dist/types/components/select_menu/select_menu_constants.d.ts +12 -7
- package/dist/types/components/select_menu/select_menu_constants.d.ts.map +1 -1
- package/dist/types/components/skeleton/skeleton-list-item.vue.d.ts +13 -10
- package/dist/types/components/skeleton/skeleton-paragraph.vue.d.ts +3 -0
- package/dist/types/components/skeleton/skeleton-shape.vue.d.ts +5 -5
- package/dist/types/components/skeleton/skeleton-text.vue.d.ts +3 -0
- package/dist/types/components/skeleton/skeleton.vue.d.ts +24 -15
- package/dist/types/components/skeleton/skeleton_constants.d.ts +18 -13
- package/dist/types/components/skeleton/skeleton_constants.d.ts.map +1 -1
- package/dist/types/components/split_button/{split_button-omega.vue.d.ts → split_button-end.vue.d.ts} +64 -13
- package/dist/types/components/split_button/{split_button-omega.vue.d.ts.map → split_button-end.vue.d.ts.map} +1 -1
- package/dist/types/components/split_button/{split_button-alpha.vue.d.ts → split_button-start.vue.d.ts} +125 -11
- package/dist/types/components/split_button/split_button-start.vue.d.ts.map +1 -0
- package/dist/types/components/split_button/split_button.vue.d.ts +589 -66
- package/dist/types/components/split_button/split_button.vue.d.ts.map +1 -1
- package/dist/types/components/split_button/split_button_constants.d.ts +12 -7
- package/dist/types/components/split_button/split_button_constants.d.ts.map +1 -1
- package/dist/types/components/stack/stack_constants.d.ts.map +1 -1
- package/dist/types/components/tab/index.d.ts +1 -1
- package/dist/types/components/tab/tab.vue.d.ts +85 -11
- package/dist/types/components/tab/tab.vue.d.ts.map +1 -1
- package/dist/types/components/tab/tab_group.vue.d.ts +91 -5
- package/dist/types/components/tab/tab_group.vue.d.ts.map +1 -1
- package/dist/types/components/tab/tabs_constants.d.ts +23 -5
- package/dist/types/components/tab/tabs_constants.d.ts.map +1 -1
- package/dist/types/components/text/index.d.ts +3 -0
- package/dist/types/components/text/index.d.ts.map +1 -0
- package/dist/types/components/text/scripts/update-text-tone-tokens.d.cts +3 -0
- package/dist/types/components/text/scripts/update-text-tone-tokens.d.cts.map +1 -0
- package/dist/types/components/text/scripts/update_text_tone_tokens.d.cts +3 -0
- package/dist/types/components/text/scripts/update_text_tone_tokens.d.cts.map +1 -0
- package/dist/types/components/text/scripts/update_text_tone_tokens.d.ts +1 -0
- package/dist/types/components/text/scripts/update_text_tone_tokens.d.ts.map +1 -0
- package/dist/types/components/text/text.vue.d.ts +141 -0
- package/dist/types/components/text/text.vue.d.ts.map +1 -0
- package/dist/types/components/text/text_constants.d.ts +82 -0
- package/dist/types/components/text/text_constants.d.ts.map +1 -0
- package/dist/types/components/text/text_tone_tokens.d.ts +3 -0
- package/dist/types/components/text/text_tone_tokens.d.ts.map +1 -0
- package/dist/types/components/toast/layouts/toast_layout_alternate.vue.d.ts +246 -15
- package/dist/types/components/toast/layouts/toast_layout_alternate.vue.d.ts.map +1 -1
- package/dist/types/components/toast/layouts/toast_layout_alternate_icon.vue.d.ts.map +1 -1
- package/dist/types/components/toast/layouts/toast_layout_default.vue.d.ts +246 -15
- package/dist/types/components/toast/layouts/toast_layout_default.vue.d.ts.map +1 -1
- package/dist/types/components/toast/toast.vue.d.ts +1033 -109
- package/dist/types/components/toast/toast.vue.d.ts.map +1 -1
- package/dist/types/components/toggle/toggle.vue.d.ts +14 -6
- package/dist/types/components/toggle/toggle.vue.d.ts.map +1 -1
- package/dist/types/components/toggle/toggle_constants.d.ts +6 -4
- package/dist/types/components/toggle/toggle_constants.d.ts.map +1 -1
- package/dist/types/components/tooltip/tooltip.vue.d.ts +27 -1
- package/dist/types/components/tooltip/tooltip.vue.d.ts.map +1 -1
- package/dist/types/directives/mode_directive/index.d.ts +2 -0
- package/dist/types/directives/mode_directive/index.d.ts.map +1 -0
- package/dist/types/directives/mode_directive/mode.d.ts +6 -0
- package/dist/types/directives/mode_directive/mode.d.ts.map +1 -0
- package/dist/types/directives/tooltip_directive/tooltip.d.ts.map +1 -1
- package/dist/types/index.d.ts +5 -0
- package/dist/types/recipes/buttons/callbar_button/callbar_button.vue.d.ts +80 -8
- package/dist/types/recipes/buttons/callbar_button/callbar_button.vue.d.ts.map +1 -1
- package/dist/types/recipes/buttons/callbar_button_with_dropdown/callbar_button_with_dropdown.vue.d.ts +303 -29
- package/dist/types/recipes/buttons/callbar_button_with_dropdown/callbar_button_with_dropdown.vue.d.ts.map +1 -1
- package/dist/types/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts +293 -30
- package/dist/types/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts.map +1 -1
- package/dist/types/recipes/cards/ivr_node/ivr_node.vue.d.ts +223 -21
- package/dist/types/recipes/cards/ivr_node/ivr_node.vue.d.ts.map +1 -1
- package/dist/types/recipes/chips/grouped_chip/grouped_chip.vue.d.ts +58 -12
- package/dist/types/recipes/chips/grouped_chip/grouped_chip.vue.d.ts.map +1 -1
- package/dist/types/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.d.ts +237 -28
- package/dist/types/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.d.ts.map +1 -1
- package/dist/types/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.d.ts +184 -21
- package/dist/types/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.d.ts.map +1 -1
- package/dist/types/recipes/conversation_view/editor/EditorToolbarButton.vue.d.ts +53 -7
- package/dist/types/recipes/conversation_view/editor/EditorToolbarDropdownButton.vue.d.ts +223 -21
- package/dist/types/recipes/conversation_view/editor/EditorToolbarDropdownButton.vue.d.ts.map +1 -1
- package/dist/types/recipes/conversation_view/editor/EditorToolbarPopoverButton.vue.d.ts +212 -21
- package/dist/types/recipes/conversation_view/editor/EditorToolbarPopoverButton.vue.d.ts.map +1 -1
- package/dist/types/recipes/conversation_view/emoji_row/emoji_row.vue.d.ts +128 -38
- package/dist/types/recipes/conversation_view/emoji_row/emoji_row.vue.d.ts.map +1 -1
- package/dist/types/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts +90 -13
- package/dist/types/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts.map +1 -1
- package/dist/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +111 -32
- package/dist/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts.map +1 -1
- package/dist/types/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.d.ts +90 -13
- package/dist/types/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.d.ts.map +1 -1
- package/dist/types/recipes/conversation_view/message_input/message_input_button.vue.d.ts +218 -8
- package/dist/types/recipes/conversation_view/message_input/message_input_button.vue.d.ts.map +1 -1
- package/dist/types/recipes/conversation_view/message_input/message_input_link.vue.d.ts +617 -34
- package/dist/types/recipes/conversation_view/message_input/message_input_link.vue.d.ts.map +1 -1
- package/dist/types/recipes/conversation_view/message_input/message_input_topbar.vue.d.ts +218 -8
- package/dist/types/recipes/conversation_view/message_input/message_input_topbar.vue.d.ts.map +1 -1
- package/dist/types/recipes/header/settings_menu_button/settings_menu_button.vue.d.ts +53 -7
- package/dist/types/recipes/header/settings_menu_button/settings_menu_button.vue.d.ts.map +1 -1
- package/dist/types/recipes/item_layout/contact_info/contact_info.vue.d.ts +108 -31
- package/dist/types/recipes/item_layout/contact_info/contact_info.vue.d.ts.map +1 -1
- package/dist/types/recipes/leftbar/callbox/callbox.vue.d.ts +71 -25
- package/dist/types/recipes/leftbar/callbox/callbox.vue.d.ts.map +1 -1
- package/dist/types/recipes/leftbar/contact_centers_row/contact_centers_row.vue.d.ts +77 -22
- package/dist/types/recipes/leftbar/contact_centers_row/contact_centers_row.vue.d.ts.map +1 -1
- package/dist/types/recipes/leftbar/contact_row/contact_row.vue.d.ts +557 -64
- package/dist/types/recipes/leftbar/contact_row/contact_row.vue.d.ts.map +1 -1
- package/dist/types/recipes/leftbar/general_row/general_row.vue.d.ts +462 -24
- package/dist/types/recipes/leftbar/general_row/general_row.vue.d.ts.map +1 -1
- package/dist/types/recipes/leftbar/general_row/leftbar_general_row_icon.vue.d.ts.map +1 -1
- package/dist/types/recipes/leftbar/group_row/group_row.vue.d.ts +462 -24
- package/dist/types/recipes/leftbar/group_row/group_row.vue.d.ts.map +1 -1
- package/dist/types/recipes/leftbar/unread_pill/unread_pill.vue.d.ts.map +1 -1
- package/dist/types/recipes/notices/top_banner_info/top_banner_info.vue.d.ts.map +1 -1
- package/package.json +6 -5
- package/dist/lib/split-button/split-button-alpha.cjs +0 -2
- package/dist/lib/split-button/split-button-alpha.cjs.map +0 -1
- package/dist/lib/split-button/split-button-alpha.js +0 -138
- package/dist/lib/split-button/split-button-alpha.js.map +0 -1
- package/dist/lib/split-button/split-button-omega.cjs +0 -2
- package/dist/lib/split-button/split-button-omega.cjs.map +0 -1
- package/dist/lib/split-button/split-button-omega.js.map +0 -1
- package/dist/types/components/split_button/split_button-alpha.vue.d.ts.map +0 -1
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
import { ref as S, computed as N, reactive as R, watchEffect as I, provide as T, onMounted as M, watch as w, openBlock as x, createBlock as G, unref as V, normalizeClass as z, withCtx as k, renderSlot as F } from "vue";
|
|
2
|
+
import { getUniqueString as U } from "../../common/utils/index.js";
|
|
3
|
+
import { SEGMENTED_CONTROL_SPREAD_DEFAULT as K, SEGMENTED_CONTROL_ACTIVATION_MODE_DEFAULT as B, SEGMENTED_CONTROL_SIZE_DEFAULT as P, SEGMENTED_CONTROL_ORIENTATION_DEFAULT as q, SEGMENTED_CONTROL_SIZE_MODIFIERS as Y, SEGMENTED_CONTROL_CONTEXT_KEY as Z, SEGMENTED_CONTROL_SELECT_KEY as j, SEGMENTED_CONTROL_FOCUS_KEY as H, SEGMENTED_CONTROL_SPREADS as $, SEGMENTED_CONTROL_ACTIVATION_MODES as X, SEGMENTED_CONTROL_SIZES as J, SEGMENTED_CONTROL_ORIENTATIONS as Q, SEGMENTED_CONTROL_ITEM_SELECTOR as p, SEGMENTED_CONTROL_DATA_VALUE_ATTR as D } from "./segmented-control-constants.js";
|
|
4
|
+
import W from "../stack/stack.js";
|
|
5
|
+
const ae = /* @__PURE__ */ Object.assign({ name: "DtSegmentedControl" }, {
|
|
6
|
+
__name: "segmented_control",
|
|
7
|
+
props: {
|
|
8
|
+
/**
|
|
9
|
+
* Element ID for the radiogroup container.
|
|
10
|
+
* Auto-generated if not provided.
|
|
11
|
+
*/
|
|
12
|
+
id: {
|
|
13
|
+
type: String,
|
|
14
|
+
default() {
|
|
15
|
+
return U();
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
/**
|
|
19
|
+
* The currently selected value (v-model).
|
|
20
|
+
*/
|
|
21
|
+
modelValue: {
|
|
22
|
+
type: String,
|
|
23
|
+
required: !0
|
|
24
|
+
},
|
|
25
|
+
/**
|
|
26
|
+
* Accessible label for the radiogroup.
|
|
27
|
+
*/
|
|
28
|
+
ariaLabel: {
|
|
29
|
+
type: String,
|
|
30
|
+
default: void 0
|
|
31
|
+
},
|
|
32
|
+
/**
|
|
33
|
+
* Orientation of the segmented control.
|
|
34
|
+
* Maps to DtStack direction: horizontal -> row, vertical -> column.
|
|
35
|
+
* @values horizontal, vertical
|
|
36
|
+
*/
|
|
37
|
+
orientation: {
|
|
38
|
+
type: String,
|
|
39
|
+
default: q,
|
|
40
|
+
validator: (o) => Q.includes(o)
|
|
41
|
+
},
|
|
42
|
+
/**
|
|
43
|
+
* DtButton size for all items. Inherited by children via provide.
|
|
44
|
+
* @values 100, 200, 300, 400, 500
|
|
45
|
+
*/
|
|
46
|
+
size: {
|
|
47
|
+
type: [String, Number],
|
|
48
|
+
default: P,
|
|
49
|
+
validator: (o) => J.includes(String(o))
|
|
50
|
+
},
|
|
51
|
+
/**
|
|
52
|
+
* Controls whether items are selected on focus (auto) or on click/Space/Enter (manual).
|
|
53
|
+
* @values auto, manual
|
|
54
|
+
*/
|
|
55
|
+
activationMode: {
|
|
56
|
+
type: String,
|
|
57
|
+
default: B,
|
|
58
|
+
validator: (o) => X.includes(o)
|
|
59
|
+
},
|
|
60
|
+
/**
|
|
61
|
+
* Disables all items in the group.
|
|
62
|
+
* Per-item disabled is set via the disabled prop on DtSegmentedControlItem.
|
|
63
|
+
*/
|
|
64
|
+
disabled: {
|
|
65
|
+
type: Boolean,
|
|
66
|
+
default: !1
|
|
67
|
+
},
|
|
68
|
+
/**
|
|
69
|
+
* Hides the dividers between items.
|
|
70
|
+
*/
|
|
71
|
+
hideDivider: {
|
|
72
|
+
type: Boolean,
|
|
73
|
+
default: !1
|
|
74
|
+
},
|
|
75
|
+
/**
|
|
76
|
+
* Removes the border and padding from the container.
|
|
77
|
+
*/
|
|
78
|
+
borderless: {
|
|
79
|
+
type: Boolean,
|
|
80
|
+
default: !1
|
|
81
|
+
},
|
|
82
|
+
/**
|
|
83
|
+
* Controls how items distribute space.
|
|
84
|
+
* 'grow' (default): items size to their content.
|
|
85
|
+
* 'evenly': items share space equally.
|
|
86
|
+
* @values grow, evenly
|
|
87
|
+
*/
|
|
88
|
+
spread: {
|
|
89
|
+
type: String,
|
|
90
|
+
default: K,
|
|
91
|
+
validator: (o) => $.includes(o)
|
|
92
|
+
},
|
|
93
|
+
/**
|
|
94
|
+
* Default label class for all items. Items can override with their own labelClass prop.
|
|
95
|
+
*/
|
|
96
|
+
labelClass: {
|
|
97
|
+
type: [String, Array, Object],
|
|
98
|
+
default: ""
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
emits: [
|
|
102
|
+
/**
|
|
103
|
+
* v-model event. Emitted when the selected value changes.
|
|
104
|
+
* @event update:modelValue
|
|
105
|
+
* @type {String}
|
|
106
|
+
*/
|
|
107
|
+
"update:modelValue",
|
|
108
|
+
/**
|
|
109
|
+
* Emitted when the user selects an item (click, Enter, Space, or arrow in auto mode).
|
|
110
|
+
* Not emitted for programmatic modelValue changes.
|
|
111
|
+
* @event change
|
|
112
|
+
* @type {String}
|
|
113
|
+
*/
|
|
114
|
+
"change",
|
|
115
|
+
/**
|
|
116
|
+
* Emitted before a selection change. Call event.preventDefault() to cancel the change.
|
|
117
|
+
* @event before-change
|
|
118
|
+
* @type {Event}
|
|
119
|
+
*/
|
|
120
|
+
"before-change"
|
|
121
|
+
],
|
|
122
|
+
setup(o, { emit: m }) {
|
|
123
|
+
const n = o, u = m, c = S(null), E = S(null), C = N(() => n.orientation === "vertical" ? "column" : "row"), A = N(() => [
|
|
124
|
+
"d-segmented-control",
|
|
125
|
+
Y[String(n.size)],
|
|
126
|
+
n.hideDivider ? "d-segmented-control--hide-divider" : null,
|
|
127
|
+
n.borderless ? "d-segmented-control--borderless" : null,
|
|
128
|
+
n.orientation === "vertical" ? "d-segmented-control--vertical" : null,
|
|
129
|
+
n.spread === "evenly" && n.orientation === "horizontal" ? "d-segmented-control--spread-evenly" : null
|
|
130
|
+
]), l = R({
|
|
131
|
+
selected: n.modelValue,
|
|
132
|
+
disabled: n.disabled,
|
|
133
|
+
size: n.size,
|
|
134
|
+
labelClass: n.labelClass
|
|
135
|
+
});
|
|
136
|
+
I(() => {
|
|
137
|
+
l.selected = n.modelValue, l.disabled = n.disabled, l.size = n.size, l.labelClass = n.labelClass;
|
|
138
|
+
}), T(Z, l), T(j, O), T(H, h);
|
|
139
|
+
function g() {
|
|
140
|
+
const e = b();
|
|
141
|
+
if (!e.length || e.some((r) => r.getAttribute("tabindex") === "0")) return;
|
|
142
|
+
const a = e.find((r) => !f(r));
|
|
143
|
+
a && a.setAttribute("tabindex", "0");
|
|
144
|
+
}
|
|
145
|
+
M(g), w(() => [n.modelValue, n.disabled], g, { flush: "post" });
|
|
146
|
+
function b() {
|
|
147
|
+
var t;
|
|
148
|
+
const e = ((t = c.value) == null ? void 0 : t.$el) || c.value;
|
|
149
|
+
return e ? Array.from(e.querySelectorAll(p)) : [];
|
|
150
|
+
}
|
|
151
|
+
function h(e) {
|
|
152
|
+
E.value = e;
|
|
153
|
+
}
|
|
154
|
+
function O(e) {
|
|
155
|
+
if (n.disabled || e === n.modelValue) return;
|
|
156
|
+
const t = new Event("before-change", { cancelable: !0 });
|
|
157
|
+
u("before-change", t), !t.defaultPrevented && (u("update:modelValue", e), u("change", e));
|
|
158
|
+
}
|
|
159
|
+
function y(e, t) {
|
|
160
|
+
if (t) {
|
|
161
|
+
const r = t.target.closest(p);
|
|
162
|
+
if (r) {
|
|
163
|
+
const i = e.indexOf(r);
|
|
164
|
+
if (i !== -1) return i;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
const a = e.findIndex((r) => {
|
|
168
|
+
const i = r.getAttribute(D);
|
|
169
|
+
return E.value ? i === E.value : r.getAttribute("aria-checked") === "true";
|
|
170
|
+
});
|
|
171
|
+
return a === -1 ? 0 : a;
|
|
172
|
+
}
|
|
173
|
+
function _(e) {
|
|
174
|
+
f(e) || O(e.getAttribute(D));
|
|
175
|
+
}
|
|
176
|
+
function f(e) {
|
|
177
|
+
return e.getAttribute("aria-disabled") === "true";
|
|
178
|
+
}
|
|
179
|
+
function d(e, t, a) {
|
|
180
|
+
const r = e.length;
|
|
181
|
+
for (let i = 1; i <= r; i++) {
|
|
182
|
+
const s = (t + i * a + r) % r;
|
|
183
|
+
if (!f(e[s])) return s;
|
|
184
|
+
}
|
|
185
|
+
return t;
|
|
186
|
+
}
|
|
187
|
+
function L(e, t, a) {
|
|
188
|
+
const r = n.orientation === "horizontal", i = r ? "ArrowRight" : "ArrowDown", s = r ? "ArrowLeft" : "ArrowUp";
|
|
189
|
+
switch (e) {
|
|
190
|
+
case i:
|
|
191
|
+
return d(a, t, 1);
|
|
192
|
+
case s:
|
|
193
|
+
return d(a, t, -1);
|
|
194
|
+
case "Home":
|
|
195
|
+
return d(a, a.length - 1, 1);
|
|
196
|
+
case "End":
|
|
197
|
+
return d(a, 0, -1);
|
|
198
|
+
default:
|
|
199
|
+
return -1;
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
function v(e) {
|
|
203
|
+
const t = b();
|
|
204
|
+
if (!t.length) return;
|
|
205
|
+
const a = y(t, e);
|
|
206
|
+
if (e.key === "Enter" || e.key === " ") {
|
|
207
|
+
_(t[a]), e.preventDefault(), e.stopPropagation();
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
210
|
+
const r = L(e.key, a, t);
|
|
211
|
+
r !== -1 && (e.preventDefault(), e.stopPropagation(), t[r].focus(), n.activationMode === "auto" && _(t[r]));
|
|
212
|
+
}
|
|
213
|
+
return (e, t) => (x(), G(V(W), {
|
|
214
|
+
id: o.id,
|
|
215
|
+
ref_key: "container",
|
|
216
|
+
ref: c,
|
|
217
|
+
align: "stretch",
|
|
218
|
+
class: z(A.value),
|
|
219
|
+
direction: C.value,
|
|
220
|
+
role: "radiogroup",
|
|
221
|
+
"aria-label": o.ariaLabel,
|
|
222
|
+
"aria-orientation": o.orientation,
|
|
223
|
+
"data-qa": "dt-segmented-control",
|
|
224
|
+
onKeydown: v
|
|
225
|
+
}, {
|
|
226
|
+
default: k(() => [
|
|
227
|
+
F(e.$slots, "default")
|
|
228
|
+
]),
|
|
229
|
+
_: 3
|
|
230
|
+
}, 8, ["id", "class", "direction", "aria-label", "aria-orientation"]));
|
|
231
|
+
}
|
|
232
|
+
});
|
|
233
|
+
export {
|
|
234
|
+
ae as default
|
|
235
|
+
};
|
|
236
|
+
//# sourceMappingURL=segmented-control.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"segmented-control.js","sources":["../../../components/segmented_control/segmented_control.vue"],"sourcesContent":["<template>\n <dt-stack\n :id=\"id\"\n ref=\"container\"\n align=\"stretch\"\n :class=\"containerClasses\"\n :direction=\"stackDirection\"\n role=\"radiogroup\"\n :aria-label=\"ariaLabel\"\n :aria-orientation=\"orientation\"\n data-qa=\"dt-segmented-control\"\n @keydown=\"handleKeyDown\"\n >\n <!-- @slot DtSegmentedControlItem children -->\n <slot />\n </dt-stack>\n</template>\n\n<script setup>\nimport { ref, computed, reactive, watchEffect, watch, provide, onMounted } from 'vue';\nimport { getUniqueString } from '@/common/utils';\nimport { DtStack } from '@/components/stack';\nimport {\n SEGMENTED_CONTROL_SIZES,\n SEGMENTED_CONTROL_SIZE_DEFAULT,\n SEGMENTED_CONTROL_SIZE_MODIFIERS,\n SEGMENTED_CONTROL_ORIENTATIONS,\n SEGMENTED_CONTROL_ORIENTATION_DEFAULT,\n SEGMENTED_CONTROL_ACTIVATION_MODES,\n SEGMENTED_CONTROL_ACTIVATION_MODE_DEFAULT,\n SEGMENTED_CONTROL_SPREADS,\n SEGMENTED_CONTROL_SPREAD_DEFAULT,\n SEGMENTED_CONTROL_CONTEXT_KEY,\n SEGMENTED_CONTROL_SELECT_KEY,\n SEGMENTED_CONTROL_FOCUS_KEY,\n SEGMENTED_CONTROL_ITEM_SELECTOR,\n SEGMENTED_CONTROL_DATA_VALUE_ATTR,\n} from './segmented_control_constants.js';\n\ndefineOptions({ name: 'DtSegmentedControl' });\n\nconst props = defineProps({\n /**\n * Element ID for the radiogroup container.\n * Auto-generated if not provided.\n */\n id: {\n type: String,\n default () { return getUniqueString(); },\n },\n\n /**\n * The currently selected value (v-model).\n */\n modelValue: {\n type: String,\n required: true,\n },\n\n /**\n * Accessible label for the radiogroup.\n */\n ariaLabel: {\n type: String,\n default: undefined,\n },\n\n /**\n * Orientation of the segmented control.\n * Maps to DtStack direction: horizontal -> row, vertical -> column.\n * @values horizontal, vertical\n */\n orientation: {\n type: String,\n default: SEGMENTED_CONTROL_ORIENTATION_DEFAULT,\n validator: (v) => SEGMENTED_CONTROL_ORIENTATIONS.includes(v),\n },\n\n /**\n * DtButton size for all items. Inherited by children via provide.\n * @values 100, 200, 300, 400, 500\n */\n size: {\n type: [String, Number],\n default: SEGMENTED_CONTROL_SIZE_DEFAULT,\n validator: (v) => SEGMENTED_CONTROL_SIZES.includes(String(v)),\n },\n\n /**\n * Controls whether items are selected on focus (auto) or on click/Space/Enter (manual).\n * @values auto, manual\n */\n activationMode: {\n type: String,\n default: SEGMENTED_CONTROL_ACTIVATION_MODE_DEFAULT,\n validator: (v) => SEGMENTED_CONTROL_ACTIVATION_MODES.includes(v),\n },\n\n /**\n * Disables all items in the group.\n * Per-item disabled is set via the disabled prop on DtSegmentedControlItem.\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Hides the dividers between items.\n */\n hideDivider: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Removes the border and padding from the container.\n */\n borderless: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Controls how items distribute space.\n * 'grow' (default): items size to their content.\n * 'evenly': items share space equally.\n * @values grow, evenly\n */\n spread: {\n type: String,\n default: SEGMENTED_CONTROL_SPREAD_DEFAULT,\n validator: (v) => SEGMENTED_CONTROL_SPREADS.includes(v),\n },\n\n /**\n * Default label class for all items. Items can override with their own labelClass prop.\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n});\n\nconst emit = defineEmits([\n /**\n * v-model event. Emitted when the selected value changes.\n * @event update:modelValue\n * @type {String}\n */\n 'update:modelValue',\n\n /**\n * Emitted when the user selects an item (click, Enter, Space, or arrow in auto mode).\n * Not emitted for programmatic modelValue changes.\n * @event change\n * @type {String}\n */\n 'change',\n\n /**\n * Emitted before a selection change. Call event.preventDefault() to cancel the change.\n * @event before-change\n * @type {Event}\n */\n 'before-change',\n]);\n\nconst container = ref(null);\nconst focusedValue = ref(null);\n\nconst stackDirection = computed(() => props.orientation === 'vertical' ? 'column' : 'row');\n\nconst containerClasses = computed(() => [\n 'd-segmented-control',\n SEGMENTED_CONTROL_SIZE_MODIFIERS[String(props.size)],\n props.hideDivider ? 'd-segmented-control--hide-divider' : null,\n props.borderless ? 'd-segmented-control--borderless' : null,\n props.orientation === 'vertical' ? 'd-segmented-control--vertical' : null,\n props.spread === 'evenly' && props.orientation === 'horizontal'\n ? 'd-segmented-control--spread-evenly'\n : null,\n]);\n\n// Reactive context provided to children\nconst groupContext = reactive({\n selected: props.modelValue,\n disabled: props.disabled,\n size: props.size,\n labelClass: props.labelClass,\n});\n\nwatchEffect(() => {\n groupContext.selected = props.modelValue;\n groupContext.disabled = props.disabled;\n groupContext.size = props.size;\n groupContext.labelClass = props.labelClass;\n});\n\nprovide(SEGMENTED_CONTROL_CONTEXT_KEY, groupContext);\nprovide(SEGMENTED_CONTROL_SELECT_KEY, selectValue);\nprovide(SEGMENTED_CONTROL_FOCUS_KEY, setFocus);\n\n// Ensures at least one enabled item is tabbable (WAI-ARIA radiogroup requirement).\n// Items set tabindex based on isSelected && !isDisabled. If the selected item is disabled\n// or modelValue doesn't match any item, no item has tabindex=\"0\". This fallback sets\n// tabindex=\"0\" on the first enabled item so keyboard users can reach the control.\nfunction ensureTabbable () {\n const items = getItems();\n if (!items.length) return;\n const hasTabbable = items.some(el => el.getAttribute('tabindex') === '0');\n if (hasTabbable) return;\n const firstEnabled = items.find(el => !isItemDisabled(el));\n if (firstEnabled) firstEnabled.setAttribute('tabindex', '0');\n}\n\nonMounted(ensureTabbable);\nwatch(() => [props.modelValue, props.disabled], ensureTabbable, { flush: 'post' });\n\nfunction getItems () {\n const el = container.value?.$el || container.value;\n return el ? Array.from(el.querySelectorAll(SEGMENTED_CONTROL_ITEM_SELECTOR)) : [];\n}\n\nfunction setFocus (value) {\n focusedValue.value = value;\n}\n\nfunction selectValue (value) {\n if (props.disabled) return;\n if (value === props.modelValue) return;\n const beforeChangeEvent = new Event('before-change', { cancelable: true });\n emit('before-change', beforeChangeEvent);\n if (beforeChangeEvent.defaultPrevented) return;\n emit('update:modelValue', value);\n emit('change', value);\n}\n\nfunction getFocusedIndex (items, event) {\n // First check event.target — the element that actually has focus\n if (event) {\n const target = event.target.closest(SEGMENTED_CONTROL_ITEM_SELECTOR);\n if (target) {\n const targetIdx = items.indexOf(target);\n if (targetIdx !== -1) return targetIdx;\n }\n }\n // Fall back to tracked focusedValue, then aria-checked\n const idx = items.findIndex(el => {\n const value = el.getAttribute(SEGMENTED_CONTROL_DATA_VALUE_ATTR);\n return focusedValue.value ? value === focusedValue.value : el.getAttribute('aria-checked') === 'true';\n });\n return idx === -1 ? 0 : idx;\n}\n\nfunction activateItem (item) {\n if (isItemDisabled(item)) return;\n selectValue(item.getAttribute(SEGMENTED_CONTROL_DATA_VALUE_ATTR));\n}\n\nfunction isItemDisabled (item) {\n return item.getAttribute('aria-disabled') === 'true';\n}\n\nfunction findNextEnabled (items, fromIndex, direction) {\n const len = items.length;\n for (let i = 1; i <= len; i++) {\n const index = (fromIndex + i * direction + len) % len;\n if (!isItemDisabled(items[index])) return index;\n }\n return fromIndex;\n}\n\nfunction getNavigationIndex (key, currentIndex, items) {\n const isHorizontal = props.orientation === 'horizontal';\n const nextKey = isHorizontal ? 'ArrowRight' : 'ArrowDown';\n const prevKey = isHorizontal ? 'ArrowLeft' : 'ArrowUp';\n\n switch (key) {\n case nextKey: return findNextEnabled(items, currentIndex, 1);\n case prevKey: return findNextEnabled(items, currentIndex, -1);\n case 'Home': return findNextEnabled(items, items.length - 1, 1);\n case 'End': return findNextEnabled(items, 0, -1);\n default: return -1;\n }\n}\n\nfunction handleKeyDown (event) {\n const items = getItems();\n if (!items.length) return;\n\n const focusedIndex = getFocusedIndex(items, event);\n\n if (event.key === 'Enter' || event.key === ' ') {\n activateItem(items[focusedIndex]);\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n\n const newIndex = getNavigationIndex(event.key, focusedIndex, items);\n if (newIndex === -1) return;\n\n event.preventDefault();\n event.stopPropagation();\n items[newIndex].focus();\n\n if (props.activationMode === 'auto') {\n activateItem(items[newIndex]);\n }\n}\n</script>\n"],"names":["props","__props","emit","__emit","container","ref","focusedValue","stackDirection","computed","containerClasses","SEGMENTED_CONTROL_SIZE_MODIFIERS","groupContext","reactive","watchEffect","provide","SEGMENTED_CONTROL_CONTEXT_KEY","SEGMENTED_CONTROL_SELECT_KEY","selectValue","SEGMENTED_CONTROL_FOCUS_KEY","setFocus","ensureTabbable","items","getItems","el","firstEnabled","isItemDisabled","onMounted","watch","_a","SEGMENTED_CONTROL_ITEM_SELECTOR","value","beforeChangeEvent","getFocusedIndex","event","target","targetIdx","idx","SEGMENTED_CONTROL_DATA_VALUE_ATTR","activateItem","item","findNextEnabled","fromIndex","direction","len","index","getNavigationIndex","key","currentIndex","isHorizontal","nextKey","prevKey","handleKeyDown","focusedIndex","newIndex","_createBlock","_unref","DtStack","_renderSlot","_ctx"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e={xs:"d-select--xs",sm:"d-select--sm",md:"",lg:"d-select--lg",xl:"d-select--xl"},s={error:"d-select__input--error",warning:"d-select__input--warning",success:"d-select__input--success"},t={SELECT_SIZE_MODIFIERS:e,SELECT_STATE_MODIFIERS:s};exports.SELECT_SIZE_MODIFIERS=e;exports.SELECT_STATE_MODIFIERS=s;exports.default=t;
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e={100:"d-select--xs",200:"d-select--sm",300:"",400:"d-select--lg",500:"d-select--xl",xs:"d-select--xs",sm:"d-select--sm",md:"",lg:"d-select--lg",xl:"d-select--xl"},s={error:"d-select__input--error",warning:"d-select__input--warning",success:"d-select__input--success"},t={SELECT_SIZE_MODIFIERS:e,SELECT_STATE_MODIFIERS:s};exports.SELECT_SIZE_MODIFIERS=e;exports.SELECT_STATE_MODIFIERS=s;exports.default=t;
|
|
2
2
|
//# sourceMappingURL=select-menu-constants.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-menu-constants.cjs","sources":["../../../components/select_menu/select_menu_constants.js"],"sourcesContent":["export const SELECT_SIZE_MODIFIERS = {\n xs: 'd-select--xs',\n sm: 'd-select--sm',\n md: '',\n lg: 'd-select--lg',\n xl: 'd-select--xl',\n};\n\nexport const SELECT_STATE_MODIFIERS = {\n error: 'd-select__input--error',\n warning: 'd-select__input--warning',\n success: 'd-select__input--success',\n};\n\nexport default {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n};\n"],"names":["SELECT_SIZE_MODIFIERS","SELECT_STATE_MODIFIERS","select_menu_constants"],"mappings":"4GAAY,MAACA,EAAwB,
|
|
1
|
+
{"version":3,"file":"select-menu-constants.cjs","sources":["../../../components/select_menu/select_menu_constants.js"],"sourcesContent":["export const SELECT_SIZE_MODIFIERS = {\n // Numeric (preferred)\n 100: 'd-select--xs',\n 200: 'd-select--sm',\n 300: '',\n 400: 'd-select--lg',\n 500: 'd-select--xl',\n // T-shirt aliases (deprecated)\n xs: 'd-select--xs',\n sm: 'd-select--sm',\n md: '',\n lg: 'd-select--lg',\n xl: 'd-select--xl',\n};\n\nexport const SELECT_STATE_MODIFIERS = {\n error: 'd-select__input--error',\n warning: 'd-select__input--warning',\n success: 'd-select__input--success',\n};\n\nexport default {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n};\n"],"names":["SELECT_SIZE_MODIFIERS","SELECT_STATE_MODIFIERS","select_menu_constants"],"mappings":"4GAAY,MAACA,EAAwB,CAEnC,IAAK,eACL,IAAK,eACL,IAAK,GACL,IAAK,eACL,IAAK,eAEL,GAAI,eACJ,GAAI,eACJ,GAAI,GACJ,GAAI,eACJ,GAAI,cACN,EAEaC,EAAyB,CACpC,MAAO,yBACP,QAAS,2BACT,QAAS,0BACX,EAEAC,EAAe,CACb,sBAAAF,EACA,uBAAAC,CACF"}
|
|
@@ -1,20 +1,27 @@
|
|
|
1
|
-
const
|
|
1
|
+
const e = {
|
|
2
|
+
// Numeric (preferred)
|
|
3
|
+
100: "d-select--xs",
|
|
4
|
+
200: "d-select--sm",
|
|
5
|
+
300: "",
|
|
6
|
+
400: "d-select--lg",
|
|
7
|
+
500: "d-select--xl",
|
|
8
|
+
// T-shirt aliases (deprecated)
|
|
2
9
|
xs: "d-select--xs",
|
|
3
10
|
sm: "d-select--sm",
|
|
4
11
|
md: "",
|
|
5
12
|
lg: "d-select--lg",
|
|
6
13
|
xl: "d-select--xl"
|
|
7
|
-
},
|
|
14
|
+
}, s = {
|
|
8
15
|
error: "d-select__input--error",
|
|
9
16
|
warning: "d-select__input--warning",
|
|
10
17
|
success: "d-select__input--success"
|
|
11
18
|
}, t = {
|
|
12
|
-
SELECT_SIZE_MODIFIERS:
|
|
13
|
-
SELECT_STATE_MODIFIERS:
|
|
19
|
+
SELECT_SIZE_MODIFIERS: e,
|
|
20
|
+
SELECT_STATE_MODIFIERS: s
|
|
14
21
|
};
|
|
15
22
|
export {
|
|
16
|
-
|
|
17
|
-
|
|
23
|
+
e as SELECT_SIZE_MODIFIERS,
|
|
24
|
+
s as SELECT_STATE_MODIFIERS,
|
|
18
25
|
t as default
|
|
19
26
|
};
|
|
20
27
|
//# sourceMappingURL=select-menu-constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-menu-constants.js","sources":["../../../components/select_menu/select_menu_constants.js"],"sourcesContent":["export const SELECT_SIZE_MODIFIERS = {\n xs: 'd-select--xs',\n sm: 'd-select--sm',\n md: '',\n lg: 'd-select--lg',\n xl: 'd-select--xl',\n};\n\nexport const SELECT_STATE_MODIFIERS = {\n error: 'd-select__input--error',\n warning: 'd-select__input--warning',\n success: 'd-select__input--success',\n};\n\nexport default {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n};\n"],"names":["SELECT_SIZE_MODIFIERS","SELECT_STATE_MODIFIERS","select_menu_constants"],"mappings":"AAAY,MAACA,IAAwB;AAAA,
|
|
1
|
+
{"version":3,"file":"select-menu-constants.js","sources":["../../../components/select_menu/select_menu_constants.js"],"sourcesContent":["export const SELECT_SIZE_MODIFIERS = {\n // Numeric (preferred)\n 100: 'd-select--xs',\n 200: 'd-select--sm',\n 300: '',\n 400: 'd-select--lg',\n 500: 'd-select--xl',\n // T-shirt aliases (deprecated)\n xs: 'd-select--xs',\n sm: 'd-select--sm',\n md: '',\n lg: 'd-select--lg',\n xl: 'd-select--xl',\n};\n\nexport const SELECT_STATE_MODIFIERS = {\n error: 'd-select__input--error',\n warning: 'd-select__input--warning',\n success: 'd-select__input--success',\n};\n\nexport default {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n};\n"],"names":["SELECT_SIZE_MODIFIERS","SELECT_STATE_MODIFIERS","select_menu_constants"],"mappings":"AAAY,MAACA,IAAwB;AAAA;AAAA,EAEnC,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA;AAAA,EAEL,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN,GAEaC,IAAyB;AAAA,EACpC,OAAO;AAAA,EACP,SAAS;AAAA,EACT,SAAS;AACX,GAEAC,IAAe;AAAA,EACb,uBAAAF;AAAA,EACA,wBAAAC;AACF;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("vue"),o=require("./select-menu-constants.cjs"),a=require("../../common/utils/index.cjs"),m=require("../../common/mixins/input.cjs"),S=require("./select-menu-validators.cjs"),b=require("../../_plugin-vue_export-helper-BRilXfQE.cjs"),g=require("../text/text.cjs"),h=require("../validation-messages/validation-messages.cjs"),c=require("../text/text-constants.cjs"),y={compatConfig:{MODE:3},name:"DtSelectMenu",components:{DtValidationMessages:h.default,DtText:g.default},mixins:[m.MessagesMixin],inheritAttrs:!1,props:{label:{type:String,default:""},labelVisible:{type:Boolean,default:!0},description:{type:String,default:""},options:{type:Array,default:()=>[],validator:e=>S.optionsValidator(e)},size:{type:[String,Number],default:300,validator:e=>Object.keys(o.SELECT_SIZE_MODIFIERS).includes(String(e))},labelClass:{type:[String,Array,Object],default:""},descriptionClass:{type:[String,Array,Object],default:""},selectClass:{type:[String,Array,Object],default:""},optionClass:{type:[String,Array,Object],default:""},labelChildProps:{type:Object,default:()=>({})},descriptionChildProps:{type:Object,default:()=>({})},optionChildProps:{type:Object,default:()=>({})},disabled:{type:Boolean,default:!1},rootClass:{type:[String,Object,Array],default:""},modelValue:{type:[String,Number],default:""},labelSize:{type:[String,Number],default:null,validator:e=>c.TEXT_SIZE_MODIFIERS.label.includes(String(e))},labelStrength:{type:String,default:null,validator:e=>Object.keys(c.TEXT_STRENGTH_MODIFIERS).includes(e)}},emits:["input","update:modelValue","change"],data(){return{SELECT_SIZE_MODIFIERS:o.SELECT_SIZE_MODIFIERS,SELECT_STATE_MODIFIERS:o.SELECT_STATE_MODIFIERS,hasSlotContent:a.hasSlotContent}},computed:{resolvedLabelSize(){if(this.labelSize!=null)return this.labelSize;const e=String(this.size);return e==="xl"||e==="500"?e==="500"?"400":"lg":this.size},resolvedDescriptionSize(){return{100:"xs",200:"xs",300:"sm",400:"sm",500:"md",xs:"xs",sm:"xs",md:"sm",lg:"sm",xl:"md"}[String(this.size)]||"sm"},resolvedDescriptionDensity(){const e=String(this.size);return e==="xl"||e==="500"?"300":void 0},selectListeners(){return{input:()=>{},change:e=>this.emitValue(e.target.value,e)}},state(){return a.getValidationState(this.formattedMessages)},selectKey(){return a.getUniqueString()},descriptionKey(){return`select-${this.selectKey}-description`},labelAriaDetails(){return this.$slots.description||this.description?this.descriptionKey:this.$attrs["aria-details"]}},mounted(){this.validateOptionsPresence(),this.runValidations()},beforeUpdate(){this.validateOptionsPresence()},methods:{removeClassStyleAttrs:a.removeClassStyleAttrs,addClassStyleAttrs:a.addClassStyleAttrs,emitValue(e,i){this.$emit("update:modelValue",e,i),this.$emit("input",e,i),this.$emit("change",e,i)},getOptionKey(e){return`select-${this.selectKey}-option-${e}`},validateOptionsPresence(){var e;((e=this.options)==null?void 0:e.length)<1&&!this.$slots.default&&t.warn("Options are expected to be provided via prop or slot",this)},runValidations(){!!!(this.$slots.label||this.label)&&!this.$attrs["aria-label"]&&console.info('[Dialtone] A label is required for accessibility. Provide a label prop and use label-visible="false" to hide it visually.')}}},p=["aria-label","disabled","value"],_=["value"];function f(e,i,s,E,r,l){const d=t.resolveComponent("dt-text"),u=t.resolveComponent("dt-validation-messages");return t.openBlock(),t.createElementBlock("div",t.mergeProps({class:s.rootClass},l.addClassStyleAttrs(e.$attrs)),[t.createElementVNode("label",null,[s.labelVisible&&(r.hasSlotContent(e.$slots.label)||s.label)?(t.openBlock(),t.createBlock(d,t.mergeProps({key:0,kind:"label",size:l.resolvedLabelSize,strength:s.labelStrength,tone:"secondary",as:"div","aria-details":l.labelAriaDetails,class:["d-select__label-text",s.labelClass]},s.labelChildProps,{"data-qa":"dt-select-label"}),{default:t.withCtx(()=>[t.renderSlot(e.$slots,"label",{},()=>[t.createTextVNode(t.toDisplayString(s.label),1)])]),_:3},16,["size","strength","aria-details","class"])):t.createCommentVNode("",!0),r.hasSlotContent(e.$slots.description)||s.description?(t.openBlock(),t.createBlock(d,t.mergeProps({key:1,id:l.descriptionKey,kind:"body",size:l.resolvedDescriptionSize,tone:"tertiary",density:l.resolvedDescriptionDensity,as:"div",class:["d-description",s.descriptionClass]},s.descriptionChildProps,{"data-qa":"dt-select-description"}),{default:t.withCtx(()=>[t.renderSlot(e.$slots,"description",{},()=>[t.createTextVNode(t.toDisplayString(s.description),1)])]),_:3},16,["id","size","density","class"])):t.createCommentVNode("",!0),t.createElementVNode("div",{class:t.normalizeClass(["d-select",r.SELECT_SIZE_MODIFIERS[String(s.size)],s.selectClass,{"d-select--disabled":s.disabled}]),"data-qa":"dt-select-wrapper"},[t.createElementVNode("select",t.mergeProps({ref:"selectElement",class:["d-select__input",r.SELECT_STATE_MODIFIERS[l.state]],"aria-label":!s.labelVisible&&s.label?s.label:void 0},l.removeClassStyleAttrs(e.$attrs),{"data-qa":"dt-select",disabled:s.disabled,value:s.modelValue},t.toHandlers(l.selectListeners,!0)),[t.renderSlot(e.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.options,n=>(t.openBlock(),t.createElementBlock("option",t.mergeProps({key:l.getOptionKey(n.value),value:n.value,class:s.optionClass},{ref_for:!0},s.optionChildProps),t.toDisplayString(n.label),17,_))),128))])],16,p)],2)]),t.createVNode(u,t.mergeProps({"validation-messages":e.formattedMessages,"show-messages":e.showMessages,class:e.messagesClass},e.messagesChildProps,{"data-qa":"dt-select-messages"}),null,16,["validation-messages","show-messages","class"])],16)}const C=b._(y,[["render",f]]);exports.default=C;
|
|
2
2
|
//# sourceMappingURL=select-menu.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-menu.cjs","sources":["../../../components/select_menu/select_menu.vue"],"sourcesContent":["<template>\n <div\n :class=\"rootClass\"\n v-bind=\"addClassStyleAttrs($attrs)\"\n >\n <label>\n <div\n v-if=\"hasSlotContent($slots.label) || label\"\n :aria-details=\"labelAriaDetails\"\n :class=\"[\n 'd-label',\n LABEL_SIZE_MODIFIERS[size],\n labelClass,\n ]\"\n v-bind=\"labelChildProps\"\n data-qa=\"dt-select-label\"\n >\n <!-- @slot Slot for label, defaults to label prop -->\n <slot name=\"label\">{{ label }}</slot>\n </div>\n <div\n v-if=\"hasSlotContent($slots.description) || description\"\n :id=\"descriptionKey\"\n :class=\"[\n 'd-description',\n DESCRIPTION_SIZE_MODIFIERS[size],\n descriptionClass,\n ]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"dt-select-description\"\n >\n <!-- @slot Slot for description, defaults to description prop -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <div\n :class=\"[\n 'd-select',\n SELECT_SIZE_MODIFIERS[size],\n selectClass,\n { 'd-select--disabled': disabled },\n ]\"\n data-qa=\"dt-select-wrapper\"\n >\n <select\n ref=\"selectElement\"\n :class=\"[\n 'd-select__input',\n SELECT_STATE_MODIFIERS[state],\n ]\"\n v-bind=\"removeClassStyleAttrs($attrs)\"\n data-qa=\"dt-select\"\n :disabled=\"disabled\"\n :value=\"modelValue\"\n v-on=\"selectListeners\"\n >\n <!-- @slot Slot for select menu options, defaults to options prop -->\n <slot>\n <option\n v-for=\"option in options\"\n :key=\"getOptionKey(option.value)\"\n :value=\"option.value\"\n :class=\"optionClass\"\n v-bind=\"optionChildProps\"\n >\n {{ option.label }}\n </option>\n </slot>\n </select>\n </div>\n </label>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-select-messages\"\n />\n </div>\n</template>\n\n<script>\nimport { warn } from 'vue';\nimport {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n} from '@/common/constants';\nimport {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n} from './select_menu_constants';\nimport {\n getUniqueString,\n getValidationState,\n hasSlotContent,\n removeClassStyleAttrs,\n addClassStyleAttrs,\n} from '@/common/utils';\nimport { MessagesMixin } from '@/common/mixins/input';\nimport { optionsValidator } from './select_menu_validators.js';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * A select menu is an input control that allows users to choose one option from a list.\n * @property {Boolean} disabled attribute\n * @property {String} name attribute\n * @property {String} value attribute\n * @see https://dialtone.dialpad.com/components/select.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtSelectMenu',\n\n components: { DtValidationMessages },\n\n mixins: [MessagesMixin],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Label for the select\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Description for the select\n */\n description: {\n type: String,\n default: '',\n },\n\n /**\n * Select Menu Options, overridden by default slot. Each option has the following structure:\n * `{ value: number || string (required), label: string (required) }`\n * @param {Object[]} options - Optional - A list that can be used to create a list of select menu options\n * @param {number|string} options[].value - Required - The option value\n * @param {string} options[].label - Required - The option Label\n */\n options: {\n type: Array,\n default: () => [],\n validator: options => optionsValidator(options),\n },\n\n /**\n * Controls the size of the select\n * @values xs, sm, md, lg, xl\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(SELECT_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * Used to customize the label container\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the description container\n */\n descriptionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the select\n */\n selectClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize each option, should options be provided via prop\n */\n optionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * A set of props that are passed into the label container\n */\n labelChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into the description container\n */\n descriptionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into each option, should options be provided via prop\n */\n optionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * Disabled state of the select\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Additional class name for the root element.\n * Can accept all of: String, Object, and Array, i.e. has the\n * same api as Vue's built-in handling of the class attribute.\n */\n rootClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * The value of the select menu\n */\n modelValue: {\n type: [String, Number],\n default: '',\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {String | Number}\n */\n 'input',\n\n /**\n * Event fired to sync the modelValue prop with the parent component\n *\n * @event input\n * @type {String | Number}\n */\n 'update:modelValue',\n\n /**\n * Native change event\n *\n * @event change\n * @type {String | Number}\n */\n 'change',\n ],\n\n data () {\n return {\n LABEL_SIZE_MODIFIERS,\n DESCRIPTION_SIZE_MODIFIERS,\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n hasSlotContent,\n };\n },\n\n computed: {\n selectListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through onto the input\n * element which will result in the handler being called twice (once on the select element and once by the\n * emitted input event by the change listener).\n */\n input: () => {},\n change: event => this.emitValue(event.target.value, event),\n };\n },\n\n state () {\n return getValidationState(this.formattedMessages);\n },\n\n selectKey () {\n return getUniqueString();\n },\n\n descriptionKey () {\n return `select-${this.selectKey}-description`;\n },\n\n labelAriaDetails () {\n if (this.$slots.description || this.description) {\n return this.descriptionKey;\n }\n\n return this.$attrs['aria-details'];\n },\n },\n\n mounted () {\n this.validateOptionsPresence();\n },\n\n beforeUpdate () {\n this.validateOptionsPresence();\n },\n\n methods: {\n removeClassStyleAttrs,\n addClassStyleAttrs,\n emitValue (value, event) {\n this.$emit('update:modelValue', value, event);\n this.$emit('input', value, event);\n this.$emit('change', value, event);\n },\n\n getOptionKey (value) {\n return `select-${this.selectKey}-option-${value}`;\n },\n\n validateOptionsPresence () {\n if (this.options?.length < 1 && !this.$slots.default) {\n warn('Options are expected to be provided via prop or slot', this);\n }\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtValidationMessages","MessagesMixin","options","optionsValidator","s","SELECT_SIZE_MODIFIERS","LABEL_SIZE_MODIFIERS","DESCRIPTION_SIZE_MODIFIERS","SELECT_STATE_MODIFIERS","hasSlotContent","event","getValidationState","getUniqueString","removeClassStyleAttrs","addClassStyleAttrs","value","_a","warn","_createElementBlock","_mergeProps","$props","$options","_ctx","_createElementVNode","$data","_openBlock","_renderSlot","_normalizeClass","_toHandlers","_Fragment","_renderList","option","_toDisplayString","_hoisted_4","_createVNode","_component_dt_validation_messages"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"select-menu.cjs","sources":["../../../components/select_menu/select_menu.vue"],"sourcesContent":["<template>\n <div\n :class=\"rootClass\"\n v-bind=\"addClassStyleAttrs($attrs)\"\n >\n <label>\n <dt-text\n v-if=\"labelVisible && (hasSlotContent($slots.label) || label)\"\n kind=\"label\"\n :size=\"resolvedLabelSize\"\n :strength=\"labelStrength\"\n tone=\"secondary\"\n as=\"div\"\n :aria-details=\"labelAriaDetails\"\n :class=\"['d-select__label-text', labelClass]\"\n v-bind=\"labelChildProps\"\n data-qa=\"dt-select-label\"\n >\n <!-- @slot Slot for label, defaults to label prop -->\n <slot name=\"label\">{{ label }}</slot>\n </dt-text>\n <dt-text\n v-if=\"hasSlotContent($slots.description) || description\"\n :id=\"descriptionKey\"\n kind=\"body\"\n :size=\"resolvedDescriptionSize\"\n tone=\"tertiary\"\n :density=\"resolvedDescriptionDensity\"\n as=\"div\"\n :class=\"[\n 'd-description',\n descriptionClass,\n ]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"dt-select-description\"\n >\n <!-- @slot Slot for description, defaults to description prop -->\n <slot name=\"description\">{{ description }}</slot>\n </dt-text>\n <div\n :class=\"[\n 'd-select',\n SELECT_SIZE_MODIFIERS[String(size)],\n selectClass,\n { 'd-select--disabled': disabled },\n ]\"\n data-qa=\"dt-select-wrapper\"\n >\n <select\n ref=\"selectElement\"\n :class=\"[\n 'd-select__input',\n SELECT_STATE_MODIFIERS[state],\n ]\"\n :aria-label=\"!labelVisible && label ? label : undefined\"\n v-bind=\"removeClassStyleAttrs($attrs)\"\n data-qa=\"dt-select\"\n :disabled=\"disabled\"\n :value=\"modelValue\"\n v-on=\"selectListeners\"\n >\n <!-- @slot Slot for select menu options, defaults to options prop -->\n <slot>\n <option\n v-for=\"option in options\"\n :key=\"getOptionKey(option.value)\"\n :value=\"option.value\"\n :class=\"optionClass\"\n v-bind=\"optionChildProps\"\n >\n {{ option.label }}\n </option>\n </slot>\n </select>\n </div>\n </label>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-select-messages\"\n />\n </div>\n</template>\n\n<script>\nimport { warn } from 'vue';\nimport { DtText, TEXT_SIZE_MODIFIERS, TEXT_STRENGTH_MODIFIERS } from '@/components/text';\nimport {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n} from './select_menu_constants';\nimport {\n getUniqueString,\n getValidationState,\n hasSlotContent,\n removeClassStyleAttrs,\n addClassStyleAttrs,\n} from '@/common/utils';\nimport { MessagesMixin } from '@/common/mixins/input';\nimport { optionsValidator } from './select_menu_validators.js';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * A select menu is an input control that allows users to choose one option from a list.\n * @property {Boolean} disabled attribute\n * @property {String} name attribute\n * @property {String} value attribute\n * @see https://dialtone.dialpad.com/components/select.html\n */\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtSelectMenu',\n\n components: { DtValidationMessages, DtText },\n\n mixins: [MessagesMixin],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Label for the select\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Determines visibility of select label.\n * @values true, false\n */\n labelVisible: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Description for the select\n */\n description: {\n type: String,\n default: '',\n },\n\n /**\n * Select Menu Options, overridden by default slot. Each option has the following structure:\n * `{ value: number || string (required), label: string (required) }`\n * @param {Object[]} options - Optional - A list that can be used to create a list of select menu options\n * @param {number|string} options[].value - Required - The option value\n * @param {string} options[].label - Required - The option Label\n */\n options: {\n type: Array,\n default: () => [],\n validator: options => optionsValidator(options),\n },\n\n /**\n * Controls the size of the select\n * @values 100, 200, 300, 400, 500\n */\n size: {\n type: [String, Number],\n default: 300,\n validator: (s) => Object.keys(SELECT_SIZE_MODIFIERS).includes(String(s)),\n },\n\n /**\n * Used to customize the label container\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the description container\n */\n descriptionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the select\n */\n selectClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize each option, should options be provided via prop\n */\n optionClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * A set of props that are passed into the label container\n */\n labelChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into the description container\n */\n descriptionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * A set of props that are passed into each option, should options be provided via prop\n */\n optionChildProps: {\n type: Object,\n default: () => ({}),\n },\n\n /**\n * Disabled state of the select\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Additional class name for the root element.\n * Can accept all of: String, Object, and Array, i.e. has the\n * same api as Vue's built-in handling of the class attribute.\n */\n rootClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * The value of the select menu\n */\n modelValue: {\n type: [String, Number],\n default: '',\n },\n\n /**\n * Overrides the label text size. When not provided, the label size\n * is derived from the component size prop.\n * @values 100, 200, 300, 400\n */\n labelSize: {\n type: [String, Number],\n default: null,\n validator: (s) => TEXT_SIZE_MODIFIERS.label.includes(String(s)),\n },\n\n /**\n * Overrides the label font weight.\n * @values bold, semibold, medium, normal\n */\n labelStrength: {\n type: String,\n default: null,\n validator: (s) => Object.keys(TEXT_STRENGTH_MODIFIERS).includes(s),\n },\n },\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {String | Number}\n */\n 'input',\n\n /**\n * Event fired to sync the modelValue prop with the parent component\n *\n * @event input\n * @type {String | Number}\n */\n 'update:modelValue',\n\n /**\n * Native change event\n *\n * @event change\n * @type {String | Number}\n */\n 'change',\n ],\n\n data () {\n return {\n SELECT_SIZE_MODIFIERS,\n SELECT_STATE_MODIFIERS,\n hasSlotContent,\n };\n },\n\n computed: {\n resolvedLabelSize () {\n if (this.labelSize != null) return this.labelSize;\n const sizeStr = String(this.size);\n // xl/500 exceeds label's max size — cap at lg/400\n if (sizeStr === 'xl' || sizeStr === '500') return sizeStr === '500' ? '400' : 'lg';\n return this.size;\n },\n\n resolvedDescriptionSize () {\n const map = {\n 100: 'xs', 200: 'xs', 300: 'sm', 400: 'sm', 500: 'md',\n xs: 'xs', sm: 'xs', md: 'sm', lg: 'sm', xl: 'md',\n };\n return map[String(this.size)] || 'sm';\n },\n\n resolvedDescriptionDensity () {\n const sizeStr = String(this.size);\n return (sizeStr === 'xl' || sizeStr === '500') ? '300' : undefined;\n },\n\n selectListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through onto the input\n * element which will result in the handler being called twice (once on the select element and once by the\n * emitted input event by the change listener).\n */\n input: () => {},\n change: event => this.emitValue(event.target.value, event),\n };\n },\n\n state () {\n return getValidationState(this.formattedMessages);\n },\n\n selectKey () {\n return getUniqueString();\n },\n\n descriptionKey () {\n return `select-${this.selectKey}-description`;\n },\n\n labelAriaDetails () {\n if (this.$slots.description || this.description) {\n return this.descriptionKey;\n }\n\n return this.$attrs['aria-details'];\n },\n },\n\n mounted () {\n this.validateOptionsPresence();\n this.runValidations();\n },\n\n beforeUpdate () {\n this.validateOptionsPresence();\n },\n\n methods: {\n removeClassStyleAttrs,\n addClassStyleAttrs,\n emitValue (value, event) {\n this.$emit('update:modelValue', value, event);\n this.$emit('input', value, event);\n this.$emit('change', value, event);\n },\n\n getOptionKey (value) {\n return `select-${this.selectKey}-option-${value}`;\n },\n\n validateOptionsPresence () {\n if (this.options?.length < 1 && !this.$slots.default) {\n warn('Options are expected to be provided via prop or slot', this);\n }\n },\n\n runValidations () {\n const hasLabel = !!(this.$slots.label || this.label);\n if (!hasLabel && !this.$attrs['aria-label']) {\n console.info(\n '[Dialtone] A label is required for accessibility. Provide a label prop and use label-visible=\"false\" to hide it visually.',\n );\n }\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtValidationMessages","DtText","MessagesMixin","options","optionsValidator","s","SELECT_SIZE_MODIFIERS","TEXT_SIZE_MODIFIERS","TEXT_STRENGTH_MODIFIERS","SELECT_STATE_MODIFIERS","hasSlotContent","sizeStr","event","getValidationState","getUniqueString","removeClassStyleAttrs","addClassStyleAttrs","value","_a","warn","_createElementBlock","_mergeProps","$props","$options","_ctx","_createElementVNode","$data","_openBlock","_createBlock","_component_dt_text","_renderSlot","_normalizeClass","_toHandlers","_Fragment","_renderList","option","_toDisplayString","_hoisted_2","_createVNode","_component_dt_validation_messages"],"mappings":"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"}
|