@dialpad/dialtone-vue 3.146.0 → 3.147.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-6HXkh24e.js → dropdown-oA-_Gotg.js} +45 -40
- package/dist/chunks/{dropdown-6HXkh24e.js.map → dropdown-oA-_Gotg.js.map} +1 -1
- package/dist/chunks/{dropdown-QNvAb160.js → dropdown-p-Azgwov.js} +45 -40
- package/dist/chunks/{dropdown-QNvAb160.js.map → dropdown-p-Azgwov.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-gIQj4mf7.js → icon_constants-Dy4MEUJL.js} +2 -3
- package/dist/chunks/icon_constants-Dy4MEUJL.js.map +1 -0
- package/dist/chunks/{icon_constants-bvhFNOPu.js → icon_constants-QYpmdE0R.js} +2 -3
- package/dist/chunks/icon_constants-QYpmdE0R.js.map +1 -0
- package/dist/chunks/{index-ouh7Bvm-.js → index-4qgKeErp.js} +84 -71
- package/dist/chunks/{index-T15rAIdX.js.map → index-4qgKeErp.js.map} +1 -1
- package/dist/chunks/{index-dfdrE-3M.js → index-GVD15GIB.js} +12 -3
- package/dist/chunks/{index-dfdrE-3M.js.map → index-GVD15GIB.js.map} +1 -1
- package/dist/chunks/{index-T15rAIdX.js → index-b_MgDylR.js} +84 -71
- package/dist/chunks/{index-ouh7Bvm-.js.map → index-b_MgDylR.js.map} +1 -1
- package/dist/chunks/{index-fEp0B-5Z.js → index-lu2o2f4r.js} +12 -3
- package/dist/chunks/{index-fEp0B-5Z.js.map → index-lu2o2f4r.js.map} +1 -1
- package/dist/chunks/{input-HIysg24t.js → input-NmYDD5bn.js} +9 -3
- package/dist/chunks/{input-HIysg24t.js.map → input-NmYDD5bn.js.map} +1 -1
- package/dist/chunks/{input-dLLo3Wtg.js → input-ttnte8zB.js} +9 -3
- package/dist/chunks/{input-dLLo3Wtg.js.map → input-ttnte8zB.js.map} +1 -1
- package/dist/chunks/{input_group-rE6nhye8.js → input_group-M-D25pOJ.js} +2 -4
- package/dist/chunks/{input_group-hV1WT2it.js.map → input_group-M-D25pOJ.js.map} +1 -1
- package/dist/chunks/{input_group-hV1WT2it.js → input_group-jWnq2DJT.js} +2 -4
- package/dist/chunks/{input_group-rE6nhye8.js.map → input_group-jWnq2DJT.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-3ed0uIMN.js → notice_action-WTucGhvr.js} +61 -40
- package/dist/chunks/{notice_action-e08Lw5W6.js.map → notice_action-WTucGhvr.js.map} +1 -1
- package/dist/chunks/{notice_action-e08Lw5W6.js → notice_action-p-ePanW_.js} +61 -40
- package/dist/chunks/{notice_action-3ed0uIMN.js.map → notice_action-p-ePanW_.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-Ji3Zlts6.js → sr_only_close_button-3EdsV-dH.js} +4 -4
- package/dist/chunks/{sr_only_close_button-Ji3Zlts6.js.map → sr_only_close_button-3EdsV-dH.js.map} +1 -1
- package/dist/chunks/{sr_only_close_button-gKr0Vlbz.js → sr_only_close_button-xGrHFjwA.js} +4 -4
- package/dist/chunks/{sr_only_close_button-gKr0Vlbz.js.map → sr_only_close_button-xGrHFjwA.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-aD6t0MNo.js → tab-RTDgnD9-.js} +49 -46
- package/dist/chunks/{tab-aD6t0MNo.js.map → tab-RTDgnD9-.js.map} +1 -1
- package/dist/chunks/{tab-X7IvNGTl.js → tab-qc3f42Yp.js} +49 -46
- package/dist/chunks/{tab-X7IvNGTl.js.map → tab-qc3f42Yp.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 +45 -11
- package/dist/common/utils.cjs.map +1 -1
- package/dist/common/utils.js +45 -11
- 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 +108 -87
- package/dist/lib/attachment-carousel.cjs.map +1 -1
- package/dist/lib/attachment-carousel.js +108 -87
- package/dist/lib/attachment-carousel.js.map +1 -1
- package/dist/lib/avatar.cjs +88 -56
- package/dist/lib/avatar.cjs.map +1 -1
- package/dist/lib/avatar.js +88 -56
- package/dist/lib/avatar.js.map +1 -1
- package/dist/lib/badge.cjs +31 -15
- package/dist/lib/badge.cjs.map +1 -1
- package/dist/lib/badge.js +31 -15
- package/dist/lib/badge.js.map +1 -1
- package/dist/lib/banner.cjs +56 -38
- package/dist/lib/banner.cjs.map +1 -1
- package/dist/lib/banner.js +56 -38
- package/dist/lib/banner.js.map +1 -1
- package/dist/lib/breadcrumbs.cjs +36 -25
- package/dist/lib/breadcrumbs.cjs.map +1 -1
- package/dist/lib/breadcrumbs.js +36 -25
- package/dist/lib/breadcrumbs.js.map +1 -1
- package/dist/lib/button-group.cjs +7 -2
- package/dist/lib/button-group.cjs.map +1 -1
- package/dist/lib/button-group.js +7 -2
- package/dist/lib/button-group.js.map +1 -1
- package/dist/lib/button.cjs +69 -44
- package/dist/lib/button.cjs.map +1 -1
- package/dist/lib/button.js +69 -44
- package/dist/lib/button.js.map +1 -1
- package/dist/lib/callbar-button-with-popover.cjs +81 -68
- package/dist/lib/callbar-button-with-popover.cjs.map +1 -1
- package/dist/lib/callbar-button-with-popover.js +81 -68
- package/dist/lib/callbar-button-with-popover.js.map +1 -1
- package/dist/lib/callbar-button.cjs +45 -32
- package/dist/lib/callbar-button.cjs.map +1 -1
- package/dist/lib/callbar-button.js +45 -32
- package/dist/lib/callbar-button.js.map +1 -1
- package/dist/lib/callbox.cjs +57 -38
- package/dist/lib/callbox.cjs.map +1 -1
- package/dist/lib/callbox.js +57 -38
- package/dist/lib/callbox.js.map +1 -1
- package/dist/lib/card.cjs +33 -13
- package/dist/lib/card.cjs.map +1 -1
- package/dist/lib/card.js +33 -13
- package/dist/lib/card.js.map +1 -1
- package/dist/lib/checkbox-group.cjs +5 -2
- package/dist/lib/checkbox-group.cjs.map +1 -1
- package/dist/lib/checkbox-group.js +5 -2
- package/dist/lib/checkbox-group.js.map +1 -1
- package/dist/lib/checkbox.cjs +45 -41
- package/dist/lib/checkbox.cjs.map +1 -1
- package/dist/lib/checkbox.js +45 -41
- package/dist/lib/checkbox.js.map +1 -1
- package/dist/lib/chip.cjs +53 -38
- package/dist/lib/chip.cjs.map +1 -1
- package/dist/lib/chip.js +53 -38
- package/dist/lib/chip.js.map +1 -1
- package/dist/lib/codeblock.cjs +6 -4
- package/dist/lib/codeblock.cjs.map +1 -1
- package/dist/lib/codeblock.js +6 -4
- package/dist/lib/codeblock.js.map +1 -1
- package/dist/lib/collapsible.cjs +76 -62
- package/dist/lib/collapsible.cjs.map +1 -1
- package/dist/lib/collapsible.js +76 -62
- package/dist/lib/collapsible.js.map +1 -1
- package/dist/lib/combobox-multi-select.cjs +88 -75
- package/dist/lib/combobox-multi-select.cjs.map +1 -1
- package/dist/lib/combobox-multi-select.js +88 -75
- package/dist/lib/combobox-multi-select.js.map +1 -1
- package/dist/lib/combobox-with-popover.cjs +85 -77
- package/dist/lib/combobox-with-popover.cjs.map +1 -1
- package/dist/lib/combobox-with-popover.js +85 -77
- 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 +89 -65
- package/dist/lib/contact-centers-row.cjs.map +1 -1
- package/dist/lib/contact-centers-row.js +89 -65
- package/dist/lib/contact-centers-row.js.map +1 -1
- package/dist/lib/contact-info.cjs +82 -59
- package/dist/lib/contact-info.cjs.map +1 -1
- package/dist/lib/contact-info.js +82 -59
- package/dist/lib/contact-info.js.map +1 -1
- package/dist/lib/contact-row.cjs +47 -37
- package/dist/lib/contact-row.cjs.map +1 -1
- package/dist/lib/contact-row.js +47 -37
- package/dist/lib/contact-row.js.map +1 -1
- package/dist/lib/datepicker.cjs +263 -267
- package/dist/lib/datepicker.cjs.map +1 -1
- package/dist/lib/datepicker.js +263 -267
- package/dist/lib/datepicker.js.map +1 -1
- package/dist/lib/description-list.cjs +14 -9
- package/dist/lib/description-list.cjs.map +1 -1
- package/dist/lib/description-list.js +14 -9
- package/dist/lib/description-list.js.map +1 -1
- package/dist/lib/dropdown.cjs +6 -6
- package/dist/lib/dropdown.cjs.map +1 -1
- package/dist/lib/dropdown.js +6 -6
- package/dist/lib/dropdown.js.map +1 -1
- package/dist/lib/editor.cjs +249 -312
- package/dist/lib/editor.cjs.map +1 -1
- package/dist/lib/editor.js +249 -312
- package/dist/lib/editor.js.map +1 -1
- package/dist/lib/emoji-picker.cjs +419 -387
- package/dist/lib/emoji-picker.cjs.map +1 -1
- package/dist/lib/emoji-picker.js +419 -387
- package/dist/lib/emoji-picker.js.map +1 -1
- package/dist/lib/emoji-row.cjs +69 -59
- package/dist/lib/emoji-row.cjs.map +1 -1
- package/dist/lib/emoji-row.js +69 -59
- package/dist/lib/emoji-row.js.map +1 -1
- package/dist/lib/emoji-text-wrapper.cjs +12 -13
- package/dist/lib/emoji-text-wrapper.cjs.map +1 -1
- package/dist/lib/emoji-text-wrapper.js +12 -13
- package/dist/lib/emoji-text-wrapper.js.map +1 -1
- package/dist/lib/emoji.cjs +23 -19
- package/dist/lib/emoji.cjs.map +1 -1
- package/dist/lib/emoji.js +23 -19
- package/dist/lib/emoji.js.map +1 -1
- package/dist/lib/empty-state.cjs +30 -20
- package/dist/lib/empty-state.cjs.map +1 -1
- package/dist/lib/empty-state.js +30 -20
- package/dist/lib/empty-state.js.map +1 -1
- package/dist/lib/feed-item-row.cjs +74 -43
- package/dist/lib/feed-item-row.cjs.map +1 -1
- package/dist/lib/feed-item-row.js +74 -43
- package/dist/lib/feed-item-row.js.map +1 -1
- package/dist/lib/feed-pill.cjs +55 -45
- package/dist/lib/feed-pill.cjs.map +1 -1
- package/dist/lib/feed-pill.js +55 -45
- package/dist/lib/feed-pill.js.map +1 -1
- package/dist/lib/general-row.cjs +165 -115
- package/dist/lib/general-row.cjs.map +1 -1
- package/dist/lib/general-row.js +165 -115
- package/dist/lib/general-row.js.map +1 -1
- package/dist/lib/group-row.cjs +9 -7
- package/dist/lib/group-row.cjs.map +1 -1
- package/dist/lib/group-row.js +9 -7
- package/dist/lib/group-row.js.map +1 -1
- package/dist/lib/grouped-chip.cjs +48 -27
- package/dist/lib/grouped-chip.cjs.map +1 -1
- package/dist/lib/grouped-chip.js +48 -27
- package/dist/lib/grouped-chip.js.map +1 -1
- package/dist/lib/hovercard.cjs +33 -25
- package/dist/lib/hovercard.cjs.map +1 -1
- package/dist/lib/hovercard.js +33 -25
- package/dist/lib/hovercard.js.map +1 -1
- package/dist/lib/icon.cjs +1 -1
- package/dist/lib/icon.cjs.map +1 -1
- package/dist/lib/icon.js +1 -1
- package/dist/lib/icon.js.map +1 -1
- package/dist/lib/illustration.cjs +1 -2
- package/dist/lib/illustration.cjs.map +1 -1
- package/dist/lib/illustration.js +1 -2
- package/dist/lib/illustration.js.map +1 -1
- package/dist/lib/image-viewer.cjs +66 -52
- package/dist/lib/image-viewer.cjs.map +1 -1
- package/dist/lib/image-viewer.js +66 -52
- package/dist/lib/image-viewer.js.map +1 -1
- package/dist/lib/input-group.cjs +19 -15
- package/dist/lib/input-group.cjs.map +1 -1
- package/dist/lib/input-group.js +19 -15
- package/dist/lib/input-group.js.map +1 -1
- package/dist/lib/input.cjs +114 -77
- package/dist/lib/input.cjs.map +1 -1
- package/dist/lib/input.js +114 -77
- package/dist/lib/input.js.map +1 -1
- package/dist/lib/item-layout.cjs +27 -10
- package/dist/lib/item-layout.cjs.map +1 -1
- package/dist/lib/item-layout.js +27 -10
- package/dist/lib/item-layout.js.map +1 -1
- package/dist/lib/ivr-node.cjs +89 -80
- package/dist/lib/ivr-node.cjs.map +1 -1
- package/dist/lib/ivr-node.js +89 -80
- package/dist/lib/ivr-node.js.map +1 -1
- package/dist/lib/keyboard-shortcut.cjs +31 -26
- package/dist/lib/keyboard-shortcut.cjs.map +1 -1
- package/dist/lib/keyboard-shortcut.js +31 -26
- package/dist/lib/keyboard-shortcut.js.map +1 -1
- package/dist/lib/lazy-show.cjs +8 -6
- package/dist/lib/lazy-show.cjs.map +1 -1
- package/dist/lib/lazy-show.js +8 -6
- package/dist/lib/lazy-show.js.map +1 -1
- package/dist/lib/link.cjs +7 -2
- package/dist/lib/link.cjs.map +1 -1
- package/dist/lib/link.js +7 -2
- package/dist/lib/link.js.map +1 -1
- package/dist/lib/list-item-group.cjs +14 -7
- package/dist/lib/list-item-group.cjs.map +1 -1
- package/dist/lib/list-item-group.js +14 -7
- package/dist/lib/list-item-group.js.map +1 -1
- package/dist/lib/list-item.cjs +25 -24
- package/dist/lib/list-item.cjs.map +1 -1
- package/dist/lib/list-item.js +25 -24
- package/dist/lib/list-item.js.map +1 -1
- package/dist/lib/message-input.cjs +264 -227
- package/dist/lib/message-input.cjs.map +1 -1
- package/dist/lib/message-input.js +264 -227
- package/dist/lib/message-input.js.map +1 -1
- package/dist/lib/modal.cjs +99 -59
- package/dist/lib/modal.cjs.map +1 -1
- package/dist/lib/modal.js +99 -59
- package/dist/lib/modal.js.map +1 -1
- package/dist/lib/notice.cjs +46 -33
- package/dist/lib/notice.cjs.map +1 -1
- package/dist/lib/notice.js +46 -33
- package/dist/lib/notice.js.map +1 -1
- package/dist/lib/pagination.cjs +61 -49
- package/dist/lib/pagination.cjs.map +1 -1
- package/dist/lib/pagination.js +61 -49
- package/dist/lib/pagination.js.map +1 -1
- package/dist/lib/popover.cjs +156 -133
- package/dist/lib/popover.cjs.map +1 -1
- package/dist/lib/popover.js +157 -134
- package/dist/lib/popover.js.map +1 -1
- package/dist/lib/presence.cjs +17 -9
- package/dist/lib/presence.cjs.map +1 -1
- package/dist/lib/presence.js +17 -9
- package/dist/lib/presence.js.map +1 -1
- package/dist/lib/radio-group.cjs +1 -1
- package/dist/lib/radio-group.cjs.map +1 -1
- package/dist/lib/radio-group.js +1 -1
- package/dist/lib/radio-group.js.map +1 -1
- package/dist/lib/radio.cjs +41 -34
- package/dist/lib/radio.cjs.map +1 -1
- package/dist/lib/radio.js +41 -34
- package/dist/lib/radio.js.map +1 -1
- package/dist/lib/rich-text-editor.cjs +288 -292
- package/dist/lib/rich-text-editor.cjs.map +1 -1
- package/dist/lib/rich-text-editor.js +288 -292
- package/dist/lib/rich-text-editor.js.map +1 -1
- package/dist/lib/root-layout.cjs +39 -24
- package/dist/lib/root-layout.cjs.map +1 -1
- package/dist/lib/root-layout.js +39 -24
- 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/scroller.cjs +83 -100
- package/dist/lib/scroller.cjs.map +1 -1
- package/dist/lib/scroller.js +83 -100
- package/dist/lib/scroller.js.map +1 -1
- package/dist/lib/select-menu.cjs +67 -40
- package/dist/lib/select-menu.cjs.map +1 -1
- package/dist/lib/select-menu.js +67 -40
- package/dist/lib/select-menu.js.map +1 -1
- package/dist/lib/settings-menu-button.cjs +16 -10
- package/dist/lib/settings-menu-button.cjs.map +1 -1
- package/dist/lib/settings-menu-button.js +16 -10
- package/dist/lib/settings-menu-button.js.map +1 -1
- package/dist/lib/skeleton.cjs +93 -74
- package/dist/lib/skeleton.cjs.map +1 -1
- package/dist/lib/skeleton.js +93 -74
- package/dist/lib/skeleton.js.map +1 -1
- package/dist/lib/split-button.cjs +74 -68
- package/dist/lib/split-button.cjs.map +1 -1
- package/dist/lib/split-button.js +74 -68
- package/dist/lib/split-button.js.map +1 -1
- package/dist/lib/stack.cjs +26 -18
- package/dist/lib/stack.cjs.map +1 -1
- package/dist/lib/stack.js +26 -18
- package/dist/lib/stack.js.map +1 -1
- package/dist/lib/tabs.cjs +7 -3
- package/dist/lib/tabs.cjs.map +1 -1
- package/dist/lib/tabs.js +7 -3
- package/dist/lib/tabs.js.map +1 -1
- package/dist/lib/time-pill.cjs.map +1 -1
- package/dist/lib/time-pill.js.map +1 -1
- package/dist/lib/toast.cjs +51 -35
- package/dist/lib/toast.cjs.map +1 -1
- package/dist/lib/toast.js +51 -35
- package/dist/lib/toast.js.map +1 -1
- package/dist/lib/toggle.cjs +34 -24
- package/dist/lib/toggle.cjs.map +1 -1
- package/dist/lib/toggle.js +34 -24
- package/dist/lib/toggle.js.map +1 -1
- package/dist/lib/tooltip-directive.cjs +19 -26
- package/dist/lib/tooltip-directive.cjs.map +1 -1
- package/dist/lib/tooltip-directive.js +19 -26
- package/dist/lib/tooltip-directive.js.map +1 -1
- package/dist/lib/tooltip.cjs +32 -21
- package/dist/lib/tooltip.cjs.map +1 -1
- package/dist/lib/tooltip.js +33 -22
- package/dist/lib/tooltip.js.map +1 -1
- package/dist/lib/top-banner-info.cjs +23 -8
- package/dist/lib/top-banner-info.cjs.map +1 -1
- package/dist/lib/top-banner-info.js +23 -8
- package/dist/lib/top-banner-info.js.map +1 -1
- package/dist/lib/unread-pill.cjs +11 -8
- package/dist/lib/unread-pill.cjs.map +1 -1
- package/dist/lib/unread-pill.js +11 -8
- package/dist/lib/unread-pill.js.map +1 -1
- package/dist/lib/validation-messages.cjs +17 -14
- package/dist/lib/validation-messages.cjs.map +1 -1
- package/dist/lib/validation-messages.js +17 -14
- package/dist/lib/validation-messages.js.map +1 -1
- package/dist/style.css +9 -9
- 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/datepicker/modules/month-year-picker.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_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/notice/notice.vue.d.ts +1 -1
- package/dist/types/components/radio/radio.vue.d.ts +1 -1
- package/dist/types/components/rich_text_editor/rich_text_editor.vue.d.ts +1 -1
- package/dist/types/components/scroller/modules/scroller_item.vue.d.ts +1 -1
- package/dist/types/components/split_button/split_button-alpha.vue.d.ts +1 -1
- package/dist/types/components/tabs/tab.vue.d.ts +1 -1
- package/dist/types/components/toast/toast.vue.d.ts +2 -2
- 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-bvhFNOPu.js.map +0 -1
- package/dist/chunks/icon_constants-gIQj4mf7.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox.cjs","sources":["../../components/checkbox/checkbox_constants.js","../../components/checkbox/checkbox.vue"],"sourcesContent":["export const CHECKBOX_INPUT_VALIDATION_CLASSES = {\n error: 'd-checkbox--error',\n warning: 'd-checkbox--warning',\n success: 'd-checkbox--success',\n};\n\nexport default {\n CHECKBOX_INPUT_VALIDATION_CLASSES,\n};\n","<template>\n <div>\n <label>\n <div :class=\"['d-checkbox-group', { 'd-checkbox-group--disabled': internalDisabled }]\">\n <div class=\"d-checkbox__input\">\n <input\n type=\"checkbox\"\n :checked=\"internalChecked\"\n :name=\"internalName\"\n :value=\"value\"\n :disabled=\"internalDisabled\"\n :class=\"['d-checkbox', inputValidationClass, inputClass]\"\n v-bind=\"$attrs\"\n :indeterminate.prop=\"internalIndeterminate\"\n v-on=\"inputListeners\"\n >\n </div>\n <div\n v-if=\"hasLabelOrDescription\"\n class=\"d-checkbox__copy d-checkbox__label\"\n data-qa=\"checkbox-label-description-container\"\n >\n <div\n v-if=\"hasLabel\"\n :class=\"labelClass\"\n v-bind=\"labelChildProps\"\n data-qa=\"checkbox-label\"\n >\n <!-- @slot slot for Checkbox Label -->\n <slot>{{ label }}</slot>\n </div>\n <div\n v-if=\"hasDescription\"\n :class=\"['d-description', descriptionClass]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"checkbox-description\"\n >\n <!-- @slot slot for Checkbox Description -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-checkbox-validation-messages\"\n />\n </div>\n </div>\n </label>\n </div>\n</template>\n\n<script>\n// Imports\nimport {\n InputMixin,\n CheckableMixin,\n GroupableMixin,\n MessagesMixin,\n} from '@/common/mixins/input';\nimport { CHECKBOX_INPUT_VALIDATION_CLASSES } from './checkbox_constants';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * Checkboxes are control elements that allow the user to make a selection.They are typically used in a\n * Checkbox Group which allows the user to make one or more selections from a list of options.\n * @see https://dialtone.dialpad.com/components/checkbox.html\n */\nexport default {\n name: 'DtCheckbox',\n\n components: { DtValidationMessages },\n\n mixins: [InputMixin, CheckableMixin, GroupableMixin, MessagesMixin],\n\n inheritAttrs: false,\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {Boolean}\n */\n 'input',\n\n /**\n * Native input focusin event\n *\n * @event focusin\n * @type {FocusEvent}\n */\n 'focusin',\n\n /**\n * Native input focusout event\n *\n * @event focusout\n * @type {FocusEvent}\n */\n 'focusout',\n ],\n\n computed: {\n inputValidationClass () {\n return CHECKBOX_INPUT_VALIDATION_CLASSES[this.internalValidationState];\n },\n\n checkboxGroupValueChecked () {\n return this.groupContext?.selectedValues?.includes(this.value) ?? false;\n },\n\n hasLabel () {\n return !!(this.$slots.default || this.label);\n },\n\n hasDescription () {\n return !!(this.$slots.description || this.description);\n },\n\n hasLabelOrDescription () {\n return this.hasLabel || this.hasDescription;\n },\n\n inputListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through\n * onto the input element which will result in the handler being called twice\n * (once on the input element and once by the emitted input event by the change listener).\n */\n input: () => {},\n focusin: event => this.$emit('focusin', event),\n focusout: event => this.$emit('focusout', event),\n change: event => this.emitValue(event.target),\n };\n },\n },\n\n watch: {\n checkboxGroupValueChecked: {\n immediate: true,\n handler (newCheckboxGroupValueChecked) {\n if (this.hasGroup) {\n // update internal value when the checkbox group value changes\n this.internalChecked = newCheckboxGroupValueChecked;\n }\n },\n },\n },\n\n mounted () {\n this.runValidations();\n },\n\n methods: {\n emitValue (target) {\n let { value, checked } = target;\n // Expected: Indeterminate -> unchecked. We need to manually set DOM property `checked` to false\n // and update this.internalIndeterminate.\n if (this.internalIndeterminate) {\n checked = false;\n this.internalIndeterminate = false;\n target.checked = false;\n }\n // update provided value if injected\n this.setGroupValue(value, checked);\n\n // emit the state of the checkbox\n this.$emit('input', checked);\n },\n\n runValidations () {\n this.validateInputLabels(this.hasLabel, this.$attrs['aria-label']);\n },\n },\n};\n</script>\n"],"names":["
|
|
1
|
+
{"version":3,"file":"checkbox.cjs","sources":["../../components/checkbox/checkbox_constants.js","../../components/checkbox/checkbox.vue"],"sourcesContent":["export const CHECKBOX_INPUT_VALIDATION_CLASSES = {\n error: 'd-checkbox--error',\n warning: 'd-checkbox--warning',\n success: 'd-checkbox--success',\n};\n\nexport default {\n CHECKBOX_INPUT_VALIDATION_CLASSES,\n};\n","<template>\n <div>\n <label>\n <div :class=\"['d-checkbox-group', { 'd-checkbox-group--disabled': internalDisabled }]\">\n <div class=\"d-checkbox__input\">\n <input\n type=\"checkbox\"\n :checked=\"internalChecked\"\n :name=\"internalName\"\n :value=\"value\"\n :disabled=\"internalDisabled\"\n :class=\"['d-checkbox', inputValidationClass, inputClass]\"\n v-bind=\"$attrs\"\n :indeterminate.prop=\"internalIndeterminate\"\n v-on=\"inputListeners\"\n >\n </div>\n <div\n v-if=\"hasLabelOrDescription\"\n class=\"d-checkbox__copy d-checkbox__label\"\n data-qa=\"checkbox-label-description-container\"\n >\n <div\n v-if=\"hasLabel\"\n :class=\"labelClass\"\n v-bind=\"labelChildProps\"\n data-qa=\"checkbox-label\"\n >\n <!-- @slot slot for Checkbox Label -->\n <slot>{{ label }}</slot>\n </div>\n <div\n v-if=\"hasDescription\"\n :class=\"['d-description', descriptionClass]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"checkbox-description\"\n >\n <!-- @slot slot for Checkbox Description -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-checkbox-validation-messages\"\n />\n </div>\n </div>\n </label>\n </div>\n</template>\n\n<script>\n// Imports\nimport {\n InputMixin,\n CheckableMixin,\n GroupableMixin,\n MessagesMixin,\n} from '@/common/mixins/input';\nimport { CHECKBOX_INPUT_VALIDATION_CLASSES } from './checkbox_constants';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * Checkboxes are control elements that allow the user to make a selection.They are typically used in a\n * Checkbox Group which allows the user to make one or more selections from a list of options.\n * @see https://dialtone.dialpad.com/components/checkbox.html\n */\nexport default {\n name: 'DtCheckbox',\n\n components: { DtValidationMessages },\n\n mixins: [InputMixin, CheckableMixin, GroupableMixin, MessagesMixin],\n\n inheritAttrs: false,\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {Boolean}\n */\n 'input',\n\n /**\n * Native input focusin event\n *\n * @event focusin\n * @type {FocusEvent}\n */\n 'focusin',\n\n /**\n * Native input focusout event\n *\n * @event focusout\n * @type {FocusEvent}\n */\n 'focusout',\n ],\n\n computed: {\n inputValidationClass () {\n return CHECKBOX_INPUT_VALIDATION_CLASSES[this.internalValidationState];\n },\n\n checkboxGroupValueChecked () {\n return this.groupContext?.selectedValues?.includes(this.value) ?? false;\n },\n\n hasLabel () {\n return !!(this.$slots.default || this.label);\n },\n\n hasDescription () {\n return !!(this.$slots.description || this.description);\n },\n\n hasLabelOrDescription () {\n return this.hasLabel || this.hasDescription;\n },\n\n inputListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through\n * onto the input element which will result in the handler being called twice\n * (once on the input element and once by the emitted input event by the change listener).\n */\n input: () => {},\n focusin: event => this.$emit('focusin', event),\n focusout: event => this.$emit('focusout', event),\n change: event => this.emitValue(event.target),\n };\n },\n },\n\n watch: {\n checkboxGroupValueChecked: {\n immediate: true,\n handler (newCheckboxGroupValueChecked) {\n if (this.hasGroup) {\n // update internal value when the checkbox group value changes\n this.internalChecked = newCheckboxGroupValueChecked;\n }\n },\n },\n },\n\n mounted () {\n this.runValidations();\n },\n\n methods: {\n emitValue (target) {\n let { value, checked } = target;\n // Expected: Indeterminate -> unchecked. We need to manually set DOM property `checked` to false\n // and update this.internalIndeterminate.\n if (this.internalIndeterminate) {\n checked = false;\n this.internalIndeterminate = false;\n target.checked = false;\n }\n // update provided value if injected\n this.setGroupValue(value, checked);\n\n // emit the state of the checkbox\n this.$emit('input', checked);\n },\n\n runValidations () {\n this.validateInputLabels(this.hasLabel, this.$attrs['aria-label']);\n },\n },\n};\n</script>\n"],"names":["DtValidationMessages","InputMixin","CheckableMixin","GroupableMixin","MessagesMixin","_createElementBlock","_createElementVNode","_mergeProps","_toHandlers","_openBlock","_renderSlot","_createVNode"],"mappings":"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"}
|
package/dist/lib/checkbox.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { InputMixin, CheckableMixin, GroupableMixin, MessagesMixin } from "../chunks/input-
|
|
1
|
+
import { InputMixin, CheckableMixin, GroupableMixin, MessagesMixin } from "../chunks/input-NmYDD5bn.js";
|
|
2
2
|
import { resolveComponent, openBlock, createElementBlock, createElementVNode, normalizeClass, mergeProps, toHandlers, renderSlot, createTextVNode, toDisplayString, createCommentVNode, createVNode } from "vue";
|
|
3
3
|
import { _export_sfc } from "../chunks/_plugin-vue_export-helper-caHeSgYY.js";
|
|
4
4
|
import { DtValidationMessages } from "./validation-messages.js";
|
|
@@ -12,9 +12,7 @@ const CHECKBOX_INPUT_VALIDATION_CLASSES = {
|
|
|
12
12
|
};
|
|
13
13
|
const _sfc_main = {
|
|
14
14
|
name: "DtCheckbox",
|
|
15
|
-
components: {
|
|
16
|
-
DtValidationMessages
|
|
17
|
-
},
|
|
15
|
+
components: { DtValidationMessages },
|
|
18
16
|
mixins: [InputMixin, CheckableMixin, GroupableMixin, MessagesMixin],
|
|
19
17
|
inheritAttrs: false,
|
|
20
18
|
emits: [
|
|
@@ -87,10 +85,7 @@ const _sfc_main = {
|
|
|
87
85
|
},
|
|
88
86
|
methods: {
|
|
89
87
|
emitValue(target) {
|
|
90
|
-
let {
|
|
91
|
-
value,
|
|
92
|
-
checked
|
|
93
|
-
} = target;
|
|
88
|
+
let { value, checked } = target;
|
|
94
89
|
if (this.internalIndeterminate) {
|
|
95
90
|
checked = false;
|
|
96
91
|
this.internalIndeterminate = false;
|
|
@@ -104,9 +99,7 @@ const _sfc_main = {
|
|
|
104
99
|
}
|
|
105
100
|
}
|
|
106
101
|
};
|
|
107
|
-
const _hoisted_1 = {
|
|
108
|
-
class: "d-checkbox__input"
|
|
109
|
-
};
|
|
102
|
+
const _hoisted_1 = { class: "d-checkbox__input" };
|
|
110
103
|
const _hoisted_2 = ["checked", "name", "value", "disabled", ".indeterminate"];
|
|
111
104
|
const _hoisted_3 = {
|
|
112
105
|
key: 0,
|
|
@@ -115,36 +108,47 @@ const _hoisted_3 = {
|
|
|
115
108
|
};
|
|
116
109
|
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
117
110
|
const _component_dt_validation_messages = resolveComponent("dt-validation-messages");
|
|
118
|
-
return openBlock(), createElementBlock("div", null, [
|
|
119
|
-
|
|
120
|
-
"
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
111
|
+
return openBlock(), createElementBlock("div", null, [
|
|
112
|
+
createElementVNode("label", null, [
|
|
113
|
+
createElementVNode("div", {
|
|
114
|
+
class: normalizeClass(["d-checkbox-group", { "d-checkbox-group--disabled": _ctx.internalDisabled }])
|
|
115
|
+
}, [
|
|
116
|
+
createElementVNode("div", _hoisted_1, [
|
|
117
|
+
createElementVNode("input", mergeProps({
|
|
118
|
+
type: "checkbox",
|
|
119
|
+
checked: _ctx.internalChecked,
|
|
120
|
+
name: _ctx.internalName,
|
|
121
|
+
value: _ctx.value,
|
|
122
|
+
disabled: _ctx.internalDisabled,
|
|
123
|
+
class: ["d-checkbox", $options.inputValidationClass, _ctx.inputClass]
|
|
124
|
+
}, _ctx.$attrs, { ".indeterminate": _ctx.internalIndeterminate }, toHandlers($options.inputListeners, true)), null, 16, _hoisted_2)
|
|
125
|
+
]),
|
|
126
|
+
$options.hasLabelOrDescription ? (openBlock(), createElementBlock("div", _hoisted_3, [
|
|
127
|
+
$options.hasLabel ? (openBlock(), createElementBlock("div", mergeProps({
|
|
128
|
+
key: 0,
|
|
129
|
+
class: _ctx.labelClass
|
|
130
|
+
}, _ctx.labelChildProps, { "data-qa": "checkbox-label" }), [
|
|
131
|
+
renderSlot(_ctx.$slots, "default", {}, () => [
|
|
132
|
+
createTextVNode(toDisplayString(_ctx.label), 1)
|
|
133
|
+
])
|
|
134
|
+
], 16)) : createCommentVNode("", true),
|
|
135
|
+
$options.hasDescription ? (openBlock(), createElementBlock("div", mergeProps({
|
|
136
|
+
key: 1,
|
|
137
|
+
class: ["d-description", _ctx.descriptionClass]
|
|
138
|
+
}, _ctx.descriptionChildProps, { "data-qa": "checkbox-description" }), [
|
|
139
|
+
renderSlot(_ctx.$slots, "description", {}, () => [
|
|
140
|
+
createTextVNode(toDisplayString(_ctx.description), 1)
|
|
141
|
+
])
|
|
142
|
+
], 16)) : createCommentVNode("", true),
|
|
143
|
+
createVNode(_component_dt_validation_messages, mergeProps({
|
|
144
|
+
"validation-messages": _ctx.formattedMessages,
|
|
145
|
+
"show-messages": _ctx.showMessages,
|
|
146
|
+
class: _ctx.messagesClass
|
|
147
|
+
}, _ctx.messagesChildProps, { "data-qa": "dt-checkbox-validation-messages" }), null, 16, ["validation-messages", "show-messages", "class"])
|
|
148
|
+
])) : createCommentVNode("", true)
|
|
149
|
+
], 2)
|
|
150
|
+
])
|
|
151
|
+
]);
|
|
148
152
|
}
|
|
149
153
|
const checkbox = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
|
|
150
154
|
export {
|
package/dist/lib/checkbox.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox.js","sources":["../../components/checkbox/checkbox_constants.js","../../components/checkbox/checkbox.vue"],"sourcesContent":["export const CHECKBOX_INPUT_VALIDATION_CLASSES = {\n error: 'd-checkbox--error',\n warning: 'd-checkbox--warning',\n success: 'd-checkbox--success',\n};\n\nexport default {\n CHECKBOX_INPUT_VALIDATION_CLASSES,\n};\n","<template>\n <div>\n <label>\n <div :class=\"['d-checkbox-group', { 'd-checkbox-group--disabled': internalDisabled }]\">\n <div class=\"d-checkbox__input\">\n <input\n type=\"checkbox\"\n :checked=\"internalChecked\"\n :name=\"internalName\"\n :value=\"value\"\n :disabled=\"internalDisabled\"\n :class=\"['d-checkbox', inputValidationClass, inputClass]\"\n v-bind=\"$attrs\"\n :indeterminate.prop=\"internalIndeterminate\"\n v-on=\"inputListeners\"\n >\n </div>\n <div\n v-if=\"hasLabelOrDescription\"\n class=\"d-checkbox__copy d-checkbox__label\"\n data-qa=\"checkbox-label-description-container\"\n >\n <div\n v-if=\"hasLabel\"\n :class=\"labelClass\"\n v-bind=\"labelChildProps\"\n data-qa=\"checkbox-label\"\n >\n <!-- @slot slot for Checkbox Label -->\n <slot>{{ label }}</slot>\n </div>\n <div\n v-if=\"hasDescription\"\n :class=\"['d-description', descriptionClass]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"checkbox-description\"\n >\n <!-- @slot slot for Checkbox Description -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-checkbox-validation-messages\"\n />\n </div>\n </div>\n </label>\n </div>\n</template>\n\n<script>\n// Imports\nimport {\n InputMixin,\n CheckableMixin,\n GroupableMixin,\n MessagesMixin,\n} from '@/common/mixins/input';\nimport { CHECKBOX_INPUT_VALIDATION_CLASSES } from './checkbox_constants';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * Checkboxes are control elements that allow the user to make a selection.They are typically used in a\n * Checkbox Group which allows the user to make one or more selections from a list of options.\n * @see https://dialtone.dialpad.com/components/checkbox.html\n */\nexport default {\n name: 'DtCheckbox',\n\n components: { DtValidationMessages },\n\n mixins: [InputMixin, CheckableMixin, GroupableMixin, MessagesMixin],\n\n inheritAttrs: false,\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {Boolean}\n */\n 'input',\n\n /**\n * Native input focusin event\n *\n * @event focusin\n * @type {FocusEvent}\n */\n 'focusin',\n\n /**\n * Native input focusout event\n *\n * @event focusout\n * @type {FocusEvent}\n */\n 'focusout',\n ],\n\n computed: {\n inputValidationClass () {\n return CHECKBOX_INPUT_VALIDATION_CLASSES[this.internalValidationState];\n },\n\n checkboxGroupValueChecked () {\n return this.groupContext?.selectedValues?.includes(this.value) ?? false;\n },\n\n hasLabel () {\n return !!(this.$slots.default || this.label);\n },\n\n hasDescription () {\n return !!(this.$slots.description || this.description);\n },\n\n hasLabelOrDescription () {\n return this.hasLabel || this.hasDescription;\n },\n\n inputListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through\n * onto the input element which will result in the handler being called twice\n * (once on the input element and once by the emitted input event by the change listener).\n */\n input: () => {},\n focusin: event => this.$emit('focusin', event),\n focusout: event => this.$emit('focusout', event),\n change: event => this.emitValue(event.target),\n };\n },\n },\n\n watch: {\n checkboxGroupValueChecked: {\n immediate: true,\n handler (newCheckboxGroupValueChecked) {\n if (this.hasGroup) {\n // update internal value when the checkbox group value changes\n this.internalChecked = newCheckboxGroupValueChecked;\n }\n },\n },\n },\n\n mounted () {\n this.runValidations();\n },\n\n methods: {\n emitValue (target) {\n let { value, checked } = target;\n // Expected: Indeterminate -> unchecked. We need to manually set DOM property `checked` to false\n // and update this.internalIndeterminate.\n if (this.internalIndeterminate) {\n checked = false;\n this.internalIndeterminate = false;\n target.checked = false;\n }\n // update provided value if injected\n this.setGroupValue(value, checked);\n\n // emit the state of the checkbox\n this.$emit('input', checked);\n },\n\n runValidations () {\n this.validateInputLabels(this.hasLabel, this.$attrs['aria-label']);\n },\n },\n};\n</script>\n"],"names":["
|
|
1
|
+
{"version":3,"file":"checkbox.js","sources":["../../components/checkbox/checkbox_constants.js","../../components/checkbox/checkbox.vue"],"sourcesContent":["export const CHECKBOX_INPUT_VALIDATION_CLASSES = {\n error: 'd-checkbox--error',\n warning: 'd-checkbox--warning',\n success: 'd-checkbox--success',\n};\n\nexport default {\n CHECKBOX_INPUT_VALIDATION_CLASSES,\n};\n","<template>\n <div>\n <label>\n <div :class=\"['d-checkbox-group', { 'd-checkbox-group--disabled': internalDisabled }]\">\n <div class=\"d-checkbox__input\">\n <input\n type=\"checkbox\"\n :checked=\"internalChecked\"\n :name=\"internalName\"\n :value=\"value\"\n :disabled=\"internalDisabled\"\n :class=\"['d-checkbox', inputValidationClass, inputClass]\"\n v-bind=\"$attrs\"\n :indeterminate.prop=\"internalIndeterminate\"\n v-on=\"inputListeners\"\n >\n </div>\n <div\n v-if=\"hasLabelOrDescription\"\n class=\"d-checkbox__copy d-checkbox__label\"\n data-qa=\"checkbox-label-description-container\"\n >\n <div\n v-if=\"hasLabel\"\n :class=\"labelClass\"\n v-bind=\"labelChildProps\"\n data-qa=\"checkbox-label\"\n >\n <!-- @slot slot for Checkbox Label -->\n <slot>{{ label }}</slot>\n </div>\n <div\n v-if=\"hasDescription\"\n :class=\"['d-description', descriptionClass]\"\n v-bind=\"descriptionChildProps\"\n data-qa=\"checkbox-description\"\n >\n <!-- @slot slot for Checkbox Description -->\n <slot name=\"description\">{{ description }}</slot>\n </div>\n <dt-validation-messages\n :validation-messages=\"formattedMessages\"\n :show-messages=\"showMessages\"\n :class=\"messagesClass\"\n v-bind=\"messagesChildProps\"\n data-qa=\"dt-checkbox-validation-messages\"\n />\n </div>\n </div>\n </label>\n </div>\n</template>\n\n<script>\n// Imports\nimport {\n InputMixin,\n CheckableMixin,\n GroupableMixin,\n MessagesMixin,\n} from '@/common/mixins/input';\nimport { CHECKBOX_INPUT_VALIDATION_CLASSES } from './checkbox_constants';\nimport { DtValidationMessages } from '../validation_messages';\n\n/**\n * Checkboxes are control elements that allow the user to make a selection.They are typically used in a\n * Checkbox Group which allows the user to make one or more selections from a list of options.\n * @see https://dialtone.dialpad.com/components/checkbox.html\n */\nexport default {\n name: 'DtCheckbox',\n\n components: { DtValidationMessages },\n\n mixins: [InputMixin, CheckableMixin, GroupableMixin, MessagesMixin],\n\n inheritAttrs: false,\n\n emits: [\n /**\n * Native input event\n *\n * @event input\n * @type {Boolean}\n */\n 'input',\n\n /**\n * Native input focusin event\n *\n * @event focusin\n * @type {FocusEvent}\n */\n 'focusin',\n\n /**\n * Native input focusout event\n *\n * @event focusout\n * @type {FocusEvent}\n */\n 'focusout',\n ],\n\n computed: {\n inputValidationClass () {\n return CHECKBOX_INPUT_VALIDATION_CLASSES[this.internalValidationState];\n },\n\n checkboxGroupValueChecked () {\n return this.groupContext?.selectedValues?.includes(this.value) ?? false;\n },\n\n hasLabel () {\n return !!(this.$slots.default || this.label);\n },\n\n hasDescription () {\n return !!(this.$slots.description || this.description);\n },\n\n hasLabelOrDescription () {\n return this.hasLabel || this.hasDescription;\n },\n\n inputListeners () {\n return {\n /*\n * Override input listener to as no-op. Prevents parent input listeners from being passed through\n * onto the input element which will result in the handler being called twice\n * (once on the input element and once by the emitted input event by the change listener).\n */\n input: () => {},\n focusin: event => this.$emit('focusin', event),\n focusout: event => this.$emit('focusout', event),\n change: event => this.emitValue(event.target),\n };\n },\n },\n\n watch: {\n checkboxGroupValueChecked: {\n immediate: true,\n handler (newCheckboxGroupValueChecked) {\n if (this.hasGroup) {\n // update internal value when the checkbox group value changes\n this.internalChecked = newCheckboxGroupValueChecked;\n }\n },\n },\n },\n\n mounted () {\n this.runValidations();\n },\n\n methods: {\n emitValue (target) {\n let { value, checked } = target;\n // Expected: Indeterminate -> unchecked. We need to manually set DOM property `checked` to false\n // and update this.internalIndeterminate.\n if (this.internalIndeterminate) {\n checked = false;\n this.internalIndeterminate = false;\n target.checked = false;\n }\n // update provided value if injected\n this.setGroupValue(value, checked);\n\n // emit the state of the checkbox\n this.$emit('input', checked);\n },\n\n runValidations () {\n this.validateInputLabels(this.hasLabel, this.$attrs['aria-label']);\n },\n },\n};\n</script>\n"],"names":["_createElementBlock","_createElementVNode","_mergeProps","_toHandlers","_openBlock","_renderSlot","_createVNode"],"mappings":"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"}
|
package/dist/lib/chip.cjs
CHANGED
|
@@ -8,7 +8,7 @@ const lib_icon = require("./icon.cjs");
|
|
|
8
8
|
require("../common/constants.cjs");
|
|
9
9
|
require("../chunks/link_constants-x8NwdqmA.js");
|
|
10
10
|
require("@dialpad/dialtone-icons/vue3");
|
|
11
|
-
require("../chunks/icon_constants-
|
|
11
|
+
require("../chunks/icon_constants-QYpmdE0R.js");
|
|
12
12
|
require("@dialpad/dialtone-icons/icons.json");
|
|
13
13
|
const CHIP_SIZE_MODIFIERS = {
|
|
14
14
|
xs: "d-chip__label--xs",
|
|
@@ -38,9 +38,7 @@ const _sfc_main = {
|
|
|
38
38
|
closeButtonProps: {
|
|
39
39
|
type: Object,
|
|
40
40
|
default: function() {
|
|
41
|
-
return {
|
|
42
|
-
ariaLabel: "close"
|
|
43
|
-
};
|
|
41
|
+
return { ariaLabel: "close" };
|
|
44
42
|
},
|
|
45
43
|
validator: (props) => {
|
|
46
44
|
return !!props.ariaLabel;
|
|
@@ -155,10 +153,17 @@ const _sfc_main = {
|
|
|
155
153
|
},
|
|
156
154
|
methods: {
|
|
157
155
|
chipClasses() {
|
|
158
|
-
return [
|
|
156
|
+
return [
|
|
157
|
+
this.$attrs["grouped-chip"] ? "d-chip" : "d-chip__label",
|
|
158
|
+
CHIP_SIZE_MODIFIERS[this.size],
|
|
159
|
+
this.labelClass
|
|
160
|
+
];
|
|
159
161
|
},
|
|
160
162
|
chipCloseButtonClasses() {
|
|
161
|
-
return [
|
|
163
|
+
return [
|
|
164
|
+
"d-chip__close",
|
|
165
|
+
CHIP_CLOSE_BUTTON_SIZE_MODIFIERS[this.size]
|
|
166
|
+
];
|
|
162
167
|
},
|
|
163
168
|
onClose() {
|
|
164
169
|
if (!this.hideClose) {
|
|
@@ -167,9 +172,7 @@ const _sfc_main = {
|
|
|
167
172
|
}
|
|
168
173
|
}
|
|
169
174
|
};
|
|
170
|
-
const _hoisted_1 = {
|
|
171
|
-
class: "d-chip"
|
|
172
|
-
};
|
|
175
|
+
const _hoisted_1 = { class: "d-chip" };
|
|
173
176
|
const _hoisted_2 = {
|
|
174
177
|
key: 0,
|
|
175
178
|
"data-qa": "dt-chip-icon",
|
|
@@ -183,35 +186,47 @@ const _hoisted_4 = ["id"];
|
|
|
183
186
|
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
184
187
|
const _component_dt_icon = vue.resolveComponent("dt-icon");
|
|
185
188
|
const _component_dt_button = vue.resolveComponent("dt-button");
|
|
186
|
-
return vue.openBlock(), vue.createElementBlock("span", _hoisted_1, [
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
189
|
+
return vue.openBlock(), vue.createElementBlock("span", _hoisted_1, [
|
|
190
|
+
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.interactive ? "button" : "span"), vue.mergeProps({
|
|
191
|
+
id: $props.id,
|
|
192
|
+
type: $props.interactive && "button",
|
|
193
|
+
class: $options.chipClasses(),
|
|
194
|
+
"data-qa": "dt-chip",
|
|
195
|
+
"aria-labelledby": $props.ariaLabel ? void 0 : `${$props.id}-content`,
|
|
196
|
+
"aria-label": $props.ariaLabel
|
|
197
|
+
}, vue.toHandlers($options.chipListeners)), {
|
|
198
|
+
default: vue.withCtx(() => [
|
|
199
|
+
$data.hasSlotContent(_ctx.$slots.icon) ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2, [
|
|
200
|
+
vue.renderSlot(_ctx.$slots, "icon")
|
|
201
|
+
])) : $data.hasSlotContent(_ctx.$slots.avatar) ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3, [
|
|
202
|
+
vue.renderSlot(_ctx.$slots, "avatar")
|
|
203
|
+
])) : vue.createCommentVNode("", true),
|
|
204
|
+
$data.hasSlotContent(_ctx.$slots.default) ? (vue.openBlock(), vue.createElementBlock("span", {
|
|
205
|
+
key: 2,
|
|
206
|
+
id: `${$props.id}-content`,
|
|
207
|
+
"data-qa": "dt-chip-label",
|
|
208
|
+
class: vue.normalizeClass(["d-chip__text", $props.contentClass])
|
|
209
|
+
}, [
|
|
210
|
+
vue.renderSlot(_ctx.$slots, "default")
|
|
211
|
+
], 10, _hoisted_4)) : vue.createCommentVNode("", true)
|
|
212
|
+
]),
|
|
213
|
+
_: 3
|
|
214
|
+
}, 16, ["id", "type", "class", "aria-labelledby", "aria-label"])),
|
|
215
|
+
!$props.hideClose ? (vue.openBlock(), vue.createBlock(_component_dt_button, vue.mergeProps({ key: 0 }, $props.closeButtonProps, {
|
|
216
|
+
class: $options.chipCloseButtonClasses(),
|
|
217
|
+
"data-qa": "dt-chip-close",
|
|
218
|
+
"aria-label": $props.closeButtonProps.ariaLabel,
|
|
219
|
+
onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("close"))
|
|
220
|
+
}), {
|
|
221
|
+
icon: vue.withCtx(() => [
|
|
222
|
+
vue.createVNode(_component_dt_icon, {
|
|
223
|
+
name: "close",
|
|
224
|
+
size: $options.closeButtonIconSize
|
|
225
|
+
}, null, 8, ["size"])
|
|
226
|
+
]),
|
|
227
|
+
_: 1
|
|
228
|
+
}, 16, ["class", "aria-label"])) : vue.createCommentVNode("", true)
|
|
229
|
+
]);
|
|
215
230
|
}
|
|
216
231
|
const DtChip = /* @__PURE__ */ _pluginVue_exportHelper._export_sfc(_sfc_main, [["render", _sfc_render]]);
|
|
217
232
|
exports.CHIP_CLOSE_BUTTON_SIZE_MODIFIERS = CHIP_CLOSE_BUTTON_SIZE_MODIFIERS;
|
package/dist/lib/chip.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chip.cjs","sources":["../../components/chip/chip_constants.js","../../components/chip/chip.vue"],"sourcesContent":["export const CHIP_SIZE_MODIFIERS = {\n xs: 'd-chip__label--xs',\n sm: 'd-chip__label--sm',\n md: '',\n};\n\nexport const CHIP_CLOSE_BUTTON_SIZE_MODIFIERS = {\n xs: 'd-chip__close--xs',\n sm: 'd-chip__close--sm',\n md: '',\n};\n\nexport const CHIP_ICON_SIZES = {\n xs: '200',\n sm: '200',\n md: '200',\n};\n\nexport default {\n CHIP_SIZE_MODIFIERS,\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS,\n CHIP_ICON_SIZES,\n};\n","<template>\n <span class=\"d-chip\">\n <component\n :is=\"interactive ? 'button' : 'span'\"\n :id=\"id\"\n :type=\"interactive && 'button'\"\n :class=\"chipClasses()\"\n data-qa=\"dt-chip\"\n :aria-labelledby=\"ariaLabel ? undefined : `${id}-content`\"\n :aria-label=\"ariaLabel\"\n v-on=\"chipListeners\"\n >\n <span\n v-if=\"hasSlotContent($slots.icon)\"\n data-qa=\"dt-chip-icon\"\n class=\"d-chip__icon\"\n >\n <!-- @slot slot for Chip icon -->\n <slot name=\"icon\" />\n </span>\n <span\n v-else-if=\"hasSlotContent($slots.avatar)\"\n data-qa=\"dt-chip-avatar\"\n >\n <!-- @slot slot for Chip avatar -->\n <slot name=\"avatar\" />\n </span>\n <span\n v-if=\"hasSlotContent($slots.default)\"\n :id=\"`${id}-content`\"\n data-qa=\"dt-chip-label\"\n :class=\"['d-chip__text', contentClass]\"\n >\n <!-- @slot slot for Content within chip -->\n <slot />\n </span>\n </component>\n <dt-button\n v-if=\"!hideClose\"\n v-bind=\"closeButtonProps\"\n :class=\"chipCloseButtonClasses()\"\n data-qa=\"dt-chip-close\"\n :aria-label=\"closeButtonProps.ariaLabel\"\n @click=\"$emit('close')\"\n >\n <template #icon>\n <dt-icon\n name=\"close\"\n :size=\"closeButtonIconSize\"\n />\n </template>\n </dt-button>\n </span>\n</template>\n\n<script>\nimport { DtButton } from '@/components/button';\nimport { DtIcon } from '@/components/icon';\nimport {\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS,\n CHIP_SIZE_MODIFIERS,\n CHIP_ICON_SIZES,\n} from './chip_constants';\nimport { getUniqueString, hasSlotContent } from '@/common/utils';\n\n/**\n * A chip is a compact UI element that provides brief, descriptive information about an element.\n * It is terse, ideally one word. It is important a button is identifiable, consistent, and\n * communicates its actions clearly, and is appropriately sized to its action.\n * @see https://dialtone.dialpad.com/components/chip.html\n */\nexport default {\n name: 'DtChip',\n\n components: {\n DtButton,\n DtIcon,\n },\n\n props: {\n /**\n * A set of props to be passed into the modal's close button. Requires an 'ariaLabel' property.\n */\n closeButtonProps: {\n type: Object,\n default: function () { return { ariaLabel: 'close' }; },\n validator: (props) => {\n return !!props.ariaLabel;\n },\n },\n\n /**\n * Hides the close button on the chip\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The size of the chip.\n * @values xs, sm, md\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(CHIP_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * The interactivity of the chip.\n * Makes chip clickable, apply hover/focus/active style, emit keyboard events etc.\n * @values true, false\n */\n interactive: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Id to use for the dialog's aria-labelledby.\n */\n id: {\n type: String,\n default: function () { return getUniqueString(); },\n },\n\n /**\n * Descriptive label for the chip content.\n * If this prop is unset the content in the default slot will be used as an aria-label.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the chip element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the span element.\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n emits: [\n /**\n * Native chip click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Close button click event\n *\n * @event close\n */\n 'close',\n\n /**\n * Native chip key up event\n *\n * @event keyup\n * @type {KeyboardEvent}\n */\n 'keyup',\n ],\n\n data () {\n return {\n isActive: false,\n hasSlotContent,\n };\n },\n\n computed: {\n chipListeners () {\n return {\n click: event => {\n if (this.interactive) this.$emit('click', event);\n },\n\n keyup: event => {\n if (event.code?.toLowerCase() === 'delete') {\n this.onClose();\n } else {\n this.$emit('keyup', event);\n }\n },\n };\n },\n\n closeButtonIconSize () {\n return CHIP_ICON_SIZES[this.size];\n },\n },\n\n methods: {\n chipClasses () {\n return [\n this.$attrs['grouped-chip'] ? 'd-chip' : 'd-chip__label',\n CHIP_SIZE_MODIFIERS[this.size],\n this.labelClass,\n ];\n },\n\n chipCloseButtonClasses () {\n return [\n 'd-chip__close',\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS[this.size],\n ];\n },\n\n onClose () {\n if (!this.hideClose) {\n this.$emit('close');\n }\n },\n },\n};\n</script>\n"],"names":["CHIP_SIZE_MODIFIERS","xs","sm","md","CHIP_CLOSE_BUTTON_SIZE_MODIFIERS","CHIP_ICON_SIZES","_sfc_main","name","components","DtButton","DtIcon","props","closeButtonProps","type","Object","default","ariaLabel","validator","hideClose","Boolean","size","String","s","keys","includes","interactive","id","getUniqueString","contentClass","Array","labelClass","emits","data","isActive","hasSlotContent","computed","chipListeners","click","event","$emit","keyup","code","toLowerCase","onClose","closeButtonIconSize","methods","chipClasses","$attrs","chipCloseButtonClasses","_hoisted_1","class","_openBlock","_createElementBlock","_createBlock","_resolveDynamicComponent","$props","_mergeProps","$options","undefined","_toHandlers","$data","_ctx","$slots","icon","_hoisted_2","_renderSlot","avatar","_hoisted_3","_component_dt_button","key","onClick","_createVNode","_component_dt_icon"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chip.cjs","sources":["../../components/chip/chip_constants.js","../../components/chip/chip.vue"],"sourcesContent":["export const CHIP_SIZE_MODIFIERS = {\n xs: 'd-chip__label--xs',\n sm: 'd-chip__label--sm',\n md: '',\n};\n\nexport const CHIP_CLOSE_BUTTON_SIZE_MODIFIERS = {\n xs: 'd-chip__close--xs',\n sm: 'd-chip__close--sm',\n md: '',\n};\n\nexport const CHIP_ICON_SIZES = {\n xs: '200',\n sm: '200',\n md: '200',\n};\n\nexport default {\n CHIP_SIZE_MODIFIERS,\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS,\n CHIP_ICON_SIZES,\n};\n","<template>\n <span class=\"d-chip\">\n <component\n :is=\"interactive ? 'button' : 'span'\"\n :id=\"id\"\n :type=\"interactive && 'button'\"\n :class=\"chipClasses()\"\n data-qa=\"dt-chip\"\n :aria-labelledby=\"ariaLabel ? undefined : `${id}-content`\"\n :aria-label=\"ariaLabel\"\n v-on=\"chipListeners\"\n >\n <span\n v-if=\"hasSlotContent($slots.icon)\"\n data-qa=\"dt-chip-icon\"\n class=\"d-chip__icon\"\n >\n <!-- @slot slot for Chip icon -->\n <slot name=\"icon\" />\n </span>\n <span\n v-else-if=\"hasSlotContent($slots.avatar)\"\n data-qa=\"dt-chip-avatar\"\n >\n <!-- @slot slot for Chip avatar -->\n <slot name=\"avatar\" />\n </span>\n <span\n v-if=\"hasSlotContent($slots.default)\"\n :id=\"`${id}-content`\"\n data-qa=\"dt-chip-label\"\n :class=\"['d-chip__text', contentClass]\"\n >\n <!-- @slot slot for Content within chip -->\n <slot />\n </span>\n </component>\n <dt-button\n v-if=\"!hideClose\"\n v-bind=\"closeButtonProps\"\n :class=\"chipCloseButtonClasses()\"\n data-qa=\"dt-chip-close\"\n :aria-label=\"closeButtonProps.ariaLabel\"\n @click=\"$emit('close')\"\n >\n <template #icon>\n <dt-icon\n name=\"close\"\n :size=\"closeButtonIconSize\"\n />\n </template>\n </dt-button>\n </span>\n</template>\n\n<script>\nimport { DtButton } from '@/components/button';\nimport { DtIcon } from '@/components/icon';\nimport {\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS,\n CHIP_SIZE_MODIFIERS,\n CHIP_ICON_SIZES,\n} from './chip_constants';\nimport { getUniqueString, hasSlotContent } from '@/common/utils';\n\n/**\n * A chip is a compact UI element that provides brief, descriptive information about an element.\n * It is terse, ideally one word. It is important a button is identifiable, consistent, and\n * communicates its actions clearly, and is appropriately sized to its action.\n * @see https://dialtone.dialpad.com/components/chip.html\n */\nexport default {\n name: 'DtChip',\n\n components: {\n DtButton,\n DtIcon,\n },\n\n props: {\n /**\n * A set of props to be passed into the modal's close button. Requires an 'ariaLabel' property.\n */\n closeButtonProps: {\n type: Object,\n default: function () { return { ariaLabel: 'close' }; },\n validator: (props) => {\n return !!props.ariaLabel;\n },\n },\n\n /**\n * Hides the close button on the chip\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The size of the chip.\n * @values xs, sm, md\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(CHIP_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * The interactivity of the chip.\n * Makes chip clickable, apply hover/focus/active style, emit keyboard events etc.\n * @values true, false\n */\n interactive: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Id to use for the dialog's aria-labelledby.\n */\n id: {\n type: String,\n default: function () { return getUniqueString(); },\n },\n\n /**\n * Descriptive label for the chip content.\n * If this prop is unset the content in the default slot will be used as an aria-label.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the chip element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the span element.\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n emits: [\n /**\n * Native chip click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Close button click event\n *\n * @event close\n */\n 'close',\n\n /**\n * Native chip key up event\n *\n * @event keyup\n * @type {KeyboardEvent}\n */\n 'keyup',\n ],\n\n data () {\n return {\n isActive: false,\n hasSlotContent,\n };\n },\n\n computed: {\n chipListeners () {\n return {\n click: event => {\n if (this.interactive) this.$emit('click', event);\n },\n\n keyup: event => {\n if (event.code?.toLowerCase() === 'delete') {\n this.onClose();\n } else {\n this.$emit('keyup', event);\n }\n },\n };\n },\n\n closeButtonIconSize () {\n return CHIP_ICON_SIZES[this.size];\n },\n },\n\n methods: {\n chipClasses () {\n return [\n this.$attrs['grouped-chip'] ? 'd-chip' : 'd-chip__label',\n CHIP_SIZE_MODIFIERS[this.size],\n this.labelClass,\n ];\n },\n\n chipCloseButtonClasses () {\n return [\n 'd-chip__close',\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS[this.size],\n ];\n },\n\n onClose () {\n if (!this.hideClose) {\n this.$emit('close');\n }\n },\n },\n};\n</script>\n"],"names":["DtButton","DtIcon","getUniqueString","hasSlotContent","_openBlock","_createElementBlock","_createBlock","_resolveDynamicComponent","_mergeProps","_toHandlers","_renderSlot","_createVNode"],"mappings":"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"}
|
package/dist/lib/chip.js
CHANGED
|
@@ -6,7 +6,7 @@ import { DtIcon } from "./icon.js";
|
|
|
6
6
|
import "../common/constants.js";
|
|
7
7
|
import "../chunks/link_constants-AfTWrr-n.js";
|
|
8
8
|
import "@dialpad/dialtone-icons/vue3";
|
|
9
|
-
import "../chunks/icon_constants-
|
|
9
|
+
import "../chunks/icon_constants-Dy4MEUJL.js";
|
|
10
10
|
import "@dialpad/dialtone-icons/icons.json";
|
|
11
11
|
const CHIP_SIZE_MODIFIERS = {
|
|
12
12
|
xs: "d-chip__label--xs",
|
|
@@ -36,9 +36,7 @@ const _sfc_main = {
|
|
|
36
36
|
closeButtonProps: {
|
|
37
37
|
type: Object,
|
|
38
38
|
default: function() {
|
|
39
|
-
return {
|
|
40
|
-
ariaLabel: "close"
|
|
41
|
-
};
|
|
39
|
+
return { ariaLabel: "close" };
|
|
42
40
|
},
|
|
43
41
|
validator: (props) => {
|
|
44
42
|
return !!props.ariaLabel;
|
|
@@ -153,10 +151,17 @@ const _sfc_main = {
|
|
|
153
151
|
},
|
|
154
152
|
methods: {
|
|
155
153
|
chipClasses() {
|
|
156
|
-
return [
|
|
154
|
+
return [
|
|
155
|
+
this.$attrs["grouped-chip"] ? "d-chip" : "d-chip__label",
|
|
156
|
+
CHIP_SIZE_MODIFIERS[this.size],
|
|
157
|
+
this.labelClass
|
|
158
|
+
];
|
|
157
159
|
},
|
|
158
160
|
chipCloseButtonClasses() {
|
|
159
|
-
return [
|
|
161
|
+
return [
|
|
162
|
+
"d-chip__close",
|
|
163
|
+
CHIP_CLOSE_BUTTON_SIZE_MODIFIERS[this.size]
|
|
164
|
+
];
|
|
160
165
|
},
|
|
161
166
|
onClose() {
|
|
162
167
|
if (!this.hideClose) {
|
|
@@ -165,9 +170,7 @@ const _sfc_main = {
|
|
|
165
170
|
}
|
|
166
171
|
}
|
|
167
172
|
};
|
|
168
|
-
const _hoisted_1 = {
|
|
169
|
-
class: "d-chip"
|
|
170
|
-
};
|
|
173
|
+
const _hoisted_1 = { class: "d-chip" };
|
|
171
174
|
const _hoisted_2 = {
|
|
172
175
|
key: 0,
|
|
173
176
|
"data-qa": "dt-chip-icon",
|
|
@@ -181,35 +184,47 @@ const _hoisted_4 = ["id"];
|
|
|
181
184
|
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
182
185
|
const _component_dt_icon = resolveComponent("dt-icon");
|
|
183
186
|
const _component_dt_button = resolveComponent("dt-button");
|
|
184
|
-
return openBlock(), createElementBlock("span", _hoisted_1, [
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
187
|
+
return openBlock(), createElementBlock("span", _hoisted_1, [
|
|
188
|
+
(openBlock(), createBlock(resolveDynamicComponent($props.interactive ? "button" : "span"), mergeProps({
|
|
189
|
+
id: $props.id,
|
|
190
|
+
type: $props.interactive && "button",
|
|
191
|
+
class: $options.chipClasses(),
|
|
192
|
+
"data-qa": "dt-chip",
|
|
193
|
+
"aria-labelledby": $props.ariaLabel ? void 0 : `${$props.id}-content`,
|
|
194
|
+
"aria-label": $props.ariaLabel
|
|
195
|
+
}, toHandlers($options.chipListeners)), {
|
|
196
|
+
default: withCtx(() => [
|
|
197
|
+
$data.hasSlotContent(_ctx.$slots.icon) ? (openBlock(), createElementBlock("span", _hoisted_2, [
|
|
198
|
+
renderSlot(_ctx.$slots, "icon")
|
|
199
|
+
])) : $data.hasSlotContent(_ctx.$slots.avatar) ? (openBlock(), createElementBlock("span", _hoisted_3, [
|
|
200
|
+
renderSlot(_ctx.$slots, "avatar")
|
|
201
|
+
])) : createCommentVNode("", true),
|
|
202
|
+
$data.hasSlotContent(_ctx.$slots.default) ? (openBlock(), createElementBlock("span", {
|
|
203
|
+
key: 2,
|
|
204
|
+
id: `${$props.id}-content`,
|
|
205
|
+
"data-qa": "dt-chip-label",
|
|
206
|
+
class: normalizeClass(["d-chip__text", $props.contentClass])
|
|
207
|
+
}, [
|
|
208
|
+
renderSlot(_ctx.$slots, "default")
|
|
209
|
+
], 10, _hoisted_4)) : createCommentVNode("", true)
|
|
210
|
+
]),
|
|
211
|
+
_: 3
|
|
212
|
+
}, 16, ["id", "type", "class", "aria-labelledby", "aria-label"])),
|
|
213
|
+
!$props.hideClose ? (openBlock(), createBlock(_component_dt_button, mergeProps({ key: 0 }, $props.closeButtonProps, {
|
|
214
|
+
class: $options.chipCloseButtonClasses(),
|
|
215
|
+
"data-qa": "dt-chip-close",
|
|
216
|
+
"aria-label": $props.closeButtonProps.ariaLabel,
|
|
217
|
+
onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("close"))
|
|
218
|
+
}), {
|
|
219
|
+
icon: withCtx(() => [
|
|
220
|
+
createVNode(_component_dt_icon, {
|
|
221
|
+
name: "close",
|
|
222
|
+
size: $options.closeButtonIconSize
|
|
223
|
+
}, null, 8, ["size"])
|
|
224
|
+
]),
|
|
225
|
+
_: 1
|
|
226
|
+
}, 16, ["class", "aria-label"])) : createCommentVNode("", true)
|
|
227
|
+
]);
|
|
213
228
|
}
|
|
214
229
|
const DtChip = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
|
|
215
230
|
export {
|
package/dist/lib/chip.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chip.js","sources":["../../components/chip/chip_constants.js","../../components/chip/chip.vue"],"sourcesContent":["export const CHIP_SIZE_MODIFIERS = {\n xs: 'd-chip__label--xs',\n sm: 'd-chip__label--sm',\n md: '',\n};\n\nexport const CHIP_CLOSE_BUTTON_SIZE_MODIFIERS = {\n xs: 'd-chip__close--xs',\n sm: 'd-chip__close--sm',\n md: '',\n};\n\nexport const CHIP_ICON_SIZES = {\n xs: '200',\n sm: '200',\n md: '200',\n};\n\nexport default {\n CHIP_SIZE_MODIFIERS,\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS,\n CHIP_ICON_SIZES,\n};\n","<template>\n <span class=\"d-chip\">\n <component\n :is=\"interactive ? 'button' : 'span'\"\n :id=\"id\"\n :type=\"interactive && 'button'\"\n :class=\"chipClasses()\"\n data-qa=\"dt-chip\"\n :aria-labelledby=\"ariaLabel ? undefined : `${id}-content`\"\n :aria-label=\"ariaLabel\"\n v-on=\"chipListeners\"\n >\n <span\n v-if=\"hasSlotContent($slots.icon)\"\n data-qa=\"dt-chip-icon\"\n class=\"d-chip__icon\"\n >\n <!-- @slot slot for Chip icon -->\n <slot name=\"icon\" />\n </span>\n <span\n v-else-if=\"hasSlotContent($slots.avatar)\"\n data-qa=\"dt-chip-avatar\"\n >\n <!-- @slot slot for Chip avatar -->\n <slot name=\"avatar\" />\n </span>\n <span\n v-if=\"hasSlotContent($slots.default)\"\n :id=\"`${id}-content`\"\n data-qa=\"dt-chip-label\"\n :class=\"['d-chip__text', contentClass]\"\n >\n <!-- @slot slot for Content within chip -->\n <slot />\n </span>\n </component>\n <dt-button\n v-if=\"!hideClose\"\n v-bind=\"closeButtonProps\"\n :class=\"chipCloseButtonClasses()\"\n data-qa=\"dt-chip-close\"\n :aria-label=\"closeButtonProps.ariaLabel\"\n @click=\"$emit('close')\"\n >\n <template #icon>\n <dt-icon\n name=\"close\"\n :size=\"closeButtonIconSize\"\n />\n </template>\n </dt-button>\n </span>\n</template>\n\n<script>\nimport { DtButton } from '@/components/button';\nimport { DtIcon } from '@/components/icon';\nimport {\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS,\n CHIP_SIZE_MODIFIERS,\n CHIP_ICON_SIZES,\n} from './chip_constants';\nimport { getUniqueString, hasSlotContent } from '@/common/utils';\n\n/**\n * A chip is a compact UI element that provides brief, descriptive information about an element.\n * It is terse, ideally one word. It is important a button is identifiable, consistent, and\n * communicates its actions clearly, and is appropriately sized to its action.\n * @see https://dialtone.dialpad.com/components/chip.html\n */\nexport default {\n name: 'DtChip',\n\n components: {\n DtButton,\n DtIcon,\n },\n\n props: {\n /**\n * A set of props to be passed into the modal's close button. Requires an 'ariaLabel' property.\n */\n closeButtonProps: {\n type: Object,\n default: function () { return { ariaLabel: 'close' }; },\n validator: (props) => {\n return !!props.ariaLabel;\n },\n },\n\n /**\n * Hides the close button on the chip\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The size of the chip.\n * @values xs, sm, md\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(CHIP_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * The interactivity of the chip.\n * Makes chip clickable, apply hover/focus/active style, emit keyboard events etc.\n * @values true, false\n */\n interactive: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Id to use for the dialog's aria-labelledby.\n */\n id: {\n type: String,\n default: function () { return getUniqueString(); },\n },\n\n /**\n * Descriptive label for the chip content.\n * If this prop is unset the content in the default slot will be used as an aria-label.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the chip element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the span element.\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n emits: [\n /**\n * Native chip click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Close button click event\n *\n * @event close\n */\n 'close',\n\n /**\n * Native chip key up event\n *\n * @event keyup\n * @type {KeyboardEvent}\n */\n 'keyup',\n ],\n\n data () {\n return {\n isActive: false,\n hasSlotContent,\n };\n },\n\n computed: {\n chipListeners () {\n return {\n click: event => {\n if (this.interactive) this.$emit('click', event);\n },\n\n keyup: event => {\n if (event.code?.toLowerCase() === 'delete') {\n this.onClose();\n } else {\n this.$emit('keyup', event);\n }\n },\n };\n },\n\n closeButtonIconSize () {\n return CHIP_ICON_SIZES[this.size];\n },\n },\n\n methods: {\n chipClasses () {\n return [\n this.$attrs['grouped-chip'] ? 'd-chip' : 'd-chip__label',\n CHIP_SIZE_MODIFIERS[this.size],\n this.labelClass,\n ];\n },\n\n chipCloseButtonClasses () {\n return [\n 'd-chip__close',\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS[this.size],\n ];\n },\n\n onClose () {\n if (!this.hideClose) {\n this.$emit('close');\n }\n },\n },\n};\n</script>\n"],"names":["
|
|
1
|
+
{"version":3,"file":"chip.js","sources":["../../components/chip/chip_constants.js","../../components/chip/chip.vue"],"sourcesContent":["export const CHIP_SIZE_MODIFIERS = {\n xs: 'd-chip__label--xs',\n sm: 'd-chip__label--sm',\n md: '',\n};\n\nexport const CHIP_CLOSE_BUTTON_SIZE_MODIFIERS = {\n xs: 'd-chip__close--xs',\n sm: 'd-chip__close--sm',\n md: '',\n};\n\nexport const CHIP_ICON_SIZES = {\n xs: '200',\n sm: '200',\n md: '200',\n};\n\nexport default {\n CHIP_SIZE_MODIFIERS,\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS,\n CHIP_ICON_SIZES,\n};\n","<template>\n <span class=\"d-chip\">\n <component\n :is=\"interactive ? 'button' : 'span'\"\n :id=\"id\"\n :type=\"interactive && 'button'\"\n :class=\"chipClasses()\"\n data-qa=\"dt-chip\"\n :aria-labelledby=\"ariaLabel ? undefined : `${id}-content`\"\n :aria-label=\"ariaLabel\"\n v-on=\"chipListeners\"\n >\n <span\n v-if=\"hasSlotContent($slots.icon)\"\n data-qa=\"dt-chip-icon\"\n class=\"d-chip__icon\"\n >\n <!-- @slot slot for Chip icon -->\n <slot name=\"icon\" />\n </span>\n <span\n v-else-if=\"hasSlotContent($slots.avatar)\"\n data-qa=\"dt-chip-avatar\"\n >\n <!-- @slot slot for Chip avatar -->\n <slot name=\"avatar\" />\n </span>\n <span\n v-if=\"hasSlotContent($slots.default)\"\n :id=\"`${id}-content`\"\n data-qa=\"dt-chip-label\"\n :class=\"['d-chip__text', contentClass]\"\n >\n <!-- @slot slot for Content within chip -->\n <slot />\n </span>\n </component>\n <dt-button\n v-if=\"!hideClose\"\n v-bind=\"closeButtonProps\"\n :class=\"chipCloseButtonClasses()\"\n data-qa=\"dt-chip-close\"\n :aria-label=\"closeButtonProps.ariaLabel\"\n @click=\"$emit('close')\"\n >\n <template #icon>\n <dt-icon\n name=\"close\"\n :size=\"closeButtonIconSize\"\n />\n </template>\n </dt-button>\n </span>\n</template>\n\n<script>\nimport { DtButton } from '@/components/button';\nimport { DtIcon } from '@/components/icon';\nimport {\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS,\n CHIP_SIZE_MODIFIERS,\n CHIP_ICON_SIZES,\n} from './chip_constants';\nimport { getUniqueString, hasSlotContent } from '@/common/utils';\n\n/**\n * A chip is a compact UI element that provides brief, descriptive information about an element.\n * It is terse, ideally one word. It is important a button is identifiable, consistent, and\n * communicates its actions clearly, and is appropriately sized to its action.\n * @see https://dialtone.dialpad.com/components/chip.html\n */\nexport default {\n name: 'DtChip',\n\n components: {\n DtButton,\n DtIcon,\n },\n\n props: {\n /**\n * A set of props to be passed into the modal's close button. Requires an 'ariaLabel' property.\n */\n closeButtonProps: {\n type: Object,\n default: function () { return { ariaLabel: 'close' }; },\n validator: (props) => {\n return !!props.ariaLabel;\n },\n },\n\n /**\n * Hides the close button on the chip\n * @values true, false\n */\n hideClose: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The size of the chip.\n * @values xs, sm, md\n */\n size: {\n type: String,\n default: 'md',\n validator: (s) => Object.keys(CHIP_SIZE_MODIFIERS).includes(s),\n },\n\n /**\n * The interactivity of the chip.\n * Makes chip clickable, apply hover/focus/active style, emit keyboard events etc.\n * @values true, false\n */\n interactive: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Id to use for the dialog's aria-labelledby.\n */\n id: {\n type: String,\n default: function () { return getUniqueString(); },\n },\n\n /**\n * Descriptive label for the chip content.\n * If this prop is unset the content in the default slot will be used as an aria-label.\n */\n ariaLabel: {\n type: String,\n default: '',\n },\n\n /**\n * Additional class name for the chip element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the span element.\n */\n labelClass: {\n type: [String, Array, Object],\n default: '',\n },\n },\n\n emits: [\n /**\n * Native chip click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'click',\n\n /**\n * Close button click event\n *\n * @event close\n */\n 'close',\n\n /**\n * Native chip key up event\n *\n * @event keyup\n * @type {KeyboardEvent}\n */\n 'keyup',\n ],\n\n data () {\n return {\n isActive: false,\n hasSlotContent,\n };\n },\n\n computed: {\n chipListeners () {\n return {\n click: event => {\n if (this.interactive) this.$emit('click', event);\n },\n\n keyup: event => {\n if (event.code?.toLowerCase() === 'delete') {\n this.onClose();\n } else {\n this.$emit('keyup', event);\n }\n },\n };\n },\n\n closeButtonIconSize () {\n return CHIP_ICON_SIZES[this.size];\n },\n },\n\n methods: {\n chipClasses () {\n return [\n this.$attrs['grouped-chip'] ? 'd-chip' : 'd-chip__label',\n CHIP_SIZE_MODIFIERS[this.size],\n this.labelClass,\n ];\n },\n\n chipCloseButtonClasses () {\n return [\n 'd-chip__close',\n CHIP_CLOSE_BUTTON_SIZE_MODIFIERS[this.size],\n ];\n },\n\n onClose () {\n if (!this.hideClose) {\n this.$emit('close');\n }\n },\n },\n};\n</script>\n"],"names":["_openBlock","_createElementBlock","_createBlock","_resolveDynamicComponent","_mergeProps","_toHandlers","_renderSlot","_createVNode"],"mappings":"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"}
|