{"version":3,"file":"TableContext.cjs","sources":["../../../../../../../packages/vue-components/vc-table/src/context/TableContext.tsx"],"sourcesContent":["import type { InjectionKey } from 'vue';\nimport type { GetComponent, TransformCellText } from '../interface';\nimport type { FixedInfo } from '../utils/fixUtil';\nimport { inject, provide } from 'vue';\n\nexport interface TableContextProps {\n  // Table context\n  prefixCls: string;\n\n  getComponent: GetComponent;\n\n  scrollbarSize: number;\n\n  direction: 'ltr' | 'rtl';\n\n  fixedInfoList: readonly FixedInfo[];\n\n  isSticky: boolean;\n\n  summaryCollect: (uniKey: string, fixed: boolean | string) => void;\n\n  transformCellText: TransformCellText<unknown>;\n}\n\nexport const TableContextKey: InjectionKey<TableContextProps> = Symbol('TableContextProps');\n\nexport function useProvideTable(props: TableContextProps) {\n  provide(TableContextKey, props);\n}\n\nexport function useInjectTable() {\n  return inject(TableContextKey, {} as TableContextProps);\n}\n"],"names":["TableContextKey","Symbol","useProvideTable","props","provide","useInjectTable","inject"],"mappings":";;;;AAwBaA,MAAAA,eAAAA,GAAmDC,OAAO,mBAAmB,EAAA;AAEnF,SAASC,gBAAgBC,KAA0B,EAAA;AACxDC,EAAAA,WAAAA,CAAQJ,iBAAiBG,KAAK,CAAA,CAAA;AAChC,CAAA;AAEO,SAASE,cAAiB,GAAA;AAC/B,EAAOC,OAAAA,UAAAA,CAAON,eAAiB,EAAA,EAAuB,CAAA,CAAA;AACxD;;;;;;"}