{"version":3,"file":"index.cjs","sources":["../../../../../../../packages/vue-components/vc-table/src/Footer/index.tsx"],"sourcesContent":["import type { FlattenColumns } from '../context/SummaryContext';\nimport type { DefaultRecordType, StickyOffsets } from '../interface';\nimport { computed, defineComponent, reactive, toRef } from 'vue';\nimport { useProvideSummary } from '../context/SummaryContext';\nimport { useInjectTable } from '../context/TableContext';\nimport SummaryCell from './Cell';\nimport SummaryRow from './Row';\nimport Summary from './Summary';\n\nexport interface FooterProps<RecordType = DefaultRecordType> {\n  stickyOffsets: StickyOffsets;\n  flattenColumns: FlattenColumns<RecordType>;\n}\n\nexport default defineComponent<FooterProps>({\n  name: 'TableFooter',\n  inheritAttrs: false,\n  props: ['stickyOffsets', 'flattenColumns'] as any,\n  setup(props, { slots }) {\n    const tableContext = useInjectTable();\n    useProvideSummary(\n      reactive({\n        stickyOffsets: toRef(props, 'stickyOffsets'),\n        flattenColumns: toRef(props, 'flattenColumns'),\n        scrollColumnIndex: computed(() => {\n          const lastColumnIndex = props.flattenColumns.length - 1;\n          const scrollColumn = props.flattenColumns[lastColumnIndex];\n          return scrollColumn?.scrollbar ? lastColumnIndex : null;\n        }),\n      }),\n    );\n    return () => {\n      const { prefixCls } = tableContext;\n      return <tfoot class={`${prefixCls}-summary`}>{slots.default?.()}</tfoot>;\n    };\n  },\n});\n\nexport { SummaryCell, SummaryRow };\nexport const FooterComponents = Summary;\n"],"names":["defineComponent","name","inheritAttrs","props","setup","slots","tableContext","useInjectTable","useProvideSummary","reactive","stickyOffsets","toRef","flattenColumns","scrollColumnIndex","computed","lastColumnIndex","length","scrollColumn","scrollbar","prefixCls","_createVNode","default","FooterComponents","Summary"],"mappings":";;;;;;;;;;;AAcA,6BAA4CA,mBAAA,CAAA;AAAA,EAC1CC,IAAM,EAAA,aAAA;AAAA,EACNC,YAAc,EAAA,KAAA;AAAA,EACdC,KAAAA,EAAO,CAAC,eAAA,EAAiB,gBAAgB,CAAA;AAAA,EACzCC,MAAMD,KAAO,EAAA;AAAA,IAAEE,KAAAA;AAAAA,GAAS,EAAA;AACtB,IAAA,MAAMC,eAAeC,2BAAe,EAAA,CAAA;AACpCC,IAAAA,gCAAAA,CACEC,YAAS,CAAA;AAAA,MACPC,aAAAA,EAAeC,SAAMR,CAAAA,KAAAA,EAAO,eAAe,CAAA;AAAA,MAC3CS,cAAAA,EAAgBD,SAAMR,CAAAA,KAAAA,EAAO,gBAAgB,CAAA;AAAA,MAC7CU,iBAAAA,EAAmBC,aAAS,MAAM;AAChC,QAAMC,MAAAA,eAAAA,GAAkBZ,KAAMS,CAAAA,cAAAA,CAAeI,MAAS,GAAA,CAAA,CAAA;AACtD,QAAMC,MAAAA,YAAAA,GAAed,KAAMS,CAAAA,cAAAA,CAAeG,eAAe,CAAA,CAAA;AACzD,QAAOE,OAAAA,CAAAA,YAAAA,IAAAA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,YAAAA,CAAcC,aAAYH,eAAkB,GAAA,IAAA,CAAA;AAAA,OACpD,CAAA;AAAA,KACF,CACH,CAAA,CAAA;AACA,IAAA,OAAO,MAAM;;AACX,MAAM,MAAA;AAAA,QAAEI,SAAAA;AAAAA,OAAcb,GAAAA,YAAAA,CAAAA;AACtB,MAAA,OAAAc,gBAAA,OAAA,EAAA;AAAA,QAAA,OAAA,EAAsB,GAAED,SAAU,CAAA,QAAA,CAAA;AAAA,OAAS,EAAA,CAAA,CAAGd,EAAMgB,GAAAA,KAAAA,CAAAA,OAAAA,KAANhB,8BAAiB,CAAA,CAAA,CAAA;AAAA,KACjE,CAAA;AAAA,GACF;AACF,CAAC,CAAA,CAAA;AAGM,MAAMiB,gBAAmBC,GAAAA;;;;;;;"}