@dialpad/dialtone-vue 2.159.0-beta.1 → 2.159.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/common/sr_only_close_button.vue.cjs +3 -3
- package/dist/common/sr_only_close_button.vue.cjs.map +1 -1
- package/dist/common/sr_only_close_button.vue.js +3 -3
- package/dist/common/sr_only_close_button.vue.js.map +1 -1
- package/dist/component-documentation.json +1 -1
- package/dist/components/badge/badge.vue.cjs +34 -13
- package/dist/components/badge/badge.vue.cjs.map +1 -1
- package/dist/components/badge/badge.vue.js +34 -13
- package/dist/components/badge/badge.vue.js.map +1 -1
- package/dist/components/chip/chip.vue.cjs +4 -4
- package/dist/components/chip/chip.vue.cjs.map +1 -1
- package/dist/components/chip/chip.vue.js +4 -4
- package/dist/components/chip/chip.vue.js.map +1 -1
- package/dist/components/collapsible/collapsible.vue.cjs +3 -4
- package/dist/components/collapsible/collapsible.vue.cjs.map +1 -1
- package/dist/components/collapsible/collapsible.vue.js +3 -4
- package/dist/components/collapsible/collapsible.vue.js.map +1 -1
- package/dist/components/datepicker/modules/month-year-picker.vue.cjs +6 -14
- package/dist/components/datepicker/modules/month-year-picker.vue.cjs.map +1 -1
- package/dist/components/datepicker/modules/month-year-picker.vue.js +6 -14
- package/dist/components/datepicker/modules/month-year-picker.vue.js.map +1 -1
- package/dist/components/emoji_picker/modules/emoji_search.vue.cjs +5 -6
- package/dist/components/emoji_picker/modules/emoji_search.vue.cjs.map +1 -1
- package/dist/components/emoji_picker/modules/emoji_search.vue.js +5 -6
- package/dist/components/emoji_picker/modules/emoji_search.vue.js.map +1 -1
- package/dist/components/emoji_picker/modules/emoji_tabset.vue.cjs +14 -23
- package/dist/components/emoji_picker/modules/emoji_tabset.vue.cjs.map +1 -1
- package/dist/components/emoji_picker/modules/emoji_tabset.vue.js +14 -23
- package/dist/components/emoji_picker/modules/emoji_tabset.vue.js.map +1 -1
- package/dist/components/empty_state/empty_state.vue.cjs +80 -20
- package/dist/components/empty_state/empty_state.vue.cjs.map +1 -1
- package/dist/components/empty_state/empty_state.vue.js +81 -21
- package/dist/components/empty_state/empty_state.vue.js.map +1 -1
- package/dist/components/empty_state/empty_state_constants.cjs +0 -18
- package/dist/components/empty_state/empty_state_constants.cjs.map +1 -1
- package/dist/components/empty_state/empty_state_constants.js +0 -18
- package/dist/components/empty_state/empty_state_constants.js.map +1 -1
- package/dist/components/illustration/illustration.vue.cjs +2 -2
- package/dist/components/illustration/illustration.vue.js +2 -2
- package/dist/components/image_viewer/image_viewer.vue.cjs +4 -4
- package/dist/components/image_viewer/image_viewer.vue.cjs.map +1 -1
- package/dist/components/image_viewer/image_viewer.vue.js +4 -4
- package/dist/components/image_viewer/image_viewer.vue.js.map +1 -1
- package/dist/components/keyboard_shortcut/keyboard_shortcut.vue.cjs +9 -24
- package/dist/components/keyboard_shortcut/keyboard_shortcut.vue.cjs.map +1 -1
- package/dist/components/keyboard_shortcut/keyboard_shortcut.vue.js +7 -22
- package/dist/components/keyboard_shortcut/keyboard_shortcut.vue.js.map +1 -1
- package/dist/components/keyboard_shortcut/keyboard_shortcut_constants.cjs +14 -8
- package/dist/components/keyboard_shortcut/keyboard_shortcut_constants.cjs.map +1 -1
- package/dist/components/keyboard_shortcut/keyboard_shortcut_constants.js +15 -9
- package/dist/components/keyboard_shortcut/keyboard_shortcut_constants.js.map +1 -1
- package/dist/components/list_item/list_item.vue.cjs +3 -3
- package/dist/components/list_item/list_item.vue.cjs.map +1 -1
- package/dist/components/list_item/list_item.vue.js +3 -3
- package/dist/components/list_item/list_item.vue.js.map +1 -1
- package/dist/components/modal/modal.vue.cjs +4 -4
- package/dist/components/modal/modal.vue.cjs.map +1 -1
- package/dist/components/modal/modal.vue.js +4 -4
- package/dist/components/modal/modal.vue.js.map +1 -1
- package/dist/components/notice/notice_action.vue.cjs +4 -4
- package/dist/components/notice/notice_action.vue.cjs.map +1 -1
- package/dist/components/notice/notice_action.vue.js +4 -4
- package/dist/components/notice/notice_action.vue.js.map +1 -1
- package/dist/components/notice/notice_icon.vue.cjs +8 -12
- package/dist/components/notice/notice_icon.vue.cjs.map +1 -1
- package/dist/components/notice/notice_icon.vue.js +8 -12
- package/dist/components/notice/notice_icon.vue.js.map +1 -1
- package/dist/components/pagination/pagination.vue.cjs +5 -11
- package/dist/components/pagination/pagination.vue.cjs.map +1 -1
- package/dist/components/pagination/pagination.vue.js +5 -11
- package/dist/components/pagination/pagination.vue.js.map +1 -1
- package/dist/components/popover/popover_header_footer.vue.cjs +4 -4
- package/dist/components/popover/popover_header_footer.vue.cjs.map +1 -1
- package/dist/components/popover/popover_header_footer.vue.js +4 -4
- package/dist/components/popover/popover_header_footer.vue.js.map +1 -1
- package/dist/dialtone-vue.cjs +3 -0
- package/dist/dialtone-vue.cjs.map +1 -1
- package/dist/dialtone-vue.js +5 -2
- package/dist/directives/scrollbar/scrollbar.cjs.map +1 -1
- package/dist/directives/scrollbar/scrollbar.js.map +1 -1
- package/dist/lib/general-row.cjs +1 -0
- package/dist/lib/general-row.cjs.map +1 -1
- package/dist/lib/general-row.js +2 -1
- package/dist/lib/keyboard-shortcut.cjs +2 -0
- package/dist/lib/keyboard-shortcut.cjs.map +1 -1
- package/dist/lib/keyboard-shortcut.js +4 -2
- package/dist/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.cjs +5 -5
- package/dist/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.cjs.map +1 -1
- package/dist/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.js +5 -5
- package/dist/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.js.map +1 -1
- package/dist/recipes/cards/ivr_node/ivr_node.vue.cjs +5 -25
- package/dist/recipes/cards/ivr_node/ivr_node.vue.cjs.map +1 -1
- package/dist/recipes/cards/ivr_node/ivr_node.vue.js +6 -26
- package/dist/recipes/cards/ivr_node/ivr_node.vue.js.map +1 -1
- package/dist/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs +19 -6
- package/dist/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.cjs.map +1 -1
- package/dist/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js +19 -6
- package/dist/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.js.map +1 -1
- package/dist/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.cjs +4 -5
- package/dist/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.cjs.map +1 -1
- package/dist/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.js +4 -5
- package/dist/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.js.map +1 -1
- package/dist/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.cjs +3 -3
- package/dist/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.cjs.map +1 -1
- package/dist/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.js +3 -3
- package/dist/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.js.map +1 -1
- package/dist/recipes/conversation_view/editor/editor.vue.cjs +22 -35
- package/dist/recipes/conversation_view/editor/editor.vue.cjs.map +1 -1
- package/dist/recipes/conversation_view/editor/editor.vue.js +22 -35
- package/dist/recipes/conversation_view/editor/editor.vue.js.map +1 -1
- package/dist/recipes/conversation_view/message_input/meeting_pill/MeetingPill.vue.cjs +3 -3
- package/dist/recipes/conversation_view/message_input/meeting_pill/MeetingPill.vue.cjs.map +1 -1
- package/dist/recipes/conversation_view/message_input/meeting_pill/MeetingPill.vue.js +3 -3
- package/dist/recipes/conversation_view/message_input/meeting_pill/MeetingPill.vue.js.map +1 -1
- package/dist/recipes/header/settings_menu_button/settings_menu_button.vue.cjs +6 -6
- package/dist/recipes/header/settings_menu_button/settings_menu_button.vue.cjs.map +1 -1
- package/dist/recipes/header/settings_menu_button/settings_menu_button.vue.js +6 -6
- package/dist/recipes/header/settings_menu_button/settings_menu_button.vue.js.map +1 -1
- package/dist/recipes/leftbar/general_row/general_row.vue.cjs +7 -8
- package/dist/recipes/leftbar/general_row/general_row.vue.cjs.map +1 -1
- package/dist/recipes/leftbar/general_row/general_row.vue.js +7 -8
- package/dist/recipes/leftbar/general_row/general_row.vue.js.map +1 -1
- package/dist/recipes/leftbar/general_row/general_row_constants.cjs +17 -0
- package/dist/recipes/leftbar/general_row/general_row_constants.cjs.map +1 -1
- package/dist/recipes/leftbar/general_row/general_row_constants.js +17 -0
- package/dist/recipes/leftbar/general_row/general_row_constants.js.map +1 -1
- package/dist/recipes/leftbar/general_row/leftbar_general_row_icon.vue.cjs +4 -36
- package/dist/recipes/leftbar/general_row/leftbar_general_row_icon.vue.cjs.map +1 -1
- package/dist/recipes/leftbar/general_row/leftbar_general_row_icon.vue.js +5 -37
- package/dist/recipes/leftbar/general_row/leftbar_general_row_icon.vue.js.map +1 -1
- package/dist/recipes/leftbar/group_row/group_row.vue.cjs +3 -3
- package/dist/recipes/leftbar/group_row/group_row.vue.cjs.map +1 -1
- package/dist/recipes/leftbar/group_row/group_row.vue.js +3 -3
- package/dist/recipes/leftbar/group_row/group_row.vue.js.map +1 -1
- package/dist/recipes/leftbar/unread_pill/unread_pill.vue.cjs +3 -4
- package/dist/recipes/leftbar/unread_pill/unread_pill.vue.cjs.map +1 -1
- package/dist/recipes/leftbar/unread_pill/unread_pill.vue.js +3 -4
- package/dist/recipes/leftbar/unread_pill/unread_pill.vue.js.map +1 -1
- package/dist/style.css +70 -70
- package/dist/types/common/sr_only_close_button.vue.d.ts +1 -1
- package/dist/types/components/avatar/avatar.vue.d.ts +1 -1
- package/dist/types/components/badge/badge.vue.d.ts +46 -17
- package/dist/types/components/badge/badge.vue.d.ts.map +1 -1
- package/dist/types/components/banner/banner.vue.d.ts +1 -1
- package/dist/types/components/breadcrumbs/breadcrumb_item.vue.d.ts +1 -1
- package/dist/types/components/breadcrumbs/breadcrumbs.vue.d.ts +1 -1
- package/dist/types/components/button/button.vue.d.ts +1 -1
- package/dist/types/components/button_group/button_group.vue.d.ts +1 -1
- package/dist/types/components/button_group/buttons_decorator.vue.d.ts +1 -1
- package/dist/types/components/card/card.vue.d.ts +1 -1
- package/dist/types/components/checkbox/checkbox.vue.d.ts +1 -1
- package/dist/types/components/checkbox_group/checkbox_group.vue.d.ts +3 -3
- package/dist/types/components/checkbox_group/checkboxes_decorator.vue.d.ts +1 -1
- package/dist/types/components/chip/chip.vue.d.ts +1 -1
- package/dist/types/components/codeblock/codeblock.vue.d.ts +1 -1
- package/dist/types/components/collapsible/collapsible.vue.d.ts +1 -1
- package/dist/types/components/collapsible/collapsible.vue.d.ts.map +1 -1
- package/dist/types/components/collapsible/collapsible_lazy_show.vue.d.ts +1 -1
- package/dist/types/components/combobox/combobox.vue.d.ts +1 -1
- package/dist/types/components/combobox/combobox_empty-list.vue.d.ts +1 -1
- package/dist/types/components/combobox/combobox_loading-list.vue.d.ts +1 -1
- package/dist/types/components/datepicker/datepicker.vue.d.ts +1 -1
- package/dist/types/components/datepicker/modules/calendar.vue.d.ts +1 -1
- package/dist/types/components/datepicker/modules/month-year-picker.vue.d.ts +1 -1
- package/dist/types/components/description_list/description_list.vue.d.ts +1 -1
- package/dist/types/components/dropdown/dropdown.vue.d.ts +2 -2
- package/dist/types/components/dropdown/dropdown_list.vue.d.ts +1 -1
- package/dist/types/components/dropdown/dropdown_separator.vue.d.ts +1 -1
- package/dist/types/components/emoji/emoji.vue.d.ts +1 -1
- package/dist/types/components/emoji_picker/emoji_picker.vue.d.ts +1 -1
- package/dist/types/components/emoji_picker/modules/emoji_description.vue.d.ts +1 -1
- package/dist/types/components/emoji_picker/modules/emoji_search.vue.d.ts +1 -1
- package/dist/types/components/emoji_picker/modules/emoji_selector.vue.d.ts +1 -1
- package/dist/types/components/emoji_picker/modules/emoji_skin_selector.vue.d.ts +1 -1
- package/dist/types/components/emoji_picker/modules/emoji_tabset.vue.d.ts +67 -1
- package/dist/types/components/emoji_text_wrapper/emoji_text_wrapper.vue.d.ts +1 -1
- package/dist/types/components/empty_state/empty_state.vue.d.ts +1 -1
- package/dist/types/components/empty_state/empty_state_constants.d.ts +0 -27
- package/dist/types/components/hovercard/hovercard.vue.d.ts +1 -1
- package/dist/types/components/icon/icon.vue.d.ts +1 -1
- package/dist/types/components/illustration/illustration.vue.d.ts +1 -1
- package/dist/types/components/image_viewer/image_viewer.vue.d.ts +1 -1
- package/dist/types/components/input/input.vue.d.ts +1 -1
- package/dist/types/components/input_group/decorators/input.vue.d.ts +1 -1
- package/dist/types/components/input_group/decorators/inputs.vue.d.ts +1 -1
- package/dist/types/components/input_group/input_group.vue.d.ts +2 -2
- package/dist/types/components/item_layout/item_layout.vue.d.ts +1 -1
- package/dist/types/components/keyboard_shortcut/index.d.ts +1 -1
- package/dist/types/components/keyboard_shortcut/keyboard_shortcut.vue.d.ts +16 -8
- package/dist/types/components/keyboard_shortcut/keyboard_shortcut.vue.d.ts.map +1 -1
- package/dist/types/components/keyboard_shortcut/keyboard_shortcut_constants.d.ts +11 -0
- package/dist/types/components/keyboard_shortcut/keyboard_shortcut_constants.d.ts.map +1 -1
- package/dist/types/components/lazy_show/lazy_show.vue.d.ts +1 -1
- package/dist/types/components/link/link.vue.d.ts +1 -1
- package/dist/types/components/list_item/list_item.vue.d.ts +2 -2
- package/dist/types/components/list_item_group/list_item_group.vue.d.ts +1 -1
- package/dist/types/components/modal/modal.vue.d.ts +7 -5
- package/dist/types/components/modal/modal.vue.d.ts.map +1 -1
- package/dist/types/components/notice/notice.vue.d.ts +1 -1
- package/dist/types/components/notice/notice_action.vue.d.ts +5 -6
- package/dist/types/components/notice/notice_action.vue.d.ts.map +1 -1
- package/dist/types/components/notice/notice_content.vue.d.ts +1 -1
- package/dist/types/components/notice/notice_icon.vue.d.ts +2 -2
- package/dist/types/components/notice/notice_icon.vue.d.ts.map +1 -1
- package/dist/types/components/pagination/pagination.vue.d.ts +1 -1
- package/dist/types/components/pagination/pagination.vue.d.ts.map +1 -1
- package/dist/types/components/popover/popover.vue.d.ts +1 -1
- package/dist/types/components/popover/popover_header_footer.vue.d.ts +1 -1
- package/dist/types/components/presence/presence.vue.d.ts +1 -1
- package/dist/types/components/radio/radio.vue.d.ts +1 -1
- package/dist/types/components/radio_group/radio_group.vue.d.ts +3 -3
- package/dist/types/components/radio_group/radios_decorator.vue.d.ts +1 -1
- package/dist/types/components/rich_text_editor/extensions/channels/ChannelComponent.vue.d.ts +17 -17
- package/dist/types/components/rich_text_editor/extensions/channels/ChannelSuggestion.vue.d.ts +1 -1
- package/dist/types/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.d.ts +17 -17
- package/dist/types/components/rich_text_editor/extensions/emoji/EmojiSuggestion.vue.d.ts +1 -1
- package/dist/types/components/rich_text_editor/extensions/mentions/MentionComponent.vue.d.ts +17 -17
- package/dist/types/components/rich_text_editor/extensions/mentions/MentionSuggestion.vue.d.ts +1 -1
- package/dist/types/components/rich_text_editor/extensions/slash_command/SlashCommandComponent.vue.d.ts +17 -17
- package/dist/types/components/rich_text_editor/extensions/slash_command/SlashCommandSuggestion.vue.d.ts +1 -1
- package/dist/types/components/rich_text_editor/extensions/suggestion/SuggestionList.vue.d.ts +1 -1
- package/dist/types/components/rich_text_editor/rich_text_editor.vue.d.ts +1 -1
- package/dist/types/components/root_layout/root_layout.vue.d.ts +1 -1
- package/dist/types/components/select_menu/select_menu.vue.d.ts +1 -1
- package/dist/types/components/skeleton/skeleton-list-item.vue.d.ts +1 -1
- package/dist/types/components/skeleton/skeleton-paragraph.vue.d.ts +1 -1
- package/dist/types/components/skeleton/skeleton-shape.vue.d.ts +1 -1
- package/dist/types/components/skeleton/skeleton-text.vue.d.ts +1 -1
- package/dist/types/components/skeleton/skeleton.vue.d.ts +1 -1
- package/dist/types/components/split_button/split_button-alpha.vue.d.ts +1 -1
- package/dist/types/components/split_button/split_button-omega.vue.d.ts +1 -1
- package/dist/types/components/split_button/split_button.vue.d.ts +2 -2
- package/dist/types/components/stack/stack.vue.d.ts +1 -1
- package/dist/types/components/tabs/tab.vue.d.ts +1 -1
- package/dist/types/components/tabs/tab_group.vue.d.ts +1 -1
- package/dist/types/components/tabs/tab_panel.vue.d.ts +1 -1
- package/dist/types/components/toast/toast.vue.d.ts +1 -1
- package/dist/types/components/toggle/toggle.vue.d.ts +1 -1
- package/dist/types/components/tooltip/tooltip.vue.d.ts +2 -2
- package/dist/types/components/validation_messages/validation_messages.vue.d.ts +1 -1
- package/dist/types/directives/scrollbar/scrollbar.d.ts.map +1 -1
- package/dist/types/recipes/buttons/callbar_button/callbar_button.vue.d.ts +1 -1
- package/dist/types/recipes/buttons/callbar_button_with_popover/callbar_button_with_popover.vue.d.ts +1 -1
- package/dist/types/recipes/cards/ivr_node/ivr_node.vue.d.ts +1 -1
- package/dist/types/recipes/cards/ivr_node/ivr_node.vue.d.ts.map +1 -1
- package/dist/types/recipes/chips/grouped_chip/grouped_chip.vue.d.ts +1 -1
- package/dist/types/recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue.d.ts +1 -1
- package/dist/types/recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue.d.ts +1 -1
- package/dist/types/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.d.ts +1 -1
- package/dist/types/recipes/conversation_view/attachment_carousel/attachment_carousel.vue.d.ts.map +1 -1
- package/dist/types/recipes/conversation_view/attachment_carousel/media_components/image_carousel.vue.d.ts +1 -1
- package/dist/types/recipes/conversation_view/attachment_carousel/media_components/progress_bar.vue.d.ts +1 -1
- package/dist/types/recipes/conversation_view/editor/editor.vue.d.ts +9 -9
- package/dist/types/recipes/conversation_view/editor/editor.vue.d.ts.map +1 -1
- package/dist/types/recipes/conversation_view/emoji_row/emoji_row.vue.d.ts +1 -1
- package/dist/types/recipes/conversation_view/feed_item_row/feed_item_row.vue.d.ts +1 -1
- package/dist/types/recipes/conversation_view/feed_pill/feed_item_pill.vue.d.ts +1 -1
- package/dist/types/recipes/conversation_view/message_input/meeting_pill/MeetingPill.vue.d.ts +17 -17
- package/dist/types/recipes/conversation_view/message_input/message_input.vue.d.ts +1 -1
- package/dist/types/recipes/conversation_view/time_pill/time_pill.vue.d.ts +1 -1
- package/dist/types/recipes/header/settings_menu_button/settings_menu_button.vue.d.ts +1 -1
- package/dist/types/recipes/item_layout/contact_info/contact_info.vue.d.ts +1 -1
- package/dist/types/recipes/leftbar/callbox/callbox.vue.d.ts +1 -1
- package/dist/types/recipes/leftbar/contact_centers_row/contact_centers_row.vue.d.ts +1 -1
- package/dist/types/recipes/leftbar/contact_row/contact_row.vue.d.ts +1 -1
- package/dist/types/recipes/leftbar/general_row/general_row.vue.d.ts +1 -1
- package/dist/types/recipes/leftbar/general_row/general_row.vue.d.ts.map +1 -1
- package/dist/types/recipes/leftbar/general_row/general_row_constants.d.ts +6 -0
- package/dist/types/recipes/leftbar/general_row/general_row_constants.d.ts.map +1 -1
- package/dist/types/recipes/leftbar/general_row/index.d.ts +1 -1
- package/dist/types/recipes/leftbar/general_row/leftbar_general_row_icon.vue.d.ts +2 -2
- package/dist/types/recipes/leftbar/group_row/group_row.vue.d.ts +1 -1
- package/dist/types/recipes/leftbar/unread_pill/unread_pill.vue.d.ts +1 -1
- package/dist/types/recipes/leftbar/unread_pill/unread_pill.vue.d.ts.map +1 -1
- package/dist/types/recipes/notices/top_banner_info/top_banner_info.vue.d.ts +1 -1
- package/package.json +16 -16
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
const empty_state_constants = require("./empty_state_constants.cjs");
|
|
3
3
|
const _pluginVue2_normalizer = require("../../_virtual/_plugin-vue2_normalizer.cjs");
|
|
4
|
+
const illustration = require("../illustration/illustration.vue.cjs");
|
|
5
|
+
const icon = require("../icon/icon.vue.cjs");
|
|
4
6
|
const stack = require("../stack/stack.vue.cjs");
|
|
7
|
+
const illustration_constants = require("../illustration/illustration_constants.cjs");
|
|
8
|
+
const icon_constants = require("../icon/icon_constants.cjs");
|
|
5
9
|
const _sfc_main = {
|
|
6
10
|
name: "DtEmptyState",
|
|
7
11
|
components: {
|
|
12
|
+
DtIllustration: illustration,
|
|
13
|
+
DtIcon: icon,
|
|
8
14
|
DtStack: stack
|
|
9
15
|
},
|
|
10
16
|
props: {
|
|
@@ -17,6 +23,28 @@ const _sfc_main = {
|
|
|
17
23
|
default: "lg",
|
|
18
24
|
validator: (s) => Object.keys(empty_state_constants.EMPTY_STATE_SIZE_MODIFIERS).includes(s)
|
|
19
25
|
},
|
|
26
|
+
/**
|
|
27
|
+
* The illustration name in kebab-case
|
|
28
|
+
* This only displays when size is 'lg' or 'md'
|
|
29
|
+
* This has priority over icon.
|
|
30
|
+
* @type {String}
|
|
31
|
+
*/
|
|
32
|
+
illustrationName: {
|
|
33
|
+
type: String,
|
|
34
|
+
default: null,
|
|
35
|
+
validator: (name) => illustration_constants.ILLUSTRATION_NAMES.includes(name)
|
|
36
|
+
},
|
|
37
|
+
/**
|
|
38
|
+
* The icon name in kebab-case
|
|
39
|
+
* This will be shown in 'lg' and 'md' size only if illustrationName prop is not provided and
|
|
40
|
+
* Will always be shown in 'sm' size.
|
|
41
|
+
* @type {String}
|
|
42
|
+
*/
|
|
43
|
+
iconName: {
|
|
44
|
+
type: String,
|
|
45
|
+
default: null,
|
|
46
|
+
validator: (name) => icon_constants.ICON_NAMES.includes(name)
|
|
47
|
+
},
|
|
20
48
|
/**
|
|
21
49
|
* Header text
|
|
22
50
|
* @type {String}
|
|
@@ -32,31 +60,36 @@ const _sfc_main = {
|
|
|
32
60
|
bodyText: {
|
|
33
61
|
type: String,
|
|
34
62
|
default: null
|
|
63
|
+
},
|
|
64
|
+
/**
|
|
65
|
+
* Whether to show the illustration
|
|
66
|
+
* @type {Boolean}
|
|
67
|
+
*/
|
|
68
|
+
showIllustration: {
|
|
69
|
+
type: Boolean,
|
|
70
|
+
default: true
|
|
35
71
|
}
|
|
36
72
|
},
|
|
37
73
|
computed: {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
isSmallSize() {
|
|
45
|
-
return this.size === "sm";
|
|
74
|
+
/**
|
|
75
|
+
* Illustration will always be shown in lg and md size
|
|
76
|
+
* Illustration will not be shown in sm size
|
|
77
|
+
*/
|
|
78
|
+
showIllustrationComponent() {
|
|
79
|
+
return this.illustrationName && this.notSmSize;
|
|
46
80
|
},
|
|
47
81
|
/**
|
|
48
82
|
* Icon will be shown in lg and md size only if illustration is not provided
|
|
49
83
|
* Icon will always be shown in sm size
|
|
50
84
|
*/
|
|
51
85
|
showIcon() {
|
|
52
|
-
|
|
86
|
+
if (!this.iconName) {
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
return !(this.illustrationName && this.notSmSize);
|
|
53
90
|
},
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
* Illustration will not be shown in sm size
|
|
57
|
-
*/
|
|
58
|
-
showIllustration() {
|
|
59
|
-
return this.hasIllustration && !this.isSmallSize;
|
|
91
|
+
notSmSize() {
|
|
92
|
+
return this.size !== "sm";
|
|
60
93
|
},
|
|
61
94
|
sizeClass() {
|
|
62
95
|
return empty_state_constants.EMPTY_STATE_SIZE_MODIFIERS[this.size];
|
|
@@ -65,24 +98,51 @@ const _sfc_main = {
|
|
|
65
98
|
return ["d-empty-state", this.sizeClass];
|
|
66
99
|
},
|
|
67
100
|
contentClass() {
|
|
68
|
-
|
|
101
|
+
switch (this.size) {
|
|
102
|
+
case "sm":
|
|
103
|
+
return "d-empty-state__content--sm";
|
|
104
|
+
case "md":
|
|
105
|
+
return "d-empty-state__content--md";
|
|
106
|
+
case "lg":
|
|
107
|
+
return "d-empty-state__content--lg";
|
|
108
|
+
default:
|
|
109
|
+
return "d-empty-state__content--lg";
|
|
110
|
+
}
|
|
69
111
|
},
|
|
70
112
|
headlineClass() {
|
|
71
|
-
|
|
113
|
+
switch (this.size) {
|
|
114
|
+
case "sm":
|
|
115
|
+
return "d-headline--md";
|
|
116
|
+
case "md":
|
|
117
|
+
return "d-headline--xl";
|
|
118
|
+
case "lg":
|
|
119
|
+
return "d-headline--xxl";
|
|
120
|
+
default:
|
|
121
|
+
return "d-headline--xxl";
|
|
122
|
+
}
|
|
72
123
|
},
|
|
73
124
|
bodyClass() {
|
|
74
|
-
|
|
125
|
+
switch (this.size) {
|
|
126
|
+
case "sm":
|
|
127
|
+
return "d-body--sm";
|
|
128
|
+
case "md":
|
|
129
|
+
return "d-body--sm";
|
|
130
|
+
case "lg":
|
|
131
|
+
return "d-body--md";
|
|
132
|
+
default:
|
|
133
|
+
return "d-body--md";
|
|
134
|
+
}
|
|
75
135
|
}
|
|
76
136
|
},
|
|
77
137
|
mounted() {
|
|
78
138
|
if (!this.bodyText && !this.$slots.body) {
|
|
79
|
-
console.
|
|
139
|
+
console.warn("Dialtone Empty State component: You should provide either bodyText or content on body slot.");
|
|
80
140
|
}
|
|
81
141
|
}
|
|
82
142
|
};
|
|
83
143
|
var _sfc_render = function render() {
|
|
84
144
|
var _vm = this, _c = _vm._self._c;
|
|
85
|
-
return _c("dt-stack", { class: _vm.emptyStateClasses }, [_vm.showIllustration ? _c("span", { staticClass: "d-empty-
|
|
145
|
+
return _c("dt-stack", { class: _vm.emptyStateClasses }, [_vm.showIllustration ? [_vm.showIcon ? _c("span", { staticClass: "d-empty-state__icon" }, [_c("dt-icon", { attrs: { "name": _vm.iconName, "size": "800" } })], 1) : _vm._e(), _vm.showIllustrationComponent ? _c("span", { staticClass: "d-empty-state__illustration" }, [_c("dt-illustration", { attrs: { "name": _vm.illustrationName } })], 1) : _vm._e()] : _vm._e(), _c("dt-stack", { class: ["d-empty-state__content", _vm.contentClass], attrs: { "gap": "450" } }, [_c("div", { class: ["d-empty-state__header-text", _vm.headlineClass] }, [_vm._v(" " + _vm._s(_vm.headerText) + " ")]), _vm.bodyText ? _c("p", { class: ["d-empty-state__body-text", _vm.bodyClass] }, [_vm._v(" " + _vm._s(_vm.bodyText) + " ")]) : _vm._e()]), _vm._t("body")], 2);
|
|
86
146
|
};
|
|
87
147
|
var _sfc_staticRenderFns = [];
|
|
88
148
|
var __component__ = /* @__PURE__ */ _pluginVue2_normalizer(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empty_state.vue.cjs","sources":["../../../components/empty_state/empty_state.vue"],"sourcesContent":["<template>\n <dt-stack\n :class=\"emptyStateClasses\"\n >\n <span\n
|
|
1
|
+
{"version":3,"file":"empty_state.vue.cjs","sources":["../../../components/empty_state/empty_state.vue"],"sourcesContent":["<template>\n <dt-stack\n :class=\"emptyStateClasses\"\n >\n <template v-if=\"showIllustration\">\n <span\n v-if=\"showIcon\"\n class=\"d-empty-state__icon\"\n >\n <dt-icon\n :name=\"iconName\"\n size=\"800\"\n />\n </span>\n\n <span\n v-if=\"showIllustrationComponent\"\n class=\"d-empty-state__illustration\"\n >\n <dt-illustration\n :name=\"illustrationName\"\n />\n </span>\n </template>\n\n <dt-stack\n gap=\"450\"\n :class=\"['d-empty-state__content', contentClass]\"\n >\n <div :class=\"['d-empty-state__header-text', headlineClass]\">\n {{ headerText }}\n </div>\n\n <p\n v-if=\"bodyText\"\n :class=\"['d-empty-state__body-text', bodyClass]\"\n >\n {{ bodyText }}\n </p>\n </dt-stack>\n\n <slot name=\"body\" />\n </dt-stack>\n</template>\n\n<script>\nimport { EMPTY_STATE_SIZE_MODIFIERS } from './empty_state_constants.js';\nimport { DtIllustration, ILLUSTRATION_NAMES } from '@/components/illustration';\nimport { DtIcon, ICON_NAMES } from '@/components/icon';\nimport { DtStack } from '@/components/stack';\n\nexport default {\n name: 'DtEmptyState',\n\n components: {\n DtIllustration,\n DtIcon,\n DtStack,\n },\n\n props: {\n /**\n * The empty state size.\n * @values 'sm', 'md', 'lg'\n */\n size: {\n type: String,\n default: 'lg',\n validator: (s) => Object.keys(EMPTY_STATE_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * The illustration name in kebab-case\n * This only displays when size is 'lg' or 'md'\n * This has priority over icon.\n * @type {String}\n */\n illustrationName: {\n type: String,\n default: null,\n validator: (name) => ILLUSTRATION_NAMES.includes(name),\n },\n\n /**\n * The icon name in kebab-case\n * This will be shown in 'lg' and 'md' size only if illustrationName prop is not provided and\n * Will always be shown in 'sm' size.\n * @type {String}\n */\n iconName: {\n type: String,\n default: null,\n validator: (name) => ICON_NAMES.includes(name),\n },\n\n /**\n * Header text\n * @type {String}\n */\n headerText: {\n type: String,\n required: true,\n },\n\n /**\n * Body text\n * @type {String}\n */\n bodyText: {\n type: String,\n default: null,\n },\n\n /**\n * Whether to show the illustration\n * @type {Boolean}\n */\n showIllustration: {\n type: Boolean,\n default: true,\n },\n },\n\n computed: {\n /**\n * Illustration will always be shown in lg and md size\n * Illustration will not be shown in sm size\n */\n showIllustrationComponent () {\n return this.illustrationName && this.notSmSize;\n },\n\n /**\n * Icon will be shown in lg and md size only if illustration is not provided\n * Icon will always be shown in sm size\n */\n showIcon () {\n if (!this.iconName) {\n return false;\n }\n\n return !(this.illustrationName && this.notSmSize);\n },\n\n notSmSize () {\n return this.size !== 'sm';\n },\n\n sizeClass () {\n return EMPTY_STATE_SIZE_MODIFIERS[this.size];\n },\n\n emptyStateClasses () {\n return ['d-empty-state', this.sizeClass];\n },\n\n contentClass () {\n switch (this.size) {\n case 'sm':\n return 'd-empty-state__content--sm';\n case 'md':\n return 'd-empty-state__content--md';\n case 'lg':\n return 'd-empty-state__content--lg';\n default:\n return 'd-empty-state__content--lg';\n }\n },\n\n headlineClass () {\n switch (this.size) {\n case 'sm':\n return 'd-headline--md';\n case 'md':\n return 'd-headline--xl';\n case 'lg':\n return 'd-headline--xxl';\n default:\n return 'd-headline--xxl';\n }\n },\n\n bodyClass () {\n switch (this.size) {\n case 'sm':\n return 'd-body--sm';\n case 'md':\n return 'd-body--sm';\n case 'lg':\n return 'd-body--md';\n default:\n return 'd-body--md';\n }\n },\n },\n\n mounted () {\n if (!this.bodyText && !this.$slots.body) {\n console.warn('Dialtone Empty State component: You should provide either bodyText or content on body slot.');\n }\n },\n};\n</script>\n"],"names":["DtIllustration","DtIcon","DtStack","EMPTY_STATE_SIZE_MODIFIERS","ILLUSTRATION_NAMES","ICON_NAMES"],"mappings":";;;;;;;;AAmDA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,gBAAAA;AAAAA,IACA,QAAAC;AAAAA,IACA,SAAAC;AAAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAA,MAAA,OAAA,KAAAC,gDAAA,EAAA,SAAA,CAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,kBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAA,SAAAC,0CAAA,SAAA,IAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAA,SAAAC,0BAAA,SAAA,IAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,kBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,4BAAA;AACA,aAAA,KAAA,oBAAA,KAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,WAAA;AACA,UAAA,CAAA,KAAA,UAAA;AACA,eAAA;AAAA,MACA;AAEA,aAAA,EAAA,KAAA,oBAAA,KAAA;AAAA,IACA;AAAA,IAEA,YAAA;AACA,aAAA,KAAA,SAAA;AAAA,IACA;AAAA,IAEA,YAAA;AACA,aAAAF,sBAAA,2BAAA,KAAA,IAAA;AAAA,IACA;AAAA,IAEA,oBAAA;AACA,aAAA,CAAA,iBAAA,KAAA,SAAA;AAAA,IACA;AAAA,IAEA,eAAA;AACA,cAAA,KAAA,MAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA;AACA,iBAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,gBAAA;AACA,cAAA,KAAA,MAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA;AACA,iBAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,YAAA;AACA,cAAA,KAAA,MAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA;AACA,iBAAA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AACA,QAAA,CAAA,KAAA,YAAA,CAAA,KAAA,OAAA,MAAA;AACA,cAAA,KAAA,6FAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;"}
|
|
@@ -1,9 +1,15 @@
|
|
|
1
|
-
import { EMPTY_STATE_SIZE_MODIFIERS
|
|
1
|
+
import { EMPTY_STATE_SIZE_MODIFIERS } from "./empty_state_constants.js";
|
|
2
2
|
import normalizeComponent from "../../_virtual/_plugin-vue2_normalizer.js";
|
|
3
|
+
import DtIllustration from "../illustration/illustration.vue.js";
|
|
4
|
+
import DtIcon from "../icon/icon.vue.js";
|
|
3
5
|
import DtStack from "../stack/stack.vue.js";
|
|
6
|
+
import { ILLUSTRATION_NAMES } from "../illustration/illustration_constants.js";
|
|
7
|
+
import { ICON_NAMES } from "../icon/icon_constants.js";
|
|
4
8
|
const _sfc_main = {
|
|
5
9
|
name: "DtEmptyState",
|
|
6
10
|
components: {
|
|
11
|
+
DtIllustration,
|
|
12
|
+
DtIcon,
|
|
7
13
|
DtStack
|
|
8
14
|
},
|
|
9
15
|
props: {
|
|
@@ -16,6 +22,28 @@ const _sfc_main = {
|
|
|
16
22
|
default: "lg",
|
|
17
23
|
validator: (s) => Object.keys(EMPTY_STATE_SIZE_MODIFIERS).includes(s)
|
|
18
24
|
},
|
|
25
|
+
/**
|
|
26
|
+
* The illustration name in kebab-case
|
|
27
|
+
* This only displays when size is 'lg' or 'md'
|
|
28
|
+
* This has priority over icon.
|
|
29
|
+
* @type {String}
|
|
30
|
+
*/
|
|
31
|
+
illustrationName: {
|
|
32
|
+
type: String,
|
|
33
|
+
default: null,
|
|
34
|
+
validator: (name) => ILLUSTRATION_NAMES.includes(name)
|
|
35
|
+
},
|
|
36
|
+
/**
|
|
37
|
+
* The icon name in kebab-case
|
|
38
|
+
* This will be shown in 'lg' and 'md' size only if illustrationName prop is not provided and
|
|
39
|
+
* Will always be shown in 'sm' size.
|
|
40
|
+
* @type {String}
|
|
41
|
+
*/
|
|
42
|
+
iconName: {
|
|
43
|
+
type: String,
|
|
44
|
+
default: null,
|
|
45
|
+
validator: (name) => ICON_NAMES.includes(name)
|
|
46
|
+
},
|
|
19
47
|
/**
|
|
20
48
|
* Header text
|
|
21
49
|
* @type {String}
|
|
@@ -31,31 +59,36 @@ const _sfc_main = {
|
|
|
31
59
|
bodyText: {
|
|
32
60
|
type: String,
|
|
33
61
|
default: null
|
|
62
|
+
},
|
|
63
|
+
/**
|
|
64
|
+
* Whether to show the illustration
|
|
65
|
+
* @type {Boolean}
|
|
66
|
+
*/
|
|
67
|
+
showIllustration: {
|
|
68
|
+
type: Boolean,
|
|
69
|
+
default: true
|
|
34
70
|
}
|
|
35
71
|
},
|
|
36
72
|
computed: {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
isSmallSize() {
|
|
44
|
-
return this.size === "sm";
|
|
73
|
+
/**
|
|
74
|
+
* Illustration will always be shown in lg and md size
|
|
75
|
+
* Illustration will not be shown in sm size
|
|
76
|
+
*/
|
|
77
|
+
showIllustrationComponent() {
|
|
78
|
+
return this.illustrationName && this.notSmSize;
|
|
45
79
|
},
|
|
46
80
|
/**
|
|
47
81
|
* Icon will be shown in lg and md size only if illustration is not provided
|
|
48
82
|
* Icon will always be shown in sm size
|
|
49
83
|
*/
|
|
50
84
|
showIcon() {
|
|
51
|
-
|
|
85
|
+
if (!this.iconName) {
|
|
86
|
+
return false;
|
|
87
|
+
}
|
|
88
|
+
return !(this.illustrationName && this.notSmSize);
|
|
52
89
|
},
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
* Illustration will not be shown in sm size
|
|
56
|
-
*/
|
|
57
|
-
showIllustration() {
|
|
58
|
-
return this.hasIllustration && !this.isSmallSize;
|
|
90
|
+
notSmSize() {
|
|
91
|
+
return this.size !== "sm";
|
|
59
92
|
},
|
|
60
93
|
sizeClass() {
|
|
61
94
|
return EMPTY_STATE_SIZE_MODIFIERS[this.size];
|
|
@@ -64,24 +97,51 @@ const _sfc_main = {
|
|
|
64
97
|
return ["d-empty-state", this.sizeClass];
|
|
65
98
|
},
|
|
66
99
|
contentClass() {
|
|
67
|
-
|
|
100
|
+
switch (this.size) {
|
|
101
|
+
case "sm":
|
|
102
|
+
return "d-empty-state__content--sm";
|
|
103
|
+
case "md":
|
|
104
|
+
return "d-empty-state__content--md";
|
|
105
|
+
case "lg":
|
|
106
|
+
return "d-empty-state__content--lg";
|
|
107
|
+
default:
|
|
108
|
+
return "d-empty-state__content--lg";
|
|
109
|
+
}
|
|
68
110
|
},
|
|
69
111
|
headlineClass() {
|
|
70
|
-
|
|
112
|
+
switch (this.size) {
|
|
113
|
+
case "sm":
|
|
114
|
+
return "d-headline--md";
|
|
115
|
+
case "md":
|
|
116
|
+
return "d-headline--xl";
|
|
117
|
+
case "lg":
|
|
118
|
+
return "d-headline--xxl";
|
|
119
|
+
default:
|
|
120
|
+
return "d-headline--xxl";
|
|
121
|
+
}
|
|
71
122
|
},
|
|
72
123
|
bodyClass() {
|
|
73
|
-
|
|
124
|
+
switch (this.size) {
|
|
125
|
+
case "sm":
|
|
126
|
+
return "d-body--sm";
|
|
127
|
+
case "md":
|
|
128
|
+
return "d-body--sm";
|
|
129
|
+
case "lg":
|
|
130
|
+
return "d-body--md";
|
|
131
|
+
default:
|
|
132
|
+
return "d-body--md";
|
|
133
|
+
}
|
|
74
134
|
}
|
|
75
135
|
},
|
|
76
136
|
mounted() {
|
|
77
137
|
if (!this.bodyText && !this.$slots.body) {
|
|
78
|
-
console.
|
|
138
|
+
console.warn("Dialtone Empty State component: You should provide either bodyText or content on body slot.");
|
|
79
139
|
}
|
|
80
140
|
}
|
|
81
141
|
};
|
|
82
142
|
var _sfc_render = function render() {
|
|
83
143
|
var _vm = this, _c = _vm._self._c;
|
|
84
|
-
return _c("dt-stack", { class: _vm.emptyStateClasses }, [_vm.showIllustration ? _c("span", { staticClass: "d-empty-
|
|
144
|
+
return _c("dt-stack", { class: _vm.emptyStateClasses }, [_vm.showIllustration ? [_vm.showIcon ? _c("span", { staticClass: "d-empty-state__icon" }, [_c("dt-icon", { attrs: { "name": _vm.iconName, "size": "800" } })], 1) : _vm._e(), _vm.showIllustrationComponent ? _c("span", { staticClass: "d-empty-state__illustration" }, [_c("dt-illustration", { attrs: { "name": _vm.illustrationName } })], 1) : _vm._e()] : _vm._e(), _c("dt-stack", { class: ["d-empty-state__content", _vm.contentClass], attrs: { "gap": "450" } }, [_c("div", { class: ["d-empty-state__header-text", _vm.headlineClass] }, [_vm._v(" " + _vm._s(_vm.headerText) + " ")]), _vm.bodyText ? _c("p", { class: ["d-empty-state__body-text", _vm.bodyClass] }, [_vm._v(" " + _vm._s(_vm.bodyText) + " ")]) : _vm._e()]), _vm._t("body")], 2);
|
|
85
145
|
};
|
|
86
146
|
var _sfc_staticRenderFns = [];
|
|
87
147
|
var __component__ = /* @__PURE__ */ normalizeComponent(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empty_state.vue.js","sources":["../../../components/empty_state/empty_state.vue"],"sourcesContent":["<template>\n <dt-stack\n :class=\"emptyStateClasses\"\n >\n <span\n
|
|
1
|
+
{"version":3,"file":"empty_state.vue.js","sources":["../../../components/empty_state/empty_state.vue"],"sourcesContent":["<template>\n <dt-stack\n :class=\"emptyStateClasses\"\n >\n <template v-if=\"showIllustration\">\n <span\n v-if=\"showIcon\"\n class=\"d-empty-state__icon\"\n >\n <dt-icon\n :name=\"iconName\"\n size=\"800\"\n />\n </span>\n\n <span\n v-if=\"showIllustrationComponent\"\n class=\"d-empty-state__illustration\"\n >\n <dt-illustration\n :name=\"illustrationName\"\n />\n </span>\n </template>\n\n <dt-stack\n gap=\"450\"\n :class=\"['d-empty-state__content', contentClass]\"\n >\n <div :class=\"['d-empty-state__header-text', headlineClass]\">\n {{ headerText }}\n </div>\n\n <p\n v-if=\"bodyText\"\n :class=\"['d-empty-state__body-text', bodyClass]\"\n >\n {{ bodyText }}\n </p>\n </dt-stack>\n\n <slot name=\"body\" />\n </dt-stack>\n</template>\n\n<script>\nimport { EMPTY_STATE_SIZE_MODIFIERS } from './empty_state_constants.js';\nimport { DtIllustration, ILLUSTRATION_NAMES } from '@/components/illustration';\nimport { DtIcon, ICON_NAMES } from '@/components/icon';\nimport { DtStack } from '@/components/stack';\n\nexport default {\n name: 'DtEmptyState',\n\n components: {\n DtIllustration,\n DtIcon,\n DtStack,\n },\n\n props: {\n /**\n * The empty state size.\n * @values 'sm', 'md', 'lg'\n */\n size: {\n type: String,\n default: 'lg',\n validator: (s) => Object.keys(EMPTY_STATE_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * The illustration name in kebab-case\n * This only displays when size is 'lg' or 'md'\n * This has priority over icon.\n * @type {String}\n */\n illustrationName: {\n type: String,\n default: null,\n validator: (name) => ILLUSTRATION_NAMES.includes(name),\n },\n\n /**\n * The icon name in kebab-case\n * This will be shown in 'lg' and 'md' size only if illustrationName prop is not provided and\n * Will always be shown in 'sm' size.\n * @type {String}\n */\n iconName: {\n type: String,\n default: null,\n validator: (name) => ICON_NAMES.includes(name),\n },\n\n /**\n * Header text\n * @type {String}\n */\n headerText: {\n type: String,\n required: true,\n },\n\n /**\n * Body text\n * @type {String}\n */\n bodyText: {\n type: String,\n default: null,\n },\n\n /**\n * Whether to show the illustration\n * @type {Boolean}\n */\n showIllustration: {\n type: Boolean,\n default: true,\n },\n },\n\n computed: {\n /**\n * Illustration will always be shown in lg and md size\n * Illustration will not be shown in sm size\n */\n showIllustrationComponent () {\n return this.illustrationName && this.notSmSize;\n },\n\n /**\n * Icon will be shown in lg and md size only if illustration is not provided\n * Icon will always be shown in sm size\n */\n showIcon () {\n if (!this.iconName) {\n return false;\n }\n\n return !(this.illustrationName && this.notSmSize);\n },\n\n notSmSize () {\n return this.size !== 'sm';\n },\n\n sizeClass () {\n return EMPTY_STATE_SIZE_MODIFIERS[this.size];\n },\n\n emptyStateClasses () {\n return ['d-empty-state', this.sizeClass];\n },\n\n contentClass () {\n switch (this.size) {\n case 'sm':\n return 'd-empty-state__content--sm';\n case 'md':\n return 'd-empty-state__content--md';\n case 'lg':\n return 'd-empty-state__content--lg';\n default:\n return 'd-empty-state__content--lg';\n }\n },\n\n headlineClass () {\n switch (this.size) {\n case 'sm':\n return 'd-headline--md';\n case 'md':\n return 'd-headline--xl';\n case 'lg':\n return 'd-headline--xxl';\n default:\n return 'd-headline--xxl';\n }\n },\n\n bodyClass () {\n switch (this.size) {\n case 'sm':\n return 'd-body--sm';\n case 'md':\n return 'd-body--sm';\n case 'lg':\n return 'd-body--md';\n default:\n return 'd-body--md';\n }\n },\n },\n\n mounted () {\n if (!this.bodyText && !this.$slots.body) {\n console.warn('Dialtone Empty State component: You should provide either bodyText or content on body slot.');\n }\n },\n};\n</script>\n"],"names":[],"mappings":";;;;;;;AAmDA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAA,MAAA,OAAA,KAAA,0BAAA,EAAA,SAAA,CAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,kBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAA,SAAA,mBAAA,SAAA,IAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAA,SAAA,WAAA,SAAA,IAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,kBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,4BAAA;AACA,aAAA,KAAA,oBAAA,KAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,WAAA;AACA,UAAA,CAAA,KAAA,UAAA;AACA,eAAA;AAAA,MACA;AAEA,aAAA,EAAA,KAAA,oBAAA,KAAA;AAAA,IACA;AAAA,IAEA,YAAA;AACA,aAAA,KAAA,SAAA;AAAA,IACA;AAAA,IAEA,YAAA;AACA,aAAA,2BAAA,KAAA,IAAA;AAAA,IACA;AAAA,IAEA,oBAAA;AACA,aAAA,CAAA,iBAAA,KAAA,SAAA;AAAA,IACA;AAAA,IAEA,eAAA;AACA,cAAA,KAAA,MAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA;AACA,iBAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,gBAAA;AACA,cAAA,KAAA,MAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA;AACA,iBAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,YAAA;AACA,cAAA,KAAA,MAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA,KAAA;AACA,iBAAA;AAAA,QACA;AACA,iBAAA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AACA,QAAA,CAAA,KAAA,YAAA,CAAA,KAAA,OAAA,MAAA;AACA,cAAA,KAAA,6FAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;"}
|
|
@@ -5,23 +5,5 @@ const EMPTY_STATE_SIZE_MODIFIERS = {
|
|
|
5
5
|
md: "d-empty-state--size-md",
|
|
6
6
|
lg: "d-empty-state--size-lg"
|
|
7
7
|
};
|
|
8
|
-
const EMPTY_STATE_CONTENT_SIZE_MODIFIERS = {
|
|
9
|
-
sm: "d-empty-state__content--sm",
|
|
10
|
-
md: "d-empty-state__content--md",
|
|
11
|
-
lg: "d-empty-state__content--lg"
|
|
12
|
-
};
|
|
13
|
-
const EMPTY_STATE_HEADLINE_SIZE_MODIFIERS = {
|
|
14
|
-
sm: "d-headline--md",
|
|
15
|
-
md: "d-headline--xl",
|
|
16
|
-
lg: "d-headline--xxl"
|
|
17
|
-
};
|
|
18
|
-
const EMPTY_STATE_BODY_SIZE_MODIFIERS = {
|
|
19
|
-
sm: "d-body--sm",
|
|
20
|
-
md: "d-body--sm",
|
|
21
|
-
lg: "d-body--md"
|
|
22
|
-
};
|
|
23
|
-
exports.EMPTY_STATE_BODY_SIZE_MODIFIERS = EMPTY_STATE_BODY_SIZE_MODIFIERS;
|
|
24
|
-
exports.EMPTY_STATE_CONTENT_SIZE_MODIFIERS = EMPTY_STATE_CONTENT_SIZE_MODIFIERS;
|
|
25
|
-
exports.EMPTY_STATE_HEADLINE_SIZE_MODIFIERS = EMPTY_STATE_HEADLINE_SIZE_MODIFIERS;
|
|
26
8
|
exports.EMPTY_STATE_SIZE_MODIFIERS = EMPTY_STATE_SIZE_MODIFIERS;
|
|
27
9
|
//# sourceMappingURL=empty_state_constants.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empty_state_constants.cjs","sources":["../../../components/empty_state/empty_state_constants.js"],"sourcesContent":["export const EMPTY_STATE_SIZE_MODIFIERS = {\n sm: 'd-empty-state--size-sm',\n md: 'd-empty-state--size-md',\n lg: 'd-empty-state--size-lg',\n};\n\nexport
|
|
1
|
+
{"version":3,"file":"empty_state_constants.cjs","sources":["../../../components/empty_state/empty_state_constants.js"],"sourcesContent":["export const EMPTY_STATE_SIZE_MODIFIERS = {\n sm: 'd-empty-state--size-sm',\n md: 'd-empty-state--size-md',\n lg: 'd-empty-state--size-lg',\n};\n\nexport default {\n EMPTY_STATE_SIZE_MODIFIERS,\n};\n"],"names":[],"mappings":";;AAAY,MAAC,6BAA6B;AAAA,EACxC,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;;"}
|
|
@@ -3,25 +3,7 @@ const EMPTY_STATE_SIZE_MODIFIERS = {
|
|
|
3
3
|
md: "d-empty-state--size-md",
|
|
4
4
|
lg: "d-empty-state--size-lg"
|
|
5
5
|
};
|
|
6
|
-
const EMPTY_STATE_CONTENT_SIZE_MODIFIERS = {
|
|
7
|
-
sm: "d-empty-state__content--sm",
|
|
8
|
-
md: "d-empty-state__content--md",
|
|
9
|
-
lg: "d-empty-state__content--lg"
|
|
10
|
-
};
|
|
11
|
-
const EMPTY_STATE_HEADLINE_SIZE_MODIFIERS = {
|
|
12
|
-
sm: "d-headline--md",
|
|
13
|
-
md: "d-headline--xl",
|
|
14
|
-
lg: "d-headline--xxl"
|
|
15
|
-
};
|
|
16
|
-
const EMPTY_STATE_BODY_SIZE_MODIFIERS = {
|
|
17
|
-
sm: "d-body--sm",
|
|
18
|
-
md: "d-body--sm",
|
|
19
|
-
lg: "d-body--md"
|
|
20
|
-
};
|
|
21
6
|
export {
|
|
22
|
-
EMPTY_STATE_BODY_SIZE_MODIFIERS,
|
|
23
|
-
EMPTY_STATE_CONTENT_SIZE_MODIFIERS,
|
|
24
|
-
EMPTY_STATE_HEADLINE_SIZE_MODIFIERS,
|
|
25
7
|
EMPTY_STATE_SIZE_MODIFIERS
|
|
26
8
|
};
|
|
27
9
|
//# sourceMappingURL=empty_state_constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empty_state_constants.js","sources":["../../../components/empty_state/empty_state_constants.js"],"sourcesContent":["export const EMPTY_STATE_SIZE_MODIFIERS = {\n sm: 'd-empty-state--size-sm',\n md: 'd-empty-state--size-md',\n lg: 'd-empty-state--size-lg',\n};\n\nexport
|
|
1
|
+
{"version":3,"file":"empty_state_constants.js","sources":["../../../components/empty_state/empty_state_constants.js"],"sourcesContent":["export const EMPTY_STATE_SIZE_MODIFIERS = {\n sm: 'd-empty-state--size-sm',\n md: 'd-empty-state--size-md',\n lg: 'd-empty-state--size-lg',\n};\n\nexport default {\n EMPTY_STATE_SIZE_MODIFIERS,\n};\n"],"names":[],"mappings":"AAAY,MAAC,6BAA6B;AAAA,EACxC,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;"}
|
|
@@ -33,6 +33,6 @@ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer(
|
|
|
33
33
|
null,
|
|
34
34
|
null
|
|
35
35
|
);
|
|
36
|
-
const
|
|
37
|
-
module.exports =
|
|
36
|
+
const DtIllustration = __component__.exports;
|
|
37
|
+
module.exports = DtIllustration;
|
|
38
38
|
//# sourceMappingURL=illustration.vue.cjs.map
|
|
@@ -32,8 +32,8 @@ var __component__ = /* @__PURE__ */ normalizeComponent(
|
|
|
32
32
|
null,
|
|
33
33
|
null
|
|
34
34
|
);
|
|
35
|
-
const
|
|
35
|
+
const DtIllustration = __component__.exports;
|
|
36
36
|
export {
|
|
37
|
-
|
|
37
|
+
DtIllustration as default
|
|
38
38
|
};
|
|
39
39
|
//# sourceMappingURL=illustration.vue.js.map
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
const modal = require("../../common/mixins/modal.cjs");
|
|
3
3
|
const common_constants = require("../../common/constants.cjs");
|
|
4
|
-
const vue2 = require("@dialpad/dialtone-icons/vue2");
|
|
5
4
|
const vueSimplePortal = require("@linusborg/vue-simple-portal");
|
|
6
5
|
const _pluginVue2_normalizer = require("../../_virtual/_plugin-vue2_normalizer.cjs");
|
|
7
6
|
const button = require("../button/button.vue.cjs");
|
|
7
|
+
const icon = require("../icon/icon.vue.cjs");
|
|
8
8
|
const _sfc_main = {
|
|
9
9
|
name: "DtImageViewer",
|
|
10
10
|
components: {
|
|
11
11
|
Portal: vueSimplePortal.Portal,
|
|
12
12
|
DtButton: button,
|
|
13
|
-
|
|
13
|
+
DtIcon: icon
|
|
14
14
|
},
|
|
15
15
|
mixins: [modal],
|
|
16
16
|
props: {
|
|
@@ -176,8 +176,8 @@ var _sfc_render = function render() {
|
|
|
176
176
|
}, "focusout": function($event) {
|
|
177
177
|
_vm.showCloseButton = false;
|
|
178
178
|
} } }, _vm.modalListeners), [_c("div", { staticClass: "d-image-viewer__full", attrs: { "data-qa": "dt-image-viewer-full", "role": "dialog", "aria-modal": "true" } }, [_c("img", { staticClass: "d-image-viewer__full__image", attrs: { "src": _vm.imageSrc, "alt": _vm.imageAlt } })]), _c("transition", { attrs: { "name": "fade" } }, [_vm.showCloseButton ? _c("dt-button", { ref: "closeImage", staticClass: "d-modal__close", attrs: { "data-qa": "dt-image-viewer-close-btn", "circle": "", "size": "lg", "importance": "clear", "kind": "inverted", "aria-label": _vm.closeAriaLabel }, on: { "click": _vm.close }, scopedSlots: _vm._u([{ key: "icon", fn: function() {
|
|
179
|
-
return [_c("dt-icon
|
|
180
|
-
}, proxy: true }], null, false,
|
|
179
|
+
return [_c("dt-icon", { staticClass: "d-image-viewer__close-button", attrs: { "name": "close", "size": "400" } })];
|
|
180
|
+
}, proxy: true }], null, false, 1620344283) }) : _vm._e()], 1)], 1)]) : _vm._e()], 1);
|
|
181
181
|
};
|
|
182
182
|
var _sfc_staticRenderFns = [];
|
|
183
183
|
var __component__ = /* @__PURE__ */ _pluginVue2_normalizer(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image_viewer.vue.cjs","sources":["../../../components/image_viewer/image_viewer.vue"],"sourcesContent":["<template>\n <div>\n <dt-button\n data-qa=\"dt-image-viewer-preview\"\n class=\"d-image-viewer__preview-button\"\n :aria-label=\"ariaLabel\"\n importance=\"clear\"\n @click=\"openModal\"\n >\n <img\n :class=\"imageButtonClass\"\n :src=\"imageSrc\"\n :alt=\"imageAlt\"\n >\n </dt-button>\n <portal\n
|
|
1
|
+
{"version":3,"file":"image_viewer.vue.cjs","sources":["../../../components/image_viewer/image_viewer.vue"],"sourcesContent":["<template>\n <div>\n <dt-button\n data-qa=\"dt-image-viewer-preview\"\n class=\"d-image-viewer__preview-button\"\n :aria-label=\"ariaLabel\"\n importance=\"clear\"\n @click=\"openModal\"\n >\n <img\n :class=\"imageButtonClass\"\n :src=\"imageSrc\"\n :alt=\"imageAlt\"\n >\n </dt-button>\n <portal\n v-if=\"isOpen\"\n :selector=\"appendTo\"\n >\n <div\n :aria-hidden=\"!isOpen ? 'true' : 'false'\"\n class=\"d-modal\"\n data-qa=\"dt-modal\"\n v-on=\"modalListeners\"\n @mouseover=\"showCloseButton = true\"\n @mouseleave=\"showCloseButton = false\"\n @focusin=\" showCloseButton = true\"\n @focusout=\" showCloseButton = false\"\n >\n <div\n data-qa=\"dt-image-viewer-full\"\n class=\"d-image-viewer__full\"\n role=\"dialog\"\n aria-modal=\"true\"\n >\n <img\n class=\"d-image-viewer__full__image\"\n :src=\"imageSrc\"\n :alt=\"imageAlt\"\n >\n </div>\n <transition name=\"fade\">\n <dt-button\n v-if=\"showCloseButton\"\n ref=\"closeImage\"\n data-qa=\"dt-image-viewer-close-btn\"\n class=\"d-modal__close\"\n circle\n size=\"lg\"\n importance=\"clear\"\n kind=\"inverted\"\n :aria-label=\"closeAriaLabel\"\n @click=\"close\"\n >\n <template #icon>\n <dt-icon\n class=\"d-image-viewer__close-button\"\n name=\"close\"\n size=\"400\"\n />\n </template>\n </dt-button>\n </transition>\n </div>\n </portal>\n </div>\n</template>\n\n<script>\nimport Modal from '@/common/mixins/modal';\nimport { EVENT_KEYNAMES } from '@/common/constants';\nimport { DtIcon } from '@/components/icon';\nimport { DtButton } from '@/components/button';\nimport { Portal } from '@linusborg/vue-simple-portal';\n\nexport default {\n name: 'DtImageViewer',\n\n components: {\n Portal,\n DtButton,\n DtIcon,\n },\n\n mixins: [Modal],\n\n props: {\n /**\n * By default the portal appends to the body of the root parent. We can modify\n * this behaviour by passing an appendTo prop that points to an id or an html tag from the root of the parent.\n * The appendTo prop expects a CSS selector string or an actual DOM node.\n * type: string | HTMLElement, default: 'body'\n */\n appendTo: {\n type: String,\n default: 'body',\n },\n\n /**\n * Controls whether the image modal is shown. Leaving this null will have the image modal\n * trigger on click by default.\n * If you set this value, the default trigger behavior will be disabled and you can control it as you need.\n * Supports .sync modifier\n * @values null, true, false\n */\n open: {\n type: Boolean,\n default: null,\n },\n\n /**\n * URL of the image to be shown\n */\n imageSrc: {\n type: String,\n required: true,\n },\n\n /**\n * Alt text of image\n */\n imageAlt: {\n type: String,\n required: true,\n },\n\n /**\n * Image Class\n */\n imageButtonClass: {\n type: String,\n required: false,\n default: '',\n },\n\n /**\n * Aria label\n */\n ariaLabel: {\n type: String,\n required: true,\n },\n\n /**\n * Aria label for close button\n */\n closeAriaLabel: {\n type: String,\n required: true,\n },\n },\n\n emits: [\n /**\n * Emitted when popover is shown or hidden\n *\n * @event opened\n * @type {Boolean}\n */\n 'opened',\n\n /**\n * Event fired to sync the open prop with the parent component\n * @event update:open\n */\n 'update:open',\n ],\n\n data () {\n return {\n showCloseButton: true,\n isOpen: false,\n };\n },\n\n computed: {\n modalListeners () {\n return {\n ...this.$listeners,\n\n click: event => {\n (event.target === event.currentTarget) && this.close();\n },\n\n keydown: event => {\n switch (event.code) {\n case EVENT_KEYNAMES.esc:\n case EVENT_KEYNAMES.escape:\n this.close();\n break;\n case EVENT_KEYNAMES.tab:\n this.trapFocus(event);\n break;\n }\n },\n };\n },\n },\n\n watch: {\n isOpen: {\n immediate: true,\n handler (isShowing) {\n if (isShowing) {\n // Set a reference to the previously-active element, to which we'll return focus on modal close.\n this.previousActiveElement = document.activeElement;\n } else {\n // Modal is being hidden, so return focus to the previously active element before clearing the reference.\n this.previousActiveElement?.focus();\n this.previousActiveElement = null;\n }\n },\n },\n\n open: {\n handler: function (open) {\n if (open !== null) {\n this.isOpen = open;\n }\n },\n\n immediate: true,\n },\n },\n\n methods: {\n openModal () {\n // Has custom control passed in\n if (this.open !== null) {\n return;\n }\n this.isOpen = true;\n this.showCloseButton = true;\n this.$emit('opened', true);\n\n setTimeout(() => {\n this.focusAfterOpen();\n });\n },\n\n close () {\n this.isOpen = false;\n this.$emit('opened', false);\n\n if (this.open !== null) {\n this.$emit('update:open', false);\n }\n },\n\n focusAfterOpen () {\n this.$refs.closeImage?.$el.focus();\n },\n\n trapFocus (e) {\n if (this.isOpen) {\n this.focusTrappedTabPress(e);\n }\n },\n\n },\n};\n</script>\n"],"names":["Portal","DtButton","DtIcon","Modal","EVENT_KEYNAMES"],"mappings":";;;;;;;AA2EA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,QAAAA,gBAAA;AAAA,IACA,UAAAC;AAAAA,IACA,QAAAC;AAAAA,EACA;AAAA,EAEA,QAAA,CAAAC,KAAA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IASA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,kBAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,gBAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,iBAAA;AAAA,MACA,QAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,iBAAA;AACA,aAAA;AAAA,QACA,GAAA,KAAA;AAAA,QAEA,OAAA,WAAA;AACA,UAAA,MAAA,WAAA,MAAA,iBAAA,KAAA;QACA;AAAA,QAEA,SAAA,WAAA;AACA,kBAAA,MAAA,MAAA;AAAA,YACA,KAAAC,iBAAAA,eAAA;AAAA,YACA,KAAAA,iBAAA,eAAA;AACA,mBAAA,MAAA;AACA;AAAA,YACA,KAAAA,iBAAA,eAAA;AACA,mBAAA,UAAA,KAAA;AACA;AAAA,UACA;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA,QAAA;AAAA,MACA,WAAA;AAAA,MACA,QAAA,WAAA;;AACA,YAAA,WAAA;AAEA,eAAA,wBAAA,SAAA;AAAA,QACA,OAAA;AAEA,qBAAA,0BAAA,mBAAA;AACA,eAAA,wBAAA;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,MAAA;AAAA,MACA,SAAA,SAAA,MAAA;AACA,YAAA,SAAA,MAAA;AACA,eAAA,SAAA;AAAA,QACA;AAAA,MACA;AAAA,MAEA,WAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,YAAA;AAEA,UAAA,KAAA,SAAA,MAAA;AACA;AAAA,MACA;AACA,WAAA,SAAA;AACA,WAAA,kBAAA;AACA,WAAA,MAAA,UAAA,IAAA;AAEA,iBAAA,MAAA;AACA,aAAA,eAAA;AAAA,MACA,CAAA;AAAA,IACA;AAAA,IAEA,QAAA;AACA,WAAA,SAAA;AACA,WAAA,MAAA,UAAA,KAAA;AAEA,UAAA,KAAA,SAAA,MAAA;AACA,aAAA,MAAA,eAAA,KAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,iBAAA;;AACA,iBAAA,MAAA,eAAA,mBAAA,IAAA;AAAA,IACA;AAAA,IAEA,UAAA,GAAA;AACA,UAAA,KAAA,QAAA;AACA,aAAA,qBAAA,CAAA;AAAA,MACA;AAAA,IACA;AAAA,EAEA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import Modal from "../../common/mixins/modal.js";
|
|
2
2
|
import { EVENT_KEYNAMES } from "../../common/constants.js";
|
|
3
|
-
import { DtIconClose } from "@dialpad/dialtone-icons/vue2";
|
|
4
3
|
import { Portal } from "@linusborg/vue-simple-portal";
|
|
5
4
|
import normalizeComponent from "../../_virtual/_plugin-vue2_normalizer.js";
|
|
6
5
|
import DtButton from "../button/button.vue.js";
|
|
6
|
+
import DtIcon from "../icon/icon.vue.js";
|
|
7
7
|
const _sfc_main = {
|
|
8
8
|
name: "DtImageViewer",
|
|
9
9
|
components: {
|
|
10
10
|
Portal,
|
|
11
11
|
DtButton,
|
|
12
|
-
|
|
12
|
+
DtIcon
|
|
13
13
|
},
|
|
14
14
|
mixins: [Modal],
|
|
15
15
|
props: {
|
|
@@ -175,8 +175,8 @@ var _sfc_render = function render() {
|
|
|
175
175
|
}, "focusout": function($event) {
|
|
176
176
|
_vm.showCloseButton = false;
|
|
177
177
|
} } }, _vm.modalListeners), [_c("div", { staticClass: "d-image-viewer__full", attrs: { "data-qa": "dt-image-viewer-full", "role": "dialog", "aria-modal": "true" } }, [_c("img", { staticClass: "d-image-viewer__full__image", attrs: { "src": _vm.imageSrc, "alt": _vm.imageAlt } })]), _c("transition", { attrs: { "name": "fade" } }, [_vm.showCloseButton ? _c("dt-button", { ref: "closeImage", staticClass: "d-modal__close", attrs: { "data-qa": "dt-image-viewer-close-btn", "circle": "", "size": "lg", "importance": "clear", "kind": "inverted", "aria-label": _vm.closeAriaLabel }, on: { "click": _vm.close }, scopedSlots: _vm._u([{ key: "icon", fn: function() {
|
|
178
|
-
return [_c("dt-icon
|
|
179
|
-
}, proxy: true }], null, false,
|
|
178
|
+
return [_c("dt-icon", { staticClass: "d-image-viewer__close-button", attrs: { "name": "close", "size": "400" } })];
|
|
179
|
+
}, proxy: true }], null, false, 1620344283) }) : _vm._e()], 1)], 1)]) : _vm._e()], 1);
|
|
180
180
|
};
|
|
181
181
|
var _sfc_staticRenderFns = [];
|
|
182
182
|
var __component__ = /* @__PURE__ */ normalizeComponent(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image_viewer.vue.js","sources":["../../../components/image_viewer/image_viewer.vue"],"sourcesContent":["<template>\n <div>\n <dt-button\n data-qa=\"dt-image-viewer-preview\"\n class=\"d-image-viewer__preview-button\"\n :aria-label=\"ariaLabel\"\n importance=\"clear\"\n @click=\"openModal\"\n >\n <img\n :class=\"imageButtonClass\"\n :src=\"imageSrc\"\n :alt=\"imageAlt\"\n >\n </dt-button>\n <portal\n
|
|
1
|
+
{"version":3,"file":"image_viewer.vue.js","sources":["../../../components/image_viewer/image_viewer.vue"],"sourcesContent":["<template>\n <div>\n <dt-button\n data-qa=\"dt-image-viewer-preview\"\n class=\"d-image-viewer__preview-button\"\n :aria-label=\"ariaLabel\"\n importance=\"clear\"\n @click=\"openModal\"\n >\n <img\n :class=\"imageButtonClass\"\n :src=\"imageSrc\"\n :alt=\"imageAlt\"\n >\n </dt-button>\n <portal\n v-if=\"isOpen\"\n :selector=\"appendTo\"\n >\n <div\n :aria-hidden=\"!isOpen ? 'true' : 'false'\"\n class=\"d-modal\"\n data-qa=\"dt-modal\"\n v-on=\"modalListeners\"\n @mouseover=\"showCloseButton = true\"\n @mouseleave=\"showCloseButton = false\"\n @focusin=\" showCloseButton = true\"\n @focusout=\" showCloseButton = false\"\n >\n <div\n data-qa=\"dt-image-viewer-full\"\n class=\"d-image-viewer__full\"\n role=\"dialog\"\n aria-modal=\"true\"\n >\n <img\n class=\"d-image-viewer__full__image\"\n :src=\"imageSrc\"\n :alt=\"imageAlt\"\n >\n </div>\n <transition name=\"fade\">\n <dt-button\n v-if=\"showCloseButton\"\n ref=\"closeImage\"\n data-qa=\"dt-image-viewer-close-btn\"\n class=\"d-modal__close\"\n circle\n size=\"lg\"\n importance=\"clear\"\n kind=\"inverted\"\n :aria-label=\"closeAriaLabel\"\n @click=\"close\"\n >\n <template #icon>\n <dt-icon\n class=\"d-image-viewer__close-button\"\n name=\"close\"\n size=\"400\"\n />\n </template>\n </dt-button>\n </transition>\n </div>\n </portal>\n </div>\n</template>\n\n<script>\nimport Modal from '@/common/mixins/modal';\nimport { EVENT_KEYNAMES } from '@/common/constants';\nimport { DtIcon } from '@/components/icon';\nimport { DtButton } from '@/components/button';\nimport { Portal } from '@linusborg/vue-simple-portal';\n\nexport default {\n name: 'DtImageViewer',\n\n components: {\n Portal,\n DtButton,\n DtIcon,\n },\n\n mixins: [Modal],\n\n props: {\n /**\n * By default the portal appends to the body of the root parent. We can modify\n * this behaviour by passing an appendTo prop that points to an id or an html tag from the root of the parent.\n * The appendTo prop expects a CSS selector string or an actual DOM node.\n * type: string | HTMLElement, default: 'body'\n */\n appendTo: {\n type: String,\n default: 'body',\n },\n\n /**\n * Controls whether the image modal is shown. Leaving this null will have the image modal\n * trigger on click by default.\n * If you set this value, the default trigger behavior will be disabled and you can control it as you need.\n * Supports .sync modifier\n * @values null, true, false\n */\n open: {\n type: Boolean,\n default: null,\n },\n\n /**\n * URL of the image to be shown\n */\n imageSrc: {\n type: String,\n required: true,\n },\n\n /**\n * Alt text of image\n */\n imageAlt: {\n type: String,\n required: true,\n },\n\n /**\n * Image Class\n */\n imageButtonClass: {\n type: String,\n required: false,\n default: '',\n },\n\n /**\n * Aria label\n */\n ariaLabel: {\n type: String,\n required: true,\n },\n\n /**\n * Aria label for close button\n */\n closeAriaLabel: {\n type: String,\n required: true,\n },\n },\n\n emits: [\n /**\n * Emitted when popover is shown or hidden\n *\n * @event opened\n * @type {Boolean}\n */\n 'opened',\n\n /**\n * Event fired to sync the open prop with the parent component\n * @event update:open\n */\n 'update:open',\n ],\n\n data () {\n return {\n showCloseButton: true,\n isOpen: false,\n };\n },\n\n computed: {\n modalListeners () {\n return {\n ...this.$listeners,\n\n click: event => {\n (event.target === event.currentTarget) && this.close();\n },\n\n keydown: event => {\n switch (event.code) {\n case EVENT_KEYNAMES.esc:\n case EVENT_KEYNAMES.escape:\n this.close();\n break;\n case EVENT_KEYNAMES.tab:\n this.trapFocus(event);\n break;\n }\n },\n };\n },\n },\n\n watch: {\n isOpen: {\n immediate: true,\n handler (isShowing) {\n if (isShowing) {\n // Set a reference to the previously-active element, to which we'll return focus on modal close.\n this.previousActiveElement = document.activeElement;\n } else {\n // Modal is being hidden, so return focus to the previously active element before clearing the reference.\n this.previousActiveElement?.focus();\n this.previousActiveElement = null;\n }\n },\n },\n\n open: {\n handler: function (open) {\n if (open !== null) {\n this.isOpen = open;\n }\n },\n\n immediate: true,\n },\n },\n\n methods: {\n openModal () {\n // Has custom control passed in\n if (this.open !== null) {\n return;\n }\n this.isOpen = true;\n this.showCloseButton = true;\n this.$emit('opened', true);\n\n setTimeout(() => {\n this.focusAfterOpen();\n });\n },\n\n close () {\n this.isOpen = false;\n this.$emit('opened', false);\n\n if (this.open !== null) {\n this.$emit('update:open', false);\n }\n },\n\n focusAfterOpen () {\n this.$refs.closeImage?.$el.focus();\n },\n\n trapFocus (e) {\n if (this.isOpen) {\n this.focusTrappedTabPress(e);\n }\n },\n\n },\n};\n</script>\n"],"names":[],"mappings":";;;;;;AA2EA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,QAAA,CAAA,KAAA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IASA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,kBAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,gBAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,iBAAA;AAAA,MACA,QAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,iBAAA;AACA,aAAA;AAAA,QACA,GAAA,KAAA;AAAA,QAEA,OAAA,WAAA;AACA,UAAA,MAAA,WAAA,MAAA,iBAAA,KAAA;QACA;AAAA,QAEA,SAAA,WAAA;AACA,kBAAA,MAAA,MAAA;AAAA,YACA,KAAA,eAAA;AAAA,YACA,KAAA,eAAA;AACA,mBAAA,MAAA;AACA;AAAA,YACA,KAAA,eAAA;AACA,mBAAA,UAAA,KAAA;AACA;AAAA,UACA;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA,QAAA;AAAA,MACA,WAAA;AAAA,MACA,QAAA,WAAA;;AACA,YAAA,WAAA;AAEA,eAAA,wBAAA,SAAA;AAAA,QACA,OAAA;AAEA,qBAAA,0BAAA,mBAAA;AACA,eAAA,wBAAA;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,MAAA;AAAA,MACA,SAAA,SAAA,MAAA;AACA,YAAA,SAAA,MAAA;AACA,eAAA,SAAA;AAAA,QACA;AAAA,MACA;AAAA,MAEA,WAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,YAAA;AAEA,UAAA,KAAA,SAAA,MAAA;AACA;AAAA,MACA;AACA,WAAA,SAAA;AACA,WAAA,kBAAA;AACA,WAAA,MAAA,UAAA,IAAA;AAEA,iBAAA,MAAA;AACA,aAAA,eAAA;AAAA,MACA,CAAA;AAAA,IACA;AAAA,IAEA,QAAA;AACA,WAAA,SAAA;AACA,WAAA,MAAA,UAAA,KAAA;AAEA,UAAA,KAAA,SAAA,MAAA;AACA,aAAA,MAAA,eAAA,KAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,iBAAA;;AACA,iBAAA,MAAA,eAAA,mBAAA,IAAA;AAAA,IACA;AAAA,IAEA,UAAA,GAAA;AACA,UAAA,KAAA,QAAA;AACA,aAAA,qBAAA,CAAA;AAAA,MACA;AAAA,IACA;AAAA,EAEA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;"}
|