@dialpad/dialtone 9.130.0 → 9.131.1
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/css/dialtone-default-theme.css +8 -2
- package/dist/css/dialtone-default-theme.min.css +1 -1
- package/dist/css/dialtone-docs.json +1 -1
- package/dist/css/dialtone.css +8 -2
- package/dist/css/dialtone.min.css +1 -1
- package/dist/css/tokens-docs.json +1 -1
- package/dist/tokens/css/tokens-dp-dark.css +104 -265
- package/dist/tokens/css/tokens-expressive-dark.css +104 -265
- package/dist/tokens/css/tokens-expressive-sm-dark.css +104 -265
- package/dist/tokens/css/tokens-tmo-dark.css +104 -265
- package/dist/tokens/doc.json +43289 -45313
- package/dist/tokens/themes/dp-dark.cjs +1 -1
- package/dist/tokens/themes/dp-dark.js +1 -1
- package/dist/tokens/themes/expressive-dark.cjs +1 -1
- package/dist/tokens/themes/expressive-dark.js +1 -1
- package/dist/tokens/themes/expressive-sm-dark.cjs +1 -1
- package/dist/tokens/themes/expressive-sm-dark.js +1 -1
- package/dist/tokens/themes/tmo-dark.cjs +1 -1
- package/dist/tokens/themes/tmo-dark.js +1 -1
- package/dist/tokens/tokens-dp-dark.json +11 -34
- package/dist/tokens/tokens-expressive-dark.json +11 -34
- package/dist/tokens/tokens-expressive-sm-dark.json +11 -34
- package/dist/tokens/tokens-tmo-dark.json +11 -34
- package/dist/vue2/common/constants/index.cjs.map +1 -1
- package/dist/vue2/common/constants/index.js.map +1 -1
- package/dist/vue2/common/dates/index.cjs.map +1 -1
- package/dist/vue2/common/dates/index.js +3 -3
- package/dist/vue2/common/dates/index.js.map +1 -1
- package/dist/vue2/common/emoji/index.cjs.map +1 -1
- package/dist/vue2/common/emoji/index.js.map +1 -1
- package/dist/vue2/common/mixins/dom.cjs.map +1 -1
- package/dist/vue2/common/mixins/dom.js.map +1 -1
- package/dist/vue2/common/mixins/input-group.cjs.map +1 -1
- package/dist/vue2/common/mixins/input-group.js +5 -5
- package/dist/vue2/common/mixins/input-group.js.map +1 -1
- package/dist/vue2/common/mixins/input.cjs.map +1 -1
- package/dist/vue2/common/mixins/input.js.map +1 -1
- package/dist/vue2/common/mixins/keyboard-list-navigation.cjs.map +1 -1
- package/dist/vue2/common/mixins/keyboard-list-navigation.js.map +1 -1
- package/dist/vue2/common/mixins/modal.cjs.map +1 -1
- package/dist/vue2/common/mixins/modal.js.map +1 -1
- package/dist/vue2/common/mixins/skeleton.cjs.map +1 -1
- package/dist/vue2/common/mixins/skeleton.js.map +1 -1
- package/dist/vue2/common/utils/index.cjs.map +1 -1
- package/dist/vue2/common/utils/index.js +0 -1
- package/dist/vue2/common/utils/index.js.map +1 -1
- package/dist/vue2/common/validators/index.cjs.map +1 -1
- package/dist/vue2/common/validators/index.js.map +1 -1
- package/dist/vue2/lib/attachment-carousel/attachment-carousel.cjs +1 -1
- package/dist/vue2/lib/attachment-carousel/attachment-carousel.cjs.map +1 -1
- package/dist/vue2/lib/attachment-carousel/attachment-carousel.js +4 -4
- package/dist/vue2/lib/avatar/avatar-constants.cjs.map +1 -1
- package/dist/vue2/lib/avatar/avatar-constants.js.map +1 -1
- package/dist/vue2/lib/avatar/avatar.cjs.map +1 -1
- package/dist/vue2/lib/avatar/avatar.js +11 -11
- package/dist/vue2/lib/avatar/avatar.js.map +1 -1
- package/dist/vue2/lib/avatar/utils.cjs.map +1 -1
- package/dist/vue2/lib/avatar/utils.js.map +1 -1
- package/dist/vue2/lib/badge/badge.cjs.map +1 -1
- package/dist/vue2/lib/badge/badge.js +7 -7
- package/dist/vue2/lib/badge/badge.js.map +1 -1
- package/dist/vue2/lib/banner/banner.cjs +1 -1
- package/dist/vue2/lib/banner/banner.cjs.map +1 -1
- package/dist/vue2/lib/banner/banner.js +4 -4
- package/dist/vue2/lib/breadcrumbs/breadcrumb-item.cjs.map +1 -1
- package/dist/vue2/lib/breadcrumbs/breadcrumbs.cjs.map +1 -1
- package/dist/vue2/lib/button/button-constants.cjs.map +1 -1
- package/dist/vue2/lib/button/button-constants.js.map +1 -1
- package/dist/vue2/lib/button/button.cjs +1 -1
- package/dist/vue2/lib/button/button.cjs.map +1 -1
- package/dist/vue2/lib/button/button.js +14 -14
- package/dist/vue2/lib/button/button.js.map +1 -1
- package/dist/vue2/lib/button-group/button-group.cjs.map +1 -1
- package/dist/vue2/lib/button-group/buttons-decorator.cjs.map +1 -1
- package/dist/vue2/lib/callbar-button/callbar-button-constants.cjs.map +1 -1
- package/dist/vue2/lib/callbar-button/callbar-button-constants.js.map +1 -1
- package/dist/vue2/lib/callbar-button/callbar-button.cjs +1 -1
- package/dist/vue2/lib/callbar-button/callbar-button.cjs.map +1 -1
- package/dist/vue2/lib/callbar-button/callbar-button.js +3 -3
- package/dist/vue2/lib/callbar-button/callbar-button.js.map +1 -1
- package/dist/vue2/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs +1 -1
- package/dist/vue2/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs.map +1 -1
- package/dist/vue2/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js +6 -6
- package/dist/vue2/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js.map +1 -1
- package/dist/vue2/lib/callbar-button-with-popover/callbar-button-with-popover.cjs +1 -1
- package/dist/vue2/lib/callbar-button-with-popover/callbar-button-with-popover.cjs.map +1 -1
- package/dist/vue2/lib/callbar-button-with-popover/callbar-button-with-popover.js +6 -6
- package/dist/vue2/lib/callbar-button-with-popover/callbar-button-with-popover.js.map +1 -1
- package/dist/vue2/lib/callbox/callbox-constants.cjs.map +1 -1
- package/dist/vue2/lib/callbox/callbox-constants.js.map +1 -1
- package/dist/vue2/lib/callbox/callbox.cjs.map +1 -1
- package/dist/vue2/lib/callbox/callbox.js +5 -5
- package/dist/vue2/lib/checkbox/checkbox-constants.cjs.map +1 -1
- package/dist/vue2/lib/checkbox/checkbox-constants.js.map +1 -1
- package/dist/vue2/lib/checkbox/checkbox.cjs.map +1 -1
- package/dist/vue2/lib/checkbox-group/checkbox-group.cjs.map +1 -1
- package/dist/vue2/lib/checkbox-group/checkbox-group.js.map +1 -1
- package/dist/vue2/lib/checkbox-group/checkboxes-decorator.cjs.map +1 -1
- package/dist/vue2/lib/chip/chip-constants.cjs.map +1 -1
- package/dist/vue2/lib/chip/chip-constants.js.map +1 -1
- package/dist/vue2/lib/chip/chip.cjs.map +1 -1
- package/dist/vue2/lib/chip/chip.js +3 -3
- package/dist/vue2/lib/collapsible/collapsible.cjs +1 -1
- package/dist/vue2/lib/collapsible/collapsible.cjs.map +1 -1
- package/dist/vue2/lib/collapsible/collapsible.js +7 -7
- package/dist/vue2/lib/combobox/combobox-constants.cjs.map +1 -1
- package/dist/vue2/lib/combobox/combobox-constants.js.map +1 -1
- package/dist/vue2/lib/combobox/combobox-empty-list.cjs.map +1 -1
- package/dist/vue2/lib/combobox/combobox-loading-list.cjs +1 -1
- package/dist/vue2/lib/combobox/combobox-loading-list.cjs.map +1 -1
- package/dist/vue2/lib/combobox/combobox-loading-list.js +3 -3
- package/dist/vue2/lib/combobox/combobox.cjs +1 -1
- package/dist/vue2/lib/combobox/combobox.cjs.map +1 -1
- package/dist/vue2/lib/combobox/combobox.js +1 -1
- package/dist/vue2/lib/combobox/combobox.js.map +1 -1
- package/dist/vue2/lib/combobox-multi-select/combobox-multi-select-constants.cjs.map +1 -1
- package/dist/vue2/lib/combobox-multi-select/combobox-multi-select-constants.js.map +1 -1
- package/dist/vue2/lib/combobox-multi-select/combobox-multi-select-story-constants.cjs.map +1 -1
- package/dist/vue2/lib/combobox-multi-select/combobox-multi-select-story-constants.js.map +1 -1
- package/dist/vue2/lib/combobox-multi-select/combobox-multi-select.cjs +1 -1
- package/dist/vue2/lib/combobox-multi-select/combobox-multi-select.cjs.map +1 -1
- package/dist/vue2/lib/combobox-multi-select/combobox-multi-select.js +4 -4
- package/dist/vue2/lib/combobox-multi-select/combobox-multi-select.js.map +1 -1
- package/dist/vue2/lib/combobox-with-popover/combobox-with-popover.cjs +1 -1
- package/dist/vue2/lib/combobox-with-popover/combobox-with-popover.cjs.map +1 -1
- package/dist/vue2/lib/combobox-with-popover/combobox-with-popover.js +9 -9
- package/dist/vue2/lib/contact-centers-row/contact-centers-row.cjs +1 -1
- package/dist/vue2/lib/contact-centers-row/contact-centers-row.cjs.map +1 -1
- package/dist/vue2/lib/contact-centers-row/contact-centers-row.js +7 -7
- package/dist/vue2/lib/contact-centers-row/contact-centers-row.js.map +1 -1
- package/dist/vue2/lib/contact-info/contact-info.cjs.map +1 -1
- package/dist/vue2/lib/contact-row/contact-row.cjs +1 -1
- package/dist/vue2/lib/contact-row/contact-row.cjs.map +1 -1
- package/dist/vue2/lib/contact-row/contact-row.js +4 -4
- package/dist/vue2/lib/datepicker/datepicker.cjs +1 -1
- package/dist/vue2/lib/datepicker/datepicker.cjs.map +1 -1
- package/dist/vue2/lib/datepicker/datepicker.js +83 -83
- package/dist/vue2/lib/datepicker/datepicker.js.map +1 -1
- package/dist/vue2/lib/datepicker/formatUtils.cjs.map +1 -1
- package/dist/vue2/lib/datepicker/formatUtils.js.map +1 -1
- package/dist/vue2/lib/datepicker/utils.cjs.map +1 -1
- package/dist/vue2/lib/datepicker/utils.js.map +1 -1
- package/dist/vue2/lib/description-list/description-list.cjs.map +1 -1
- package/dist/vue2/lib/dropdown/dropdown-constants.cjs.map +1 -1
- package/dist/vue2/lib/dropdown/dropdown-constants.js.map +1 -1
- package/dist/vue2/lib/dropdown/dropdown-story-constants.cjs.map +1 -1
- package/dist/vue2/lib/dropdown/dropdown-story-constants.js.map +1 -1
- package/dist/vue2/lib/dropdown/dropdown.cjs +1 -1
- package/dist/vue2/lib/dropdown/dropdown.cjs.map +1 -1
- package/dist/vue2/lib/dropdown/dropdown.js +1 -1
- package/dist/vue2/lib/dropdown/dropdown.js.map +1 -1
- package/dist/vue2/lib/editor/editor-constants.cjs.map +1 -1
- package/dist/vue2/lib/editor/editor-constants.js.map +1 -1
- package/dist/vue2/lib/editor/editor.cjs +1 -1
- package/dist/vue2/lib/editor/editor.cjs.map +1 -1
- package/dist/vue2/lib/editor/editor.js +44 -44
- package/dist/vue2/lib/editor/editor.js.map +1 -1
- package/dist/vue2/lib/emoji/emoji.cjs.map +1 -1
- package/dist/vue2/lib/emoji/emoji.js +4 -4
- package/dist/vue2/lib/emoji-picker/emoji-picker-constants.cjs.map +1 -1
- package/dist/vue2/lib/emoji-picker/emoji-picker-constants.js.map +1 -1
- package/dist/vue2/lib/emoji-picker/emoji-picker.cjs +1 -1
- package/dist/vue2/lib/emoji-picker/emoji-picker.cjs.map +1 -1
- package/dist/vue2/lib/emoji-picker/emoji-picker.js +9 -9
- package/dist/vue2/lib/emoji-picker/emoji-picker.js.map +1 -1
- package/dist/vue2/lib/emoji-row/emoji-row-constants.cjs.map +1 -1
- package/dist/vue2/lib/emoji-row/emoji-row-constants.js.map +1 -1
- package/dist/vue2/lib/emoji-row/emoji-row.cjs +1 -1
- package/dist/vue2/lib/emoji-row/emoji-row.cjs.map +1 -1
- package/dist/vue2/lib/emoji-row/emoji-row.js +5 -5
- package/dist/vue2/lib/emoji-row/emoji-row.js.map +1 -1
- package/dist/vue2/lib/emoji-text-wrapper/emoji-text-wrapper.cjs +1 -1
- package/dist/vue2/lib/emoji-text-wrapper/emoji-text-wrapper.cjs.map +1 -1
- package/dist/vue2/lib/emoji-text-wrapper/emoji-text-wrapper.js +1 -1
- package/dist/vue2/lib/emoji-text-wrapper/emoji-text-wrapper.js.map +1 -1
- package/dist/vue2/lib/empty-state/empty-state-constants.cjs.map +1 -1
- package/dist/vue2/lib/empty-state/empty-state-constants.js.map +1 -1
- package/dist/vue2/lib/empty-state/empty-state.cjs.map +1 -1
- package/dist/vue2/lib/empty-state/empty-state.js +3 -3
- package/dist/vue2/lib/empty-state/empty-state.js.map +1 -1
- package/dist/vue2/lib/feed-item-pill/feed-item-pill-constants.cjs.map +1 -1
- package/dist/vue2/lib/feed-item-pill/feed-item-pill-constants.js.map +1 -1
- package/dist/vue2/lib/feed-item-pill/feed-item-pill.cjs +1 -1
- package/dist/vue2/lib/feed-item-pill/feed-item-pill.cjs.map +1 -1
- package/dist/vue2/lib/feed-item-pill/feed-item-pill.js +3 -3
- package/dist/vue2/lib/feed-item-row/feed-item-row-constants.cjs.map +1 -1
- package/dist/vue2/lib/feed-item-row/feed-item-row-constants.js.map +1 -1
- package/dist/vue2/lib/feed-item-row/feed-item-row.cjs +1 -1
- package/dist/vue2/lib/feed-item-row/feed-item-row.cjs.map +1 -1
- package/dist/vue2/lib/feed-item-row/feed-item-row.js +9 -9
- package/dist/vue2/lib/feed-item-row/feed-item-row.js.map +1 -1
- package/dist/vue2/lib/general-row/general-row-constants.cjs.map +1 -1
- package/dist/vue2/lib/general-row/general-row-constants.js.map +1 -1
- package/dist/vue2/lib/general-row/general-row.cjs +1 -1
- package/dist/vue2/lib/general-row/general-row.cjs.map +1 -1
- package/dist/vue2/lib/general-row/general-row.js +14 -14
- package/dist/vue2/lib/general-row/general-row.js.map +1 -1
- package/dist/vue2/lib/general-row/leftbar-general-row-icon.cjs.map +1 -1
- package/dist/vue2/lib/general-row/leftbar-general-row-icon.js +30 -30
- package/dist/vue2/lib/group-row/group-row.cjs.map +1 -1
- package/dist/vue2/lib/grouped-chip/grouped-chip.cjs.map +1 -1
- package/dist/vue2/lib/hovercard/hovercard.cjs +1 -1
- package/dist/vue2/lib/hovercard/hovercard.cjs.map +1 -1
- package/dist/vue2/lib/hovercard/hovercard.js +7 -7
- package/dist/vue2/lib/hovercard/hovercard.js.map +1 -1
- package/dist/vue2/lib/icon/icon-constants.cjs.map +1 -1
- package/dist/vue2/lib/icon/icon-constants.js.map +1 -1
- package/dist/vue2/lib/icon/icon.js +3 -3
- package/dist/vue2/lib/illustration/illustration-constants.cjs.map +1 -1
- package/dist/vue2/lib/illustration/illustration-constants.js.map +1 -1
- package/dist/vue2/lib/image-viewer/image-viewer.cjs.map +1 -1
- package/dist/vue2/lib/image-viewer/image-viewer.js.map +1 -1
- package/dist/vue2/lib/input/input-constants.cjs.map +1 -1
- package/dist/vue2/lib/input/input-constants.js.map +1 -1
- package/dist/vue2/lib/input/input.cjs.map +1 -1
- package/dist/vue2/lib/input/input.js +8 -8
- package/dist/vue2/lib/input/input.js.map +1 -1
- package/dist/vue2/lib/input-group/input-group.cjs.map +1 -1
- package/dist/vue2/lib/ivr-node/ivr-node-constants.cjs.map +1 -1
- package/dist/vue2/lib/ivr-node/ivr-node-constants.js.map +1 -1
- package/dist/vue2/lib/ivr-node/ivr-node.cjs +1 -1
- package/dist/vue2/lib/ivr-node/ivr-node.cjs.map +1 -1
- package/dist/vue2/lib/ivr-node/ivr-node.js +27 -27
- package/dist/vue2/lib/keyboard-shortcut/keyboard-shortcut.cjs.map +1 -1
- package/dist/vue2/lib/keyboard-shortcut/keyboard-shortcut.js +13 -13
- package/dist/vue2/lib/link/link-constants.cjs.map +1 -1
- package/dist/vue2/lib/link/link-constants.js.map +1 -1
- package/dist/vue2/lib/link/link.cjs.map +1 -1
- package/dist/vue2/lib/link/link.js +3 -3
- package/dist/vue2/lib/list-item/list-item-constants.cjs.map +1 -1
- package/dist/vue2/lib/list-item/list-item-constants.js.map +1 -1
- package/dist/vue2/lib/list-item/list-item.cjs.map +1 -1
- package/dist/vue2/lib/list-item/list-item.js +1 -1
- package/dist/vue2/lib/list-item/list-item.js.map +1 -1
- package/dist/vue2/lib/list-item-group/list-item-group-constants.cjs.map +1 -1
- package/dist/vue2/lib/list-item-group/list-item-group-constants.js.map +1 -1
- package/dist/vue2/lib/list-item-group/list-item-group.cjs.map +1 -1
- package/dist/vue2/lib/loader/loader.cjs.map +1 -1
- package/dist/vue2/lib/message-input/last-active-nodes.cjs +1 -1
- package/dist/vue2/lib/message-input/last-active-nodes.cjs.map +1 -1
- package/dist/vue2/lib/message-input/last-active-nodes.js +22 -22
- package/dist/vue2/lib/message-input/last-active-nodes.js.map +1 -1
- package/dist/vue2/lib/message-input/message-input-button.cjs +1 -1
- package/dist/vue2/lib/message-input/message-input-button.cjs.map +1 -1
- package/dist/vue2/lib/message-input/message-input-button.js +8 -8
- package/dist/vue2/lib/message-input/message-input-constants.cjs.map +1 -1
- package/dist/vue2/lib/message-input/message-input-constants.js.map +1 -1
- package/dist/vue2/lib/message-input/message-input-link.cjs +1 -1
- package/dist/vue2/lib/message-input/message-input-link.cjs.map +1 -1
- package/dist/vue2/lib/message-input/message-input-link.js +8 -8
- package/dist/vue2/lib/message-input/message-input-topbar.cjs.map +1 -1
- package/dist/vue2/lib/message-input/message-input-topbar.js +9 -9
- package/dist/vue2/lib/message-input/message-input.cjs +1 -1
- package/dist/vue2/lib/message-input/message-input.cjs.map +1 -1
- package/dist/vue2/lib/message-input/message-input.js +28 -28
- package/dist/vue2/lib/message-input/message-input.js.map +1 -1
- package/dist/vue2/lib/modal/modal.cjs +1 -1
- package/dist/vue2/lib/modal/modal.cjs.map +1 -1
- package/dist/vue2/lib/modal/modal.js +12 -12
- package/dist/vue2/lib/modal/modal.js.map +1 -1
- package/dist/vue2/lib/notice/notice-action.cjs.map +1 -1
- package/dist/vue2/lib/notice/notice-constants.cjs.map +1 -1
- package/dist/vue2/lib/notice/notice-constants.js.map +1 -1
- package/dist/vue2/lib/notice/notice-icon.cjs.map +1 -1
- package/dist/vue2/lib/notice/notice-icon.js +9 -9
- package/dist/vue2/lib/notice/notice.cjs.map +1 -1
- package/dist/vue2/lib/notice/notice.js +3 -3
- package/dist/vue2/lib/pagination/pagination.cjs.map +1 -1
- package/dist/vue2/lib/pagination/pagination.js +3 -3
- package/dist/vue2/lib/pagination/pagination.js.map +1 -1
- package/dist/vue2/lib/popover/popover-constants.cjs.map +1 -1
- package/dist/vue2/lib/popover/popover-constants.js.map +1 -1
- package/dist/vue2/lib/popover/popover-header-footer.cjs.map +1 -1
- package/dist/vue2/lib/popover/popover.cjs +1 -1
- package/dist/vue2/lib/popover/popover.cjs.map +1 -1
- package/dist/vue2/lib/popover/popover.js +16 -16
- package/dist/vue2/lib/popover/popover.js.map +1 -1
- package/dist/vue2/lib/popover/tippy-utils.cjs +1 -1
- package/dist/vue2/lib/popover/tippy-utils.cjs.map +1 -1
- package/dist/vue2/lib/popover/tippy-utils.js +16 -18
- package/dist/vue2/lib/popover/tippy-utils.js.map +1 -1
- package/dist/vue2/lib/presence/presence.cjs.map +1 -1
- package/dist/vue2/lib/radio/radio-constants.cjs.map +1 -1
- package/dist/vue2/lib/radio/radio-constants.js.map +1 -1
- package/dist/vue2/lib/radio/radio.cjs.map +1 -1
- package/dist/vue2/lib/radio-group/radio-group.cjs.map +1 -1
- package/dist/vue2/lib/radio-group/radios-decorator.cjs.map +1 -1
- package/dist/vue2/lib/recipes/eslint.config.cjs +2 -0
- package/dist/vue2/lib/recipes/eslint.config.cjs.map +1 -0
- package/dist/vue2/lib/recipes/eslint.config.js +12 -0
- package/dist/vue2/lib/recipes/eslint.config.js.map +1 -0
- package/dist/vue2/lib/rich-text-editor/channel-suggestion.cjs.map +1 -1
- package/dist/vue2/lib/rich-text-editor/channel-suggestion.js.map +1 -1
- package/dist/vue2/lib/rich-text-editor/mention-suggestion.cjs.map +1 -1
- package/dist/vue2/lib/rich-text-editor/mention-suggestion.js.map +1 -1
- package/dist/vue2/lib/rich-text-editor/rich-text-editor-constants.cjs.map +1 -1
- package/dist/vue2/lib/rich-text-editor/rich-text-editor-constants.js.map +1 -1
- package/dist/vue2/lib/rich-text-editor/rich-text-editor.cjs +2 -2
- package/dist/vue2/lib/rich-text-editor/rich-text-editor.cjs.map +1 -1
- package/dist/vue2/lib/rich-text-editor/rich-text-editor.js +72 -65
- package/dist/vue2/lib/rich-text-editor/rich-text-editor.js.map +1 -1
- package/dist/vue2/lib/rich-text-editor/slash-command-suggestion.cjs.map +1 -1
- package/dist/vue2/lib/rich-text-editor/slash-command-suggestion.js.map +1 -1
- package/dist/vue2/lib/root-layout/root-layout-constants.cjs.map +1 -1
- package/dist/vue2/lib/root-layout/root-layout-constants.js.map +1 -1
- package/dist/vue2/lib/root-layout/root-layout.cjs.map +1 -1
- package/dist/vue2/lib/root-layout/root-layout.js +1 -1
- package/dist/vue2/lib/scrollbar-directive/scrollbar.cjs.map +1 -1
- package/dist/vue2/lib/scrollbar-directive/scrollbar.js.map +1 -1
- package/dist/vue2/lib/select-menu/select-menu-constants.cjs.map +1 -1
- package/dist/vue2/lib/select-menu/select-menu-constants.js.map +1 -1
- package/dist/vue2/lib/select-menu/select-menu.cjs.map +1 -1
- package/dist/vue2/lib/select-menu/select-menu.js +7 -7
- package/dist/vue2/lib/settings-menu-button/settings-menu-button.cjs.map +1 -1
- package/dist/vue2/lib/skeleton/skeleton-constants.cjs.map +1 -1
- package/dist/vue2/lib/skeleton/skeleton-constants.js.map +1 -1
- package/dist/vue2/lib/skeleton/skeleton-list-item.cjs.map +1 -1
- package/dist/vue2/lib/skeleton/skeleton-paragraph.cjs.map +1 -1
- package/dist/vue2/lib/skeleton/skeleton-paragraph.js.map +1 -1
- package/dist/vue2/lib/skeleton/skeleton-shape.cjs.map +1 -1
- package/dist/vue2/lib/skeleton/skeleton-shape.js +1 -1
- package/dist/vue2/lib/skeleton/skeleton-text.cjs.map +1 -1
- package/dist/vue2/lib/skeleton/skeleton.cjs +1 -1
- package/dist/vue2/lib/skeleton/skeleton.cjs.map +1 -1
- package/dist/vue2/lib/skeleton/skeleton.js +1 -1
- package/dist/vue2/lib/skeleton/skeleton.js.map +1 -1
- package/dist/vue2/lib/split-button/split-button-alpha.cjs.map +1 -1
- package/dist/vue2/lib/split-button/split-button-constants.cjs.map +1 -1
- package/dist/vue2/lib/split-button/split-button-constants.js.map +1 -1
- package/dist/vue2/lib/split-button/split-button-omega.cjs.map +1 -1
- package/dist/vue2/lib/split-button/split-button.cjs.map +1 -1
- package/dist/vue2/lib/split-button/split-button.js +5 -5
- package/dist/vue2/lib/split-button/split-button.js.map +1 -1
- package/dist/vue2/lib/stack/stack-constants.cjs.map +1 -1
- package/dist/vue2/lib/stack/stack-constants.js.map +1 -1
- package/dist/vue2/lib/stack/stack.cjs.map +1 -1
- package/dist/vue2/lib/stack/stack.js +9 -9
- package/dist/vue2/lib/stack/utils.cjs.map +1 -1
- package/dist/vue2/lib/stack/utils.js.map +1 -1
- package/dist/vue2/lib/stack/validators.cjs.map +1 -1
- package/dist/vue2/lib/stack/validators.js.map +1 -1
- package/dist/vue2/lib/tab/tab-group.cjs.map +1 -1
- package/dist/vue2/lib/tab/tab-group.js +5 -5
- package/dist/vue2/lib/tab/tab-group.js.map +1 -1
- package/dist/vue2/lib/tab/tab.cjs.map +1 -1
- package/dist/vue2/lib/toast/toast-constants.cjs.map +1 -1
- package/dist/vue2/lib/toast/toast-constants.js.map +1 -1
- package/dist/vue2/lib/toast/toast.cjs +1 -1
- package/dist/vue2/lib/toast/toast.cjs.map +1 -1
- package/dist/vue2/lib/toast/toast.js +11 -11
- package/dist/vue2/lib/toggle/toggle-constants.cjs.map +1 -1
- package/dist/vue2/lib/toggle/toggle-constants.js.map +1 -1
- package/dist/vue2/lib/toggle/toggle.cjs +1 -1
- package/dist/vue2/lib/toggle/toggle.cjs.map +1 -1
- package/dist/vue2/lib/toggle/toggle.js +1 -1
- package/dist/vue2/lib/toggle/toggle.js.map +1 -1
- package/dist/vue2/lib/tooltip/tooltip-constants.cjs.map +1 -1
- package/dist/vue2/lib/tooltip/tooltip-constants.js.map +1 -1
- package/dist/vue2/lib/tooltip/tooltip.cjs +1 -1
- package/dist/vue2/lib/tooltip/tooltip.cjs.map +1 -1
- package/dist/vue2/lib/tooltip/tooltip.js +63 -64
- package/dist/vue2/lib/tooltip/tooltip.js.map +1 -1
- package/dist/vue2/lib/tooltip-directive/tooltip.cjs.map +1 -1
- package/dist/vue2/lib/tooltip-directive/tooltip.js.map +1 -1
- package/dist/vue2/lib/top-banner-info/top-banner-info-constants.cjs.map +1 -1
- package/dist/vue2/lib/top-banner-info/top-banner-info-constants.js.map +1 -1
- package/dist/vue2/lib/top-banner-info/top-banner-info.cjs.map +1 -1
- package/dist/vue2/lib/unread-pill/unread-pill-constants.cjs.map +1 -1
- package/dist/vue2/lib/unread-pill/unread-pill-constants.js.map +1 -1
- package/dist/vue2/lib/unread-pill/unread-pill.cjs.map +1 -1
- package/dist/vue2/lib/unread-pill/unread-pill.js +6 -6
- package/dist/vue2/lib/validation-messages/validation-messages.cjs.map +1 -1
- package/dist/vue2/lib/validation-messages/validation-messages.js +3 -3
- package/dist/vue2/localization/de-DE.cjs.map +1 -1
- package/dist/vue2/localization/de-DE.js.map +1 -1
- package/dist/vue2/localization/en-US.cjs.map +1 -1
- package/dist/vue2/localization/en-US.js.map +1 -1
- package/dist/vue2/localization/es-LA.cjs.map +1 -1
- package/dist/vue2/localization/es-LA.js.map +1 -1
- package/dist/vue2/localization/fr-FR.cjs.map +1 -1
- package/dist/vue2/localization/fr-FR.js.map +1 -1
- package/dist/vue2/localization/index.cjs.map +1 -1
- package/dist/vue2/localization/index.js.map +1 -1
- package/dist/vue2/localization/it-IT.cjs.map +1 -1
- package/dist/vue2/localization/it-IT.js.map +1 -1
- package/dist/vue2/localization/ja-JP.cjs.map +1 -1
- package/dist/vue2/localization/ja-JP.js.map +1 -1
- package/dist/vue2/localization/nl-NL.cjs.map +1 -1
- package/dist/vue2/localization/nl-NL.js.map +1 -1
- package/dist/vue2/localization/pt-BR.cjs.map +1 -1
- package/dist/vue2/localization/pt-BR.js.map +1 -1
- package/dist/vue2/localization/ru-RU.cjs.map +1 -1
- package/dist/vue2/localization/ru-RU.js.map +1 -1
- package/dist/vue2/localization/zh-CN.cjs.map +1 -1
- package/dist/vue2/localization/zh-CN.js.map +1 -1
- package/dist/vue2/node_modules/@linusborg/vue-simple-portal.cjs.map +1 -1
- package/dist/vue2/node_modules/@linusborg/vue-simple-portal.js.map +1 -1
- package/dist/vue2/node_modules/@tiptap/vue-2.cjs.map +1 -1
- package/dist/vue2/node_modules/@tiptap/vue-2.js.map +1 -1
- package/dist/vue2/shared/sr_only_close_button.cjs.map +1 -1
- package/dist/vue2/types/common/constants/index.d.ts.map +1 -1
- package/dist/vue2/types/common/dates/index.d.ts.map +1 -1
- package/dist/vue2/types/common/emoji/index.d.ts.map +1 -1
- package/dist/vue2/types/common/mixins/dom.d.ts.map +1 -1
- package/dist/vue2/types/common/mixins/input.d.ts +7 -7
- package/dist/vue2/types/common/mixins/input.d.ts.map +1 -1
- package/dist/vue2/types/common/mixins/input_group.d.ts +3 -3
- package/dist/vue2/types/common/mixins/modal.d.ts.map +1 -1
- package/dist/vue2/types/common/utils/index.d.ts.map +1 -1
- package/dist/vue2/types/components/avatar/avatar.vue.d.ts +8 -8
- package/dist/vue2/types/components/badge/badge.vue.d.ts +3 -3
- package/dist/vue2/types/components/banner/banner.vue.d.ts +2 -2
- package/dist/vue2/types/components/banner/banner.vue.d.ts.map +1 -1
- package/dist/vue2/types/components/breadcrumbs/breadcrumbs.vue.d.ts +1 -1
- package/dist/vue2/types/components/breadcrumbs/breadcrumbs_constants.d.ts.map +1 -1
- package/dist/vue2/types/components/button/button.vue.d.ts +2 -2
- package/dist/vue2/types/components/button/button_constants.d.ts.map +1 -1
- package/dist/vue2/types/components/card/card.vue.d.ts +8 -8
- package/dist/vue2/types/components/checkbox/checkbox.vue.d.ts +7 -7
- package/dist/vue2/types/components/checkbox_group/checkbox_group.vue.d.ts +3 -3
- package/dist/vue2/types/components/chip/chip.vue.d.ts +5 -5
- package/dist/vue2/types/components/collapsible/collapsible.vue.d.ts +4 -4
- package/dist/vue2/types/components/combobox/combobox.vue.d.ts +3 -3
- package/dist/vue2/types/components/combobox/combobox_empty-list.vue.d.ts +2 -2
- package/dist/vue2/types/components/datepicker/datepicker_constants.d.ts.map +1 -1
- package/dist/vue2/types/components/datepicker/formatUtils.d.ts +5 -5
- package/dist/vue2/types/components/datepicker/formatUtils.d.ts.map +1 -1
- package/dist/vue2/types/components/datepicker/modules/calendar.vue.d.ts +1 -1
- package/dist/vue2/types/components/description_list/description_list.vue.d.ts +4 -4
- package/dist/vue2/types/components/dropdown/dropdown.vue.d.ts +8 -8
- package/dist/vue2/types/components/emoji/emoji.vue.d.ts +2 -2
- package/dist/vue2/types/components/emoji_picker/emoji_picker_constants.d.ts.map +1 -1
- package/dist/vue2/types/components/emoji_text_wrapper/emoji_text_wrapper.vue.d.ts +1 -1
- package/dist/vue2/types/components/emoji_text_wrapper/emoji_text_wrapper.vue.d.ts.map +1 -1
- package/dist/vue2/types/components/eslint.config.d.ts +8 -0
- package/dist/vue2/types/components/eslint.config.d.ts.map +1 -0
- package/dist/vue2/types/components/image_viewer/image_viewer.vue.d.ts.map +1 -1
- package/dist/vue2/types/components/input/input.vue.d.ts +7 -7
- package/dist/vue2/types/components/input_group/input_group.vue.d.ts +3 -3
- package/dist/vue2/types/components/item_layout/item_layout.vue.d.ts +1 -1
- package/dist/vue2/types/components/link/link_constants.d.ts.map +1 -1
- package/dist/vue2/types/components/list_item/list_item.vue.d.ts +2 -2
- package/dist/vue2/types/components/list_item_group/list_item_group.vue.d.ts +4 -4
- package/dist/vue2/types/components/modal/modal.vue.d.ts +13 -13
- package/dist/vue2/types/components/modal/modal.vue.d.ts.map +1 -1
- package/dist/vue2/types/components/notice/notice.vue.d.ts +2 -2
- package/dist/vue2/types/components/popover/popover.vue.d.ts +22 -22
- package/dist/vue2/types/components/popover/popover.vue.d.ts.map +1 -1
- package/dist/vue2/types/components/popover/popover_header_footer.vue.d.ts +2 -2
- package/dist/vue2/types/components/popover/tippy_utils.d.ts +2 -3
- package/dist/vue2/types/components/popover/tippy_utils.d.ts.map +1 -1
- package/dist/vue2/types/components/radio/radio.vue.d.ts +7 -7
- package/dist/vue2/types/components/radio_group/radio_group.vue.d.ts +3 -3
- package/dist/vue2/types/components/rich_text_editor/extensions/slash_command/slash_command.d.ts +1 -1
- package/dist/vue2/types/components/rich_text_editor/extensions/slash_command/slash_command.d.ts.map +1 -1
- package/dist/vue2/types/components/rich_text_editor/rich_text_editor.vue.d.ts +12 -17
- package/dist/vue2/types/components/rich_text_editor/rich_text_editor.vue.d.ts.map +1 -1
- package/dist/vue2/types/components/root_layout/root_layout.vue.d.ts +8 -8
- package/dist/vue2/types/components/select_menu/select_menu.vue.d.ts +10 -10
- package/dist/vue2/types/components/skeleton/skeleton-list-item.vue.d.ts +1 -1
- package/dist/vue2/types/components/skeleton/skeleton-paragraph.vue.d.ts +1 -1
- package/dist/vue2/types/components/skeleton/skeleton-shape.vue.d.ts +3 -3
- package/dist/vue2/types/components/skeleton/skeleton-text.vue.d.ts +1 -1
- package/dist/vue2/types/components/skeleton/skeleton.vue.d.ts +7 -7
- package/dist/vue2/types/components/skeleton/skeleton_constants.d.ts.map +1 -1
- package/dist/vue2/types/components/split_button/split_button-alpha.vue.d.ts +3 -3
- package/dist/vue2/types/components/split_button/split_button-omega.vue.d.ts +1 -1
- package/dist/vue2/types/components/split_button/split_button.vue.d.ts +2 -2
- package/dist/vue2/types/components/tab/tab.vue.d.ts +2 -2
- package/dist/vue2/types/components/tab/tab_group.vue.d.ts +2 -2
- package/dist/vue2/types/components/tab/tab_panel.vue.d.ts +2 -2
- package/dist/vue2/types/components/tab/tab_panel.vue.d.ts.map +1 -1
- package/dist/vue2/types/components/toast/layouts/toast_layout_alternate.vue.d.ts +2 -2
- package/dist/vue2/types/components/toast/layouts/toast_layout_default.vue.d.ts +2 -2
- package/dist/vue2/types/components/toast/toast.vue.d.ts +7 -7
- package/dist/vue2/types/components/toast/toast_constants.d.ts.map +1 -1
- package/dist/vue2/types/components/toggle/toggle.vue.d.ts +5 -5
- package/dist/vue2/types/components/tooltip/tooltip.vue.d.ts +8 -8
- package/dist/vue2/types/components/tooltip/tooltip.vue.d.ts.map +1 -1
- package/dist/vue2/types/components/tooltip/tooltip_constants.d.ts.map +1 -1
- package/dist/vue2/types/components/validation_messages/validation_messages.vue.d.ts +0 -1
- package/dist/vue2/types/components/validation_messages/validation_messages.vue.d.ts.map +1 -1
- package/dist/vue2/types/recipes/buttons/callbar_button/callbar_button.vue.d.ts +6 -6
- package/dist/vue2/types/recipes/buttons/callbar_button_with_dropdown/callbar_button_with_dropdown.vue.d.ts +5 -5
- package/dist/vue2/types/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts +6 -6
- package/dist/vue2/types/recipes/cards/ivr_node/ivr_node_constants.d.ts.map +1 -1
- package/dist/vue2/types/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.d.ts +1 -1
- package/dist/vue2/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts +7 -7
- package/dist/vue2/types/recipes/conversation_view/editor/editor.vue.d.ts +3 -3
- package/dist/vue2/types/recipes/conversation_view/editor/editor_constants.d.ts.map +1 -1
- package/dist/vue2/types/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts +4 -4
- package/dist/vue2/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +1 -1
- package/dist/vue2/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts.map +1 -1
- package/dist/vue2/types/recipes/conversation_view/feed_item_row/feed_item_row_constants.d.ts.map +1 -1
- package/dist/vue2/types/recipes/conversation_view/message_input/last_active_nodes.d.ts.map +1 -1
- package/dist/vue2/types/recipes/conversation_view/message_input/message_input.vue.d.ts +15 -15
- package/dist/vue2/types/recipes/eslint.config.d.ts +8 -0
- package/dist/vue2/types/recipes/eslint.config.d.ts.map +1 -0
- package/dist/vue2/types/recipes/item_layout/contact_info/contact_info.vue.d.ts +1 -1
- package/dist/vue2/types/recipes/leftbar/callbox/callbox.vue.d.ts +1 -1
- package/dist/vue2/types/recipes/leftbar/contact_centers_row/contact_centers_row.vue.d.ts +1 -1
- package/dist/vue2/types/recipes/leftbar/general_row/general_row.vue.d.ts +1 -1
- package/dist/vue3/common/constants/index.cjs.map +1 -1
- package/dist/vue3/common/constants/index.js.map +1 -1
- package/dist/vue3/common/dates/index.cjs.map +1 -1
- package/dist/vue3/common/dates/index.js +3 -3
- package/dist/vue3/common/dates/index.js.map +1 -1
- package/dist/vue3/common/emoji/index.cjs.map +1 -1
- package/dist/vue3/common/emoji/index.js.map +1 -1
- package/dist/vue3/common/mixins/dom.cjs.map +1 -1
- package/dist/vue3/common/mixins/dom.js.map +1 -1
- package/dist/vue3/common/mixins/input-group.cjs.map +1 -1
- package/dist/vue3/common/mixins/input-group.js +5 -5
- package/dist/vue3/common/mixins/input-group.js.map +1 -1
- package/dist/vue3/common/mixins/input.cjs.map +1 -1
- package/dist/vue3/common/mixins/input.js.map +1 -1
- package/dist/vue3/common/mixins/keyboard-list-navigation.cjs.map +1 -1
- package/dist/vue3/common/mixins/keyboard-list-navigation.js.map +1 -1
- package/dist/vue3/common/mixins/modal.cjs.map +1 -1
- package/dist/vue3/common/mixins/modal.js.map +1 -1
- package/dist/vue3/common/mixins/skeleton.cjs.map +1 -1
- package/dist/vue3/common/mixins/skeleton.js.map +1 -1
- package/dist/vue3/common/utils/index.cjs.map +1 -1
- package/dist/vue3/common/utils/index.js +3 -3
- package/dist/vue3/common/utils/index.js.map +1 -1
- package/dist/vue3/common/validators/index.cjs.map +1 -1
- package/dist/vue3/common/validators/index.js.map +1 -1
- package/dist/vue3/lib/attachment-carousel/attachment-carousel.cjs +1 -1
- package/dist/vue3/lib/attachment-carousel/attachment-carousel.cjs.map +1 -1
- package/dist/vue3/lib/attachment-carousel/attachment-carousel.js +5 -5
- package/dist/vue3/lib/attachment-carousel/attachment-carousel.js.map +1 -1
- package/dist/vue3/lib/avatar/avatar-constants.cjs.map +1 -1
- package/dist/vue3/lib/avatar/avatar-constants.js.map +1 -1
- package/dist/vue3/lib/avatar/avatar.cjs.map +1 -1
- package/dist/vue3/lib/avatar/avatar.js +11 -11
- package/dist/vue3/lib/avatar/avatar.js.map +1 -1
- package/dist/vue3/lib/avatar/utils.cjs.map +1 -1
- package/dist/vue3/lib/avatar/utils.js.map +1 -1
- package/dist/vue3/lib/badge/badge.cjs.map +1 -1
- package/dist/vue3/lib/badge/badge.js +12 -12
- package/dist/vue3/lib/badge/badge.js.map +1 -1
- package/dist/vue3/lib/banner/banner.cjs +1 -1
- package/dist/vue3/lib/banner/banner.cjs.map +1 -1
- package/dist/vue3/lib/banner/banner.js +7 -7
- package/dist/vue3/lib/banner/banner.js.map +1 -1
- package/dist/vue3/lib/breadcrumbs/breadcrumb-item.cjs.map +1 -1
- package/dist/vue3/lib/breadcrumbs/breadcrumb-item.js +5 -5
- package/dist/vue3/lib/breadcrumbs/breadcrumb-item.js.map +1 -1
- package/dist/vue3/lib/breadcrumbs/breadcrumbs.cjs.map +1 -1
- package/dist/vue3/lib/breadcrumbs/breadcrumbs.js +1 -1
- package/dist/vue3/lib/breadcrumbs/breadcrumbs.js.map +1 -1
- package/dist/vue3/lib/button/button-constants.cjs.map +1 -1
- package/dist/vue3/lib/button/button-constants.js.map +1 -1
- package/dist/vue3/lib/button/button.cjs.map +1 -1
- package/dist/vue3/lib/button/button.js +22 -22
- package/dist/vue3/lib/button/button.js.map +1 -1
- package/dist/vue3/lib/button-group/button-group.cjs.map +1 -1
- package/dist/vue3/lib/button-group/button-group.js +2 -2
- package/dist/vue3/lib/button-group/button-group.js.map +1 -1
- package/dist/vue3/lib/button-group/buttons-decorator.cjs.map +1 -1
- package/dist/vue3/lib/button-group/buttons-decorator.js +2 -2
- package/dist/vue3/lib/button-group/buttons-decorator.js.map +1 -1
- package/dist/vue3/lib/callbar-button/callbar-button-constants.cjs.map +1 -1
- package/dist/vue3/lib/callbar-button/callbar-button-constants.js.map +1 -1
- package/dist/vue3/lib/callbar-button/callbar-button.cjs +1 -1
- package/dist/vue3/lib/callbar-button/callbar-button.cjs.map +1 -1
- package/dist/vue3/lib/callbar-button/callbar-button.js +13 -13
- package/dist/vue3/lib/callbar-button/callbar-button.js.map +1 -1
- package/dist/vue3/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs +1 -1
- package/dist/vue3/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.cjs.map +1 -1
- package/dist/vue3/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js +13 -13
- package/dist/vue3/lib/callbar-button-with-dropdown/callbar-button-with-dropdown.js.map +1 -1
- package/dist/vue3/lib/callbar-button-with-popover/callbar-button-with-popover.cjs +1 -1
- package/dist/vue3/lib/callbar-button-with-popover/callbar-button-with-popover.cjs.map +1 -1
- package/dist/vue3/lib/callbar-button-with-popover/callbar-button-with-popover.js +13 -13
- package/dist/vue3/lib/callbar-button-with-popover/callbar-button-with-popover.js.map +1 -1
- package/dist/vue3/lib/callbox/callbox-constants.cjs.map +1 -1
- package/dist/vue3/lib/callbox/callbox-constants.js.map +1 -1
- package/dist/vue3/lib/callbox/callbox.cjs.map +1 -1
- package/dist/vue3/lib/callbox/callbox.js +6 -6
- package/dist/vue3/lib/callbox/callbox.js.map +1 -1
- package/dist/vue3/lib/card/card.cjs.map +1 -1
- package/dist/vue3/lib/card/card.js +4 -4
- package/dist/vue3/lib/card/card.js.map +1 -1
- package/dist/vue3/lib/checkbox/checkbox-constants.cjs.map +1 -1
- package/dist/vue3/lib/checkbox/checkbox-constants.js.map +1 -1
- package/dist/vue3/lib/checkbox/checkbox.cjs.map +1 -1
- package/dist/vue3/lib/checkbox/checkbox.js +8 -8
- package/dist/vue3/lib/checkbox/checkbox.js.map +1 -1
- package/dist/vue3/lib/checkbox-group/checkbox-group.cjs.map +1 -1
- package/dist/vue3/lib/checkbox-group/checkbox-group.js.map +1 -1
- package/dist/vue3/lib/checkbox-group/checkboxes-decorator.cjs.map +1 -1
- package/dist/vue3/lib/checkbox-group/checkboxes-decorator.js +1 -1
- package/dist/vue3/lib/checkbox-group/checkboxes-decorator.js.map +1 -1
- package/dist/vue3/lib/chip/chip-constants.cjs.map +1 -1
- package/dist/vue3/lib/chip/chip-constants.js.map +1 -1
- package/dist/vue3/lib/chip/chip.cjs.map +1 -1
- package/dist/vue3/lib/chip/chip.js +13 -13
- package/dist/vue3/lib/chip/chip.js.map +1 -1
- package/dist/vue3/lib/codeblock/codeblock.cjs.map +1 -1
- package/dist/vue3/lib/codeblock/codeblock.js +2 -2
- package/dist/vue3/lib/codeblock/codeblock.js.map +1 -1
- package/dist/vue3/lib/collapsible/collapsible-lazy-show.cjs.map +1 -1
- package/dist/vue3/lib/collapsible/collapsible-lazy-show.js +3 -3
- package/dist/vue3/lib/collapsible/collapsible-lazy-show.js.map +1 -1
- package/dist/vue3/lib/collapsible/collapsible.cjs +1 -1
- package/dist/vue3/lib/collapsible/collapsible.cjs.map +1 -1
- package/dist/vue3/lib/collapsible/collapsible.js +18 -18
- package/dist/vue3/lib/collapsible/collapsible.js.map +1 -1
- package/dist/vue3/lib/combobox/combobox-constants.cjs.map +1 -1
- package/dist/vue3/lib/combobox/combobox-constants.js.map +1 -1
- package/dist/vue3/lib/combobox/combobox-empty-list.cjs.map +1 -1
- package/dist/vue3/lib/combobox/combobox-empty-list.js +2 -2
- package/dist/vue3/lib/combobox/combobox-empty-list.js.map +1 -1
- package/dist/vue3/lib/combobox/combobox-loading-list.cjs +1 -1
- package/dist/vue3/lib/combobox/combobox-loading-list.cjs.map +1 -1
- package/dist/vue3/lib/combobox/combobox-loading-list.js +6 -6
- package/dist/vue3/lib/combobox/combobox-loading-list.js.map +1 -1
- package/dist/vue3/lib/combobox/combobox.cjs +1 -1
- package/dist/vue3/lib/combobox/combobox.cjs.map +1 -1
- package/dist/vue3/lib/combobox/combobox.js +8 -8
- package/dist/vue3/lib/combobox/combobox.js.map +1 -1
- package/dist/vue3/lib/combobox-multi-select/combobox-multi-select-constants.cjs.map +1 -1
- package/dist/vue3/lib/combobox-multi-select/combobox-multi-select-constants.js.map +1 -1
- package/dist/vue3/lib/combobox-multi-select/combobox-multi-select-story-constants.cjs.map +1 -1
- package/dist/vue3/lib/combobox-multi-select/combobox-multi-select-story-constants.js.map +1 -1
- package/dist/vue3/lib/combobox-multi-select/combobox-multi-select.cjs +1 -1
- package/dist/vue3/lib/combobox-multi-select/combobox-multi-select.cjs.map +1 -1
- package/dist/vue3/lib/combobox-multi-select/combobox-multi-select.js +16 -16
- package/dist/vue3/lib/combobox-multi-select/combobox-multi-select.js.map +1 -1
- package/dist/vue3/lib/combobox-with-popover/combobox-with-popover.cjs +1 -1
- package/dist/vue3/lib/combobox-with-popover/combobox-with-popover.cjs.map +1 -1
- package/dist/vue3/lib/combobox-with-popover/combobox-with-popover.js +13 -13
- package/dist/vue3/lib/combobox-with-popover/combobox-with-popover.js.map +1 -1
- package/dist/vue3/lib/contact-centers-row/contact-centers-row.cjs +1 -1
- package/dist/vue3/lib/contact-centers-row/contact-centers-row.cjs.map +1 -1
- package/dist/vue3/lib/contact-centers-row/contact-centers-row.js +19 -19
- package/dist/vue3/lib/contact-centers-row/contact-centers-row.js.map +1 -1
- package/dist/vue3/lib/contact-info/contact-info.cjs.map +1 -1
- package/dist/vue3/lib/contact-info/contact-info.js +1 -1
- package/dist/vue3/lib/contact-info/contact-info.js.map +1 -1
- package/dist/vue3/lib/contact-row/contact-row.cjs +1 -1
- package/dist/vue3/lib/contact-row/contact-row.cjs.map +1 -1
- package/dist/vue3/lib/contact-row/contact-row.js +12 -12
- package/dist/vue3/lib/contact-row/contact-row.js.map +1 -1
- package/dist/vue3/lib/datepicker/datepicker.cjs +1 -1
- package/dist/vue3/lib/datepicker/datepicker.cjs.map +1 -1
- package/dist/vue3/lib/datepicker/datepicker.js +139 -139
- package/dist/vue3/lib/datepicker/datepicker.js.map +1 -1
- package/dist/vue3/lib/datepicker/formatUtils.cjs.map +1 -1
- package/dist/vue3/lib/datepicker/formatUtils.js.map +1 -1
- package/dist/vue3/lib/datepicker/utils.cjs.map +1 -1
- package/dist/vue3/lib/datepicker/utils.js.map +1 -1
- package/dist/vue3/lib/description-list/description-list.cjs.map +1 -1
- package/dist/vue3/lib/description-list/description-list.js +3 -3
- package/dist/vue3/lib/description-list/description-list.js.map +1 -1
- package/dist/vue3/lib/dropdown/dropdown-constants.cjs.map +1 -1
- package/dist/vue3/lib/dropdown/dropdown-constants.js.map +1 -1
- package/dist/vue3/lib/dropdown/dropdown-list.cjs.map +1 -1
- package/dist/vue3/lib/dropdown/dropdown-list.js +5 -5
- package/dist/vue3/lib/dropdown/dropdown-list.js.map +1 -1
- package/dist/vue3/lib/dropdown/dropdown-separator.cjs.map +1 -1
- package/dist/vue3/lib/dropdown/dropdown-separator.js +2 -2
- package/dist/vue3/lib/dropdown/dropdown-separator.js.map +1 -1
- package/dist/vue3/lib/dropdown/dropdown-story-constants.cjs.map +1 -1
- package/dist/vue3/lib/dropdown/dropdown-story-constants.js.map +1 -1
- package/dist/vue3/lib/dropdown/dropdown.cjs +1 -1
- package/dist/vue3/lib/dropdown/dropdown.cjs.map +1 -1
- package/dist/vue3/lib/dropdown/dropdown.js +3 -3
- package/dist/vue3/lib/dropdown/dropdown.js.map +1 -1
- package/dist/vue3/lib/editor/editor-constants.cjs.map +1 -1
- package/dist/vue3/lib/editor/editor-constants.js.map +1 -1
- package/dist/vue3/lib/editor/editor.cjs +1 -1
- package/dist/vue3/lib/editor/editor.cjs.map +1 -1
- package/dist/vue3/lib/editor/editor.js +48 -48
- package/dist/vue3/lib/editor/editor.js.map +1 -1
- package/dist/vue3/lib/emoji/emoji.cjs.map +1 -1
- package/dist/vue3/lib/emoji/emoji.js +6 -6
- package/dist/vue3/lib/emoji/emoji.js.map +1 -1
- package/dist/vue3/lib/emoji-picker/emoji-picker-constants.cjs.map +1 -1
- package/dist/vue3/lib/emoji-picker/emoji-picker-constants.js.map +1 -1
- package/dist/vue3/lib/emoji-picker/emoji-picker.cjs.map +1 -1
- package/dist/vue3/lib/emoji-picker/emoji-picker.js +2 -2
- package/dist/vue3/lib/emoji-picker/emoji-picker.js.map +1 -1
- package/dist/vue3/lib/emoji-row/emoji-row-constants.cjs.map +1 -1
- package/dist/vue3/lib/emoji-row/emoji-row-constants.js.map +1 -1
- package/dist/vue3/lib/emoji-row/emoji-row.cjs +1 -1
- package/dist/vue3/lib/emoji-row/emoji-row.cjs.map +1 -1
- package/dist/vue3/lib/emoji-row/emoji-row.js +10 -10
- package/dist/vue3/lib/emoji-row/emoji-row.js.map +1 -1
- package/dist/vue3/lib/emoji-text-wrapper/emoji-text-wrapper.cjs +1 -1
- package/dist/vue3/lib/emoji-text-wrapper/emoji-text-wrapper.cjs.map +1 -1
- package/dist/vue3/lib/emoji-text-wrapper/emoji-text-wrapper.js +1 -1
- package/dist/vue3/lib/emoji-text-wrapper/emoji-text-wrapper.js.map +1 -1
- package/dist/vue3/lib/empty-state/empty-state-constants.cjs.map +1 -1
- package/dist/vue3/lib/empty-state/empty-state-constants.js.map +1 -1
- package/dist/vue3/lib/empty-state/empty-state.cjs.map +1 -1
- package/dist/vue3/lib/empty-state/empty-state.js +7 -7
- package/dist/vue3/lib/feed-item-pill/feed-item-pill-constants.cjs.map +1 -1
- package/dist/vue3/lib/feed-item-pill/feed-item-pill-constants.js.map +1 -1
- package/dist/vue3/lib/feed-item-pill/feed-item-pill.cjs +1 -1
- package/dist/vue3/lib/feed-item-pill/feed-item-pill.cjs.map +1 -1
- package/dist/vue3/lib/feed-item-pill/feed-item-pill.js +6 -6
- package/dist/vue3/lib/feed-item-pill/feed-item-pill.js.map +1 -1
- package/dist/vue3/lib/feed-item-row/feed-item-row-constants.cjs.map +1 -1
- package/dist/vue3/lib/feed-item-row/feed-item-row-constants.js.map +1 -1
- package/dist/vue3/lib/feed-item-row/feed-item-row.cjs +1 -1
- package/dist/vue3/lib/feed-item-row/feed-item-row.cjs.map +1 -1
- package/dist/vue3/lib/feed-item-row/feed-item-row.js +56 -56
- package/dist/vue3/lib/feed-item-row/feed-item-row.js.map +1 -1
- package/dist/vue3/lib/general-row/general-row-constants.cjs.map +1 -1
- package/dist/vue3/lib/general-row/general-row-constants.js.map +1 -1
- package/dist/vue3/lib/general-row/general-row.cjs +1 -1
- package/dist/vue3/lib/general-row/general-row.cjs.map +1 -1
- package/dist/vue3/lib/general-row/general-row.js +30 -30
- package/dist/vue3/lib/general-row/general-row.js.map +1 -1
- package/dist/vue3/lib/general-row/leftbar-general-row-icon.cjs.map +1 -1
- package/dist/vue3/lib/general-row/leftbar-general-row-icon.js +35 -35
- package/dist/vue3/lib/general-row/leftbar-general-row-icon.js.map +1 -1
- package/dist/vue3/lib/group-row/group-row.cjs.map +1 -1
- package/dist/vue3/lib/group-row/group-row.js +3 -3
- package/dist/vue3/lib/group-row/group-row.js.map +1 -1
- package/dist/vue3/lib/grouped-chip/grouped-chip.cjs.map +1 -1
- package/dist/vue3/lib/grouped-chip/grouped-chip.js +14 -14
- package/dist/vue3/lib/grouped-chip/grouped-chip.js.map +1 -1
- package/dist/vue3/lib/hovercard/hovercard.cjs +1 -1
- package/dist/vue3/lib/hovercard/hovercard.cjs.map +1 -1
- package/dist/vue3/lib/hovercard/hovercard.js +6 -6
- package/dist/vue3/lib/hovercard/hovercard.js.map +1 -1
- package/dist/vue3/lib/icon/icon-constants.cjs.map +1 -1
- package/dist/vue3/lib/icon/icon-constants.js.map +1 -1
- package/dist/vue3/lib/icon/icon.cjs.map +1 -1
- package/dist/vue3/lib/icon/icon.js +6 -6
- package/dist/vue3/lib/icon/icon.js.map +1 -1
- package/dist/vue3/lib/illustration/illustration-constants.cjs.map +1 -1
- package/dist/vue3/lib/illustration/illustration-constants.js.map +1 -1
- package/dist/vue3/lib/illustration/illustration.cjs.map +1 -1
- package/dist/vue3/lib/illustration/illustration.js +3 -3
- package/dist/vue3/lib/image-viewer/image-viewer.cjs.map +1 -1
- package/dist/vue3/lib/image-viewer/image-viewer.js +12 -12
- package/dist/vue3/lib/image-viewer/image-viewer.js.map +1 -1
- package/dist/vue3/lib/input/input-constants.cjs.map +1 -1
- package/dist/vue3/lib/input/input-constants.js.map +1 -1
- package/dist/vue3/lib/input/input.cjs.map +1 -1
- package/dist/vue3/lib/input/input.js +20 -20
- package/dist/vue3/lib/input/input.js.map +1 -1
- package/dist/vue3/lib/input-group/input-group.cjs.map +1 -1
- package/dist/vue3/lib/input-group/input-group.js +8 -8
- package/dist/vue3/lib/input-group/input-group.js.map +1 -1
- package/dist/vue3/lib/item-layout/item-layout.cjs.map +1 -1
- package/dist/vue3/lib/item-layout/item-layout.js +13 -13
- package/dist/vue3/lib/item-layout/item-layout.js.map +1 -1
- package/dist/vue3/lib/ivr-node/ivr-node-constants.cjs.map +1 -1
- package/dist/vue3/lib/ivr-node/ivr-node-constants.js.map +1 -1
- package/dist/vue3/lib/ivr-node/ivr-node.cjs +1 -1
- package/dist/vue3/lib/ivr-node/ivr-node.cjs.map +1 -1
- package/dist/vue3/lib/ivr-node/ivr-node.js +36 -36
- package/dist/vue3/lib/ivr-node/ivr-node.js.map +1 -1
- package/dist/vue3/lib/keyboard-shortcut/keyboard-shortcut.cjs.map +1 -1
- package/dist/vue3/lib/keyboard-shortcut/keyboard-shortcut.js +15 -15
- package/dist/vue3/lib/keyboard-shortcut/keyboard-shortcut.js.map +1 -1
- package/dist/vue3/lib/lazy-show/lazy-show.cjs.map +1 -1
- package/dist/vue3/lib/lazy-show/lazy-show.js +2 -2
- package/dist/vue3/lib/lazy-show/lazy-show.js.map +1 -1
- package/dist/vue3/lib/link/link-constants.cjs.map +1 -1
- package/dist/vue3/lib/link/link-constants.js.map +1 -1
- package/dist/vue3/lib/link/link.cjs.map +1 -1
- package/dist/vue3/lib/link/link.js +5 -5
- package/dist/vue3/lib/link/link.js.map +1 -1
- package/dist/vue3/lib/list-item/list-item-constants.cjs.map +1 -1
- package/dist/vue3/lib/list-item/list-item-constants.js.map +1 -1
- package/dist/vue3/lib/list-item/list-item.cjs.map +1 -1
- package/dist/vue3/lib/list-item/list-item.js +4 -4
- package/dist/vue3/lib/list-item/list-item.js.map +1 -1
- package/dist/vue3/lib/list-item-group/list-item-group-constants.cjs.map +1 -1
- package/dist/vue3/lib/list-item-group/list-item-group-constants.js.map +1 -1
- package/dist/vue3/lib/list-item-group/list-item-group.cjs.map +1 -1
- package/dist/vue3/lib/list-item-group/list-item-group.js +5 -5
- package/dist/vue3/lib/list-item-group/list-item-group.js.map +1 -1
- package/dist/vue3/lib/loader/loader.cjs.map +1 -1
- package/dist/vue3/lib/loader/loader.js +2 -2
- package/dist/vue3/lib/loader/loader.js.map +1 -1
- package/dist/vue3/lib/message-input/last-active-nodes.cjs +1 -1
- package/dist/vue3/lib/message-input/last-active-nodes.cjs.map +1 -1
- package/dist/vue3/lib/message-input/last-active-nodes.js +22 -22
- package/dist/vue3/lib/message-input/last-active-nodes.js.map +1 -1
- package/dist/vue3/lib/message-input/message-input-button.cjs +1 -1
- package/dist/vue3/lib/message-input/message-input-button.cjs.map +1 -1
- package/dist/vue3/lib/message-input/message-input-button.js +14 -14
- package/dist/vue3/lib/message-input/message-input-button.js.map +1 -1
- package/dist/vue3/lib/message-input/message-input-constants.cjs.map +1 -1
- package/dist/vue3/lib/message-input/message-input-constants.js.map +1 -1
- package/dist/vue3/lib/message-input/message-input-link.cjs +1 -1
- package/dist/vue3/lib/message-input/message-input-link.cjs.map +1 -1
- package/dist/vue3/lib/message-input/message-input-link.js +10 -10
- package/dist/vue3/lib/message-input/message-input-link.js.map +1 -1
- package/dist/vue3/lib/message-input/message-input-topbar.cjs.map +1 -1
- package/dist/vue3/lib/message-input/message-input-topbar.js +11 -11
- package/dist/vue3/lib/message-input/message-input-topbar.js.map +1 -1
- package/dist/vue3/lib/message-input/message-input.cjs +1 -1
- package/dist/vue3/lib/message-input/message-input.cjs.map +1 -1
- package/dist/vue3/lib/message-input/message-input.js +32 -32
- package/dist/vue3/lib/message-input/message-input.js.map +1 -1
- package/dist/vue3/lib/modal/modal.cjs +1 -1
- package/dist/vue3/lib/modal/modal.cjs.map +1 -1
- package/dist/vue3/lib/modal/modal.js +14 -14
- package/dist/vue3/lib/modal/modal.js.map +1 -1
- package/dist/vue3/lib/notice/notice-action.cjs.map +1 -1
- package/dist/vue3/lib/notice/notice-action.js +1 -1
- package/dist/vue3/lib/notice/notice-action.js.map +1 -1
- package/dist/vue3/lib/notice/notice-constants.cjs.map +1 -1
- package/dist/vue3/lib/notice/notice-constants.js.map +1 -1
- package/dist/vue3/lib/notice/notice-content.cjs.map +1 -1
- package/dist/vue3/lib/notice/notice-content.js +6 -6
- package/dist/vue3/lib/notice/notice-content.js.map +1 -1
- package/dist/vue3/lib/notice/notice-icon.cjs.map +1 -1
- package/dist/vue3/lib/notice/notice-icon.js +13 -13
- package/dist/vue3/lib/notice/notice-icon.js.map +1 -1
- package/dist/vue3/lib/notice/notice.cjs.map +1 -1
- package/dist/vue3/lib/notice/notice.js +4 -4
- package/dist/vue3/lib/notice/notice.js.map +1 -1
- package/dist/vue3/lib/pagination/pagination.cjs.map +1 -1
- package/dist/vue3/lib/pagination/pagination.js +4 -4
- package/dist/vue3/lib/pagination/pagination.js.map +1 -1
- package/dist/vue3/lib/popover/popover-constants.cjs.map +1 -1
- package/dist/vue3/lib/popover/popover-constants.js.map +1 -1
- package/dist/vue3/lib/popover/popover-header-footer.cjs.map +1 -1
- package/dist/vue3/lib/popover/popover-header-footer.js +6 -6
- package/dist/vue3/lib/popover/popover-header-footer.js.map +1 -1
- package/dist/vue3/lib/popover/popover.cjs +1 -1
- package/dist/vue3/lib/popover/popover.cjs.map +1 -1
- package/dist/vue3/lib/popover/popover.js +17 -17
- package/dist/vue3/lib/popover/popover.js.map +1 -1
- package/dist/vue3/lib/popover/tippy-utils.cjs +1 -1
- package/dist/vue3/lib/popover/tippy-utils.cjs.map +1 -1
- package/dist/vue3/lib/popover/tippy-utils.js +16 -18
- package/dist/vue3/lib/popover/tippy-utils.js.map +1 -1
- package/dist/vue3/lib/presence/presence.cjs.map +1 -1
- package/dist/vue3/lib/presence/presence.js +4 -4
- package/dist/vue3/lib/presence/presence.js.map +1 -1
- package/dist/vue3/lib/radio/radio-constants.cjs.map +1 -1
- package/dist/vue3/lib/radio/radio-constants.js.map +1 -1
- package/dist/vue3/lib/radio/radio.cjs.map +1 -1
- package/dist/vue3/lib/radio/radio.js +13 -13
- package/dist/vue3/lib/radio/radio.js.map +1 -1
- package/dist/vue3/lib/radio-group/radio-group.cjs.map +1 -1
- package/dist/vue3/lib/radio-group/radio-group.js.map +1 -1
- package/dist/vue3/lib/radio-group/radios-decorator.cjs.map +1 -1
- package/dist/vue3/lib/radio-group/radios-decorator.js +1 -1
- package/dist/vue3/lib/radio-group/radios-decorator.js.map +1 -1
- package/dist/vue3/lib/recipes/eslint.config.cjs +2 -0
- package/dist/vue3/lib/recipes/eslint.config.cjs.map +1 -0
- package/dist/vue3/lib/recipes/eslint.config.js +12 -0
- package/dist/vue3/lib/recipes/eslint.config.js.map +1 -0
- package/dist/vue3/lib/rich-text-editor/channel-suggestion.cjs.map +1 -1
- package/dist/vue3/lib/rich-text-editor/channel-suggestion.js.map +1 -1
- package/dist/vue3/lib/rich-text-editor/mention-suggestion.cjs.map +1 -1
- package/dist/vue3/lib/rich-text-editor/mention-suggestion.js.map +1 -1
- package/dist/vue3/lib/rich-text-editor/rich-text-editor-constants.cjs.map +1 -1
- package/dist/vue3/lib/rich-text-editor/rich-text-editor-constants.js.map +1 -1
- package/dist/vue3/lib/rich-text-editor/rich-text-editor.cjs +3 -3
- package/dist/vue3/lib/rich-text-editor/rich-text-editor.cjs.map +1 -1
- package/dist/vue3/lib/rich-text-editor/rich-text-editor.js +61 -54
- package/dist/vue3/lib/rich-text-editor/rich-text-editor.js.map +1 -1
- package/dist/vue3/lib/rich-text-editor/slash-command-suggestion.cjs.map +1 -1
- package/dist/vue3/lib/rich-text-editor/slash-command-suggestion.js.map +1 -1
- package/dist/vue3/lib/root-layout/root-layout-constants.cjs.map +1 -1
- package/dist/vue3/lib/root-layout/root-layout-constants.js.map +1 -1
- package/dist/vue3/lib/root-layout/root-layout.cjs.map +1 -1
- package/dist/vue3/lib/root-layout/root-layout.js +3 -3
- package/dist/vue3/lib/root-layout/root-layout.js.map +1 -1
- package/dist/vue3/lib/scrollbar-directive/scrollbar.cjs.map +1 -1
- package/dist/vue3/lib/scrollbar-directive/scrollbar.js.map +1 -1
- package/dist/vue3/lib/scroller/scroller.cjs +1 -1
- package/dist/vue3/lib/scroller/scroller.cjs.map +1 -1
- package/dist/vue3/lib/scroller/scroller.js +2 -2
- package/dist/vue3/lib/scroller/scroller.js.map +1 -1
- package/dist/vue3/lib/select-menu/select-menu-constants.cjs.map +1 -1
- package/dist/vue3/lib/select-menu/select-menu-constants.js.map +1 -1
- package/dist/vue3/lib/select-menu/select-menu.cjs.map +1 -1
- package/dist/vue3/lib/select-menu/select-menu.js +21 -21
- package/dist/vue3/lib/select-menu/select-menu.js.map +1 -1
- package/dist/vue3/lib/settings-menu-button/settings-menu-button.cjs.map +1 -1
- package/dist/vue3/lib/settings-menu-button/settings-menu-button.js +3 -3
- package/dist/vue3/lib/settings-menu-button/settings-menu-button.js.map +1 -1
- package/dist/vue3/lib/skeleton/skeleton-constants.cjs.map +1 -1
- package/dist/vue3/lib/skeleton/skeleton-constants.js.map +1 -1
- package/dist/vue3/lib/skeleton/skeleton-list-item.cjs.map +1 -1
- package/dist/vue3/lib/skeleton/skeleton-list-item.js +2 -2
- package/dist/vue3/lib/skeleton/skeleton-list-item.js.map +1 -1
- package/dist/vue3/lib/skeleton/skeleton-paragraph.cjs.map +1 -1
- package/dist/vue3/lib/skeleton/skeleton-paragraph.js +1 -1
- package/dist/vue3/lib/skeleton/skeleton-paragraph.js.map +1 -1
- package/dist/vue3/lib/skeleton/skeleton-shape.cjs.map +1 -1
- package/dist/vue3/lib/skeleton/skeleton-shape.js +5 -5
- package/dist/vue3/lib/skeleton/skeleton-shape.js.map +1 -1
- package/dist/vue3/lib/skeleton/skeleton-text.cjs.map +1 -1
- package/dist/vue3/lib/skeleton/skeleton-text.js +7 -7
- package/dist/vue3/lib/skeleton/skeleton-text.js.map +1 -1
- package/dist/vue3/lib/skeleton/skeleton.cjs +1 -1
- package/dist/vue3/lib/skeleton/skeleton.cjs.map +1 -1
- package/dist/vue3/lib/skeleton/skeleton.js +11 -11
- package/dist/vue3/lib/skeleton/skeleton.js.map +1 -1
- package/dist/vue3/lib/split-button/split-button-alpha.cjs.map +1 -1
- package/dist/vue3/lib/split-button/split-button-alpha.js +2 -2
- package/dist/vue3/lib/split-button/split-button-alpha.js.map +1 -1
- package/dist/vue3/lib/split-button/split-button-constants.cjs.map +1 -1
- package/dist/vue3/lib/split-button/split-button-constants.js.map +1 -1
- package/dist/vue3/lib/split-button/split-button-omega.cjs.map +1 -1
- package/dist/vue3/lib/split-button/split-button-omega.js +2 -2
- package/dist/vue3/lib/split-button/split-button-omega.js.map +1 -1
- package/dist/vue3/lib/split-button/split-button.cjs.map +1 -1
- package/dist/vue3/lib/split-button/split-button.js +19 -19
- package/dist/vue3/lib/split-button/split-button.js.map +1 -1
- package/dist/vue3/lib/stack/stack-constants.cjs.map +1 -1
- package/dist/vue3/lib/stack/stack-constants.js.map +1 -1
- package/dist/vue3/lib/stack/stack.cjs.map +1 -1
- package/dist/vue3/lib/stack/stack.js +11 -11
- package/dist/vue3/lib/stack/stack.js.map +1 -1
- package/dist/vue3/lib/stack/utils.cjs.map +1 -1
- package/dist/vue3/lib/stack/utils.js.map +1 -1
- package/dist/vue3/lib/stack/validators.cjs.map +1 -1
- package/dist/vue3/lib/stack/validators.js +5 -5
- package/dist/vue3/lib/stack/validators.js.map +1 -1
- package/dist/vue3/lib/tab/tab-group.cjs.map +1 -1
- package/dist/vue3/lib/tab/tab-group.js +7 -7
- package/dist/vue3/lib/tab/tab-group.js.map +1 -1
- package/dist/vue3/lib/tab/tab-panel.cjs.map +1 -1
- package/dist/vue3/lib/tab/tab-panel.js +2 -2
- package/dist/vue3/lib/tab/tab-panel.js.map +1 -1
- package/dist/vue3/lib/tab/tab.cjs.map +1 -1
- package/dist/vue3/lib/tab/tab.js +2 -2
- package/dist/vue3/lib/tab/tab.js.map +1 -1
- package/dist/vue3/lib/time-pill/time-pill.cjs.map +1 -1
- package/dist/vue3/lib/time-pill/time-pill.js +2 -2
- package/dist/vue3/lib/time-pill/time-pill.js.map +1 -1
- package/dist/vue3/lib/toast/toast-constants.cjs.map +1 -1
- package/dist/vue3/lib/toast/toast-constants.js.map +1 -1
- package/dist/vue3/lib/toast/toast.cjs +1 -1
- package/dist/vue3/lib/toast/toast.cjs.map +1 -1
- package/dist/vue3/lib/toast/toast.js +12 -12
- package/dist/vue3/lib/toast/toast.js.map +1 -1
- package/dist/vue3/lib/toggle/toggle-constants.cjs.map +1 -1
- package/dist/vue3/lib/toggle/toggle-constants.js.map +1 -1
- package/dist/vue3/lib/toggle/toggle.cjs +1 -1
- package/dist/vue3/lib/toggle/toggle.cjs.map +1 -1
- package/dist/vue3/lib/toggle/toggle.js +14 -14
- package/dist/vue3/lib/toggle/toggle.js.map +1 -1
- package/dist/vue3/lib/tooltip/tooltip-constants.cjs.map +1 -1
- package/dist/vue3/lib/tooltip/tooltip-constants.js.map +1 -1
- package/dist/vue3/lib/tooltip/tooltip.cjs +1 -1
- package/dist/vue3/lib/tooltip/tooltip.cjs.map +1 -1
- package/dist/vue3/lib/tooltip/tooltip.js +20 -22
- package/dist/vue3/lib/tooltip/tooltip.js.map +1 -1
- package/dist/vue3/lib/tooltip-directive/tooltip.cjs.map +1 -1
- package/dist/vue3/lib/tooltip-directive/tooltip.js +1 -1
- package/dist/vue3/lib/tooltip-directive/tooltip.js.map +1 -1
- package/dist/vue3/lib/top-banner-info/top-banner-info-constants.cjs.map +1 -1
- package/dist/vue3/lib/top-banner-info/top-banner-info-constants.js.map +1 -1
- package/dist/vue3/lib/top-banner-info/top-banner-info.cjs.map +1 -1
- package/dist/vue3/lib/top-banner-info/top-banner-info.js +2 -2
- package/dist/vue3/lib/top-banner-info/top-banner-info.js.map +1 -1
- package/dist/vue3/lib/unread-pill/unread-pill-constants.cjs.map +1 -1
- package/dist/vue3/lib/unread-pill/unread-pill-constants.js.map +1 -1
- package/dist/vue3/lib/unread-pill/unread-pill.cjs.map +1 -1
- package/dist/vue3/lib/unread-pill/unread-pill.js +7 -7
- package/dist/vue3/lib/unread-pill/unread-pill.js.map +1 -1
- package/dist/vue3/lib/validation-messages/validation-messages.cjs.map +1 -1
- package/dist/vue3/lib/validation-messages/validation-messages.js +9 -9
- package/dist/vue3/lib/validation-messages/validation-messages.js.map +1 -1
- package/dist/vue3/localization/de-DE.cjs.map +1 -1
- package/dist/vue3/localization/de-DE.js.map +1 -1
- package/dist/vue3/localization/en-US.cjs.map +1 -1
- package/dist/vue3/localization/en-US.js.map +1 -1
- package/dist/vue3/localization/es-LA.cjs.map +1 -1
- package/dist/vue3/localization/es-LA.js.map +1 -1
- package/dist/vue3/localization/fr-FR.cjs.map +1 -1
- package/dist/vue3/localization/fr-FR.js.map +1 -1
- package/dist/vue3/localization/index.cjs.map +1 -1
- package/dist/vue3/localization/index.js.map +1 -1
- package/dist/vue3/localization/it-IT.cjs.map +1 -1
- package/dist/vue3/localization/it-IT.js.map +1 -1
- package/dist/vue3/localization/ja-JP.cjs.map +1 -1
- package/dist/vue3/localization/ja-JP.js.map +1 -1
- package/dist/vue3/localization/nl-NL.cjs.map +1 -1
- package/dist/vue3/localization/nl-NL.js.map +1 -1
- package/dist/vue3/localization/pt-BR.cjs.map +1 -1
- package/dist/vue3/localization/pt-BR.js.map +1 -1
- package/dist/vue3/localization/ru-RU.cjs.map +1 -1
- package/dist/vue3/localization/ru-RU.js.map +1 -1
- package/dist/vue3/localization/zh-CN.cjs.map +1 -1
- package/dist/vue3/localization/zh-CN.js.map +1 -1
- package/dist/vue3/node_modules/@tiptap/vue-3.cjs.map +1 -1
- package/dist/vue3/node_modules/@tiptap/vue-3.js +3 -3
- package/dist/vue3/node_modules/@tiptap/vue-3.js.map +1 -1
- package/dist/vue3/shared/sr_only_close_button.cjs.map +1 -1
- package/dist/vue3/shared/sr_only_close_button.js +2 -2
- package/dist/vue3/shared/sr_only_close_button.js.map +1 -1
- package/dist/vue3/types/common/constants/index.d.ts.map +1 -1
- package/dist/vue3/types/common/dates/index.d.ts.map +1 -1
- package/dist/vue3/types/common/emoji/index.d.ts.map +1 -1
- package/dist/vue3/types/common/mixins/dom.d.ts.map +1 -1
- package/dist/vue3/types/common/mixins/input.d.ts +6 -6
- package/dist/vue3/types/common/mixins/input.d.ts.map +1 -1
- package/dist/vue3/types/common/mixins/input_group.d.ts +2 -2
- package/dist/vue3/types/common/mixins/modal.d.ts.map +1 -1
- package/dist/vue3/types/common/utils/index.d.ts.map +1 -1
- package/dist/vue3/types/components/avatar/avatar.vue.d.ts +12 -12
- package/dist/vue3/types/components/badge/badge.vue.d.ts +4 -4
- package/dist/vue3/types/components/banner/banner.vue.d.ts +1 -1
- package/dist/vue3/types/components/banner/banner.vue.d.ts.map +1 -1
- package/dist/vue3/types/components/breadcrumbs/breadcrumbs_constants.d.ts.map +1 -1
- package/dist/vue3/types/components/button/button.vue.d.ts +3 -3
- package/dist/vue3/types/components/button/button_constants.d.ts.map +1 -1
- package/dist/vue3/types/components/card/card.vue.d.ts +12 -12
- package/dist/vue3/types/components/checkbox/checkbox.vue.d.ts +6 -6
- package/dist/vue3/types/components/checkbox_group/checkbox_group.vue.d.ts +2 -2
- package/dist/vue3/types/components/chip/chip.vue.d.ts +6 -6
- package/dist/vue3/types/components/collapsible/collapsible.vue.d.ts +6 -6
- package/dist/vue3/types/components/combobox/combobox.vue.d.ts +4 -4
- package/dist/vue3/types/components/combobox/combobox_empty-list.vue.d.ts +3 -3
- package/dist/vue3/types/components/datepicker/datepicker_constants.d.ts.map +1 -1
- package/dist/vue3/types/components/datepicker/formatUtils.d.ts +5 -5
- package/dist/vue3/types/components/datepicker/formatUtils.d.ts.map +1 -1
- package/dist/vue3/types/components/datepicker/modules/calendar.vue.d.ts +1 -1
- package/dist/vue3/types/components/datepicker/modules/month-year-picker.vue.d.ts +1 -1
- package/dist/vue3/types/components/description_list/description_list.vue.d.ts +6 -6
- package/dist/vue3/types/components/dropdown/dropdown.vue.d.ts +10 -10
- package/dist/vue3/types/components/emoji/emoji.vue.d.ts +3 -3
- package/dist/vue3/types/components/emoji_picker/emoji_picker_constants.d.ts.map +1 -1
- package/dist/vue3/types/components/emoji_picker/modules/emoji_search.vue.d.ts.map +1 -1
- package/dist/vue3/types/components/emoji_picker/modules/emoji_selector.vue.d.ts.map +1 -1
- package/dist/vue3/types/components/emoji_picker/modules/emoji_skin_selector.vue.d.ts.map +1 -1
- package/dist/vue3/types/components/emoji_picker/modules/emoji_tabset.vue.d.ts.map +1 -1
- package/dist/vue3/types/components/emoji_text_wrapper/emoji_text_wrapper.vue.d.ts +1 -1
- package/dist/vue3/types/components/emoji_text_wrapper/emoji_text_wrapper.vue.d.ts.map +1 -1
- package/dist/vue3/types/components/empty_state/empty_state.vue.d.ts +7 -11
- package/dist/vue3/types/components/empty_state/empty_state.vue.d.ts.map +1 -1
- package/dist/vue3/types/components/eslint.config.d.ts +8 -0
- package/dist/vue3/types/components/eslint.config.d.ts.map +1 -0
- package/dist/vue3/types/components/hovercard/hovercard.vue.d.ts +686 -11
- package/dist/vue3/types/components/hovercard/hovercard.vue.d.ts.map +1 -1
- package/dist/vue3/types/components/image_viewer/image_viewer.vue.d.ts.map +1 -1
- package/dist/vue3/types/components/input/input.vue.d.ts +8 -8
- package/dist/vue3/types/components/input_group/input_group.vue.d.ts +2 -2
- package/dist/vue3/types/components/item_layout/item_layout.vue.d.ts +1 -1
- package/dist/vue3/types/components/keyboard_shortcut/keyboard_shortcut.vue.d.ts +7 -210
- package/dist/vue3/types/components/lazy_show/lazy_show.vue.d.ts +1 -1
- package/dist/vue3/types/components/link/link_constants.d.ts.map +1 -1
- package/dist/vue3/types/components/list_item/list_item.vue.d.ts +3 -3
- package/dist/vue3/types/components/list_item_group/list_item_group.vue.d.ts +6 -6
- package/dist/vue3/types/components/modal/modal.vue.d.ts +16 -16
- package/dist/vue3/types/components/modal/modal.vue.d.ts.map +1 -1
- package/dist/vue3/types/components/notice/notice.vue.d.ts +1 -1
- package/dist/vue3/types/components/notice/notice_icon.vue.d.ts +1 -30
- package/dist/vue3/types/components/notice/notice_icon.vue.d.ts.map +1 -1
- package/dist/vue3/types/components/popover/popover.vue.d.ts +26 -26
- package/dist/vue3/types/components/popover/popover.vue.d.ts.map +1 -1
- package/dist/vue3/types/components/popover/popover_header_footer.vue.d.ts +3 -3
- package/dist/vue3/types/components/popover/tippy_utils.d.ts +2 -3
- package/dist/vue3/types/components/popover/tippy_utils.d.ts.map +1 -1
- package/dist/vue3/types/components/radio/radio.vue.d.ts +6 -6
- package/dist/vue3/types/components/radio_group/radio_group.vue.d.ts +2 -2
- package/dist/vue3/types/components/rich_text_editor/extensions/channels/ChannelComponent.vue.d.ts +22 -22
- package/dist/vue3/types/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.d.ts +22 -22
- package/dist/vue3/types/components/rich_text_editor/extensions/mentions/MentionComponent.vue.d.ts +22 -22
- package/dist/vue3/types/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.d.ts +22 -22
- package/dist/vue3/types/components/rich_text_editor/extensions/slash_command/slash_command.d.ts +1 -1
- package/dist/vue3/types/components/rich_text_editor/extensions/slash_command/slash_command.d.ts.map +1 -1
- package/dist/vue3/types/components/rich_text_editor/rich_text_editor.vue.d.ts +7 -12
- package/dist/vue3/types/components/rich_text_editor/rich_text_editor.vue.d.ts.map +1 -1
- package/dist/vue3/types/components/root_layout/root_layout.vue.d.ts +15 -15
- package/dist/vue3/types/components/scroller/modules/core_scroller.vue.d.ts +26 -16
- package/dist/vue3/types/components/scroller/modules/core_scroller.vue.d.ts.map +1 -1
- package/dist/vue3/types/components/scroller/modules/scroller_item.vue.d.ts +1 -1
- package/dist/vue3/types/components/scroller/scroller.vue.d.ts +245 -12
- package/dist/vue3/types/components/scroller/scroller.vue.d.ts.map +1 -1
- package/dist/vue3/types/components/select_menu/select_menu.vue.d.ts +13 -13
- package/dist/vue3/types/components/skeleton/skeleton-list-item.vue.d.ts +1 -1
- package/dist/vue3/types/components/skeleton/skeleton-paragraph.vue.d.ts +3 -3
- package/dist/vue3/types/components/skeleton/skeleton-shape.vue.d.ts +4 -4
- package/dist/vue3/types/components/skeleton/skeleton-text.vue.d.ts +1 -1
- package/dist/vue3/types/components/skeleton/skeleton.vue.d.ts +1 -1
- package/dist/vue3/types/components/skeleton/skeleton_constants.d.ts.map +1 -1
- package/dist/vue3/types/components/split_button/split_button-alpha.vue.d.ts +3 -3
- package/dist/vue3/types/components/split_button/split_button.vue.d.ts +3 -3
- package/dist/vue3/types/components/tab/tab.vue.d.ts +3 -3
- package/dist/vue3/types/components/tab/tab_group.vue.d.ts +3 -3
- package/dist/vue3/types/components/tab/tab_panel.vue.d.ts +3 -3
- package/dist/vue3/types/components/tab/tab_panel.vue.d.ts.map +1 -1
- package/dist/vue3/types/components/toast/layouts/toast_layout_alternate.vue.d.ts +1 -1
- package/dist/vue3/types/components/toast/layouts/toast_layout_alternate_icon.vue.d.ts +1 -30
- package/dist/vue3/types/components/toast/layouts/toast_layout_default.vue.d.ts +1 -1
- package/dist/vue3/types/components/toast/toast.vue.d.ts +4 -4
- package/dist/vue3/types/components/toast/toast_constants.d.ts.map +1 -1
- package/dist/vue3/types/components/toggle/toggle.vue.d.ts +7 -7
- package/dist/vue3/types/components/tooltip/tooltip.vue.d.ts +10 -10
- package/dist/vue3/types/components/tooltip/tooltip_constants.d.ts.map +1 -1
- package/dist/vue3/types/components/validation_messages/validation_messages.vue.d.ts +0 -1
- package/dist/vue3/types/components/validation_messages/validation_messages.vue.d.ts.map +1 -1
- package/dist/vue3/types/recipes/buttons/callbar_button/callbar_button.vue.d.ts +7 -7
- package/dist/vue3/types/recipes/buttons/callbar_button_with_dropdown/callbar_button_with_dropdown.vue.d.ts +7 -7
- package/dist/vue3/types/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts +9 -9
- package/dist/vue3/types/recipes/cards/ivr_node/ivr_node.vue.d.ts +1 -30
- package/dist/vue3/types/recipes/cards/ivr_node/ivr_node.vue.d.ts.map +1 -1
- package/dist/vue3/types/recipes/cards/ivr_node/ivr_node_constants.d.ts.map +1 -1
- package/dist/vue3/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts +9 -9
- package/dist/vue3/types/recipes/conversation_view/editor/editor.vue.d.ts +9 -241
- package/dist/vue3/types/recipes/conversation_view/editor/editor.vue.d.ts.map +1 -1
- package/dist/vue3/types/recipes/conversation_view/editor/editor_constants.d.ts.map +1 -1
- package/dist/vue3/types/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts +7 -36
- package/dist/vue3/types/recipes/conversation_view/feed_item_pill/feed_item_pill.vue.d.ts.map +1 -1
- package/dist/vue3/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +1 -1
- package/dist/vue3/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts.map +1 -1
- package/dist/vue3/types/recipes/conversation_view/feed_item_row/feed_item_row_constants.d.ts.map +1 -1
- package/dist/vue3/types/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.d.ts +22 -22
- package/dist/vue3/types/recipes/conversation_view/message_input/last_active_nodes.d.ts.map +1 -1
- package/dist/vue3/types/recipes/conversation_view/message_input/message_input.vue.d.ts +7 -7
- package/dist/vue3/types/recipes/eslint.config.d.ts +8 -0
- package/dist/vue3/types/recipes/eslint.config.d.ts.map +1 -0
- package/dist/vue3/types/recipes/item_layout/contact_info/contact_info.vue.d.ts +1 -1
- package/dist/vue3/types/recipes/leftbar/general_row/leftbar_general_row_icon.vue.d.ts +1 -30
- package/package.json +7 -6
- package/dist/vue2/types/components/rich_text_editor/extensions/channels/ChannelComponent.vue.d.ts +0 -47
- package/dist/vue2/types/components/rich_text_editor/extensions/channels/ChannelComponent.vue.d.ts.map +0 -1
- package/dist/vue2/types/components/rich_text_editor/extensions/mentions/MentionComponent.vue.d.ts +0 -47
- package/dist/vue2/types/components/rich_text_editor/extensions/mentions/MentionComponent.vue.d.ts.map +0 -1
- package/dist/vue2/types/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.d.ts +0 -47
- package/dist/vue2/types/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.d.ts.map +0 -1
- package/dist/vue2/types/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.d.ts +0 -52
- package/dist/vue2/types/recipes/conversation_view/message_input/extensions/meeting_pill/MeetingPill.vue.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scroller.js","sources":["../../../components/scroller/modules/core_scroller.vue","../../../components/scroller/modules/scroller_item.vue","../../../components/scroller/modules/dynamic_scroller.vue","../../../components/scroller/scroller.vue"],"sourcesContent":["<!-- eslint-disable max-len -->\n<template>\n <div\n ref=\"scroller\"\n class=\"vue-recycle-scroller\"\n :class=\"{\n ready,\n [`direction-${direction}`]: true,\n }\"\n @scroll.passive=\"handleScroll\"\n >\n <component\n :is=\"listTag\"\n ref=\"wrapper\"\n :style=\"{ [direction === 'vertical' ? 'minHeight' : 'minWidth']: `${totalSize}px` }\"\n class=\"vue-recycle-scroller__item-wrapper\"\n :class=\"listClass\"\n >\n <component\n :is=\"itemTag\"\n v-for=\"view in pool\"\n :key=\"view.nr.id\"\n :style=\"ready ? {\n transform: `translate${direction === 'vertical' ? 'Y' : 'X'}(${view.position}px) translate${direction === 'vertical' ? 'X' : 'Y'}(${view.offset}px)`,\n width: undefined,\n height: undefined,\n } : null\"\n class=\"vue-recycle-scroller__item-view\"\n :class=\"[\n itemClass,\n {\n hover: !skipHover && hoverKey === view.nr.key,\n },\n ]\"\n v-on=\"skipHover ? {} : {\n mouseenter: () => { hoverKey = view.nr.key },\n mouseleave: () => { hoverKey = null },\n }\"\n >\n <slot\n :item=\"view.item\"\n :index=\"view.nr.index\"\n :active=\"view.nr.used\"\n />\n </component>\n </component>\n </div>\n</template>\n\n<script setup>\n/*\nThis is a code from external library (https://github.com/Akryum/vue-virtual-scroller/blob/master/packages/vue-virtual-scroller/src/components/RecycleScroller.vue)\nWe have modified it for our own specific use.\n*/\nimport { computed, watch, markRaw, shallowReactive, onMounted, nextTick, reactive, ref } from 'vue';\n\nconst props = defineProps({\n /**\n * List of items you want to display in the scroller.\n */\n items: {\n type: Array,\n required: true,\n },\n\n /**\n *\n * Field used to identify items and optimize managing rendered views\n */\n keyField: {\n type: String,\n default: 'id',\n },\n\n /**\n * Direction of the scroller. Can be either `vertical` or `horizontal`.\n */\n direction: {\n type: String,\n default: 'vertical',\n validator: (value) => ['vertical', 'horizontal'].includes(value),\n },\n\n /**\n * Size of the items in the list.\n * If it is set to null (the default value), it will use variable size mode.\n */\n itemSize: {\n type: Number,\n default: null,\n },\n\n /**\n * Minimum size used if the height (or width in horizontal mode) of an item is unknown.\n */\n minItemSize: {\n type: [Number, String],\n default: null,\n },\n\n /**\n * Field used to get the item's size in variable size mode.\n */\n sizeField: {\n type: String,\n default: 'size',\n },\n\n /**\n * Amount of pixel to add to edges of the scrolling visible area to start rendering items further away.\n */\n buffer: {\n type: Number,\n default: 200,\n },\n\n /**\n * If true, the hover state will be skipped.\n * This can be useful if you want to use the hover state for other purposes.\n */\n skipHover: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The element to render as the list's wrapper.\n */\n listTag: {\n type: String,\n default: 'div',\n },\n\n /**\n * The element to render as the list item.\n */\n itemTag: {\n type: String,\n default: 'div',\n },\n\n /**\n * The custom classes added to the item list wrapper.\n */\n listClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * The custom classes added to each item.\n */\n itemClass: {\n type: [String, Object, Array],\n default: '',\n },\n});\n\nconst emit = defineEmits(['user-position']);\n\nconst views = reactive(new Map());\n// const reactiveItems = reactive(props.items);\nconst unusedViews = reactive(new Map());\nconst updateTimeout = null;\nconst pool = ref([]);\nconst hoverKey = ref(null);\nconst ready = ref(false);\nconst scroller = ref(null);\nconst userPosition = ref('top');\n\nlet startIndex = 0;\nlet endIndex = 0;\nlet scrollDirty = false;\nlet lastUpdateScrollPosition = 0;\nlet sortTimer = null;\nlet computedMinItemSize = null;\nlet totalSize = 0;\nlet uid = 0;\n\nconst sizes = computed(() => {\n if (props.itemSize === null) {\n const sizes = {\n '-1': { accumulator: 0 },\n };\n const items = props.items;\n const field = props.sizeField;\n const minItemSize = props.minItemSize;\n let computedMinSize = 10000;\n let accumulator = 0;\n let current;\n for (let i = 0, l = items.length; i < l; i++) {\n current = items[i][field] || minItemSize;\n if (current < computedMinSize) {\n computedMinSize = current;\n }\n accumulator += current;\n sizes[i] = { accumulator, size: current };\n }\n\n computedMinItemSize = computedMinSize;\n return sizes;\n }\n return [];\n});\n\nconst simpleArray = computed(() => {\n return props.items.length && typeof props.items[0] !== 'object';\n});\n\nconst itemIndexByKey = computed(() => {\n const result = {};\n for (let i = 0, l = props.items.length; i < l; i++) {\n result[props.items[i][props.keyField]] = i;\n }\n return result;\n});\n\n// watch(reactiveItems, () => {\n// // if add to the top\n// // _updateVisibleItems(true);\n// // if autoscrolling if add to the bottom\n// // _updateVisibleItems(false, true);\n// });\n\nwatch(sizes, () => {\n _updateVisibleItems(false);\n}, { deep: true });\n\nonMounted(() => {\n nextTick(() => {\n // In SSR mode, render the real number of visible items\n _updateVisibleItems(true);\n ready.value = true;\n });\n});\n\nconst _addView = (pool, index, item, key, type) => {\n const nr = markRaw({\n id: uid++,\n index,\n used: true,\n key,\n type,\n });\n const view = shallowReactive({\n item,\n position: 0,\n nr,\n });\n pool.value.push(view);\n return view;\n};\n\nconst _unuseView = (view, fake = false) => {\n const _unusedViews = unusedViews;\n const type = view.nr.type;\n let unusedPool = _unusedViews.get(type);\n if (!unusedPool) {\n unusedPool = [];\n _unusedViews.set(type, unusedPool);\n }\n unusedPool.push(view);\n if (!fake) {\n view.nr.used = false;\n view.position = -9999;\n }\n};\n\nconst _getScroll = () => {\n const isVertical = props.direction === 'vertical';\n let scrollState;\n\n if (isVertical) {\n scrollState = {\n start: scroller.value.scrollTop,\n end: scroller.value.scrollTop + scroller.value.clientHeight,\n };\n } else {\n scrollState = {\n start: scroller.value.scrollLeft,\n end: scroller.value.scrollLeft + scroller.value.clientWidth,\n };\n }\n\n return scrollState;\n};\n\nconst _itemsLimitError = () => {\n setTimeout(() => {\n // eslint-disable-next-line max-len\n console.error('It seems the scroller element isn\\'t scrolling, so it tries to render all the items at once.', 'Scroller:', scroller);\n // eslint-disable-next-line max-len\n console.error('Make sure the scroller has a fixed height (or width) and \\'overflow-y\\' (or \\'overflow-x\\') set to \\'auto\\' so it can scroll correctly and only render the items visible in the scroll viewport.');\n });\n throw new Error('Rendered items limit reached');\n};\n\nconst _sortViews = () => {\n pool.value.sort((viewA, viewB) => viewA.nr.index - viewB.nr.index);\n};\n\nconst _updateVisibleItems = (checkItem, checkPositionDiff = false) => {\n const itemSize = props.itemSize;\n const minItemSize = computedMinItemSize;\n const keyField = simpleArray.value ? null : props.keyField;\n const items = props.items;\n const count = items.length;\n const _sizes = sizes.value;\n const _views = views;\n const _unusedViews = unusedViews;\n const _pool = pool;\n const _itemIndexByKey = itemIndexByKey;\n let _startIndex, _endIndex;\n let _totalSize;\n let visibleStartIndex, visibleEndIndex;\n\n if (!count) {\n _startIndex = _endIndex = visibleStartIndex = visibleEndIndex = _totalSize = 0;\n } else {\n const scroll = _getScroll();\n\n // Skip update if use hasn't scrolled enough\n if (checkPositionDiff) {\n let positionDiff = scroll.start - lastUpdateScrollPosition.value;\n if (positionDiff < 0) positionDiff = -positionDiff;\n if ((itemSize === null && positionDiff < minItemSize.value) || positionDiff < itemSize) {\n return {\n continuous: true,\n };\n }\n }\n lastUpdateScrollPosition = scroll.start;\n\n const _buffer = props.buffer;\n scroll.start -= _buffer;\n scroll.end += _buffer;\n\n // Variable size mode\n if (itemSize === null) {\n let h;\n let a = 0;\n let b = count - 1;\n let i = ~~(count / 2);\n let oldI;\n\n // Searching for _startIndex\n do {\n oldI = i;\n h = _sizes[i]?.accumulator;\n if (h < scroll.start) {\n a = i;\n } else if (i < count - 1 && _sizes[i + 1]?.accumulator > scroll.start) {\n b = i;\n }\n i = ~~((a + b) / 2);\n } while (i !== oldI);\n i < 0 && (i = 0);\n _startIndex = i;\n\n // For container style\n _totalSize = _sizes[count - 1]?.accumulator;\n\n // Searching for _endIndex\n for (\n _endIndex = i;\n _endIndex < count && _sizes[_endIndex]?.accumulator < scroll.end;\n _endIndex++\n );\n\n if (_endIndex === -1) {\n _endIndex = items.length - 1;\n } else {\n _endIndex++;\n // Bounds\n _endIndex > count && (_endIndex = count);\n }\n\n // search visible _startIndex\n for (\n visibleStartIndex = startIndex;\n visibleStartIndex < count && (_sizes[visibleStartIndex]?.accumulator) < scroll.start;\n visibleStartIndex++\n );\n\n // search visible endIndex\n for (\n visibleEndIndex = visibleStartIndex;\n visibleEndIndex < count && (_sizes[visibleEndIndex]?.accumulator) < scroll.end;\n visibleEndIndex++\n );\n } else {\n // Fixed size mode\n _startIndex = ~~(scroll.start / itemSize);\n const remainer = _startIndex % 1;\n _startIndex -= remainer;\n _endIndex = Math.ceil(scroll.end / itemSize);\n visibleStartIndex = Math.max(0, Math.floor((scroll.start) / itemSize));\n visibleEndIndex = Math.floor((scroll.end) / itemSize);\n\n // Bounds\n _startIndex < 0 && (_startIndex = 0);\n _endIndex > count && (_endIndex = count);\n visibleStartIndex < 0 && (visibleStartIndex = 0);\n visibleEndIndex > count && (visibleEndIndex = count);\n\n _totalSize = Math.ceil(count / 1) * itemSize;\n }\n }\n\n // items limit 1000\n if (_endIndex - _startIndex > 1000) {\n _itemsLimitError();\n }\n\n totalSize = _totalSize;\n\n let view;\n\n const continuous = _startIndex <= endIndex && _endIndex >= _startIndex;\n\n // Unuse views that are no longer visible\n if (continuous) {\n for (let i = 0, l = _pool.value.length; i < l; i++) {\n view = _pool.value[i];\n if (view?.nr.used) {\n // Update view item index\n if (checkItem) {\n view.nr.index = _itemIndexByKey[view.item[keyField]];\n }\n\n // Check if index is still in visible range\n if (\n view.nr.index == null ||\n view.nr.index < _startIndex ||\n view.nr.index >= _endIndex\n ) {\n _unuseView(view);\n }\n }\n }\n }\n\n const unusedIndex = continuous ? null : new Map();\n\n let item, type;\n let v;\n for (let i = _startIndex; i < _endIndex; i++) {\n item = items[i];\n const key = keyField ? item?.[keyField] : item;\n\n if (key == null) {\n throw new Error(`Key is ${key} on item (keyField is '${keyField}')`);\n }\n view = _views.get(key);\n\n if (!itemSize && !_sizes[i]?.size) {\n if (view) _unuseView(view);\n continue;\n }\n\n type = item.type;\n\n let unusedPool = _unusedViews.get(type);\n // let newlyUsedView = false;\n\n // No view assigned to item\n if (!view) {\n if (continuous) {\n // Reuse existing view\n if (unusedPool && unusedPool.length) {\n view = unusedPool.pop();\n } else {\n view = _addView(_pool, i, item, key, type);\n }\n } else {\n // Use existing view\n // We don't care if they are already used\n // because we are not in continous scrolling\n v = unusedIndex.get(type) || 0;\n\n if (!unusedPool || v >= unusedPool.length) {\n view = _addView(_pool, i, item, key, type);\n _unuseView(view, true);\n unusedPool = _unusedViews.get(type);\n }\n\n view = unusedPool[v];\n unusedIndex.set(type, v + 1);\n }\n\n // Assign view to item\n _views.delete(view.nr.key);\n view.nr.used = true;\n view.nr.index = i;\n view.nr.key = key;\n view.nr.type = type;\n _views.set(key, view);\n\n // newlyUsedView = true;\n } else {\n // View already assigned to item\n if (!view.nr.used) {\n view.nr.used = true;\n // newlyUsedView = true;\n if (unusedPool) {\n const index = unusedPool.indexOf(view);\n if (index !== -1) unusedPool.splice(index, 1);\n }\n }\n }\n\n // Always set item in case it's a new object with the same key\n view.item = item;\n\n // if (newlyUsedView) {\n // if (items.length === 0) return;\n // if (i === items.length - 1) emit('scroll-end');\n // if (i === 0) emit('scroll-start');\n // }\n\n // Update position\n if (itemSize === null) {\n view.position = _sizes[i - 1]?.accumulator;\n view.offset = 0;\n } else {\n view.position = Math.floor(i) * itemSize;\n view.offset = (i % 1) * itemSize;\n }\n }\n\n startIndex = _startIndex;\n endIndex = _endIndex;\n\n // After the user has finished scrolling\n // Sort views so text selection is correct\n clearTimeout(sortTimer);\n sortTimer = setTimeout(_sortViews, 300);\n\n return {\n continuous,\n };\n};\n\nconst _scrollToPosition = (position) => {\n const direction = props.direction === 'vertical'\n ? { scroll: 'scrollTop', start: 'top' }\n : { scroll: 'scrollLeft', start: 'left' };\n\n const viewport = scroller.value;\n const scrollDirection = direction.scroll;\n\n viewport[scrollDirection] = position;\n};\n\nconst scrollToItem = (index) => {\n let scroll;\n if (props.itemSize === null) {\n scroll = index > 0 ? sizes.value[index - 1]?.accumulator : 0;\n } else {\n scroll = Math.floor(index) * props.itemSize;\n }\n _scrollToPosition(scroll);\n};\n\nconst handleScroll = () => {\n const container = scroller.value;\n\n if (userPosition.value !== 'middle') {\n userPosition.value = 'middle';\n emit('user-position', 'middle');\n }\n\n // Check if the scroll is at the top of the container\n if (container.scrollTop === 0) {\n userPosition.value = 'top';\n emit('user-position', 'top');\n }\n\n // Check if the scroll is at the bottom of the container\n if (container.scrollTop + container.clientHeight === container.scrollHeight) {\n userPosition.value = 'bottom';\n emit('user-position', 'bottom');\n }\n\n if (!scrollDirty) {\n scrollDirty = true;\n if (updateTimeout) return;\n\n const requestUpdate = () => requestAnimationFrame(() => {\n scrollDirty = false;\n _updateVisibleItems(false, true);\n });\n\n requestUpdate();\n }\n};\n\ndefineExpose({\n scrollToItem,\n _updateVisibleItems,\n});\n</script>\n","<script>\n/*\nThis is a code from external library (https://github.com/Akryum/vue-virtual-scroller/blob/master/packages/vue-virtual-scroller/src/components/DynamicScrollerItem.vue)\nWe have modified it for our own specific use.\n*/\nimport { h } from 'vue';\nimport { returnFirstEl } from '@/common/utils';\n\nexport default {\n name: 'DtScrollerItem',\n\n inject: [\n 'vscrollData',\n 'vscrollParent',\n 'vscrollResizeObserver',\n ],\n\n props: {\n // eslint-disable-next-line vue/require-prop-types\n item: {\n required: true,\n },\n\n watchData: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Indicates if the view is actively used to display an item.\n */\n active: {\n type: Boolean,\n required: true,\n },\n\n index: {\n type: Number,\n default: undefined,\n },\n\n sizeDependencies: {\n type: [Array, Object],\n default: null,\n },\n\n tag: {\n type: String,\n default: 'div',\n },\n },\n\n computed: {\n id () {\n if (this.vscrollData.simpleArray) return this.index;\n // eslint-disable-next-line no-prototype-builtins\n if (this.vscrollData.keyField in this.item) return this.item[this.vscrollData.keyField];\n throw new Error(`keyField '${this.vscrollData.keyField}' not found in your item. You should set a valid keyField prop on your Scroller`);\n },\n\n size () {\n return this.vscrollData.sizes[this.id] || 0;\n },\n\n finalActive () {\n return this.active && this.vscrollData.active;\n },\n },\n\n watch: {\n watchData: 'updateWatchData',\n\n id (value, oldValue) {\n returnFirstEl(this.$el).$_vs_id = this.id;\n if (!this.size) {\n this.onDataUpdate();\n }\n\n if (this.$_sizeObserved) {\n // In case the old item had the same size, it won't trigger the ResizeObserver\n // since we are reusing the same DOM node\n const oldSize = this.vscrollData.sizes[oldValue];\n const size = this.vscrollData.sizes[value];\n if (oldSize != null && oldSize !== size) {\n this.applySize(oldSize);\n }\n }\n },\n\n finalActive (value) {\n if (!this.size) {\n if (value) {\n if (!this.vscrollParent.$_undefinedMap[this.id]) {\n this.vscrollParent.$_undefinedSizes++;\n this.vscrollParent.$_undefinedMap[this.id] = true;\n }\n } else {\n if (this.vscrollParent.$_undefinedMap[this.id]) {\n this.vscrollParent.$_undefinedSizes--;\n this.vscrollParent.$_undefinedMap[this.id] = false;\n }\n }\n }\n\n if (this.vscrollResizeObserver) {\n if (value) {\n this.observeSize();\n } else {\n this.unobserveSize();\n }\n } else if (value && this.$_pendingVScrollUpdate === this.id) {\n this.updateSize();\n }\n },\n },\n\n created () {\n if (this.$isServer) return;\n\n this.$_forceNextVScrollUpdate = null;\n this.updateWatchData();\n\n if (!this.vscrollResizeObserver) {\n for (const k in this.sizeDependencies) {\n this.$watch(() => this.sizeDependencies[k], this.onDataUpdate);\n }\n }\n },\n\n mounted () {\n if (this.finalActive) {\n this.updateSize();\n this.observeSize();\n }\n },\n\n beforeUnmount () {\n this.unobserveSize();\n },\n\n methods: {\n updateSize () {\n if (this.finalActive) {\n if (this.$_pendingSizeUpdate !== this.id) {\n this.$_pendingSizeUpdate = this.id;\n this.$_forceNextVScrollUpdate = null;\n this.$_pendingVScrollUpdate = null;\n this.computeSize(this.id);\n }\n } else {\n this.$_forceNextVScrollUpdate = this.id;\n }\n },\n\n updateWatchData () {\n if (this.watchData && !this.vscrollResizeObserver) {\n this.$_watchData = this.$watch('item', () => {\n this.onDataUpdate();\n }, {\n deep: true,\n });\n } else if (this.$_watchData) {\n this.$_watchData();\n this.$_watchData = null;\n }\n },\n\n onVscrollUpdate ({ force }) {\n // If not active, sechedule a size update when it becomes active\n if (!this.finalActive && force) {\n this.$_pendingVScrollUpdate = this.id;\n }\n\n if (this.$_forceNextVScrollUpdate === this.id || force || !this.size) {\n this.updateSize();\n }\n },\n\n onDataUpdate () {\n this.updateSize();\n },\n\n computeSize (id) {\n this.$nextTick(() => {\n if (this.id === id) {\n const width = returnFirstEl(this.$el).offsetWidth;\n const height = returnFirstEl(this.$el).offsetHeight;\n this.applyWidthHeight(width, height);\n }\n this.$_pendingSizeUpdate = null;\n });\n },\n\n applyWidthHeight (width, height) {\n const size = ~~(this.vscrollParent.direction === 'vertical' ? height : width);\n if (size && this.size !== size) {\n this.applySize(size);\n }\n },\n\n applySize (size) {\n if (this.vscrollParent.$_undefinedMap[this.id]) {\n this.vscrollParent.$_undefinedSizes--;\n this.vscrollParent.$_undefinedMap[this.id] = undefined;\n }\n this.vscrollData.sizes[this.id] = size;\n },\n\n observeSize () {\n if (!this.vscrollResizeObserver) return;\n if (this.$_sizeObserved) return;\n this.vscrollResizeObserver.observe(returnFirstEl(this.$el));\n this.$el.$_vs_id = this.id;\n this.$el.$_vs_onResize = this.onResize;\n this.$_sizeObserved = true;\n },\n\n unobserveSize () {\n if (!this.vscrollResizeObserver) return;\n if (!this.$_sizeObserved) return;\n this.vscrollResizeObserver.unobserve(returnFirstEl(this.$el));\n this.$el.$_vs_onResize = undefined;\n this.$_sizeObserved = false;\n },\n\n onResize (id, width, height) {\n if (this.id === id) {\n this.applyWidthHeight(width, height);\n }\n },\n },\n\n render () {\n return h(this.tag, this.$slots.default());\n },\n};\n</script>\n","<template>\n <core-scroller\n ref=\"scroller\"\n :items=\"itemsWithSize\"\n :min-item-size=\"minItemSize\"\n :direction=\"direction\"\n :key-field=\"keyField\"\n :list-tag=\"listTag\"\n :item-tag=\"itemTag\"\n v-bind=\"$attrs\"\n >\n <template\n #default=\"{ item: itemWithSize, index, active }\"\n >\n <dt-scroller-item\n :item=\"itemWithSize\"\n :active=\"active\"\n :size-dependencies=\"[\n itemWithSize.message,\n ]\"\n :data-index=\"index\"\n >\n <slot\n v-bind=\"{\n item: itemWithSize.item,\n index,\n active,\n itemWithSize,\n }\"\n />\n </dt-scroller-item>\n </template>\n </core-scroller>\n</template>\n\n<!-- eslint-disable-next-line max-len -->\n<!-- This is a code from external library (https://github.com/Akryum/vue-virtual-scroller/blob/master/packages/vue-virtual-scroller/src/components/DynamicScroller.vue)\nWe have modified it for our own specific use. -->\n<script>\nimport CoreScroller from './core_scroller.vue';\nimport DtScrollerItem from './scroller_item.vue';\nimport { returnFirstEl } from '@/common/utils';\n\nexport default {\n name: 'DynamicScroller',\n\n components: {\n CoreScroller,\n DtScrollerItem,\n },\n\n provide () {\n if (typeof ResizeObserver !== 'undefined') {\n this.$_resizeObserver = new ResizeObserver(entries => {\n requestAnimationFrame(() => {\n if (!Array.isArray(entries)) {\n return;\n }\n for (const entry of entries) {\n if (entry.target && entry.target.$_vs_onResize) {\n let width, height;\n if (entry.borderBoxSize) {\n const resizeObserverSize = entry.borderBoxSize[0];\n width = resizeObserverSize.inlineSize;\n height = resizeObserverSize.blockSize;\n } else {\n // @TODO remove when contentRect is deprecated\n width = entry.contentRect.width;\n height = entry.contentRect.height;\n }\n entry.target.$_vs_onResize(entry.target.$_vs_id, width, height);\n }\n }\n });\n });\n }\n\n return {\n vscrollData: this.vscrollData,\n vscrollParent: this,\n vscrollResizeObserver: this.$_resizeObserver,\n };\n },\n\n inheritAttrs: false,\n\n props: {\n /*\n * The items to render.\n * If the items are simple arrays, the index will be used as the key.\n * If the items are objects, the keyField will be used as the key.\n */\n items: {\n type: Array,\n required: true,\n },\n\n /*\n * Indicates if the items are dynamic.\n * If true, the items will be wrapped in a DtScrollerItem component.\n * This is required for dynamic items to be able to react to changes in their size.\n */\n dynamic: {\n type: Boolean,\n default: false,\n },\n\n /*\n * The key field to use for the items.\n * Only used if the items are objects.\n */\n keyField: {\n type: String,\n default: 'id',\n },\n\n /*\n * The direction of the scroller.\n * Can be either 'vertical' or 'horizontal'.\n */\n direction: {\n type: String,\n default: 'vertical',\n validator: (value) => ['vertical', 'horizontal'].includes(value),\n },\n\n /*\n * The tag to use for the list.\n */\n listTag: {\n type: String,\n default: 'div',\n },\n\n /*\n * The tag to use for the items.\n */\n itemTag: {\n type: String,\n default: 'div',\n },\n\n /*\n * Display height (or width in horizontal mode) of the items in pixels\n * used to calculate the scroll size and position.\n * Is required for the initial render of items in DYNAMIC size mode.\n */\n minItemSize: {\n type: [Number, String],\n },\n },\n\n data () {\n return {\n vscrollData: {\n active: true,\n sizes: {},\n keyField: this.keyField,\n simpleArray: false,\n },\n };\n },\n\n computed: {\n simpleArray () {\n return this.items.length && typeof this.items[0] !== 'object';\n },\n\n itemsWithSize () {\n const result = [];\n const { items, keyField, simpleArray } = this;\n const sizes = this.vscrollData.sizes;\n const l = items.length;\n for (let i = 0; i < l; i++) {\n const item = items[i];\n const id = simpleArray ? i : item[keyField];\n let size = sizes[id];\n if (typeof size === 'undefined' && !this.$_undefinedMap[id]) {\n size = 0;\n }\n result.push({\n item,\n [keyField]: id,\n size,\n });\n }\n return result;\n },\n },\n\n watch: {\n simpleArray: {\n handler (value) {\n this.vscrollData.simpleArray = value;\n },\n\n immediate: true,\n },\n\n itemsWithSize (next, prev) {\n const scrollTop = returnFirstEl(this.$el).scrollTop;\n\n // Calculate total diff between prev and next sizes\n // over current scroll top. Then add it to scrollTop to\n // avoid jumping the contents that the user is seeing.\n let prevActiveTop = 0; let activeTop = 0;\n const length = Math.min(next.length, prev.length);\n for (let i = 0; i < length; i++) {\n if (prevActiveTop >= scrollTop) {\n break;\n }\n prevActiveTop += prev[i].size || this.minItemSize;\n activeTop += next[i].size || this.minItemSize;\n }\n const offset = activeTop - prevActiveTop;\n\n if (offset === 0) {\n return;\n }\n\n returnFirstEl(this.$el).scrollTop += offset;\n },\n },\n\n beforeCreate () {\n this.$_updates = [];\n this.$_undefinedSizes = 0;\n this.$_undefinedMap = {};\n },\n\n activated () {\n this.vscrollData.active = true;\n },\n\n deactivated () {\n this.vscrollData.active = false;\n },\n\n methods: {\n dynamicScrollerUpdateItems () {\n const scroller = this.$refs.scroller;\n if (scroller) scroller._updateVisibleItems(true);\n },\n\n dynamicScrollerUpdateItemsFromBottom () {\n const scroller = this.$refs.scroller;\n if (scroller) scroller._updateVisibleItems(false, true);\n },\n\n scrollToItem (index) {\n const scroller = this.$refs.scroller;\n if (scroller) scroller.scrollToItem(index);\n },\n\n scrollToBottom () {\n if (this.$_scrollingToBottom) return;\n this.$_scrollingToBottom = true;\n const el = returnFirstEl(this.$el);\n // Item is inserted to the DOM\n this.$nextTick(() => {\n el.scrollTop = el.scrollHeight + 5000;\n // Item sizes are computed\n const cb = () => {\n el.scrollTop = el.scrollHeight + 5000;\n requestAnimationFrame(() => {\n el.scrollTop = el.scrollHeight + 5000;\n if (this.$_undefinedSizes === 0) {\n this.$_scrollingToBottom = false;\n } else {\n requestAnimationFrame(cb);\n }\n });\n };\n requestAnimationFrame(cb);\n });\n },\n },\n};\n</script>\n","<template>\n <component\n :is=\"dynamic ? DynamicScroller : CoreScroller\"\n ref=\"scroller\"\n data-qa=\"dt-scroller\"\n :items=\"items\"\n :item-size=\"itemSize\"\n :min-item-size=\"minItemSize\"\n :direction=\"direction\"\n :key-field=\"keyField\"\n :list-tag=\"listTag\"\n :item-tag=\"itemTag\"\n :style=\"computedStyle\"\n tabindex=\"0\"\n @user-position=\"$emit('user-position', $event)\"\n >\n <template\n #default=\"{ item, index, active }\"\n >\n <slot\n v-bind=\"{\n item: item,\n index,\n active,\n }\"\n />\n </template>\n </component>\n</template>\n\n<script setup>\nimport CoreScroller from './modules/core_scroller.vue';\nimport DynamicScroller from './modules/dynamic_scroller.vue';\nimport { provide, computed, watch, ref } from 'vue';\n\ndefineOptions({\n name: 'DtScroller',\n});\n\nconst props = defineProps({\n /**\n * The direction of the scroller.\n * @values vertical, horizontal\n */\n direction: {\n type: String,\n default: 'vertical',\n validator: (value) => ['vertical', 'horizontal'].includes(value),\n },\n\n /**\n * Indicates if the items need to react to changes in their size.\n * If disabled the itemSize prop is required and you will get improved performance.\n * If enabled the minItemSize prop is required and you\n * will have reduced performance but the ability to reactively size list items\n * @values true, false\n */\n dynamic: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Display height (or width in horizontal mode) of the items in pixels\n * used to calculate the scroll size and position.\n * Required if DYNAMIC is false\n */\n itemSize: {\n type: Number,\n default: null,\n },\n\n /**\n * The tag to use for the items.\n */\n itemTag: {\n type: String,\n default: 'div',\n },\n\n /**\n * The items to render.\n * If the items are simple arrays, the index will be used as the key.\n * If the items are objects, the keyField will be used as the key.\n * @example items: [ 'item1', 'item2', 'item3' ]\n * @example items: [ { id: 1, name: 'item1' }, { id: 2, name: 'item2' }, { id: 3, name: 'item3' } ]\n */\n items: {\n type: Array,\n required: true,\n },\n\n /**\n * The key field to use for the items.\n * If the items are objects, the scroller needs to be able to identify them.\n * By default it will look for an id field on the items.\n * This can be configured with this prop if you are using another field name.\n */\n keyField: {\n type: String,\n default: 'id',\n },\n\n /**\n * The tag to use for the list.\n */\n listTag: {\n type: String,\n default: 'div',\n },\n\n /**\n * Minimum size used if the height (or width in horizontal mode) of a item is unknown.\n * Is required for the initial render of items in DYNAMIC size mode.\n */\n minItemSize: {\n type: [Number, String],\n default: null,\n },\n\n /**\n * The height of the scroller.\n * Can be a number (in pixels) or a string (in CSS units).\n */\n scrollerHeight: {\n type: [String, Number],\n default: '100%',\n },\n\n /**\n * The width of the scroller.\n * Can be a number (in pixels) or a string (in CSS units).\n */\n scrollerWidth: {\n type: [String, Number],\n default: '100%',\n },\n});\n\nconst emits = defineEmits([\n /**\n * Describe when the scroller changes from start/middle/end\n * @param {string} position The position of the scroller.\n * @values start, middle, end\n */\n 'user-position',\n]);\n\nprovide('emit', emits);\n\nconst scroller = ref(null);\n\nconst computedStyle = computed(() => {\n return {\n width: typeof props.scrollerWidth === 'number' ? `${props.scrollerWidth}px` : props.scrollerWidth,\n height: typeof props.scrollerHeight === 'number' ? `${props.scrollerHeight}px` : props.scrollerHeight,\n };\n});\n\nwatch(props, () => {\n validateProps();\n}, { deep: true, immediate: true });\n\nfunction scrollToBottom () {\n if (scroller.value) scroller.value.scrollToBottom();\n}\n\nfunction scrollToItem (index) {\n if (scroller.value) scroller.value.scrollToItem(index);\n}\n\nfunction updateItems () {\n if (!scroller.value) return;\n if (props.dynamic) {\n scroller.value.dynamicScrollerUpdateItems();\n } else {\n scroller.value._updateVisibleItems(true);\n }\n}\n\nfunction updateItemsFromBottom () {\n if (!scroller.value) return;\n if (props.dynamic) {\n scroller.value.dynamicScrollerUpdateItemsFromBottom();\n } else {\n scroller.value._updateVisibleItems(false, true);\n }\n}\n\nfunction validateProps () {\n if (props.dynamic && !props.minItemSize) {\n console.error('scroller error: \\'minItemSize\\' is required on \\'dynamic\\' mode.');\n }\n\n if (!props.dynamic && !props.itemSize) {\n console.error('scroller error: \\'itemSize\\' is required.');\n }\n}\n\ndefineExpose({\n scrollToBottom,\n scrollToItem,\n updateItems,\n updateItemsFromBottom,\n});\n</script>\n"],"names":["props","__props","emit","__emit","views","reactive","unusedViews","pool","ref","hoverKey","ready","scroller","userPosition","endIndex","scrollDirty","lastUpdateScrollPosition","sortTimer","computedMinItemSize","totalSize","uid","sizes","computed","items","field","minItemSize","computedMinSize","accumulator","current","i","l","simpleArray","itemIndexByKey","result","watch","_updateVisibleItems","onMounted","nextTick","_addView","index","item","key","type","nr","markRaw","view","shallowReactive","_unuseView","fake","_unusedViews","unusedPool","_getScroll","isVertical","scrollState","_itemsLimitError","_sortViews","viewA","viewB","checkItem","checkPositionDiff","itemSize","keyField","count","_sizes","_views","_pool","_itemIndexByKey","_startIndex","_endIndex","_totalSize","scroll","positionDiff","_buffer","h","a","b","oldI","_a","_b","_c","_d","remainer","continuous","unusedIndex","v","_e","_f","_scrollToPosition","position","direction","viewport","scrollDirection","scrollToItem","handleScroll","container","__expose","_sfc_main","value","oldValue","returnFirstEl","oldSize","size","k","force","id","width","height","CoreScroller","DtScrollerItem","entries","entry","resizeObserverSize","next","prev","scrollTop","prevActiveTop","activeTop","length","offset","el","cb","_openBlock","_createBlock","_component_core_scroller","_mergeProps","$options","$props","_ctx","itemWithSize","active","_createVNode","_component_dt_scroller_item","_withCtx","_renderSlot","_normalizeProps","_guardReactiveProps","provide","computedStyle","validateProps","scrollToBottom","updateItems","updateItemsFromBottom"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scroller.js","sources":["../../../components/scroller/modules/core_scroller.vue","../../../components/scroller/modules/scroller_item.vue","../../../components/scroller/modules/dynamic_scroller.vue","../../../components/scroller/scroller.vue"],"sourcesContent":["<!-- eslint-disable max-len -->\n<template>\n <div\n ref=\"scroller\"\n class=\"vue-recycle-scroller\"\n :class=\"{\n ready,\n [`direction-${direction}`]: true,\n }\"\n @scroll.passive=\"handleScroll\"\n >\n <component\n :is=\"listTag\"\n ref=\"wrapper\"\n :style=\"{ [direction === 'vertical' ? 'minHeight' : 'minWidth']: `${totalSize}px` }\"\n class=\"vue-recycle-scroller__item-wrapper\"\n :class=\"listClass\"\n >\n <component\n :is=\"itemTag\"\n v-for=\"view in pool\"\n :key=\"view.nr.id\"\n :style=\"ready ? {\n transform: `translate${direction === 'vertical' ? 'Y' : 'X'}(${view.position}px) translate${direction === 'vertical' ? 'X' : 'Y'}(${view.offset}px)`,\n width: undefined,\n height: undefined,\n } : null\"\n class=\"vue-recycle-scroller__item-view\"\n :class=\"[\n itemClass,\n {\n hover: !skipHover && hoverKey === view.nr.key,\n },\n ]\"\n v-on=\"skipHover ? {} : {\n mouseenter: () => { hoverKey = view.nr.key },\n mouseleave: () => { hoverKey = null },\n }\"\n >\n <slot\n :item=\"view.item\"\n :index=\"view.nr.index\"\n :active=\"view.nr.used\"\n />\n </component>\n </component>\n </div>\n</template>\n\n<script setup>\n/*\nThis is a code from external library (https://github.com/Akryum/vue-virtual-scroller/blob/master/packages/vue-virtual-scroller/src/components/RecycleScroller.vue)\nWe have modified it for our own specific use.\n*/\nimport { computed, watch, markRaw, shallowReactive, onMounted, nextTick, reactive, ref } from 'vue';\n\nconst props = defineProps({\n /**\n * List of items you want to display in the scroller.\n */\n items: {\n type: Array,\n required: true,\n },\n\n /**\n *\n * Field used to identify items and optimize managing rendered views\n */\n keyField: {\n type: String,\n default: 'id',\n },\n\n /**\n * Direction of the scroller. Can be either `vertical` or `horizontal`.\n */\n direction: {\n type: String,\n default: 'vertical',\n validator: (value) => ['vertical', 'horizontal'].includes(value),\n },\n\n /**\n * Size of the items in the list.\n * If it is set to null (the default value), it will use variable size mode.\n */\n itemSize: {\n type: Number,\n default: null,\n },\n\n /**\n * Minimum size used if the height (or width in horizontal mode) of an item is unknown.\n */\n minItemSize: {\n type: [Number, String],\n default: null,\n },\n\n /**\n * Field used to get the item's size in variable size mode.\n */\n sizeField: {\n type: String,\n default: 'size',\n },\n\n /**\n * Amount of pixel to add to edges of the scrolling visible area to start rendering items further away.\n */\n buffer: {\n type: Number,\n default: 200,\n },\n\n /**\n * If true, the hover state will be skipped.\n * This can be useful if you want to use the hover state for other purposes.\n */\n skipHover: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The element to render as the list's wrapper.\n */\n listTag: {\n type: String,\n default: 'div',\n },\n\n /**\n * The element to render as the list item.\n */\n itemTag: {\n type: String,\n default: 'div',\n },\n\n /**\n * The custom classes added to the item list wrapper.\n */\n listClass: {\n type: [String, Object, Array],\n default: '',\n },\n\n /**\n * The custom classes added to each item.\n */\n itemClass: {\n type: [String, Object, Array],\n default: '',\n },\n});\n\nconst emit = defineEmits(['user-position']);\n\nconst views = reactive(new Map());\n// const reactiveItems = reactive(props.items);\nconst unusedViews = reactive(new Map());\nconst updateTimeout = null;\nconst pool = ref([]);\nconst hoverKey = ref(null);\nconst ready = ref(false);\nconst scroller = ref(null);\nconst userPosition = ref('top');\n\nlet startIndex = 0;\nlet endIndex = 0;\nlet scrollDirty = false;\nlet lastUpdateScrollPosition = 0;\nlet sortTimer = null;\nlet computedMinItemSize = null;\nlet totalSize = 0;\nlet uid = 0;\n\nconst sizes = computed(() => {\n if (props.itemSize === null) {\n const sizes = {\n '-1': { accumulator: 0 },\n };\n const items = props.items;\n const field = props.sizeField;\n const minItemSize = props.minItemSize;\n let computedMinSize = 10000;\n let accumulator = 0;\n let current;\n for (let i = 0, l = items.length; i < l; i++) {\n current = items[i][field] || minItemSize;\n if (current < computedMinSize) {\n computedMinSize = current;\n }\n accumulator += current;\n sizes[i] = { accumulator, size: current };\n }\n\n computedMinItemSize = computedMinSize;\n return sizes;\n }\n return [];\n});\n\nconst simpleArray = computed(() => {\n return props.items.length && typeof props.items[0] !== 'object';\n});\n\nconst itemIndexByKey = computed(() => {\n const result = {};\n for (let i = 0, l = props.items.length; i < l; i++) {\n result[props.items[i][props.keyField]] = i;\n }\n return result;\n});\n\n// watch(reactiveItems, () => {\n// // if add to the top\n// // _updateVisibleItems(true);\n// // if autoscrolling if add to the bottom\n// // _updateVisibleItems(false, true);\n// });\n\nwatch(sizes, () => {\n _updateVisibleItems(false);\n}, { deep: true });\n\nonMounted(() => {\n nextTick(() => {\n // In SSR mode, render the real number of visible items\n _updateVisibleItems(true);\n ready.value = true;\n });\n});\n\nconst _addView = (pool, index, item, key, type) => {\n const nr = markRaw({\n id: uid++,\n index,\n used: true,\n key,\n type,\n });\n const view = shallowReactive({\n item,\n position: 0,\n nr,\n });\n pool.value.push(view);\n return view;\n};\n\nconst _unuseView = (view, fake = false) => {\n const _unusedViews = unusedViews;\n const type = view.nr.type;\n let unusedPool = _unusedViews.get(type);\n if (!unusedPool) {\n unusedPool = [];\n _unusedViews.set(type, unusedPool);\n }\n unusedPool.push(view);\n if (!fake) {\n view.nr.used = false;\n view.position = -9999;\n }\n};\n\nconst _getScroll = () => {\n const isVertical = props.direction === 'vertical';\n let scrollState;\n\n if (isVertical) {\n scrollState = {\n start: scroller.value.scrollTop,\n end: scroller.value.scrollTop + scroller.value.clientHeight,\n };\n } else {\n scrollState = {\n start: scroller.value.scrollLeft,\n end: scroller.value.scrollLeft + scroller.value.clientWidth,\n };\n }\n\n return scrollState;\n};\n\nconst _itemsLimitError = () => {\n setTimeout(() => {\n // eslint-disable-next-line max-len\n console.error('It seems the scroller element isn\\'t scrolling, so it tries to render all the items at once.', 'Scroller:', scroller);\n // eslint-disable-next-line max-len\n console.error('Make sure the scroller has a fixed height (or width) and \\'overflow-y\\' (or \\'overflow-x\\') set to \\'auto\\' so it can scroll correctly and only render the items visible in the scroll viewport.');\n });\n throw new Error('Rendered items limit reached');\n};\n\nconst _sortViews = () => {\n pool.value.sort((viewA, viewB) => viewA.nr.index - viewB.nr.index);\n};\n\nconst _updateVisibleItems = (checkItem, checkPositionDiff = false) => {\n const itemSize = props.itemSize;\n const minItemSize = computedMinItemSize;\n const keyField = simpleArray.value ? null : props.keyField;\n const items = props.items;\n const count = items.length;\n const _sizes = sizes.value;\n const _views = views;\n const _unusedViews = unusedViews;\n const _pool = pool;\n const _itemIndexByKey = itemIndexByKey;\n let _startIndex, _endIndex;\n let _totalSize;\n let visibleStartIndex, visibleEndIndex;\n\n if (!count) {\n _startIndex = _endIndex = visibleStartIndex = visibleEndIndex = _totalSize = 0;\n } else {\n const scroll = _getScroll();\n\n // Skip update if use hasn't scrolled enough\n if (checkPositionDiff) {\n let positionDiff = scroll.start - lastUpdateScrollPosition.value;\n if (positionDiff < 0) positionDiff = -positionDiff;\n if ((itemSize === null && positionDiff < minItemSize.value) || positionDiff < itemSize) {\n return {\n continuous: true,\n };\n }\n }\n lastUpdateScrollPosition = scroll.start;\n\n const _buffer = props.buffer;\n scroll.start -= _buffer;\n scroll.end += _buffer;\n\n // Variable size mode\n if (itemSize === null) {\n let h;\n let a = 0;\n let b = count - 1;\n let i = ~~(count / 2);\n let oldI;\n\n // Searching for _startIndex\n do {\n oldI = i;\n h = _sizes[i]?.accumulator;\n if (h < scroll.start) {\n a = i;\n } else if (i < count - 1 && _sizes[i + 1]?.accumulator > scroll.start) {\n b = i;\n }\n i = ~~((a + b) / 2);\n } while (i !== oldI);\n i < 0 && (i = 0);\n _startIndex = i;\n\n // For container style\n _totalSize = _sizes[count - 1]?.accumulator;\n\n // Searching for _endIndex\n for (\n _endIndex = i;\n _endIndex < count && _sizes[_endIndex]?.accumulator < scroll.end;\n _endIndex++\n );\n\n if (_endIndex === -1) {\n _endIndex = items.length - 1;\n } else {\n _endIndex++;\n // Bounds\n _endIndex > count && (_endIndex = count);\n }\n\n // search visible _startIndex\n for (\n visibleStartIndex = startIndex;\n visibleStartIndex < count && (_sizes[visibleStartIndex]?.accumulator) < scroll.start;\n visibleStartIndex++\n );\n\n // search visible endIndex\n for (\n visibleEndIndex = visibleStartIndex;\n visibleEndIndex < count && (_sizes[visibleEndIndex]?.accumulator) < scroll.end;\n visibleEndIndex++\n );\n } else {\n // Fixed size mode\n _startIndex = ~~(scroll.start / itemSize);\n const remainer = _startIndex % 1;\n _startIndex -= remainer;\n _endIndex = Math.ceil(scroll.end / itemSize);\n visibleStartIndex = Math.max(0, Math.floor((scroll.start) / itemSize));\n visibleEndIndex = Math.floor((scroll.end) / itemSize);\n\n // Bounds\n _startIndex < 0 && (_startIndex = 0);\n _endIndex > count && (_endIndex = count);\n visibleStartIndex < 0 && (visibleStartIndex = 0);\n visibleEndIndex > count && (visibleEndIndex = count);\n\n _totalSize = Math.ceil(count / 1) * itemSize;\n }\n }\n\n // items limit 1000\n if (_endIndex - _startIndex > 1000) {\n _itemsLimitError();\n }\n\n totalSize = _totalSize;\n\n let view;\n\n const continuous = _startIndex <= endIndex && _endIndex >= _startIndex;\n\n // Unuse views that are no longer visible\n if (continuous) {\n for (let i = 0, l = _pool.value.length; i < l; i++) {\n view = _pool.value[i];\n if (view?.nr.used) {\n // Update view item index\n if (checkItem) {\n view.nr.index = _itemIndexByKey[view.item[keyField]];\n }\n\n // Check if index is still in visible range\n if (\n view.nr.index == null ||\n view.nr.index < _startIndex ||\n view.nr.index >= _endIndex\n ) {\n _unuseView(view);\n }\n }\n }\n }\n\n const unusedIndex = continuous ? null : new Map();\n\n let item, type;\n let v;\n for (let i = _startIndex; i < _endIndex; i++) {\n item = items[i];\n const key = keyField ? item?.[keyField] : item;\n\n if (key == null) {\n throw new Error(`Key is ${key} on item (keyField is '${keyField}')`);\n }\n view = _views.get(key);\n\n if (!itemSize && !_sizes[i]?.size) {\n if (view) _unuseView(view);\n continue;\n }\n\n type = item.type;\n\n let unusedPool = _unusedViews.get(type);\n // let newlyUsedView = false;\n\n // No view assigned to item\n if (!view) {\n if (continuous) {\n // Reuse existing view\n if (unusedPool && unusedPool.length) {\n view = unusedPool.pop();\n } else {\n view = _addView(_pool, i, item, key, type);\n }\n } else {\n // Use existing view\n // We don't care if they are already used\n // because we are not in continous scrolling\n v = unusedIndex.get(type) || 0;\n\n if (!unusedPool || v >= unusedPool.length) {\n view = _addView(_pool, i, item, key, type);\n _unuseView(view, true);\n unusedPool = _unusedViews.get(type);\n }\n\n view = unusedPool[v];\n unusedIndex.set(type, v + 1);\n }\n\n // Assign view to item\n _views.delete(view.nr.key);\n view.nr.used = true;\n view.nr.index = i;\n view.nr.key = key;\n view.nr.type = type;\n _views.set(key, view);\n\n // newlyUsedView = true;\n } else {\n // View already assigned to item\n if (!view.nr.used) {\n view.nr.used = true;\n // newlyUsedView = true;\n if (unusedPool) {\n const index = unusedPool.indexOf(view);\n if (index !== -1) unusedPool.splice(index, 1);\n }\n }\n }\n\n // Always set item in case it's a new object with the same key\n view.item = item;\n\n // if (newlyUsedView) {\n // if (items.length === 0) return;\n // if (i === items.length - 1) emit('scroll-end');\n // if (i === 0) emit('scroll-start');\n // }\n\n // Update position\n if (itemSize === null) {\n view.position = _sizes[i - 1]?.accumulator;\n view.offset = 0;\n } else {\n view.position = Math.floor(i) * itemSize;\n view.offset = (i % 1) * itemSize;\n }\n }\n\n startIndex = _startIndex;\n endIndex = _endIndex;\n\n // After the user has finished scrolling\n // Sort views so text selection is correct\n clearTimeout(sortTimer);\n sortTimer = setTimeout(_sortViews, 300);\n\n return {\n continuous,\n };\n};\n\nconst _scrollToPosition = (position) => {\n const direction = props.direction === 'vertical'\n ? { scroll: 'scrollTop', start: 'top' }\n : { scroll: 'scrollLeft', start: 'left' };\n\n const viewport = scroller.value;\n const scrollDirection = direction.scroll;\n\n viewport[scrollDirection] = position;\n};\n\nconst scrollToItem = (index) => {\n let scroll;\n if (props.itemSize === null) {\n scroll = index > 0 ? sizes.value[index - 1]?.accumulator : 0;\n } else {\n scroll = Math.floor(index) * props.itemSize;\n }\n _scrollToPosition(scroll);\n};\n\nconst handleScroll = () => {\n const container = scroller.value;\n\n if (userPosition.value !== 'middle') {\n userPosition.value = 'middle';\n emit('user-position', 'middle');\n }\n\n // Check if the scroll is at the top of the container\n if (container.scrollTop === 0) {\n userPosition.value = 'top';\n emit('user-position', 'top');\n }\n\n // Check if the scroll is at the bottom of the container\n if (container.scrollTop + container.clientHeight === container.scrollHeight) {\n userPosition.value = 'bottom';\n emit('user-position', 'bottom');\n }\n\n if (!scrollDirty) {\n scrollDirty = true;\n if (updateTimeout) return;\n\n const requestUpdate = () => requestAnimationFrame(() => {\n scrollDirty = false;\n _updateVisibleItems(false, true);\n });\n\n requestUpdate();\n }\n};\n\ndefineExpose({\n scrollToItem,\n _updateVisibleItems,\n});\n</script>\n","<script>\n/*\nThis is a code from external library (https://github.com/Akryum/vue-virtual-scroller/blob/master/packages/vue-virtual-scroller/src/components/DynamicScrollerItem.vue)\nWe have modified it for our own specific use.\n*/\nimport { h } from 'vue';\nimport { returnFirstEl } from '@/common/utils';\n\nexport default {\n name: 'DtScrollerItem',\n\n inject: [\n 'vscrollData',\n 'vscrollParent',\n 'vscrollResizeObserver',\n ],\n\n props: {\n // eslint-disable-next-line vue/require-prop-types\n item: {\n required: true,\n },\n\n watchData: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Indicates if the view is actively used to display an item.\n */\n active: {\n type: Boolean,\n required: true,\n },\n\n index: {\n type: Number,\n default: undefined,\n },\n\n sizeDependencies: {\n type: [Array, Object],\n default: null,\n },\n\n tag: {\n type: String,\n default: 'div',\n },\n },\n\n computed: {\n id () {\n if (this.vscrollData.simpleArray) return this.index;\n // eslint-disable-next-line no-prototype-builtins\n if (this.vscrollData.keyField in this.item) return this.item[this.vscrollData.keyField];\n throw new Error(`keyField '${this.vscrollData.keyField}' not found in your item. You should set a valid keyField prop on your Scroller`);\n },\n\n size () {\n return this.vscrollData.sizes[this.id] || 0;\n },\n\n finalActive () {\n return this.active && this.vscrollData.active;\n },\n },\n\n watch: {\n watchData: 'updateWatchData',\n\n id (value, oldValue) {\n returnFirstEl(this.$el).$_vs_id = this.id;\n if (!this.size) {\n this.onDataUpdate();\n }\n\n if (this.$_sizeObserved) {\n // In case the old item had the same size, it won't trigger the ResizeObserver\n // since we are reusing the same DOM node\n const oldSize = this.vscrollData.sizes[oldValue];\n const size = this.vscrollData.sizes[value];\n if (oldSize != null && oldSize !== size) {\n this.applySize(oldSize);\n }\n }\n },\n\n finalActive (value) {\n if (!this.size) {\n if (value) {\n if (!this.vscrollParent.$_undefinedMap[this.id]) {\n this.vscrollParent.$_undefinedSizes++;\n this.vscrollParent.$_undefinedMap[this.id] = true;\n }\n } else {\n if (this.vscrollParent.$_undefinedMap[this.id]) {\n this.vscrollParent.$_undefinedSizes--;\n this.vscrollParent.$_undefinedMap[this.id] = false;\n }\n }\n }\n\n if (this.vscrollResizeObserver) {\n if (value) {\n this.observeSize();\n } else {\n this.unobserveSize();\n }\n } else if (value && this.$_pendingVScrollUpdate === this.id) {\n this.updateSize();\n }\n },\n },\n\n created () {\n if (this.$isServer) return;\n\n this.$_forceNextVScrollUpdate = null;\n this.updateWatchData();\n\n if (!this.vscrollResizeObserver) {\n for (const k in this.sizeDependencies) {\n this.$watch(() => this.sizeDependencies[k], this.onDataUpdate);\n }\n }\n },\n\n mounted () {\n if (this.finalActive) {\n this.updateSize();\n this.observeSize();\n }\n },\n\n beforeUnmount () {\n this.unobserveSize();\n },\n\n methods: {\n updateSize () {\n if (this.finalActive) {\n if (this.$_pendingSizeUpdate !== this.id) {\n this.$_pendingSizeUpdate = this.id;\n this.$_forceNextVScrollUpdate = null;\n this.$_pendingVScrollUpdate = null;\n this.computeSize(this.id);\n }\n } else {\n this.$_forceNextVScrollUpdate = this.id;\n }\n },\n\n updateWatchData () {\n if (this.watchData && !this.vscrollResizeObserver) {\n this.$_watchData = this.$watch('item', () => {\n this.onDataUpdate();\n }, {\n deep: true,\n });\n } else if (this.$_watchData) {\n this.$_watchData();\n this.$_watchData = null;\n }\n },\n\n onVscrollUpdate ({ force }) {\n // If not active, sechedule a size update when it becomes active\n if (!this.finalActive && force) {\n this.$_pendingVScrollUpdate = this.id;\n }\n\n if (this.$_forceNextVScrollUpdate === this.id || force || !this.size) {\n this.updateSize();\n }\n },\n\n onDataUpdate () {\n this.updateSize();\n },\n\n computeSize (id) {\n this.$nextTick(() => {\n if (this.id === id) {\n const width = returnFirstEl(this.$el).offsetWidth;\n const height = returnFirstEl(this.$el).offsetHeight;\n this.applyWidthHeight(width, height);\n }\n this.$_pendingSizeUpdate = null;\n });\n },\n\n applyWidthHeight (width, height) {\n const size = ~~(this.vscrollParent.direction === 'vertical' ? height : width);\n if (size && this.size !== size) {\n this.applySize(size);\n }\n },\n\n applySize (size) {\n if (this.vscrollParent.$_undefinedMap[this.id]) {\n this.vscrollParent.$_undefinedSizes--;\n this.vscrollParent.$_undefinedMap[this.id] = undefined;\n }\n this.vscrollData.sizes[this.id] = size;\n },\n\n observeSize () {\n if (!this.vscrollResizeObserver) return;\n if (this.$_sizeObserved) return;\n this.vscrollResizeObserver.observe(returnFirstEl(this.$el));\n this.$el.$_vs_id = this.id;\n this.$el.$_vs_onResize = this.onResize;\n this.$_sizeObserved = true;\n },\n\n unobserveSize () {\n if (!this.vscrollResizeObserver) return;\n if (!this.$_sizeObserved) return;\n this.vscrollResizeObserver.unobserve(returnFirstEl(this.$el));\n this.$el.$_vs_onResize = undefined;\n this.$_sizeObserved = false;\n },\n\n onResize (id, width, height) {\n if (this.id === id) {\n this.applyWidthHeight(width, height);\n }\n },\n },\n\n render () {\n return h(this.tag, this.$slots.default());\n },\n};\n</script>\n","<template>\n <core-scroller\n ref=\"scroller\"\n :items=\"itemsWithSize\"\n :min-item-size=\"minItemSize\"\n :direction=\"direction\"\n :key-field=\"keyField\"\n :list-tag=\"listTag\"\n :item-tag=\"itemTag\"\n v-bind=\"$attrs\"\n >\n <template\n #default=\"{ item: itemWithSize, index, active }\"\n >\n <dt-scroller-item\n :item=\"itemWithSize\"\n :active=\"active\"\n :size-dependencies=\"[\n itemWithSize.message,\n ]\"\n :data-index=\"index\"\n >\n <slot\n v-bind=\"{\n item: itemWithSize.item,\n index,\n active,\n itemWithSize,\n }\"\n />\n </dt-scroller-item>\n </template>\n </core-scroller>\n</template>\n\n<!-- eslint-disable-next-line max-len -->\n<!-- This is a code from external library (https://github.com/Akryum/vue-virtual-scroller/blob/master/packages/vue-virtual-scroller/src/components/DynamicScroller.vue)\nWe have modified it for our own specific use. -->\n<script>\nimport CoreScroller from './core_scroller.vue';\nimport DtScrollerItem from './scroller_item.vue';\nimport { returnFirstEl } from '@/common/utils';\n\nexport default {\n name: 'DynamicScroller',\n\n components: {\n CoreScroller,\n DtScrollerItem,\n },\n\n provide () {\n if (typeof ResizeObserver !== 'undefined') {\n this.$_resizeObserver = new ResizeObserver(entries => {\n requestAnimationFrame(() => {\n if (!Array.isArray(entries)) {\n return;\n }\n for (const entry of entries) {\n if (entry.target && entry.target.$_vs_onResize) {\n let width, height;\n if (entry.borderBoxSize) {\n const resizeObserverSize = entry.borderBoxSize[0];\n width = resizeObserverSize.inlineSize;\n height = resizeObserverSize.blockSize;\n } else {\n // @TODO remove when contentRect is deprecated\n width = entry.contentRect.width;\n height = entry.contentRect.height;\n }\n entry.target.$_vs_onResize(entry.target.$_vs_id, width, height);\n }\n }\n });\n });\n }\n\n return {\n vscrollData: this.vscrollData,\n vscrollParent: this,\n vscrollResizeObserver: this.$_resizeObserver,\n };\n },\n\n inheritAttrs: false,\n\n props: {\n /*\n * The items to render.\n * If the items are simple arrays, the index will be used as the key.\n * If the items are objects, the keyField will be used as the key.\n */\n items: {\n type: Array,\n required: true,\n },\n\n /*\n * Indicates if the items are dynamic.\n * If true, the items will be wrapped in a DtScrollerItem component.\n * This is required for dynamic items to be able to react to changes in their size.\n */\n dynamic: {\n type: Boolean,\n default: false,\n },\n\n /*\n * The key field to use for the items.\n * Only used if the items are objects.\n */\n keyField: {\n type: String,\n default: 'id',\n },\n\n /*\n * The direction of the scroller.\n * Can be either 'vertical' or 'horizontal'.\n */\n direction: {\n type: String,\n default: 'vertical',\n validator: (value) => ['vertical', 'horizontal'].includes(value),\n },\n\n /*\n * The tag to use for the list.\n */\n listTag: {\n type: String,\n default: 'div',\n },\n\n /*\n * The tag to use for the items.\n */\n itemTag: {\n type: String,\n default: 'div',\n },\n\n /*\n * Display height (or width in horizontal mode) of the items in pixels\n * used to calculate the scroll size and position.\n * Is required for the initial render of items in DYNAMIC size mode.\n */\n minItemSize: {\n type: [Number, String],\n },\n },\n\n data () {\n return {\n vscrollData: {\n active: true,\n sizes: {},\n keyField: this.keyField,\n simpleArray: false,\n },\n };\n },\n\n computed: {\n simpleArray () {\n return this.items.length && typeof this.items[0] !== 'object';\n },\n\n itemsWithSize () {\n const result = [];\n const { items, keyField, simpleArray } = this;\n const sizes = this.vscrollData.sizes;\n const l = items.length;\n for (let i = 0; i < l; i++) {\n const item = items[i];\n const id = simpleArray ? i : item[keyField];\n let size = sizes[id];\n if (typeof size === 'undefined' && !this.$_undefinedMap[id]) {\n size = 0;\n }\n result.push({\n item,\n [keyField]: id,\n size,\n });\n }\n return result;\n },\n },\n\n watch: {\n simpleArray: {\n handler (value) {\n this.vscrollData.simpleArray = value;\n },\n\n immediate: true,\n },\n\n itemsWithSize (next, prev) {\n const scrollTop = returnFirstEl(this.$el).scrollTop;\n\n // Calculate total diff between prev and next sizes\n // over current scroll top. Then add it to scrollTop to\n // avoid jumping the contents that the user is seeing.\n let prevActiveTop = 0; let activeTop = 0;\n const length = Math.min(next.length, prev.length);\n for (let i = 0; i < length; i++) {\n if (prevActiveTop >= scrollTop) {\n break;\n }\n prevActiveTop += prev[i].size || this.minItemSize;\n activeTop += next[i].size || this.minItemSize;\n }\n const offset = activeTop - prevActiveTop;\n\n if (offset === 0) {\n return;\n }\n\n returnFirstEl(this.$el).scrollTop += offset;\n },\n },\n\n beforeCreate () {\n this.$_updates = [];\n this.$_undefinedSizes = 0;\n this.$_undefinedMap = {};\n },\n\n activated () {\n this.vscrollData.active = true;\n },\n\n deactivated () {\n this.vscrollData.active = false;\n },\n\n methods: {\n dynamicScrollerUpdateItems () {\n const scroller = this.$refs.scroller;\n if (scroller) scroller._updateVisibleItems(true);\n },\n\n dynamicScrollerUpdateItemsFromBottom () {\n const scroller = this.$refs.scroller;\n if (scroller) scroller._updateVisibleItems(false, true);\n },\n\n scrollToItem (index) {\n const scroller = this.$refs.scroller;\n if (scroller) scroller.scrollToItem(index);\n },\n\n scrollToBottom () {\n if (this.$_scrollingToBottom) return;\n this.$_scrollingToBottom = true;\n const el = returnFirstEl(this.$el);\n // Item is inserted to the DOM\n this.$nextTick(() => {\n el.scrollTop = el.scrollHeight + 5000;\n // Item sizes are computed\n const cb = () => {\n el.scrollTop = el.scrollHeight + 5000;\n requestAnimationFrame(() => {\n el.scrollTop = el.scrollHeight + 5000;\n if (this.$_undefinedSizes === 0) {\n this.$_scrollingToBottom = false;\n } else {\n requestAnimationFrame(cb);\n }\n });\n };\n requestAnimationFrame(cb);\n });\n },\n },\n};\n</script>\n","<template>\n <component\n :is=\"dynamic ? DynamicScroller : CoreScroller\"\n ref=\"scroller\"\n data-qa=\"dt-scroller\"\n :items=\"items\"\n :item-size=\"itemSize\"\n :min-item-size=\"minItemSize\"\n :direction=\"direction\"\n :key-field=\"keyField\"\n :list-tag=\"listTag\"\n :item-tag=\"itemTag\"\n :style=\"computedStyle\"\n tabindex=\"0\"\n @user-position=\"$emit('user-position', $event)\"\n >\n <template\n #default=\"{ item, index, active }\"\n >\n <slot\n v-bind=\"{\n item: item,\n index,\n active,\n }\"\n />\n </template>\n </component>\n</template>\n\n<script setup>\nimport CoreScroller from './modules/core_scroller.vue';\nimport DynamicScroller from './modules/dynamic_scroller.vue';\nimport { provide, computed, watch, ref } from 'vue';\n\ndefineOptions({\n name: 'DtScroller',\n});\n\nconst props = defineProps({\n /**\n * The direction of the scroller.\n * @values vertical, horizontal\n */\n direction: {\n type: String,\n default: 'vertical',\n validator: (value) => ['vertical', 'horizontal'].includes(value),\n },\n\n /**\n * Indicates if the items need to react to changes in their size.\n * If disabled the itemSize prop is required and you will get improved performance.\n * If enabled the minItemSize prop is required and you\n * will have reduced performance but the ability to reactively size list items\n * @values true, false\n */\n dynamic: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Display height (or width in horizontal mode) of the items in pixels\n * used to calculate the scroll size and position.\n * Required if DYNAMIC is false\n */\n itemSize: {\n type: Number,\n default: null,\n },\n\n /**\n * The tag to use for the items.\n */\n itemTag: {\n type: String,\n default: 'div',\n },\n\n /**\n * The items to render.\n * If the items are simple arrays, the index will be used as the key.\n * If the items are objects, the keyField will be used as the key.\n * @example items: [ 'item1', 'item2', 'item3' ]\n * @example items: [ { id: 1, name: 'item1' }, { id: 2, name: 'item2' }, { id: 3, name: 'item3' } ]\n */\n items: {\n type: Array,\n required: true,\n },\n\n /**\n * The key field to use for the items.\n * If the items are objects, the scroller needs to be able to identify them.\n * By default it will look for an id field on the items.\n * This can be configured with this prop if you are using another field name.\n */\n keyField: {\n type: String,\n default: 'id',\n },\n\n /**\n * The tag to use for the list.\n */\n listTag: {\n type: String,\n default: 'div',\n },\n\n /**\n * Minimum size used if the height (or width in horizontal mode) of a item is unknown.\n * Is required for the initial render of items in DYNAMIC size mode.\n */\n minItemSize: {\n type: [Number, String],\n default: null,\n },\n\n /**\n * The height of the scroller.\n * Can be a number (in pixels) or a string (in CSS units).\n */\n scrollerHeight: {\n type: [String, Number],\n default: '100%',\n },\n\n /**\n * The width of the scroller.\n * Can be a number (in pixels) or a string (in CSS units).\n */\n scrollerWidth: {\n type: [String, Number],\n default: '100%',\n },\n});\n\nconst emits = defineEmits([\n /**\n * Describe when the scroller changes from start/middle/end\n * @param {string} position The position of the scroller.\n * @values start, middle, end\n */\n 'user-position',\n]);\n\nprovide('emit', emits);\n\nconst scroller = ref(null);\n\nconst computedStyle = computed(() => {\n return {\n width: typeof props.scrollerWidth === 'number' ? `${props.scrollerWidth}px` : props.scrollerWidth,\n height: typeof props.scrollerHeight === 'number' ? `${props.scrollerHeight}px` : props.scrollerHeight,\n };\n});\n\nwatch(props, () => {\n validateProps();\n}, { deep: true, immediate: true });\n\nfunction scrollToBottom () {\n if (scroller.value) scroller.value.scrollToBottom();\n}\n\nfunction scrollToItem (index) {\n if (scroller.value) scroller.value.scrollToItem(index);\n}\n\nfunction updateItems () {\n if (!scroller.value) return;\n if (props.dynamic) {\n scroller.value.dynamicScrollerUpdateItems();\n } else {\n scroller.value._updateVisibleItems(true);\n }\n}\n\nfunction updateItemsFromBottom () {\n if (!scroller.value) return;\n if (props.dynamic) {\n scroller.value.dynamicScrollerUpdateItemsFromBottom();\n } else {\n scroller.value._updateVisibleItems(false, true);\n }\n}\n\nfunction validateProps () {\n if (props.dynamic && !props.minItemSize) {\n console.error('scroller error: \\'minItemSize\\' is required on \\'dynamic\\' mode.');\n }\n\n if (!props.dynamic && !props.itemSize) {\n console.error('scroller error: \\'itemSize\\' is required.');\n }\n}\n\ndefineExpose({\n scrollToBottom,\n scrollToItem,\n updateItems,\n updateItemsFromBottom,\n});\n</script>\n"],"names":["props","__props","emit","__emit","views","reactive","unusedViews","pool","ref","hoverKey","ready","scroller","userPosition","endIndex","scrollDirty","lastUpdateScrollPosition","sortTimer","computedMinItemSize","totalSize","uid","sizes","computed","items","field","minItemSize","computedMinSize","accumulator","current","i","l","simpleArray","itemIndexByKey","result","watch","_updateVisibleItems","onMounted","nextTick","_addView","index","item","key","type","nr","markRaw","view","shallowReactive","_unuseView","fake","_unusedViews","unusedPool","_getScroll","isVertical","scrollState","_itemsLimitError","_sortViews","viewA","viewB","checkItem","checkPositionDiff","itemSize","keyField","count","_sizes","_views","_pool","_itemIndexByKey","_startIndex","_endIndex","_totalSize","scroll","positionDiff","_buffer","h","a","b","oldI","_a","_b","_c","_d","remainer","continuous","unusedIndex","v","_e","_f","_scrollToPosition","position","direction","viewport","scrollDirection","scrollToItem","handleScroll","container","__expose","_sfc_main","value","oldValue","returnFirstEl","oldSize","size","k","force","id","width","height","CoreScroller","DtScrollerItem","entries","entry","resizeObserverSize","next","prev","scrollTop","prevActiveTop","activeTop","length","offset","el","cb","_openBlock","_createBlock","_component_core_scroller","_mergeProps","$options","$props","_ctx","itemWithSize","active","_createVNode","_component_dt_scroller_item","_withCtx","_renderSlot","_normalizeProps","_guardReactiveProps","provide","computedStyle","validateProps","scrollToBottom","updateItems","updateItemsFromBottom"],"mappings":"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"}
|
|
@@ -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,CACnC,GAAI,eACJ,GAAI,eACJ,GAAI,GACJ,GAAI,eACJ,GAAI,cACN,EAEaC,EAAyB,CACpC,MAAO,yBACP,QAAS,2BACT,QAAS,0BACX,
|
|
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,CACnC,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 +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,EACnC,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,
|
|
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,EACnC,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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-menu.cjs","sources":["../../../components/select_menu/select_menu.vue"],"sourcesContent":["<template>\n <div\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 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 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","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_openBlock","_createElementBlock","_normalizeProps","_guardReactiveProps","$options","_ctx","_createElementVNode","$data","$props","_mergeProps","_renderSlot","_createTextVNode","_toDisplayString","_createCommentVNode","_normalizeClass","_toHandlers","_Fragment","_renderList","option","_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 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 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 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","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_openBlock","_createElementBlock","_normalizeProps","_guardReactiveProps","$options","_ctx","_createElementVNode","$data","$props","_mergeProps","_renderSlot","_createTextVNode","_toDisplayString","_createCommentVNode","_normalizeClass","_toHandlers","_Fragment","_renderList","option","_createVNode","_component_dt_validation_messages"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
import { resolveComponent as f, createElementBlock as l, openBlock as i, normalizeProps as g, guardReactiveProps as y, createElementVNode as n, createVNode as C, createCommentVNode as u, mergeProps as r, renderSlot as c, createTextVNode as p, toDisplayString as m, normalizeClass as E, toHandlers as b, Fragment as _, renderList as I, warn as O } from "vue";
|
|
2
|
+
import { DESCRIPTION_SIZE_MODIFIERS as v, LABEL_SIZE_MODIFIERS as A } from "../../common/constants/index.js";
|
|
3
|
+
import { SELECT_STATE_MODIFIERS as D, SELECT_SIZE_MODIFIERS as S } from "./select-menu-constants.js";
|
|
4
|
+
import { addClassStyleAttrs as M, removeClassStyleAttrs as P, getUniqueString as L, getValidationState as R, hasSlotContent as T } from "../../common/utils/index.js";
|
|
5
5
|
import { MessagesMixin as V } from "../../common/mixins/input.js";
|
|
6
6
|
import { optionsValidator as F } from "./select-menu-validators.js";
|
|
7
7
|
import { _ as j } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
|
|
@@ -131,11 +131,11 @@ const k = {
|
|
|
131
131
|
],
|
|
132
132
|
data() {
|
|
133
133
|
return {
|
|
134
|
-
LABEL_SIZE_MODIFIERS:
|
|
135
|
-
DESCRIPTION_SIZE_MODIFIERS:
|
|
134
|
+
LABEL_SIZE_MODIFIERS: A,
|
|
135
|
+
DESCRIPTION_SIZE_MODIFIERS: v,
|
|
136
136
|
SELECT_SIZE_MODIFIERS: S,
|
|
137
137
|
SELECT_STATE_MODIFIERS: D,
|
|
138
|
-
hasSlotContent:
|
|
138
|
+
hasSlotContent: T
|
|
139
139
|
};
|
|
140
140
|
},
|
|
141
141
|
computed: {
|
|
@@ -152,7 +152,7 @@ const k = {
|
|
|
152
152
|
};
|
|
153
153
|
},
|
|
154
154
|
state() {
|
|
155
|
-
return
|
|
155
|
+
return R(this.formattedMessages);
|
|
156
156
|
},
|
|
157
157
|
selectKey() {
|
|
158
158
|
return L();
|
|
@@ -171,8 +171,8 @@ const k = {
|
|
|
171
171
|
this.validateOptionsPresence();
|
|
172
172
|
},
|
|
173
173
|
methods: {
|
|
174
|
-
removeClassStyleAttrs:
|
|
175
|
-
addClassStyleAttrs:
|
|
174
|
+
removeClassStyleAttrs: P,
|
|
175
|
+
addClassStyleAttrs: M,
|
|
176
176
|
emitValue(e, d) {
|
|
177
177
|
this.$emit("update:modelValue", e, d), this.$emit("input", e, d), this.$emit("change", e, d);
|
|
178
178
|
},
|
|
@@ -181,15 +181,15 @@ const k = {
|
|
|
181
181
|
},
|
|
182
182
|
validateOptionsPresence() {
|
|
183
183
|
var e;
|
|
184
|
-
((e = this.options) == null ? void 0 : e.length) < 1 && !this.$slots.default &&
|
|
184
|
+
((e = this.options) == null ? void 0 : e.length) < 1 && !this.$slots.default && O("Options are expected to be provided via prop or slot", this);
|
|
185
185
|
}
|
|
186
186
|
}
|
|
187
187
|
}, q = ["aria-details"], z = ["id"], N = ["disabled"], Z = ["value"];
|
|
188
188
|
function w(e, d, t, B, a, s) {
|
|
189
|
-
const h =
|
|
190
|
-
return
|
|
189
|
+
const h = f("dt-validation-messages");
|
|
190
|
+
return i(), l("div", g(y(s.addClassStyleAttrs(e.$attrs))), [
|
|
191
191
|
n("label", null, [
|
|
192
|
-
a.hasSlotContent(e.$slots.label) || t.label ? (
|
|
192
|
+
a.hasSlotContent(e.$slots.label) || t.label ? (i(), l("div", r({
|
|
193
193
|
key: 0,
|
|
194
194
|
"aria-details": s.labelAriaDetails,
|
|
195
195
|
class: [
|
|
@@ -199,10 +199,10 @@ function w(e, d, t, B, a, s) {
|
|
|
199
199
|
]
|
|
200
200
|
}, t.labelChildProps, { "data-qa": "dt-select-label" }), [
|
|
201
201
|
c(e.$slots, "label", {}, () => [
|
|
202
|
-
|
|
202
|
+
p(m(t.label), 1)
|
|
203
203
|
])
|
|
204
|
-
], 16, q)) :
|
|
205
|
-
a.hasSlotContent(e.$slots.description) || t.description ? (
|
|
204
|
+
], 16, q)) : u("", !0),
|
|
205
|
+
a.hasSlotContent(e.$slots.description) || t.description ? (i(), l("div", r({
|
|
206
206
|
key: 1,
|
|
207
207
|
id: s.descriptionKey,
|
|
208
208
|
class: [
|
|
@@ -212,9 +212,9 @@ function w(e, d, t, B, a, s) {
|
|
|
212
212
|
]
|
|
213
213
|
}, t.descriptionChildProps, { "data-qa": "dt-select-description" }), [
|
|
214
214
|
c(e.$slots, "description", {}, () => [
|
|
215
|
-
|
|
215
|
+
p(m(t.description), 1)
|
|
216
216
|
])
|
|
217
|
-
], 16, z)) :
|
|
217
|
+
], 16, z)) : u("", !0),
|
|
218
218
|
n("div", {
|
|
219
219
|
class: E([
|
|
220
220
|
"d-select",
|
|
@@ -235,7 +235,7 @@ function w(e, d, t, B, a, s) {
|
|
|
235
235
|
disabled: t.disabled
|
|
236
236
|
}, b(s.selectListeners, !0)), [
|
|
237
237
|
c(e.$slots, "default", {}, () => [
|
|
238
|
-
(
|
|
238
|
+
(i(!0), l(_, null, I(t.options, (o) => (i(), l("option", r({
|
|
239
239
|
key: s.getOptionKey(o.value),
|
|
240
240
|
value: o.value,
|
|
241
241
|
class: t.optionClass
|
|
@@ -244,7 +244,7 @@ function w(e, d, t, B, a, s) {
|
|
|
244
244
|
], 16, N)
|
|
245
245
|
], 2)
|
|
246
246
|
]),
|
|
247
|
-
|
|
247
|
+
C(h, r({
|
|
248
248
|
"validation-messages": e.formattedMessages,
|
|
249
249
|
"show-messages": e.showMessages,
|
|
250
250
|
class: e.messagesClass
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-menu.js","sources":["../../../components/select_menu/select_menu.vue"],"sourcesContent":["<template>\n <div\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 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 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","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_openBlock","_createElementBlock","_normalizeProps","_guardReactiveProps","$options","_ctx","_createElementVNode","$data","$props","_mergeProps","_renderSlot","_createTextVNode","_toDisplayString","_createCommentVNode","_normalizeClass","_toHandlers","_Fragment","_renderList","option","_createVNode","_component_dt_validation_messages"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"select-menu.js","sources":["../../../components/select_menu/select_menu.vue"],"sourcesContent":["<template>\n <div\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 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 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","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_openBlock","_createElementBlock","_normalizeProps","_guardReactiveProps","$options","_ctx","_createElementVNode","$data","$props","_mergeProps","_renderSlot","_createTextVNode","_toDisplayString","_createCommentVNode","_normalizeClass","_toHandlers","_Fragment","_renderList","option","_createVNode","_component_dt_validation_messages"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-menu-button.cjs","sources":["../../../recipes/header/settings_menu_button/settings_menu_button.vue"],"sourcesContent":["<template>\n <dt-button\n v-if=\"updateAvailable\"\n importance=\"outlined\"\n size=\"xs\"\n icon-position=\"right\"\n class=\"d-recipe-settings-menu-button-update\"\n :aria-label=\"ariaLabel\"\n v-bind=\"$attrs\"\n >\n <slot />\n <template #icon>\n <dt-icon-more-vertical\n size=\"300\"\n />\n </template>\n </dt-button>\n <dt-button\n v-else\n importance=\"clear\"\n kind=\"inverted\"\n class=\"d-recipe-settings-menu-button\"\n :aria-label=\"ariaLabel\"\n v-bind=\"$attrs\"\n >\n <template #icon>\n <dt-icon-more-vertical\n size=\"300\"\n />\n </template>\n </dt-button>\n</template>\n\n<script>\n/*\n * TODO (Dialtone 10): Localize this component as it'd be a breaking change localizing right now.\n */\nimport DtButton from '@/components/button/button.vue';\nimport { DtIconMoreVertical } from '@dialpad/dialtone-icons/vue3';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeSettingsMenuButton',\n\n components: {\n DtButton,\n DtIconMoreVertical,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Determines whether the button should display the update state\n * default is false\n * @values true, false\n */\n updateAvailable: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Aria label\n */\n ariaLabel: {\n type: String,\n required: true,\n },\n },\n\n};\n</script>\n"],"names":["_sfc_main","DtButton","DtIconMoreVertical","$props","_openBlock","_createBlock","_component_dt_button","_mergeProps","_ctx","_createVNode","_component_dt_icon_more_vertical","_withCtx","_renderSlot"],"mappings":"yQAwCKA,EAAU,CACb,aAAc,CAAE,KAAM,
|
|
1
|
+
{"version":3,"file":"settings-menu-button.cjs","sources":["../../../recipes/header/settings_menu_button/settings_menu_button.vue"],"sourcesContent":["<template>\n <dt-button\n v-if=\"updateAvailable\"\n importance=\"outlined\"\n size=\"xs\"\n icon-position=\"right\"\n class=\"d-recipe-settings-menu-button-update\"\n :aria-label=\"ariaLabel\"\n v-bind=\"$attrs\"\n >\n <slot />\n <template #icon>\n <dt-icon-more-vertical\n size=\"300\"\n />\n </template>\n </dt-button>\n <dt-button\n v-else\n importance=\"clear\"\n kind=\"inverted\"\n class=\"d-recipe-settings-menu-button\"\n :aria-label=\"ariaLabel\"\n v-bind=\"$attrs\"\n >\n <template #icon>\n <dt-icon-more-vertical\n size=\"300\"\n />\n </template>\n </dt-button>\n</template>\n\n<script>\n/*\n * TODO (Dialtone 10): Localize this component as it'd be a breaking change localizing right now.\n */\nimport DtButton from '@/components/button/button.vue';\nimport { DtIconMoreVertical } from '@dialpad/dialtone-icons/vue3';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeSettingsMenuButton',\n\n components: {\n DtButton,\n DtIconMoreVertical,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Determines whether the button should display the update state\n * default is false\n * @values true, false\n */\n updateAvailable: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Aria label\n */\n ariaLabel: {\n type: String,\n required: true,\n },\n },\n\n};\n</script>\n"],"names":["_sfc_main","DtButton","DtIconMoreVertical","$props","_openBlock","_createBlock","_component_dt_button","_mergeProps","_ctx","_createVNode","_component_dt_icon_more_vertical","_withCtx","_renderSlot"],"mappings":"yQAwCKA,EAAU,CACb,aAAc,CAAE,KAAM,GACtB,KAAM,6BAEN,WAAY,CACV,SAAAC,EAAAA,QACA,mBAAAC,EAAAA,oBAGF,aAAc,GAEd,MAAO,CAML,gBAAiB,CACf,KAAM,QACN,QAAS,IAMX,UAAW,CACT,KAAM,OACN,SAAU,IAIhB,uHArEUC,EAAA,iBADRC,EAAAA,YAAAC,EAAAA,YAeYC,EAfZC,aAeY,CAhBd,IAAA,EAGI,WAAW,WACX,KAAK,KACL,gBAAc,QACd,MAAM,uCACL,aAAYJ,EAAA,WACLK,EAAA,MAAM,EAAA,CAGH,eACT,IAEE,CAFFC,EAAAA,YAEEC,EAAA,CADA,KAAK,KAAK,CAAA,IAblB,QAAAC,EAAAA,QAUI,IAAQ,CAARC,aAAQJ,EAAA,OAAA,SAAA,IAVZ,EAAA,wBAiBEJ,EAAAA,YAAAC,EAAAA,YAaYC,EAbZC,aAaY,CA9Bd,IAAA,EAmBI,WAAW,QACX,KAAK,WACL,MAAM,gCACL,aAAYJ,EAAA,WACLK,EAAA,MAAM,EAAA,CAEH,eACT,IAEE,CAFFC,EAAAA,YAEEC,EAAA,CADA,KAAK,KAAK,CAAA,IA3BlB,EAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import p from "../button/button.js";
|
|
2
2
|
import { DtIconMoreVertical as u } from "@dialpad/dialtone-icons/vue3";
|
|
3
|
-
import { resolveComponent as r,
|
|
3
|
+
import { resolveComponent as r, createBlock as i, openBlock as s, mergeProps as l, withCtx as o, renderSlot as m, createVNode as c } from "vue";
|
|
4
4
|
import { _ as d } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
|
|
5
5
|
const _ = {
|
|
6
6
|
compatConfig: { MODE: 3 },
|
|
@@ -31,7 +31,7 @@ const _ = {
|
|
|
31
31
|
};
|
|
32
32
|
function f(e, b, t, g, v, k) {
|
|
33
33
|
const a = r("dt-icon-more-vertical"), n = r("dt-button");
|
|
34
|
-
return t.updateAvailable ? (
|
|
34
|
+
return t.updateAvailable ? (s(), i(n, l({
|
|
35
35
|
key: 0,
|
|
36
36
|
importance: "outlined",
|
|
37
37
|
size: "xs",
|
|
@@ -46,7 +46,7 @@ function f(e, b, t, g, v, k) {
|
|
|
46
46
|
m(e.$slots, "default")
|
|
47
47
|
]),
|
|
48
48
|
_: 3
|
|
49
|
-
}, 16, ["aria-label"])) : (
|
|
49
|
+
}, 16, ["aria-label"])) : (s(), i(n, l({
|
|
50
50
|
key: 1,
|
|
51
51
|
importance: "clear",
|
|
52
52
|
kind: "inverted",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-menu-button.js","sources":["../../../recipes/header/settings_menu_button/settings_menu_button.vue"],"sourcesContent":["<template>\n <dt-button\n v-if=\"updateAvailable\"\n importance=\"outlined\"\n size=\"xs\"\n icon-position=\"right\"\n class=\"d-recipe-settings-menu-button-update\"\n :aria-label=\"ariaLabel\"\n v-bind=\"$attrs\"\n >\n <slot />\n <template #icon>\n <dt-icon-more-vertical\n size=\"300\"\n />\n </template>\n </dt-button>\n <dt-button\n v-else\n importance=\"clear\"\n kind=\"inverted\"\n class=\"d-recipe-settings-menu-button\"\n :aria-label=\"ariaLabel\"\n v-bind=\"$attrs\"\n >\n <template #icon>\n <dt-icon-more-vertical\n size=\"300\"\n />\n </template>\n </dt-button>\n</template>\n\n<script>\n/*\n * TODO (Dialtone 10): Localize this component as it'd be a breaking change localizing right now.\n */\nimport DtButton from '@/components/button/button.vue';\nimport { DtIconMoreVertical } from '@dialpad/dialtone-icons/vue3';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeSettingsMenuButton',\n\n components: {\n DtButton,\n DtIconMoreVertical,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Determines whether the button should display the update state\n * default is false\n * @values true, false\n */\n updateAvailable: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Aria label\n */\n ariaLabel: {\n type: String,\n required: true,\n },\n },\n\n};\n</script>\n"],"names":["_sfc_main","DtButton","DtIconMoreVertical","$props","_openBlock","_createBlock","_component_dt_button","_mergeProps","_ctx","_createVNode","_component_dt_icon_more_vertical","_withCtx","_renderSlot"],"mappings":";;;;AAwCA,MAAKA,IAAU;AAAA,EACb,cAAc,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"settings-menu-button.js","sources":["../../../recipes/header/settings_menu_button/settings_menu_button.vue"],"sourcesContent":["<template>\n <dt-button\n v-if=\"updateAvailable\"\n importance=\"outlined\"\n size=\"xs\"\n icon-position=\"right\"\n class=\"d-recipe-settings-menu-button-update\"\n :aria-label=\"ariaLabel\"\n v-bind=\"$attrs\"\n >\n <slot />\n <template #icon>\n <dt-icon-more-vertical\n size=\"300\"\n />\n </template>\n </dt-button>\n <dt-button\n v-else\n importance=\"clear\"\n kind=\"inverted\"\n class=\"d-recipe-settings-menu-button\"\n :aria-label=\"ariaLabel\"\n v-bind=\"$attrs\"\n >\n <template #icon>\n <dt-icon-more-vertical\n size=\"300\"\n />\n </template>\n </dt-button>\n</template>\n\n<script>\n/*\n * TODO (Dialtone 10): Localize this component as it'd be a breaking change localizing right now.\n */\nimport DtButton from '@/components/button/button.vue';\nimport { DtIconMoreVertical } from '@dialpad/dialtone-icons/vue3';\n\nexport default {\n compatConfig: { MODE: 3 },\n name: 'DtRecipeSettingsMenuButton',\n\n components: {\n DtButton,\n DtIconMoreVertical,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Determines whether the button should display the update state\n * default is false\n * @values true, false\n */\n updateAvailable: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Aria label\n */\n ariaLabel: {\n type: String,\n required: true,\n },\n },\n\n};\n</script>\n"],"names":["_sfc_main","DtButton","DtIconMoreVertical","$props","_openBlock","_createBlock","_component_dt_button","_mergeProps","_ctx","_createVNode","_component_dt_icon_more_vertical","_withCtx","_renderSlot"],"mappings":";;;;AAwCA,MAAKA,IAAU;AAAA,EACb,cAAc,EAAE,MAAM;EACtB,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,UAAAC;AAAA,IACA,oBAAAC;AAAA;EAGF,cAAc;AAAA,EAEd,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAML,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,SAAS;AAAA;;;;IAMX,WAAW;AAAA,MACT,MAAM;AAAA,MACN,UAAU;AAAA;;AAIhB;;;SArEUC,EAAA,mBADRC,KAAAC,EAeYC,GAfZC,EAeY;AAAA,IAhBd,KAAA;AAAA,IAGI,YAAW;AAAA,IACX,MAAK;AAAA,IACL,iBAAc;AAAA,IACd,OAAM;AAAA,IACL,cAAYJ,EAAA;AAAA,KACLK,EAAA,MAAM,GAAA;AAAA,IAGH,QACT,MAEE;AAAA,MAFFC,EAEEC,GAAA,EADA,MAAK,MAAK,CAAA;AAAA;IAblB,SAAAC,EAUI,MAAQ;AAAA,MAARC,EAAQJ,EAAA,QAAA,SAAA;AAAA;IAVZ,GAAA;AAAA,6BAiBEJ,KAAAC,EAaYC,GAbZC,EAaY;AAAA,IA9Bd,KAAA;AAAA,IAmBI,YAAW;AAAA,IACX,MAAK;AAAA,IACL,OAAM;AAAA,IACL,cAAYJ,EAAA;AAAA,KACLK,EAAA,MAAM,GAAA;AAAA,IAEH,QACT,MAEE;AAAA,MAFFC,EAEEC,GAAA,EADA,MAAK,MAAK,CAAA;AAAA;IA3BlB,GAAA;AAAA;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skeleton-constants.cjs","sources":["../../../components/skeleton/skeleton_constants.js"],"sourcesContent":["// NOTE: RippleDuration controls how long the delay is for the animation\n// of a skeleton 1000 pixels from the top of the page. Each skeleton\n// from the top down will have a delay duration from 0 to this offset.\n// The delay of each skeleton animation is based on how far down the page\n// the skeleton is rendered. This is a linear relationship. The unit\n// is miliseconds.\nexport const SKELETON_RIPPLE_DURATION = 3000000;\n\nexport const SKELETON_SHAPES = {\n circle: 'd-bar-circle',\n square: 'd-bar2',\n};\n\nexport const SKELETON_TEXT_TYPES = [\n 'body',\n 'heading',\n];\n\nexport const SKELETON_SHAPE_SIZES = {\n sm: '24px',\n md: '32px',\n lg: '48px',\n};\n\nexport const SKELETON_HEADING_HEIGHTS = {\n sm: 'd-h16',\n md: 'd-h24',\n lg: 'd-h32',\n};\n\nexport default {\n SKELETON_RIPPLE_DURATION,\n SKELETON_SHAPES,\n SKELETON_TEXT_TYPES,\n SKELETON_HEADING_HEIGHTS,\n};\n"],"names":["SKELETON_RIPPLE_DURATION","SKELETON_SHAPES","SKELETON_TEXT_TYPES","SKELETON_SHAPE_SIZES","SKELETON_HEADING_HEIGHTS","skeleton_constants"],"mappings":"4GAMY,MAACA,EAA2B,IAE3BC,EAAkB,CAC7B,OAAQ,eACR,OAAQ,QACV,EAEaC,EAAsB,CACjC,OACA,SACF,EAEaC,EAAuB,CAClC,GAAI,OACJ,GAAI,OACJ,GAAI,MACN,EAEaC,EAA2B,CACtC,GAAI,QACJ,GAAI,QACJ,GAAI,OACN,
|
|
1
|
+
{"version":3,"file":"skeleton-constants.cjs","sources":["../../../components/skeleton/skeleton_constants.js"],"sourcesContent":["// NOTE: RippleDuration controls how long the delay is for the animation\n// of a skeleton 1000 pixels from the top of the page. Each skeleton\n// from the top down will have a delay duration from 0 to this offset.\n// The delay of each skeleton animation is based on how far down the page\n// the skeleton is rendered. This is a linear relationship. The unit\n// is miliseconds.\nexport const SKELETON_RIPPLE_DURATION = 3000000;\n\nexport const SKELETON_SHAPES = {\n circle: 'd-bar-circle',\n square: 'd-bar2',\n};\n\nexport const SKELETON_TEXT_TYPES = [\n 'body',\n 'heading',\n];\n\nexport const SKELETON_SHAPE_SIZES = {\n sm: '24px',\n md: '32px',\n lg: '48px',\n};\n\nexport const SKELETON_HEADING_HEIGHTS = {\n sm: 'd-h16',\n md: 'd-h24',\n lg: 'd-h32',\n};\n\nexport default {\n SKELETON_RIPPLE_DURATION,\n SKELETON_SHAPES,\n SKELETON_TEXT_TYPES,\n SKELETON_HEADING_HEIGHTS,\n};\n"],"names":["SKELETON_RIPPLE_DURATION","SKELETON_SHAPES","SKELETON_TEXT_TYPES","SKELETON_SHAPE_SIZES","SKELETON_HEADING_HEIGHTS","skeleton_constants"],"mappings":"4GAMY,MAACA,EAA2B,IAE3BC,EAAkB,CAC7B,OAAQ,eACR,OAAQ,QACV,EAEaC,EAAsB,CACjC,OACA,SACF,EAEaC,EAAuB,CAClC,GAAI,OACJ,GAAI,OACJ,GAAI,MACN,EAEaC,EAA2B,CACtC,GAAI,QACJ,GAAI,QACJ,GAAI,OACN,EAEAC,EAAe,CACb,yBAAAL,EACA,gBAAAC,EACA,oBAAAC,EACA,yBAAAE,CACF"}
|