{"version":3,"file":"VHover.mjs","names":["makeDelayProps","useDelay","useProxiedModel","genericComponent","VHover","name","props","disabled","Boolean","modelValue","type","default","undefined","emits","value","setup","slots","isHovering","runOpenDelay","runCloseDelay","onMouseenter","onMouseleave"],"sources":["../../../src/components/VHover/VHover.tsx"],"sourcesContent":["// Composables\nimport { makeDelayProps, useDelay } from '@/composables/delay'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { genericComponent } from '@/util'\n\ntype VHoverSlots = {\n  default: [{\n    isHovering: boolean\n    props: Record<string, unknown>\n  }]\n}\n\nexport const VHover = genericComponent<VHoverSlots>()({\n  name: 'VHover',\n\n  props: {\n    disabled: Boolean,\n    modelValue: {\n      type: Boolean,\n      default: undefined,\n    },\n\n    ...makeDelayProps(),\n  },\n\n  emits: {\n    'update:modelValue': (value: boolean) => true,\n  },\n\n  setup (props, { slots }) {\n    const isHovering = useProxiedModel(props, 'modelValue')\n    const { runOpenDelay, runCloseDelay } = useDelay(props, value => !props.disabled && (isHovering.value = value))\n\n    return () => slots.default?.({\n      isHovering: isHovering.value,\n      props: {\n        onMouseenter: runOpenDelay,\n        onMouseleave: runCloseDelay,\n      },\n    })\n  },\n})\n\nexport type VHover = InstanceType<typeof VHover>\n"],"mappings":"AAAA;AAAA,SACSA,cAAc,EAAEC,QAAQ;AAAA,SACxBC,eAAe,8CAExB;AAAA,SACSC,gBAAgB;AASzB,OAAO,MAAMC,MAAM,GAAGD,gBAAgB,EAAe,CAAC;EACpDE,IAAI,EAAE,QAAQ;EAEdC,KAAK,EAAE;IACLC,QAAQ,EAAEC,OAAO;IACjBC,UAAU,EAAE;MACVC,IAAI,EAAEF,OAAO;MACbG,OAAO,EAAEC;IACX,CAAC;IAED,GAAGZ,cAAc;EACnB,CAAC;EAEDa,KAAK,EAAE;IACL,mBAAmB,EAAGC,KAAc,IAAK;EAC3C,CAAC;EAEDC,KAAK,CAAET,KAAK,QAAa;IAAA,IAAX;MAAEU;IAAM,CAAC;IACrB,MAAMC,UAAU,GAAGf,eAAe,CAACI,KAAK,EAAE,YAAY,CAAC;IACvD,MAAM;MAAEY,YAAY;MAAEC;IAAc,CAAC,GAAGlB,QAAQ,CAACK,KAAK,EAAEQ,KAAK,IAAI,CAACR,KAAK,CAACC,QAAQ,KAAKU,UAAU,CAACH,KAAK,GAAGA,KAAK,CAAC,CAAC;IAE/G,OAAO,MAAME,KAAK,CAACL,OAAO,GAAG;MAC3BM,UAAU,EAAEA,UAAU,CAACH,KAAK;MAC5BR,KAAK,EAAE;QACLc,YAAY,EAAEF,YAAY;QAC1BG,YAAY,EAAEF;MAChB;IACF,CAAC,CAAC;EACJ;AACF,CAAC,CAAC"}