@pungfe/element 0.0.1-alpha.24 → 0.0.1-alpha.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/Table-DZptVNFa.cjs +2 -0
- package/dist/cjs/Table-DZptVNFa.cjs.map +1 -0
- package/dist/cjs/Table.cjs +1 -1
- package/dist/cjs/XButtonAsync.cjs +1 -1
- package/dist/cjs/XButtonConfirm.cjs +1 -1
- package/dist/cjs/XFormFlex.cjs +1 -1
- package/dist/cjs/XFormRequestNext.cjs +1 -1
- package/dist/cjs/XSelectRequest.cjs +1 -1
- package/dist/cjs/{XTableFlex-DPn9j64B.cjs → XTableFlex-CV9iH8_b.cjs} +2 -2
- package/dist/cjs/{XTableFlex-DPn9j64B.cjs.map → XTableFlex-CV9iH8_b.cjs.map} +1 -1
- package/dist/cjs/XTableFlex.cjs +1 -1
- package/dist/cjs/XTableRequestConfigNext.cjs +1 -1
- package/dist/cjs/XTableRequestNext.cjs +1 -1
- package/dist/cjs/{advance-CHMQJWzy.cjs → advance-DbtOL3n0.cjs} +2 -2
- package/dist/cjs/{advance-CHMQJWzy.cjs.map → advance-DbtOL3n0.cjs.map} +1 -1
- package/dist/cjs/advance.cjs +1 -1
- package/dist/cjs/{basic-z-xTRca0.cjs → basic-RvFxmpEi.cjs} +2 -2
- package/dist/cjs/{basic-z-xTRca0.cjs.map → basic-RvFxmpEi.cjs.map} +1 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/es/{Table-CDSvNzQX.js → Table-B2YcvqJm.js} +3 -2
- package/dist/es/Table-B2YcvqJm.js.map +1 -0
- package/dist/es/Table.js +1 -1
- package/dist/es/XButtonAsync.js +2 -2
- package/dist/es/XButtonConfirm.js +2 -2
- package/dist/es/XFormFlex.js +2 -2
- package/dist/es/XFormRequestNext.js +2 -2
- package/dist/es/XSelectRequest.js +2 -2
- package/dist/es/{XTableFlex-DvI8a43S.js → XTableFlex-BRaZOQ95.js} +2 -2
- package/dist/es/{XTableFlex-DvI8a43S.js.map → XTableFlex-BRaZOQ95.js.map} +1 -1
- package/dist/es/XTableFlex.js +3 -3
- package/dist/es/XTableRequestConfigNext.js +4 -4
- package/dist/es/XTableRequestNext.js +4 -4
- package/dist/es/{advance-CxLGYXzG.js → advance-ojzwcYK8.js} +3 -3
- package/dist/es/{advance-CxLGYXzG.js.map → advance-ojzwcYK8.js.map} +1 -1
- package/dist/es/advance.js +4 -4
- package/dist/es/{basic-D2nqjZxe.js → basic-C_9z_Tvh.js} +2 -2
- package/dist/es/{basic-D2nqjZxe.js.map → basic-C_9z_Tvh.js.map} +1 -1
- package/dist/es/index.js +4 -4
- package/package.json +1 -1
- package/dist/cjs/Table-DkCFI_tS.cjs +0 -2
- package/dist/cjs/Table-DkCFI_tS.cjs.map +0 -1
- package/dist/es/Table-CDSvNzQX.js.map +0 -1
package/dist/es/advance.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./basic-
|
|
1
|
+
import "./basic-C_9z_Tvh.js";
|
|
2
2
|
import "./Button-DSKisAgZ.js";
|
|
3
3
|
import "./Checkbox-BIKt-mj0.js";
|
|
4
4
|
import "./en-CBGOP-x1.js";
|
|
@@ -12,7 +12,7 @@ import "./Input-CISC6G6X.js";
|
|
|
12
12
|
import "./InputNumber-hPI3X5v1.js";
|
|
13
13
|
import "./Pagination-9blNkPhL.js";
|
|
14
14
|
import "./Select-BbNB6mtB.js";
|
|
15
|
-
import "./Table-
|
|
15
|
+
import "./Table-B2YcvqJm.js";
|
|
16
16
|
import "./TabPane-8Kl4Y2vo.js";
|
|
17
17
|
import "./Tabs-BE8GuCPk.js";
|
|
18
18
|
import "./Upload-B1BTrgWK.js";
|
|
@@ -22,7 +22,7 @@ import { t as n } from "./XFormFlex-z1GXxWu7.js";
|
|
|
22
22
|
import { t as r } from "./XFormRequestNext-CJrJVNUm.js";
|
|
23
23
|
import { t as i } from "./XRequest-xq6n4Et2.js";
|
|
24
24
|
import { t as a } from "./XSelectRequest-DTo9sziO.js";
|
|
25
|
-
import { t as o } from "./XTableFlex-
|
|
26
|
-
import { n as s, r as c } from "./advance-
|
|
25
|
+
import { t as o } from "./XTableFlex-BRaZOQ95.js";
|
|
26
|
+
import { n as s, r as c } from "./advance-ojzwcYK8.js";
|
|
27
27
|
import { t as l } from "./XUploadOssNext-Iu4j5ilc.js";
|
|
28
28
|
export { e as XButtonAsync, t as XButtonConfirm, n as XFormFlex, r as XFormRequestNext, i as XRequest, a as XSelectRequest, o as XTableFlex, c as XTableRequestConfigNext, s as XTableRequestNext, l as XUploadOssNext };
|
|
@@ -9,7 +9,7 @@ import { t as s } from "./Input-CISC6G6X.js";
|
|
|
9
9
|
import { t as c } from "./InputNumber-hPI3X5v1.js";
|
|
10
10
|
import { t as l } from "./Pagination-9blNkPhL.js";
|
|
11
11
|
import { t as u } from "./Select-BbNB6mtB.js";
|
|
12
|
-
import { t as d } from "./Table-
|
|
12
|
+
import { t as d } from "./Table-B2YcvqJm.js";
|
|
13
13
|
import { t as f } from "./TabPane-8Kl4Y2vo.js";
|
|
14
14
|
import { t as p } from "./Tabs-BE8GuCPk.js";
|
|
15
15
|
import { t as m } from "./Upload-B1BTrgWK.js";
|
|
@@ -41,4 +41,4 @@ var h = Object.defineProperty, g = (e, t) => {
|
|
|
41
41
|
//#endregion
|
|
42
42
|
export { g as n, _ as t };
|
|
43
43
|
|
|
44
|
-
//# sourceMappingURL=basic-
|
|
44
|
+
//# sourceMappingURL=basic-C_9z_Tvh.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basic-
|
|
1
|
+
{"version":3,"file":"basic-C_9z_Tvh.js","names":[],"sources":["../../src/components/basic.ts"],"sourcesContent":["import XButton from '@/components/basic/Button.vue'\r\n\r\nimport XCheckbox from '@/components/basic/Checkbox.vue'\r\nimport XConfigProvider from '@/components/basic/ConfigProvider.vue'\r\nimport XDatePicker from '@/components/basic/DatePicker.vue'\r\nimport XDialog from '@/components/basic/Dialog.vue'\r\nimport XForm from '@/components/basic/Form.vue'\r\nimport XFormItem from '@/components/basic/FormItem.vue'\r\nimport XInput from '@/components/basic/Input.vue'\r\nimport XInputNumber from '@/components/basic/InputNumber.vue'\r\nimport XPagination from '@/components/basic/Pagination.vue'\r\nimport XSelect from '@/components/basic/Select.vue'\r\nimport XTable from '@/components/basic/Table.vue'\r\nimport XTabPane from '@/components/basic/TabPane.vue'\r\nimport XTabs from '@/components/basic/Tabs.vue'\r\nimport XUpload from '@/components/basic/Upload.vue'\r\n\r\nexport {\r\n XButton,\r\n XCheckbox,\r\n XConfigProvider,\r\n XDatePicker,\r\n XDialog,\r\n XForm,\r\n XFormItem,\r\n XInput,\r\n XInputNumber,\r\n XPagination,\r\n XSelect,\r\n XTable,\r\n XTabPane,\r\n XTabs,\r\n XUpload\r\n}\r\n\r\nexport * from '@/components/basic/Button.vue'\r\nexport * from '@/components/basic/Checkbox.vue'\r\nexport * from '@/components/basic/ConfigProvider.vue'\r\nexport * from '@/components/basic/DatePicker.vue'\r\nexport * from '@/components/basic/Dialog.vue'\r\nexport * from '@/components/basic/Form.vue'\r\nexport * from '@/components/basic/FormItem.vue'\r\nexport * from '@/components/basic/Input.vue'\r\nexport * from '@/components/basic/InputNumber.vue'\r\nexport * from '@/components/basic/Pagination.vue'\r\nexport * from '@/components/basic/Select.vue'\r\nexport * from '@/components/basic/Table.vue'\r\nexport * from '@/components/basic/TabPane.vue'\r\nexport * from '@/components/basic/Tabs.vue'\r\nexport * from '@/components/basic/Upload.vue'\r\n"],"mappings":""}
|
package/dist/es/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as e } from "./basic-
|
|
1
|
+
import { t as e } from "./basic-C_9z_Tvh.js";
|
|
2
2
|
import { t } from "./Button-DSKisAgZ.js";
|
|
3
3
|
import { n, t as r } from "./constants-C_Llxhb6.js";
|
|
4
4
|
import { t as i } from "./Checkbox-BIKt-mj0.js";
|
|
@@ -14,7 +14,7 @@ import { t as f } from "./Input-CISC6G6X.js";
|
|
|
14
14
|
import { t as p } from "./InputNumber-hPI3X5v1.js";
|
|
15
15
|
import { t as m } from "./Pagination-9blNkPhL.js";
|
|
16
16
|
import { t as h } from "./Select-BbNB6mtB.js";
|
|
17
|
-
import { t as g } from "./Table-
|
|
17
|
+
import { t as g } from "./Table-B2YcvqJm.js";
|
|
18
18
|
import { t as _ } from "./TabPane-8Kl4Y2vo.js";
|
|
19
19
|
import { t as v } from "./Tabs-BE8GuCPk.js";
|
|
20
20
|
import { t as y } from "./Upload-B1BTrgWK.js";
|
|
@@ -24,8 +24,8 @@ import "./XFormFlex-z1GXxWu7.js";
|
|
|
24
24
|
import "./XFormRequestNext-CJrJVNUm.js";
|
|
25
25
|
import "./XRequest-xq6n4Et2.js";
|
|
26
26
|
import "./XSelectRequest-DTo9sziO.js";
|
|
27
|
-
import "./XTableFlex-
|
|
28
|
-
import { t as b } from "./advance-
|
|
27
|
+
import "./XTableFlex-BRaZOQ95.js";
|
|
28
|
+
import { t as b } from "./advance-ojzwcYK8.js";
|
|
29
29
|
import "./XUploadOssNext-Iu4j5ilc.js";
|
|
30
30
|
import { vLoading as x } from "element-plus";
|
|
31
31
|
//#region src/install.ts
|
package/package.json
CHANGED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const e=require(`./constants-CYUPXiMy.cjs`);let t=require(`element-plus`),n=require(`vue`);var r=(0,n.defineComponent)({__name:`Table`,props:{border:{type:Boolean,default:()=>void 0},cellClassName:{type:[Function,String]},cellStyle:{type:[Function,Object]},columns:{},data:{},height:{},emptyText:{},rowClassName:{type:[Function,String]},rowStyle:{type:[Function,Object]},rowKey:{type:Function},showOverflowTooltip:{type:[Boolean,Object],default:()=>void 0},showSummary:{type:Boolean},size:{},fit:{type:Boolean,default:!0},spanMethod:{type:Function},summaryMethod:{type:Function}},emits:[`headerDragend`,`rowClick`,`rowDblclick`,`selectionChange`],setup(r,{expose:i,emit:a}){let o=a,s=(0,n.inject)(e.t)?.table,c=(0,n.inject)(e.l,void 0),{t:l}=(0,t.useLocale)(c),u=(0,n.useTemplateRef)(`table`);i({clearSelection:()=>u.value?.clearSelection(),getSelectionRows:()=>u.value?.getSelectionRows(),scrollTo:(e,t)=>u.value?.scrollTo(e,t),setCurrentRow:e=>u.value?.setCurrentRow(e),setScrollLeft:e=>u.value?.scrollTo(e),setScrollTop:e=>u.value?.scrollTo(e),toggleRowSelection:(e,t,n)=>u.value?.toggleRowSelection(e,t,n)}),(0,n.provide)(e.i,!0);let d=(0,n.defineComponent)(e=>()=>(0,n.createVNode)(t.ElTableColumn,{fixed:e.fixed,label:e.label,prop:e.prop,type:e.type,width:e.width,columnKey:e.columnKey},{default:({row:t,$index:n})=>e.content?.({row:t,index:n}),header:()=>e.header?.({column:{...e}})}),{props:[`content`,`fixed`,`header`,`label`,`prop`,`selectable`,`type`,`width`]});return(e,i)=>((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(t.ElConfigProvider),{locale:(0,n.unref)(c)},{default:(0,n.withCtx)(()=>[(0,n.createVNode)((0,n.unref)(t.ElTable),(0,n.mergeProps)({ref_key:`table`,ref:u},{data:r.data,height:r.height,rowClassName:r.rowClassName,rowStyle:r.rowStyle,cellClassName:r.cellClassName,cellStyle:r.cellStyle,showSummary:r.showSummary,showOverflowTooltip:r.showOverflowTooltip,spanMethod:r.spanMethod,summaryMethod:r.summaryMethod,size:r.size,fit:r.fit,rowKey:r.rowKey,border:r.border??(0,n.unref)(s)?.border,emptyText:r.emptyText??(0,n.unref)(l)(`el.table.emptyText`)},{onRowClick:i[0]||=e=>o(`rowClick`,e),onRowDblclick:i[1]||=e=>o(`rowDblclick`,e),onSelectionChange:i[2]||=e=>o(`selectionChange`,e),onHeaderDragend:i[3]||=(e,t,n)=>o(`headerDragend`,e,t,n)}),{default:(0,n.withCtx)(()=>[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(r.columns,e=>((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(d),(0,n.mergeProps)({ref_for:!0},e),null,16))),256))]),_:1},16)]),_:1},8,[`locale`]))}});Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return r}});
|
|
2
|
-
//# sourceMappingURL=Table-DkCFI_tS.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Table-DkCFI_tS.cjs","names":[],"sources":["../../src/components/basic/Table.vue","../../src/components/basic/Table.vue"],"sourcesContent":["<script setup lang=\"tsx\" generic=\"D\">\r\nimport type { TableColumnCtx, TableProps } from 'element-plus'\r\nimport type { CSSProperties, VNode, VNodeChild } from 'vue'\r\n\r\nimport { ElConfigProvider, ElTable, ElTableColumn, useLocale } from 'element-plus'\r\nimport { defineComponent, inject, provide, useTemplateRef } from 'vue'\r\n\r\nimport { X_ELEMENT_CONFIG, X_ELEMENT_IN_TABLE, X_LOCALE_CONFIG } from '@/constants'\r\n\r\nexport interface XTableConfig {\r\n /**\r\n * 是否隐藏额外内容并在单元格悬停时使用 Tooltip 显示它们。这将影响全部列的展示\r\n * @default false\r\n */\r\n showOverflowTooltip?: boolean\r\n border?: boolean\r\n}\r\n\r\nexport interface XTableColumnProps<D> {\r\n content?: (scope: { index: number, row: D }) => VNodeChild\r\n fixed?: 'left' | 'right'\r\n header?: (scope: { column: XTableColumnProps<D> }) => VNodeChild\r\n label?: string\r\n prop?: string\r\n selectable?: (row: D, index: number) => boolean\r\n type?: 'index' | 'selection'\r\n width?: number\r\n columnKey?: string\r\n}\r\n\r\nexport interface XTableProps<D> {\r\n border?: TableProps<any>['border']\r\n cellClassName?: ((scope: { column: TableColumnCtx, columnIndex: number, row: D, rowIndex: number }) => string) | string\r\n cellStyle?: ((scope: { column: TableColumnCtx, columnIndex: number, row: D, rowIndex: number }) => CSSProperties) | CSSProperties\r\n columns?: XTableColumnProps<D>[]\r\n data?: D[]\r\n height?: TableProps<any>['height']\r\n emptyText?: TableProps<any>['emptyText']\r\n rowClassName?: ((scope: { row: D, rowIndex: number }) => string) | string\r\n rowStyle?: ((scope: { row: D, rowIndex: number }) => CSSProperties) | CSSProperties\r\n rowKey?: (scope: { row: D }) => string\r\n showOverflowTooltip?: TableProps<any>['showOverflowTooltip']\r\n showSummary?: TableProps<any>['showSummary']\r\n size?: TableProps<any>['size']\r\n fit?: TableProps<any>['fit']\r\n spanMethod?: (scope: { column: TableColumnCtx, columnIndex: number, row: D, rowIndex: number }) => number[] | undefined | { colspan: number, rowspan: number }\r\n summaryMethod?: (scope: { columns: TableColumnCtx[], data: D[] }) => (string | VNode)[]\r\n}\r\n\r\nexport interface XTableEvents<D> {\r\n headerDragend: [newWidth: number, oldWidth: number, column: TableColumnCtx]\r\n rowClick: [row: D]\r\n rowDblclick: [row: D]\r\n selectionChange: [rows: D[]]\r\n}\r\n\r\nconst { columns, data, showOverflowTooltip = undefined, border = undefined, fit = true } = defineProps<XTableProps<D>>()\r\nconst emit = defineEmits<XTableEvents<D>>()\r\nconst config = inject(X_ELEMENT_CONFIG)\r\nconst tableConfig = config?.table\r\n\r\nconst locale = inject(X_LOCALE_CONFIG, undefined)\r\nconst { t } = useLocale(locale)\r\n\r\nconst table = useTemplateRef('table')\r\n\r\ndefineExpose({\r\n clearSelection: () => table.value?.clearSelection(),\r\n getSelectionRows: () => table.value?.getSelectionRows(),\r\n scrollTo: (options: number | ScrollToOptions, yCoord?: number) => table.value?.scrollTo(options, yCoord),\r\n setCurrentRow: (row: D) => table.value?.setCurrentRow(row),\r\n setScrollLeft: (left: number) => table.value?.scrollTo(left),\r\n setScrollTop: (top: number) => table.value?.scrollTo(top),\r\n toggleRowSelection: (row: D, selected?: boolean, ignoreSelectable?: boolean) => table.value?.toggleRowSelection(row, selected, ignoreSelectable)\r\n})\r\n\r\nprovide(X_ELEMENT_IN_TABLE, true)\r\n\r\nconst XTableColumn = defineComponent((props: XTableColumnProps<D>) => {\r\n return () => (\r\n <ElTableColumn\r\n fixed={props.fixed}\r\n label={props.label}\r\n prop={props.prop}\r\n type={props.type}\r\n width={props.width}\r\n columnKey={props.columnKey}\r\n >\r\n {{\r\n default: ({ row, $index }: { row: D, $index: number }) => props.content?.({ row, index: $index }),\r\n header: () => props.header?.({ column: { ...props } })\r\n }}\r\n </ElTableColumn>\r\n )\r\n}, { props: ['content', 'fixed', 'header', 'label', 'prop', 'selectable', 'type', 'width'] })\r\n</script>\r\n\r\n<template>\r\n <ElConfigProvider :locale=\"locale\">\r\n <ElTable\r\n ref=\"table\"\r\n v-bind=\"{\r\n data,\r\n height,\r\n rowClassName,\r\n rowStyle,\r\n cellClassName,\r\n cellStyle,\r\n showSummary,\r\n showOverflowTooltip,\r\n spanMethod,\r\n summaryMethod,\r\n size,\r\n fit,\r\n rowKey,\r\n border: border ?? tableConfig?.border,\r\n emptyText: emptyText ?? t('el.table.emptyText'),\r\n }\"\r\n @row-click=\"(row: D) => emit('rowClick', row)\"\r\n @row-dblclick=\"(row: D) => emit('rowDblclick', row)\"\r\n @selection-change=\"(rows: D[]) => emit('selectionChange', rows)\"\r\n @header-dragend=\"(newWidth, oldWidth, column) => emit('headerDragend', newWidth, oldWidth, column)\"\r\n >\r\n <XTableColumn\r\n v-for=\"column of columns\"\r\n v-bind=\"column\"\r\n />\r\n </ElTable>\r\n </ElConfigProvider>\r\n</template>\r\n","<script setup lang=\"tsx\" generic=\"D\">\r\nimport type { TableColumnCtx, TableProps } from 'element-plus'\r\nimport type { CSSProperties, VNode, VNodeChild } from 'vue'\r\n\r\nimport { ElConfigProvider, ElTable, ElTableColumn, useLocale } from 'element-plus'\r\nimport { defineComponent, inject, provide, useTemplateRef } from 'vue'\r\n\r\nimport { X_ELEMENT_CONFIG, X_ELEMENT_IN_TABLE, X_LOCALE_CONFIG } from '@/constants'\r\n\r\nexport interface XTableConfig {\r\n /**\r\n * 是否隐藏额外内容并在单元格悬停时使用 Tooltip 显示它们。这将影响全部列的展示\r\n * @default false\r\n */\r\n showOverflowTooltip?: boolean\r\n border?: boolean\r\n}\r\n\r\nexport interface XTableColumnProps<D> {\r\n content?: (scope: { index: number, row: D }) => VNodeChild\r\n fixed?: 'left' | 'right'\r\n header?: (scope: { column: XTableColumnProps<D> }) => VNodeChild\r\n label?: string\r\n prop?: string\r\n selectable?: (row: D, index: number) => boolean\r\n type?: 'index' | 'selection'\r\n width?: number\r\n columnKey?: string\r\n}\r\n\r\nexport interface XTableProps<D> {\r\n border?: TableProps<any>['border']\r\n cellClassName?: ((scope: { column: TableColumnCtx, columnIndex: number, row: D, rowIndex: number }) => string) | string\r\n cellStyle?: ((scope: { column: TableColumnCtx, columnIndex: number, row: D, rowIndex: number }) => CSSProperties) | CSSProperties\r\n columns?: XTableColumnProps<D>[]\r\n data?: D[]\r\n height?: TableProps<any>['height']\r\n emptyText?: TableProps<any>['emptyText']\r\n rowClassName?: ((scope: { row: D, rowIndex: number }) => string) | string\r\n rowStyle?: ((scope: { row: D, rowIndex: number }) => CSSProperties) | CSSProperties\r\n rowKey?: (scope: { row: D }) => string\r\n showOverflowTooltip?: TableProps<any>['showOverflowTooltip']\r\n showSummary?: TableProps<any>['showSummary']\r\n size?: TableProps<any>['size']\r\n fit?: TableProps<any>['fit']\r\n spanMethod?: (scope: { column: TableColumnCtx, columnIndex: number, row: D, rowIndex: number }) => number[] | undefined | { colspan: number, rowspan: number }\r\n summaryMethod?: (scope: { columns: TableColumnCtx[], data: D[] }) => (string | VNode)[]\r\n}\r\n\r\nexport interface XTableEvents<D> {\r\n headerDragend: [newWidth: number, oldWidth: number, column: TableColumnCtx]\r\n rowClick: [row: D]\r\n rowDblclick: [row: D]\r\n selectionChange: [rows: D[]]\r\n}\r\n\r\nconst { columns, data, showOverflowTooltip = undefined, border = undefined, fit = true } = defineProps<XTableProps<D>>()\r\nconst emit = defineEmits<XTableEvents<D>>()\r\nconst config = inject(X_ELEMENT_CONFIG)\r\nconst tableConfig = config?.table\r\n\r\nconst locale = inject(X_LOCALE_CONFIG, undefined)\r\nconst { t } = useLocale(locale)\r\n\r\nconst table = useTemplateRef('table')\r\n\r\ndefineExpose({\r\n clearSelection: () => table.value?.clearSelection(),\r\n getSelectionRows: () => table.value?.getSelectionRows(),\r\n scrollTo: (options: number | ScrollToOptions, yCoord?: number) => table.value?.scrollTo(options, yCoord),\r\n setCurrentRow: (row: D) => table.value?.setCurrentRow(row),\r\n setScrollLeft: (left: number) => table.value?.scrollTo(left),\r\n setScrollTop: (top: number) => table.value?.scrollTo(top),\r\n toggleRowSelection: (row: D, selected?: boolean, ignoreSelectable?: boolean) => table.value?.toggleRowSelection(row, selected, ignoreSelectable)\r\n})\r\n\r\nprovide(X_ELEMENT_IN_TABLE, true)\r\n\r\nconst XTableColumn = defineComponent((props: XTableColumnProps<D>) => {\r\n return () => (\r\n <ElTableColumn\r\n fixed={props.fixed}\r\n label={props.label}\r\n prop={props.prop}\r\n type={props.type}\r\n width={props.width}\r\n columnKey={props.columnKey}\r\n >\r\n {{\r\n default: ({ row, $index }: { row: D, $index: number }) => props.content?.({ row, index: $index }),\r\n header: () => props.header?.({ column: { ...props } })\r\n }}\r\n </ElTableColumn>\r\n )\r\n}, { props: ['content', 'fixed', 'header', 'label', 'prop', 'selectable', 'type', 'width'] })\r\n</script>\r\n\r\n<template>\r\n <ElConfigProvider :locale=\"locale\">\r\n <ElTable\r\n ref=\"table\"\r\n v-bind=\"{\r\n data,\r\n height,\r\n rowClassName,\r\n rowStyle,\r\n cellClassName,\r\n cellStyle,\r\n showSummary,\r\n showOverflowTooltip,\r\n spanMethod,\r\n summaryMethod,\r\n size,\r\n fit,\r\n rowKey,\r\n border: border ?? tableConfig?.border,\r\n emptyText: emptyText ?? t('el.table.emptyText'),\r\n }\"\r\n @row-click=\"(row: D) => emit('rowClick', row)\"\r\n @row-dblclick=\"(row: D) => emit('rowDblclick', row)\"\r\n @selection-change=\"(rows: D[]) => emit('selectionChange', rows)\"\r\n @header-dragend=\"(newWidth, oldWidth, column) => emit('headerDragend', newWidth, oldWidth, column)\"\r\n >\r\n <XTableColumn\r\n v-for=\"column of columns\"\r\n v-bind=\"column\"\r\n />\r\n </ElTable>\r\n </ElConfigProvider>\r\n</template>\r\n"],"mappings":"kqBCyDA,IAAM,EAAO,EAEP,GAAA,EAAA,EAAA,QADgB,EAAA,EAAiB,EACX,MAEtB,GAAA,EAAA,EAAA,QAAgB,EAAA,EAAiB,IAAA,GAAU,CAC3C,CAAE,MAAA,EAAA,EAAA,WAAgB,EAAO,CAEzB,GAAA,EAAA,EAAA,gBAAuB,QAAQ,CAErC,EAAa,CACX,mBAAsB,EAAM,OAAO,gBAAgB,CACnD,qBAAwB,EAAM,OAAO,kBAAkB,CACvD,UAAW,EAAmC,IAAoB,EAAM,OAAO,SAAS,EAAS,EAAO,CACxG,cAAgB,GAAW,EAAM,OAAO,cAAc,EAAI,CAC1D,cAAgB,GAAiB,EAAM,OAAO,SAAS,EAAK,CAC5D,aAAe,GAAgB,EAAM,OAAO,SAAS,EAAI,CACzD,oBAAqB,EAAQ,EAAoB,IAA+B,EAAM,OAAO,mBAAmB,EAAK,EAAU,EAAgB,CAChJ,CAAC,EAEF,EAAA,EAAA,SAAQ,EAAA,EAAoB,GAAK,CAEjC,IAAM,GAAA,EAAA,EAAA,iBAAgC,QACpC,EAAA,EAAA,aAAO,EAAA,cAAA,CAAA,MAEI,EAAM,MAAK,MACX,EAAM,MAAK,KACZ,EAAM,KAAI,KACV,EAAM,KAAI,MACT,EAAM,MAAK,UACP,EAAM,UAAS,CAAA,CAGxB,SAAU,CAAE,MAAK,YAAyC,EAAM,UAAU,CAAE,MAAK,MAAO,EAAQ,CAAC,CACjG,WAAc,EAAM,SAAS,CAAE,OAAQ,CAAE,GAAG,EAAM,CAAG,CAAA,CAAC,CAG3D,CACA,CAAE,MAAO,CAAC,UAAW,QAAS,SAAU,QAAS,OAAQ,aAAc,OAAQ,QAAO,CAAG,CAAC,+DAkCxE,EAAA,iBAAA,CAAA,CA9BA,QAAA,EAAA,EAAA,OAAQ,EAAA,CAAM,CAAA,2BA6BrB,EAAA,EAAA,EAAA,cAAA,EAAA,EAAA,OAAA,EAAA,QAAA,EAAA,EAAA,EAAA,YAAA,SA3BJ,QAAJ,IAAI,SACe,EAAA,YAAe,EAAA,oBAAiB,EAAA,sBAAuB,EAAA,uBAAmB,EAAA,wBAAwB,EAAA,sBAAoB,EAAA,gCAAsB,EAAA,+BAA8B,EAAA,yBAAqB,EAAA,mBAAwB,EAAA,SAAe,EAAA,WAAc,EAAA,cAAyB,EAAA,SAAA,EAAA,EAAA,OAAU,EAAW,EAAE,iBAA4B,EAAA,YAAA,EAAA,EAAA,OAAa,EAAC,CAAA,qBAAA,GAiBhW,WAAS,AAAA,EAAA,KAAG,GAAW,EAAI,WAAa,EAAG,CAC3C,cAAY,AAAA,EAAA,KAAG,GAAW,EAAI,cAAgB,EAAG,CACjD,kBAAgB,AAAA,EAAA,KAAG,GAAc,EAAI,kBAAoB,EAAI,CAC7D,gBAAc,AAAA,EAAA,MAAG,EAAU,EAAU,IAAW,EAAI,gBAAkB,EAAU,EAAU,EAAM,8BAGtE,GAAA,EAAA,EAAA,WAAA,GAAA,EAAA,EAAA,EAAA,oBAEzB,EAAA,SAAA,MAAA,EAAA,EAAA,YAFiB,EAAA,QAAV,oDAEP,EAAA,EAAA,EAAA,EAAA,YAAA,CAAA,QAAA,GAAA,CADQ,EAAM,CAAA,KAAA,GAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Table-CDSvNzQX.js","names":[],"sources":["../../src/components/basic/Table.vue","../../src/components/basic/Table.vue"],"sourcesContent":["<script setup lang=\"tsx\" generic=\"D\">\r\nimport type { TableColumnCtx, TableProps } from 'element-plus'\r\nimport type { CSSProperties, VNode, VNodeChild } from 'vue'\r\n\r\nimport { ElConfigProvider, ElTable, ElTableColumn, useLocale } from 'element-plus'\r\nimport { defineComponent, inject, provide, useTemplateRef } from 'vue'\r\n\r\nimport { X_ELEMENT_CONFIG, X_ELEMENT_IN_TABLE, X_LOCALE_CONFIG } from '@/constants'\r\n\r\nexport interface XTableConfig {\r\n /**\r\n * 是否隐藏额外内容并在单元格悬停时使用 Tooltip 显示它们。这将影响全部列的展示\r\n * @default false\r\n */\r\n showOverflowTooltip?: boolean\r\n border?: boolean\r\n}\r\n\r\nexport interface XTableColumnProps<D> {\r\n content?: (scope: { index: number, row: D }) => VNodeChild\r\n fixed?: 'left' | 'right'\r\n header?: (scope: { column: XTableColumnProps<D> }) => VNodeChild\r\n label?: string\r\n prop?: string\r\n selectable?: (row: D, index: number) => boolean\r\n type?: 'index' | 'selection'\r\n width?: number\r\n columnKey?: string\r\n}\r\n\r\nexport interface XTableProps<D> {\r\n border?: TableProps<any>['border']\r\n cellClassName?: ((scope: { column: TableColumnCtx, columnIndex: number, row: D, rowIndex: number }) => string) | string\r\n cellStyle?: ((scope: { column: TableColumnCtx, columnIndex: number, row: D, rowIndex: number }) => CSSProperties) | CSSProperties\r\n columns?: XTableColumnProps<D>[]\r\n data?: D[]\r\n height?: TableProps<any>['height']\r\n emptyText?: TableProps<any>['emptyText']\r\n rowClassName?: ((scope: { row: D, rowIndex: number }) => string) | string\r\n rowStyle?: ((scope: { row: D, rowIndex: number }) => CSSProperties) | CSSProperties\r\n rowKey?: (scope: { row: D }) => string\r\n showOverflowTooltip?: TableProps<any>['showOverflowTooltip']\r\n showSummary?: TableProps<any>['showSummary']\r\n size?: TableProps<any>['size']\r\n fit?: TableProps<any>['fit']\r\n spanMethod?: (scope: { column: TableColumnCtx, columnIndex: number, row: D, rowIndex: number }) => number[] | undefined | { colspan: number, rowspan: number }\r\n summaryMethod?: (scope: { columns: TableColumnCtx[], data: D[] }) => (string | VNode)[]\r\n}\r\n\r\nexport interface XTableEvents<D> {\r\n headerDragend: [newWidth: number, oldWidth: number, column: TableColumnCtx]\r\n rowClick: [row: D]\r\n rowDblclick: [row: D]\r\n selectionChange: [rows: D[]]\r\n}\r\n\r\nconst { columns, data, showOverflowTooltip = undefined, border = undefined, fit = true } = defineProps<XTableProps<D>>()\r\nconst emit = defineEmits<XTableEvents<D>>()\r\nconst config = inject(X_ELEMENT_CONFIG)\r\nconst tableConfig = config?.table\r\n\r\nconst locale = inject(X_LOCALE_CONFIG, undefined)\r\nconst { t } = useLocale(locale)\r\n\r\nconst table = useTemplateRef('table')\r\n\r\ndefineExpose({\r\n clearSelection: () => table.value?.clearSelection(),\r\n getSelectionRows: () => table.value?.getSelectionRows(),\r\n scrollTo: (options: number | ScrollToOptions, yCoord?: number) => table.value?.scrollTo(options, yCoord),\r\n setCurrentRow: (row: D) => table.value?.setCurrentRow(row),\r\n setScrollLeft: (left: number) => table.value?.scrollTo(left),\r\n setScrollTop: (top: number) => table.value?.scrollTo(top),\r\n toggleRowSelection: (row: D, selected?: boolean, ignoreSelectable?: boolean) => table.value?.toggleRowSelection(row, selected, ignoreSelectable)\r\n})\r\n\r\nprovide(X_ELEMENT_IN_TABLE, true)\r\n\r\nconst XTableColumn = defineComponent((props: XTableColumnProps<D>) => {\r\n return () => (\r\n <ElTableColumn\r\n fixed={props.fixed}\r\n label={props.label}\r\n prop={props.prop}\r\n type={props.type}\r\n width={props.width}\r\n columnKey={props.columnKey}\r\n >\r\n {{\r\n default: ({ row, $index }: { row: D, $index: number }) => props.content?.({ row, index: $index }),\r\n header: () => props.header?.({ column: { ...props } })\r\n }}\r\n </ElTableColumn>\r\n )\r\n}, { props: ['content', 'fixed', 'header', 'label', 'prop', 'selectable', 'type', 'width'] })\r\n</script>\r\n\r\n<template>\r\n <ElConfigProvider :locale=\"locale\">\r\n <ElTable\r\n ref=\"table\"\r\n v-bind=\"{\r\n data,\r\n height,\r\n rowClassName,\r\n rowStyle,\r\n cellClassName,\r\n cellStyle,\r\n showSummary,\r\n showOverflowTooltip,\r\n spanMethod,\r\n summaryMethod,\r\n size,\r\n fit,\r\n rowKey,\r\n border: border ?? tableConfig?.border,\r\n emptyText: emptyText ?? t('el.table.emptyText'),\r\n }\"\r\n @row-click=\"(row: D) => emit('rowClick', row)\"\r\n @row-dblclick=\"(row: D) => emit('rowDblclick', row)\"\r\n @selection-change=\"(rows: D[]) => emit('selectionChange', rows)\"\r\n @header-dragend=\"(newWidth, oldWidth, column) => emit('headerDragend', newWidth, oldWidth, column)\"\r\n >\r\n <XTableColumn\r\n v-for=\"column of columns\"\r\n v-bind=\"column\"\r\n />\r\n </ElTable>\r\n </ElConfigProvider>\r\n</template>\r\n","<script setup lang=\"tsx\" generic=\"D\">\r\nimport type { TableColumnCtx, TableProps } from 'element-plus'\r\nimport type { CSSProperties, VNode, VNodeChild } from 'vue'\r\n\r\nimport { ElConfigProvider, ElTable, ElTableColumn, useLocale } from 'element-plus'\r\nimport { defineComponent, inject, provide, useTemplateRef } from 'vue'\r\n\r\nimport { X_ELEMENT_CONFIG, X_ELEMENT_IN_TABLE, X_LOCALE_CONFIG } from '@/constants'\r\n\r\nexport interface XTableConfig {\r\n /**\r\n * 是否隐藏额外内容并在单元格悬停时使用 Tooltip 显示它们。这将影响全部列的展示\r\n * @default false\r\n */\r\n showOverflowTooltip?: boolean\r\n border?: boolean\r\n}\r\n\r\nexport interface XTableColumnProps<D> {\r\n content?: (scope: { index: number, row: D }) => VNodeChild\r\n fixed?: 'left' | 'right'\r\n header?: (scope: { column: XTableColumnProps<D> }) => VNodeChild\r\n label?: string\r\n prop?: string\r\n selectable?: (row: D, index: number) => boolean\r\n type?: 'index' | 'selection'\r\n width?: number\r\n columnKey?: string\r\n}\r\n\r\nexport interface XTableProps<D> {\r\n border?: TableProps<any>['border']\r\n cellClassName?: ((scope: { column: TableColumnCtx, columnIndex: number, row: D, rowIndex: number }) => string) | string\r\n cellStyle?: ((scope: { column: TableColumnCtx, columnIndex: number, row: D, rowIndex: number }) => CSSProperties) | CSSProperties\r\n columns?: XTableColumnProps<D>[]\r\n data?: D[]\r\n height?: TableProps<any>['height']\r\n emptyText?: TableProps<any>['emptyText']\r\n rowClassName?: ((scope: { row: D, rowIndex: number }) => string) | string\r\n rowStyle?: ((scope: { row: D, rowIndex: number }) => CSSProperties) | CSSProperties\r\n rowKey?: (scope: { row: D }) => string\r\n showOverflowTooltip?: TableProps<any>['showOverflowTooltip']\r\n showSummary?: TableProps<any>['showSummary']\r\n size?: TableProps<any>['size']\r\n fit?: TableProps<any>['fit']\r\n spanMethod?: (scope: { column: TableColumnCtx, columnIndex: number, row: D, rowIndex: number }) => number[] | undefined | { colspan: number, rowspan: number }\r\n summaryMethod?: (scope: { columns: TableColumnCtx[], data: D[] }) => (string | VNode)[]\r\n}\r\n\r\nexport interface XTableEvents<D> {\r\n headerDragend: [newWidth: number, oldWidth: number, column: TableColumnCtx]\r\n rowClick: [row: D]\r\n rowDblclick: [row: D]\r\n selectionChange: [rows: D[]]\r\n}\r\n\r\nconst { columns, data, showOverflowTooltip = undefined, border = undefined, fit = true } = defineProps<XTableProps<D>>()\r\nconst emit = defineEmits<XTableEvents<D>>()\r\nconst config = inject(X_ELEMENT_CONFIG)\r\nconst tableConfig = config?.table\r\n\r\nconst locale = inject(X_LOCALE_CONFIG, undefined)\r\nconst { t } = useLocale(locale)\r\n\r\nconst table = useTemplateRef('table')\r\n\r\ndefineExpose({\r\n clearSelection: () => table.value?.clearSelection(),\r\n getSelectionRows: () => table.value?.getSelectionRows(),\r\n scrollTo: (options: number | ScrollToOptions, yCoord?: number) => table.value?.scrollTo(options, yCoord),\r\n setCurrentRow: (row: D) => table.value?.setCurrentRow(row),\r\n setScrollLeft: (left: number) => table.value?.scrollTo(left),\r\n setScrollTop: (top: number) => table.value?.scrollTo(top),\r\n toggleRowSelection: (row: D, selected?: boolean, ignoreSelectable?: boolean) => table.value?.toggleRowSelection(row, selected, ignoreSelectable)\r\n})\r\n\r\nprovide(X_ELEMENT_IN_TABLE, true)\r\n\r\nconst XTableColumn = defineComponent((props: XTableColumnProps<D>) => {\r\n return () => (\r\n <ElTableColumn\r\n fixed={props.fixed}\r\n label={props.label}\r\n prop={props.prop}\r\n type={props.type}\r\n width={props.width}\r\n columnKey={props.columnKey}\r\n >\r\n {{\r\n default: ({ row, $index }: { row: D, $index: number }) => props.content?.({ row, index: $index }),\r\n header: () => props.header?.({ column: { ...props } })\r\n }}\r\n </ElTableColumn>\r\n )\r\n}, { props: ['content', 'fixed', 'header', 'label', 'prop', 'selectable', 'type', 'width'] })\r\n</script>\r\n\r\n<template>\r\n <ElConfigProvider :locale=\"locale\">\r\n <ElTable\r\n ref=\"table\"\r\n v-bind=\"{\r\n data,\r\n height,\r\n rowClassName,\r\n rowStyle,\r\n cellClassName,\r\n cellStyle,\r\n showSummary,\r\n showOverflowTooltip,\r\n spanMethod,\r\n summaryMethod,\r\n size,\r\n fit,\r\n rowKey,\r\n border: border ?? tableConfig?.border,\r\n emptyText: emptyText ?? t('el.table.emptyText'),\r\n }\"\r\n @row-click=\"(row: D) => emit('rowClick', row)\"\r\n @row-dblclick=\"(row: D) => emit('rowDblclick', row)\"\r\n @selection-change=\"(rows: D[]) => emit('selectionChange', rows)\"\r\n @header-dragend=\"(newWidth, oldWidth, column) => emit('headerDragend', newWidth, oldWidth, column)\"\r\n >\r\n <XTableColumn\r\n v-for=\"column of columns\"\r\n v-bind=\"column\"\r\n />\r\n </ElTable>\r\n </ElConfigProvider>\r\n</template>\r\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ECyDA,IAAM,IAAO,GAEP,IADS,EAAO,EAAiB,EACX,OAEtB,IAAS,EAAO,GAAiB,KAAA,EAAU,EAC3C,EAAE,SAAM,EAAU,EAAO,EAEzB,IAAQ,EAAe,QAAQ;AAYrC,EAVA,EAAa;GACX,sBAAsB,EAAM,OAAO,gBAAgB;GACnD,wBAAwB,EAAM,OAAO,kBAAkB;GACvD,WAAW,GAAmC,MAAoB,EAAM,OAAO,SAAS,GAAS,EAAO;GACxG,gBAAgB,MAAW,EAAM,OAAO,cAAc,EAAI;GAC1D,gBAAgB,MAAiB,EAAM,OAAO,SAAS,EAAK;GAC5D,eAAe,MAAgB,EAAM,OAAO,SAAS,EAAI;GACzD,qBAAqB,GAAQ,GAAoB,MAA+B,EAAM,OAAO,mBAAmB,GAAK,GAAU,EAAgB;GAChJ,CAAC,EAEF,EAAQ,GAAoB,GAAK;EAEjC,IAAM,IAAe,mBAAiB,YAC7B,EAAA,GAAA;GAAA,OAEI,EAAM;GAAK,OACX,EAAM;GAAK,MACZ,EAAM;GAAI,MACV,EAAM;GAAI,OACT,EAAM;GAAK,WACP,EAAM;GAAS,EAAA;GAGxB,UAAU,EAAE,QAAK,gBAAyC,EAAM,UAAU;IAAE;IAAK,OAAO;IAAQ,CAAC;GACjG,cAAc,EAAM,SAAS,EAAE,QAAQ,EAAE,GAAG,GAAM,EAAG,CAAA;GAAC,CAG3D,EACA,EAAE,OAAO;GAAC;GAAW;GAAS;GAAU;GAAS;GAAQ;GAAc;GAAQ;GAAO,EAAG,CAAC;yBAI3F,EA8BmB,EAAA,EAAA,EAAA,EA9BA,QAAQ,EAAA,EAAA,EAAM,EAAA;oBA6BrB,CA5BV,EA4BU,EAAA,EAAA,EA5BV,EA4BU;aA3BJ;IAAJ,KAAI;;UACe,EAAA;YAAe,EAAA;kBAAiB,EAAA;cAAuB,EAAA;mBAAmB,EAAA;eAAwB,EAAA;iBAAoB,EAAA;yBAAsB,EAAA;gBAA8B,EAAA;mBAAqB,EAAA;UAAwB,EAAA;SAAe,EAAA;YAAc,EAAA;YAAyB,EAAA,UAAU,EAAA,EAAW,EAAE;eAA4B,EAAA,aAAa,EAAA,EAAC,CAAA,qBAAA;;IAiBhW,YAAS,AAAA,EAAA,QAAG,MAAW,EAAI,YAAa,EAAG;IAC3C,eAAY,AAAA,EAAA,QAAG,MAAW,EAAI,eAAgB,EAAG;IACjD,mBAAgB,AAAA,EAAA,QAAG,MAAc,EAAI,mBAAoB,EAAI;IAC7D,iBAAc,AAAA,EAAA,QAAG,GAAU,GAAU,MAAW,EAAI,iBAAkB,GAAU,GAAU,EAAM;;qBAGtE,EAAA,EAAA,GAAA,EAD3B,EAGE,GAAA,MAAA,EAFiB,EAAA,UAAV,YADT,EAGE,EAAA,EAAA,EAHF,EAGE,EAAA,SAAA,IAAA,EADQ,EAAM,EAAA,MAAA,GAAA"}
|