{"version":3,"file":"Summary.cjs","sources":["../../../../../../../packages/vue-components/vc-table/src/Footer/Summary.tsx"],"sourcesContent":["import { computed, defineComponent, onBeforeUnmount, watchEffect } from 'vue';\nimport { useInjectTable } from '../context/TableContext';\n\nexport interface SummaryProps {\n  fixed?: boolean | 'top' | 'bottom';\n}\n\nlet indexGuid = 0;\nconst Summary = defineComponent<SummaryProps>({\n  name: 'TableSummary',\n  props: ['fixed'] as any,\n  setup(props, { slots }) {\n    const tableContext = useInjectTable();\n    const uniKey = `table-summary-uni-key-${++indexGuid}`;\n    const fixed = computed(() => (props.fixed as string) === '' || props.fixed);\n    watchEffect(() => {\n      tableContext.summaryCollect(uniKey, fixed.value);\n    });\n    onBeforeUnmount(() => {\n      tableContext.summaryCollect(uniKey, false);\n    });\n    return () => slots.default?.();\n  },\n});\n\nexport default Summary;\n"],"names":["indexGuid","Summary","defineComponent","name","props","setup","slots","tableContext","useInjectTable","uniKey","fixed","computed","watchEffect","summaryCollect","value","onBeforeUnmount","default"],"mappings":";;;;;;;AAOA,IAAIA,SAAY,GAAA,CAAA,CAAA;AAChB,MAAMC,0BAAwCC,mBAAA,CAAA;AAAA,EAC5CC,IAAM,EAAA,cAAA;AAAA,EACNC,KAAAA,EAAO,CAAC,OAAO,CAAA;AAAA,EACfC,MAAMD,KAAO,EAAA;AAAA,IAAEE,KAAAA;AAAAA,GAAS,EAAA;AACtB,IAAA,MAAMC,eAAeC,2BAAe,EAAA,CAAA;AACpC,IAAMC,MAAAA,MAAAA,GAAU,CAAwB,sBAAA,EAAA,EAAET,SAAU,CAAA,CAAA,CAAA;AACpD,IAAA,MAAMU,QAAQC,YAAS,CAAA,MAAOP,MAAMM,KAAqB,KAAA,EAAA,IAAMN,MAAMM,KAAK,CAAA,CAAA;AAC1EE,IAAAA,eAAAA,CAAY,MAAM;AAChBL,MAAaM,YAAAA,CAAAA,cAAAA,CAAeJ,MAAQC,EAAAA,KAAAA,CAAMI,KAAK,CAAA,CAAA;AAAA,KAChD,CAAA,CAAA;AACDC,IAAAA,mBAAAA,CAAgB,MAAM;AACpBR,MAAaM,YAAAA,CAAAA,cAAAA,CAAeJ,QAAQ,KAAK,CAAA,CAAA;AAAA,KAC1C,CAAA,CAAA;AACD,IAAA,OAAO,MAAMH;AArBjB,MAAA,IAAA,EAAA,CAAA;AAqBiBA,MAAAA,OAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMU,OAANV,KAAAA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,EAAAA,CAAAA,IAAAA,CAAAA,KAAAA,CAAAA,CAAAA;AAAAA,KAAAA,CAAAA;AAAAA,GACf;AACF,CAAC;;;;"}