{"version":3,"file":"HoverContext.mjs","sources":["../../../../../../../packages/vue-components/vc-table/src/context/HoverContext.tsx"],"sourcesContent":["import type { InjectionKey, Ref } from 'vue';\nimport { inject, provide, shallowRef } from 'vue';\n\nexport interface HoverContextProps {\n  startRow: Ref<number>;\n  endRow: Ref<number>;\n  onHover: (start: number, end: number) => void;\n}\nexport const HoverContextKey: InjectionKey<HoverContextProps> = Symbol('HoverContextProps');\n\nexport function useProvideHover(props: HoverContextProps) {\n  provide(HoverContextKey, props);\n}\n\nexport function useInjectHover() {\n  return inject(HoverContextKey, {\n    startRow: shallowRef(-1),\n    endRow: shallowRef(-1),\n    onHover() {},\n  } as HoverContextProps);\n}\n"],"names":["HoverContextKey","Symbol","useProvideHover","props","provide","useInjectHover","inject","startRow","shallowRef","endRow","onHover"],"mappings":";;AAQaA,MAAAA,eAAAA,GAAmDC,OAAO,mBAAmB,EAAA;AAEnF,SAASC,gBAAgBC,KAA0B,EAAA;AACxDC,EAAAA,OAAAA,CAAQJ,iBAAiBG,KAAK,CAAA,CAAA;AAChC,CAAA;AAEO,SAASE,cAAiB,GAAA;AAC/B,EAAA,OAAOC,OAAON,eAAiB,EAAA;AAAA,IAC7BO,QAAAA,EAAUC,WAAW,CAAE,CAAA,CAAA;AAAA,IACvBC,MAAAA,EAAQD,WAAW,CAAE,CAAA,CAAA;AAAA,IACrBE,OAAU,GAAA;AAAA,KAAC;AAAA,GACS,CAAA,CAAA;AACxB;;;;"}