@dialpad/dialtone 9.169.0 → 9.170.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.
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),g=require("../../common/utils/index.cjs"),v=require("../tooltip/tooltip-constants.cjs"),S=require("../popover/popover.cjs"),O=require("../popover/popover-constants.cjs"),P={__name:"hovercard",props:{transition:{type:Boolean,default:!1},open:{type:Boolean,default:null},fallbackPlacements:{type:Array,default:()=>["auto"]},placement:{type:String,default:"top-start",validator(t){return v.TOOLTIP_DIRECTIONS.includes(t)}},padding:{type:String,default:"large",validator:t=>Object.keys(O.POPOVER_PADDING_CLASSES).some(o=>o===t)},offset:{type:Array,default:()=>[0,16]},id:{type:String,default(){return g.getUniqueString()}},headerClass:{type:[String,Array,Object],default:""},footerClass:{type:[String,Array,Object],default:""},dialogClass:{type:[String,Array,Object],default:""},contentClass:{type:[String,Array,Object],default:""},appendTo:{type:[HTMLElement,String],default:"body",validator:t=>O.POPOVER_APPEND_TO_VALUES.includes(t)||t instanceof HTMLElement},enterDelay:{type:Number,default:v.TOOLTIP_DELAY_MS},leaveDelay:{type:Number,default:v.TOOLTIP_DELAY_MS},externalAnchorElement:{type:HTMLElement,default:null}},emits:["opened"],setup(t){const o=t,l=e.ref(o.open),s=e.ref(!1),i=e.ref(!1),c=e.ref(null),d=e.ref(null),f=e.ref(null),u=e.ref(null),m=e.ref(null);e.onMounted(()=>{e.nextTick(()=>{var n,r,a;f.value=(a=(r=(n=m.value)==null?void 0:n.$refs)==null?void 0:r.anchor)==null?void 0:a.firstElementChild,u.value=new MutationObserver(()=>{f.value&&!f.value.isConnected&&(l.value=!1)}),u.value.observe(document.body,{childList:!0,subtree:!0})})}),e.onBeforeUnmount(()=>{u.value&&u.value.disconnect(),clearTimeout(c),clearTimeout(d)}),e.watch(()=>o.open,n=>{l.value=n},{immediate:!0});function p(){o.open===null&&(clearTimeout(d.value),c.value=setTimeout(()=>{l.value=!0},o.enterDelay))}function y(){o.open===null&&(clearTimeout(c.value),d.value=setTimeout(()=>{l.value=!1},o.leaveDelay))}function h(){i.value=!0,p()}function C(){i.value=!1,!s.value&&y()}function T(){s.value=!0,p()}function b(){s.value=!1,i.value||y()}return(n,r)=>(e.openBlock(),e.createBlock(e.unref(S.default),{id:t.id,ref_key:"popover",ref:m,open:l.value,placement:t.placement,"content-class":t.contentClass,"dialog-class":t.dialogClass,"fallback-placements":t.fallbackPlacements,padding:t.padding,transition:t.transition?"fade":null,offset:t.offset,modal:!1,"initial-focus-element":"none","header-class":t.headerClass,"footer-class":t.footerClass,"append-to":t.appendTo,"external-anchor-element":t.externalAnchorElement,"data-qa":"dt-hovercard","enter-delay":t.enterDelay,"leave-delay":t.leaveDelay,onOpened:r[0]||(r[0]=a=>n.$emit("opened",a)),onMouseenterPopover:h,onMouseleavePopover:C,onMouseenterPopoverAnchor:h,onMouseleavePopoverAnchor:C},{anchor:e.withCtx(({attrs:a})=>[e.renderSlot(n.$slots,"anchor",e.normalizeProps(e.guardReactiveProps(a)))]),content:e.withCtx(()=>[e.createElementVNode("div",{onFocusin:T,onFocusout:b},[e.renderSlot(n.$slots,"content")],32)]),headerContent:e.withCtx(()=>[e.renderSlot(n.$slots,"headerContent")]),footerContent:e.withCtx(()=>[e.renderSlot(n.$slots,"footerContent")]),_:3},8,["id","open","placement","content-class","dialog-class","fallback-placements","padding","transition","offset","header-class","footer-class","append-to","external-anchor-element","enter-delay","leave-delay"]))}};exports.default=P;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),S=require("../../common/utils/index.cjs"),y=require("../tooltip/tooltip-constants.cjs"),P=require("../popover/popover.cjs"),T=require("../popover/popover-constants.cjs"),E={__name:"hovercard",props:{transition:{type:Boolean,default:!1},open:{type:Boolean,default:null},fallbackPlacements:{type:Array,default:()=>["auto"]},placement:{type:String,default:"top-start",validator(t){return y.TOOLTIP_DIRECTIONS.includes(t)}},padding:{type:String,default:"large",validator:t=>Object.keys(T.POPOVER_PADDING_CLASSES).some(s=>s===t)},offset:{type:Array,default:()=>[0,16]},id:{type:String,default(){return S.getUniqueString()}},headerClass:{type:[String,Array,Object],default:""},footerClass:{type:[String,Array,Object],default:""},dialogClass:{type:[String,Array,Object],default:""},contentClass:{type:[String,Array,Object],default:""},appendTo:{type:[HTMLElement,String],default:"body",validator:t=>T.POPOVER_APPEND_TO_VALUES.includes(t)||t instanceof HTMLElement},enterDelay:{type:Number,default:y.TOOLTIP_DELAY_MS},leaveDelay:{type:Number,default:y.TOOLTIP_DELAY_MS},externalAnchorElement:{type:HTMLElement,default:null}},emits:["opened"],setup(t,{expose:s}){const o=t,l=e.ref(o.open),i=e.ref(!1),c=e.ref(!1),d=e.ref(null),f=e.ref(null),v=e.ref(null),u=e.ref(null),h=e.ref(null);e.onMounted(()=>{e.nextTick(()=>{var n,r,a;v.value=(a=(r=(n=h.value)==null?void 0:n.$refs)==null?void 0:r.anchor)==null?void 0:a.firstElementChild,u.value=new MutationObserver(()=>{v.value&&!v.value.isConnected&&(l.value=!1)}),u.value.observe(document.body,{childList:!0,subtree:!0})})}),e.onBeforeUnmount(()=>{u.value&&u.value.disconnect(),clearTimeout(d),clearTimeout(f)}),e.watch(()=>o.open,n=>{l.value=n},{immediate:!0}),s({show:m,hide:p});function C(){o.open===null&&(clearTimeout(f.value),d.value=setTimeout(()=>{l.value=!0},o.enterDelay))}function O(){o.open===null&&(clearTimeout(d.value),f.value=setTimeout(()=>{l.value=!1},o.leaveDelay))}function m(){c.value=!0,C()}function p(){c.value=!1,!i.value&&O()}function b(){i.value=!0,C()}function g(){i.value=!1,c.value||O()}return(n,r)=>(e.openBlock(),e.createBlock(e.unref(P.default),{id:t.id,ref_key:"popover",ref:h,open:l.value,placement:t.placement,"content-class":t.contentClass,"dialog-class":t.dialogClass,"fallback-placements":t.fallbackPlacements,padding:t.padding,transition:t.transition?"fade":null,offset:t.offset,modal:!1,"initial-focus-element":"none","header-class":t.headerClass,"footer-class":t.footerClass,"append-to":t.appendTo,"external-anchor-element":t.externalAnchorElement,"data-qa":"dt-hovercard","enter-delay":t.enterDelay,"leave-delay":t.leaveDelay,onOpened:r[0]||(r[0]=a=>n.$emit("opened",a)),onMouseenterPopover:m,onMouseleavePopover:p,onMouseenterPopoverAnchor:m,onMouseleavePopoverAnchor:p},{anchor:e.withCtx(({attrs:a})=>[e.renderSlot(n.$slots,"anchor",e.normalizeProps(e.guardReactiveProps(a)))]),content:e.withCtx(()=>[e.createElementVNode("div",{onFocusin:b,onFocusout:g},[e.renderSlot(n.$slots,"content")],32)]),headerContent:e.withCtx(()=>[e.renderSlot(n.$slots,"headerContent")]),footerContent:e.withCtx(()=>[e.renderSlot(n.$slots,"footerContent")]),_:3},8,["id","open","placement","content-class","dialog-class","fallback-placements","padding","transition","offset","header-class","footer-class","append-to","external-anchor-element","enter-delay","leave-delay"]))}};exports.default=E;
2
2
  //# sourceMappingURL=hovercard.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"hovercard.cjs","sources":["../../../components/hovercard/hovercard.vue"],"sourcesContent":["<!-- eslint-disable vue/multi-word-component-names -->\n<template>\n <dt-popover\n :id=\"id\"\n ref=\"popover\"\n :open=\"hovercardOpen\"\n :placement=\"placement\"\n :content-class=\"contentClass\"\n :dialog-class=\"dialogClass\"\n :fallback-placements=\"fallbackPlacements\"\n :padding=\"padding\"\n :transition=\"transition ? 'fade' : null\"\n :offset=\"offset\"\n :modal=\"false\"\n initial-focus-element=\"none\"\n :header-class=\"headerClass\"\n :footer-class=\"footerClass\"\n :append-to=\"appendTo\"\n :external-anchor-element=\"externalAnchorElement\"\n data-qa=\"dt-hovercard\"\n :enter-delay=\"enterDelay\"\n :leave-delay=\"leaveDelay\"\n @opened=\"(e) => ($emit('opened', e))\"\n @mouseenter-popover=\"onMouseEnter\"\n @mouseleave-popover=\"onMouseLeave\"\n @mouseenter-popover-anchor=\"onMouseEnter\"\n @mouseleave-popover-anchor=\"onMouseLeave\"\n >\n <template #anchor=\"{ attrs }\">\n <!-- @slot Anchor element that activates the hovercard. Usually a button. -->\n <slot\n name=\"anchor\"\n v-bind=\"attrs\"\n />\n </template>\n <template #content>\n <div\n @focusin=\"onContentFocusIn\"\n @focusout=\"onContentFocusOut\"\n >\n <!-- @slot Slot for the content that is displayed in the hovercard. -->\n <slot name=\"content\" />\n </div>\n </template>\n <template #headerContent>\n <!-- @slot Slot for hovercard header content -->\n <slot name=\"headerContent\" />\n </template>\n\n <template #footerContent>\n <!-- @slot Slot for the footer content. -->\n <slot name=\"footerContent\" />\n </template>\n </dt-popover>\n</template>\n\n<script setup>\nimport { ref, watch, nextTick, onMounted, onBeforeUnmount } from 'vue';\nimport { POPOVER_APPEND_TO_VALUES, POPOVER_PADDING_CLASSES, DtPopover } from '@/components/popover/index.js';\nimport { TOOLTIP_DIRECTIONS, TOOLTIP_DELAY_MS } from '@/components/tooltip/index.js';\nimport { getUniqueString } from '@/common/utils';\n\nconst props = defineProps({\n /**\n * Fade transition when the content display is toggled.\n * @type boolean\n * @values true, false\n */\n transition: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Controls whether the hovercard is shown. Leaving this null will have the hovercard trigger on hover by default.\n * If you set this value, the default trigger behavior will be disabled, and you can control it as you need.\n * Supports .sync modifier\n * @values null, true, false\n */\n open: {\n type: Boolean,\n default: null,\n },\n\n /**\n * If the popover does not fit in the direction described by \"placement\",\n * it will attempt to change its direction to the \"fallbackPlacements\".\n * @see https://popper.js.org/docs/v2/modifiers/flip/#fallbackplacements\"\n */\n fallbackPlacements: {\n type: Array,\n default: () => {\n return ['auto'];\n },\n },\n\n /**\n * The direction the popover displays relative to the anchor.\n * @see https://atomiks.github.io/tippyjs/v6/all-props/#placement\"\n * @values top, top-start, top-end,\n * right, right-start, right-end,\n * left, left-start, left-end,\n * bottom, bottom-start, bottom-end,\n * auto, auto-start, auto-end\n */\n placement: {\n type: String,\n default: 'top-start',\n validator (placement) {\n return TOOLTIP_DIRECTIONS.includes(placement);\n },\n },\n\n /**\n * Padding size class for the popover content.\n * @values none, small, medium, large\n */\n padding: {\n type: String,\n default: 'large',\n validator: (padding) => {\n return Object.keys(POPOVER_PADDING_CLASSES).some((item) => item === padding);\n },\n },\n\n /**\n * Displaces the content box from its anchor element\n * by the specified number of pixels.\n * @see https://atomiks.github.io/tippyjs/v6/all-props/#offset\"\n */\n offset: {\n type: Array,\n default: () => [0, 16],\n },\n\n /**\n * The id of the tooltip\n */\n id: {\n type: String,\n default () { return getUniqueString(); },\n },\n\n /**\n * Additional class name for the header content wrapper element.\n */\n headerClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the footer content wrapper element.\n */\n footerClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the dialog element.\n */\n dialogClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the content wrapper element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Sets the element to which the popover is going to append to.\n * 'body' will append to the nearest body (supports shadow DOM).\n * @values 'body', 'parent', HTMLElement,\n */\n appendTo: {\n type: [HTMLElement, String],\n default: 'body',\n validator: appendTo => {\n return POPOVER_APPEND_TO_VALUES.includes(appendTo) ||\n (appendTo instanceof HTMLElement);\n },\n },\n\n /**\n * The enter delay in milliseconds before the hovercard is shown.\n * @type number\n */\n enterDelay: {\n type: Number,\n default: TOOLTIP_DELAY_MS,\n },\n\n /**\n * The leave delay in milliseconds before the hovercard is hidden.\n * @type number\n */\n leaveDelay: {\n type: Number,\n default: TOOLTIP_DELAY_MS,\n },\n\n /**\n * External anchor element reference. Use this instead of the anchor slot when\n * the anchor may be inside a Shadow DOM, as querySelector cannot pierce shadow boundaries.\n */\n externalAnchorElement: {\n type: HTMLElement,\n default: null,\n },\n});\n\ndefineEmits([\n /**\n * Emitted when hovercard is shown or hidden\n *\n * @event opened\n * @type {Boolean | Array}\n */\n 'opened',\n]);\n\nconst hovercardOpen = ref(props.open);\nconst contentFocused = ref(false);\nconst mouseOverHovercard = ref(false);\nconst inTimer = ref(null);\nconst outTimer = ref(null);\nconst anchorEl = ref(null);\nconst observer = ref(null);\nconst popover = ref(null);\n\nonMounted(() => {\n nextTick(() => {\n anchorEl.value = popover.value?.$refs?.anchor?.firstElementChild;\n\n observer.value = new MutationObserver(() => {\n if (anchorEl.value && !anchorEl.value.isConnected) {\n hovercardOpen.value = false;\n }\n });\n\n observer.value.observe(document.body, {\n childList: true,\n subtree: true,\n });\n });\n});\n\nonBeforeUnmount(() => {\n if (observer.value) {\n observer.value.disconnect();\n }\n clearTimeout(inTimer);\n clearTimeout(outTimer);\n});\nwatch(() => props.open, (open) => {\n hovercardOpen.value = open;\n}, { immediate: true });\n\nfunction setInTimer () {\n if (props.open === null) {\n clearTimeout(outTimer.value);\n inTimer.value = setTimeout(() => {\n hovercardOpen.value = true;\n }, props.enterDelay);\n }\n}\n\nfunction setOutTimer () {\n if (props.open === null) {\n clearTimeout(inTimer.value);\n outTimer.value = setTimeout(() => {\n hovercardOpen.value = false;\n }, props.leaveDelay);\n }\n}\n\nfunction onMouseEnter () {\n mouseOverHovercard.value = true;\n setInTimer();\n}\n\nfunction onMouseLeave () {\n mouseOverHovercard.value = false;\n if (contentFocused.value) {\n return;\n }\n setOutTimer();\n}\n\nfunction onContentFocusIn () {\n contentFocused.value = true;\n setInTimer();\n}\n\nfunction onContentFocusOut () {\n contentFocused.value = false;\n\n // If mouse is not over the hovercard, close it\n if (!mouseOverHovercard.value) {\n setOutTimer();\n }\n}\n</script>\n"],"names":["props","__props","hovercardOpen","ref","contentFocused","mouseOverHovercard","inTimer","outTimer","anchorEl","observer","popover","onMounted","nextTick","_c","_b","_a","onBeforeUnmount","watch","open","setInTimer","setOutTimer","onMouseEnter","onMouseLeave","onContentFocusIn","onContentFocusOut","_createBlock","_unref","DtPopover","_cache","e","$emit","_withCtx","attrs","_renderSlot","_ctx","_createElementVNode"],"mappings":"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"}
1
+ {"version":3,"file":"hovercard.cjs","sources":["../../../components/hovercard/hovercard.vue"],"sourcesContent":["<!-- eslint-disable vue/multi-word-component-names -->\n<template>\n <dt-popover\n :id=\"id\"\n ref=\"popover\"\n :open=\"hovercardOpen\"\n :placement=\"placement\"\n :content-class=\"contentClass\"\n :dialog-class=\"dialogClass\"\n :fallback-placements=\"fallbackPlacements\"\n :padding=\"padding\"\n :transition=\"transition ? 'fade' : null\"\n :offset=\"offset\"\n :modal=\"false\"\n initial-focus-element=\"none\"\n :header-class=\"headerClass\"\n :footer-class=\"footerClass\"\n :append-to=\"appendTo\"\n :external-anchor-element=\"externalAnchorElement\"\n data-qa=\"dt-hovercard\"\n :enter-delay=\"enterDelay\"\n :leave-delay=\"leaveDelay\"\n @opened=\"(e) => ($emit('opened', e))\"\n @mouseenter-popover=\"onMouseEnter\"\n @mouseleave-popover=\"onMouseLeave\"\n @mouseenter-popover-anchor=\"onMouseEnter\"\n @mouseleave-popover-anchor=\"onMouseLeave\"\n >\n <template #anchor=\"{ attrs }\">\n <!-- @slot Anchor element that activates the hovercard. Usually a button. -->\n <slot\n name=\"anchor\"\n v-bind=\"attrs\"\n />\n </template>\n <template #content>\n <div\n @focusin=\"onContentFocusIn\"\n @focusout=\"onContentFocusOut\"\n >\n <!-- @slot Slot for the content that is displayed in the hovercard. -->\n <slot name=\"content\" />\n </div>\n </template>\n <template #headerContent>\n <!-- @slot Slot for hovercard header content -->\n <slot name=\"headerContent\" />\n </template>\n\n <template #footerContent>\n <!-- @slot Slot for the footer content. -->\n <slot name=\"footerContent\" />\n </template>\n </dt-popover>\n</template>\n\n<script setup>\nimport { ref, watch, nextTick, onMounted, onBeforeUnmount } from 'vue';\nimport { POPOVER_APPEND_TO_VALUES, POPOVER_PADDING_CLASSES, DtPopover } from '@/components/popover/index.js';\nimport { TOOLTIP_DIRECTIONS, TOOLTIP_DELAY_MS } from '@/components/tooltip/index.js';\nimport { getUniqueString } from '@/common/utils';\n\nconst props = defineProps({\n /**\n * Fade transition when the content display is toggled.\n * @type boolean\n * @values true, false\n */\n transition: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Controls whether the hovercard is shown. Leaving this null will have the hovercard trigger on hover by default.\n * If you set this value, the default trigger behavior will be disabled, and you can control it as you need.\n * Supports .sync modifier\n * @values null, true, false\n */\n open: {\n type: Boolean,\n default: null,\n },\n\n /**\n * If the popover does not fit in the direction described by \"placement\",\n * it will attempt to change its direction to the \"fallbackPlacements\".\n * @see https://popper.js.org/docs/v2/modifiers/flip/#fallbackplacements\"\n */\n fallbackPlacements: {\n type: Array,\n default: () => {\n return ['auto'];\n },\n },\n\n /**\n * The direction the popover displays relative to the anchor.\n * @see https://atomiks.github.io/tippyjs/v6/all-props/#placement\"\n * @values top, top-start, top-end,\n * right, right-start, right-end,\n * left, left-start, left-end,\n * bottom, bottom-start, bottom-end,\n * auto, auto-start, auto-end\n */\n placement: {\n type: String,\n default: 'top-start',\n validator (placement) {\n return TOOLTIP_DIRECTIONS.includes(placement);\n },\n },\n\n /**\n * Padding size class for the popover content.\n * @values none, small, medium, large\n */\n padding: {\n type: String,\n default: 'large',\n validator: (padding) => {\n return Object.keys(POPOVER_PADDING_CLASSES).some((item) => item === padding);\n },\n },\n\n /**\n * Displaces the content box from its anchor element\n * by the specified number of pixels.\n * @see https://atomiks.github.io/tippyjs/v6/all-props/#offset\"\n */\n offset: {\n type: Array,\n default: () => [0, 16],\n },\n\n /**\n * The id of the tooltip\n */\n id: {\n type: String,\n default () { return getUniqueString(); },\n },\n\n /**\n * Additional class name for the header content wrapper element.\n */\n headerClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the footer content wrapper element.\n */\n footerClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the dialog element.\n */\n dialogClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the content wrapper element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Sets the element to which the popover is going to append to.\n * 'body' will append to the nearest body (supports shadow DOM).\n * @values 'body', 'parent', HTMLElement,\n */\n appendTo: {\n type: [HTMLElement, String],\n default: 'body',\n validator: appendTo => {\n return POPOVER_APPEND_TO_VALUES.includes(appendTo) ||\n (appendTo instanceof HTMLElement);\n },\n },\n\n /**\n * The enter delay in milliseconds before the hovercard is shown.\n * @type number\n */\n enterDelay: {\n type: Number,\n default: TOOLTIP_DELAY_MS,\n },\n\n /**\n * The leave delay in milliseconds before the hovercard is hidden.\n * @type number\n */\n leaveDelay: {\n type: Number,\n default: TOOLTIP_DELAY_MS,\n },\n\n /**\n * External anchor element reference. Use this instead of the anchor slot when\n * the anchor may be inside a Shadow DOM, as querySelector cannot pierce shadow boundaries.\n */\n externalAnchorElement: {\n type: HTMLElement,\n default: null,\n },\n});\n\ndefineEmits([\n /**\n * Emitted when hovercard is shown or hidden\n *\n * @event opened\n * @type {Boolean | Array}\n */\n 'opened',\n]);\n\nconst hovercardOpen = ref(props.open);\nconst contentFocused = ref(false);\nconst mouseOverHovercard = ref(false);\nconst inTimer = ref(null);\nconst outTimer = ref(null);\nconst anchorEl = ref(null);\nconst observer = ref(null);\nconst popover = ref(null);\n\nonMounted(() => {\n nextTick(() => {\n anchorEl.value = popover.value?.$refs?.anchor?.firstElementChild;\n\n observer.value = new MutationObserver(() => {\n if (anchorEl.value && !anchorEl.value.isConnected) {\n hovercardOpen.value = false;\n }\n });\n\n observer.value.observe(document.body, {\n childList: true,\n subtree: true,\n });\n });\n});\n\nonBeforeUnmount(() => {\n if (observer.value) {\n observer.value.disconnect();\n }\n clearTimeout(inTimer);\n clearTimeout(outTimer);\n});\nwatch(() => props.open, (open) => {\n hovercardOpen.value = open;\n}, { immediate: true });\n\ndefineExpose({ show: onMouseEnter, hide: onMouseLeave });\n\nfunction setInTimer () {\n if (props.open === null) {\n clearTimeout(outTimer.value);\n inTimer.value = setTimeout(() => {\n hovercardOpen.value = true;\n }, props.enterDelay);\n }\n}\n\nfunction setOutTimer () {\n if (props.open === null) {\n clearTimeout(inTimer.value);\n outTimer.value = setTimeout(() => {\n hovercardOpen.value = false;\n }, props.leaveDelay);\n }\n}\n\nfunction onMouseEnter () {\n mouseOverHovercard.value = true;\n setInTimer();\n}\n\nfunction onMouseLeave () {\n mouseOverHovercard.value = false;\n if (contentFocused.value) {\n return;\n }\n setOutTimer();\n}\n\nfunction onContentFocusIn () {\n contentFocused.value = true;\n setInTimer();\n}\n\nfunction onContentFocusOut () {\n contentFocused.value = false;\n\n // If mouse is not over the hovercard, close it\n if (!mouseOverHovercard.value) {\n setOutTimer();\n }\n}\n</script>\n"],"names":["props","__props","hovercardOpen","ref","contentFocused","mouseOverHovercard","inTimer","outTimer","anchorEl","observer","popover","onMounted","nextTick","_c","_b","_a","onBeforeUnmount","watch","open","__expose","onMouseEnter","onMouseLeave","setInTimer","setOutTimer","onContentFocusIn","onContentFocusOut","_createBlock","_unref","DtPopover","_cache","e","$emit","_withCtx","attrs","_renderSlot","_ctx","_createElementVNode"],"mappings":"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"}
@@ -1,9 +1,9 @@
1
- import { ref as a, onMounted as b, nextTick as E, onBeforeUnmount as S, watch as A, openBlock as D, createBlock as M, unref as L, withCtx as s, renderSlot as i, createElementVNode as k, normalizeProps as I, guardReactiveProps as N } from "vue";
2
- import { getUniqueString as $ } from "../../common/utils/index.js";
3
- import { TOOLTIP_DELAY_MS as g, TOOLTIP_DIRECTIONS as j } from "../tooltip/tooltip-constants.js";
4
- import B from "../popover/popover.js";
5
- import { POPOVER_APPEND_TO_VALUES as F, POPOVER_PADDING_CLASSES as H } from "../popover/popover-constants.js";
6
- const q = {
1
+ import { ref as n, onMounted as E, nextTick as S, onBeforeUnmount as A, watch as D, openBlock as M, createBlock as L, unref as k, withCtx as s, renderSlot as i, createElementVNode as I, normalizeProps as N, guardReactiveProps as $ } from "vue";
2
+ import { getUniqueString as j } from "../../common/utils/index.js";
3
+ import { TOOLTIP_DELAY_MS as C, TOOLTIP_DIRECTIONS as B } from "../tooltip/tooltip-constants.js";
4
+ import F from "../popover/popover.js";
5
+ import { POPOVER_APPEND_TO_VALUES as w, POPOVER_PADDING_CLASSES as x } from "../popover/popover-constants.js";
6
+ const z = {
7
7
  __name: "hovercard",
8
8
  props: {
9
9
  /**
@@ -47,7 +47,7 @@ const q = {
47
47
  type: String,
48
48
  default: "top-start",
49
49
  validator(e) {
50
- return j.includes(e);
50
+ return B.includes(e);
51
51
  }
52
52
  },
53
53
  /**
@@ -57,7 +57,7 @@ const q = {
57
57
  padding: {
58
58
  type: String,
59
59
  default: "large",
60
- validator: (e) => Object.keys(H).some((n) => n === e)
60
+ validator: (e) => Object.keys(x).some((c) => c === e)
61
61
  },
62
62
  /**
63
63
  * Displaces the content box from its anchor element
@@ -74,7 +74,7 @@ const q = {
74
74
  id: {
75
75
  type: String,
76
76
  default() {
77
- return $();
77
+ return j();
78
78
  }
79
79
  },
80
80
  /**
@@ -113,7 +113,7 @@ const q = {
113
113
  appendTo: {
114
114
  type: [HTMLElement, String],
115
115
  default: "body",
116
- validator: (e) => F.includes(e) || e instanceof HTMLElement
116
+ validator: (e) => w.includes(e) || e instanceof HTMLElement
117
117
  },
118
118
  /**
119
119
  * The enter delay in milliseconds before the hovercard is shown.
@@ -121,7 +121,7 @@ const q = {
121
121
  */
122
122
  enterDelay: {
123
123
  type: Number,
124
- default: g
124
+ default: C
125
125
  },
126
126
  /**
127
127
  * The leave delay in milliseconds before the hovercard is hidden.
@@ -129,7 +129,7 @@ const q = {
129
129
  */
130
130
  leaveDelay: {
131
131
  type: Number,
132
- default: g
132
+ default: C
133
133
  },
134
134
  /**
135
135
  * External anchor element reference. Use this instead of the anchor slot when
@@ -149,49 +149,49 @@ const q = {
149
149
  */
150
150
  "opened"
151
151
  ],
152
- setup(e) {
153
- const n = e, l = a(n.open), c = a(!1), d = a(!1), f = a(null), m = a(null), v = a(null), u = a(null), p = a(null);
154
- b(() => {
155
- E(() => {
152
+ setup(e, { expose: c }) {
153
+ const a = e, l = n(a.open), d = n(!1), f = n(!1), m = n(null), v = n(null), p = n(null), u = n(null), O = n(null);
154
+ E(() => {
155
+ S(() => {
156
156
  var t, r, o;
157
- v.value = (o = (r = (t = p.value) == null ? void 0 : t.$refs) == null ? void 0 : r.anchor) == null ? void 0 : o.firstElementChild, u.value = new MutationObserver(() => {
158
- v.value && !v.value.isConnected && (l.value = !1);
157
+ p.value = (o = (r = (t = O.value) == null ? void 0 : t.$refs) == null ? void 0 : r.anchor) == null ? void 0 : o.firstElementChild, u.value = new MutationObserver(() => {
158
+ p.value && !p.value.isConnected && (l.value = !1);
159
159
  }), u.value.observe(document.body, {
160
160
  childList: !0,
161
161
  subtree: !0
162
162
  });
163
163
  });
164
- }), S(() => {
165
- u.value && u.value.disconnect(), clearTimeout(f), clearTimeout(m);
166
- }), A(() => n.open, (t) => {
164
+ }), A(() => {
165
+ u.value && u.value.disconnect(), clearTimeout(m), clearTimeout(v);
166
+ }), D(() => a.open, (t) => {
167
167
  l.value = t;
168
- }, { immediate: !0 });
169
- function y() {
170
- n.open === null && (clearTimeout(m.value), f.value = setTimeout(() => {
168
+ }, { immediate: !0 }), c({ show: y, hide: h });
169
+ function T() {
170
+ a.open === null && (clearTimeout(v.value), m.value = setTimeout(() => {
171
171
  l.value = !0;
172
- }, n.enterDelay));
172
+ }, a.enterDelay));
173
173
  }
174
- function h() {
175
- n.open === null && (clearTimeout(f.value), m.value = setTimeout(() => {
174
+ function g() {
175
+ a.open === null && (clearTimeout(m.value), v.value = setTimeout(() => {
176
176
  l.value = !1;
177
- }, n.leaveDelay));
178
- }
179
- function O() {
180
- d.value = !0, y();
177
+ }, a.leaveDelay));
181
178
  }
182
- function T() {
183
- d.value = !1, !c.value && h();
179
+ function y() {
180
+ f.value = !0, T();
184
181
  }
185
- function C() {
186
- c.value = !0, y();
182
+ function h() {
183
+ f.value = !1, !d.value && g();
187
184
  }
188
185
  function P() {
189
- c.value = !1, d.value || h();
186
+ d.value = !0, T();
187
+ }
188
+ function b() {
189
+ d.value = !1, f.value || g();
190
190
  }
191
- return (t, r) => (D(), M(L(B), {
191
+ return (t, r) => (M(), L(k(F), {
192
192
  id: e.id,
193
193
  ref_key: "popover",
194
- ref: p,
194
+ ref: O,
195
195
  open: l.value,
196
196
  placement: e.placement,
197
197
  "content-class": e.contentClass,
@@ -210,18 +210,18 @@ const q = {
210
210
  "enter-delay": e.enterDelay,
211
211
  "leave-delay": e.leaveDelay,
212
212
  onOpened: r[0] || (r[0] = (o) => t.$emit("opened", o)),
213
- onMouseenterPopover: O,
214
- onMouseleavePopover: T,
215
- onMouseenterPopoverAnchor: O,
216
- onMouseleavePopoverAnchor: T
213
+ onMouseenterPopover: y,
214
+ onMouseleavePopover: h,
215
+ onMouseenterPopoverAnchor: y,
216
+ onMouseleavePopoverAnchor: h
217
217
  }, {
218
218
  anchor: s(({ attrs: o }) => [
219
- i(t.$slots, "anchor", I(N(o)))
219
+ i(t.$slots, "anchor", N($(o)))
220
220
  ]),
221
221
  content: s(() => [
222
- k("div", {
223
- onFocusin: C,
224
- onFocusout: P
222
+ I("div", {
223
+ onFocusin: P,
224
+ onFocusout: b
225
225
  }, [
226
226
  i(t.$slots, "content")
227
227
  ], 32)
@@ -237,6 +237,6 @@ const q = {
237
237
  }
238
238
  };
239
239
  export {
240
- q as default
240
+ z as default
241
241
  };
242
242
  //# sourceMappingURL=hovercard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hovercard.js","sources":["../../../components/hovercard/hovercard.vue"],"sourcesContent":["<!-- eslint-disable vue/multi-word-component-names -->\n<template>\n <dt-popover\n :id=\"id\"\n ref=\"popover\"\n :open=\"hovercardOpen\"\n :placement=\"placement\"\n :content-class=\"contentClass\"\n :dialog-class=\"dialogClass\"\n :fallback-placements=\"fallbackPlacements\"\n :padding=\"padding\"\n :transition=\"transition ? 'fade' : null\"\n :offset=\"offset\"\n :modal=\"false\"\n initial-focus-element=\"none\"\n :header-class=\"headerClass\"\n :footer-class=\"footerClass\"\n :append-to=\"appendTo\"\n :external-anchor-element=\"externalAnchorElement\"\n data-qa=\"dt-hovercard\"\n :enter-delay=\"enterDelay\"\n :leave-delay=\"leaveDelay\"\n @opened=\"(e) => ($emit('opened', e))\"\n @mouseenter-popover=\"onMouseEnter\"\n @mouseleave-popover=\"onMouseLeave\"\n @mouseenter-popover-anchor=\"onMouseEnter\"\n @mouseleave-popover-anchor=\"onMouseLeave\"\n >\n <template #anchor=\"{ attrs }\">\n <!-- @slot Anchor element that activates the hovercard. Usually a button. -->\n <slot\n name=\"anchor\"\n v-bind=\"attrs\"\n />\n </template>\n <template #content>\n <div\n @focusin=\"onContentFocusIn\"\n @focusout=\"onContentFocusOut\"\n >\n <!-- @slot Slot for the content that is displayed in the hovercard. -->\n <slot name=\"content\" />\n </div>\n </template>\n <template #headerContent>\n <!-- @slot Slot for hovercard header content -->\n <slot name=\"headerContent\" />\n </template>\n\n <template #footerContent>\n <!-- @slot Slot for the footer content. -->\n <slot name=\"footerContent\" />\n </template>\n </dt-popover>\n</template>\n\n<script setup>\nimport { ref, watch, nextTick, onMounted, onBeforeUnmount } from 'vue';\nimport { POPOVER_APPEND_TO_VALUES, POPOVER_PADDING_CLASSES, DtPopover } from '@/components/popover/index.js';\nimport { TOOLTIP_DIRECTIONS, TOOLTIP_DELAY_MS } from '@/components/tooltip/index.js';\nimport { getUniqueString } from '@/common/utils';\n\nconst props = defineProps({\n /**\n * Fade transition when the content display is toggled.\n * @type boolean\n * @values true, false\n */\n transition: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Controls whether the hovercard is shown. Leaving this null will have the hovercard trigger on hover by default.\n * If you set this value, the default trigger behavior will be disabled, and you can control it as you need.\n * Supports .sync modifier\n * @values null, true, false\n */\n open: {\n type: Boolean,\n default: null,\n },\n\n /**\n * If the popover does not fit in the direction described by \"placement\",\n * it will attempt to change its direction to the \"fallbackPlacements\".\n * @see https://popper.js.org/docs/v2/modifiers/flip/#fallbackplacements\"\n */\n fallbackPlacements: {\n type: Array,\n default: () => {\n return ['auto'];\n },\n },\n\n /**\n * The direction the popover displays relative to the anchor.\n * @see https://atomiks.github.io/tippyjs/v6/all-props/#placement\"\n * @values top, top-start, top-end,\n * right, right-start, right-end,\n * left, left-start, left-end,\n * bottom, bottom-start, bottom-end,\n * auto, auto-start, auto-end\n */\n placement: {\n type: String,\n default: 'top-start',\n validator (placement) {\n return TOOLTIP_DIRECTIONS.includes(placement);\n },\n },\n\n /**\n * Padding size class for the popover content.\n * @values none, small, medium, large\n */\n padding: {\n type: String,\n default: 'large',\n validator: (padding) => {\n return Object.keys(POPOVER_PADDING_CLASSES).some((item) => item === padding);\n },\n },\n\n /**\n * Displaces the content box from its anchor element\n * by the specified number of pixels.\n * @see https://atomiks.github.io/tippyjs/v6/all-props/#offset\"\n */\n offset: {\n type: Array,\n default: () => [0, 16],\n },\n\n /**\n * The id of the tooltip\n */\n id: {\n type: String,\n default () { return getUniqueString(); },\n },\n\n /**\n * Additional class name for the header content wrapper element.\n */\n headerClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the footer content wrapper element.\n */\n footerClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the dialog element.\n */\n dialogClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the content wrapper element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Sets the element to which the popover is going to append to.\n * 'body' will append to the nearest body (supports shadow DOM).\n * @values 'body', 'parent', HTMLElement,\n */\n appendTo: {\n type: [HTMLElement, String],\n default: 'body',\n validator: appendTo => {\n return POPOVER_APPEND_TO_VALUES.includes(appendTo) ||\n (appendTo instanceof HTMLElement);\n },\n },\n\n /**\n * The enter delay in milliseconds before the hovercard is shown.\n * @type number\n */\n enterDelay: {\n type: Number,\n default: TOOLTIP_DELAY_MS,\n },\n\n /**\n * The leave delay in milliseconds before the hovercard is hidden.\n * @type number\n */\n leaveDelay: {\n type: Number,\n default: TOOLTIP_DELAY_MS,\n },\n\n /**\n * External anchor element reference. Use this instead of the anchor slot when\n * the anchor may be inside a Shadow DOM, as querySelector cannot pierce shadow boundaries.\n */\n externalAnchorElement: {\n type: HTMLElement,\n default: null,\n },\n});\n\ndefineEmits([\n /**\n * Emitted when hovercard is shown or hidden\n *\n * @event opened\n * @type {Boolean | Array}\n */\n 'opened',\n]);\n\nconst hovercardOpen = ref(props.open);\nconst contentFocused = ref(false);\nconst mouseOverHovercard = ref(false);\nconst inTimer = ref(null);\nconst outTimer = ref(null);\nconst anchorEl = ref(null);\nconst observer = ref(null);\nconst popover = ref(null);\n\nonMounted(() => {\n nextTick(() => {\n anchorEl.value = popover.value?.$refs?.anchor?.firstElementChild;\n\n observer.value = new MutationObserver(() => {\n if (anchorEl.value && !anchorEl.value.isConnected) {\n hovercardOpen.value = false;\n }\n });\n\n observer.value.observe(document.body, {\n childList: true,\n subtree: true,\n });\n });\n});\n\nonBeforeUnmount(() => {\n if (observer.value) {\n observer.value.disconnect();\n }\n clearTimeout(inTimer);\n clearTimeout(outTimer);\n});\nwatch(() => props.open, (open) => {\n hovercardOpen.value = open;\n}, { immediate: true });\n\nfunction setInTimer () {\n if (props.open === null) {\n clearTimeout(outTimer.value);\n inTimer.value = setTimeout(() => {\n hovercardOpen.value = true;\n }, props.enterDelay);\n }\n}\n\nfunction setOutTimer () {\n if (props.open === null) {\n clearTimeout(inTimer.value);\n outTimer.value = setTimeout(() => {\n hovercardOpen.value = false;\n }, props.leaveDelay);\n }\n}\n\nfunction onMouseEnter () {\n mouseOverHovercard.value = true;\n setInTimer();\n}\n\nfunction onMouseLeave () {\n mouseOverHovercard.value = false;\n if (contentFocused.value) {\n return;\n }\n setOutTimer();\n}\n\nfunction onContentFocusIn () {\n contentFocused.value = true;\n setInTimer();\n}\n\nfunction onContentFocusOut () {\n contentFocused.value = false;\n\n // If mouse is not over the hovercard, close it\n if (!mouseOverHovercard.value) {\n setOutTimer();\n }\n}\n</script>\n"],"names":["props","__props","hovercardOpen","ref","contentFocused","mouseOverHovercard","inTimer","outTimer","anchorEl","observer","popover","onMounted","nextTick","_c","_b","_a","onBeforeUnmount","watch","open","setInTimer","setOutTimer","onMouseEnter","onMouseLeave","onContentFocusIn","onContentFocusOut","_createBlock","_unref","DtPopover","_cache","e","$emit","_withCtx","attrs","_renderSlot","_ctx","_createElementVNode"],"mappings":"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"}
1
+ {"version":3,"file":"hovercard.js","sources":["../../../components/hovercard/hovercard.vue"],"sourcesContent":["<!-- eslint-disable vue/multi-word-component-names -->\n<template>\n <dt-popover\n :id=\"id\"\n ref=\"popover\"\n :open=\"hovercardOpen\"\n :placement=\"placement\"\n :content-class=\"contentClass\"\n :dialog-class=\"dialogClass\"\n :fallback-placements=\"fallbackPlacements\"\n :padding=\"padding\"\n :transition=\"transition ? 'fade' : null\"\n :offset=\"offset\"\n :modal=\"false\"\n initial-focus-element=\"none\"\n :header-class=\"headerClass\"\n :footer-class=\"footerClass\"\n :append-to=\"appendTo\"\n :external-anchor-element=\"externalAnchorElement\"\n data-qa=\"dt-hovercard\"\n :enter-delay=\"enterDelay\"\n :leave-delay=\"leaveDelay\"\n @opened=\"(e) => ($emit('opened', e))\"\n @mouseenter-popover=\"onMouseEnter\"\n @mouseleave-popover=\"onMouseLeave\"\n @mouseenter-popover-anchor=\"onMouseEnter\"\n @mouseleave-popover-anchor=\"onMouseLeave\"\n >\n <template #anchor=\"{ attrs }\">\n <!-- @slot Anchor element that activates the hovercard. Usually a button. -->\n <slot\n name=\"anchor\"\n v-bind=\"attrs\"\n />\n </template>\n <template #content>\n <div\n @focusin=\"onContentFocusIn\"\n @focusout=\"onContentFocusOut\"\n >\n <!-- @slot Slot for the content that is displayed in the hovercard. -->\n <slot name=\"content\" />\n </div>\n </template>\n <template #headerContent>\n <!-- @slot Slot for hovercard header content -->\n <slot name=\"headerContent\" />\n </template>\n\n <template #footerContent>\n <!-- @slot Slot for the footer content. -->\n <slot name=\"footerContent\" />\n </template>\n </dt-popover>\n</template>\n\n<script setup>\nimport { ref, watch, nextTick, onMounted, onBeforeUnmount } from 'vue';\nimport { POPOVER_APPEND_TO_VALUES, POPOVER_PADDING_CLASSES, DtPopover } from '@/components/popover/index.js';\nimport { TOOLTIP_DIRECTIONS, TOOLTIP_DELAY_MS } from '@/components/tooltip/index.js';\nimport { getUniqueString } from '@/common/utils';\n\nconst props = defineProps({\n /**\n * Fade transition when the content display is toggled.\n * @type boolean\n * @values true, false\n */\n transition: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Controls whether the hovercard is shown. Leaving this null will have the hovercard trigger on hover by default.\n * If you set this value, the default trigger behavior will be disabled, and you can control it as you need.\n * Supports .sync modifier\n * @values null, true, false\n */\n open: {\n type: Boolean,\n default: null,\n },\n\n /**\n * If the popover does not fit in the direction described by \"placement\",\n * it will attempt to change its direction to the \"fallbackPlacements\".\n * @see https://popper.js.org/docs/v2/modifiers/flip/#fallbackplacements\"\n */\n fallbackPlacements: {\n type: Array,\n default: () => {\n return ['auto'];\n },\n },\n\n /**\n * The direction the popover displays relative to the anchor.\n * @see https://atomiks.github.io/tippyjs/v6/all-props/#placement\"\n * @values top, top-start, top-end,\n * right, right-start, right-end,\n * left, left-start, left-end,\n * bottom, bottom-start, bottom-end,\n * auto, auto-start, auto-end\n */\n placement: {\n type: String,\n default: 'top-start',\n validator (placement) {\n return TOOLTIP_DIRECTIONS.includes(placement);\n },\n },\n\n /**\n * Padding size class for the popover content.\n * @values none, small, medium, large\n */\n padding: {\n type: String,\n default: 'large',\n validator: (padding) => {\n return Object.keys(POPOVER_PADDING_CLASSES).some((item) => item === padding);\n },\n },\n\n /**\n * Displaces the content box from its anchor element\n * by the specified number of pixels.\n * @see https://atomiks.github.io/tippyjs/v6/all-props/#offset\"\n */\n offset: {\n type: Array,\n default: () => [0, 16],\n },\n\n /**\n * The id of the tooltip\n */\n id: {\n type: String,\n default () { return getUniqueString(); },\n },\n\n /**\n * Additional class name for the header content wrapper element.\n */\n headerClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the footer content wrapper element.\n */\n footerClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the dialog element.\n */\n dialogClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Additional class name for the content wrapper element.\n */\n contentClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Sets the element to which the popover is going to append to.\n * 'body' will append to the nearest body (supports shadow DOM).\n * @values 'body', 'parent', HTMLElement,\n */\n appendTo: {\n type: [HTMLElement, String],\n default: 'body',\n validator: appendTo => {\n return POPOVER_APPEND_TO_VALUES.includes(appendTo) ||\n (appendTo instanceof HTMLElement);\n },\n },\n\n /**\n * The enter delay in milliseconds before the hovercard is shown.\n * @type number\n */\n enterDelay: {\n type: Number,\n default: TOOLTIP_DELAY_MS,\n },\n\n /**\n * The leave delay in milliseconds before the hovercard is hidden.\n * @type number\n */\n leaveDelay: {\n type: Number,\n default: TOOLTIP_DELAY_MS,\n },\n\n /**\n * External anchor element reference. Use this instead of the anchor slot when\n * the anchor may be inside a Shadow DOM, as querySelector cannot pierce shadow boundaries.\n */\n externalAnchorElement: {\n type: HTMLElement,\n default: null,\n },\n});\n\ndefineEmits([\n /**\n * Emitted when hovercard is shown or hidden\n *\n * @event opened\n * @type {Boolean | Array}\n */\n 'opened',\n]);\n\nconst hovercardOpen = ref(props.open);\nconst contentFocused = ref(false);\nconst mouseOverHovercard = ref(false);\nconst inTimer = ref(null);\nconst outTimer = ref(null);\nconst anchorEl = ref(null);\nconst observer = ref(null);\nconst popover = ref(null);\n\nonMounted(() => {\n nextTick(() => {\n anchorEl.value = popover.value?.$refs?.anchor?.firstElementChild;\n\n observer.value = new MutationObserver(() => {\n if (anchorEl.value && !anchorEl.value.isConnected) {\n hovercardOpen.value = false;\n }\n });\n\n observer.value.observe(document.body, {\n childList: true,\n subtree: true,\n });\n });\n});\n\nonBeforeUnmount(() => {\n if (observer.value) {\n observer.value.disconnect();\n }\n clearTimeout(inTimer);\n clearTimeout(outTimer);\n});\nwatch(() => props.open, (open) => {\n hovercardOpen.value = open;\n}, { immediate: true });\n\ndefineExpose({ show: onMouseEnter, hide: onMouseLeave });\n\nfunction setInTimer () {\n if (props.open === null) {\n clearTimeout(outTimer.value);\n inTimer.value = setTimeout(() => {\n hovercardOpen.value = true;\n }, props.enterDelay);\n }\n}\n\nfunction setOutTimer () {\n if (props.open === null) {\n clearTimeout(inTimer.value);\n outTimer.value = setTimeout(() => {\n hovercardOpen.value = false;\n }, props.leaveDelay);\n }\n}\n\nfunction onMouseEnter () {\n mouseOverHovercard.value = true;\n setInTimer();\n}\n\nfunction onMouseLeave () {\n mouseOverHovercard.value = false;\n if (contentFocused.value) {\n return;\n }\n setOutTimer();\n}\n\nfunction onContentFocusIn () {\n contentFocused.value = true;\n setInTimer();\n}\n\nfunction onContentFocusOut () {\n contentFocused.value = false;\n\n // If mouse is not over the hovercard, close it\n if (!mouseOverHovercard.value) {\n setOutTimer();\n }\n}\n</script>\n"],"names":["props","__props","hovercardOpen","ref","contentFocused","mouseOverHovercard","inTimer","outTimer","anchorEl","observer","popover","onMounted","nextTick","_c","_b","_a","onBeforeUnmount","watch","open","__expose","onMouseEnter","onMouseLeave","setInTimer","setOutTimer","onContentFocusIn","onContentFocusOut","_createBlock","_unref","DtPopover","_cache","e","$emit","_withCtx","attrs","_renderSlot","_ctx","_createElementVNode"],"mappings":"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"}
@@ -4,6 +4,8 @@ type __VLS_WithTemplateSlots<T, S> = T & (new () => {
4
4
  $slots: S;
5
5
  });
6
6
  declare const __VLS_component: import('vue').DefineComponent<{}, {
7
+ show: typeof onMouseEnter;
8
+ hide: typeof onMouseLeave;
7
9
  $emit: (event: "opened", ...args: any[]) => void;
8
10
  $props: {
9
11
  readonly [x: string]: any;
@@ -2498,4 +2500,6 @@ type __VLS_TemplateResult = {
2498
2500
  };
2499
2501
  rootEl: any;
2500
2502
  };
2503
+ declare function onMouseEnter(): void;
2504
+ declare function onMouseLeave(): void;
2501
2505
  //# sourceMappingURL=hovercard.vue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hovercard.vue.d.ts","sourceRoot":"","sources":["../../../../components/hovercard/hovercard.vue"],"names":[],"mappings":"AAuDA;wBAutBqB,uBAAuB,CAAC,OAAO,eAAe,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;;6BAEtE,CAAC,EAAE,CAAC;;;AAbjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yEArZA,IA9MA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BA8MA,GA9QC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BA8QD,GA9QC;;;;;;;;;;;;;;;;yEA8QD,IA9MA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qEA8MA,IA9MA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA6mBG"}
1
+ {"version":3,"file":"hovercard.vue.d.ts","sourceRoot":"","sources":["../../../../components/hovercard/hovercard.vue"],"names":[],"mappings":"AAuDA;wBA6tBqB,uBAAuB,CAAC,OAAO,eAAe,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;;6BAEtE,CAAC,EAAE,CAAC;;;AAdjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yEAxZA,IAhNA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BAgNA,GAhRC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BAgRD,GAhRC;;;;;;;;;;;;;;;;yEAgRD,IAhNA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qEAgNA,IAhNA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAmnBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA/LH,sCAGC;AAED,sCAMC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dialpad/dialtone",
3
- "version": "9.169.0",
3
+ "version": "9.170.0",
4
4
  "description": "Dialpad's Dialtone design system monorepo",
5
5
  "files": [
6
6
  "dist"
@@ -74,8 +74,8 @@
74
74
  "tippy.js": "6.3.7",
75
75
  "@dialpad/dialtone-emojis": "1.2.4",
76
76
  "@dialpad/dialtone-mcp-server": "1.2.1",
77
- "@dialpad/dialtone-tokens": "1.47.4",
78
- "@dialpad/dialtone-icons": "4.48.0"
77
+ "@dialpad/dialtone-icons": "4.48.0",
78
+ "@dialpad/dialtone-tokens": "1.47.4"
79
79
  },
80
80
  "devDependencies": {
81
81
  "@commitlint/cli": "^18.4.3",