@kp-ui/lowcode 1.0.95 → 1.0.97

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.
Files changed (49) hide show
  1. package/package.json +2 -2
  2. package/src/components/form-designer/form-widget/container-widget/data-table-widget.vue.js +13 -12
  3. package/src/components/form-designer/form-widget/container-widget/data-table-widget.vue.js.map +1 -1
  4. package/src/components/form-designer/form-widget/container-widget/data-table-widget.vue2.js.map +1 -1
  5. package/src/components/form-designer/form-widget/field-widget/cascader-widget.vue.js +1 -1
  6. package/src/components/form-designer/form-widget/field-widget/cascader-widget.vue.js.map +1 -1
  7. package/src/components/form-designer/form-widget/field-widget/date-range-widget.vue.js +8 -8
  8. package/src/components/form-designer/form-widget/field-widget/date-range-widget.vue.js.map +1 -1
  9. package/src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue.js +1 -1
  10. package/src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue.js.map +1 -1
  11. package/src/components/form-designer/form-widget/field-widget/treeSelect-widget.vue.js +1 -1
  12. package/src/components/form-designer/form-widget/field-widget/treeSelect-widget.vue.js.map +1 -1
  13. package/src/components/form-designer/form-widget/index.vue.js +1 -1
  14. package/src/components/form-designer/form-widget/index.vue.js.map +1 -1
  15. package/src/components/form-designer/index.vue.js +1 -1
  16. package/src/components/form-designer/index.vue.js.map +1 -1
  17. package/src/components/form-designer/setting-panel/property-editor/actionColumnPosition-editor.vue.js +12 -13
  18. package/src/components/form-designer/setting-panel/property-editor/actionColumnPosition-editor.vue.js.map +1 -1
  19. package/src/components/form-designer/setting-panel/property-editor/container-sub-form/sub-form-labelAlign-editor.vue.js +13 -14
  20. package/src/components/form-designer/setting-panel/property-editor/container-sub-form/sub-form-labelAlign-editor.vue.js.map +1 -1
  21. package/src/components/form-designer/setting-panel/property-editor/container-vf-drawer/vf-drawer-direction-editor.vue.js +5 -6
  22. package/src/components/form-designer/setting-panel/property-editor/container-vf-drawer/vf-drawer-direction-editor.vue.js.map +1 -1
  23. package/src/components/form-designer/setting-panel/property-editor/labelAlign-editor.vue.js +1 -1
  24. package/src/components/form-designer/setting-panel/property-editor/labelAlign-editor.vue.js.map +1 -1
  25. package/src/components/form-designer/toolbar-panel/index.vue.js +2 -2
  26. package/src/components/form-designer/toolbar-panel/index.vue2.js.map +1 -1
  27. package/src/components/form-render/container-item/data-table-item.vue.js +2 -1
  28. package/src/components/form-render/container-item/data-table-item.vue.js.map +1 -1
  29. package/src/components/form-render/container-item/grid-sub-form-item.vue.js +1 -1
  30. package/src/components/form-render/container-item/grid-sub-form-item.vue.js.map +1 -1
  31. package/src/components/form-render/container-item/sub-form-item.vue.js +5 -2
  32. package/src/components/form-render/container-item/sub-form-item.vue.js.map +1 -1
  33. package/src/components/form-render/container-item/vf-collapse-item.vue.js +1 -1
  34. package/src/components/form-render/container-item/vf-collapse-item.vue.js.map +1 -1
  35. package/src/components/form-render/dynamic-drawer.vue.js +2 -2
  36. package/src/components/form-render/dynamic-drawer.vue.js.map +1 -1
  37. package/src/components/form-render/dynamic-drawer.vue2.js +2 -0
  38. package/src/components/form-render/dynamic-drawer.vue2.js.map +1 -0
  39. package/src/components/form-render/index.vue.js +3 -2
  40. package/src/components/form-render/index.vue.js.map +1 -1
  41. package/src/components/public/QuillEditor/index.vue.js +13 -15
  42. package/src/components/public/QuillEditor/index.vue.js.map +1 -1
  43. package/src/mixins/useDataTableMixin.js +4 -0
  44. package/src/mixins/useDataTableMixin.js.map +1 -1
  45. package/stats.html +1 -1
  46. package/styles/style.css +8 -2
  47. package/types/install.d.ts +26 -0
  48. package/src/components/form-designer/setting-panel/property-editor/actionColumnPosition-editor.vue2.js +0 -2
  49. package/src/components/form-designer/setting-panel/property-editor/actionColumnPosition-editor.vue2.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useDataTableMixin.js","sources":["../../../src/mixins/useDataTableMixin.jsx"],"sourcesContent":["import { omit, isEmpty, isArray } from 'lodash-es';\nimport { fmtHttpParams } from '@/utils/request/fmtHttpParams';\nimport { TpfConfirm } from '@/hooks/TpfConfirm';\nimport RenderBodyCell from '@/components/CustomRender/components/RenderBodyCell.tsx';\nimport { executeFunction } from '@/utils/executeFunction';\nimport ActionButtonListRender from '@/components/public/ActionButtonListRender.vue';\nexport default {\n data() {\n return {\n selectedRowInfo: { selectedRowKeys: [], selectedRows: [] },\n selectRow: {},\n loading: false\n };\n },\n components: {\n RenderBodyCell\n },\n inject: ['refList'],\n computed: {\n columns() {\n const leftFixedColumns = [];\n const optins = this.widget?.options ?? {};\n if (optins.showIndex) {\n leftFixedColumns.push({\n title: '序号',\n align: 'left',\n width: 90,\n fixed: 'left',\n maxWidth: 100,\n field: 'dataIndex',\n customRender: this.customRenderIndex\n });\n }\n const centerColumns = optins.tableColumns\n .filter(item => item.show)\n .map(item => ({\n ...item,\n ...this.handleColumnItem(item)\n }));\n const rightFixedColumns = [];\n if (optins.showButtonsColumn) {\n const operationButtons = optins.operationButtons ?? [];\n let _this = this;\n rightFixedColumns.push({\n fixed: 'right',\n align: 'center',\n title: optins.buttonsColumnTitle,\n width: optins.buttonsColumnWidth,\n customRender(scope) {\n return (\n <ActionButtonListRender\n buttonList={operationButtons}\n flex=\"center\"\n scope={scope}\n ctx={_this}\n />\n );\n }\n });\n }\n\n let bodyCell = {};\n\n // 把customRender渲染成 bodyCell 插槽\n let _columns = [...leftFixedColumns, ...centerColumns, ...rightFixedColumns].map(\n item => {\n if (item.bodyCell) {\n bodyCell[item.dataIndex] = item.bodyCell;\n delete item.customRender;\n }\n return item;\n }\n );\n\n return {\n columns: _columns,\n bodyCell\n };\n },\n tableHeight() {\n return parseFloat(this.widget.options.tableHeight || 0);\n },\n // rowClassName() {\n // if (this.widget.options.stripe) {\n // return (_record, index) => (index % 2 === 1 ? 'table-striped' : null);\n // }\n // return null;\n // },\n customClass() {\n return this.widget.options.customClass || '';\n },\n widgetSize() {\n return this.widget.options.tableSize || 'default';\n },\n lineHeight() {\n return this.widget.options.lineHeight || 40;\n },\n fmtPagination() {\n const { showPagination } = this.widget.options;\n if (!showPagination) return false;\n return {\n ...this.widget.options.pagination,\n showTotal: total => `共 ${total} 条`\n };\n }\n },\n watch: {\n 'widget.options.dataSource': {\n handler(newVal) {\n if (newVal && newVal.length) {\n console.log('DataTable dataSource changed:', newVal);\n this.widget.options.dataSource = newVal;\n console.log(this.getFormRef());\n this.getFormRef()?.setTableValue(this.widget.options.name, newVal);\n }\n },\n deep: true\n }\n },\n methods: {\n isShowBodyCell(dataIndex) {\n return this.columns?.bodyCell?.[dataIndex];\n },\n handleHidden() {\n const { onHidden, hidden } = this.widget.options;\n if (hidden) return true;\n if (onHidden) {\n const onHiddenFn = new Function(onHidden);\n return onHiddenFn.call(this);\n }\n return false;\n },\n rowClassName(record) {\n const { rowKey, colorRow } = this.widget.options;\n if (!colorRow) return '';\n return this.selectRow[rowKey] === record[rowKey]\n ? 'colorRowClassName surely-table-row-selected'\n : '';\n },\n handleResizeColumn(w, col) {\n const { tableColumns } = this.widget.options;\n const newTableColumns = tableColumns.map(item => {\n if (item.dataIndex === col.dataIndex) {\n item.width = w;\n }\n return { ...item };\n });\n this.setTableColumns(newTableColumns);\n },\n disabledClick() {\n const { hasRowSelection } = this.widget.options.rowSelection;\n if (hasRowSelection) {\n return isEmpty(this.selectedRowInfo.selectedRowKeys);\n }\n return isEmpty(this.selectRow);\n },\n getSelectedRowKeys() {\n return this.selectedRowInfo.selectedRowKeys;\n },\n getSelectedRows() {\n return this.selectedRowInfo.getSelectedRows;\n },\n getTableColumns() {\n return this.widget.options.tableColumns;\n },\n setTableColumns(list) {\n this.widget.options.tableColumns = list;\n return;\n },\n async delSelectRow(delKeys) {\n await TpfConfirm({ content: '确定删除选中的数据吗' });\n delKeys = delKeys || this.selectedRowInfo.selectedRowKeys;\n if (!delKeys.length) return;\n const { rowKey } = this.widget.options;\n const data = this.getDataSource();\n const newList = data.filter(item => !delKeys?.includes(item[rowKey]));\n this.setDataSource(newList);\n\n this.$message.success('操作成功');\n },\n\n getPagination() {\n return this.widget.options.pagination;\n },\n /**\n * 设置表格分页\n * @param pagination\n */\n setPagination(pagination) {\n if (pagination.page !== undefined) {\n this.widget.options.pagination.current = pagination.page;\n }\n\n if (pagination.pageSize !== undefined) {\n this.widget.options.pagination.pageSize = pagination.pageSize;\n }\n\n if (pagination.total !== undefined) {\n this.widget.options.pagination.total = pagination.total;\n }\n },\n setDataSource(list) {\n list = list || [];\n this.selectedRowInfo = { selectedRowKeys: [], selectedRows: [] };\n this.selectRowe = {};\n const val = isArray(list) ? list : [list];\n console.log('setDataSource: ', val);\n this.getFormRef()?.setTableValue(this.widget.options.name, val);\n // this.widget.options.dataSource = [...val];\n },\n setValue(list) {\n console.log('list: ', list);\n this.setDataSource(list);\n },\n setRowDataSource(scope, value) {\n this.getFormRef()?.setTableRowDataValue(this.widget.options.name, scope, value);\n },\n getDataSource() {\n return this.getFormRef()?.getTableValue(this.widget.options.name) || [];\n },\n getValue() {\n return this.getDataSource();\n },\n async loadDataTableDataSource() {\n if (!this.widget.options.dsEnabled) {\n return;\n }\n setTimeout(async () => {\n const ops = this.widget.options;\n if (ops.dsEnabled && ops.http.url) {\n this.loading = true;\n const res = await fmtHttpParams.call(this, ops);\n this.setPagination(res);\n this.setDataSource(res.list);\n this.loading = false;\n }\n }, 500);\n },\n handleCustomRow(record) {\n const { customRow, colorRow } = this.widget.options;\n const { hasRowSelection } = this.widget.options.rowSelection;\n // if (!customRow) return {};\n return {\n onClick: event => {\n if (colorRow) {\n this.selectRow = record;\n }\n if (hasRowSelection) {\n this.selectTableRow(record);\n }\n const customFn = new Function('record', 'event', customRow.onClick);\n customFn.call(this, record, event);\n },\n onDblclick: event => {\n const customFn = new Function('record', 'event', customRow.onDblclick);\n customFn.call(this, record, event);\n },\n onMouseenter: event => {\n const customFn = new Function('record', 'event', customRow.onMouseenter);\n customFn.call(this, record, event);\n },\n onMouseleave: event => {\n const customFn = new Function('record', 'event', customRow.onMouseleave);\n customFn.call(this, record, event);\n }\n };\n },\n selectTableRow(record) {\n const rowKey = this.widget.options.rowKey;\n const rowKeys = this.selectedRowInfo.selectedRowKeys;\n console.log(this.selectedRowInfo.selectedRowKeys);\n\n if (rowKeys.includes(record[rowKey])) {\n this.selectedRowInfo.selectedRowKeys.splice(rowKeys.indexOf(record[rowKey]), 1);\n } else {\n this.selectedRowInfo.selectedRowKeys.push(record[rowKey]);\n }\n },\n // 处理列配置\n handleColumnItem(item) {\n const res = omit(item, ['customRender']);\n const customRenderFn = item.customRender;\n item.minWidth = 50;\n item.maxWidth = 1200;\n if (item.isAutoWidth) {\n item.width = null;\n delete item.width;\n } else {\n item.width = isNaN(Number(item.width)) ? item.width : Number(item.width);\n }\n if (!customRenderFn) return item;\n\n return {\n ...res,\n bodyCell: scope => {\n return executeFunction({\n functionBody: customRenderFn,\n params: scope,\n context: this,\n errorCallback: error => {\n console.error('Custom render error:', error);\n }\n });\n }\n };\n },\n getOperationButtonLabel(buttonConfig, rowIndex, row) {\n const { onGetOperationButtonLabel } = this.widget.options;\n if (!!onGetOperationButtonLabel) {\n const customFn = new Function(\n 'buttonConfig',\n 'rowIndex',\n 'row',\n onGetOperationButtonLabel\n );\n return customFn.call(this, buttonConfig, rowIndex, row);\n } else {\n return buttonConfig.label;\n }\n },\n // 处理操作按钮点击\n async handleOperationButtonClick(btnName, rowIndex, row, scope, ob) {\n this.skipSelectionChangeEvent = true;\n\n try {\n if (ob.onClick) {\n await executeFunction({\n functionBody: ob.onClick,\n params: { record: row, index: rowIndex, column: scope.column, btn: ob },\n context: this\n });\n return;\n }\n\n const { onOperationButtonClick } = this.widget.options;\n if (onOperationButtonClick) {\n await executeFunction({\n functionBody: onOperationButtonClick,\n params: { buttonName: btnName, rowIndex, row },\n context: this\n });\n } else {\n this.dispatch('VFormRender', 'operationButtonClick', [\n this,\n btnName,\n rowIndex,\n row\n ]);\n }\n } finally {\n this.skipSelectionChangeEvent = false;\n }\n },\n showOperationButton(buttonConfig, rowIndex, row) {\n const { onHideOperationButton } = this.widget.options;\n if (!!onHideOperationButton) {\n const customFn = new Function(\n 'buttonConfig',\n 'rowIndex',\n 'row',\n onHideOperationButton\n );\n return !!customFn.call(this, buttonConfig, rowIndex, row);\n } else {\n return !buttonConfig.hidden;\n }\n },\n disableOperationButton(buttonConfig, rowIndex, row) {\n const { onDisableOperationButton } = this.widget.options;\n if (!!onDisableOperationButton) {\n const customFn = new Function(\n 'buttonConfig',\n 'rowIndex',\n 'row',\n onDisableOperationButton\n );\n return customFn.call(this, buttonConfig, rowIndex, row);\n } else {\n return buttonConfig.disabled;\n }\n },\n customRenderIndex({ index }) {\n return index + 1;\n },\n handleCurrentPageChange(currentPage) {\n this.currentPage = currentPage;\n // if (!!this.widget.options.dsEnabled && !!this.widget.options.dsName) {\n // this.loadDataFromDS();\n // }\n\n const { onCurrentPageChange } = this.widget.options;\n\n if (!!onCurrentPageChange) {\n const customFn = new Function('pageSize', 'currentPage', onCurrentPageChange);\n customFn.call(this, this.pageSize, currentPage);\n } else {\n this.dispatch('VFormRender', 'dataTablePageChange', [\n this,\n this.pageSize,\n currentPage\n ]);\n }\n },\n getFormRef() {\n /* 获取VFrom引用,必须在VForm组件created之后方可调用 */\n return this.refList['v_form_ref'];\n },\n handlePageSizeChange(pageSize) {\n this.pageSize = pageSize;\n // if (!!this.widget.options.dsEnabled && !!this.widget.options.dsName) {\n // this.loadDataFromDS();\n // }\n const { onPageSizeChange } = this.widget.options;\n if (!!onPageSizeChange) {\n const customFn = new Function('pageSize', 'currentPage', onPageSizeChange);\n customFn.call(this, pageSize, this.currentPage);\n } else {\n this.dispatch('VFormRender', 'dataTablePageSizeChange', [\n this,\n pageSize,\n this.currentPage\n ]);\n }\n },\n handleTablePageChange(pagination, filters, sorter, { currentDataSource }) {\n const fn = this.widget.options.onTableChange;\n this.widget.options.pagination.current = pagination.current;\n this.widget.options.pagination.pageSize = pagination.pageSize;\n if (fn) {\n const changeFunc = new Function(\n 'pagination',\n 'filters',\n 'sorter',\n 'currentDataSource',\n fn\n );\n changeFunc.call(this, pagination, filters, sorter, { currentDataSource });\n }\n this.loadDataTableDataSource();\n },\n handleRowSelection() {\n const info = this.widget.options.rowSelection;\n if (!info.hasRowSelection) {\n return undefined;\n }\n return {\n ...omit(info, ['onChange']),\n onChange: (selectedRowKeys, selectedRows) => {\n this.selectedRowInfo = { selectedRowKeys, selectedRows };\n const rcFunc = new Function('selectedRowKeys', 'selectedRows', info.onChange);\n rcFunc.call(this, selectedRowKeys, selectedRows);\n }\n };\n }\n }\n};\n"],"names":["useDataTableMixin","data","selectedRowInfo","selectedRowKeys","selectedRows","selectRow","loading","components","RenderBodyCell","inject","computed","columns","leftFixedColumns","optins","_a","widget","options","showIndex","push","title","align","width","fixed","maxWidth","field","customRender","customRenderIndex","centerColumns","tableColumns","filter","item","show","map","handleColumnItem","rightFixedColumns","showButtonsColumn","operationButtons","_this","buttonsColumnTitle","buttonsColumnWidth","scope","_createVNode","ActionButtonListRender","bodyCell","dataIndex","tableHeight","parseFloat","customClass","widgetSize","tableSize","lineHeight","fmtPagination","showPagination","pagination","showTotal","total","watch","handler","newVal","length","console","log","dataSource","getFormRef","setTableValue","name","deep","methods","isShowBodyCell","_b","handleHidden","onHidden","hidden","Function","call","rowClassName","record","rowKey","colorRow","handleResizeColumn","w","col","newTableColumns","setTableColumns","disabledClick","hasRowSelection","rowSelection","isEmpty","getSelectedRowKeys","getSelectedRows","getTableColumns","list","delSelectRow","delKeys","TpfConfirm","content","newList","getDataSource","includes","setDataSource","$message","success","getPagination","setPagination","page","undefined","current","pageSize","selectRowe","val","isArray","setValue","setRowDataSource","value","setTableRowDataValue","getTableValue","getValue","loadDataTableDataSource","dsEnabled","setTimeout","ops","http","url","res","fmtHttpParams","handleCustomRow","customRow","onClick","event","selectTableRow","onDblclick","customFn","onMouseenter","onMouseleave","rowKeys","splice","indexOf","omit","customRenderFn","minWidth","isAutoWidth","isNaN","Number","executeFunction","functionBody","params","context","errorCallback","error","getOperationButtonLabel","buttonConfig","rowIndex","row","onGetOperationButtonLabel","label","handleOperationButtonClick","btnName","ob","skipSelectionChangeEvent","index","column","btn","onOperationButtonClick","buttonName","dispatch","showOperationButton","onHideOperationButton","disableOperationButton","onDisableOperationButton","disabled","handleCurrentPageChange","currentPage","onCurrentPageChange","refList","handlePageSizeChange","onPageSizeChange","handleTablePageChange","filters","sorter","currentDataSource","fn","onTableChange","handleRowSelection","info","onChange"],"mappings":";;;;;;;AAMA,MAAAA,IAAe;AAAA,EACXC,OAAO;AACH,WAAO;AAAA,MACHC,iBAAiB;AAAA,QAAEC,iBAAiB,CAAA;AAAA,QAAIC,cAAc,CAAA;AAAA;MACtDC,WAAW,CAAA;AAAA,MACXC,SAAS;AAAA;EAEjB;AAAA,EACAC,YAAY;AAAA,IACRC,gBAAAA;AAAAA;EAEJC,QAAQ,CAAC,SAAS;AAAA,EAClBC,UAAU;AAAA,IACNC,UAAU;;AACN,YAAMC,IAAmB,CAAA,GACnBC,MAASC,IAAA,KAAKC,WAAL,gBAAAD,EAAaE,YAAW,CAAA;AACvC,MAAIH,EAAOI,aACPL,EAAiBM,KAAK;AAAA,QAClBC,OAAO;AAAA,QACPC,OAAO;AAAA,QACPC,OAAO;AAAA,QACPC,OAAO;AAAA,QACPC,UAAU;AAAA,QACVC,OAAO;AAAA,QACPC,cAAc,KAAKC;AAAAA,MACvB,CAAC;AAEL,YAAMC,IAAgBd,EAAOe,aACxBC,OAAOC,CAAAA,MAAQA,EAAKC,IAAI,EACxBC,IAAIF,CAAAA,OAAS;AAAA,QACV,GAAGA;AAAAA,QACH,GAAG,KAAKG,iBAAiBH,CAAI;AAAA,MACjC,EAAE,GACAI,IAAoB,CAAA;AAC1B,UAAIrB,EAAOsB,mBAAmB;AAC1B,cAAMC,IAAmBvB,EAAOuB,oBAAoB,CAAA;AACpD,YAAIC,IAAQ;AACZH,QAAAA,EAAkBhB,KAAK;AAAA,UACnBI,OAAO;AAAA,UACPF,OAAO;AAAA,UACPD,OAAON,EAAOyB;AAAAA,UACdjB,OAAOR,EAAO0B;AAAAA,UACdd,aAAae,GAAO;AAChB,mBAAAC,EAAAC,GAAA;AAAA,cAAA,YAEoBN;AAAAA,cAAgB,MAAA;AAAA,cAAA,OAErBI;AAAAA,cAAK,KACPH;AAAAA,YAAK,GAAA,IAAA;AAAA,UAGtB;AAAA,QACJ,CAAC;AAAA,MACL;AAEA,UAAIM,IAAW,CAAA;AAaf,aAAO;AAAA,QACHhC,SAXW,CAAC,GAAGC,GAAkB,GAAGe,GAAe,GAAGO,CAAiB,EAAEF,IACzEF,CAAAA,OACQA,EAAKa,aACLA,EAASb,EAAKc,SAAS,IAAId,EAAKa,UAChC,OAAOb,EAAKL,eAETK,EAEf;AAAA,QAIIa,UAAAA;AAAAA;IAER;AAAA,IACAE,cAAc;AACV,aAAOC,WAAW,KAAK/B,OAAOC,QAAQ6B,eAAe,CAAC;AAAA,IAC1D;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOAE,cAAc;AACV,aAAO,KAAKhC,OAAOC,QAAQ+B,eAAe;AAAA,IAC9C;AAAA,IACAC,aAAa;AACT,aAAO,KAAKjC,OAAOC,QAAQiC,aAAa;AAAA,IAC5C;AAAA,IACAC,aAAa;AACT,aAAO,KAAKnC,OAAOC,QAAQkC,cAAc;AAAA,IAC7C;AAAA,IACAC,gBAAgB;AACZ,YAAM;AAAA,QAAEC,gBAAAA;AAAAA,MAAe,IAAI,KAAKrC,OAAOC;AACvC,aAAKoC,IACE;AAAA,QACH,GAAG,KAAKrC,OAAOC,QAAQqC;AAAAA,QACvBC,WAAWC,CAAAA,MAAS,KAAKA,CAAK;AAAA,UAHN;AAAA,IAKhC;AAAA;EAEJC,OAAO;AAAA,IACH,6BAA6B;AAAA,MACzBC,QAAQC,GAAQ;;AACZ,QAAIA,KAAUA,EAAOC,WACjBC,QAAQC,IAAI,iCAAiCH,CAAM,GACnD,KAAK3C,OAAOC,QAAQ8C,aAAaJ,GACjCE,QAAQC,IAAI,KAAKE,YAAY,IAC7BjD,IAAA,KAAKiD,WAAU,MAAf,QAAAjD,EAAmBkD,cAAc,KAAKjD,OAAOC,QAAQiD,MAAMP;AAAAA,MAEnE;AAAA,MACAQ,MAAM;AAAA,IACV;AAAA;EAEJC,SAAS;AAAA,IACLC,eAAexB,GAAW;;AACtB,cAAOyB,KAAAvD,IAAA,KAAKH,YAAL,gBAAAG,EAAc6B,aAAd,gBAAA0B,EAAyBzB;AAAAA,IACpC;AAAA,IACA0B,eAAe;AACX,YAAM;AAAA,QAAEC,UAAAA;AAAAA,QAAUC,QAAAA;AAAAA,MAAO,IAAI,KAAKzD,OAAOC;AACzC,aAAIwD,IAAe,KACfD,IACmB,IAAIE,SAASF,CAAQ,EACtBG,KAAK,IAAI,IAExB;AAAA,IACX;AAAA,IACAC,aAAaC,GAAQ;AACjB,YAAM;AAAA,QAAEC,QAAAA;AAAAA,QAAQC,UAAAA;AAAAA,MAAS,IAAI,KAAK/D,OAAOC;AACzC,aAAK8D,KACE,KAAKzE,UAAUwE,CAAM,MAAMD,EAAOC,CAAM,IACzC,gDAFgB;AAAA,IAI1B;AAAA,IACAE,mBAAmBC,GAAGC,GAAK;AACvB,YAAM;AAAA,QAAErD,cAAAA;AAAAA,MAAa,IAAI,KAAKb,OAAOC,SAC/BkE,IAAkBtD,EAAaI,IAAIF,CAAAA,OACjCA,EAAKc,cAAcqC,EAAIrC,cACvBd,EAAKT,QAAQ2D,IAEV;AAAA,QAAE,GAAGlD;AAAAA,QACf;AACD,WAAKqD,gBAAgBD,CAAe;AAAA,IACxC;AAAA,IACAE,gBAAgB;AACZ,YAAM;AAAA,QAAEC,iBAAAA;AAAAA,MAAgB,IAAI,KAAKtE,OAAOC,QAAQsE;AAChD,aAAID,IACOE,EAAQ,KAAKrF,gBAAgBC,eAAe,IAEhDoF,EAAQ,KAAKlF,SAAS;AAAA,IACjC;AAAA,IACAmF,qBAAqB;AACjB,aAAO,KAAKtF,gBAAgBC;AAAAA,IAChC;AAAA,IACAsF,kBAAkB;AACd,aAAO,KAAKvF,gBAAgBuF;AAAAA,IAChC;AAAA,IACAC,kBAAkB;AACd,aAAO,KAAK3E,OAAOC,QAAQY;AAAAA,IAC/B;AAAA,IACAuD,gBAAgBQ,GAAM;AAClB,WAAK5E,OAAOC,QAAQY,eAAe+D;AAAAA,IAEvC;AAAA,IACA,MAAMC,aAAaC,GAAS;AAGxB,UAFA,MAAMC,EAAW;AAAA,QAAEC,SAAS;AAAA,MAAa,CAAC,GAC1CF,IAAUA,KAAW,KAAK3F,gBAAgBC,iBACtC,CAAC0F,EAAQlC,OAAQ;AACrB,YAAM;AAAA,QAAEkB,QAAAA;AAAAA,MAAO,IAAI,KAAK9D,OAAOC,SAEzBgF,IADO,KAAKC,cAAa,EACVpE,OAAOC,CAAAA,MAAQ,EAAC+D,KAAAA,QAAAA,EAASK,SAASpE,EAAK+C,CAAM,GAAE;AACpE,WAAKsB,cAAcH,CAAO,GAE1B,KAAKI,SAASC,QAAQ,MAAM;AAAA,IAChC;AAAA,IAEAC,gBAAgB;AACZ,aAAO,KAAKvF,OAAOC,QAAQqC;AAAAA,IAC/B;AAAA;AAAA;AAAA;AAAA;AAAA,IAKAkD,cAAclD,GAAY;AACtB,MAAIA,EAAWmD,SAASC,WACpB,KAAK1F,OAAOC,QAAQqC,WAAWqD,UAAUrD,EAAWmD,OAGpDnD,EAAWsD,aAAaF,WACxB,KAAK1F,OAAOC,QAAQqC,WAAWsD,WAAWtD,EAAWsD,WAGrDtD,EAAWE,UAAUkD,WACrB,KAAK1F,OAAOC,QAAQqC,WAAWE,QAAQF,EAAWE;AAAAA,IAE1D;AAAA,IACA4C,cAAcR,GAAM;;AAChBA,MAAAA,IAAOA,KAAQ,CAAA,GACf,KAAKzF,kBAAkB;AAAA,QAAEC,iBAAiB,CAAA;AAAA,QAAIC,cAAc,CAAA;AAAA,SAC5D,KAAKwG,aAAa,CAAA;AAClB,YAAMC,IAAMC,EAAQnB,CAAI,IAAIA,IAAO,CAACA,CAAI;AACxC/B,cAAQC,IAAI,mBAAmBgD,CAAG,IAClC/F,IAAA,KAAKiD,WAAU,MAAf,QAAAjD,EAAmBkD,cAAc,KAAKjD,OAAOC,QAAQiD,MAAM4C;AAAAA,IAE/D;AAAA,IACAE,SAASpB,GAAM;AACX/B,cAAQC,IAAI,UAAU8B,CAAI,GAC1B,KAAKQ,cAAcR,CAAI;AAAA,IAC3B;AAAA,IACAqB,iBAAiBxE,GAAOyE,GAAO;;AAC3B,OAAAnG,IAAA,KAAKiD,iBAAL,QAAAjD,EAAmBoG,qBAAqB,KAAKnG,OAAOC,QAAQiD,MAAMzB,GAAOyE;AAAAA,IAC7E;AAAA,IACAhB,gBAAgB;;AACZ,eAAOnF,IAAA,KAAKiD,WAAU,MAAf,gBAAAjD,EAAmBqG,cAAc,KAAKpG,OAAOC,QAAQiD,UAAS,CAAA;AAAA,IACzE;AAAA,IACAmD,WAAW;AACP,aAAO,KAAKnB,cAAa;AAAA,IAC7B;AAAA,IACA,MAAMoB,0BAA0B;AAC5B,MAAK,KAAKtG,OAAOC,QAAQsG,aAGzBC,WAAW,YAAY;AACnB,cAAMC,IAAM,KAAKzG,OAAOC;AACxB,YAAIwG,EAAIF,aAAaE,EAAIC,KAAKC,KAAK;AAC/B,eAAKpH,UAAU;AACf,gBAAMqH,IAAM,MAAMC,EAAclD,KAAK,MAAM8C,CAAG;AAC9C,eAAKjB,cAAcoB,CAAG,GACtB,KAAKxB,cAAcwB,EAAIhC,IAAI,GAC3B,KAAKrF,UAAU;AAAA,QACnB;AAAA,MACJ,GAAG,GAAG;AAAA,IACV;AAAA,IACAuH,gBAAgBjD,GAAQ;AACpB,YAAM;AAAA,QAAEkD,WAAAA;AAAAA,QAAWhD,UAAAA;AAAAA,MAAS,IAAI,KAAK/D,OAAOC,SACtC;AAAA,QAAEqE,iBAAAA;AAAAA,MAAgB,IAAI,KAAKtE,OAAOC,QAAQsE;AAEhD,aAAO;AAAA,QACHyC,SAASC,CAAAA,MAAS;AACd,UAAIlD,MACA,KAAKzE,YAAYuE,IAEjBS,KACA,KAAK4C,eAAerD,CAAM,GAEb,IAAIH,SAAS,UAAU,SAASqD,EAAUC,OAAO,EACzDrD,KAAK,MAAME,GAAQoD,CAAK;AAAA,QACrC;AAAA,QACAE,YAAYF,CAAAA,MAAS;AAEjBG,UADiB,IAAI1D,SAAS,UAAU,SAASqD,EAAUI,UAAU,EAC5DxD,KAAK,MAAME,GAAQoD,CAAK;AAAA,QACrC;AAAA,QACAI,cAAcJ,CAAAA,MAAS;AAEnBG,UADiB,IAAI1D,SAAS,UAAU,SAASqD,EAAUM,YAAY,EAC9D1D,KAAK,MAAME,GAAQoD,CAAK;AAAA,QACrC;AAAA,QACAK,cAAcL,CAAAA,MAAS;AAEnBG,UADiB,IAAI1D,SAAS,UAAU,SAASqD,EAAUO,YAAY,EAC9D3D,KAAK,MAAME,GAAQoD,CAAK;AAAA,QACrC;AAAA;IAER;AAAA,IACAC,eAAerD,GAAQ;AACnB,YAAMC,IAAS,KAAK9D,OAAOC,QAAQ6D,QAC7ByD,IAAU,KAAKpI,gBAAgBC;AACrCyD,cAAQC,IAAI,KAAK3D,gBAAgBC,eAAe,GAE5CmI,EAAQpC,SAAStB,EAAOC,CAAM,CAAC,IAC/B,KAAK3E,gBAAgBC,gBAAgBoI,OAAOD,EAAQE,QAAQ5D,EAAOC,CAAM,CAAC,GAAG,CAAC,IAE9E,KAAK3E,gBAAgBC,gBAAgBe,KAAK0D,EAAOC,CAAM,CAAC;AAAA,IAEhE;AAAA;AAAA,IAEA5C,iBAAiBH,GAAM;AACnB,YAAM6F,IAAMc,EAAK3G,GAAM,CAAC,cAAc,CAAC,GACjC4G,IAAiB5G,EAAKL;AAS5B,aARAK,EAAK6G,WAAW,IAChB7G,EAAKP,WAAW,MACZO,EAAK8G,eACL9G,EAAKT,QAAQ,MACb,OAAOS,EAAKT,SAEZS,EAAKT,QAAQwH,MAAMC,OAAOhH,EAAKT,KAAK,CAAC,IAAIS,EAAKT,QAAQyH,OAAOhH,EAAKT,KAAK,GAEtEqH,IAEE;AAAA,QACH,GAAGf;AAAAA,QACHhF,UAAUH,CAAAA,MACCuG,EAAgB;AAAA,UACnBC,cAAcN;AAAAA,UACdO,QAAQzG;AAAAA,UACR0G,SAAS;AAAA,UACTC,eAAeC,CAAAA,MAAS;AACpBxF,oBAAQwF,MAAM,wBAAwBA,CAAK;AAAA,UAC/C;AAAA,QACJ,CAAC;AAAA,UAZmBtH;AAAAA,IAehC;AAAA,IACAuH,wBAAwBC,GAAcC,GAAUC,GAAK;AACjD,YAAM;AAAA,QAAEC,2BAAAA;AAAAA,MAA0B,IAAI,KAAK1I,OAAOC;AAClD,aAAMyI,IACe,IAAIhF,SACjB,gBACA,YACA,OACAgF,CACJ,EACgB/E,KAAK,MAAM4E,GAAcC,GAAUC,CAAG,IAE/CF,EAAaI;AAAAA,IAE5B;AAAA;AAAA,IAEA,MAAMC,2BAA2BC,GAASL,GAAUC,GAAKhH,GAAOqH,GAAI;AAChE,WAAKC,2BAA2B;AAEhC,UAAI;AACA,YAAID,EAAG9B,SAAS;AACZ,gBAAMgB,EAAgB;AAAA,YAClBC,cAAca,EAAG9B;AAAAA,YACjBkB,QAAQ;AAAA,cAAErE,QAAQ4E;AAAAA,cAAKO,OAAOR;AAAAA,cAAUS,QAAQxH,EAAMwH;AAAAA,cAAQC,KAAKJ;AAAAA;YACnEX,SAAS;AAAA,UACb,CAAC;AACD;AAAA,QACJ;AAEA,cAAM;AAAA,UAAEgB,wBAAAA;AAAAA,QAAuB,IAAI,KAAKnJ,OAAOC;AAC/C,QAAIkJ,IACA,MAAMnB,EAAgB;AAAA,UAClBC,cAAckB;AAAAA,UACdjB,QAAQ;AAAA,YAAEkB,YAAYP;AAAAA,YAASL,UAAAA;AAAAA,YAAUC,KAAAA;AAAAA;UACzCN,SAAS;AAAA,QACb,CAAC,IAED,KAAKkB,SAAS,eAAe,wBAAwB,CACjD,MACAR,GACAL,GACAC,CAAG,CACN;AAAA,MAET,UAAC;AACG,aAAKM,2BAA2B;AAAA,MACpC;AAAA,IACJ;AAAA,IACAO,oBAAoBf,GAAcC,GAAUC,GAAK;AAC7C,YAAM;AAAA,QAAEc,uBAAAA;AAAAA,MAAsB,IAAI,KAAKvJ,OAAOC;AAC9C,aAAMsJ,IAOK,CAAC,CANS,IAAI7F,SACjB,gBACA,YACA,OACA6F,CACJ,EACkB5F,KAAK,MAAM4E,GAAcC,GAAUC,CAAG,IAEjD,CAACF,EAAa9E;AAAAA,IAE7B;AAAA,IACA+F,uBAAuBjB,GAAcC,GAAUC,GAAK;AAChD,YAAM;AAAA,QAAEgB,0BAAAA;AAAAA,MAAyB,IAAI,KAAKzJ,OAAOC;AACjD,aAAMwJ,IACe,IAAI/F,SACjB,gBACA,YACA,OACA+F,CACJ,EACgB9F,KAAK,MAAM4E,GAAcC,GAAUC,CAAG,IAE/CF,EAAamB;AAAAA,IAE5B;AAAA,IACA/I,kBAAkB;AAAA,MAAEqI,OAAAA;AAAAA,IAAM,GAAG;AACzB,aAAOA,IAAQ;AAAA,IACnB;AAAA,IACAW,wBAAwBC,GAAa;AACjC,WAAKA,cAAcA;AAKnB,YAAM;AAAA,QAAEC,qBAAAA;AAAAA,MAAoB,IAAI,KAAK7J,OAAOC;AAE5C,MAAM4J,IACe,IAAInG,SAAS,YAAY,eAAemG,CAAmB,EACnElG,KAAK,MAAM,KAAKiC,UAAUgE,CAAW,IAE9C,KAAKP,SAAS,eAAe,uBAAuB,CAChD,MACA,KAAKzD,UACLgE,CAAW,CACd;AAAA,IAET;AAAA,IACA5G,aAAa;AAET,aAAO,KAAK8G,QAAQ;AAAA,IACxB;AAAA,IACAC,qBAAqBnE,GAAU;AAC3B,WAAKA,WAAWA;AAIhB,YAAM;AAAA,QAAEoE,kBAAAA;AAAAA,MAAiB,IAAI,KAAKhK,OAAOC;AACzC,MAAM+J,IACe,IAAItG,SAAS,YAAY,eAAesG,CAAgB,EAChErG,KAAK,MAAMiC,GAAU,KAAKgE,WAAW,IAE9C,KAAKP,SAAS,eAAe,2BAA2B,CACpD,MACAzD,GACA,KAAKgE,WAAW,CACnB;AAAA,IAET;AAAA,IACAK,sBAAsB3H,GAAY4H,GAASC,GAAQ;AAAA,MAAEC,mBAAAA;AAAAA,IAAkB,GAAG;AACtE,YAAMC,IAAK,KAAKrK,OAAOC,QAAQqK;AAC/B,WAAKtK,OAAOC,QAAQqC,WAAWqD,UAAUrD,EAAWqD,SACpD,KAAK3F,OAAOC,QAAQqC,WAAWsD,WAAWtD,EAAWsD,UACjDyE,KACmB,IAAI3G,SACnB,cACA,WACA,UACA,qBACA2G,CACJ,EACW1G,KAAK,MAAMrB,GAAY4H,GAASC,GAAQ;AAAA,QAAEC,mBAAAA;AAAAA,MAAkB,CAAC,GAE5E,KAAK9D,wBAAuB;AAAA,IAChC;AAAA,IACAiE,qBAAqB;AACjB,YAAMC,IAAO,KAAKxK,OAAOC,QAAQsE;AACjC,UAAKiG,EAAKlG;AAGV,eAAO;AAAA,UACH,GAAGoD,EAAK8C,GAAM,CAAC,UAAU,CAAC;AAAA,UAC1BC,UAAUA,CAACrL,GAAiBC,MAAiB;AACzC,iBAAKF,kBAAkB;AAAA,cAAEC,iBAAAA;AAAAA,cAAiBC,cAAAA;AAAAA,eAC3B,IAAIqE,SAAS,mBAAmB,gBAAgB8G,EAAKC,QAAQ,EACrE9G,KAAK,MAAMvE,GAAiBC,CAAY;AAAA,UACnD;AAAA;IAER;AAAA,EACJ;AACJ;"}
1
+ {"version":3,"file":"useDataTableMixin.js","sources":["../../../src/mixins/useDataTableMixin.jsx"],"sourcesContent":["import { omit, isEmpty, isArray } from 'lodash-es';\nimport { fmtHttpParams } from '@/utils/request/fmtHttpParams';\nimport { TpfConfirm } from '@/hooks/TpfConfirm';\nimport RenderBodyCell from '@/components/CustomRender/components/RenderBodyCell.tsx';\nimport { executeFunction } from '@/utils/executeFunction';\nimport ActionButtonListRender from '@/components/public/ActionButtonListRender.vue';\nexport default {\n data() {\n return {\n selectedRowInfo: { selectedRowKeys: [], selectedRows: [] },\n selectRow: {},\n loading: false\n };\n },\n components: {\n RenderBodyCell\n },\n inject: ['refList'],\n computed: {\n columns() {\n const leftFixedColumns = [];\n const optins = this.widget?.options ?? {};\n if (optins.showIndex) {\n leftFixedColumns.push({\n title: '序号',\n align: 'left',\n width: 90,\n fixed: 'left',\n maxWidth: 100,\n field: 'dataIndex',\n customRender: this.customRenderIndex\n });\n }\n const centerColumns = optins.tableColumns\n .filter(item => item.show)\n .map(item => ({\n ...item,\n ...this.handleColumnItem(item)\n }));\n const rightFixedColumns = [];\n if (optins.showButtonsColumn) {\n const operationButtons = optins.operationButtons ?? [];\n let _this = this;\n rightFixedColumns.push({\n fixed: 'right',\n align: 'center',\n title: optins.buttonsColumnTitle,\n width: optins.buttonsColumnWidth,\n customRender(scope) {\n return (\n <ActionButtonListRender\n buttonList={operationButtons}\n flex=\"center\"\n scope={scope}\n ctx={_this}\n />\n );\n }\n });\n }\n\n let bodyCell = {};\n\n // 把customRender渲染成 bodyCell 插槽\n let _columns = [...leftFixedColumns, ...centerColumns, ...rightFixedColumns].map(\n item => {\n if (item.bodyCell) {\n bodyCell[item.dataIndex] = item.bodyCell;\n delete item.customRender;\n }\n return item;\n }\n );\n\n return {\n columns: _columns,\n bodyCell\n };\n },\n tableHeight() {\n return parseFloat(this.widget.options.tableHeight || 0);\n },\n // rowClassName() {\n // if (this.widget.options.stripe) {\n // return (_record, index) => (index % 2 === 1 ? 'table-striped' : null);\n // }\n // return null;\n // },\n customClass() {\n return this.widget.options.customClass || '';\n },\n widgetSize() {\n return this.widget.options.tableSize || 'default';\n },\n lineHeight() {\n return this.widget.options.lineHeight || 40;\n },\n fmtPagination() {\n const { showPagination } = this.widget.options;\n if (!showPagination) return false;\n return {\n ...this.widget.options.pagination,\n showTotal: total => `共 ${total} 条`\n };\n }\n },\n watch: {\n 'widget.options.dataSource': {\n handler(newVal) {\n if (newVal && newVal.length) {\n console.log('DataTable dataSource changed:', newVal);\n this.widget.options.dataSource = newVal;\n console.log(this.getFormRef());\n this.getFormRef()?.setTableValue(this.widget.options.name, newVal);\n }\n },\n deep: true\n }\n },\n methods: {\n isShowBodyCell(dataIndex) {\n return this.columns?.bodyCell?.[dataIndex];\n },\n handleHidden() {\n const { onHidden, hidden } = this.widget.options;\n if (hidden) return true;\n if (onHidden) {\n const onHiddenFn = new Function(onHidden);\n return onHiddenFn.call(this);\n }\n return false;\n },\n rowClassName(record) {\n const { rowKey, colorRow } = this.widget.options;\n if (!colorRow) return '';\n return this.selectRow[rowKey] === record[rowKey]\n ? 'colorRowClassName surely-table-row-selected'\n : '';\n },\n handleResizeColumn(w, col) {\n const { tableColumns } = this.widget.options;\n const newTableColumns = tableColumns.map(item => {\n if (item.dataIndex === col.dataIndex) {\n item.width = w;\n }\n return { ...item };\n });\n this.setTableColumns(newTableColumns);\n },\n disabledClick() {\n const { hasRowSelection } = this.widget.options.rowSelection;\n if (hasRowSelection) {\n return isEmpty(this.selectedRowInfo.selectedRowKeys);\n }\n return isEmpty(this.selectRow);\n },\n getSelectedRowKeys() {\n return this.selectedRowInfo.selectedRowKeys;\n },\n getSelectedRows() {\n return this.selectedRowInfo.getSelectedRows;\n },\n getTableColumns() {\n return this.widget.options.tableColumns;\n },\n setTableColumns(list) {\n this.widget.options.tableColumns = list;\n return;\n },\n async delSelectRow(delKeys) {\n await TpfConfirm({ content: '确定删除选中的数据吗' });\n delKeys = delKeys || this.selectedRowInfo.selectedRowKeys;\n if (!delKeys.length) return;\n const { rowKey } = this.widget.options;\n const data = this.getDataSource();\n const newList = data.filter(item => !delKeys?.includes(item[rowKey]));\n this.setDataSource(newList);\n\n this.$message.success('操作成功');\n },\n\n getPagination() {\n return this.widget.options.pagination;\n },\n /**\n * 设置表格分页\n * @param pagination\n */\n setPagination(pagination) {\n if (pagination.page !== undefined) {\n this.widget.options.pagination.current = pagination.page;\n }\n\n if (pagination.pageSize !== undefined) {\n this.widget.options.pagination.pageSize = pagination.pageSize;\n }\n\n if (pagination.total !== undefined) {\n this.widget.options.pagination.total = pagination.total;\n }\n },\n setDataSource(list) {\n list = list || [];\n this.selectedRowInfo = { selectedRowKeys: [], selectedRows: [] };\n this.selectRowe = {};\n const val = isArray(list) ? list : [list];\n console.log('setDataSource: ', val);\n this.getFormRef()?.setTableValue(this.widget.options.name, val);\n // this.widget.options.dataSource = [...val];\n },\n setValue(list) {\n console.log('list: ', list);\n this.setDataSource(list);\n },\n setRowDataSource(scope, value) {\n this.getFormRef()?.setTableRowDataValue(this.widget.options.name, scope, value);\n },\n insertTableValue(value) {\n this.getFormRef()?.insertTableValue(this.widget.options.name, value);\n },\n getDataSource() {\n return this.getFormRef()?.getTableValue(this.widget.options.name) || [];\n },\n getValue() {\n return this.getDataSource();\n },\n async loadDataTableDataSource() {\n if (!this.widget.options.dsEnabled) {\n return;\n }\n setTimeout(async () => {\n const ops = this.widget.options;\n if (ops.dsEnabled && ops.http.url) {\n this.loading = true;\n const res = await fmtHttpParams.call(this, ops);\n this.setPagination(res);\n this.setDataSource(res.list);\n this.loading = false;\n }\n }, 500);\n },\n handleCustomRow(record) {\n const { customRow, colorRow } = this.widget.options;\n const { hasRowSelection } = this.widget.options.rowSelection;\n // if (!customRow) return {};\n return {\n onClick: event => {\n if (colorRow) {\n this.selectRow = record;\n }\n if (hasRowSelection) {\n this.selectTableRow(record);\n }\n const customFn = new Function('record', 'event', customRow.onClick);\n customFn.call(this, record, event);\n },\n onDblclick: event => {\n const customFn = new Function('record', 'event', customRow.onDblclick);\n customFn.call(this, record, event);\n },\n onMouseenter: event => {\n const customFn = new Function('record', 'event', customRow.onMouseenter);\n customFn.call(this, record, event);\n },\n onMouseleave: event => {\n const customFn = new Function('record', 'event', customRow.onMouseleave);\n customFn.call(this, record, event);\n }\n };\n },\n selectTableRow(record) {\n const rowKey = this.widget.options.rowKey;\n const rowKeys = this.selectedRowInfo.selectedRowKeys;\n console.log(this.selectedRowInfo.selectedRowKeys);\n\n if (rowKeys.includes(record[rowKey])) {\n this.selectedRowInfo.selectedRowKeys.splice(rowKeys.indexOf(record[rowKey]), 1);\n } else {\n this.selectedRowInfo.selectedRowKeys.push(record[rowKey]);\n }\n },\n // 处理列配置\n handleColumnItem(item) {\n const res = omit(item, ['customRender']);\n const customRenderFn = item.customRender;\n item.minWidth = 50;\n item.maxWidth = 1200;\n if (item.isAutoWidth) {\n item.width = null;\n delete item.width;\n } else {\n item.width = isNaN(Number(item.width)) ? item.width : Number(item.width);\n }\n if (!customRenderFn) return item;\n\n return {\n ...res,\n bodyCell: scope => {\n return executeFunction({\n functionBody: customRenderFn,\n params: scope,\n context: this,\n errorCallback: error => {\n console.error('Custom render error:', error);\n }\n });\n }\n };\n },\n getOperationButtonLabel(buttonConfig, rowIndex, row) {\n const { onGetOperationButtonLabel } = this.widget.options;\n if (!!onGetOperationButtonLabel) {\n const customFn = new Function(\n 'buttonConfig',\n 'rowIndex',\n 'row',\n onGetOperationButtonLabel\n );\n return customFn.call(this, buttonConfig, rowIndex, row);\n } else {\n return buttonConfig.label;\n }\n },\n // 处理操作按钮点击\n async handleOperationButtonClick(btnName, rowIndex, row, scope, ob) {\n this.skipSelectionChangeEvent = true;\n\n try {\n if (ob.onClick) {\n await executeFunction({\n functionBody: ob.onClick,\n params: { record: row, index: rowIndex, column: scope.column, btn: ob },\n context: this\n });\n return;\n }\n\n const { onOperationButtonClick } = this.widget.options;\n if (onOperationButtonClick) {\n await executeFunction({\n functionBody: onOperationButtonClick,\n params: { buttonName: btnName, rowIndex, row },\n context: this\n });\n } else {\n this.dispatch('VFormRender', 'operationButtonClick', [\n this,\n btnName,\n rowIndex,\n row\n ]);\n }\n } finally {\n this.skipSelectionChangeEvent = false;\n }\n },\n showOperationButton(buttonConfig, rowIndex, row) {\n const { onHideOperationButton } = this.widget.options;\n if (!!onHideOperationButton) {\n const customFn = new Function(\n 'buttonConfig',\n 'rowIndex',\n 'row',\n onHideOperationButton\n );\n return !!customFn.call(this, buttonConfig, rowIndex, row);\n } else {\n return !buttonConfig.hidden;\n }\n },\n disableOperationButton(buttonConfig, rowIndex, row) {\n const { onDisableOperationButton } = this.widget.options;\n if (!!onDisableOperationButton) {\n const customFn = new Function(\n 'buttonConfig',\n 'rowIndex',\n 'row',\n onDisableOperationButton\n );\n return customFn.call(this, buttonConfig, rowIndex, row);\n } else {\n return buttonConfig.disabled;\n }\n },\n customRenderIndex({ index }) {\n return index + 1;\n },\n handleCurrentPageChange(currentPage) {\n this.currentPage = currentPage;\n // if (!!this.widget.options.dsEnabled && !!this.widget.options.dsName) {\n // this.loadDataFromDS();\n // }\n\n const { onCurrentPageChange } = this.widget.options;\n\n if (!!onCurrentPageChange) {\n const customFn = new Function('pageSize', 'currentPage', onCurrentPageChange);\n customFn.call(this, this.pageSize, currentPage);\n } else {\n this.dispatch('VFormRender', 'dataTablePageChange', [\n this,\n this.pageSize,\n currentPage\n ]);\n }\n },\n getFormRef() {\n /* 获取VFrom引用,必须在VForm组件created之后方可调用 */\n return this.refList['v_form_ref'];\n },\n handlePageSizeChange(pageSize) {\n this.pageSize = pageSize;\n // if (!!this.widget.options.dsEnabled && !!this.widget.options.dsName) {\n // this.loadDataFromDS();\n // }\n const { onPageSizeChange } = this.widget.options;\n if (!!onPageSizeChange) {\n const customFn = new Function('pageSize', 'currentPage', onPageSizeChange);\n customFn.call(this, pageSize, this.currentPage);\n } else {\n this.dispatch('VFormRender', 'dataTablePageSizeChange', [\n this,\n pageSize,\n this.currentPage\n ]);\n }\n },\n handleTablePageChange(pagination, filters, sorter, { currentDataSource }) {\n const fn = this.widget.options.onTableChange;\n this.widget.options.pagination.current = pagination.current;\n this.widget.options.pagination.pageSize = pagination.pageSize;\n if (fn) {\n const changeFunc = new Function(\n 'pagination',\n 'filters',\n 'sorter',\n 'currentDataSource',\n fn\n );\n changeFunc.call(this, pagination, filters, sorter, { currentDataSource });\n }\n this.loadDataTableDataSource();\n },\n handleRowSelection() {\n const info = this.widget.options.rowSelection;\n if (!info.hasRowSelection) {\n return undefined;\n }\n return {\n ...omit(info, ['onChange']),\n onChange: (selectedRowKeys, selectedRows) => {\n this.selectedRowInfo = { selectedRowKeys, selectedRows };\n const rcFunc = new Function('selectedRowKeys', 'selectedRows', info.onChange);\n rcFunc.call(this, selectedRowKeys, selectedRows);\n }\n };\n }\n }\n};\n"],"names":["useDataTableMixin","data","selectedRowInfo","selectedRowKeys","selectedRows","selectRow","loading","components","RenderBodyCell","inject","computed","columns","leftFixedColumns","optins","_a","widget","options","showIndex","push","title","align","width","fixed","maxWidth","field","customRender","customRenderIndex","centerColumns","tableColumns","filter","item","show","map","handleColumnItem","rightFixedColumns","showButtonsColumn","operationButtons","_this","buttonsColumnTitle","buttonsColumnWidth","scope","_createVNode","ActionButtonListRender","bodyCell","dataIndex","tableHeight","parseFloat","customClass","widgetSize","tableSize","lineHeight","fmtPagination","showPagination","pagination","showTotal","total","watch","handler","newVal","length","console","log","dataSource","getFormRef","setTableValue","name","deep","methods","isShowBodyCell","_b","handleHidden","onHidden","hidden","Function","call","rowClassName","record","rowKey","colorRow","handleResizeColumn","w","col","newTableColumns","setTableColumns","disabledClick","hasRowSelection","rowSelection","isEmpty","getSelectedRowKeys","getSelectedRows","getTableColumns","list","delSelectRow","delKeys","TpfConfirm","content","newList","getDataSource","includes","setDataSource","$message","success","getPagination","setPagination","page","undefined","current","pageSize","selectRowe","val","isArray","setValue","setRowDataSource","value","setTableRowDataValue","insertTableValue","getTableValue","getValue","loadDataTableDataSource","dsEnabled","setTimeout","ops","http","url","res","fmtHttpParams","handleCustomRow","customRow","onClick","event","selectTableRow","onDblclick","customFn","onMouseenter","onMouseleave","rowKeys","splice","indexOf","omit","customRenderFn","minWidth","isAutoWidth","isNaN","Number","executeFunction","functionBody","params","context","errorCallback","error","getOperationButtonLabel","buttonConfig","rowIndex","row","onGetOperationButtonLabel","label","handleOperationButtonClick","btnName","ob","skipSelectionChangeEvent","index","column","btn","onOperationButtonClick","buttonName","dispatch","showOperationButton","onHideOperationButton","disableOperationButton","onDisableOperationButton","disabled","handleCurrentPageChange","currentPage","onCurrentPageChange","refList","handlePageSizeChange","onPageSizeChange","handleTablePageChange","filters","sorter","currentDataSource","fn","onTableChange","handleRowSelection","info","onChange"],"mappings":"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"}