@dialpad/dialtone-vue 2.127.0 → 2.127.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/chunks/_plugin-vue2_normalizer-1aBeR4AK.js +59 -0
- package/dist/chunks/_plugin-vue2_normalizer-1aBeR4AK.js.map +1 -0
- package/dist/chunks/_plugin-vue2_normalizer-sOSkiPF3.js +60 -0
- package/dist/chunks/_plugin-vue2_normalizer-sOSkiPF3.js.map +1 -0
- package/dist/chunks/{dropdown-SMWaTWyF.js → dropdown-DTtcQEFC.js} +131 -84
- package/dist/chunks/{dropdown-SMWaTWyF.js.map → dropdown-DTtcQEFC.js.map} +1 -1
- package/dist/chunks/dropdown-IaLNHmVd.js +403 -0
- package/dist/chunks/{dropdown-zhMEz3bn.js.map → dropdown-IaLNHmVd.js.map} +1 -1
- package/dist/chunks/dropdown_constants-2pGCXy7m.js +8 -0
- package/dist/chunks/dropdown_constants-2pGCXy7m.js.map +1 -0
- package/dist/chunks/dropdown_constants-w1MXGC3Z.js +9 -0
- package/dist/chunks/dropdown_constants-w1MXGC3Z.js.map +1 -0
- package/dist/chunks/{icon_constants-OpYAAKwF.js → icon_constants-Dy4MEUJL.js} +7 -6
- package/dist/chunks/{icon_constants-2S_OSQ1t.js.map → icon_constants-Dy4MEUJL.js.map} +1 -1
- package/dist/chunks/icon_constants-QYpmdE0R.js +16 -0
- package/dist/chunks/{icon_constants-OpYAAKwF.js.map → icon_constants-QYpmdE0R.js.map} +1 -1
- package/dist/chunks/index-DUr1xHR0.js +442 -0
- package/dist/chunks/{index-2jPosQBn.js.map → index-DUr1xHR0.js.map} +1 -1
- package/dist/chunks/index-IA-Z8fgm.js +441 -0
- package/dist/chunks/{index-nIyl_PL6.js.map → index-IA-Z8fgm.js.map} +1 -1
- package/dist/chunks/{input-1tm09l_-.js → input-6kbd8Pju.js} +83 -60
- package/dist/chunks/{input-o-fc1X4b.js.map → input-6kbd8Pju.js.map} +1 -1
- package/dist/chunks/input-Axw-wFj2.js +295 -0
- package/dist/chunks/{input-1tm09l_-.js.map → input-Axw-wFj2.js.map} +1 -1
- package/dist/chunks/input_group-m3cWYUfI.js +143 -0
- package/dist/chunks/{input_group-zcAq3DQl.js.map → input_group-m3cWYUfI.js.map} +1 -1
- package/dist/chunks/{input_group-zcAq3DQl.js → input_group-qVZaS5Bb.js} +27 -24
- package/dist/chunks/{input_group-j2gTtc1C.js.map → input_group-qVZaS5Bb.js.map} +1 -1
- package/dist/chunks/keyboard_list_navigation-ScXhrxya.js +284 -0
- package/dist/chunks/{keyboard_list_navigation-N74Bpdq7.js.map → keyboard_list_navigation-ScXhrxya.js.map} +1 -1
- package/dist/chunks/keyboard_list_navigation-fJnl_Iox.js +283 -0
- package/dist/chunks/{keyboard_list_navigation-F0O8nht0.js.map → keyboard_list_navigation-fJnl_Iox.js.map} +1 -1
- package/dist/chunks/link_constants-Huj7D_hm.js +22 -0
- package/dist/chunks/{link_constants-Kn6kP4i1.js.map → link_constants-Huj7D_hm.js.map} +1 -1
- package/dist/chunks/link_constants-nWVlXQBs.js +23 -0
- package/dist/chunks/{link_constants-vIUB92L4.js.map → link_constants-nWVlXQBs.js.map} +1 -1
- package/dist/chunks/list_item_constants-EiqkqZvP.js +13 -0
- package/dist/chunks/{list_item_constants-Tsz5CO1m.js.map → list_item_constants-EiqkqZvP.js.map} +1 -1
- package/dist/chunks/list_item_constants-u1xcN9Dd.js +14 -0
- package/dist/chunks/{list_item_constants-LTUc74pD.js.map → list_item_constants-u1xcN9Dd.js.map} +1 -1
- package/dist/chunks/modal-VgxXAQFP.js +105 -0
- package/dist/chunks/{modal-qEzlo0Sj.js.map → modal-VgxXAQFP.js.map} +1 -1
- package/dist/chunks/modal-XOr4kiNZ.js +106 -0
- package/dist/chunks/{modal-VuMFkZFH.js.map → modal-XOr4kiNZ.js.map} +1 -1
- package/dist/chunks/notice_action-IRUoLX2d.js +196 -0
- package/dist/chunks/{notice_action-u3ZKIhit.js.map → notice_action-IRUoLX2d.js.map} +1 -1
- package/dist/chunks/notice_action-P6uDyE9x.js +195 -0
- package/dist/chunks/{notice_action-9NmtQRai.js.map → notice_action-P6uDyE9x.js.map} +1 -1
- package/dist/chunks/notice_constants-7Qt2CQEY.js +7 -0
- package/dist/chunks/{notice_constants-mC6al2Dm.js.map → notice_constants-7Qt2CQEY.js.map} +1 -1
- package/dist/chunks/notice_constants-UXo9e3bS.js +6 -0
- package/dist/chunks/{notice_constants-c--hBFQw.js.map → notice_constants-UXo9e3bS.js.map} +1 -1
- package/dist/chunks/popover_constants-JwBF9h1Z.js +143 -0
- package/dist/chunks/{popover_constants-hOEhklvr.js.map → popover_constants-JwBF9h1Z.js.map} +1 -1
- package/dist/chunks/popover_constants-Qkpb0yh2.js +144 -0
- package/dist/chunks/{popover_constants-qjlEkroB.js.map → popover_constants-Qkpb0yh2.js.map} +1 -1
- package/dist/chunks/sr_only_close_button-81bHIpPu.js +95 -0
- package/dist/chunks/{sr_only_close_button-ErijKGYR.js.map → sr_only_close_button-81bHIpPu.js.map} +1 -1
- package/dist/chunks/sr_only_close_button-ZaGdAHz7.js +94 -0
- package/dist/chunks/{sr_only_close_button-JGole5Xi.js.map → sr_only_close_button-ZaGdAHz7.js.map} +1 -1
- package/dist/chunks/stack_constants-HraCekPm.js +15 -0
- package/dist/chunks/{stack_constants-m9Ickqw0.js.map → stack_constants-HraCekPm.js.map} +1 -1
- package/dist/chunks/stack_constants-SMzMWnAQ.js +14 -0
- package/dist/chunks/{stack_constants-u7tNqGtc.js.map → stack_constants-SMzMWnAQ.js.map} +1 -1
- package/dist/chunks/tab-FcsV5VmK.js +386 -0
- package/dist/chunks/{tab-7hJQSLFx.js.map → tab-FcsV5VmK.js.map} +1 -1
- package/dist/chunks/tab-V4cb44Ry.js +387 -0
- package/dist/chunks/{tab-Qm9LVkYj.js.map → tab-V4cb44Ry.js.map} +1 -1
- package/dist/common/constants.cjs +60 -0
- package/dist/{lib → common}/constants.cjs.map +1 -1
- package/dist/{lib → common}/constants.js +25 -18
- package/dist/{lib → common}/constants.js.map +1 -1
- package/dist/common/dates.cjs +72 -0
- package/dist/{lib → common}/dates.cjs.map +1 -1
- package/dist/common/dates.js +72 -0
- package/dist/{lib → common}/dates.js.map +1 -1
- package/dist/common/emoji.cjs +163 -0
- package/dist/common/emoji.cjs.map +1 -0
- package/dist/common/emoji.js +168 -0
- package/dist/common/emoji.js.map +1 -0
- package/dist/common/mixins.cjs +17 -0
- package/dist/{lib → common}/mixins.cjs.map +1 -1
- package/dist/common/mixins.js +17 -0
- package/dist/common/utils.cjs +237 -0
- package/dist/{lib → common}/utils.cjs.map +1 -1
- package/dist/common/utils.js +237 -0
- package/dist/{lib → common}/utils.js.map +1 -1
- package/dist/common/validators.cjs +23 -0
- package/dist/{lib → common}/validators.cjs.map +1 -1
- package/dist/common/validators.js +23 -0
- package/dist/{lib → common}/validators.js.map +1 -1
- package/dist/dialtone-vue.cjs +372 -1
- package/dist/dialtone-vue.cjs.map +1 -1
- package/dist/dialtone-vue.js +325 -324
- package/dist/dialtone-vue.js.map +1 -1
- package/dist/lib/attachment-carousel.cjs +260 -1
- package/dist/lib/attachment-carousel.cjs.map +1 -1
- package/dist/lib/attachment-carousel.js +96 -84
- package/dist/lib/attachment-carousel.js.map +1 -1
- package/dist/lib/avatar.cjs +399 -1
- package/dist/lib/avatar.cjs.map +1 -1
- package/dist/lib/avatar.js +111 -79
- package/dist/lib/avatar.js.map +1 -1
- package/dist/lib/badge.cjs +182 -1
- package/dist/lib/badge.cjs.map +1 -1
- package/dist/lib/badge.js +53 -38
- package/dist/lib/badge.js.map +1 -1
- package/dist/lib/banner.cjs +209 -2
- package/dist/lib/banner.cjs.map +1 -1
- package/dist/lib/banner.js +58 -47
- package/dist/lib/banner.js.map +1 -1
- package/dist/lib/breadcrumbs.cjs +146 -1
- package/dist/lib/breadcrumbs.cjs.map +1 -1
- package/dist/lib/breadcrumbs.js +57 -48
- package/dist/lib/breadcrumbs.js.map +1 -1
- package/dist/lib/button-group.cjs +47 -1
- package/dist/lib/button-group.cjs.map +1 -1
- package/dist/lib/button-group.js +21 -18
- package/dist/lib/button-group.js.map +1 -1
- package/dist/lib/button.cjs +349 -1
- package/dist/lib/button.cjs.map +1 -1
- package/dist/lib/button.js +98 -76
- package/dist/lib/button.js.map +1 -1
- package/dist/lib/callbar-button-with-popover.cjs +249 -1
- package/dist/lib/callbar-button-with-popover.cjs.map +1 -1
- package/dist/lib/callbar-button-with-popover.js +66 -50
- package/dist/lib/callbar-button-with-popover.js.map +1 -1
- package/dist/lib/callbar-button.cjs +182 -1
- package/dist/lib/callbar-button.cjs.map +1 -1
- package/dist/lib/callbar-button.js +42 -34
- package/dist/lib/callbar-button.js.map +1 -1
- package/dist/lib/callbox.cjs +146 -1
- package/dist/lib/callbox.cjs.map +1 -1
- package/dist/lib/callbox.js +38 -32
- package/dist/lib/callbox.js.map +1 -1
- package/dist/lib/card.cjs +73 -1
- package/dist/lib/card.cjs.map +1 -1
- package/dist/lib/card.js +22 -20
- package/dist/lib/card.js.map +1 -1
- package/dist/lib/checkbox-group.cjs +129 -1
- package/dist/lib/checkbox-group.cjs.map +1 -1
- package/dist/lib/checkbox-group.js +42 -29
- package/dist/lib/checkbox-group.js.map +1 -1
- package/dist/lib/checkbox.cjs +127 -1
- package/dist/lib/checkbox.cjs.map +1 -1
- package/dist/lib/checkbox.js +46 -35
- package/dist/lib/checkbox.js.map +1 -1
- package/dist/lib/chip.cjs +198 -1
- package/dist/lib/chip.cjs.map +1 -1
- package/dist/lib/chip.js +59 -45
- package/dist/lib/chip.js.map +1 -1
- package/dist/lib/codeblock.cjs +29 -2
- package/dist/lib/codeblock.cjs.map +1 -1
- package/dist/lib/codeblock.js +15 -14
- package/dist/lib/codeblock.js.map +1 -1
- package/dist/lib/collapsible.cjs +334 -1
- package/dist/lib/collapsible.cjs.map +1 -1
- package/dist/lib/collapsible.js +91 -68
- package/dist/lib/collapsible.js.map +1 -1
- package/dist/lib/combobox-multi-select.cjs +519 -1
- package/dist/lib/combobox-multi-select.cjs.map +1 -1
- package/dist/lib/combobox-multi-select.js +223 -136
- package/dist/lib/combobox-multi-select.js.map +1 -1
- package/dist/lib/combobox-with-popover.cjs +384 -1
- package/dist/lib/combobox-with-popover.cjs.map +1 -1
- package/dist/lib/combobox-with-popover.js +130 -86
- package/dist/lib/combobox-with-popover.js.map +1 -1
- package/dist/lib/combobox.cjs +18 -1
- package/dist/lib/combobox.cjs.map +1 -1
- package/dist/lib/combobox.js +9 -9
- package/dist/lib/contact-info.cjs +145 -1
- package/dist/lib/contact-info.cjs.map +1 -1
- package/dist/lib/contact-info.js +34 -32
- package/dist/lib/contact-info.js.map +1 -1
- package/dist/lib/contact-row.cjs +205 -1
- package/dist/lib/contact-row.cjs.map +1 -1
- package/dist/lib/contact-row.js +42 -39
- package/dist/lib/contact-row.js.map +1 -1
- package/dist/lib/datepicker.cjs +662 -1
- package/dist/lib/datepicker.cjs.map +1 -1
- package/dist/lib/datepicker.js +330 -218
- package/dist/lib/datepicker.js.map +1 -1
- package/dist/lib/description-list.cjs +114 -1
- package/dist/lib/description-list.cjs.map +1 -1
- package/dist/lib/description-list.js +51 -19
- package/dist/lib/description-list.js.map +1 -1
- package/dist/lib/dropdown.cjs +45 -1
- package/dist/lib/dropdown.cjs.map +1 -1
- package/dist/lib/dropdown.js +27 -25
- package/dist/lib/dropdown.js.map +1 -1
- package/dist/lib/editor.cjs +555 -1
- package/dist/lib/editor.cjs.map +1 -1
- package/dist/lib/editor.js +191 -162
- package/dist/lib/editor.js.map +1 -1
- package/dist/lib/emoji-picker.cjs +1063 -1
- package/dist/lib/emoji-picker.cjs.map +1 -1
- package/dist/lib/emoji-picker.js +638 -374
- package/dist/lib/emoji-picker.js.map +1 -1
- package/dist/lib/emoji-row.cjs +88 -1
- package/dist/lib/emoji-row.cjs.map +1 -1
- package/dist/lib/emoji-row.js +46 -40
- package/dist/lib/emoji-row.js.map +1 -1
- package/dist/lib/emoji-text-wrapper.cjs +109 -1
- package/dist/lib/emoji-text-wrapper.cjs.map +1 -1
- package/dist/lib/emoji-text-wrapper.js +49 -35
- package/dist/lib/emoji-text-wrapper.js.map +1 -1
- package/dist/lib/emoji.cjs +145 -1
- package/dist/lib/emoji.cjs.map +1 -1
- package/dist/lib/emoji.js +140 -5
- package/dist/lib/emoji.js.map +1 -1
- package/dist/lib/feed-item-row.cjs +213 -1
- package/dist/lib/feed-item-row.cjs.map +1 -1
- package/dist/lib/feed-item-row.js +71 -63
- package/dist/lib/feed-item-row.js.map +1 -1
- package/dist/lib/feed-pill.cjs +149 -1
- package/dist/lib/feed-pill.cjs.map +1 -1
- package/dist/lib/feed-pill.js +60 -51
- package/dist/lib/feed-pill.js.map +1 -1
- package/dist/lib/general-row.cjs +405 -1
- package/dist/lib/general-row.cjs.map +1 -1
- package/dist/lib/general-row.js +133 -106
- package/dist/lib/general-row.js.map +1 -1
- package/dist/lib/group-row.cjs +117 -1
- package/dist/lib/group-row.cjs.map +1 -1
- package/dist/lib/group-row.js +33 -30
- package/dist/lib/group-row.js.map +1 -1
- package/dist/lib/grouped-chip.cjs +45 -1
- package/dist/lib/grouped-chip.cjs.map +1 -1
- package/dist/lib/grouped-chip.js +28 -26
- package/dist/lib/grouped-chip.js.map +1 -1
- package/dist/lib/hovercard.cjs +227 -1
- package/dist/lib/hovercard.cjs.map +1 -1
- package/dist/lib/hovercard.js +98 -63
- package/dist/lib/hovercard.js.map +1 -1
- package/dist/lib/icon.cjs +59 -1
- package/dist/lib/icon.cjs.map +1 -1
- package/dist/lib/icon.js +22 -20
- package/dist/lib/icon.js.map +1 -1
- package/dist/lib/image-viewer.cjs +190 -1
- package/dist/lib/image-viewer.cjs.map +1 -1
- package/dist/lib/image-viewer.js +83 -62
- package/dist/lib/image-viewer.js.map +1 -1
- package/dist/lib/input-group.cjs +91 -1
- package/dist/lib/input-group.cjs.map +1 -1
- package/dist/lib/input-group.js +29 -27
- package/dist/lib/input-group.js.map +1 -1
- package/dist/lib/input.cjs +492 -1
- package/dist/lib/input.cjs.map +1 -1
- package/dist/lib/input.js +127 -89
- package/dist/lib/input.js.map +1 -1
- package/dist/lib/item-layout.cjs +40 -1
- package/dist/lib/item-layout.cjs.map +1 -1
- package/dist/lib/item-layout.js +15 -13
- package/dist/lib/item-layout.js.map +1 -1
- package/dist/lib/ivr-node.cjs +209 -1
- package/dist/lib/ivr-node.cjs.map +1 -1
- package/dist/lib/ivr-node.js +115 -99
- package/dist/lib/ivr-node.js.map +1 -1
- package/dist/lib/keyboard-shortcut.cjs +106 -1
- package/dist/lib/keyboard-shortcut.cjs.map +1 -1
- package/dist/lib/keyboard-shortcut.js +42 -34
- package/dist/lib/keyboard-shortcut.js.map +1 -1
- package/dist/lib/lazy-show.cjs +80 -1
- package/dist/lib/lazy-show.cjs.map +1 -1
- package/dist/lib/lazy-show.js +20 -16
- package/dist/lib/lazy-show.js.map +1 -1
- package/dist/lib/link.cjs +70 -1
- package/dist/lib/link.cjs.map +1 -1
- package/dist/lib/link.js +22 -20
- package/dist/lib/link.js.map +1 -1
- package/dist/lib/list-item-group.cjs +60 -1
- package/dist/lib/list-item-group.cjs.map +1 -1
- package/dist/lib/list-item-group.js +19 -17
- package/dist/lib/list-item-group.js.map +1 -1
- package/dist/lib/list-item.cjs +204 -1
- package/dist/lib/list-item.cjs.map +1 -1
- package/dist/lib/list-item.js +67 -56
- package/dist/lib/list-item.js.map +1 -1
- package/dist/lib/message-input.cjs +554 -1
- package/dist/lib/message-input.cjs.map +1 -1
- package/dist/lib/message-input.js +174 -152
- package/dist/lib/message-input.js.map +1 -1
- package/dist/lib/modal.cjs +350 -2
- package/dist/lib/modal.cjs.map +1 -1
- package/dist/lib/modal.js +118 -90
- package/dist/lib/modal.js.map +1 -1
- package/dist/lib/notice.cjs +159 -1
- package/dist/lib/notice.cjs.map +1 -1
- package/dist/lib/notice.js +46 -43
- package/dist/lib/notice.js.map +1 -1
- package/dist/lib/pagination.cjs +152 -1
- package/dist/lib/pagination.cjs.map +1 -1
- package/dist/lib/pagination.js +60 -48
- package/dist/lib/pagination.js.map +1 -1
- package/dist/lib/popover.cjs +956 -1
- package/dist/lib/popover.cjs.map +1 -1
- package/dist/lib/popover.js +401 -221
- package/dist/lib/popover.js.map +1 -1
- package/dist/lib/presence.cjs +65 -1
- package/dist/lib/presence.cjs.map +1 -1
- package/dist/lib/presence.js +32 -26
- package/dist/lib/presence.js.map +1 -1
- package/dist/lib/radio-group.cjs +98 -1
- package/dist/lib/radio-group.cjs.map +1 -1
- package/dist/lib/radio-group.js +24 -22
- package/dist/lib/radio-group.js.map +1 -1
- package/dist/lib/radio.cjs +118 -1
- package/dist/lib/radio.cjs.map +1 -1
- package/dist/lib/radio.js +43 -35
- package/dist/lib/radio.js.map +1 -1
- package/dist/lib/rich-text-editor.cjs +1138 -1
- package/dist/lib/rich-text-editor.cjs.map +1 -1
- package/dist/lib/rich-text-editor.js +574 -387
- package/dist/lib/rich-text-editor.js.map +1 -1
- package/dist/lib/root-layout.cjs +130 -1
- package/dist/lib/root-layout.cjs.map +1 -1
- package/dist/lib/root-layout.js +28 -24
- package/dist/lib/root-layout.js.map +1 -1
- package/dist/lib/select-menu.cjs +282 -1
- package/dist/lib/select-menu.cjs.map +1 -1
- package/dist/lib/select-menu.js +101 -61
- package/dist/lib/select-menu.js.map +1 -1
- package/dist/lib/settings-menu-button.cjs +65 -1
- package/dist/lib/settings-menu-button.cjs.map +1 -1
- package/dist/lib/settings-menu-button.js +26 -24
- package/dist/lib/settings-menu-button.js.map +1 -1
- package/dist/lib/skeleton.cjs +612 -1
- package/dist/lib/skeleton.cjs.map +1 -1
- package/dist/lib/skeleton.js +174 -135
- package/dist/lib/skeleton.js.map +1 -1
- package/dist/lib/stack.cjs +127 -1
- package/dist/lib/stack.cjs.map +1 -1
- package/dist/lib/stack.js +66 -56
- package/dist/lib/stack.js.map +1 -1
- package/dist/lib/tabs.cjs +99 -1
- package/dist/lib/tabs.cjs.map +1 -1
- package/dist/lib/tabs.js +42 -35
- package/dist/lib/tabs.js.map +1 -1
- package/dist/lib/time-pill.cjs +47 -1
- package/dist/lib/time-pill.cjs.map +1 -1
- package/dist/lib/time-pill.js +21 -16
- package/dist/lib/time-pill.js.map +1 -1
- package/dist/lib/toast.cjs +247 -1
- package/dist/lib/toast.cjs.map +1 -1
- package/dist/lib/toast.js +78 -55
- package/dist/lib/toast.js.map +1 -1
- package/dist/lib/toggle.cjs +177 -1
- package/dist/lib/toggle.cjs.map +1 -1
- package/dist/lib/toggle.js +46 -37
- package/dist/lib/toggle.js.map +1 -1
- package/dist/lib/tooltip-directive.cjs +87 -1
- package/dist/lib/tooltip-directive.cjs.map +1 -1
- package/dist/lib/tooltip-directive.js +55 -41
- package/dist/lib/tooltip-directive.js.map +1 -1
- package/dist/lib/tooltip.cjs +436 -1
- package/dist/lib/tooltip.cjs.map +1 -1
- package/dist/lib/tooltip.js +152 -90
- package/dist/lib/tooltip.js.map +1 -1
- package/dist/lib/top-banner-info.cjs +63 -1
- package/dist/lib/top-banner-info.cjs.map +1 -1
- package/dist/lib/top-banner-info.js +22 -18
- package/dist/lib/top-banner-info.js.map +1 -1
- package/dist/lib/unread-pill.cjs +63 -1
- package/dist/lib/unread-pill.cjs.map +1 -1
- package/dist/lib/unread-pill.js +25 -21
- package/dist/lib/unread-pill.js.map +1 -1
- package/dist/lib/validation-messages.cjs +85 -1
- package/dist/lib/validation-messages.cjs.map +1 -1
- package/dist/lib/validation-messages.js +32 -29
- package/dist/lib/validation-messages.js.map +1 -1
- package/dist/style.css +1214 -1
- package/dist/types/components/rich_text_editor/extensions/emoji/EmojiComponent.vue.d.ts +2 -2
- package/dist/types/components/rich_text_editor/extensions/mentions/MentionComponent.vue.d.ts +2 -2
- package/package.json +31 -30
- package/dist/chunks/_plugin-vue2_normalizer-ZK80B3OL.js +0 -2
- package/dist/chunks/_plugin-vue2_normalizer-ZK80B3OL.js.map +0 -1
- package/dist/chunks/_plugin-vue2_normalizer-u6G_3nkj.js +0 -33
- package/dist/chunks/_plugin-vue2_normalizer-u6G_3nkj.js.map +0 -1
- package/dist/chunks/dropdown-zhMEz3bn.js +0 -2
- package/dist/chunks/dropdown_constants-EUcDxBrX.js +0 -9
- package/dist/chunks/dropdown_constants-EUcDxBrX.js.map +0 -1
- package/dist/chunks/dropdown_constants-KHFvVI2L.js +0 -2
- package/dist/chunks/dropdown_constants-KHFvVI2L.js.map +0 -1
- package/dist/chunks/icon_constants-2S_OSQ1t.js +0 -2
- package/dist/chunks/index-2jPosQBn.js +0 -3
- package/dist/chunks/index-YkSDT8-g.js +0 -244
- package/dist/chunks/index-YkSDT8-g.js.map +0 -1
- package/dist/chunks/index-nIyl_PL6.js +0 -372
- package/dist/chunks/index-sdfB7Aok.js +0 -2
- package/dist/chunks/index-sdfB7Aok.js.map +0 -1
- package/dist/chunks/input-o-fc1X4b.js +0 -2
- package/dist/chunks/input_group-j2gTtc1C.js +0 -2
- package/dist/chunks/keyboard_list_navigation-F0O8nht0.js +0 -197
- package/dist/chunks/keyboard_list_navigation-N74Bpdq7.js +0 -2
- package/dist/chunks/link_constants-Kn6kP4i1.js +0 -2
- package/dist/chunks/link_constants-vIUB92L4.js +0 -16
- package/dist/chunks/list_item_constants-LTUc74pD.js +0 -13
- package/dist/chunks/list_item_constants-Tsz5CO1m.js +0 -2
- package/dist/chunks/modal-VuMFkZFH.js +0 -82
- package/dist/chunks/modal-qEzlo0Sj.js +0 -2
- package/dist/chunks/notice_action-9NmtQRai.js +0 -182
- package/dist/chunks/notice_action-u3ZKIhit.js +0 -2
- package/dist/chunks/notice_constants-c--hBFQw.js +0 -6
- package/dist/chunks/notice_constants-mC6al2Dm.js +0 -2
- package/dist/chunks/popover_constants-hOEhklvr.js +0 -2
- package/dist/chunks/popover_constants-qjlEkroB.js +0 -114
- package/dist/chunks/sr_only_close_button-ErijKGYR.js +0 -3
- package/dist/chunks/sr_only_close_button-JGole5Xi.js +0 -86
- package/dist/chunks/stack_constants-m9Ickqw0.js +0 -2
- package/dist/chunks/stack_constants-u7tNqGtc.js +0 -13
- package/dist/chunks/tab-7hJQSLFx.js +0 -2
- package/dist/chunks/tab-Qm9LVkYj.js +0 -346
- package/dist/lib/constants.cjs +0 -2
- package/dist/lib/dates.cjs +0 -2
- package/dist/lib/dates.js +0 -57
- package/dist/lib/mixins.cjs +0 -2
- package/dist/lib/mixins.js +0 -17
- package/dist/lib/utils.cjs +0 -2
- package/dist/lib/utils.js +0 -175
- package/dist/lib/validators.cjs +0 -2
- package/dist/lib/validators.js +0 -12
- /package/dist/{lib → common}/mixins.js.map +0 -0
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
function normalizeComponent(scriptExports, render, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {
|
|
3
|
+
var options = typeof scriptExports === "function" ? scriptExports.options : scriptExports;
|
|
4
|
+
if (render) {
|
|
5
|
+
options.render = render;
|
|
6
|
+
options.staticRenderFns = staticRenderFns;
|
|
7
|
+
options._compiled = true;
|
|
8
|
+
}
|
|
9
|
+
if (functionalTemplate) {
|
|
10
|
+
options.functional = true;
|
|
11
|
+
}
|
|
12
|
+
if (scopeId) {
|
|
13
|
+
options._scopeId = "data-v-" + scopeId;
|
|
14
|
+
}
|
|
15
|
+
var hook;
|
|
16
|
+
if (moduleIdentifier) {
|
|
17
|
+
hook = function(context) {
|
|
18
|
+
context = context || // cached call
|
|
19
|
+
this.$vnode && this.$vnode.ssrContext || // stateful
|
|
20
|
+
this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext;
|
|
21
|
+
if (!context && typeof __VUE_SSR_CONTEXT__ !== "undefined") {
|
|
22
|
+
context = __VUE_SSR_CONTEXT__;
|
|
23
|
+
}
|
|
24
|
+
if (injectStyles) {
|
|
25
|
+
injectStyles.call(this, context);
|
|
26
|
+
}
|
|
27
|
+
if (context && context._registeredComponents) {
|
|
28
|
+
context._registeredComponents.add(moduleIdentifier);
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
options._ssrRegister = hook;
|
|
32
|
+
} else if (injectStyles) {
|
|
33
|
+
hook = shadowMode ? function() {
|
|
34
|
+
injectStyles.call(
|
|
35
|
+
this,
|
|
36
|
+
(options.functional ? this.parent : this).$root.$options.shadowRoot
|
|
37
|
+
);
|
|
38
|
+
} : injectStyles;
|
|
39
|
+
}
|
|
40
|
+
if (hook) {
|
|
41
|
+
if (options.functional) {
|
|
42
|
+
options._injectStyles = hook;
|
|
43
|
+
var originalRender = options.render;
|
|
44
|
+
options.render = function renderWithStyleInjection(h, context) {
|
|
45
|
+
hook.call(context);
|
|
46
|
+
return originalRender(h, context);
|
|
47
|
+
};
|
|
48
|
+
} else {
|
|
49
|
+
var existing = options.beforeCreate;
|
|
50
|
+
options.beforeCreate = existing ? [].concat(existing, hook) : [hook];
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return {
|
|
54
|
+
exports: scriptExports,
|
|
55
|
+
options
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
exports.normalizeComponent = normalizeComponent;
|
|
59
|
+
//# sourceMappingURL=_plugin-vue2_normalizer-1aBeR4AK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_plugin-vue2_normalizer-1aBeR4AK.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
function normalizeComponent(scriptExports, render, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {
|
|
2
|
+
var options = typeof scriptExports === "function" ? scriptExports.options : scriptExports;
|
|
3
|
+
if (render) {
|
|
4
|
+
options.render = render;
|
|
5
|
+
options.staticRenderFns = staticRenderFns;
|
|
6
|
+
options._compiled = true;
|
|
7
|
+
}
|
|
8
|
+
if (functionalTemplate) {
|
|
9
|
+
options.functional = true;
|
|
10
|
+
}
|
|
11
|
+
if (scopeId) {
|
|
12
|
+
options._scopeId = "data-v-" + scopeId;
|
|
13
|
+
}
|
|
14
|
+
var hook;
|
|
15
|
+
if (moduleIdentifier) {
|
|
16
|
+
hook = function(context) {
|
|
17
|
+
context = context || // cached call
|
|
18
|
+
this.$vnode && this.$vnode.ssrContext || // stateful
|
|
19
|
+
this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext;
|
|
20
|
+
if (!context && typeof __VUE_SSR_CONTEXT__ !== "undefined") {
|
|
21
|
+
context = __VUE_SSR_CONTEXT__;
|
|
22
|
+
}
|
|
23
|
+
if (injectStyles) {
|
|
24
|
+
injectStyles.call(this, context);
|
|
25
|
+
}
|
|
26
|
+
if (context && context._registeredComponents) {
|
|
27
|
+
context._registeredComponents.add(moduleIdentifier);
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
options._ssrRegister = hook;
|
|
31
|
+
} else if (injectStyles) {
|
|
32
|
+
hook = shadowMode ? function() {
|
|
33
|
+
injectStyles.call(
|
|
34
|
+
this,
|
|
35
|
+
(options.functional ? this.parent : this).$root.$options.shadowRoot
|
|
36
|
+
);
|
|
37
|
+
} : injectStyles;
|
|
38
|
+
}
|
|
39
|
+
if (hook) {
|
|
40
|
+
if (options.functional) {
|
|
41
|
+
options._injectStyles = hook;
|
|
42
|
+
var originalRender = options.render;
|
|
43
|
+
options.render = function renderWithStyleInjection(h, context) {
|
|
44
|
+
hook.call(context);
|
|
45
|
+
return originalRender(h, context);
|
|
46
|
+
};
|
|
47
|
+
} else {
|
|
48
|
+
var existing = options.beforeCreate;
|
|
49
|
+
options.beforeCreate = existing ? [].concat(existing, hook) : [hook];
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
return {
|
|
53
|
+
exports: scriptExports,
|
|
54
|
+
options
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
export {
|
|
58
|
+
normalizeComponent
|
|
59
|
+
};
|
|
60
|
+
//# sourceMappingURL=_plugin-vue2_normalizer-sOSkiPF3.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_plugin-vue2_normalizer-sOSkiPF3.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { getUniqueString
|
|
4
|
-
import { EVENT_KEYNAMES
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { DtPopover
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
const
|
|
1
|
+
import { KeyboardNavigation } from "./keyboard_list_navigation-ScXhrxya.js";
|
|
2
|
+
import { DROPDOWN_PADDING_CLASSES } from "./dropdown_constants-w1MXGC3Z.js";
|
|
3
|
+
import { getUniqueString } from "../common/utils.js";
|
|
4
|
+
import { EVENT_KEYNAMES } from "../common/constants.js";
|
|
5
|
+
import { SrOnlyCloseButton, SrOnlyCloseButtonMixin } from "./sr_only_close_button-81bHIpPu.js";
|
|
6
|
+
import { normalizeComponent } from "./_plugin-vue2_normalizer-sOSkiPF3.js";
|
|
7
|
+
import { DtPopover } from "../lib/popover.js";
|
|
8
|
+
import { LIST_ITEM_NAVIGATION_TYPES } from "./list_item_constants-u1xcN9Dd.js";
|
|
9
|
+
import { POPOVER_APPEND_TO_VALUES } from "./popover_constants-Qkpb0yh2.js";
|
|
10
|
+
const _sfc_main = {
|
|
11
11
|
name: "DtDropdown",
|
|
12
12
|
components: {
|
|
13
|
-
DtPopover
|
|
14
|
-
SrOnlyCloseButton
|
|
13
|
+
DtPopover,
|
|
14
|
+
SrOnlyCloseButton
|
|
15
15
|
},
|
|
16
16
|
mixins: [
|
|
17
|
-
|
|
17
|
+
KeyboardNavigation({
|
|
18
18
|
indexKey: "highlightIndex",
|
|
19
19
|
idKey: "highlightId",
|
|
20
20
|
listElementKey: "getListElement",
|
|
@@ -23,9 +23,9 @@ const f = {
|
|
|
23
23
|
beginningOfListMethod: "beginningOfListMethod",
|
|
24
24
|
endOfListMethod: "endOfListMethod",
|
|
25
25
|
activeItemKey: "activeItemEl",
|
|
26
|
-
focusOnKeyboardNavigation:
|
|
26
|
+
focusOnKeyboardNavigation: true
|
|
27
27
|
}),
|
|
28
|
-
|
|
28
|
+
SrOnlyCloseButtonMixin
|
|
29
29
|
],
|
|
30
30
|
props: {
|
|
31
31
|
/**
|
|
@@ -43,7 +43,7 @@ const f = {
|
|
|
43
43
|
*/
|
|
44
44
|
openOnContext: {
|
|
45
45
|
type: Boolean,
|
|
46
|
-
default:
|
|
46
|
+
default: false
|
|
47
47
|
},
|
|
48
48
|
/**
|
|
49
49
|
* Vertical padding size around the list element.
|
|
@@ -52,7 +52,9 @@ const f = {
|
|
|
52
52
|
padding: {
|
|
53
53
|
type: String,
|
|
54
54
|
default: "small",
|
|
55
|
-
validator: (
|
|
55
|
+
validator: (padding) => {
|
|
56
|
+
return Object.keys(DROPDOWN_PADDING_CLASSES).some((item) => item === padding);
|
|
57
|
+
}
|
|
56
58
|
},
|
|
57
59
|
/**
|
|
58
60
|
* Determines modal state, dropdown has a modal overlay preventing interaction with elements
|
|
@@ -60,7 +62,7 @@ const f = {
|
|
|
60
62
|
*/
|
|
61
63
|
modal: {
|
|
62
64
|
type: Boolean,
|
|
63
|
-
default:
|
|
65
|
+
default: true
|
|
64
66
|
},
|
|
65
67
|
/**
|
|
66
68
|
* Width configuration for the popover content. When its value is 'anchor',
|
|
@@ -94,7 +96,7 @@ const f = {
|
|
|
94
96
|
listId: {
|
|
95
97
|
type: String,
|
|
96
98
|
default() {
|
|
97
|
-
return
|
|
99
|
+
return getUniqueString();
|
|
98
100
|
}
|
|
99
101
|
},
|
|
100
102
|
/**
|
|
@@ -106,8 +108,8 @@ const f = {
|
|
|
106
108
|
*/
|
|
107
109
|
navigationType: {
|
|
108
110
|
type: String,
|
|
109
|
-
default:
|
|
110
|
-
validator: (t) => Object.values(
|
|
111
|
+
default: LIST_ITEM_NAVIGATION_TYPES.ARROW_KEYS,
|
|
112
|
+
validator: (t) => Object.values(LIST_ITEM_NAVIGATION_TYPES).includes(t)
|
|
111
113
|
},
|
|
112
114
|
/**
|
|
113
115
|
* If the dropdown does not fit in the direction described by "placement",
|
|
@@ -121,7 +123,9 @@ const f = {
|
|
|
121
123
|
* */
|
|
122
124
|
fallbackPlacements: {
|
|
123
125
|
type: Array,
|
|
124
|
-
default: () =>
|
|
126
|
+
default: () => {
|
|
127
|
+
return ["auto"];
|
|
128
|
+
}
|
|
125
129
|
},
|
|
126
130
|
/**
|
|
127
131
|
* The direction the dropdown displays relative to the anchor.
|
|
@@ -159,7 +163,9 @@ const f = {
|
|
|
159
163
|
appendTo: {
|
|
160
164
|
type: [HTMLElement, String],
|
|
161
165
|
default: "body",
|
|
162
|
-
validator: (
|
|
166
|
+
validator: (appendTo) => {
|
|
167
|
+
return POPOVER_APPEND_TO_VALUES.includes(appendTo) || appendTo instanceof HTMLElement;
|
|
168
|
+
}
|
|
163
169
|
},
|
|
164
170
|
/**
|
|
165
171
|
* If set to false the dialog will display over top of the anchor when there is insufficient space.
|
|
@@ -175,7 +181,7 @@ const f = {
|
|
|
175
181
|
*/
|
|
176
182
|
tether: {
|
|
177
183
|
type: Boolean,
|
|
178
|
-
default:
|
|
184
|
+
default: true
|
|
179
185
|
},
|
|
180
186
|
/**
|
|
181
187
|
* Named transition when the content display is toggled.
|
|
@@ -209,10 +215,10 @@ const f = {
|
|
|
209
215
|
],
|
|
210
216
|
data() {
|
|
211
217
|
return {
|
|
212
|
-
LIST_ITEM_NAVIGATION_TYPES
|
|
213
|
-
DROPDOWN_PADDING_CLASSES
|
|
214
|
-
EVENT_KEYNAMES
|
|
215
|
-
openedWithKeyboard:
|
|
218
|
+
LIST_ITEM_NAVIGATION_TYPES,
|
|
219
|
+
DROPDOWN_PADDING_CLASSES,
|
|
220
|
+
EVENT_KEYNAMES,
|
|
221
|
+
openedWithKeyboard: false,
|
|
216
222
|
isOpen: null
|
|
217
223
|
};
|
|
218
224
|
},
|
|
@@ -220,37 +226,46 @@ const f = {
|
|
|
220
226
|
dropdownListeners() {
|
|
221
227
|
return {
|
|
222
228
|
...this.$listeners,
|
|
223
|
-
opened: (
|
|
224
|
-
this.updateInitialHighlightIndex(
|
|
229
|
+
opened: (isPopoverOpen) => {
|
|
230
|
+
this.updateInitialHighlightIndex(isPopoverOpen);
|
|
225
231
|
},
|
|
226
|
-
keydown: (
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
case
|
|
230
|
-
|
|
232
|
+
keydown: (event) => {
|
|
233
|
+
const eventCode = event.code;
|
|
234
|
+
switch (eventCode) {
|
|
235
|
+
case EVENT_KEYNAMES.up:
|
|
236
|
+
case EVENT_KEYNAMES.arrowup:
|
|
237
|
+
this.onUpKeyPress(event);
|
|
238
|
+
event.stopPropagation();
|
|
239
|
+
event.preventDefault();
|
|
231
240
|
break;
|
|
232
|
-
case
|
|
233
|
-
case
|
|
234
|
-
this.onDownKeyPress(
|
|
241
|
+
case EVENT_KEYNAMES.down:
|
|
242
|
+
case EVENT_KEYNAMES.arrowdown:
|
|
243
|
+
this.onDownKeyPress(event);
|
|
244
|
+
event.stopPropagation();
|
|
245
|
+
event.preventDefault();
|
|
235
246
|
break;
|
|
236
|
-
case
|
|
237
|
-
case
|
|
247
|
+
case EVENT_KEYNAMES.space:
|
|
248
|
+
case EVENT_KEYNAMES.spacebar:
|
|
238
249
|
this.onSpaceKey();
|
|
239
250
|
break;
|
|
240
|
-
case
|
|
251
|
+
case EVENT_KEYNAMES.enter:
|
|
241
252
|
this.onEnterKey();
|
|
242
253
|
break;
|
|
243
|
-
case
|
|
244
|
-
this.onHomeKeyPress(
|
|
254
|
+
case EVENT_KEYNAMES.home:
|
|
255
|
+
this.onHomeKeyPress(event);
|
|
256
|
+
event.stopPropagation();
|
|
257
|
+
event.preventDefault();
|
|
245
258
|
break;
|
|
246
|
-
case
|
|
247
|
-
this.onEndKeyPress(
|
|
259
|
+
case EVENT_KEYNAMES.end:
|
|
260
|
+
this.onEndKeyPress(event);
|
|
261
|
+
event.stopPropagation();
|
|
262
|
+
event.preventDefault();
|
|
248
263
|
break;
|
|
249
264
|
default:
|
|
250
|
-
this.onKeyPress(
|
|
265
|
+
this.onKeyPress(event);
|
|
251
266
|
break;
|
|
252
267
|
}
|
|
253
|
-
this.$emit("keydown",
|
|
268
|
+
this.$emit("keydown", event);
|
|
254
269
|
}
|
|
255
270
|
};
|
|
256
271
|
},
|
|
@@ -269,7 +284,7 @@ const f = {
|
|
|
269
284
|
listClasses() {
|
|
270
285
|
return [
|
|
271
286
|
"d-dropdown-list",
|
|
272
|
-
|
|
287
|
+
DROPDOWN_PADDING_CLASSES[this.padding],
|
|
273
288
|
this.listClass,
|
|
274
289
|
{ "d-context-menu-list": this.openOnContext }
|
|
275
290
|
];
|
|
@@ -279,9 +294,12 @@ const f = {
|
|
|
279
294
|
}
|
|
280
295
|
},
|
|
281
296
|
methods: {
|
|
282
|
-
onMouseHighlight(
|
|
283
|
-
const
|
|
284
|
-
|
|
297
|
+
onMouseHighlight(e) {
|
|
298
|
+
const liElement = e.target.closest("li");
|
|
299
|
+
if (liElement && liElement.role && this.highlightId !== liElement.id) {
|
|
300
|
+
this.setHighlightId(liElement.id);
|
|
301
|
+
liElement.focus();
|
|
302
|
+
}
|
|
285
303
|
},
|
|
286
304
|
getListElement() {
|
|
287
305
|
return this.$refs.listWrapper;
|
|
@@ -290,68 +308,97 @@ const f = {
|
|
|
290
308
|
this.setHighlightIndex(-1);
|
|
291
309
|
},
|
|
292
310
|
afterHighlight() {
|
|
293
|
-
this.visuallyHiddenClose && this.highlightIndex === this._itemsLength() - 1
|
|
311
|
+
if (this.visuallyHiddenClose && this.highlightIndex === this._itemsLength() - 1) {
|
|
312
|
+
return;
|
|
313
|
+
}
|
|
314
|
+
this.$emit("highlight", this.highlightIndex);
|
|
294
315
|
},
|
|
295
|
-
updateInitialHighlightIndex(
|
|
296
|
-
this.isOpen =
|
|
316
|
+
updateInitialHighlightIndex(isPopoverOpen) {
|
|
317
|
+
this.isOpen = isPopoverOpen;
|
|
318
|
+
if (isPopoverOpen) {
|
|
319
|
+
if (this.openedWithKeyboard && this.isArrowKeyNav) {
|
|
320
|
+
this.setHighlightIndex(0);
|
|
321
|
+
}
|
|
322
|
+
this.$emit("opened", true);
|
|
323
|
+
} else {
|
|
324
|
+
this.clearHighlightIndex();
|
|
325
|
+
this.openedWithKeyboard = false;
|
|
326
|
+
this.$emit("opened", false);
|
|
327
|
+
}
|
|
297
328
|
},
|
|
298
329
|
onSpaceKey() {
|
|
299
|
-
|
|
330
|
+
if (!this.open) {
|
|
331
|
+
this.openedWithKeyboard = true;
|
|
332
|
+
}
|
|
300
333
|
},
|
|
301
334
|
onEnterKey() {
|
|
302
|
-
|
|
335
|
+
if (!this.open) {
|
|
336
|
+
this.openedWithKeyboard = true;
|
|
337
|
+
}
|
|
303
338
|
},
|
|
304
339
|
onUpKeyPress() {
|
|
305
340
|
if (!this.isOpen) {
|
|
306
|
-
this.openedWithKeyboard =
|
|
341
|
+
this.openedWithKeyboard = true;
|
|
307
342
|
return;
|
|
308
343
|
}
|
|
309
|
-
if (this.isArrowKeyNav)
|
|
344
|
+
if (this.isArrowKeyNav) {
|
|
310
345
|
return this.onUpKey();
|
|
346
|
+
}
|
|
311
347
|
},
|
|
312
348
|
onDownKeyPress() {
|
|
313
349
|
if (!this.isOpen) {
|
|
314
|
-
this.openedWithKeyboard =
|
|
350
|
+
this.openedWithKeyboard = true;
|
|
315
351
|
return;
|
|
316
352
|
}
|
|
317
|
-
if (this.isArrowKeyNav)
|
|
353
|
+
if (this.isArrowKeyNav) {
|
|
318
354
|
return this.onDownKey();
|
|
355
|
+
}
|
|
319
356
|
},
|
|
320
357
|
onHomeKeyPress() {
|
|
321
|
-
if (!
|
|
322
|
-
return
|
|
358
|
+
if (!this.isOpen || !this.isArrowKeyNav) {
|
|
359
|
+
return;
|
|
360
|
+
}
|
|
361
|
+
return this.onHomeKey();
|
|
323
362
|
},
|
|
324
363
|
onEndKeyPress() {
|
|
325
|
-
if (!
|
|
326
|
-
return
|
|
364
|
+
if (!this.isOpen || !this.isArrowKeyNav) {
|
|
365
|
+
return;
|
|
366
|
+
}
|
|
367
|
+
return this.onEndKey();
|
|
327
368
|
},
|
|
328
|
-
onKeyPress(
|
|
329
|
-
if (!
|
|
330
|
-
return
|
|
369
|
+
onKeyPress(e) {
|
|
370
|
+
if (!this.isOpen || !this.isArrowKeyNav || !this.isValidLetter(e.key)) {
|
|
371
|
+
return;
|
|
372
|
+
}
|
|
373
|
+
e.stopPropagation();
|
|
374
|
+
e.preventDefault();
|
|
375
|
+
return this.onNavigationKey(e.key);
|
|
331
376
|
}
|
|
332
377
|
}
|
|
333
378
|
};
|
|
334
|
-
var
|
|
335
|
-
var
|
|
336
|
-
return
|
|
337
|
-
return [
|
|
338
|
-
} }, { key: "content", fn: function({ close
|
|
339
|
-
return [
|
|
340
|
-
return
|
|
341
|
-
} } }, [
|
|
342
|
-
} }], null,
|
|
343
|
-
}
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
379
|
+
var _sfc_render = function render() {
|
|
380
|
+
var _vm = this, _c = _vm._self._c;
|
|
381
|
+
return _c("dt-popover", _vm._g({ ref: "popover", attrs: { "content-width": _vm.contentWidth, "open": _vm.open, "placement": _vm.placement, "initial-focus-element": _vm.openedWithKeyboard ? "first" : "dialog", "fallback-placements": _vm.fallbackPlacements, "padding": "none", "role": "menu", "append-to": _vm.appendTo, "modal": _vm.modal, "max-height": _vm.maxHeight, "max-width": _vm.maxWidth, "open-with-arrow-keys": _vm.shouldOpenWithArrowKeys, "open-on-context": _vm.openOnContext, "tether": _vm.tether, "transition": _vm.transition }, scopedSlots: _vm._u([{ key: "anchor", fn: function({ attrs }) {
|
|
382
|
+
return [_vm._t("anchor", null, null, attrs)];
|
|
383
|
+
} }, { key: "content", fn: function({ close }) {
|
|
384
|
+
return [_c("ul", { ref: "listWrapper", class: _vm.listClasses, attrs: { "id": _vm.listId, "data-qa": "dt-dropdown-list-wrapper" }, on: { "mouseleave": _vm.clearHighlightIndex, "!mousemove": function($event) {
|
|
385
|
+
return _vm.onMouseHighlight.apply(null, arguments);
|
|
386
|
+
} } }, [_vm._t("list", null, { "close": close }), _vm.showVisuallyHiddenClose ? _c("sr-only-close-button", { attrs: { "visually-hidden-close-label": _vm.visuallyHiddenCloseLabel, "tabindex": _vm.isArrowKeyNav ? -1 : 0 }, on: { "close": close } }) : _vm._e()], 2)];
|
|
387
|
+
} }], null, true) }, _vm.dropdownListeners));
|
|
388
|
+
};
|
|
389
|
+
var _sfc_staticRenderFns = [];
|
|
390
|
+
var __component__ = /* @__PURE__ */ normalizeComponent(
|
|
391
|
+
_sfc_main,
|
|
392
|
+
_sfc_render,
|
|
393
|
+
_sfc_staticRenderFns,
|
|
394
|
+
false,
|
|
348
395
|
null,
|
|
349
396
|
null,
|
|
350
397
|
null,
|
|
351
398
|
null
|
|
352
399
|
);
|
|
353
|
-
const
|
|
400
|
+
const DtDropdown = __component__.exports;
|
|
354
401
|
export {
|
|
355
|
-
|
|
402
|
+
DtDropdown
|
|
356
403
|
};
|
|
357
|
-
//# sourceMappingURL=dropdown-
|
|
404
|
+
//# sourceMappingURL=dropdown-DTtcQEFC.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown-SMWaTWyF.js","sources":["../../components/dropdown/dropdown.vue"],"sourcesContent":["<!-- eslint-disable max-lines -->\n<template>\n <dt-popover\n ref=\"popover\"\n :content-width=\"contentWidth\"\n :open=\"open\"\n :placement=\"placement\"\n :initial-focus-element=\"openedWithKeyboard ? 'first' : 'dialog'\"\n :fallback-placements=\"fallbackPlacements\"\n padding=\"none\"\n role=\"menu\"\n :append-to=\"appendTo\"\n :modal=\"modal\"\n :max-height=\"maxHeight\"\n :max-width=\"maxWidth\"\n :open-with-arrow-keys=\"shouldOpenWithArrowKeys\"\n :open-on-context=\"openOnContext\"\n :tether=\"tether\"\n :transition=\"transition\"\n v-on=\"dropdownListeners\"\n >\n <template #anchor=\"{ attrs }\">\n <!-- @slot Anchor element that activates the dropdown -->\n <slot\n ref=\"anchor\"\n name=\"anchor\"\n v-bind=\"attrs\"\n />\n </template>\n <template #content=\"{ close }\">\n <!-- eslint-disable-next-line max-len -->\n <!-- eslint-disable-next-line vuejs-accessibility/mouse-events-have-key-events, vuejs-accessibility/no-static-element-interactions -->\n <ul\n :id=\"listId\"\n ref=\"listWrapper\"\n :class=\"listClasses\"\n data-qa=\"dt-dropdown-list-wrapper\"\n @mouseleave=\"clearHighlightIndex\"\n @mousemove.capture=\"onMouseHighlight\"\n >\n <!-- @slot Slot for the list component -->\n <slot\n name=\"list\"\n :close=\"close\"\n />\n <sr-only-close-button\n v-if=\"showVisuallyHiddenClose\"\n :visually-hidden-close-label=\"visuallyHiddenCloseLabel\"\n :tabindex=\"isArrowKeyNav ? -1 : 0\"\n @close=\"close\"\n />\n </ul>\n </template>\n </dt-popover>\n</template>\n\n<script>\nimport KeyboardNavigation from '@/common/mixins/keyboard_list_navigation';\nimport { DtPopover, POPOVER_APPEND_TO_VALUES } from '@/components/popover';\nimport { LIST_ITEM_NAVIGATION_TYPES } from '@/components/list_item';\nimport { DROPDOWN_PADDING_CLASSES } from './dropdown_constants';\nimport { getUniqueString } from '@/common/utils';\nimport { EVENT_KEYNAMES } from '@/common/constants';\nimport SrOnlyCloseButtonMixin from '@/common/mixins/sr_only_close_button';\nimport SrOnlyCloseButton from '@/common/sr_only_close_button.vue';\n\nexport default {\n name: 'DtDropdown',\n\n components: {\n DtPopover,\n SrOnlyCloseButton,\n },\n\n mixins: [\n KeyboardNavigation({\n indexKey: 'highlightIndex',\n idKey: 'highlightId',\n listElementKey: 'getListElement',\n listItemRole: 'menuitem',\n afterHighlightMethod: 'afterHighlight',\n beginningOfListMethod: 'beginningOfListMethod',\n endOfListMethod: 'endOfListMethod',\n activeItemKey: 'activeItemEl',\n focusOnKeyboardNavigation: true,\n }),\n SrOnlyCloseButtonMixin,\n ],\n\n props: {\n /**\n * Controls whether the dropdown is shown. Leaving this null will have the dropdown 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 */\n open: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Opens the dropdown on right click (context menu). If you set this value to `true`,\n * the default trigger behavior will be disabled.\n */\n openOnContext: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Vertical padding size around the list element.\n * @values none, small, large\n */\n padding: {\n type: String,\n default: 'small',\n validator: (padding) => {\n return Object.keys(DROPDOWN_PADDING_CLASSES).some((item) => item === padding);\n },\n },\n\n /**\n * Determines modal state, dropdown has a modal overlay preventing interaction with elements\n * below it, but it is invisible.\n */\n modal: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Width configuration for the popover content. When its value is 'anchor',\n * the popover content will have the same width as the anchor.\n * @values null, anchor\n */\n contentWidth: {\n type: String,\n default: null,\n },\n\n /**\n * Determines maximum height for the popover before overflow.\n * Possible units rem|px|em\n */\n maxHeight: {\n type: String,\n default: '',\n },\n\n /**\n * Determines maximum width for the popover before overflow.\n * Possible units rem|px|%|em\n */\n maxWidth: {\n type: String,\n default: '',\n },\n\n /**\n * Sets an ID on the list element of the component. Used by several aria attributes\n * as well as when deriving the IDs for each item.\n */\n listId: {\n type: String,\n default () { return getUniqueString(); },\n },\n\n /**\n * The type of navigation that this component should support.\n * - \"arrow-keys\" for items that are navigated with UP/DOWN keys.\n * - \"tab\" for items that are navigated using the TAB key.\n * - \"none\" for static items that are not interactive.\n * @values arrow-keys, tab, none\n */\n navigationType: {\n type: String,\n default: LIST_ITEM_NAVIGATION_TYPES.ARROW_KEYS,\n validator: (t) => Object.values(LIST_ITEM_NAVIGATION_TYPES).includes(t),\n },\n\n /**\n * If the dropdown does not fit in the direction described by \"placement\",\n * it will attempt to change it's direction to the \"fallbackPlacements\".\n *\n * @values top, top-start, top-end,\n * right, right-start, right-end,\n * left, left-start, left-end,\n * bottom, bottom-start, bottom-end,\n * auto, auto-start, auto-end\n * */\n fallbackPlacements: {\n type: Array,\n default: () => {\n return ['auto'];\n },\n },\n\n /**\n * The direction the dropdown displays relative to the anchor.\n */\n placement: {\n type: String,\n default: 'bottom',\n },\n\n /**\n * A method that will be called when the selection goes past the beginning of the list.\n */\n onBeginningOfList: {\n type: Function,\n default: null,\n },\n\n /**\n * A method that will be called when the selection goes past the end of the list.\n */\n onEndOfList: {\n type: Function,\n default: null,\n },\n\n /**\n * Additional class for the wrapper list element.\n */\n listClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Sets the element to which the popover is going to append to.\n * 'body' will append to the nearest body (supports shadow DOM).\n * @values 'body', 'parent', HTMLElement,\n */\n appendTo: {\n type: [HTMLElement, String],\n default: 'body',\n validator: appendTo => {\n return POPOVER_APPEND_TO_VALUES.includes(appendTo) ||\n (appendTo instanceof HTMLElement);\n },\n },\n\n /**\n * If set to false the dialog will display over top of the anchor when there is insufficient space.\n * If set to true it will never move from its position relative to the anchor and will clip instead.\n * <a\n * class=\"d-link\"\n * href=\"https://popper.js.org/docs/v2/modifiers/prevent-overflow/#tether\"\n * target=\"_blank\"\n * >\n * Popper.js docs\n * </a>\n * @values true, false\n */\n tether: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Named transition when the content display is toggled.\n * @see DtLazyShow\n */\n transition: {\n type: String,\n default: 'fade',\n },\n },\n\n emits: [\n /**\n * Event fired when the highlight changes\n *\n * @event highlight\n * @type {Number}\n */\n 'highlight',\n\n /**\n * Event fired when dropdown is shown or hidden\n *\n * @event opened\n * @type {Boolean | Array}\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 LIST_ITEM_NAVIGATION_TYPES,\n DROPDOWN_PADDING_CLASSES,\n EVENT_KEYNAMES,\n openedWithKeyboard: false,\n isOpen: null,\n };\n },\n\n computed: {\n dropdownListeners () {\n return {\n ...this.$listeners,\n\n opened: isPopoverOpen => {\n this.updateInitialHighlightIndex(isPopoverOpen);\n },\n\n keydown: event => {\n const eventCode = event.code;\n\n switch (eventCode) {\n case EVENT_KEYNAMES.up:\n case EVENT_KEYNAMES.arrowup:\n this.onUpKeyPress(event);\n event.stopPropagation();\n event.preventDefault();\n break;\n case EVENT_KEYNAMES.down:\n case EVENT_KEYNAMES.arrowdown:\n this.onDownKeyPress(event);\n event.stopPropagation();\n event.preventDefault();\n break;\n case EVENT_KEYNAMES.space:\n case EVENT_KEYNAMES.spacebar:\n this.onSpaceKey();\n break;\n case EVENT_KEYNAMES.enter:\n this.onEnterKey();\n break;\n case EVENT_KEYNAMES.home:\n this.onHomeKeyPress(event);\n event.stopPropagation();\n event.preventDefault();\n break;\n case EVENT_KEYNAMES.end:\n this.onEndKeyPress(event);\n event.stopPropagation();\n event.preventDefault();\n break;\n default:\n this.onKeyPress(event);\n break;\n }\n\n this.$emit('keydown', event);\n },\n };\n },\n\n beginningOfListMethod () {\n return this.onBeginningOfList || this.jumpToEnd;\n },\n\n endOfListMethod () {\n return this.onEndOfList || this.jumpToBeginning;\n },\n\n activeItemEl () {\n return this.getListElement().querySelector('#' + this.highlightId);\n },\n\n isArrowKeyNav () {\n return this.navigationType === this.LIST_ITEM_NAVIGATION_TYPES.ARROW_KEYS;\n },\n\n listClasses () {\n return [\n 'd-dropdown-list',\n DROPDOWN_PADDING_CLASSES[this.padding],\n this.listClass,\n { 'd-context-menu-list': this.openOnContext },\n ];\n },\n\n shouldOpenWithArrowKeys () {\n return !this.openOnContext;\n },\n },\n\n methods: {\n onMouseHighlight (e) {\n const liElement = e.target.closest('li');\n\n if (liElement && liElement.role && this.highlightId !== liElement.id) {\n this.setHighlightId(liElement.id);\n liElement.focus();\n }\n },\n\n getListElement () {\n return this.$refs.listWrapper;\n },\n\n clearHighlightIndex () {\n this.setHighlightIndex(-1);\n },\n\n afterHighlight () {\n if (this.visuallyHiddenClose && this.highlightIndex === this._itemsLength() - 1) {\n return;\n }\n\n this.$emit('highlight', this.highlightIndex);\n },\n\n updateInitialHighlightIndex (isPopoverOpen) {\n this.isOpen = isPopoverOpen;\n\n if (isPopoverOpen) {\n if (this.openedWithKeyboard && this.isArrowKeyNav) {\n this.setHighlightIndex(0);\n }\n this.$emit('opened', true);\n } else {\n this.clearHighlightIndex();\n this.openedWithKeyboard = false;\n this.$emit('opened', false);\n }\n },\n\n onSpaceKey () {\n if (!this.open) {\n this.openedWithKeyboard = true;\n }\n },\n\n onEnterKey () {\n if (!this.open) {\n this.openedWithKeyboard = true;\n }\n },\n\n onUpKeyPress () {\n if (!this.isOpen) {\n this.openedWithKeyboard = true;\n return;\n }\n if (this.isArrowKeyNav) {\n return this.onUpKey();\n }\n },\n\n onDownKeyPress () {\n if (!this.isOpen) {\n this.openedWithKeyboard = true;\n return;\n }\n if (this.isArrowKeyNav) {\n return this.onDownKey();\n }\n },\n\n onHomeKeyPress () {\n if (!this.isOpen || !this.isArrowKeyNav) {\n return;\n }\n\n return this.onHomeKey();\n },\n\n onEndKeyPress () {\n if (!this.isOpen || !this.isArrowKeyNav) {\n return;\n }\n\n return this.onEndKey();\n },\n\n onKeyPress (e) {\n if (!this.isOpen || !this.isArrowKeyNav || !this.isValidLetter(e.key)) {\n return;\n }\n\n e.stopPropagation();\n e.preventDefault();\n\n return this.onNavigationKey(e.key);\n },\n },\n};\n</script>\n\n<style lang=\"less\">\n.d-context-menu-list {\n width: var(--dt-size-850);\n}\n.d-dropdown-list {\n position: relative;\n margin: var(--dt-space-300);\n padding-left: var(--dt-space-0);\n padding-right: var(--dt-space-0);\n >.dt-list-item {\n margin-top: var(--dt-space-200);\n }\n}\n</style>\n"],"names":["_sfc_main","DtPopover","SrOnlyCloseButton","KeyboardNavigation","SrOnlyCloseButtonMixin","padding","DROPDOWN_PADDING_CLASSES","item","getUniqueString","LIST_ITEM_NAVIGATION_TYPES","appendTo","POPOVER_APPEND_TO_VALUES","EVENT_KEYNAMES","isPopoverOpen","event","e","liElement"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dropdown-DTtcQEFC.js","sources":["../../components/dropdown/dropdown.vue"],"sourcesContent":["<!-- eslint-disable max-lines -->\n<template>\n <dt-popover\n ref=\"popover\"\n :content-width=\"contentWidth\"\n :open=\"open\"\n :placement=\"placement\"\n :initial-focus-element=\"openedWithKeyboard ? 'first' : 'dialog'\"\n :fallback-placements=\"fallbackPlacements\"\n padding=\"none\"\n role=\"menu\"\n :append-to=\"appendTo\"\n :modal=\"modal\"\n :max-height=\"maxHeight\"\n :max-width=\"maxWidth\"\n :open-with-arrow-keys=\"shouldOpenWithArrowKeys\"\n :open-on-context=\"openOnContext\"\n :tether=\"tether\"\n :transition=\"transition\"\n v-on=\"dropdownListeners\"\n >\n <template #anchor=\"{ attrs }\">\n <!-- @slot Anchor element that activates the dropdown -->\n <slot\n ref=\"anchor\"\n name=\"anchor\"\n v-bind=\"attrs\"\n />\n </template>\n <template #content=\"{ close }\">\n <!-- eslint-disable-next-line max-len -->\n <!-- eslint-disable-next-line vuejs-accessibility/mouse-events-have-key-events, vuejs-accessibility/no-static-element-interactions -->\n <ul\n :id=\"listId\"\n ref=\"listWrapper\"\n :class=\"listClasses\"\n data-qa=\"dt-dropdown-list-wrapper\"\n @mouseleave=\"clearHighlightIndex\"\n @mousemove.capture=\"onMouseHighlight\"\n >\n <!-- @slot Slot for the list component -->\n <slot\n name=\"list\"\n :close=\"close\"\n />\n <sr-only-close-button\n v-if=\"showVisuallyHiddenClose\"\n :visually-hidden-close-label=\"visuallyHiddenCloseLabel\"\n :tabindex=\"isArrowKeyNav ? -1 : 0\"\n @close=\"close\"\n />\n </ul>\n </template>\n </dt-popover>\n</template>\n\n<script>\nimport KeyboardNavigation from '@/common/mixins/keyboard_list_navigation';\nimport { DtPopover, POPOVER_APPEND_TO_VALUES } from '@/components/popover';\nimport { LIST_ITEM_NAVIGATION_TYPES } from '@/components/list_item';\nimport { DROPDOWN_PADDING_CLASSES } from './dropdown_constants';\nimport { getUniqueString } from '@/common/utils';\nimport { EVENT_KEYNAMES } from '@/common/constants';\nimport SrOnlyCloseButtonMixin from '@/common/mixins/sr_only_close_button';\nimport SrOnlyCloseButton from '@/common/sr_only_close_button.vue';\n\nexport default {\n name: 'DtDropdown',\n\n components: {\n DtPopover,\n SrOnlyCloseButton,\n },\n\n mixins: [\n KeyboardNavigation({\n indexKey: 'highlightIndex',\n idKey: 'highlightId',\n listElementKey: 'getListElement',\n listItemRole: 'menuitem',\n afterHighlightMethod: 'afterHighlight',\n beginningOfListMethod: 'beginningOfListMethod',\n endOfListMethod: 'endOfListMethod',\n activeItemKey: 'activeItemEl',\n focusOnKeyboardNavigation: true,\n }),\n SrOnlyCloseButtonMixin,\n ],\n\n props: {\n /**\n * Controls whether the dropdown is shown. Leaving this null will have the dropdown 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 */\n open: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Opens the dropdown on right click (context menu). If you set this value to `true`,\n * the default trigger behavior will be disabled.\n */\n openOnContext: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Vertical padding size around the list element.\n * @values none, small, large\n */\n padding: {\n type: String,\n default: 'small',\n validator: (padding) => {\n return Object.keys(DROPDOWN_PADDING_CLASSES).some((item) => item === padding);\n },\n },\n\n /**\n * Determines modal state, dropdown has a modal overlay preventing interaction with elements\n * below it, but it is invisible.\n */\n modal: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Width configuration for the popover content. When its value is 'anchor',\n * the popover content will have the same width as the anchor.\n * @values null, anchor\n */\n contentWidth: {\n type: String,\n default: null,\n },\n\n /**\n * Determines maximum height for the popover before overflow.\n * Possible units rem|px|em\n */\n maxHeight: {\n type: String,\n default: '',\n },\n\n /**\n * Determines maximum width for the popover before overflow.\n * Possible units rem|px|%|em\n */\n maxWidth: {\n type: String,\n default: '',\n },\n\n /**\n * Sets an ID on the list element of the component. Used by several aria attributes\n * as well as when deriving the IDs for each item.\n */\n listId: {\n type: String,\n default () { return getUniqueString(); },\n },\n\n /**\n * The type of navigation that this component should support.\n * - \"arrow-keys\" for items that are navigated with UP/DOWN keys.\n * - \"tab\" for items that are navigated using the TAB key.\n * - \"none\" for static items that are not interactive.\n * @values arrow-keys, tab, none\n */\n navigationType: {\n type: String,\n default: LIST_ITEM_NAVIGATION_TYPES.ARROW_KEYS,\n validator: (t) => Object.values(LIST_ITEM_NAVIGATION_TYPES).includes(t),\n },\n\n /**\n * If the dropdown does not fit in the direction described by \"placement\",\n * it will attempt to change it's direction to the \"fallbackPlacements\".\n *\n * @values top, top-start, top-end,\n * right, right-start, right-end,\n * left, left-start, left-end,\n * bottom, bottom-start, bottom-end,\n * auto, auto-start, auto-end\n * */\n fallbackPlacements: {\n type: Array,\n default: () => {\n return ['auto'];\n },\n },\n\n /**\n * The direction the dropdown displays relative to the anchor.\n */\n placement: {\n type: String,\n default: 'bottom',\n },\n\n /**\n * A method that will be called when the selection goes past the beginning of the list.\n */\n onBeginningOfList: {\n type: Function,\n default: null,\n },\n\n /**\n * A method that will be called when the selection goes past the end of the list.\n */\n onEndOfList: {\n type: Function,\n default: null,\n },\n\n /**\n * Additional class for the wrapper list element.\n */\n listClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Sets the element to which the popover is going to append to.\n * 'body' will append to the nearest body (supports shadow DOM).\n * @values 'body', 'parent', HTMLElement,\n */\n appendTo: {\n type: [HTMLElement, String],\n default: 'body',\n validator: appendTo => {\n return POPOVER_APPEND_TO_VALUES.includes(appendTo) ||\n (appendTo instanceof HTMLElement);\n },\n },\n\n /**\n * If set to false the dialog will display over top of the anchor when there is insufficient space.\n * If set to true it will never move from its position relative to the anchor and will clip instead.\n * <a\n * class=\"d-link\"\n * href=\"https://popper.js.org/docs/v2/modifiers/prevent-overflow/#tether\"\n * target=\"_blank\"\n * >\n * Popper.js docs\n * </a>\n * @values true, false\n */\n tether: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Named transition when the content display is toggled.\n * @see DtLazyShow\n */\n transition: {\n type: String,\n default: 'fade',\n },\n },\n\n emits: [\n /**\n * Event fired when the highlight changes\n *\n * @event highlight\n * @type {Number}\n */\n 'highlight',\n\n /**\n * Event fired when dropdown is shown or hidden\n *\n * @event opened\n * @type {Boolean | Array}\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 LIST_ITEM_NAVIGATION_TYPES,\n DROPDOWN_PADDING_CLASSES,\n EVENT_KEYNAMES,\n openedWithKeyboard: false,\n isOpen: null,\n };\n },\n\n computed: {\n dropdownListeners () {\n return {\n ...this.$listeners,\n\n opened: isPopoverOpen => {\n this.updateInitialHighlightIndex(isPopoverOpen);\n },\n\n keydown: event => {\n const eventCode = event.code;\n\n switch (eventCode) {\n case EVENT_KEYNAMES.up:\n case EVENT_KEYNAMES.arrowup:\n this.onUpKeyPress(event);\n event.stopPropagation();\n event.preventDefault();\n break;\n case EVENT_KEYNAMES.down:\n case EVENT_KEYNAMES.arrowdown:\n this.onDownKeyPress(event);\n event.stopPropagation();\n event.preventDefault();\n break;\n case EVENT_KEYNAMES.space:\n case EVENT_KEYNAMES.spacebar:\n this.onSpaceKey();\n break;\n case EVENT_KEYNAMES.enter:\n this.onEnterKey();\n break;\n case EVENT_KEYNAMES.home:\n this.onHomeKeyPress(event);\n event.stopPropagation();\n event.preventDefault();\n break;\n case EVENT_KEYNAMES.end:\n this.onEndKeyPress(event);\n event.stopPropagation();\n event.preventDefault();\n break;\n default:\n this.onKeyPress(event);\n break;\n }\n\n this.$emit('keydown', event);\n },\n };\n },\n\n beginningOfListMethod () {\n return this.onBeginningOfList || this.jumpToEnd;\n },\n\n endOfListMethod () {\n return this.onEndOfList || this.jumpToBeginning;\n },\n\n activeItemEl () {\n return this.getListElement().querySelector('#' + this.highlightId);\n },\n\n isArrowKeyNav () {\n return this.navigationType === this.LIST_ITEM_NAVIGATION_TYPES.ARROW_KEYS;\n },\n\n listClasses () {\n return [\n 'd-dropdown-list',\n DROPDOWN_PADDING_CLASSES[this.padding],\n this.listClass,\n { 'd-context-menu-list': this.openOnContext },\n ];\n },\n\n shouldOpenWithArrowKeys () {\n return !this.openOnContext;\n },\n },\n\n methods: {\n onMouseHighlight (e) {\n const liElement = e.target.closest('li');\n\n if (liElement && liElement.role && this.highlightId !== liElement.id) {\n this.setHighlightId(liElement.id);\n liElement.focus();\n }\n },\n\n getListElement () {\n return this.$refs.listWrapper;\n },\n\n clearHighlightIndex () {\n this.setHighlightIndex(-1);\n },\n\n afterHighlight () {\n if (this.visuallyHiddenClose && this.highlightIndex === this._itemsLength() - 1) {\n return;\n }\n\n this.$emit('highlight', this.highlightIndex);\n },\n\n updateInitialHighlightIndex (isPopoverOpen) {\n this.isOpen = isPopoverOpen;\n\n if (isPopoverOpen) {\n if (this.openedWithKeyboard && this.isArrowKeyNav) {\n this.setHighlightIndex(0);\n }\n this.$emit('opened', true);\n } else {\n this.clearHighlightIndex();\n this.openedWithKeyboard = false;\n this.$emit('opened', false);\n }\n },\n\n onSpaceKey () {\n if (!this.open) {\n this.openedWithKeyboard = true;\n }\n },\n\n onEnterKey () {\n if (!this.open) {\n this.openedWithKeyboard = true;\n }\n },\n\n onUpKeyPress () {\n if (!this.isOpen) {\n this.openedWithKeyboard = true;\n return;\n }\n if (this.isArrowKeyNav) {\n return this.onUpKey();\n }\n },\n\n onDownKeyPress () {\n if (!this.isOpen) {\n this.openedWithKeyboard = true;\n return;\n }\n if (this.isArrowKeyNav) {\n return this.onDownKey();\n }\n },\n\n onHomeKeyPress () {\n if (!this.isOpen || !this.isArrowKeyNav) {\n return;\n }\n\n return this.onHomeKey();\n },\n\n onEndKeyPress () {\n if (!this.isOpen || !this.isArrowKeyNav) {\n return;\n }\n\n return this.onEndKey();\n },\n\n onKeyPress (e) {\n if (!this.isOpen || !this.isArrowKeyNav || !this.isValidLetter(e.key)) {\n return;\n }\n\n e.stopPropagation();\n e.preventDefault();\n\n return this.onNavigationKey(e.key);\n },\n },\n};\n</script>\n\n<style lang=\"less\">\n.d-context-menu-list {\n width: var(--dt-size-850);\n}\n.d-dropdown-list {\n position: relative;\n margin: var(--dt-space-300);\n padding-left: var(--dt-space-0);\n padding-right: var(--dt-space-0);\n >.dt-list-item {\n margin-top: var(--dt-space-200);\n }\n}\n</style>\n"],"names":[],"mappings":"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"}
|