UNPKG

element-plus

Version:

A Component Library for Vue 3

1 lines 3 kB
{"version":3,"file":"style-helper.mjs","sources":["../../../../../../../packages/components/table/src/table-footer/style-helper.ts"],"sourcesContent":["import { computed, getCurrentInstance } from 'vue'\nimport useMapState from './mapState-helper'\n\nimport type { Table } from '../table/defaults'\nimport type { TableColumnCtx } from '../table-column/defaults'\nimport type { TableFooter } from '.'\n\nfunction useStyle<T>(props: TableFooter<T>) {\n const instance = getCurrentInstance()\n const table = instance.parent as Table<T>\n const store = table.store\n\n const {\n leftFixedLeafCount,\n rightFixedLeafCount,\n columnsCount,\n leftFixedCount,\n rightFixedCount,\n columns,\n } = useMapState<T>()\n\n const hasGutter = computed(() => {\n return !props.fixed && !table.layout.gutterWidth\n })\n const isCellHidden = (\n index: number,\n columns: TableColumnCtx<T>[],\n column: TableColumnCtx<T>\n ) => {\n if (props.fixed || props.fixed === 'left') {\n return index >= leftFixedLeafCount.value\n } else if (props.fixed === 'right') {\n let before = 0\n for (let i = 0; i < index; i++) {\n before += columns[i].colSpan\n }\n return before < columnsCount.value - rightFixedLeafCount.value\n } else if (!props.fixed && column.fixed) {\n // hide cell when footer instance is not fixed and column is fixed\n return true\n } else {\n return (\n index < leftFixedCount.value ||\n index >= columnsCount.value - rightFixedCount.value\n )\n }\n }\n const getRowClasses = (column: TableColumnCtx<T>, cellIndex: number) => {\n const classes = [column.id, column.align, column.labelClassName]\n if (column.className) {\n classes.push(column.className)\n }\n if (isCellHidden(cellIndex, store.states.columns.value, column)) {\n classes.push('is-hidden')\n }\n if (!column.children) {\n classes.push('is-leaf')\n }\n return classes\n }\n\n return {\n hasGutter,\n getRowClasses,\n columns,\n }\n}\n\nexport default useStyle\n"],"names":[],"mappings":";;;AAOA,kBAAqB,OAAuB;AAC1C,QAAM,WAAW;AACjB,QAAM,QAAQ,SAAS;AACvB,QAAM,QAAQ,MAAM;AAEpB,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,MACE;AAEJ,QAAM,YAAY,SAAS,MAAM;AAC/B,WAAO,CAAC,MAAM,SAAS,CAAC,MAAM,OAAO;AAAA;AAEvC,QAAM,eAAe,CACnB,OACA,UACA,WACG;AACH,QAAI,MAAM,SAAS,MAAM,UAAU,QAAQ;AACzC,aAAO,SAAS,mBAAmB;AAAA,eAC1B,MAAM,UAAU,SAAS;AAClC,UAAI,SAAS;AACb,eAAS,IAAI,GAAG,IAAI,OAAO,KAAK;AAC9B,kBAAU,SAAQ,GAAG;AAAA;AAEvB,aAAO,SAAS,aAAa,QAAQ,oBAAoB;AAAA,eAChD,CAAC,MAAM,SAAS,OAAO,OAAO;AAEvC,aAAO;AAAA,WACF;AACL,aACE,QAAQ,eAAe,SACvB,SAAS,aAAa,QAAQ,gBAAgB;AAAA;AAAA;AAIpD,QAAM,gBAAgB,CAAC,QAA2B,cAAsB;AACtE,UAAM,UAAU,CAAC,OAAO,IAAI,OAAO,OAAO,OAAO;AACjD,QAAI,OAAO,WAAW;AACpB,cAAQ,KAAK,OAAO;AAAA;AAEtB,QAAI,aAAa,WAAW,MAAM,OAAO,QAAQ,OAAO,SAAS;AAC/D,cAAQ,KAAK;AAAA;AAEf,QAAI,CAAC,OAAO,UAAU;AACpB,cAAQ,KAAK;AAAA;AAEf,WAAO;AAAA;AAGT,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA;AAAA;;;;"}