{"version":3,"file":"data-table.vue2.mjs","sources":["../../../../../packages/components/data-table/src/data-table.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n  name: 'ElDataTable'\n});\n</script>\n<template>\n  <div\n    :class=\"{\n      [ns.b()]: true,\n      [ns.is('left-fixed-shadow')]: showLeftFixedShadow,\n      [ns.is('right-fixed-shadow')]: showRightFixedShadow,\n      [ns.is('stripe')]: stripe\n    }\"\n    :style=\"{ height }\"\n  >\n    <!-- 表头 -->\n    <DataTableHeader @column-resize=\"handleColumnResize\">\n      <template #column-conf=\"scoped\">\n        <slot name=\"column-conf\" v-bind=\"scoped\" />\n      </template>\n    </DataTableHeader>\n\n    <!-- 表体 -->\n    <DataTableBody />\n\n    <!-- 合计行. 树形结构显示不能显示合计行 -->\n    <DataTableFooter v-if=\"showSummary\" />\n\n    <!-- size线 -->\n    <div :class=\"ns.e('resize-line')\" ref=\"lineRef\"></div>\n  </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { provide, shallowRef } from 'vue'\nimport { useNamespace } from '@element-ultra/hooks'\nimport DataTableHeader from './data-table-header.vue'\nimport DataTableBody from './data-table-body.vue'\nimport DataTableFooter from './data-table-footer.vue'\nimport { dataTableProps, dataTableEmits } from './data-table'\nimport { dataTableToken } from './token'\nimport useColumns from './hooks/use-columns'\nimport useStyle from './hooks/use-style'\nimport useState from './hooks/use-state'\nimport { useDomRefProvide } from './hooks/use-dom-ref'\n\n\n\nconst ns = useNamespace('data-table')\n\nconst props = defineProps(dataTableProps)\nconst emit = defineEmits(dataTableEmits)\n\n// 提供domRefs\nconst refs = useDomRefProvide()\n\n// 数据状态\nconst state = useState(props, emit)\n\n// 列\nconst columns = useColumns(props, emit, state)\n\n// 样式\nconst styles = useStyle(props, refs)\n\nconst { showLeftFixedShadow, showRightFixedShadow } = styles\n\nprovide(dataTableToken, {\n  ...state,\n  ...columns,\n  ...styles,\n  ns,\n  rootProps: props,\n  emit\n})\n\nconst lineRef = shallowRef<HTMLElement>()\n\nconst handleColumnResize = (left: string, visible: boolean) => {\n  lineRef.value!.style.left = left\n  lineRef.value!.style.visibility = visible ? 'visible' : 'hidden'\n}\n\ndefineExpose({\n  getColumns: columns.getColumns\n})\n</script>\n"],"names":["__MACROS_defineComponent"],"mappings":";;;;;;;;;;;;;AAEA,MAA6B,cAAAA,eAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,aAAA;AACR,CAAC,CAAA,CAAA;;;;;;;AA6CD,IAAM,MAAA,EAAA,GAAK,aAAa,YAAY,CAAA,CAAA;AAMpC,IAAA,MAAM,OAAO,gBAAiB,EAAA,CAAA;AAG9B,IAAM,MAAA,KAAA,GAAQ,QAAS,CAAA,KAAA,EAAO,IAAI,CAAA,CAAA;AAGlC,IAAA,MAAM,OAAU,GAAA,UAAA,CAAW,KAAO,EAAA,IAAA,EAAM,KAAK,CAAA,CAAA;AAG7C,IAAM,MAAA,MAAA,GAAS,QAAS,CAAA,KAAA,EAAO,IAAI,CAAA,CAAA;AAEnC,IAAM,MAAA,EAAE,mBAAqB,EAAA,oBAAA,EAAyB,GAAA,MAAA,CAAA;AAEtD,IAAA,OAAA,CAAQ,cAAgB,EAAA;AAAA,MACtB,GAAG,KAAA;AAAA,MACH,GAAG,OAAA;AAAA,MACH,GAAG,MAAA;AAAA,MACH,EAAA;AAAA,MACA,SAAW,EAAA,KAAA;AAAA,MACX,IAAA;AAAA,KACD,CAAA,CAAA;AAED,IAAA,MAAM,UAAU,UAAwB,EAAA,CAAA;AAExC,IAAM,MAAA,kBAAA,GAAqB,CAAC,IAAA,EAAc,OAAqB,KAAA;AAC7D,MAAQ,OAAA,CAAA,KAAA,CAAO,MAAM,IAAO,GAAA,IAAA,CAAA;AAC5B,MAAA,OAAA,CAAQ,KAAO,CAAA,KAAA,CAAM,UAAa,GAAA,OAAA,GAAU,SAAY,GAAA,QAAA,CAAA;AAAA,KAC1D,CAAA;AAEA,IAAa,MAAA,CAAA;AAAA,MACX,YAAY,OAAQ,CAAA,UAAA;AAAA,KACrB,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}