@dialpad/dialtone-vue 2.153.0 → 2.154.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/chunks/{dropdown-YdCyJ5Dq.js → dropdown-6UoczdUY.js} +41 -77
- package/dist/chunks/{dropdown-YdCyJ5Dq.js.map → dropdown-6UoczdUY.js.map} +1 -1
- package/dist/chunks/{dropdown-mjrYu_mK.js → dropdown-pHxnQPzT.js} +41 -77
- package/dist/chunks/{dropdown-mjrYu_mK.js.map → dropdown-pHxnQPzT.js.map} +1 -1
- package/dist/chunks/dropdown_constants-2pGCXy7m.js.map +1 -1
- package/dist/chunks/dropdown_constants-w1MXGC3Z.js.map +1 -1
- package/dist/chunks/{icon_constants-TdxqLsS2.js → icon_constants-Dy4MEUJL.js} +2 -3
- package/dist/chunks/icon_constants-Dy4MEUJL.js.map +1 -0
- package/dist/chunks/{icon_constants-VEA0wI5C.js → icon_constants-QYpmdE0R.js} +2 -3
- package/dist/chunks/icon_constants-QYpmdE0R.js.map +1 -0
- package/dist/chunks/{index-i65YVk-U.js → index-ODod4Oj_.js} +13 -5
- package/dist/chunks/{index-i65YVk-U.js.map → index-ODod4Oj_.js.map} +1 -1
- package/dist/chunks/{index-NYFNZeHH.js → index-anN_sx1F.js} +13 -5
- package/dist/chunks/{index-NYFNZeHH.js.map → index-anN_sx1F.js.map} +1 -1
- package/dist/chunks/{index-mBWay1Qb.js → index-eJ-WWRdf.js} +87 -122
- package/dist/chunks/{index-mBWay1Qb.js.map → index-eJ-WWRdf.js.map} +1 -1
- package/dist/chunks/{index-DyqUqjvI.js → index-gj1jEXP4.js} +87 -122
- package/dist/chunks/{index-DyqUqjvI.js.map → index-gj1jEXP4.js.map} +1 -1
- package/dist/chunks/{input-PhJeBN6r.js → input-6kbd8Pju.js} +9 -3
- package/dist/chunks/{input-PhJeBN6r.js.map → input-6kbd8Pju.js.map} +1 -1
- package/dist/chunks/{input-Hqw33WBe.js → input-Axw-wFj2.js} +9 -3
- package/dist/chunks/{input-Hqw33WBe.js.map → input-Axw-wFj2.js.map} +1 -1
- package/dist/chunks/{input_group-pE6ec9R3.js → input_group-m3cWYUfI.js} +2 -4
- package/dist/chunks/{input_group-ZI7aVGEp.js.map → input_group-m3cWYUfI.js.map} +1 -1
- package/dist/chunks/{input_group-ZI7aVGEp.js → input_group-qVZaS5Bb.js} +2 -4
- package/dist/chunks/{input_group-pE6ec9R3.js.map → input_group-qVZaS5Bb.js.map} +1 -1
- package/dist/chunks/{keyboard_list_navigation-YIqTuw1W.js → keyboard_list_navigation-ScXhrxya.js} +5 -6
- package/dist/chunks/{keyboard_list_navigation-x3D6RcC7.js.map → keyboard_list_navigation-ScXhrxya.js.map} +1 -1
- package/dist/chunks/{keyboard_list_navigation-x3D6RcC7.js → keyboard_list_navigation-fJnl_Iox.js} +5 -6
- package/dist/chunks/{keyboard_list_navigation-YIqTuw1W.js.map → keyboard_list_navigation-fJnl_Iox.js.map} +1 -1
- package/dist/chunks/link_constants-AfTWrr-n.js.map +1 -1
- package/dist/chunks/link_constants-x8NwdqmA.js.map +1 -1
- package/dist/chunks/list_item_constants-EiqkqZvP.js.map +1 -1
- package/dist/chunks/list_item_constants-u1xcN9Dd.js.map +1 -1
- package/dist/chunks/{modal-OaWxzqNt.js → modal-VgxXAQFP.js} +2 -4
- package/dist/chunks/{modal-OaWxzqNt.js.map → modal-VgxXAQFP.js.map} +1 -1
- package/dist/chunks/{modal-8X6poIZW.js → modal-XOr4kiNZ.js} +2 -4
- package/dist/chunks/{modal-8X6poIZW.js.map → modal-XOr4kiNZ.js.map} +1 -1
- package/dist/chunks/{notice_action-qQr3K2TC.js → notice_action-IRUoLX2d.js} +46 -71
- package/dist/chunks/{notice_action-qQr3K2TC.js.map → notice_action-IRUoLX2d.js.map} +1 -1
- package/dist/chunks/{notice_action-tEvvMg7Q.js → notice_action-P6uDyE9x.js} +46 -71
- package/dist/chunks/{notice_action-tEvvMg7Q.js.map → notice_action-P6uDyE9x.js.map} +1 -1
- package/dist/chunks/notice_constants-7Qt2CQEY.js.map +1 -1
- package/dist/chunks/notice_constants-UXo9e3bS.js.map +1 -1
- package/dist/chunks/{popover_constants-6YkPPbnk.js → popover_constants-WsOUIY-m.js} +47 -26
- package/dist/chunks/{popover_constants-6YkPPbnk.js.map → popover_constants-WsOUIY-m.js.map} +1 -1
- package/dist/chunks/{popover_constants-h9MD6WUt.js → popover_constants-XnGWXaxX.js} +47 -26
- package/dist/chunks/{popover_constants-h9MD6WUt.js.map → popover_constants-XnGWXaxX.js.map} +1 -1
- package/dist/chunks/{sr_only_close_button-IjMVfBDE.js → sr_only_close_button-81bHIpPu.js} +18 -24
- package/dist/chunks/{sr_only_close_button-IjMVfBDE.js.map → sr_only_close_button-81bHIpPu.js.map} +1 -1
- package/dist/chunks/{sr_only_close_button-2Q9Ny1Nc.js → sr_only_close_button-ZaGdAHz7.js} +18 -24
- package/dist/chunks/{sr_only_close_button-2Q9Ny1Nc.js.map → sr_only_close_button-ZaGdAHz7.js.map} +1 -1
- package/dist/chunks/stack_constants-HraCekPm.js.map +1 -1
- package/dist/chunks/stack_constants-SMzMWnAQ.js.map +1 -1
- package/dist/chunks/{tab-79yMX6m6.js → tab-FcsV5VmK.js} +68 -86
- package/dist/chunks/{tab-muPOS7JE.js.map → tab-FcsV5VmK.js.map} +1 -1
- package/dist/chunks/{tab-muPOS7JE.js → tab-V4cb44Ry.js} +68 -86
- package/dist/chunks/{tab-79yMX6m6.js.map → tab-V4cb44Ry.js.map} +1 -1
- package/dist/common/constants.cjs.map +1 -1
- package/dist/common/constants.js.map +1 -1
- package/dist/common/dates.cjs +1 -3
- package/dist/common/dates.cjs.map +1 -1
- package/dist/common/dates.js +1 -3
- package/dist/common/dates.js.map +1 -1
- package/dist/common/emoji.cjs +1 -1
- package/dist/common/emoji.js +1 -1
- package/dist/common/mixins.cjs +3 -3
- package/dist/common/mixins.js +3 -3
- package/dist/common/utils.cjs +44 -8
- package/dist/common/utils.cjs.map +1 -1
- package/dist/common/utils.js +44 -8
- package/dist/common/utils.js.map +1 -1
- package/dist/common/validators.cjs.map +1 -1
- package/dist/common/validators.js.map +1 -1
- package/dist/component-documentation.json +1 -1
- package/dist/dialtone-vue.cjs +12 -12
- package/dist/dialtone-vue.js +12 -12
- package/dist/lib/attachment-carousel.cjs +48 -172
- package/dist/lib/attachment-carousel.cjs.map +1 -1
- package/dist/lib/attachment-carousel.js +48 -172
- package/dist/lib/attachment-carousel.js.map +1 -1
- package/dist/lib/avatar.cjs +58 -75
- package/dist/lib/avatar.cjs.map +1 -1
- package/dist/lib/avatar.js +58 -75
- package/dist/lib/avatar.js.map +1 -1
- package/dist/lib/badge.cjs +20 -31
- package/dist/lib/badge.cjs.map +1 -1
- package/dist/lib/badge.js +20 -31
- package/dist/lib/badge.js.map +1 -1
- package/dist/lib/banner.cjs +29 -53
- package/dist/lib/banner.cjs.map +1 -1
- package/dist/lib/banner.js +29 -53
- package/dist/lib/banner.js.map +1 -1
- package/dist/lib/breadcrumbs.cjs +30 -36
- package/dist/lib/breadcrumbs.cjs.map +1 -1
- package/dist/lib/breadcrumbs.js +30 -36
- package/dist/lib/breadcrumbs.js.map +1 -1
- package/dist/lib/button-group.cjs +14 -7
- package/dist/lib/button-group.cjs.map +1 -1
- package/dist/lib/button-group.js +14 -7
- package/dist/lib/button-group.js.map +1 -1
- package/dist/lib/button.cjs +62 -55
- package/dist/lib/button.cjs.map +1 -1
- package/dist/lib/button.js +62 -55
- package/dist/lib/button.js.map +1 -1
- package/dist/lib/callbar-button-with-popover.cjs +23 -91
- package/dist/lib/callbar-button-with-popover.cjs.map +1 -1
- package/dist/lib/callbar-button-with-popover.js +23 -91
- package/dist/lib/callbar-button-with-popover.js.map +1 -1
- package/dist/lib/callbar-button.cjs +33 -49
- package/dist/lib/callbar-button.cjs.map +1 -1
- package/dist/lib/callbar-button.js +33 -49
- package/dist/lib/callbar-button.js.map +1 -1
- package/dist/lib/callbox.cjs +15 -78
- package/dist/lib/callbox.cjs.map +1 -1
- package/dist/lib/callbox.js +15 -78
- package/dist/lib/callbox.js.map +1 -1
- package/dist/lib/card.cjs +23 -16
- package/dist/lib/card.cjs.map +1 -1
- package/dist/lib/card.js +23 -16
- package/dist/lib/card.js.map +1 -1
- package/dist/lib/checkbox-group.cjs +15 -3
- package/dist/lib/checkbox-group.cjs.map +1 -1
- package/dist/lib/checkbox-group.js +15 -3
- package/dist/lib/checkbox-group.js.map +1 -1
- package/dist/lib/checkbox.cjs +16 -52
- package/dist/lib/checkbox.cjs.map +1 -1
- package/dist/lib/checkbox.js +16 -52
- package/dist/lib/checkbox.js.map +1 -1
- package/dist/lib/chip.cjs +26 -58
- package/dist/lib/chip.cjs.map +1 -1
- package/dist/lib/chip.js +26 -58
- package/dist/lib/chip.js.map +1 -1
- package/dist/lib/codeblock.cjs +11 -4
- package/dist/lib/codeblock.cjs.map +1 -1
- package/dist/lib/codeblock.js +11 -4
- package/dist/lib/codeblock.js.map +1 -1
- package/dist/lib/collapsible.cjs +34 -91
- package/dist/lib/collapsible.cjs.map +1 -1
- package/dist/lib/collapsible.js +34 -91
- package/dist/lib/collapsible.js.map +1 -1
- package/dist/lib/combobox-multi-select.cjs +38 -131
- package/dist/lib/combobox-multi-select.cjs.map +1 -1
- package/dist/lib/combobox-multi-select.js +38 -131
- package/dist/lib/combobox-multi-select.js.map +1 -1
- package/dist/lib/combobox-with-popover.cjs +39 -130
- package/dist/lib/combobox-with-popover.cjs.map +1 -1
- package/dist/lib/combobox-with-popover.js +39 -130
- package/dist/lib/combobox-with-popover.js.map +1 -1
- package/dist/lib/combobox.cjs +3 -3
- package/dist/lib/combobox.js +3 -3
- package/dist/lib/contact-centers-row.cjs +29 -86
- package/dist/lib/contact-centers-row.cjs.map +1 -1
- package/dist/lib/contact-centers-row.js +29 -86
- package/dist/lib/contact-centers-row.js.map +1 -1
- package/dist/lib/contact-info.cjs +31 -95
- package/dist/lib/contact-info.cjs.map +1 -1
- package/dist/lib/contact-info.js +31 -95
- package/dist/lib/contact-info.js.map +1 -1
- package/dist/lib/contact-row.cjs +18 -61
- package/dist/lib/contact-row.cjs.map +1 -1
- package/dist/lib/contact-row.js +18 -61
- package/dist/lib/contact-row.js.map +1 -1
- package/dist/lib/datepicker.cjs +102 -361
- package/dist/lib/datepicker.cjs.map +1 -1
- package/dist/lib/datepicker.js +102 -361
- package/dist/lib/datepicker.js.map +1 -1
- package/dist/lib/description-list.cjs +12 -11
- package/dist/lib/description-list.cjs.map +1 -1
- package/dist/lib/description-list.js +12 -11
- package/dist/lib/description-list.js.map +1 -1
- package/dist/lib/dropdown.cjs +17 -13
- package/dist/lib/dropdown.cjs.map +1 -1
- package/dist/lib/dropdown.js +17 -13
- package/dist/lib/dropdown.js.map +1 -1
- package/dist/lib/editor.cjs +109 -409
- package/dist/lib/editor.cjs.map +1 -1
- package/dist/lib/editor.js +109 -409
- package/dist/lib/editor.js.map +1 -1
- package/dist/lib/emoji-picker.cjs +234 -512
- package/dist/lib/emoji-picker.cjs.map +1 -1
- package/dist/lib/emoji-picker.js +234 -512
- package/dist/lib/emoji-picker.js.map +1 -1
- package/dist/lib/emoji-row.cjs +31 -69
- package/dist/lib/emoji-row.cjs.map +1 -1
- package/dist/lib/emoji-row.js +31 -69
- package/dist/lib/emoji-row.js.map +1 -1
- package/dist/lib/emoji-text-wrapper.cjs +22 -14
- package/dist/lib/emoji-text-wrapper.cjs.map +1 -1
- package/dist/lib/emoji-text-wrapper.js +22 -14
- package/dist/lib/emoji-text-wrapper.js.map +1 -1
- package/dist/lib/emoji.cjs +13 -40
- package/dist/lib/emoji.cjs.map +1 -1
- package/dist/lib/emoji.js +13 -40
- package/dist/lib/emoji.js.map +1 -1
- package/dist/lib/empty-state.cjs +12 -27
- package/dist/lib/empty-state.cjs.map +1 -1
- package/dist/lib/empty-state.js +12 -27
- package/dist/lib/empty-state.js.map +1 -1
- package/dist/lib/feed-item-row.cjs +27 -106
- package/dist/lib/feed-item-row.cjs.map +1 -1
- package/dist/lib/feed-item-row.js +27 -106
- package/dist/lib/feed-item-row.js.map +1 -1
- package/dist/lib/feed-pill.cjs +35 -90
- package/dist/lib/feed-pill.cjs.map +1 -1
- package/dist/lib/feed-pill.js +35 -90
- package/dist/lib/feed-pill.js.map +1 -1
- package/dist/lib/general-row.cjs +75 -184
- package/dist/lib/general-row.cjs.map +1 -1
- package/dist/lib/general-row.js +75 -184
- package/dist/lib/general-row.js.map +1 -1
- package/dist/lib/group-row.cjs +16 -27
- package/dist/lib/group-row.cjs.map +1 -1
- package/dist/lib/group-row.js +16 -27
- package/dist/lib/group-row.js.map +1 -1
- package/dist/lib/grouped-chip.cjs +20 -68
- package/dist/lib/grouped-chip.cjs.map +1 -1
- package/dist/lib/grouped-chip.js +20 -68
- package/dist/lib/grouped-chip.js.map +1 -1
- package/dist/lib/hovercard.cjs +41 -71
- package/dist/lib/hovercard.cjs.map +1 -1
- package/dist/lib/hovercard.js +41 -71
- package/dist/lib/hovercard.js.map +1 -1
- package/dist/lib/icon.cjs +12 -10
- package/dist/lib/icon.cjs.map +1 -1
- package/dist/lib/icon.js +12 -10
- package/dist/lib/icon.js.map +1 -1
- package/dist/lib/illustration.cjs +12 -9
- package/dist/lib/illustration.cjs.map +1 -1
- package/dist/lib/illustration.js +12 -9
- package/dist/lib/illustration.js.map +1 -1
- package/dist/lib/image-viewer.cjs +23 -88
- package/dist/lib/image-viewer.cjs.map +1 -1
- package/dist/lib/image-viewer.js +23 -88
- package/dist/lib/image-viewer.js.map +1 -1
- package/dist/lib/input-group.cjs +14 -24
- package/dist/lib/input-group.cjs.map +1 -1
- package/dist/lib/input-group.js +14 -24
- package/dist/lib/input-group.js.map +1 -1
- package/dist/lib/input.cjs +47 -109
- package/dist/lib/input.cjs.map +1 -1
- package/dist/lib/input.js +47 -109
- package/dist/lib/input.js.map +1 -1
- package/dist/lib/item-layout.cjs +11 -42
- package/dist/lib/item-layout.cjs.map +1 -1
- package/dist/lib/item-layout.js +11 -42
- package/dist/lib/item-layout.js.map +1 -1
- package/dist/lib/ivr-node.cjs +47 -135
- package/dist/lib/ivr-node.cjs.map +1 -1
- package/dist/lib/ivr-node.js +47 -135
- package/dist/lib/ivr-node.js.map +1 -1
- package/dist/lib/keyboard-shortcut.cjs +23 -35
- package/dist/lib/keyboard-shortcut.cjs.map +1 -1
- package/dist/lib/keyboard-shortcut.js +23 -35
- package/dist/lib/keyboard-shortcut.js.map +1 -1
- package/dist/lib/lazy-show.cjs +11 -15
- package/dist/lib/lazy-show.cjs.map +1 -1
- package/dist/lib/lazy-show.js +11 -15
- package/dist/lib/lazy-show.js.map +1 -1
- package/dist/lib/link.cjs +15 -9
- package/dist/lib/link.cjs.map +1 -1
- package/dist/lib/link.js +15 -9
- package/dist/lib/link.js.map +1 -1
- package/dist/lib/list-item-group.cjs +11 -17
- package/dist/lib/list-item-group.cjs.map +1 -1
- package/dist/lib/list-item-group.js +11 -17
- package/dist/lib/list-item-group.js.map +1 -1
- package/dist/lib/list-item.cjs +23 -42
- package/dist/lib/list-item.cjs.map +1 -1
- package/dist/lib/list-item.js +23 -42
- package/dist/lib/list-item.js.map +1 -1
- package/dist/lib/message-input.cjs +97 -360
- package/dist/lib/message-input.cjs.map +1 -1
- package/dist/lib/message-input.js +97 -360
- package/dist/lib/message-input.js.map +1 -1
- package/dist/lib/modal.cjs +36 -94
- package/dist/lib/modal.cjs.map +1 -1
- package/dist/lib/modal.js +36 -94
- package/dist/lib/modal.js.map +1 -1
- package/dist/lib/notice.cjs +21 -40
- package/dist/lib/notice.cjs.map +1 -1
- package/dist/lib/notice.js +21 -40
- package/dist/lib/notice.js.map +1 -1
- package/dist/lib/pagination.cjs +20 -81
- package/dist/lib/pagination.cjs.map +1 -1
- package/dist/lib/pagination.js +20 -81
- package/dist/lib/pagination.js.map +1 -1
- package/dist/lib/popover.cjs +75 -194
- package/dist/lib/popover.cjs.map +1 -1
- package/dist/lib/popover.js +76 -195
- package/dist/lib/popover.js.map +1 -1
- package/dist/lib/presence.cjs +22 -23
- package/dist/lib/presence.cjs.map +1 -1
- package/dist/lib/presence.js +22 -23
- package/dist/lib/presence.js.map +1 -1
- package/dist/lib/radio-group.cjs +11 -2
- package/dist/lib/radio-group.cjs.map +1 -1
- package/dist/lib/radio-group.js +11 -2
- package/dist/lib/radio-group.js.map +1 -1
- package/dist/lib/radio.cjs +15 -47
- package/dist/lib/radio.cjs.map +1 -1
- package/dist/lib/radio.js +15 -47
- package/dist/lib/radio.js.map +1 -1
- package/dist/lib/rich-text-editor.cjs +317 -336
- package/dist/lib/rich-text-editor.cjs.map +1 -1
- package/dist/lib/rich-text-editor.js +317 -336
- package/dist/lib/rich-text-editor.js.map +1 -1
- package/dist/lib/root-layout.cjs +15 -33
- package/dist/lib/root-layout.cjs.map +1 -1
- package/dist/lib/root-layout.js +15 -33
- package/dist/lib/root-layout.js.map +1 -1
- package/dist/lib/scrollbar-directive.cjs +422 -388
- package/dist/lib/scrollbar-directive.cjs.map +1 -1
- package/dist/lib/scrollbar-directive.js +422 -388
- package/dist/lib/scrollbar-directive.js.map +1 -1
- package/dist/lib/select-menu.cjs +33 -52
- package/dist/lib/select-menu.cjs.map +1 -1
- package/dist/lib/select-menu.js +33 -52
- package/dist/lib/select-menu.js.map +1 -1
- package/dist/lib/settings-menu-button.cjs +16 -42
- package/dist/lib/settings-menu-button.cjs.map +1 -1
- package/dist/lib/settings-menu-button.js +16 -42
- package/dist/lib/settings-menu-button.js.map +1 -1
- package/dist/lib/skeleton.cjs +93 -118
- package/dist/lib/skeleton.cjs.map +1 -1
- package/dist/lib/skeleton.js +93 -118
- package/dist/lib/skeleton.js.map +1 -1
- package/dist/lib/split-button.cjs +64 -164
- package/dist/lib/split-button.cjs.map +1 -1
- package/dist/lib/split-button.js +64 -164
- package/dist/lib/split-button.js.map +1 -1
- package/dist/lib/stack.cjs +33 -21
- package/dist/lib/stack.cjs.map +1 -1
- package/dist/lib/stack.js +33 -21
- package/dist/lib/stack.js.map +1 -1
- package/dist/lib/tabs.cjs +13 -20
- package/dist/lib/tabs.cjs.map +1 -1
- package/dist/lib/tabs.js +13 -20
- package/dist/lib/tabs.js.map +1 -1
- package/dist/lib/time-pill.cjs +11 -8
- package/dist/lib/time-pill.cjs.map +1 -1
- package/dist/lib/time-pill.js +11 -8
- package/dist/lib/time-pill.js.map +1 -1
- package/dist/lib/toast.cjs +21 -42
- package/dist/lib/toast.cjs.map +1 -1
- package/dist/lib/toast.js +21 -42
- package/dist/lib/toast.js.map +1 -1
- package/dist/lib/toggle.cjs +24 -28
- package/dist/lib/toggle.cjs.map +1 -1
- package/dist/lib/toggle.js +24 -28
- package/dist/lib/toggle.js.map +1 -1
- package/dist/lib/tooltip-directive.cjs +26 -32
- package/dist/lib/tooltip-directive.cjs.map +1 -1
- package/dist/lib/tooltip-directive.js +26 -32
- package/dist/lib/tooltip-directive.js.map +1 -1
- package/dist/lib/tooltip.cjs +21 -31
- package/dist/lib/tooltip.cjs.map +1 -1
- package/dist/lib/tooltip.js +22 -32
- package/dist/lib/tooltip.js.map +1 -1
- package/dist/lib/top-banner-info.cjs +21 -18
- package/dist/lib/top-banner-info.cjs.map +1 -1
- package/dist/lib/top-banner-info.js +21 -18
- package/dist/lib/top-banner-info.js.map +1 -1
- package/dist/lib/unread-pill.cjs +12 -18
- package/dist/lib/unread-pill.cjs.map +1 -1
- package/dist/lib/unread-pill.js +12 -18
- package/dist/lib/unread-pill.js.map +1 -1
- package/dist/lib/validation-messages.cjs +16 -23
- package/dist/lib/validation-messages.cjs.map +1 -1
- package/dist/lib/validation-messages.js +16 -23
- package/dist/lib/validation-messages.js.map +1 -1
- package/dist/style.css +9 -9
- package/dist/types/common/emoji/index.d.ts +59236 -2
- package/dist/types/common/emoji/index.d.ts.map +1 -1
- package/dist/types/components/button/button.vue.d.ts +1 -1
- package/dist/types/components/chip/chip.vue.d.ts +1 -1
- package/dist/types/components/combobox/combobox.vue.d.ts +1 -1
- package/dist/types/components/icon/icon.vue.d.ts +2 -2
- package/dist/types/components/icon/icon_constants.d.ts +1 -1
- package/dist/types/components/icon/icon_constants.d.ts.map +1 -1
- package/dist/types/components/illustration/illustration.vue.d.ts +2 -2
- package/dist/types/components/illustration/illustration_constants.d.ts +1 -1
- package/dist/types/components/illustration/illustration_constants.d.ts.map +1 -1
- package/dist/types/components/input/input.vue.d.ts +3 -2
- package/dist/types/components/input/input.vue.d.ts.map +1 -1
- package/dist/types/components/modal/modal.vue.d.ts +1 -1
- package/dist/types/components/rich_text_editor/rich_text_editor.vue.d.ts +1 -1
- package/dist/types/components/split_button/split_button-alpha.vue.d.ts +1 -1
- package/dist/types/components/toast/toast.vue.d.ts +1 -1
- package/dist/types/components/tooltip/tooltip.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/editor/editor.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/item_layout/contact_info/contact_info.vue.d.ts +15 -0
- package/dist/types/recipes/item_layout/contact_info/contact_info.vue.d.ts.map +1 -1
- package/package.json +2 -4
- package/dist/chunks/icon_constants-TdxqLsS2.js.map +0 -1
- package/dist/chunks/icon_constants-VEA0wI5C.js.map +0 -1
|
@@ -154,57 +154,38 @@ const _sfc_main$1 = {
|
|
|
154
154
|
});
|
|
155
155
|
},
|
|
156
156
|
onChange() {
|
|
157
|
-
this.$emit("change", {
|
|
158
|
-
...this.provideObj
|
|
159
|
-
});
|
|
157
|
+
this.$emit("change", { ...this.provideObj });
|
|
160
158
|
},
|
|
161
|
-
changeContentPanel({
|
|
162
|
-
selected,
|
|
163
|
-
selectOverride
|
|
164
|
-
}) {
|
|
159
|
+
changeContentPanel({ selected, selectOverride }) {
|
|
165
160
|
this.provideObj.selected = selected;
|
|
166
161
|
if (!selectOverride) {
|
|
167
162
|
this.onChange();
|
|
168
163
|
}
|
|
169
164
|
},
|
|
170
165
|
tabLeft() {
|
|
171
|
-
const {
|
|
172
|
-
index,
|
|
173
|
-
tabs
|
|
174
|
-
} = this.getIndexAndTabs();
|
|
166
|
+
const { index, tabs } = this.getIndexAndTabs();
|
|
175
167
|
if (index === -1)
|
|
176
168
|
return;
|
|
177
169
|
const indexElement = index - 1 < 0 ? tabs.length - 1 : index - 1;
|
|
178
170
|
this.selectFocusOnTab(indexElement, tabs);
|
|
179
171
|
},
|
|
180
172
|
tabRight() {
|
|
181
|
-
const {
|
|
182
|
-
index,
|
|
183
|
-
tabs
|
|
184
|
-
} = this.getIndexAndTabs();
|
|
173
|
+
const { index, tabs } = this.getIndexAndTabs();
|
|
185
174
|
if (index === -1)
|
|
186
175
|
return;
|
|
187
176
|
const indexElement = index + 1 > tabs.length - 1 ? 0 : index + 1;
|
|
188
177
|
this.selectFocusOnTab(indexElement, tabs);
|
|
189
178
|
},
|
|
190
179
|
selectFocusOnTab(index, tabs) {
|
|
191
|
-
const {
|
|
192
|
-
context
|
|
193
|
-
} = tabs[index];
|
|
180
|
+
const { context } = tabs[index];
|
|
194
181
|
context.focus();
|
|
195
182
|
},
|
|
196
183
|
selectTab() {
|
|
197
|
-
const {
|
|
198
|
-
tabs,
|
|
199
|
-
index
|
|
200
|
-
} = this.getIndexAndTabs();
|
|
184
|
+
const { tabs, index } = this.getIndexAndTabs();
|
|
201
185
|
this.selectTabByIndex(index, tabs);
|
|
202
186
|
},
|
|
203
187
|
selectTabByIndex(index, tabs) {
|
|
204
|
-
const {
|
|
205
|
-
context,
|
|
206
|
-
panelId
|
|
207
|
-
} = tabs[index];
|
|
188
|
+
const { context, panelId } = tabs[index];
|
|
208
189
|
this.provideObj.selected = panelId;
|
|
209
190
|
context.focus();
|
|
210
191
|
},
|
|
@@ -231,55 +212,55 @@ const _sfc_main$1 = {
|
|
|
231
212
|
};
|
|
232
213
|
var _sfc_render$1 = function render() {
|
|
233
214
|
var _vm = this, _c = _vm._self._c;
|
|
234
|
-
return _c("div", {
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
}, [_c("div", _vm._b({
|
|
239
|
-
class: ["d-tablist", _vm.TAB_LIST_SIZE_MODIFIERS[_vm.size], {
|
|
215
|
+
return _c("div", { attrs: { "data-qa": "dt-tab-group" } }, [_c("div", _vm._b({ class: [
|
|
216
|
+
"d-tablist",
|
|
217
|
+
_vm.TAB_LIST_SIZE_MODIFIERS[_vm.size],
|
|
218
|
+
{
|
|
240
219
|
[_vm.TAB_LIST_KIND_MODIFIERS.inverted]: _vm.inverted,
|
|
241
220
|
[_vm.TAB_LIST_IMPORTANCE_MODIFIERS.borderless]: _vm.borderless
|
|
242
|
-
}, _vm.tabListClass],
|
|
243
|
-
attrs: {
|
|
244
|
-
"role": "tablist",
|
|
245
|
-
"aria-label": _vm.label
|
|
246
221
|
},
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
}]
|
|
278
|
-
}
|
|
279
|
-
}, "div", _vm.tabListChildProps, false), [_vm._t("tabs")], 2), _vm._t("default")], 2);
|
|
222
|
+
_vm.tabListClass
|
|
223
|
+
], attrs: { "role": "tablist", "aria-label": _vm.label }, on: { "keyup": [function($event) {
|
|
224
|
+
if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "left", 37, $event.key, ["Left", "ArrowLeft"]))
|
|
225
|
+
return null;
|
|
226
|
+
if ("button" in $event && $event.button !== 0)
|
|
227
|
+
return null;
|
|
228
|
+
return _vm.tabLeft.apply(null, arguments);
|
|
229
|
+
}, function($event) {
|
|
230
|
+
if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "right", 39, $event.key, ["Right", "ArrowRight"]))
|
|
231
|
+
return null;
|
|
232
|
+
if ("button" in $event && $event.button !== 2)
|
|
233
|
+
return null;
|
|
234
|
+
return _vm.tabRight.apply(null, arguments);
|
|
235
|
+
}, function($event) {
|
|
236
|
+
if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "enter", 13, $event.key, "Enter"))
|
|
237
|
+
return null;
|
|
238
|
+
return _vm.selectTab.apply(null, arguments);
|
|
239
|
+
}, function($event) {
|
|
240
|
+
if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "space", 32, $event.key, [" ", "Spacebar"]))
|
|
241
|
+
return null;
|
|
242
|
+
return _vm.selectTab.apply(null, arguments);
|
|
243
|
+
}], "keydown": [function($event) {
|
|
244
|
+
if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "home", void 0, $event.key, void 0))
|
|
245
|
+
return null;
|
|
246
|
+
return _vm.onHomeButton.apply(null, arguments);
|
|
247
|
+
}, function($event) {
|
|
248
|
+
if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "end", void 0, $event.key, void 0))
|
|
249
|
+
return null;
|
|
250
|
+
return _vm.onEndButton.apply(null, arguments);
|
|
251
|
+
}] } }, "div", _vm.tabListChildProps, false), [_vm._t("tabs")], 2), _vm._t("default")], 2);
|
|
280
252
|
};
|
|
281
253
|
var _sfc_staticRenderFns$1 = [];
|
|
282
|
-
var __component__$1 = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
254
|
+
var __component__$1 = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
255
|
+
_sfc_main$1,
|
|
256
|
+
_sfc_render$1,
|
|
257
|
+
_sfc_staticRenderFns$1,
|
|
258
|
+
false,
|
|
259
|
+
null,
|
|
260
|
+
null,
|
|
261
|
+
null,
|
|
262
|
+
null
|
|
263
|
+
);
|
|
283
264
|
const DtTabGroup = __component__$1.exports;
|
|
284
265
|
const _sfc_main = {
|
|
285
266
|
name: "DtTab",
|
|
@@ -376,24 +357,25 @@ const _sfc_main = {
|
|
|
376
357
|
};
|
|
377
358
|
var _sfc_render = function render2() {
|
|
378
359
|
var _vm = this, _c = _vm._self._c;
|
|
379
|
-
return _c("dt-button", _vm._g(_vm._b({
|
|
380
|
-
|
|
360
|
+
return _c("dt-button", _vm._g(_vm._b({ class: [
|
|
361
|
+
"d-tab",
|
|
362
|
+
{
|
|
381
363
|
[_vm.TAB_IMPORTANCE_MODIFIERS.selected]: _vm.isSelected
|
|
382
|
-
},
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
"role": "tab",
|
|
386
|
-
"aria-selected": `${_vm.isSelected}`,
|
|
387
|
-
"aria-controls": `dt-panel-${_vm.panelId}`,
|
|
388
|
-
"aria-label": _vm.label,
|
|
389
|
-
"data-qa": "dt-tab",
|
|
390
|
-
"tabindex": _vm.isSelected ? "0" : "-1",
|
|
391
|
-
"disabled": _vm.groupContext.disabled || _vm.disabled
|
|
392
|
-
}
|
|
393
|
-
}, "dt-button", _vm.$attrs, false), _vm.tabListeners), [_vm._t("default")], 2);
|
|
364
|
+
},
|
|
365
|
+
_vm.tabClass
|
|
366
|
+
], attrs: { "id": `dt-tab-${_vm.id}`, "role": "tab", "aria-selected": `${_vm.isSelected}`, "aria-controls": `dt-panel-${_vm.panelId}`, "aria-label": _vm.label, "data-qa": "dt-tab", "tabindex": _vm.isSelected ? "0" : "-1", "disabled": _vm.groupContext.disabled || _vm.disabled } }, "dt-button", _vm.$attrs, false), _vm.tabListeners), [_vm._t("default")], 2);
|
|
394
367
|
};
|
|
395
368
|
var _sfc_staticRenderFns = [];
|
|
396
|
-
var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
369
|
+
var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
370
|
+
_sfc_main,
|
|
371
|
+
_sfc_render,
|
|
372
|
+
_sfc_staticRenderFns,
|
|
373
|
+
false,
|
|
374
|
+
null,
|
|
375
|
+
null,
|
|
376
|
+
null,
|
|
377
|
+
null
|
|
378
|
+
);
|
|
397
379
|
const DtTab = __component__.exports;
|
|
398
380
|
exports.DtTab = DtTab;
|
|
399
381
|
exports.DtTabGroup = DtTabGroup;
|
|
@@ -401,4 +383,4 @@ exports.TAB_IMPORTANCE_MODIFIERS = TAB_IMPORTANCE_MODIFIERS;
|
|
|
401
383
|
exports.TAB_LIST_IMPORTANCE_MODIFIERS = TAB_LIST_IMPORTANCE_MODIFIERS;
|
|
402
384
|
exports.TAB_LIST_KIND_MODIFIERS = TAB_LIST_KIND_MODIFIERS;
|
|
403
385
|
exports.TAB_LIST_SIZES = TAB_LIST_SIZES;
|
|
404
|
-
//# sourceMappingURL=tab-
|
|
386
|
+
//# sourceMappingURL=tab-FcsV5VmK.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tab-muPOS7JE.js","sources":["../../components/tabs/tabs_constants.js","../../components/tabs/tab_group.vue","../../components/tabs/tab.vue"],"sourcesContent":["export const TAB_LIST_SIZES = ['default', 'sm'];\n\nexport const TAB_LIST_SIZE_MODIFIERS = {\n sm: 'd-tablist--sm',\n};\n\nexport const TAB_LIST_KIND_MODIFIERS = {\n inverted: 'd-tablist--inverted',\n};\n\nexport const TAB_LIST_IMPORTANCE_MODIFIERS = {\n borderless: 'd-tablist--no-border',\n};\n\nexport const TAB_IMPORTANCE_MODIFIERS = {\n selected: 'd-tab--selected',\n};\n","<template>\n <div\n data-qa=\"dt-tab-group\"\n >\n <!-- eslint-disable-next-line vuejs-accessibility/interactive-supports-focus -->\n <div\n :class=\"[\n 'd-tablist',\n TAB_LIST_SIZE_MODIFIERS[size],\n {\n [TAB_LIST_KIND_MODIFIERS.inverted]: inverted,\n [TAB_LIST_IMPORTANCE_MODIFIERS.borderless]: borderless,\n },\n tabListClass,\n ]\"\n v-bind=\"tabListChildProps\"\n role=\"tablist\"\n :aria-label=\"label\"\n @keyup.left=\"tabLeft\"\n @keyup.right=\"tabRight\"\n @keyup.enter=\"selectTab\"\n @keyup.space=\"selectTab\"\n @keydown.home=\"onHomeButton\"\n @keydown.end=\"onEndButton\"\n >\n <!-- @slot Slot for Tabs -->\n <slot name=\"tabs\" />\n </div>\n <!-- @slot Default slot for Panel -->\n <slot />\n </div>\n</template>\n\n<script>\nimport {\n TAB_LIST_SIZES,\n TAB_LIST_KIND_MODIFIERS,\n TAB_LIST_IMPORTANCE_MODIFIERS,\n TAB_LIST_SIZE_MODIFIERS,\n} from './tabs_constants';\n\n/**\n * Tabs allow users to navigation between grouped content in different views while within the same page context.\n * @see https://dialtone.dialpad.com/components/tabs.html\n */\nexport default {\n name: 'DtTabGroup',\n\n provide () {\n return {\n groupContext: this.provideObj,\n changeContentPanel: this.changeContentPanel,\n setFocus: this.setFocus,\n };\n },\n\n props: {\n /**\n * Identifies the tab group\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * The id of the selected tab panel which should be displayed\n */\n selected: {\n type: String,\n default: '',\n },\n\n /**\n * If true, disables the tab group\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, applies inverted styles to the tab group\n * @values true, false\n */\n inverted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, applies borderless styles to the tab group\n * @values true, false\n */\n borderless: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If provided, applies size styles to the tab group\n * @values default, sm\n */\n size: {\n type: String,\n default: 'default',\n validate (size) {\n return TAB_LIST_SIZES.includes(size);\n },\n },\n\n /**\n * Pass through classes, used to customize the tab list\n */\n tabListClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Pass through props, used to customize the tab list\n */\n tabListChildProps: {\n type: Object,\n default: () => ({}),\n },\n },\n\n emits: [\n /**\n * Change tab event with the arguments: selected id of the current tab and disabled value\n *\n * @event change\n * @type {Object}\n */\n 'change',\n ],\n\n data () {\n return {\n provideObj: {\n selected: '', // the currently displayed tab id\n disabled: false, // disable group\n },\n\n focusId: null,\n tabs: [],\n TAB_LIST_SIZE_MODIFIERS,\n TAB_LIST_KIND_MODIFIERS,\n TAB_LIST_IMPORTANCE_MODIFIERS,\n };\n },\n\n watch: {\n disabled: {\n immediate: true,\n handler () {\n this.provideObj.disabled = this.disabled;\n },\n },\n\n selected: {\n immediate: true,\n handler () {\n this.provideObj.selected = this.selected;\n },\n },\n },\n\n mounted () {\n this.updateSelected();\n },\n\n beforeUpdate () {\n this.updateSelected();\n },\n\n methods: {\n updateSelected () {\n /**\n * Prevent override tab selected by default\n */\n if (!this.provideObj.selected) {\n this.provideObj.selected = this.selected;\n }\n this.tabs = this.getTabChildren();\n },\n\n setFocus (focusId) {\n this.focusId = focusId;\n },\n\n getTabChildren () {\n return Array.from(this.$el.querySelectorAll('.d-tab'))\n .map(el => {\n return ({\n context: el,\n panelId: el.getAttribute('aria-controls')?.replace('dt-panel-', ''),\n id: el.getAttribute('id')?.replace('dt-tab-', ''),\n isSelected: el.getAttribute('aria-selected') === 'true',\n });\n });\n },\n\n onChange () {\n this.$emit('change', { ...this.provideObj });\n },\n\n changeContentPanel ({ selected, selectOverride }) {\n this.provideObj.selected = selected;\n if (!selectOverride) {\n this.onChange();\n }\n },\n\n tabLeft () {\n const { index, tabs } = this.getIndexAndTabs();\n if (index === -1) return;\n const indexElement = index - 1 < 0 ? tabs.length - 1 : index - 1;\n this.selectFocusOnTab(indexElement, tabs);\n },\n\n tabRight () {\n const { index, tabs } = this.getIndexAndTabs();\n if (index === -1) return;\n\n const indexElement = index + 1 > tabs.length - 1 ? 0 : index + 1;\n this.selectFocusOnTab(indexElement, tabs);\n },\n\n selectFocusOnTab (index, tabs) {\n const { context } = tabs[index];\n context.focus();\n },\n\n selectTab () {\n const { tabs, index } = this.getIndexAndTabs();\n this.selectTabByIndex(index, tabs);\n },\n\n selectTabByIndex (index, tabs) {\n const { context, panelId } = tabs[index];\n this.provideObj.selected = panelId;\n context.focus();\n },\n\n getIndexAndTabs () {\n const index = this.tabs.findIndex((context) =>\n this.focusId ? context.id === `${this.focusId}` : context.isSelected);\n return {\n tabs: this.tabs,\n index,\n };\n },\n\n onHomeButton () {\n if (this.tabs.length === 0) return;\n this.tabs[0]?.context?.focus();\n },\n\n onEndButton () {\n if (this.tabs.length === 0) return;\n this.tabs[this.tabs.length - 1]?.context?.focus();\n },\n },\n};\n</script>\n","<template>\n <dt-button\n :id=\"`dt-tab-${id}`\"\n :class=\"[\n 'd-tab',\n {\n [TAB_IMPORTANCE_MODIFIERS.selected]: isSelected,\n },\n tabClass,\n ]\"\n role=\"tab\"\n :aria-selected=\"`${isSelected}`\"\n :aria-controls=\"`dt-panel-${panelId}`\"\n :aria-label=\"label\"\n data-qa=\"dt-tab\"\n :tabindex=\"isSelected ? '0' : '-1'\"\n :disabled=\"groupContext.disabled || disabled\"\n v-bind=\"$attrs\"\n v-on=\"tabListeners\"\n >\n <!-- @slot default slot, defaults contains dt-button -->\n <slot />\n </dt-button>\n</template>\n\n<script>\nimport { TAB_IMPORTANCE_MODIFIERS } from './tabs_constants';\nimport { DtButton } from '../button';\n\n/**\n * Tabs allow users to navigation between grouped content in different views while within the same page context.\n * @see https://dialtone.dialpad.com/components/tabs.html\n */\nexport default {\n name: 'DtTab',\n components: {\n DtButton,\n },\n\n inject: ['changeContentPanel', 'groupContext', 'setFocus'],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Id of the tab\n */\n id: {\n type: String,\n required: true,\n },\n\n /**\n * Id of the associated content panel\n */\n panelId: {\n type: String,\n required: true,\n },\n\n /**\n * Describes the tab\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Controls the state of the tab\n * @values true, false\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, disables the tab\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Used to customize the tab element\n */\n tabClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n data () {\n return {\n TAB_IMPORTANCE_MODIFIERS,\n };\n },\n\n computed: {\n isSelected () {\n return this.groupContext.selected === this.panelId;\n },\n\n tabListeners () {\n return {\n ...this.$listeners,\n\n click: event => {\n this.selectPanel();\n this.$emit('click', event);\n },\n\n focus: event => {\n this.setFocus(this.id);\n this.$emit('focus', event);\n },\n };\n },\n },\n\n mounted () {\n this.setSelectedPanelByDefault();\n },\n\n methods: {\n setSelectedPanelByDefault () {\n if (this.selected) {\n this.selectPanel(true);\n }\n },\n\n selectPanel (selectOverride = false) {\n this.changeContentPanel({\n selected: this.panelId,\n selectOverride,\n });\n },\n },\n};\n</script>\n"],"names":["TAB_LIST_SIZES","TAB_LIST_SIZE_MODIFIERS","sm","TAB_LIST_KIND_MODIFIERS","inverted","TAB_LIST_IMPORTANCE_MODIFIERS","borderless","TAB_IMPORTANCE_MODIFIERS","selected","_sfc_main","name","provide","groupContext","provideObj","changeContentPanel","setFocus","props","label","type","String","default","disabled","Boolean","size","validate","includes","tabListClass","Array","Object","tabListChildProps","emits","data","focusId","tabs","watch","immediate","handler","mounted","updateSelected","beforeUpdate","methods","getTabChildren","from","$el","querySelectorAll","map","el","context","panelId","getAttribute","replace","id","isSelected","onChange","$emit","selectOverride","tabLeft","index","getIndexAndTabs","indexElement","length","selectFocusOnTab","tabRight","focus","selectTab","selectTabByIndex","findIndex","onHomeButton","onEndButton","components","DtButton","inject","inheritAttrs","required","tabClass","computed","tabListeners","$listeners","click","event","selectPanel","setSelectedPanelByDefault"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tab-FcsV5VmK.js","sources":["../../components/tabs/tabs_constants.js","../../components/tabs/tab_group.vue","../../components/tabs/tab.vue"],"sourcesContent":["export const TAB_LIST_SIZES = ['default', 'sm'];\n\nexport const TAB_LIST_SIZE_MODIFIERS = {\n sm: 'd-tablist--sm',\n};\n\nexport const TAB_LIST_KIND_MODIFIERS = {\n inverted: 'd-tablist--inverted',\n};\n\nexport const TAB_LIST_IMPORTANCE_MODIFIERS = {\n borderless: 'd-tablist--no-border',\n};\n\nexport const TAB_IMPORTANCE_MODIFIERS = {\n selected: 'd-tab--selected',\n};\n","<template>\n <div\n data-qa=\"dt-tab-group\"\n >\n <!-- eslint-disable-next-line vuejs-accessibility/interactive-supports-focus -->\n <div\n :class=\"[\n 'd-tablist',\n TAB_LIST_SIZE_MODIFIERS[size],\n {\n [TAB_LIST_KIND_MODIFIERS.inverted]: inverted,\n [TAB_LIST_IMPORTANCE_MODIFIERS.borderless]: borderless,\n },\n tabListClass,\n ]\"\n v-bind=\"tabListChildProps\"\n role=\"tablist\"\n :aria-label=\"label\"\n @keyup.left=\"tabLeft\"\n @keyup.right=\"tabRight\"\n @keyup.enter=\"selectTab\"\n @keyup.space=\"selectTab\"\n @keydown.home=\"onHomeButton\"\n @keydown.end=\"onEndButton\"\n >\n <!-- @slot Slot for Tabs -->\n <slot name=\"tabs\" />\n </div>\n <!-- @slot Default slot for Panel -->\n <slot />\n </div>\n</template>\n\n<script>\nimport {\n TAB_LIST_SIZES,\n TAB_LIST_KIND_MODIFIERS,\n TAB_LIST_IMPORTANCE_MODIFIERS,\n TAB_LIST_SIZE_MODIFIERS,\n} from './tabs_constants';\n\n/**\n * Tabs allow users to navigation between grouped content in different views while within the same page context.\n * @see https://dialtone.dialpad.com/components/tabs.html\n */\nexport default {\n name: 'DtTabGroup',\n\n provide () {\n return {\n groupContext: this.provideObj,\n changeContentPanel: this.changeContentPanel,\n setFocus: this.setFocus,\n };\n },\n\n props: {\n /**\n * Identifies the tab group\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * The id of the selected tab panel which should be displayed\n */\n selected: {\n type: String,\n default: '',\n },\n\n /**\n * If true, disables the tab group\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, applies inverted styles to the tab group\n * @values true, false\n */\n inverted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, applies borderless styles to the tab group\n * @values true, false\n */\n borderless: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If provided, applies size styles to the tab group\n * @values default, sm\n */\n size: {\n type: String,\n default: 'default',\n validate (size) {\n return TAB_LIST_SIZES.includes(size);\n },\n },\n\n /**\n * Pass through classes, used to customize the tab list\n */\n tabListClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Pass through props, used to customize the tab list\n */\n tabListChildProps: {\n type: Object,\n default: () => ({}),\n },\n },\n\n emits: [\n /**\n * Change tab event with the arguments: selected id of the current tab and disabled value\n *\n * @event change\n * @type {Object}\n */\n 'change',\n ],\n\n data () {\n return {\n provideObj: {\n selected: '', // the currently displayed tab id\n disabled: false, // disable group\n },\n\n focusId: null,\n tabs: [],\n TAB_LIST_SIZE_MODIFIERS,\n TAB_LIST_KIND_MODIFIERS,\n TAB_LIST_IMPORTANCE_MODIFIERS,\n };\n },\n\n watch: {\n disabled: {\n immediate: true,\n handler () {\n this.provideObj.disabled = this.disabled;\n },\n },\n\n selected: {\n immediate: true,\n handler () {\n this.provideObj.selected = this.selected;\n },\n },\n },\n\n mounted () {\n this.updateSelected();\n },\n\n beforeUpdate () {\n this.updateSelected();\n },\n\n methods: {\n updateSelected () {\n /**\n * Prevent override tab selected by default\n */\n if (!this.provideObj.selected) {\n this.provideObj.selected = this.selected;\n }\n this.tabs = this.getTabChildren();\n },\n\n setFocus (focusId) {\n this.focusId = focusId;\n },\n\n getTabChildren () {\n return Array.from(this.$el.querySelectorAll('.d-tab'))\n .map(el => {\n return ({\n context: el,\n panelId: el.getAttribute('aria-controls')?.replace('dt-panel-', ''),\n id: el.getAttribute('id')?.replace('dt-tab-', ''),\n isSelected: el.getAttribute('aria-selected') === 'true',\n });\n });\n },\n\n onChange () {\n this.$emit('change', { ...this.provideObj });\n },\n\n changeContentPanel ({ selected, selectOverride }) {\n this.provideObj.selected = selected;\n if (!selectOverride) {\n this.onChange();\n }\n },\n\n tabLeft () {\n const { index, tabs } = this.getIndexAndTabs();\n if (index === -1) return;\n const indexElement = index - 1 < 0 ? tabs.length - 1 : index - 1;\n this.selectFocusOnTab(indexElement, tabs);\n },\n\n tabRight () {\n const { index, tabs } = this.getIndexAndTabs();\n if (index === -1) return;\n\n const indexElement = index + 1 > tabs.length - 1 ? 0 : index + 1;\n this.selectFocusOnTab(indexElement, tabs);\n },\n\n selectFocusOnTab (index, tabs) {\n const { context } = tabs[index];\n context.focus();\n },\n\n selectTab () {\n const { tabs, index } = this.getIndexAndTabs();\n this.selectTabByIndex(index, tabs);\n },\n\n selectTabByIndex (index, tabs) {\n const { context, panelId } = tabs[index];\n this.provideObj.selected = panelId;\n context.focus();\n },\n\n getIndexAndTabs () {\n const index = this.tabs.findIndex((context) =>\n this.focusId ? context.id === `${this.focusId}` : context.isSelected);\n return {\n tabs: this.tabs,\n index,\n };\n },\n\n onHomeButton () {\n if (this.tabs.length === 0) return;\n this.tabs[0]?.context?.focus();\n },\n\n onEndButton () {\n if (this.tabs.length === 0) return;\n this.tabs[this.tabs.length - 1]?.context?.focus();\n },\n },\n};\n</script>\n","<template>\n <dt-button\n :id=\"`dt-tab-${id}`\"\n :class=\"[\n 'd-tab',\n {\n [TAB_IMPORTANCE_MODIFIERS.selected]: isSelected,\n },\n tabClass,\n ]\"\n role=\"tab\"\n :aria-selected=\"`${isSelected}`\"\n :aria-controls=\"`dt-panel-${panelId}`\"\n :aria-label=\"label\"\n data-qa=\"dt-tab\"\n :tabindex=\"isSelected ? '0' : '-1'\"\n :disabled=\"groupContext.disabled || disabled\"\n v-bind=\"$attrs\"\n v-on=\"tabListeners\"\n >\n <!-- @slot default slot, defaults contains dt-button -->\n <slot />\n </dt-button>\n</template>\n\n<script>\nimport { TAB_IMPORTANCE_MODIFIERS } from './tabs_constants';\nimport { DtButton } from '../button';\n\n/**\n * Tabs allow users to navigation between grouped content in different views while within the same page context.\n * @see https://dialtone.dialpad.com/components/tabs.html\n */\nexport default {\n name: 'DtTab',\n components: {\n DtButton,\n },\n\n inject: ['changeContentPanel', 'groupContext', 'setFocus'],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Id of the tab\n */\n id: {\n type: String,\n required: true,\n },\n\n /**\n * Id of the associated content panel\n */\n panelId: {\n type: String,\n required: true,\n },\n\n /**\n * Describes the tab\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Controls the state of the tab\n * @values true, false\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, disables the tab\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Used to customize the tab element\n */\n tabClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n data () {\n return {\n TAB_IMPORTANCE_MODIFIERS,\n };\n },\n\n computed: {\n isSelected () {\n return this.groupContext.selected === this.panelId;\n },\n\n tabListeners () {\n return {\n ...this.$listeners,\n\n click: event => {\n this.selectPanel();\n this.$emit('click', event);\n },\n\n focus: event => {\n this.setFocus(this.id);\n this.$emit('focus', event);\n },\n };\n },\n },\n\n mounted () {\n this.setSelectedPanelByDefault();\n },\n\n methods: {\n setSelectedPanelByDefault () {\n if (this.selected) {\n this.selectPanel(true);\n }\n },\n\n selectPanel (selectOverride = false) {\n this.changeContentPanel({\n selected: this.panelId,\n selectOverride,\n });\n },\n },\n};\n</script>\n"],"names":["_sfc_main","DtButton"],"mappings":";;;AAAY,MAAC,iBAAiB,CAAC,WAAW,IAAI;AAEvC,MAAM,0BAA0B;AAAA,EACrC,IAAI;AACN;AAEY,MAAC,0BAA0B;AAAA,EACrC,UAAU;AACZ;AAEY,MAAC,gCAAgC;AAAA,EAC3C,YAAY;AACd;AAEY,MAAC,2BAA2B;AAAA,EACtC,UAAU;AACZ;AC6BA,MAAAA,cAAA;AAAA,EACA,MAAA;AAAA,EAEA,UAAA;AACA,WAAA;AAAA,MACA,cAAA,KAAA;AAAA,MACA,oBAAA,KAAA;AAAA,MACA,UAAA,KAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,SAAA,MAAA;AACA,eAAA,eAAA,SAAA,IAAA;AAAA,MACA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,cAAA;AAAA,MACA,MAAA,CAAA,QAAA,OAAA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,mBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA,OAAA,CAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,YAAA;AAAA,QACA,UAAA;AAAA;AAAA,QACA,UAAA;AAAA;AAAA,MACA;AAAA,MAEA,SAAA;AAAA,MACA,MAAA,CAAA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA,UAAA;AAAA,MACA,WAAA;AAAA,MACA,UAAA;AACA,aAAA,WAAA,WAAA,KAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,UAAA;AAAA,MACA,WAAA;AAAA,MACA,UAAA;AACA,aAAA,WAAA,WAAA,KAAA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AACA,SAAA,eAAA;AAAA,EACA;AAAA,EAEA,eAAA;AACA,SAAA,eAAA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,iBAAA;AAIA,UAAA,CAAA,KAAA,WAAA,UAAA;AACA,aAAA,WAAA,WAAA,KAAA;AAAA,MACA;AACA,WAAA,OAAA,KAAA;IACA;AAAA,IAEA,SAAA,SAAA;AACA,WAAA,UAAA;AAAA,IACA;AAAA,IAEA,iBAAA;AACA,aAAA,MAAA,KAAA,KAAA,IAAA,iBAAA,QAAA,CAAA,EACA,IAAA,QAAA;;AACA,eAAA;AAAA,UACA,SAAA;AAAA,UACA,UAAA,QAAA,aAAA,eAAA,MAAA,mBAAA,QAAA,aAAA;AAAA,UACA,KAAA,QAAA,aAAA,IAAA,MAAA,mBAAA,QAAA,WAAA;AAAA,UACA,YAAA,GAAA,aAAA,eAAA,MAAA;AAAA,QACA;AAAA,MACA,CAAA;AAAA,IACA;AAAA,IAEA,WAAA;AACA,WAAA,MAAA,UAAA,EAAA,GAAA,KAAA,WAAA,CAAA;AAAA,IACA;AAAA,IAEA,mBAAA,EAAA,UAAA,kBAAA;AACA,WAAA,WAAA,WAAA;AACA,UAAA,CAAA,gBAAA;AACA,aAAA,SAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,UAAA;AACA,YAAA,EAAA,OAAA,KAAA,IAAA,KAAA,gBAAA;AACA,UAAA,UAAA;AAAA;AACA,YAAA,eAAA,QAAA,IAAA,IAAA,KAAA,SAAA,IAAA,QAAA;AACA,WAAA,iBAAA,cAAA,IAAA;AAAA,IACA;AAAA,IAEA,WAAA;AACA,YAAA,EAAA,OAAA,KAAA,IAAA,KAAA,gBAAA;AACA,UAAA,UAAA;AAAA;AAEA,YAAA,eAAA,QAAA,IAAA,KAAA,SAAA,IAAA,IAAA,QAAA;AACA,WAAA,iBAAA,cAAA,IAAA;AAAA,IACA;AAAA,IAEA,iBAAA,OAAA,MAAA;AACA,YAAA,EAAA,QAAA,IAAA,KAAA,KAAA;AACA,cAAA,MAAA;AAAA,IACA;AAAA,IAEA,YAAA;AACA,YAAA,EAAA,MAAA,MAAA,IAAA,KAAA,gBAAA;AACA,WAAA,iBAAA,OAAA,IAAA;AAAA,IACA;AAAA,IAEA,iBAAA,OAAA,MAAA;AACA,YAAA,EAAA,SAAA,QAAA,IAAA,KAAA,KAAA;AACA,WAAA,WAAA,WAAA;AACA,cAAA,MAAA;AAAA,IACA;AAAA,IAEA,kBAAA;AACA,YAAA,QAAA,KAAA,KAAA,UAAA,CAAA,YACA,KAAA,UAAA,QAAA,OAAA,GAAA,KAAA,OAAA,KAAA,QAAA,UAAA;AACA,aAAA;AAAA,QACA,MAAA,KAAA;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,eAAA;;AACA,UAAA,KAAA,KAAA,WAAA;AAAA;AACA,uBAAA,KAAA,CAAA,MAAA,mBAAA,YAAA,mBAAA;AAAA,IACA;AAAA,IAEA,cAAA;;AACA,UAAA,KAAA,KAAA,WAAA;AAAA;AACA,uBAAA,KAAA,KAAA,KAAA,SAAA,CAAA,MAAA,mBAAA,YAAA,mBAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACzOA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EACA,YAAA;AAAA,IACA,UAAAC,WAAA;AAAA,EACA;AAAA,EAEA,QAAA,CAAA,sBAAA,gBAAA,UAAA;AAAA,EAEA,cAAA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,IAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,SAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAA;AAAA,MACA,MAAA,CAAA,QAAA,OAAA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,aAAA;AACA,aAAA,KAAA,aAAA,aAAA,KAAA;AAAA,IACA;AAAA,IAEA,eAAA;AACA,aAAA;AAAA,QACA,GAAA,KAAA;AAAA,QAEA,OAAA,WAAA;AACA,eAAA,YAAA;AACA,eAAA,MAAA,SAAA,KAAA;AAAA,QACA;AAAA,QAEA,OAAA,WAAA;AACA,eAAA,SAAA,KAAA,EAAA;AACA,eAAA,MAAA,SAAA,KAAA;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AACA,SAAA,0BAAA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,4BAAA;AACA,UAAA,KAAA,UAAA;AACA,aAAA,YAAA,IAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,YAAA,iBAAA,OAAA;AACA,WAAA,mBAAA;AAAA,QACA,UAAA,KAAA;AAAA,QACA;AAAA,MACA,CAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -153,57 +153,38 @@ const _sfc_main$1 = {
|
|
|
153
153
|
});
|
|
154
154
|
},
|
|
155
155
|
onChange() {
|
|
156
|
-
this.$emit("change", {
|
|
157
|
-
...this.provideObj
|
|
158
|
-
});
|
|
156
|
+
this.$emit("change", { ...this.provideObj });
|
|
159
157
|
},
|
|
160
|
-
changeContentPanel({
|
|
161
|
-
selected,
|
|
162
|
-
selectOverride
|
|
163
|
-
}) {
|
|
158
|
+
changeContentPanel({ selected, selectOverride }) {
|
|
164
159
|
this.provideObj.selected = selected;
|
|
165
160
|
if (!selectOverride) {
|
|
166
161
|
this.onChange();
|
|
167
162
|
}
|
|
168
163
|
},
|
|
169
164
|
tabLeft() {
|
|
170
|
-
const {
|
|
171
|
-
index,
|
|
172
|
-
tabs
|
|
173
|
-
} = this.getIndexAndTabs();
|
|
165
|
+
const { index, tabs } = this.getIndexAndTabs();
|
|
174
166
|
if (index === -1)
|
|
175
167
|
return;
|
|
176
168
|
const indexElement = index - 1 < 0 ? tabs.length - 1 : index - 1;
|
|
177
169
|
this.selectFocusOnTab(indexElement, tabs);
|
|
178
170
|
},
|
|
179
171
|
tabRight() {
|
|
180
|
-
const {
|
|
181
|
-
index,
|
|
182
|
-
tabs
|
|
183
|
-
} = this.getIndexAndTabs();
|
|
172
|
+
const { index, tabs } = this.getIndexAndTabs();
|
|
184
173
|
if (index === -1)
|
|
185
174
|
return;
|
|
186
175
|
const indexElement = index + 1 > tabs.length - 1 ? 0 : index + 1;
|
|
187
176
|
this.selectFocusOnTab(indexElement, tabs);
|
|
188
177
|
},
|
|
189
178
|
selectFocusOnTab(index, tabs) {
|
|
190
|
-
const {
|
|
191
|
-
context
|
|
192
|
-
} = tabs[index];
|
|
179
|
+
const { context } = tabs[index];
|
|
193
180
|
context.focus();
|
|
194
181
|
},
|
|
195
182
|
selectTab() {
|
|
196
|
-
const {
|
|
197
|
-
tabs,
|
|
198
|
-
index
|
|
199
|
-
} = this.getIndexAndTabs();
|
|
183
|
+
const { tabs, index } = this.getIndexAndTabs();
|
|
200
184
|
this.selectTabByIndex(index, tabs);
|
|
201
185
|
},
|
|
202
186
|
selectTabByIndex(index, tabs) {
|
|
203
|
-
const {
|
|
204
|
-
context,
|
|
205
|
-
panelId
|
|
206
|
-
} = tabs[index];
|
|
187
|
+
const { context, panelId } = tabs[index];
|
|
207
188
|
this.provideObj.selected = panelId;
|
|
208
189
|
context.focus();
|
|
209
190
|
},
|
|
@@ -230,55 +211,55 @@ const _sfc_main$1 = {
|
|
|
230
211
|
};
|
|
231
212
|
var _sfc_render$1 = function render() {
|
|
232
213
|
var _vm = this, _c = _vm._self._c;
|
|
233
|
-
return _c("div", {
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
}, [_c("div", _vm._b({
|
|
238
|
-
class: ["d-tablist", _vm.TAB_LIST_SIZE_MODIFIERS[_vm.size], {
|
|
214
|
+
return _c("div", { attrs: { "data-qa": "dt-tab-group" } }, [_c("div", _vm._b({ class: [
|
|
215
|
+
"d-tablist",
|
|
216
|
+
_vm.TAB_LIST_SIZE_MODIFIERS[_vm.size],
|
|
217
|
+
{
|
|
239
218
|
[_vm.TAB_LIST_KIND_MODIFIERS.inverted]: _vm.inverted,
|
|
240
219
|
[_vm.TAB_LIST_IMPORTANCE_MODIFIERS.borderless]: _vm.borderless
|
|
241
|
-
}, _vm.tabListClass],
|
|
242
|
-
attrs: {
|
|
243
|
-
"role": "tablist",
|
|
244
|
-
"aria-label": _vm.label
|
|
245
220
|
},
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
}]
|
|
277
|
-
}
|
|
278
|
-
}, "div", _vm.tabListChildProps, false), [_vm._t("tabs")], 2), _vm._t("default")], 2);
|
|
221
|
+
_vm.tabListClass
|
|
222
|
+
], attrs: { "role": "tablist", "aria-label": _vm.label }, on: { "keyup": [function($event) {
|
|
223
|
+
if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "left", 37, $event.key, ["Left", "ArrowLeft"]))
|
|
224
|
+
return null;
|
|
225
|
+
if ("button" in $event && $event.button !== 0)
|
|
226
|
+
return null;
|
|
227
|
+
return _vm.tabLeft.apply(null, arguments);
|
|
228
|
+
}, function($event) {
|
|
229
|
+
if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "right", 39, $event.key, ["Right", "ArrowRight"]))
|
|
230
|
+
return null;
|
|
231
|
+
if ("button" in $event && $event.button !== 2)
|
|
232
|
+
return null;
|
|
233
|
+
return _vm.tabRight.apply(null, arguments);
|
|
234
|
+
}, function($event) {
|
|
235
|
+
if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "enter", 13, $event.key, "Enter"))
|
|
236
|
+
return null;
|
|
237
|
+
return _vm.selectTab.apply(null, arguments);
|
|
238
|
+
}, function($event) {
|
|
239
|
+
if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "space", 32, $event.key, [" ", "Spacebar"]))
|
|
240
|
+
return null;
|
|
241
|
+
return _vm.selectTab.apply(null, arguments);
|
|
242
|
+
}], "keydown": [function($event) {
|
|
243
|
+
if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "home", void 0, $event.key, void 0))
|
|
244
|
+
return null;
|
|
245
|
+
return _vm.onHomeButton.apply(null, arguments);
|
|
246
|
+
}, function($event) {
|
|
247
|
+
if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "end", void 0, $event.key, void 0))
|
|
248
|
+
return null;
|
|
249
|
+
return _vm.onEndButton.apply(null, arguments);
|
|
250
|
+
}] } }, "div", _vm.tabListChildProps, false), [_vm._t("tabs")], 2), _vm._t("default")], 2);
|
|
279
251
|
};
|
|
280
252
|
var _sfc_staticRenderFns$1 = [];
|
|
281
|
-
var __component__$1 = /* @__PURE__ */ normalizeComponent(
|
|
253
|
+
var __component__$1 = /* @__PURE__ */ normalizeComponent(
|
|
254
|
+
_sfc_main$1,
|
|
255
|
+
_sfc_render$1,
|
|
256
|
+
_sfc_staticRenderFns$1,
|
|
257
|
+
false,
|
|
258
|
+
null,
|
|
259
|
+
null,
|
|
260
|
+
null,
|
|
261
|
+
null
|
|
262
|
+
);
|
|
282
263
|
const DtTabGroup = __component__$1.exports;
|
|
283
264
|
const _sfc_main = {
|
|
284
265
|
name: "DtTab",
|
|
@@ -375,24 +356,25 @@ const _sfc_main = {
|
|
|
375
356
|
};
|
|
376
357
|
var _sfc_render = function render2() {
|
|
377
358
|
var _vm = this, _c = _vm._self._c;
|
|
378
|
-
return _c("dt-button", _vm._g(_vm._b({
|
|
379
|
-
|
|
359
|
+
return _c("dt-button", _vm._g(_vm._b({ class: [
|
|
360
|
+
"d-tab",
|
|
361
|
+
{
|
|
380
362
|
[_vm.TAB_IMPORTANCE_MODIFIERS.selected]: _vm.isSelected
|
|
381
|
-
},
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
"role": "tab",
|
|
385
|
-
"aria-selected": `${_vm.isSelected}`,
|
|
386
|
-
"aria-controls": `dt-panel-${_vm.panelId}`,
|
|
387
|
-
"aria-label": _vm.label,
|
|
388
|
-
"data-qa": "dt-tab",
|
|
389
|
-
"tabindex": _vm.isSelected ? "0" : "-1",
|
|
390
|
-
"disabled": _vm.groupContext.disabled || _vm.disabled
|
|
391
|
-
}
|
|
392
|
-
}, "dt-button", _vm.$attrs, false), _vm.tabListeners), [_vm._t("default")], 2);
|
|
363
|
+
},
|
|
364
|
+
_vm.tabClass
|
|
365
|
+
], attrs: { "id": `dt-tab-${_vm.id}`, "role": "tab", "aria-selected": `${_vm.isSelected}`, "aria-controls": `dt-panel-${_vm.panelId}`, "aria-label": _vm.label, "data-qa": "dt-tab", "tabindex": _vm.isSelected ? "0" : "-1", "disabled": _vm.groupContext.disabled || _vm.disabled } }, "dt-button", _vm.$attrs, false), _vm.tabListeners), [_vm._t("default")], 2);
|
|
393
366
|
};
|
|
394
367
|
var _sfc_staticRenderFns = [];
|
|
395
|
-
var __component__ = /* @__PURE__ */ normalizeComponent(
|
|
368
|
+
var __component__ = /* @__PURE__ */ normalizeComponent(
|
|
369
|
+
_sfc_main,
|
|
370
|
+
_sfc_render,
|
|
371
|
+
_sfc_staticRenderFns,
|
|
372
|
+
false,
|
|
373
|
+
null,
|
|
374
|
+
null,
|
|
375
|
+
null,
|
|
376
|
+
null
|
|
377
|
+
);
|
|
396
378
|
const DtTab = __component__.exports;
|
|
397
379
|
export {
|
|
398
380
|
DtTab,
|
|
@@ -402,4 +384,4 @@ export {
|
|
|
402
384
|
TAB_LIST_KIND_MODIFIERS,
|
|
403
385
|
TAB_LIST_SIZES
|
|
404
386
|
};
|
|
405
|
-
//# sourceMappingURL=tab-
|
|
387
|
+
//# sourceMappingURL=tab-V4cb44Ry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tab-79yMX6m6.js","sources":["../../components/tabs/tabs_constants.js","../../components/tabs/tab_group.vue","../../components/tabs/tab.vue"],"sourcesContent":["export const TAB_LIST_SIZES = ['default', 'sm'];\n\nexport const TAB_LIST_SIZE_MODIFIERS = {\n sm: 'd-tablist--sm',\n};\n\nexport const TAB_LIST_KIND_MODIFIERS = {\n inverted: 'd-tablist--inverted',\n};\n\nexport const TAB_LIST_IMPORTANCE_MODIFIERS = {\n borderless: 'd-tablist--no-border',\n};\n\nexport const TAB_IMPORTANCE_MODIFIERS = {\n selected: 'd-tab--selected',\n};\n","<template>\n <div\n data-qa=\"dt-tab-group\"\n >\n <!-- eslint-disable-next-line vuejs-accessibility/interactive-supports-focus -->\n <div\n :class=\"[\n 'd-tablist',\n TAB_LIST_SIZE_MODIFIERS[size],\n {\n [TAB_LIST_KIND_MODIFIERS.inverted]: inverted,\n [TAB_LIST_IMPORTANCE_MODIFIERS.borderless]: borderless,\n },\n tabListClass,\n ]\"\n v-bind=\"tabListChildProps\"\n role=\"tablist\"\n :aria-label=\"label\"\n @keyup.left=\"tabLeft\"\n @keyup.right=\"tabRight\"\n @keyup.enter=\"selectTab\"\n @keyup.space=\"selectTab\"\n @keydown.home=\"onHomeButton\"\n @keydown.end=\"onEndButton\"\n >\n <!-- @slot Slot for Tabs -->\n <slot name=\"tabs\" />\n </div>\n <!-- @slot Default slot for Panel -->\n <slot />\n </div>\n</template>\n\n<script>\nimport {\n TAB_LIST_SIZES,\n TAB_LIST_KIND_MODIFIERS,\n TAB_LIST_IMPORTANCE_MODIFIERS,\n TAB_LIST_SIZE_MODIFIERS,\n} from './tabs_constants';\n\n/**\n * Tabs allow users to navigation between grouped content in different views while within the same page context.\n * @see https://dialtone.dialpad.com/components/tabs.html\n */\nexport default {\n name: 'DtTabGroup',\n\n provide () {\n return {\n groupContext: this.provideObj,\n changeContentPanel: this.changeContentPanel,\n setFocus: this.setFocus,\n };\n },\n\n props: {\n /**\n * Identifies the tab group\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * The id of the selected tab panel which should be displayed\n */\n selected: {\n type: String,\n default: '',\n },\n\n /**\n * If true, disables the tab group\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, applies inverted styles to the tab group\n * @values true, false\n */\n inverted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, applies borderless styles to the tab group\n * @values true, false\n */\n borderless: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If provided, applies size styles to the tab group\n * @values default, sm\n */\n size: {\n type: String,\n default: 'default',\n validate (size) {\n return TAB_LIST_SIZES.includes(size);\n },\n },\n\n /**\n * Pass through classes, used to customize the tab list\n */\n tabListClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Pass through props, used to customize the tab list\n */\n tabListChildProps: {\n type: Object,\n default: () => ({}),\n },\n },\n\n emits: [\n /**\n * Change tab event with the arguments: selected id of the current tab and disabled value\n *\n * @event change\n * @type {Object}\n */\n 'change',\n ],\n\n data () {\n return {\n provideObj: {\n selected: '', // the currently displayed tab id\n disabled: false, // disable group\n },\n\n focusId: null,\n tabs: [],\n TAB_LIST_SIZE_MODIFIERS,\n TAB_LIST_KIND_MODIFIERS,\n TAB_LIST_IMPORTANCE_MODIFIERS,\n };\n },\n\n watch: {\n disabled: {\n immediate: true,\n handler () {\n this.provideObj.disabled = this.disabled;\n },\n },\n\n selected: {\n immediate: true,\n handler () {\n this.provideObj.selected = this.selected;\n },\n },\n },\n\n mounted () {\n this.updateSelected();\n },\n\n beforeUpdate () {\n this.updateSelected();\n },\n\n methods: {\n updateSelected () {\n /**\n * Prevent override tab selected by default\n */\n if (!this.provideObj.selected) {\n this.provideObj.selected = this.selected;\n }\n this.tabs = this.getTabChildren();\n },\n\n setFocus (focusId) {\n this.focusId = focusId;\n },\n\n getTabChildren () {\n return Array.from(this.$el.querySelectorAll('.d-tab'))\n .map(el => {\n return ({\n context: el,\n panelId: el.getAttribute('aria-controls')?.replace('dt-panel-', ''),\n id: el.getAttribute('id')?.replace('dt-tab-', ''),\n isSelected: el.getAttribute('aria-selected') === 'true',\n });\n });\n },\n\n onChange () {\n this.$emit('change', { ...this.provideObj });\n },\n\n changeContentPanel ({ selected, selectOverride }) {\n this.provideObj.selected = selected;\n if (!selectOverride) {\n this.onChange();\n }\n },\n\n tabLeft () {\n const { index, tabs } = this.getIndexAndTabs();\n if (index === -1) return;\n const indexElement = index - 1 < 0 ? tabs.length - 1 : index - 1;\n this.selectFocusOnTab(indexElement, tabs);\n },\n\n tabRight () {\n const { index, tabs } = this.getIndexAndTabs();\n if (index === -1) return;\n\n const indexElement = index + 1 > tabs.length - 1 ? 0 : index + 1;\n this.selectFocusOnTab(indexElement, tabs);\n },\n\n selectFocusOnTab (index, tabs) {\n const { context } = tabs[index];\n context.focus();\n },\n\n selectTab () {\n const { tabs, index } = this.getIndexAndTabs();\n this.selectTabByIndex(index, tabs);\n },\n\n selectTabByIndex (index, tabs) {\n const { context, panelId } = tabs[index];\n this.provideObj.selected = panelId;\n context.focus();\n },\n\n getIndexAndTabs () {\n const index = this.tabs.findIndex((context) =>\n this.focusId ? context.id === `${this.focusId}` : context.isSelected);\n return {\n tabs: this.tabs,\n index,\n };\n },\n\n onHomeButton () {\n if (this.tabs.length === 0) return;\n this.tabs[0]?.context?.focus();\n },\n\n onEndButton () {\n if (this.tabs.length === 0) return;\n this.tabs[this.tabs.length - 1]?.context?.focus();\n },\n },\n};\n</script>\n","<template>\n <dt-button\n :id=\"`dt-tab-${id}`\"\n :class=\"[\n 'd-tab',\n {\n [TAB_IMPORTANCE_MODIFIERS.selected]: isSelected,\n },\n tabClass,\n ]\"\n role=\"tab\"\n :aria-selected=\"`${isSelected}`\"\n :aria-controls=\"`dt-panel-${panelId}`\"\n :aria-label=\"label\"\n data-qa=\"dt-tab\"\n :tabindex=\"isSelected ? '0' : '-1'\"\n :disabled=\"groupContext.disabled || disabled\"\n v-bind=\"$attrs\"\n v-on=\"tabListeners\"\n >\n <!-- @slot default slot, defaults contains dt-button -->\n <slot />\n </dt-button>\n</template>\n\n<script>\nimport { TAB_IMPORTANCE_MODIFIERS } from './tabs_constants';\nimport { DtButton } from '../button';\n\n/**\n * Tabs allow users to navigation between grouped content in different views while within the same page context.\n * @see https://dialtone.dialpad.com/components/tabs.html\n */\nexport default {\n name: 'DtTab',\n components: {\n DtButton,\n },\n\n inject: ['changeContentPanel', 'groupContext', 'setFocus'],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Id of the tab\n */\n id: {\n type: String,\n required: true,\n },\n\n /**\n * Id of the associated content panel\n */\n panelId: {\n type: String,\n required: true,\n },\n\n /**\n * Describes the tab\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Controls the state of the tab\n * @values true, false\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, disables the tab\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Used to customize the tab element\n */\n tabClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n data () {\n return {\n TAB_IMPORTANCE_MODIFIERS,\n };\n },\n\n computed: {\n isSelected () {\n return this.groupContext.selected === this.panelId;\n },\n\n tabListeners () {\n return {\n ...this.$listeners,\n\n click: event => {\n this.selectPanel();\n this.$emit('click', event);\n },\n\n focus: event => {\n this.setFocus(this.id);\n this.$emit('focus', event);\n },\n };\n },\n },\n\n mounted () {\n this.setSelectedPanelByDefault();\n },\n\n methods: {\n setSelectedPanelByDefault () {\n if (this.selected) {\n this.selectPanel(true);\n }\n },\n\n selectPanel (selectOverride = false) {\n this.changeContentPanel({\n selected: this.panelId,\n selectOverride,\n });\n },\n },\n};\n</script>\n"],"names":["TAB_LIST_SIZES","TAB_LIST_SIZE_MODIFIERS","sm","TAB_LIST_KIND_MODIFIERS","inverted","TAB_LIST_IMPORTANCE_MODIFIERS","borderless","TAB_IMPORTANCE_MODIFIERS","selected","_sfc_main","name","provide","groupContext","provideObj","changeContentPanel","setFocus","props","label","type","String","default","disabled","Boolean","size","validate","includes","tabListClass","Array","Object","tabListChildProps","emits","data","focusId","tabs","watch","immediate","handler","mounted","updateSelected","beforeUpdate","methods","getTabChildren","from","$el","querySelectorAll","map","el","context","panelId","getAttribute","replace","id","isSelected","onChange","$emit","selectOverride","tabLeft","index","getIndexAndTabs","indexElement","length","selectFocusOnTab","tabRight","focus","selectTab","selectTabByIndex","findIndex","onHomeButton","onEndButton","components","DtButton","inject","inheritAttrs","required","tabClass","computed","tabListeners","$listeners","click","event","selectPanel","setSelectedPanelByDefault"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tab-V4cb44Ry.js","sources":["../../components/tabs/tabs_constants.js","../../components/tabs/tab_group.vue","../../components/tabs/tab.vue"],"sourcesContent":["export const TAB_LIST_SIZES = ['default', 'sm'];\n\nexport const TAB_LIST_SIZE_MODIFIERS = {\n sm: 'd-tablist--sm',\n};\n\nexport const TAB_LIST_KIND_MODIFIERS = {\n inverted: 'd-tablist--inverted',\n};\n\nexport const TAB_LIST_IMPORTANCE_MODIFIERS = {\n borderless: 'd-tablist--no-border',\n};\n\nexport const TAB_IMPORTANCE_MODIFIERS = {\n selected: 'd-tab--selected',\n};\n","<template>\n <div\n data-qa=\"dt-tab-group\"\n >\n <!-- eslint-disable-next-line vuejs-accessibility/interactive-supports-focus -->\n <div\n :class=\"[\n 'd-tablist',\n TAB_LIST_SIZE_MODIFIERS[size],\n {\n [TAB_LIST_KIND_MODIFIERS.inverted]: inverted,\n [TAB_LIST_IMPORTANCE_MODIFIERS.borderless]: borderless,\n },\n tabListClass,\n ]\"\n v-bind=\"tabListChildProps\"\n role=\"tablist\"\n :aria-label=\"label\"\n @keyup.left=\"tabLeft\"\n @keyup.right=\"tabRight\"\n @keyup.enter=\"selectTab\"\n @keyup.space=\"selectTab\"\n @keydown.home=\"onHomeButton\"\n @keydown.end=\"onEndButton\"\n >\n <!-- @slot Slot for Tabs -->\n <slot name=\"tabs\" />\n </div>\n <!-- @slot Default slot for Panel -->\n <slot />\n </div>\n</template>\n\n<script>\nimport {\n TAB_LIST_SIZES,\n TAB_LIST_KIND_MODIFIERS,\n TAB_LIST_IMPORTANCE_MODIFIERS,\n TAB_LIST_SIZE_MODIFIERS,\n} from './tabs_constants';\n\n/**\n * Tabs allow users to navigation between grouped content in different views while within the same page context.\n * @see https://dialtone.dialpad.com/components/tabs.html\n */\nexport default {\n name: 'DtTabGroup',\n\n provide () {\n return {\n groupContext: this.provideObj,\n changeContentPanel: this.changeContentPanel,\n setFocus: this.setFocus,\n };\n },\n\n props: {\n /**\n * Identifies the tab group\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * The id of the selected tab panel which should be displayed\n */\n selected: {\n type: String,\n default: '',\n },\n\n /**\n * If true, disables the tab group\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, applies inverted styles to the tab group\n * @values true, false\n */\n inverted: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, applies borderless styles to the tab group\n * @values true, false\n */\n borderless: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If provided, applies size styles to the tab group\n * @values default, sm\n */\n size: {\n type: String,\n default: 'default',\n validate (size) {\n return TAB_LIST_SIZES.includes(size);\n },\n },\n\n /**\n * Pass through classes, used to customize the tab list\n */\n tabListClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Pass through props, used to customize the tab list\n */\n tabListChildProps: {\n type: Object,\n default: () => ({}),\n },\n },\n\n emits: [\n /**\n * Change tab event with the arguments: selected id of the current tab and disabled value\n *\n * @event change\n * @type {Object}\n */\n 'change',\n ],\n\n data () {\n return {\n provideObj: {\n selected: '', // the currently displayed tab id\n disabled: false, // disable group\n },\n\n focusId: null,\n tabs: [],\n TAB_LIST_SIZE_MODIFIERS,\n TAB_LIST_KIND_MODIFIERS,\n TAB_LIST_IMPORTANCE_MODIFIERS,\n };\n },\n\n watch: {\n disabled: {\n immediate: true,\n handler () {\n this.provideObj.disabled = this.disabled;\n },\n },\n\n selected: {\n immediate: true,\n handler () {\n this.provideObj.selected = this.selected;\n },\n },\n },\n\n mounted () {\n this.updateSelected();\n },\n\n beforeUpdate () {\n this.updateSelected();\n },\n\n methods: {\n updateSelected () {\n /**\n * Prevent override tab selected by default\n */\n if (!this.provideObj.selected) {\n this.provideObj.selected = this.selected;\n }\n this.tabs = this.getTabChildren();\n },\n\n setFocus (focusId) {\n this.focusId = focusId;\n },\n\n getTabChildren () {\n return Array.from(this.$el.querySelectorAll('.d-tab'))\n .map(el => {\n return ({\n context: el,\n panelId: el.getAttribute('aria-controls')?.replace('dt-panel-', ''),\n id: el.getAttribute('id')?.replace('dt-tab-', ''),\n isSelected: el.getAttribute('aria-selected') === 'true',\n });\n });\n },\n\n onChange () {\n this.$emit('change', { ...this.provideObj });\n },\n\n changeContentPanel ({ selected, selectOverride }) {\n this.provideObj.selected = selected;\n if (!selectOverride) {\n this.onChange();\n }\n },\n\n tabLeft () {\n const { index, tabs } = this.getIndexAndTabs();\n if (index === -1) return;\n const indexElement = index - 1 < 0 ? tabs.length - 1 : index - 1;\n this.selectFocusOnTab(indexElement, tabs);\n },\n\n tabRight () {\n const { index, tabs } = this.getIndexAndTabs();\n if (index === -1) return;\n\n const indexElement = index + 1 > tabs.length - 1 ? 0 : index + 1;\n this.selectFocusOnTab(indexElement, tabs);\n },\n\n selectFocusOnTab (index, tabs) {\n const { context } = tabs[index];\n context.focus();\n },\n\n selectTab () {\n const { tabs, index } = this.getIndexAndTabs();\n this.selectTabByIndex(index, tabs);\n },\n\n selectTabByIndex (index, tabs) {\n const { context, panelId } = tabs[index];\n this.provideObj.selected = panelId;\n context.focus();\n },\n\n getIndexAndTabs () {\n const index = this.tabs.findIndex((context) =>\n this.focusId ? context.id === `${this.focusId}` : context.isSelected);\n return {\n tabs: this.tabs,\n index,\n };\n },\n\n onHomeButton () {\n if (this.tabs.length === 0) return;\n this.tabs[0]?.context?.focus();\n },\n\n onEndButton () {\n if (this.tabs.length === 0) return;\n this.tabs[this.tabs.length - 1]?.context?.focus();\n },\n },\n};\n</script>\n","<template>\n <dt-button\n :id=\"`dt-tab-${id}`\"\n :class=\"[\n 'd-tab',\n {\n [TAB_IMPORTANCE_MODIFIERS.selected]: isSelected,\n },\n tabClass,\n ]\"\n role=\"tab\"\n :aria-selected=\"`${isSelected}`\"\n :aria-controls=\"`dt-panel-${panelId}`\"\n :aria-label=\"label\"\n data-qa=\"dt-tab\"\n :tabindex=\"isSelected ? '0' : '-1'\"\n :disabled=\"groupContext.disabled || disabled\"\n v-bind=\"$attrs\"\n v-on=\"tabListeners\"\n >\n <!-- @slot default slot, defaults contains dt-button -->\n <slot />\n </dt-button>\n</template>\n\n<script>\nimport { TAB_IMPORTANCE_MODIFIERS } from './tabs_constants';\nimport { DtButton } from '../button';\n\n/**\n * Tabs allow users to navigation between grouped content in different views while within the same page context.\n * @see https://dialtone.dialpad.com/components/tabs.html\n */\nexport default {\n name: 'DtTab',\n components: {\n DtButton,\n },\n\n inject: ['changeContentPanel', 'groupContext', 'setFocus'],\n\n inheritAttrs: false,\n\n props: {\n /**\n * Id of the tab\n */\n id: {\n type: String,\n required: true,\n },\n\n /**\n * Id of the associated content panel\n */\n panelId: {\n type: String,\n required: true,\n },\n\n /**\n * Describes the tab\n */\n label: {\n type: String,\n default: '',\n },\n\n /**\n * Controls the state of the tab\n * @values true, false\n */\n selected: {\n type: Boolean,\n default: false,\n },\n\n /**\n * If true, disables the tab\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Used to customize the tab element\n */\n tabClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n data () {\n return {\n TAB_IMPORTANCE_MODIFIERS,\n };\n },\n\n computed: {\n isSelected () {\n return this.groupContext.selected === this.panelId;\n },\n\n tabListeners () {\n return {\n ...this.$listeners,\n\n click: event => {\n this.selectPanel();\n this.$emit('click', event);\n },\n\n focus: event => {\n this.setFocus(this.id);\n this.$emit('focus', event);\n },\n };\n },\n },\n\n mounted () {\n this.setSelectedPanelByDefault();\n },\n\n methods: {\n setSelectedPanelByDefault () {\n if (this.selected) {\n this.selectPanel(true);\n }\n },\n\n selectPanel (selectOverride = false) {\n this.changeContentPanel({\n selected: this.panelId,\n selectOverride,\n });\n },\n },\n};\n</script>\n"],"names":["_sfc_main"],"mappings":";;AAAY,MAAC,iBAAiB,CAAC,WAAW,IAAI;AAEvC,MAAM,0BAA0B;AAAA,EACrC,IAAI;AACN;AAEY,MAAC,0BAA0B;AAAA,EACrC,UAAU;AACZ;AAEY,MAAC,gCAAgC;AAAA,EAC3C,YAAY;AACd;AAEY,MAAC,2BAA2B;AAAA,EACtC,UAAU;AACZ;AC6BA,MAAAA,cAAA;AAAA,EACA,MAAA;AAAA,EAEA,UAAA;AACA,WAAA;AAAA,MACA,cAAA,KAAA;AAAA,MACA,oBAAA,KAAA;AAAA,MACA,UAAA,KAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,SAAA,MAAA;AACA,eAAA,eAAA,SAAA,IAAA;AAAA,MACA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,cAAA;AAAA,MACA,MAAA,CAAA,QAAA,OAAA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,mBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA,OAAA,CAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,YAAA;AAAA,QACA,UAAA;AAAA;AAAA,QACA,UAAA;AAAA;AAAA,MACA;AAAA,MAEA,SAAA;AAAA,MACA,MAAA,CAAA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA,UAAA;AAAA,MACA,WAAA;AAAA,MACA,UAAA;AACA,aAAA,WAAA,WAAA,KAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,UAAA;AAAA,MACA,WAAA;AAAA,MACA,UAAA;AACA,aAAA,WAAA,WAAA,KAAA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AACA,SAAA,eAAA;AAAA,EACA;AAAA,EAEA,eAAA;AACA,SAAA,eAAA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,iBAAA;AAIA,UAAA,CAAA,KAAA,WAAA,UAAA;AACA,aAAA,WAAA,WAAA,KAAA;AAAA,MACA;AACA,WAAA,OAAA,KAAA;IACA;AAAA,IAEA,SAAA,SAAA;AACA,WAAA,UAAA;AAAA,IACA;AAAA,IAEA,iBAAA;AACA,aAAA,MAAA,KAAA,KAAA,IAAA,iBAAA,QAAA,CAAA,EACA,IAAA,QAAA;;AACA,eAAA;AAAA,UACA,SAAA;AAAA,UACA,UAAA,QAAA,aAAA,eAAA,MAAA,mBAAA,QAAA,aAAA;AAAA,UACA,KAAA,QAAA,aAAA,IAAA,MAAA,mBAAA,QAAA,WAAA;AAAA,UACA,YAAA,GAAA,aAAA,eAAA,MAAA;AAAA,QACA;AAAA,MACA,CAAA;AAAA,IACA;AAAA,IAEA,WAAA;AACA,WAAA,MAAA,UAAA,EAAA,GAAA,KAAA,WAAA,CAAA;AAAA,IACA;AAAA,IAEA,mBAAA,EAAA,UAAA,kBAAA;AACA,WAAA,WAAA,WAAA;AACA,UAAA,CAAA,gBAAA;AACA,aAAA,SAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,UAAA;AACA,YAAA,EAAA,OAAA,KAAA,IAAA,KAAA,gBAAA;AACA,UAAA,UAAA;AAAA;AACA,YAAA,eAAA,QAAA,IAAA,IAAA,KAAA,SAAA,IAAA,QAAA;AACA,WAAA,iBAAA,cAAA,IAAA;AAAA,IACA;AAAA,IAEA,WAAA;AACA,YAAA,EAAA,OAAA,KAAA,IAAA,KAAA,gBAAA;AACA,UAAA,UAAA;AAAA;AAEA,YAAA,eAAA,QAAA,IAAA,KAAA,SAAA,IAAA,IAAA,QAAA;AACA,WAAA,iBAAA,cAAA,IAAA;AAAA,IACA;AAAA,IAEA,iBAAA,OAAA,MAAA;AACA,YAAA,EAAA,QAAA,IAAA,KAAA,KAAA;AACA,cAAA,MAAA;AAAA,IACA;AAAA,IAEA,YAAA;AACA,YAAA,EAAA,MAAA,MAAA,IAAA,KAAA,gBAAA;AACA,WAAA,iBAAA,OAAA,IAAA;AAAA,IACA;AAAA,IAEA,iBAAA,OAAA,MAAA;AACA,YAAA,EAAA,SAAA,QAAA,IAAA,KAAA,KAAA;AACA,WAAA,WAAA,WAAA;AACA,cAAA,MAAA;AAAA,IACA;AAAA,IAEA,kBAAA;AACA,YAAA,QAAA,KAAA,KAAA,UAAA,CAAA,YACA,KAAA,UAAA,QAAA,OAAA,GAAA,KAAA,OAAA,KAAA,QAAA,UAAA;AACA,aAAA;AAAA,QACA,MAAA,KAAA;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,eAAA;;AACA,UAAA,KAAA,KAAA,WAAA;AAAA;AACA,uBAAA,KAAA,CAAA,MAAA,mBAAA,YAAA,mBAAA;AAAA,IACA;AAAA,IAEA,cAAA;;AACA,UAAA,KAAA,KAAA,WAAA;AAAA;AACA,uBAAA,KAAA,KAAA,KAAA,SAAA,CAAA,MAAA,mBAAA,YAAA,mBAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACzOA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EACA,YAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,QAAA,CAAA,sBAAA,gBAAA,UAAA;AAAA,EAEA,cAAA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,IAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,SAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAA;AAAA,MACA,MAAA,CAAA,QAAA,OAAA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,aAAA;AACA,aAAA,KAAA,aAAA,aAAA,KAAA;AAAA,IACA;AAAA,IAEA,eAAA;AACA,aAAA;AAAA,QACA,GAAA,KAAA;AAAA,QAEA,OAAA,WAAA;AACA,eAAA,YAAA;AACA,eAAA,MAAA,SAAA,KAAA;AAAA,QACA;AAAA,QAEA,OAAA,WAAA;AACA,eAAA,SAAA,KAAA,EAAA;AACA,eAAA,MAAA,SAAA,KAAA;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AACA,SAAA,0BAAA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,4BAAA;AACA,UAAA,KAAA,UAAA;AACA,aAAA,YAAA,IAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,YAAA,iBAAA,OAAA;AACA,WAAA,mBAAA;AAAA,QACA,UAAA,KAAA;AAAA,QACA;AAAA,MACA,CAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.cjs","sources":["../../common/constants/index.js"],"sourcesContent":["/* TODO: Move and sort these in a constants directory\n\nExample:\n constants/\n forms.js\n defaults.js\n ...\n*/\n\n// Types of messages, also dictates what is the current state of the input.\nexport const VALIDATION_MESSAGE_TYPES = {\n ERROR: 'error',\n WARNING: 'warning',\n SUCCESS: 'success',\n};\n\n// Description size variants\nexport const DESCRIPTION_SIZE_TYPES = {\n LARGE: 'lg',\n EXTRA_LARGE: 'xl',\n};\n\n// Description size variants\nexport const DESCRIPTION_SIZE_MODIFIERS = {\n xs: '',\n sm: '',\n md: '',\n lg: 'd-description--lg',\n xl: 'd-description--xl',\n};\n\n// Label size variants\nexport const LABEL_SIZE_MODIFIERS = {\n xs: 'd-label--xs',\n sm: 'd-label--sm',\n md: '',\n lg: 'd-label--lg',\n xl: 'd-label--xl',\n};\n\nexport const EVENT_KEYNAMES = {\n esc: 'Esc',\n escape: 'Escape',\n tab: 'Tab',\n enter: 'Enter',\n space: 'Space',\n spacebar: 'Spacebar',\n up: 'Up',\n arrowup: 'ArrowUp',\n left: 'Left',\n arrowleft: 'ArrowLeft',\n right: 'Right',\n arrowright: 'ArrowRight',\n down: 'Down',\n arrowdown: 'ArrowDown',\n home: 'Home',\n end: 'End',\n};\n\n/*\n * Any string message or message object in the messages prop that do not specify\n * a 'type' attributes will default to 'DEFAULT_MESSAGE_TYPE'.\n */\nexport const DEFAULT_VALIDATION_MESSAGE_TYPE = VALIDATION_MESSAGE_TYPES.ERROR;\n\n// Default prefix used for ids\nexport const DEFAULT_PREFIX = 'dt';\n\nexport default {\n VALIDATION_MESSAGE_TYPES,\n DESCRIPTION_SIZE_TYPES,\n DEFAULT_VALIDATION_MESSAGE_TYPE,\n DEFAULT_PREFIX,\n};\n"],"names":[
|
|
1
|
+
{"version":3,"file":"constants.cjs","sources":["../../common/constants/index.js"],"sourcesContent":["/* TODO: Move and sort these in a constants directory\n\nExample:\n constants/\n forms.js\n defaults.js\n ...\n*/\n\n// Types of messages, also dictates what is the current state of the input.\nexport const VALIDATION_MESSAGE_TYPES = {\n ERROR: 'error',\n WARNING: 'warning',\n SUCCESS: 'success',\n};\n\n// Description size variants\nexport const DESCRIPTION_SIZE_TYPES = {\n LARGE: 'lg',\n EXTRA_LARGE: 'xl',\n};\n\n// Description size variants\nexport const DESCRIPTION_SIZE_MODIFIERS = {\n xs: '',\n sm: '',\n md: '',\n lg: 'd-description--lg',\n xl: 'd-description--xl',\n};\n\n// Label size variants\nexport const LABEL_SIZE_MODIFIERS = {\n xs: 'd-label--xs',\n sm: 'd-label--sm',\n md: '',\n lg: 'd-label--lg',\n xl: 'd-label--xl',\n};\n\nexport const EVENT_KEYNAMES = {\n esc: 'Esc',\n escape: 'Escape',\n tab: 'Tab',\n enter: 'Enter',\n space: 'Space',\n spacebar: 'Spacebar',\n up: 'Up',\n arrowup: 'ArrowUp',\n left: 'Left',\n arrowleft: 'ArrowLeft',\n right: 'Right',\n arrowright: 'ArrowRight',\n down: 'Down',\n arrowdown: 'ArrowDown',\n home: 'Home',\n end: 'End',\n};\n\n/*\n * Any string message or message object in the messages prop that do not specify\n * a 'type' attributes will default to 'DEFAULT_MESSAGE_TYPE'.\n */\nexport const DEFAULT_VALIDATION_MESSAGE_TYPE = VALIDATION_MESSAGE_TYPES.ERROR;\n\n// Default prefix used for ids\nexport const DEFAULT_PREFIX = 'dt';\n\nexport default {\n VALIDATION_MESSAGE_TYPES,\n DESCRIPTION_SIZE_TYPES,\n DEFAULT_VALIDATION_MESSAGE_TYPE,\n DEFAULT_PREFIX,\n};\n"],"names":[],"mappings":";;AAUY,MAAC,2BAA2B;AAAA,EACtC,OAAO;AAAA,EACP,SAAS;AAAA,EACT,SAAS;AACX;AAGY,MAAC,yBAAyB;AAAA,EACpC,OAAO;AAAA,EACP,aAAa;AACf;AAGY,MAAC,6BAA6B;AAAA,EACxC,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAGY,MAAC,uBAAuB;AAAA,EAClC,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAEY,MAAC,iBAAiB;AAAA,EAC5B,KAAK;AAAA,EACL,QAAQ;AAAA,EACR,KAAK;AAAA,EACL,OAAO;AAAA,EACP,OAAO;AAAA,EACP,UAAU;AAAA,EACV,IAAI;AAAA,EACJ,SAAS;AAAA,EACT,MAAM;AAAA,EACN,WAAW;AAAA,EACX,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,MAAM;AAAA,EACN,WAAW;AAAA,EACX,MAAM;AAAA,EACN,KAAK;AACP;AAMY,MAAC,kCAAkC,yBAAyB;AAG5D,MAAC,iBAAiB;AAE9B,MAAe,QAAA;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;;;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sources":["../../common/constants/index.js"],"sourcesContent":["/* TODO: Move and sort these in a constants directory\n\nExample:\n constants/\n forms.js\n defaults.js\n ...\n*/\n\n// Types of messages, also dictates what is the current state of the input.\nexport const VALIDATION_MESSAGE_TYPES = {\n ERROR: 'error',\n WARNING: 'warning',\n SUCCESS: 'success',\n};\n\n// Description size variants\nexport const DESCRIPTION_SIZE_TYPES = {\n LARGE: 'lg',\n EXTRA_LARGE: 'xl',\n};\n\n// Description size variants\nexport const DESCRIPTION_SIZE_MODIFIERS = {\n xs: '',\n sm: '',\n md: '',\n lg: 'd-description--lg',\n xl: 'd-description--xl',\n};\n\n// Label size variants\nexport const LABEL_SIZE_MODIFIERS = {\n xs: 'd-label--xs',\n sm: 'd-label--sm',\n md: '',\n lg: 'd-label--lg',\n xl: 'd-label--xl',\n};\n\nexport const EVENT_KEYNAMES = {\n esc: 'Esc',\n escape: 'Escape',\n tab: 'Tab',\n enter: 'Enter',\n space: 'Space',\n spacebar: 'Spacebar',\n up: 'Up',\n arrowup: 'ArrowUp',\n left: 'Left',\n arrowleft: 'ArrowLeft',\n right: 'Right',\n arrowright: 'ArrowRight',\n down: 'Down',\n arrowdown: 'ArrowDown',\n home: 'Home',\n end: 'End',\n};\n\n/*\n * Any string message or message object in the messages prop that do not specify\n * a 'type' attributes will default to 'DEFAULT_MESSAGE_TYPE'.\n */\nexport const DEFAULT_VALIDATION_MESSAGE_TYPE = VALIDATION_MESSAGE_TYPES.ERROR;\n\n// Default prefix used for ids\nexport const DEFAULT_PREFIX = 'dt';\n\nexport default {\n VALIDATION_MESSAGE_TYPES,\n DESCRIPTION_SIZE_TYPES,\n DEFAULT_VALIDATION_MESSAGE_TYPE,\n DEFAULT_PREFIX,\n};\n"],"names":[
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../../common/constants/index.js"],"sourcesContent":["/* TODO: Move and sort these in a constants directory\n\nExample:\n constants/\n forms.js\n defaults.js\n ...\n*/\n\n// Types of messages, also dictates what is the current state of the input.\nexport const VALIDATION_MESSAGE_TYPES = {\n ERROR: 'error',\n WARNING: 'warning',\n SUCCESS: 'success',\n};\n\n// Description size variants\nexport const DESCRIPTION_SIZE_TYPES = {\n LARGE: 'lg',\n EXTRA_LARGE: 'xl',\n};\n\n// Description size variants\nexport const DESCRIPTION_SIZE_MODIFIERS = {\n xs: '',\n sm: '',\n md: '',\n lg: 'd-description--lg',\n xl: 'd-description--xl',\n};\n\n// Label size variants\nexport const LABEL_SIZE_MODIFIERS = {\n xs: 'd-label--xs',\n sm: 'd-label--sm',\n md: '',\n lg: 'd-label--lg',\n xl: 'd-label--xl',\n};\n\nexport const EVENT_KEYNAMES = {\n esc: 'Esc',\n escape: 'Escape',\n tab: 'Tab',\n enter: 'Enter',\n space: 'Space',\n spacebar: 'Spacebar',\n up: 'Up',\n arrowup: 'ArrowUp',\n left: 'Left',\n arrowleft: 'ArrowLeft',\n right: 'Right',\n arrowright: 'ArrowRight',\n down: 'Down',\n arrowdown: 'ArrowDown',\n home: 'Home',\n end: 'End',\n};\n\n/*\n * Any string message or message object in the messages prop that do not specify\n * a 'type' attributes will default to 'DEFAULT_MESSAGE_TYPE'.\n */\nexport const DEFAULT_VALIDATION_MESSAGE_TYPE = VALIDATION_MESSAGE_TYPES.ERROR;\n\n// Default prefix used for ids\nexport const DEFAULT_PREFIX = 'dt';\n\nexport default {\n VALIDATION_MESSAGE_TYPES,\n DESCRIPTION_SIZE_TYPES,\n DEFAULT_VALIDATION_MESSAGE_TYPE,\n DEFAULT_PREFIX,\n};\n"],"names":[],"mappings":"AAUY,MAAC,2BAA2B;AAAA,EACtC,OAAO;AAAA,EACP,SAAS;AAAA,EACT,SAAS;AACX;AAGY,MAAC,yBAAyB;AAAA,EACpC,OAAO;AAAA,EACP,aAAa;AACf;AAGY,MAAC,6BAA6B;AAAA,EACxC,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAGY,MAAC,uBAAuB;AAAA,EAClC,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAEY,MAAC,iBAAiB;AAAA,EAC5B,KAAK;AAAA,EACL,QAAQ;AAAA,EACR,KAAK;AAAA,EACL,OAAO;AAAA,EACP,OAAO;AAAA,EACP,UAAU;AAAA,EACV,IAAI;AAAA,EACJ,SAAS;AAAA,EACT,MAAM;AAAA,EACN,WAAW;AAAA,EACX,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,MAAM;AAAA,EACN,WAAW;AAAA,EACX,MAAM;AAAA,EACN,KAAK;AACP;AAMY,MAAC,kCAAkC,yBAAyB;AAG5D,MAAC,iBAAiB;AAE9B,MAAe,QAAA;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;"}
|
package/dist/common/dates.cjs
CHANGED
|
@@ -49,9 +49,7 @@ function durationInHHMM(durationInSeconds) {
|
|
|
49
49
|
return _baseFormatDuration(duration, ["hours", "minutes"]);
|
|
50
50
|
}
|
|
51
51
|
function _getRelativeDaysText(days) {
|
|
52
|
-
const rtl = new Intl.RelativeTimeFormat(dialtoneLocale.code, {
|
|
53
|
-
numeric: "auto"
|
|
54
|
-
});
|
|
52
|
+
const rtl = new Intl.RelativeTimeFormat(dialtoneLocale.code, { numeric: "auto" });
|
|
55
53
|
return common_utils.capitalizeFirstLetter(rtl.formatToParts(days, "day")[0].value, dialtoneLocale.code);
|
|
56
54
|
}
|
|
57
55
|
function relativeDate(date) {
|