el-plus 0.0.47 → 0.0.51

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 (113) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +496 -285
  4. package/dist/index.full.min.js +1 -1
  5. package/dist/index.full.min.js.map +1 -1
  6. package/dist/index.full.min.mjs +1 -1
  7. package/dist/index.full.min.mjs.map +1 -1
  8. package/dist/index.full.mjs +496 -285
  9. package/es/components/attachment/index.d.ts +24 -3
  10. package/es/components/attachment/src/attachment.d.ts +4 -0
  11. package/es/components/attachment/src/attachment.mjs +5 -0
  12. package/es/components/attachment/src/attachment.mjs.map +1 -1
  13. package/es/components/attachment/src/attachment.vue.d.ts +12 -1
  14. package/es/components/attachment/src/attachment.vue2.mjs +69 -29
  15. package/es/components/attachment/src/attachment.vue2.mjs.map +1 -1
  16. package/es/components/attachment/src/use-attachment.d.ts +32 -24
  17. package/es/components/attachment/src/use-attachment.mjs +65 -12
  18. package/es/components/attachment/src/use-attachment.mjs.map +1 -1
  19. package/es/components/custom-column/src/custom-column.vue2.mjs +1 -1
  20. package/es/components/custom-column/src/custom-column.vue2.mjs.map +1 -1
  21. package/es/components/header/index.d.ts +15 -0
  22. package/es/components/header/src/header.d.ts +4 -0
  23. package/es/components/header/src/header.mjs +6 -1
  24. package/es/components/header/src/header.mjs.map +1 -1
  25. package/es/components/header/src/header.vue.d.ts +9 -0
  26. package/es/components/header/src/header.vue2.mjs +6 -1
  27. package/es/components/header/src/header.vue2.mjs.map +1 -1
  28. package/es/components/header/src/use-header.mjs +42 -44
  29. package/es/components/header/src/use-header.mjs.map +1 -1
  30. package/es/components/search-list-page/index.d.ts +11 -3
  31. package/es/components/search-list-page/index.mjs.map +1 -1
  32. package/es/components/search-list-page/src/search-list-page.vue.d.ts +3 -1
  33. package/es/components/search-list-page/src/use-search-list-page.d.ts +3 -1
  34. package/es/components/search-list-page/src/use-search-list-page.mjs +1 -1
  35. package/es/components/search-list-page/src/use-search-list-page.mjs.map +1 -1
  36. package/es/components/table/index.d.ts +3 -0
  37. package/es/components/table/src/table.vue.d.ts +1 -0
  38. package/es/components/table/src/table.vue2.mjs +2 -0
  39. package/es/components/table/src/table.vue2.mjs.map +1 -1
  40. package/es/components/table/src/use-table.d.ts +1 -0
  41. package/es/components/table/src/use-table.mjs +4 -0
  42. package/es/components/table/src/use-table.mjs.map +1 -1
  43. package/es/hooks/dialog/use-choose-dialog.mjs +18 -3
  44. package/es/hooks/dialog/use-choose-dialog.mjs.map +1 -1
  45. package/es/hooks/dialog/use-dialog.mjs.map +1 -1
  46. package/es/hooks/dialog/use-form-dialog.mjs +14 -2
  47. package/es/hooks/dialog/use-form-dialog.mjs.map +1 -1
  48. package/es/hooks/use-request.mjs +4 -3
  49. package/es/hooks/use-request.mjs.map +1 -1
  50. package/es/locale/lang/en.d.ts +12 -0
  51. package/es/locale/lang/en.mjs +12 -0
  52. package/es/locale/lang/en.mjs.map +1 -1
  53. package/es/locale/lang/zh-cn.d.ts +12 -0
  54. package/es/locale/lang/zh-cn.mjs +12 -0
  55. package/es/locale/lang/zh-cn.mjs.map +1 -1
  56. package/es/package.json.mjs +1 -1
  57. package/es/utils/file.d.ts +1 -1
  58. package/es/utils/file.mjs.map +1 -1
  59. package/lib/components/attachment/index.d.ts +24 -3
  60. package/lib/components/attachment/src/attachment.d.ts +4 -0
  61. package/lib/components/attachment/src/attachment.js +5 -0
  62. package/lib/components/attachment/src/attachment.js.map +1 -1
  63. package/lib/components/attachment/src/attachment.vue.d.ts +12 -1
  64. package/lib/components/attachment/src/attachment.vue2.js +68 -28
  65. package/lib/components/attachment/src/attachment.vue2.js.map +1 -1
  66. package/lib/components/attachment/src/use-attachment.d.ts +32 -24
  67. package/lib/components/attachment/src/use-attachment.js +63 -10
  68. package/lib/components/attachment/src/use-attachment.js.map +1 -1
  69. package/lib/components/custom-column/src/custom-column.vue2.js +1 -1
  70. package/lib/components/custom-column/src/custom-column.vue2.js.map +1 -1
  71. package/lib/components/header/index.d.ts +15 -0
  72. package/lib/components/header/src/header.d.ts +4 -0
  73. package/lib/components/header/src/header.js +6 -1
  74. package/lib/components/header/src/header.js.map +1 -1
  75. package/lib/components/header/src/header.vue.d.ts +9 -0
  76. package/lib/components/header/src/header.vue2.js +6 -1
  77. package/lib/components/header/src/header.vue2.js.map +1 -1
  78. package/lib/components/header/src/use-header.js +42 -44
  79. package/lib/components/header/src/use-header.js.map +1 -1
  80. package/lib/components/search-list-page/index.d.ts +11 -3
  81. package/lib/components/search-list-page/index.js.map +1 -1
  82. package/lib/components/search-list-page/src/search-list-page.vue.d.ts +3 -1
  83. package/lib/components/search-list-page/src/use-search-list-page.d.ts +3 -1
  84. package/lib/components/search-list-page/src/use-search-list-page.js +1 -1
  85. package/lib/components/search-list-page/src/use-search-list-page.js.map +1 -1
  86. package/lib/components/table/index.d.ts +3 -0
  87. package/lib/components/table/src/table.vue.d.ts +1 -0
  88. package/lib/components/table/src/table.vue2.js +2 -0
  89. package/lib/components/table/src/table.vue2.js.map +1 -1
  90. package/lib/components/table/src/use-table.d.ts +1 -0
  91. package/lib/components/table/src/use-table.js +4 -0
  92. package/lib/components/table/src/use-table.js.map +1 -1
  93. package/lib/hooks/dialog/use-choose-dialog.js +17 -2
  94. package/lib/hooks/dialog/use-choose-dialog.js.map +1 -1
  95. package/lib/hooks/dialog/use-dialog.js.map +1 -1
  96. package/lib/hooks/dialog/use-form-dialog.js +14 -2
  97. package/lib/hooks/dialog/use-form-dialog.js.map +1 -1
  98. package/lib/hooks/use-request.js +4 -3
  99. package/lib/hooks/use-request.js.map +1 -1
  100. package/lib/locale/lang/en.d.ts +12 -0
  101. package/lib/locale/lang/en.js +12 -0
  102. package/lib/locale/lang/en.js.map +1 -1
  103. package/lib/locale/lang/zh-cn.d.ts +12 -0
  104. package/lib/locale/lang/zh-cn.js +12 -0
  105. package/lib/locale/lang/zh-cn.js.map +1 -1
  106. package/lib/package.json.js +1 -1
  107. package/lib/utils/file.d.ts +1 -1
  108. package/lib/utils/file.js.map +1 -1
  109. package/package.json +1 -1
  110. package/theme-chalk/attachment.css +1 -0
  111. package/theme-chalk/index.css +1 -1
  112. package/theme-chalk/src/attachment.scss +37 -0
  113. package/theme-chalk/src/index.scss +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"use-table.js","sources":["../../../../../../packages/components/table/src/use-table.tsx"],"sourcesContent":["import type { FormInstance, TableInstance, FormItemProp } from 'element-plus'\nimport {\n ref,\n computed,\n type Ref,\n reactive,\n useTemplateRef,\n getCurrentInstance,\n toRaw,\n useAttrs,\n nextTick,\n watch,\n} from 'vue'\nimport { useRequest } from '@el-plus/hooks/use-request'\nimport type { TableColumn, TableProps, TableScope } from './table'\nimport type { ButtonProps } from '@el-plus/components/buttons'\nimport type { FormProps } from '@el-plus/components/form'\nimport { bus } from '@el-plus/utils'\nimport { merge } from 'lodash-unified'\nimport {\n prepareProps,\n prepareEvents,\n prepareClassNames,\n prepareStyles,\n} from '@el-plus/utils/props'\nimport { cloneDeep } from 'lodash-unified'\nimport { EditPen } from '@element-plus/icons-vue'\nimport { ElIcon } from 'element-plus'\nimport { useFormDialog } from '@el-plus/hooks/dialog/use-form-dialog'\n\nexport type ISearch = (init: boolean, isPagination?: boolean) => void\nexport const useTable = (props: TableProps) => {\n const elFormRef = useTemplateRef<FormInstance>('elFormRef')\n const elTableRef = useTemplateRef<TableInstance>('elTableRef')\n const customData = ref<Record<string, unknown>[]>([])\n const { loading, requestFn } = useRequest({\n api: props.api,\n method: props.method,\n reqData: props.reqData,\n reqParams: props.reqParams,\n reqBefore: props.reqBefore,\n reqAfter: props.reqAfter,\n cancelToken: true,\n hooks: {\n success(data) {\n if (Array.isArray(data)) {\n customData.value = data\n } else if (data && typeof data === 'object') {\n const rawData = data as Record<string, any>\n customData.value = rawData?.list || rawData?.data || []\n } else {\n customData.value = []\n }\n if (props.showPagination) {\n pagination.total =\n (props.isFrontPage\n ? customData.value.length\n : (data as { total: number }).total) || 0\n }\n },\n fail(error) {\n console.error(error)\n },\n },\n })\n // 自定义列\n const customColumns = ref<TableColumn[]>([])\n // 加载列表\n const attrs = useAttrs()\n const search: ISearch = async (init = false, isPagination = false) => {\n const beforeSearch = attrs['before-search']\n if (typeof beforeSearch === 'function') {\n await nextTick()\n await beforeSearch?.()\n }\n if (init) {\n pagination.pageNo = 1\n }\n // 前端分页\n if (isPagination && props.isFrontPage) {\n const { pageNo, pageSize } = pagination\n const data = customData.value.filter((item, index) => {\n return index < pageNo * pageSize && index >= (pageNo - 1) * pageSize\n })\n customData.value = data\n } else {\n if (props.api) {\n requestFn!({\n pageNo: pagination.pageNo,\n pageSize: pagination.pageSize,\n pageNum: pagination.pageNo,\n })\n } else if (props.data?.length) {\n customData.value = props.data\n }\n }\n }\n if (!props.api) {\n watch(\n () => props.data,\n (newValue) => {\n customData.value = newValue as Record<string, any>[]\n },\n {\n deep: true,\n },\n )\n }\n\n const { pagination, paginationProps } = usePagination(props, search)\n\n // 初始化加载\n ;(async () => {\n if (props.isInitSearch) {\n if (props.customColumnModule) {\n loading!.value = true\n const columns = await bus.once('loadedCustomColumn')\n loading!.value = false\n customColumns.value = columns\n bus.on('loadedCustomColumn', (columns: TableColumn[]) => {\n customColumns.value = columns\n })\n }\n search(true)\n }\n })()\n\n // 校验\n const validate = () => {\n return elFormRef.value!.validate()\n }\n // 重置校验\n const resetFields = (props: FormItemProp) => {\n return elFormRef.value!.resetFields(props)\n }\n // 清理某个字段的表单验证信息\n const clearValidate = (props: FormItemProp) => {\n return elFormRef.value!.clearValidate(props)\n }\n // 格式化操作按钮\n const formatActionButtons = (list: ButtonProps[], scope: TableScope) => {\n return list.map((item) => {\n if (item.onClick) {\n item.onClick = item.onClick.bind(null, scope)\n }\n return item\n })\n }\n\n return {\n loading,\n data: customData,\n search,\n pagination,\n paginationProps,\n validate,\n resetFields,\n clearValidate,\n elFormRef,\n elTableRef,\n formatActionButtons,\n customColumns: customColumns as unknown as Ref<TableColumn[]>,\n }\n}\nconst usePagination = function (props: TableProps, search: ISearch) {\n const pageSizes = [20, 50, 100, 200]\n const pagination = reactive({\n total: 0,\n pageNo: 1,\n pageSize: pageSizes[0],\n })\n const paginationProps = computed(() => {\n const defaultPaginationProps = props.paginationProps || {}\n const onSizeChange = defaultPaginationProps.onSizeChange\n const onCurrentChange = defaultPaginationProps.onCurrentChange\n return {\n ...defaultPaginationProps,\n pageSizes,\n layout: 'total, sizes, prev, pager, next, jumper',\n onSizeChange: (value: number) => {\n onSizeChange && onSizeChange(value)\n search(true, true)\n },\n onCurrentChange: (value: number) => {\n onCurrentChange && onCurrentChange(value)\n search(false, true)\n },\n }\n })\n return {\n pagination,\n paginationProps,\n }\n}\n\nexport const useTableColumn = (\n props: TableProps,\n tableData: Ref<TableProps['data']>,\n customColumns: Ref<TableColumn[]>,\n) => {\n const instance = getCurrentInstance()\n const columnProps = (column: TableColumn) => {\n column.props = column.props || {}\n const attrs = {\n 'show-overflow-tooltip': true,\n align: column.align || props.align,\n minWidth: column.minWidth || props.minWidth,\n // ...prepareEvents<TableEmits>(emit, tableEmits),\n } as TableColumn\n if (!column.renderHeader) {\n // 必填\n let required = column.required\n if (typeof column.required === 'function') {\n required = column.required()\n }\n // 批量编辑\n const editable = column.editable\n attrs['renderHeader'] = () => {\n return (\n <span>\n {required ? (\n <span style=\"color:var(--el-color-danger)\"> * </span>\n ) : (\n ''\n )}\n <span\n class={{ 'is-edit': editable }}\n onClick={\n editable\n ? async () => {\n const cloneColumn = { ...column }\n delete cloneColumn.editable\n const rawRender = cloneColumn.render\n const formData = reactive({})\n if (rawRender) {\n cloneColumn.render = () => {\n return rawRender({\n row: formData,\n })\n }\n }\n const formDialog = useFormDialog({\n title: cloneColumn.label,\n dialogProps: {\n destroyOnClose: true,\n instance,\n },\n formItemList: [\n cloneColumn,\n ] as FormProps['formItemList'],\n formData,\n // formData: reactive({}),\n })\n const data = (await formDialog.open()) as Record<\n string,\n any\n >\n ;(tableData.value || []).forEach((item) => {\n item[column.prop!] = data![column.prop!]\n })\n if (typeof editable === 'function') {\n editable(toRaw(data))\n }\n }\n : void 0\n }\n >\n {column.label}\n {editable ? (\n <ElIcon>\n <EditPen />\n </ElIcon>\n ) : (\n ''\n )}\n </span>\n </span>\n )\n }\n }\n if (column.filter) {\n const arr = tableData.value!.map((item) => item[column.prop!])\n attrs.filters = [...new Set(arr)].map((item) => {\n return {\n text: item,\n value: item,\n }\n })\n attrs.filterMethod = (value, row) => {\n return row[column.prop!] === value\n }\n }\n if (column.type === 'EpLink') {\n attrs.className = 'table-column-link'\n }\n\n return {\n ...attrs,\n ...prepareProps(column),\n }\n }\n const columnList = computed(() => {\n const columns = props.customColumnModule\n ? customColumns.value\n : props.columns\n return columns!\n .map((column: TableColumn) => {\n const newColumn = columnProps(column)\n if (props.formatColumns!.length) {\n const formatColumn = props.formatColumns!.find(\n (item) => item.prop === column.prop,\n )\n if (formatColumn) {\n // newColumn = { ...newColumn, ...formatColumn }\n merge(newColumn, formatColumn)\n }\n }\n return newColumn\n })\n .filter((column) => {\n if ('show' in column) {\n return typeof column.show === 'function'\n ? column.show(column)\n : column.show\n } else if ('hide' in column) {\n return typeof column.hide === 'function'\n ? !column.hide(column)\n : !column.hide\n }\n return true\n })\n })\n return {\n columnList,\n }\n}\n\nexport const useTableFormItem = (props: TableProps) => {\n const formItemProps = (scope: TableScope, rawItem: TableColumn) => {\n const item = cloneDeep(rawItem)\n let required = item.required\n if (typeof required === 'function') {\n required = required()\n }\n if (item.cellRequired) {\n required = item.cellRequired(scope)\n }\n let disabled = props.disabled\n if ('disabled' in item) {\n if (typeof item.disabled === 'function') {\n disabled = item.disabled(scope)\n } else {\n disabled = item.disabled || false\n }\n }\n if (item.type === 'EpSelect' && item.props) {\n if ('options' in item.props && typeof item.props.options === 'function') {\n item.props.options = item.props.options(scope)\n }\n if (\n 'disabledOption' in item.props &&\n typeof item.props.disabledOption === 'function'\n ) {\n const disabledOption = item.props.disabledOption\n item.props.disabledOption = (...args: unknown[]) =>\n disabledOption(...args, scope)\n }\n if ('desc' in item.props && typeof item.props.desc === 'function') {\n item.props.desc = item.props.desc(scope)\n }\n }\n\n if (item.type === 'EpButtons' && item.props) {\n item.props.list.forEach((btnItem: ButtonProps) => {\n if (btnItem.prop) {\n btnItem.name = scope.row[btnItem.prop] as string\n }\n if (btnItem.onClick) {\n btnItem.onClick = btnItem.onClick.bind(null, scope)\n }\n })\n }\n if (item.type === 'EpLink') {\n ;(item.props ? item.props : (item.props = {})).content =\n item.props.content || scope.row[item.prop!]\n }\n for (const key in item) {\n if (key.startsWith('on') && typeof item[key] === 'function') {\n const fn = item[key]\n item[key] = (...args: unknown[]) => {\n let event: Event | unknown\n if (args[0] instanceof Event) {\n // 删除 event\n event = args.shift()\n }\n return fn(...args, scope, event)\n }\n }\n }\n return {\n ...prepareProps(item),\n isShowLabel: false,\n required,\n hideRequiredAsterisk: 'cellRequired' in item ? false : required,\n prop: `table.${scope.$index}.${item.prop}`,\n tableProp: item.prop, // table里的表单需要绑定的prop\n props: {\n ...item.props,\n disabled,\n },\n }\n }\n return {\n formItemProps,\n }\n}\n"],"names":["useTable","props","elFormRef","useTemplateRef","elTableRef","customData","ref","loading","requestFn","useRequest","api","method","reqData","reqParams","reqBefore","reqAfter","cancelToken","hooks","success","data","Array","isArray","value","rawData","list","showPagination","pagination","total","isFrontPage","length","fail","error","console","customColumns","attrs","useAttrs","search","init","isPagination","beforeSearch","nextTick","pageNo","pageSize","filter","item","index","pageNum","watch","newValue","deep","paginationProps","usePagination","isInitSearch","customColumnModule","columns","bus","once","on","validate","resetFields","clearValidate","formatActionButtons","scope","map","onClick","bind","pageSizes","reactive","computed","defaultPaginationProps","onSizeChange","onCurrentChange","layout","useTableColumn","tableData","instance","getCurrentInstance","columnProps","column","align","minWidth","renderHeader","required","editable","_createVNode","_createTextVNode","cloneColumn","rawRender","render","formData","row","formDialog","useFormDialog","title","label","dialogProps","destroyOnClose","formItemList","open","forEach","prop","toRaw","ElIcon","default","EditPen","arr","filters","Set","text","filterMethod","type","className","prepareProps","columnList","newColumn","formatColumns","formatColumn","find","merge","show","hide","useTableFormItem","formItemProps","rawItem","cloneDeep","cellRequired","disabled","options","disabledOption","args","desc","btnItem","name","content","key","startsWith","fn","event","Event","shift","isShowLabel","hideRequiredAsterisk","$index","tableProp"],"mappings":"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"}
1
+ {"version":3,"file":"use-table.js","sources":["../../../../../../packages/components/table/src/use-table.tsx"],"sourcesContent":["import type { FormInstance, TableInstance, FormItemProp } from 'element-plus'\nimport {\n ref,\n computed,\n type Ref,\n reactive,\n useTemplateRef,\n getCurrentInstance,\n toRaw,\n useAttrs,\n nextTick,\n watch,\n} from 'vue'\nimport { useRequest } from '@el-plus/hooks/use-request'\nimport type { TableColumn, TableProps, TableScope } from './table'\nimport type { ButtonProps } from '@el-plus/components/buttons'\nimport type { FormProps } from '@el-plus/components/form'\nimport { bus } from '@el-plus/utils'\nimport { merge } from 'lodash-unified'\nimport {\n prepareProps,\n prepareEvents,\n prepareClassNames,\n prepareStyles,\n} from '@el-plus/utils/props'\nimport { cloneDeep } from 'lodash-unified'\nimport { EditPen } from '@element-plus/icons-vue'\nimport { ElIcon } from 'element-plus'\nimport { useFormDialog } from '@el-plus/hooks/dialog/use-form-dialog'\n\nexport type ISearch = (init: boolean, isPagination?: boolean) => void\nexport const useTable = (props: TableProps) => {\n const elFormRef = useTemplateRef<FormInstance>('elFormRef')\n const elTableRef = useTemplateRef<TableInstance>('elTableRef')\n const customData = ref<Record<string, unknown>[]>([])\n const { loading, requestFn } = useRequest({\n api: props.api,\n method: props.method,\n reqData: props.reqData,\n reqParams: props.reqParams,\n reqBefore: props.reqBefore,\n reqAfter: props.reqAfter,\n cancelToken: true,\n hooks: {\n success(data) {\n if (Array.isArray(data)) {\n customData.value = data\n } else if (data && typeof data === 'object') {\n const rawData = data as Record<string, any>\n customData.value = rawData?.list || rawData?.data || []\n } else {\n customData.value = []\n }\n if (props.showPagination) {\n pagination.total =\n (props.isFrontPage\n ? customData.value.length\n : (data as { total: number }).total) || 0\n }\n },\n fail(error) {\n console.error(error)\n },\n },\n })\n // 自定义列\n const customColumns = ref<TableColumn[]>([])\n // 加载列表\n const attrs = useAttrs()\n const search: ISearch = async (init = false, isPagination = false) => {\n const beforeSearch = attrs['before-search']\n if (typeof beforeSearch === 'function') {\n await nextTick()\n await beforeSearch?.()\n }\n if (init) {\n pagination.pageNo = 1\n }\n // 前端分页\n if (isPagination && props.isFrontPage) {\n const { pageNo, pageSize } = pagination\n const data = customData.value.filter((item, index) => {\n return index < pageNo * pageSize && index >= (pageNo - 1) * pageSize\n })\n customData.value = data\n } else {\n if (props.api) {\n requestFn!({\n pageNo: pagination.pageNo,\n pageSize: pagination.pageSize,\n pageNum: pagination.pageNo,\n })\n } else if (props.data?.length) {\n customData.value = props.data\n }\n }\n }\n if (!props.api) {\n watch(\n () => props.data,\n (newValue) => {\n customData.value = newValue as Record<string, any>[]\n },\n {\n deep: true,\n },\n )\n }\n\n const { pagination, paginationProps } = usePagination(props, search)\n\n // 初始化加载\n ;(async () => {\n if (props.isInitSearch) {\n if (props.customColumnModule) {\n loading!.value = true\n const columns = await bus.once('loadedCustomColumn')\n loading!.value = false\n customColumns.value = columns\n bus.on('loadedCustomColumn', (columns: TableColumn[]) => {\n customColumns.value = columns\n })\n }\n search(true)\n }\n })()\n\n // 校验\n const validate = () => {\n return elFormRef.value!.validate()\n }\n // 重置校验\n const resetFields = (props: FormItemProp) => {\n return elFormRef.value!.resetFields(props)\n }\n // 清理选择,用于多选表格,清空用户的选择\n const clearSelection = () => {\n return elTableRef.value!.clearSelection()\n }\n // 清理某个字段的表单验证信息\n const clearValidate = (props: FormItemProp) => {\n return elFormRef.value!.clearValidate(props)\n }\n // 格式化操作按钮\n const formatActionButtons = (list: ButtonProps[], scope: TableScope) => {\n return list.map((item) => {\n if (item.onClick) {\n item.onClick = item.onClick.bind(null, scope)\n }\n return item\n })\n }\n\n return {\n loading,\n data: customData,\n search,\n pagination,\n paginationProps,\n validate,\n clearSelection,\n resetFields,\n clearValidate,\n elFormRef,\n elTableRef,\n formatActionButtons,\n customColumns: customColumns as unknown as Ref<TableColumn[]>,\n }\n}\nconst usePagination = function (props: TableProps, search: ISearch) {\n const pageSizes = [20, 50, 100, 200]\n const pagination = reactive({\n total: 0,\n pageNo: 1,\n pageSize: pageSizes[0],\n })\n const paginationProps = computed(() => {\n const defaultPaginationProps = props.paginationProps || {}\n const onSizeChange = defaultPaginationProps.onSizeChange\n const onCurrentChange = defaultPaginationProps.onCurrentChange\n return {\n ...defaultPaginationProps,\n pageSizes,\n layout: 'total, sizes, prev, pager, next, jumper',\n onSizeChange: (value: number) => {\n onSizeChange && onSizeChange(value)\n search(true, true)\n },\n onCurrentChange: (value: number) => {\n onCurrentChange && onCurrentChange(value)\n search(false, true)\n },\n }\n })\n return {\n pagination,\n paginationProps,\n }\n}\n\nexport const useTableColumn = (\n props: TableProps,\n tableData: Ref<TableProps['data']>,\n customColumns: Ref<TableColumn[]>,\n) => {\n const instance = getCurrentInstance()\n const columnProps = (column: TableColumn) => {\n column.props = column.props || {}\n const attrs = {\n 'show-overflow-tooltip': true,\n align: column.align || props.align,\n minWidth: column.minWidth || props.minWidth,\n // ...prepareEvents<TableEmits>(emit, tableEmits),\n } as TableColumn\n if (!column.renderHeader) {\n // 必填\n let required = column.required\n if (typeof column.required === 'function') {\n required = column.required()\n }\n // 批量编辑\n const editable = column.editable\n attrs['renderHeader'] = () => {\n return (\n <span>\n {required ? (\n <span style=\"color:var(--el-color-danger)\"> * </span>\n ) : (\n ''\n )}\n <span\n class={{ 'is-edit': editable }}\n onClick={\n editable\n ? async () => {\n const cloneColumn = { ...column }\n delete cloneColumn.editable\n const rawRender = cloneColumn.render\n const formData = reactive({})\n if (rawRender) {\n cloneColumn.render = () => {\n return rawRender({\n row: formData,\n })\n }\n }\n const formDialog = useFormDialog({\n title: cloneColumn.label,\n dialogProps: {\n destroyOnClose: true,\n instance,\n },\n formItemList: [\n cloneColumn,\n ] as FormProps['formItemList'],\n formData,\n // formData: reactive({}),\n })\n const data = (await formDialog.open()) as Record<\n string,\n any\n >\n ;(tableData.value || []).forEach((item) => {\n item[column.prop!] = data![column.prop!]\n })\n if (typeof editable === 'function') {\n editable(toRaw(data))\n }\n }\n : void 0\n }\n >\n {column.label}\n {editable ? (\n <ElIcon>\n <EditPen />\n </ElIcon>\n ) : (\n ''\n )}\n </span>\n </span>\n )\n }\n }\n if (column.filter) {\n const arr = tableData.value!.map((item) => item[column.prop!])\n attrs.filters = [...new Set(arr)].map((item) => {\n return {\n text: item,\n value: item,\n }\n })\n attrs.filterMethod = (value, row) => {\n return row[column.prop!] === value\n }\n }\n if (column.type === 'EpLink') {\n attrs.className = 'table-column-link'\n }\n\n return {\n ...attrs,\n ...prepareProps(column),\n }\n }\n const columnList = computed(() => {\n const columns = props.customColumnModule\n ? customColumns.value\n : props.columns\n return columns!\n .map((column: TableColumn) => {\n const newColumn = columnProps(column)\n if (props.formatColumns!.length) {\n const formatColumn = props.formatColumns!.find(\n (item) => item.prop === column.prop,\n )\n if (formatColumn) {\n // newColumn = { ...newColumn, ...formatColumn }\n merge(newColumn, formatColumn)\n }\n }\n return newColumn\n })\n .filter((column) => {\n if ('show' in column) {\n return typeof column.show === 'function'\n ? column.show(column)\n : column.show\n } else if ('hide' in column) {\n return typeof column.hide === 'function'\n ? !column.hide(column)\n : !column.hide\n }\n return true\n })\n })\n return {\n columnList,\n }\n}\n\nexport const useTableFormItem = (props: TableProps) => {\n const formItemProps = (scope: TableScope, rawItem: TableColumn) => {\n const item = cloneDeep(rawItem)\n let required = item.required\n if (typeof required === 'function') {\n required = required()\n }\n if (item.cellRequired) {\n required = item.cellRequired(scope)\n }\n let disabled = props.disabled\n if ('disabled' in item) {\n if (typeof item.disabled === 'function') {\n disabled = item.disabled(scope)\n } else {\n disabled = item.disabled || false\n }\n }\n if (item.type === 'EpSelect' && item.props) {\n if ('options' in item.props && typeof item.props.options === 'function') {\n item.props.options = item.props.options(scope)\n }\n if (\n 'disabledOption' in item.props &&\n typeof item.props.disabledOption === 'function'\n ) {\n const disabledOption = item.props.disabledOption\n item.props.disabledOption = (...args: unknown[]) =>\n disabledOption(...args, scope)\n }\n if ('desc' in item.props && typeof item.props.desc === 'function') {\n item.props.desc = item.props.desc(scope)\n }\n }\n\n if (item.type === 'EpButtons' && item.props) {\n item.props.list.forEach((btnItem: ButtonProps) => {\n if (btnItem.prop) {\n btnItem.name = scope.row[btnItem.prop] as string\n }\n if (btnItem.onClick) {\n btnItem.onClick = btnItem.onClick.bind(null, scope)\n }\n })\n }\n if (item.type === 'EpLink') {\n ;(item.props ? item.props : (item.props = {})).content =\n item.props.content || scope.row[item.prop!]\n }\n for (const key in item) {\n if (key.startsWith('on') && typeof item[key] === 'function') {\n const fn = item[key]\n item[key] = (...args: unknown[]) => {\n let event: Event | unknown\n if (args[0] instanceof Event) {\n // 删除 event\n event = args.shift()\n }\n return fn(...args, scope, event)\n }\n }\n }\n return {\n ...prepareProps(item),\n isShowLabel: false,\n required,\n hideRequiredAsterisk: 'cellRequired' in item ? false : required,\n prop: `table.${scope.$index}.${item.prop}`,\n tableProp: item.prop, // table里的表单需要绑定的prop\n props: {\n ...item.props,\n disabled,\n },\n }\n }\n return {\n formItemProps,\n }\n}\n"],"names":["useTable","props","elFormRef","useTemplateRef","elTableRef","customData","ref","loading","requestFn","useRequest","api","method","reqData","reqParams","reqBefore","reqAfter","cancelToken","hooks","success","data","Array","isArray","value","rawData","list","showPagination","pagination","total","isFrontPage","length","fail","error","console","customColumns","attrs","useAttrs","search","init","isPagination","beforeSearch","nextTick","pageNo","pageSize","filter","item","index","pageNum","watch","newValue","deep","paginationProps","usePagination","isInitSearch","customColumnModule","columns","bus","once","on","validate","resetFields","clearSelection","clearValidate","formatActionButtons","scope","map","onClick","bind","pageSizes","reactive","computed","defaultPaginationProps","onSizeChange","onCurrentChange","layout","useTableColumn","tableData","instance","getCurrentInstance","columnProps","column","align","minWidth","renderHeader","required","editable","_createVNode","_createTextVNode","cloneColumn","rawRender","render","formData","row","formDialog","useFormDialog","title","label","dialogProps","destroyOnClose","formItemList","open","forEach","prop","toRaw","ElIcon","default","EditPen","arr","filters","Set","text","filterMethod","type","className","prepareProps","columnList","newColumn","formatColumns","formatColumn","find","merge","show","hide","useTableFormItem","formItemProps","rawItem","cloneDeep","cellRequired","disabled","options","disabledOption","args","desc","btnItem","name","content","key","startsWith","fn","event","Event","shift","isShowLabel","hideRequiredAsterisk","$index","tableProp"],"mappings":"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"}
@@ -27,6 +27,11 @@ const useChooseDialog = (options = {}) => {
27
27
  }, [t("ep.chooseDialog.selected"), selections.value.length, t("ep.chooseDialog.unit")]);
28
28
  };
29
29
  }
30
+ const clearSelections = async () => {
31
+ selections.value = [];
32
+ searchListPageRef.value?.tableRef?.clearSelection();
33
+ };
34
+ let searchListPageRef;
30
35
  return useDialog.useDialog({
31
36
  class: bem.b(),
32
37
  width: "80%",
@@ -35,12 +40,22 @@ const useChooseDialog = (options = {}) => {
35
40
  title,
36
41
  onConfirm: (resolve) => {
37
42
  resolve(JSON.parse(JSON.stringify(selections.value)));
43
+ clearSelections();
44
+ },
45
+ onCancel: async (resolve) => {
46
+ clearSelections();
47
+ resolve();
38
48
  },
39
49
  render: ({
40
50
  resolve
41
51
  }) => {
52
+ if (!searchListPageRef) {
53
+ searchListPageRef = vue.useTemplateRef("searchListPage");
54
+ }
42
55
  const formData = rest.formData || vue.reactive({});
43
- return vue.createVNode(index.EpSearchListPage, {
56
+ return vue.createVNode(index.EpSearchListPage, vue.mergeProps({
57
+ "ref": "searchListPage"
58
+ }, {
44
59
  showSelectionCol: multiple,
45
60
  showSingleSelectionCol,
46
61
  formData,
@@ -59,7 +74,7 @@ const useChooseDialog = (options = {}) => {
59
74
  resolve(vue.toRaw(selections));
60
75
  }
61
76
  }
62
- }, null);
77
+ }), null);
63
78
  },
64
79
  ...dialogProps
65
80
  });
@@ -1 +1 @@
1
- {"version":3,"file":"use-choose-dialog.js","sources":["../../../../../packages/hooks/dialog/use-choose-dialog.tsx"],"sourcesContent":["import { useDialog } from './use-dialog'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport { EpSearchListPage } from '@el-plus/components/search-list-page'\nimport type { DialogOptions } from './use-dialog'\nimport type { SearchListPageProps } from '@el-plus/components/search-list-page'\nimport { reactive, ref, toRaw } from 'vue'\nconst bem = createNameSpace('choose-dialog')\nimport { useLocale } from '@el-plus/hooks/use-locale'\n\ntype Options = {\n title?: string\n dialogProps?: DialogOptions\n multiple?: boolean\n} & SearchListPageProps\nexport const useChooseDialog = (options: Options = {}) => {\n const { t } = useLocale()\n const { dialogProps, title, multiple, ...rest } = options\n const selections = ref([])\n const showSingleSelectionCol = !multiple\n const scopedSlots: DialogOptions['scopedSlots'] = {}\n if (!showSingleSelectionCol) {\n scopedSlots.footerPrepend = () => {\n return (\n <span class={bem.e('selected-count')}>\n {t('ep.chooseDialog.selected')}\n {selections.value.length}\n {t('ep.chooseDialog.unit')}\n </span>\n )\n }\n }\n return useDialog({\n class: bem.b(),\n width: '80%',\n showFooter: !showSingleSelectionCol,\n scopedSlots,\n title,\n onConfirm: (resolve) => {\n resolve(JSON.parse(JSON.stringify(selections.value)))\n },\n render: ({ resolve }) => {\n const formData = rest.formData || reactive({})\n return (\n <EpSearchListPage\n {...{\n showSelectionCol: multiple,\n showSingleSelectionCol,\n formData,\n ...rest,\n formProps: {\n col: 3,\n ...rest.formProps,\n },\n tableProps: {\n height: 300,\n onSelectionChange: (newSel) => {\n selections.value = newSel\n },\n onSingleSelectionChange: (newSel) => {\n selections.value = newSel\n resolve(toRaw(selections))\n },\n },\n }}\n />\n )\n },\n ...dialogProps,\n })\n}\n"],"names":["bem","createNameSpace","useChooseDialog","options","t","useLocale","dialogProps","title","multiple","rest","selections","ref","showSingleSelectionCol","scopedSlots","footerPrepend","_createVNode","e","value","length","useDialog","class","b","width","showFooter","onConfirm","resolve","JSON","parse","stringify","render","formData","reactive","EpSearchListPage","showSelectionCol","formProps","col","tableProps","height","onSelectionChange","newSel","onSingleSelectionChange","toRaw"],"mappings":";;;;;;;;AAMA,MAAMA,GAAAA,GAAMC,sBAAgB,eAAe,CAAA;AAQpC,MAAMC,eAAAA,GAAkBA,CAACC,OAAAA,GAAmB,EAAC,KAAM;AACxD,EAAA,MAAM;AAAA,IAAEC;AAAAA,MAAMC,mBAAAA,EAAU;AACxB,EAAA,MAAM;AAAA,IAAEC,WAAAA;AAAAA,IAAaC,KAAAA;AAAAA,IAAOC,QAAAA;AAAAA,IAAU,GAAGC;AAAAA,GAAK,GAAIN,OAAAA;AAClD,EAAA,MAAMO,UAAAA,GAAaC,OAAAA,CAAI,EAAE,CAAA;AACzB,EAAA,MAAMC,yBAAyB,CAACJ,QAAAA;AAChC,EAAA,MAAMK,cAA4C,EAAC;AACnD,EAAA,IAAI,CAACD,sBAAAA,EAAwB;AAC3BC,IAAAA,WAAAA,CAAYC,gBAAgB,MAAM;AAChC,MAAA,OAAAC,gBAAA,MAAA,EAAA;AAAA,QAAA,OAAA,EACef,GAAAA,CAAIgB,CAAAA,CAAE,gBAAgB;AAAA,OAAC,EAAA,CACjCZ,CAAAA,CAAE,0BAA0B,CAAA,EAC5BM,UAAAA,CAAWO,KAAAA,CAAMC,MAAAA,EACjBd,CAAAA,CAAE,sBAAsB,CAAC,CAAA,CAAA;AAAA,IAGhC,CAAA;AAAA,EACF;AACA,EAAA,OAAOe,mBAAAA,CAAU;AAAA,IACfC,KAAAA,EAAOpB,IAAIqB,CAAAA,EAAE;AAAA,IACbC,KAAAA,EAAO,KAAA;AAAA,IACPC,YAAY,CAACX,sBAAAA;AAAAA,IACbC,WAAAA;AAAAA,IACAN,KAAAA;AAAAA,IACAiB,WAAYC,CAAAA,OAAAA,KAAY;AACtBA,MAAAA,OAAAA,CAAQC,KAAKC,KAAAA,CAAMD,IAAAA,CAAKE,UAAUlB,UAAAA,CAAWO,KAAK,CAAC,CAAC,CAAA;AAAA,IACtD,CAAA;AAAA,IACAY,QAAQA,CAAC;AAAA,MAAEJ;AAAAA,KAAQ,KAAM;AACvB,MAAA,MAAMK,QAAAA,GAAWrB,IAAAA,CAAKqB,QAAAA,IAAYC,YAAAA,CAAS,EAAE,CAAA;AAC7C,MAAA,OAAAhB,gBAAAiB,sBAAAA,EAAA;AAAA,QAGMC,gBAAAA,EAAkBzB,QAAAA;AAAAA,QAClBI,sBAAAA;AAAAA,QACAkB,QAAAA;AAAAA,QACA,GAAGrB,IAAAA;AAAAA,QACHyB,SAAAA,EAAW;AAAA,UACTC,GAAAA,EAAK,CAAA;AAAA,UACL,GAAG1B,IAAAA,CAAKyB;AAAAA,SACV;AAAA,QACAE,UAAAA,EAAY;AAAA,UACVC,MAAAA,EAAQ,GAAA;AAAA,UACRC,mBAAoBC,CAAAA,MAAAA,KAAW;AAC7B7B,YAAAA,UAAAA,CAAWO,KAAAA,GAAQsB,MAAAA;AAAAA,UACrB,CAAA;AAAA,UACAC,yBAA0BD,CAAAA,MAAAA,KAAW;AACnC7B,YAAAA,UAAAA,CAAWO,KAAAA,GAAQsB,MAAAA;AACnBd,YAAAA,OAAAA,CAAQgB,SAAAA,CAAM/B,UAAU,CAAC,CAAA;AAAA,UAC3B;AAAA;AACF,SAAC,IAAA,CAAA;AAAA,IAIT,CAAA;AAAA,IACA,GAAGJ;AAAAA,GACJ,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"use-choose-dialog.js","sources":["../../../../../packages/hooks/dialog/use-choose-dialog.tsx"],"sourcesContent":["import { useDialog } from './use-dialog'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport {\n EpSearchListPage,\n type SearchListPageInstance,\n} from '@el-plus/components/search-list-page'\nimport type { DialogOptions } from './use-dialog'\nimport type { SearchListPageProps } from '@el-plus/components/search-list-page'\nimport { reactive, ref, toRaw, useTemplateRef, nextTick } from 'vue'\nconst bem = createNameSpace('choose-dialog')\nimport { useLocale } from '@el-plus/hooks/use-locale'\n\ntype Options = {\n title?: string\n dialogProps?: DialogOptions\n multiple?: boolean\n} & SearchListPageProps\nexport const useChooseDialog = (options: Options = {}) => {\n const { t } = useLocale()\n const { dialogProps, title, multiple, ...rest } = options\n const selections = ref([])\n const showSingleSelectionCol = !multiple\n const scopedSlots: DialogOptions['scopedSlots'] = {}\n if (!showSingleSelectionCol) {\n scopedSlots.footerPrepend = () => {\n return (\n <span class={bem.e('selected-count')}>\n {t('ep.chooseDialog.selected')}\n {selections.value.length}\n {t('ep.chooseDialog.unit')}\n </span>\n )\n }\n }\n const clearSelections = async () => {\n selections.value = []\n searchListPageRef.value?.tableRef?.clearSelection() // 清理表格选中\n }\n let searchListPageRef\n return useDialog({\n class: bem.b(),\n width: '80%',\n showFooter: !showSingleSelectionCol,\n scopedSlots,\n title,\n onConfirm: (resolve) => {\n resolve(JSON.parse(JSON.stringify(selections.value)))\n clearSelections()\n },\n onCancel: async (resolve) => {\n clearSelections()\n resolve()\n },\n render: ({ resolve }) => {\n if (!searchListPageRef) {\n searchListPageRef =\n useTemplateRef<SearchListPageInstance>('searchListPage')\n }\n\n const formData = rest.formData || reactive({})\n return (\n <EpSearchListPage\n ref=\"searchListPage\"\n {...{\n showSelectionCol: multiple,\n showSingleSelectionCol,\n formData,\n ...rest,\n formProps: {\n col: 3,\n ...rest.formProps,\n },\n tableProps: {\n height: 300,\n onSelectionChange: (newSel) => {\n selections.value = newSel\n },\n onSingleSelectionChange: (newSel) => {\n selections.value = newSel\n resolve(toRaw(selections))\n },\n },\n }}\n />\n )\n },\n ...dialogProps,\n })\n}\n"],"names":["bem","createNameSpace","useChooseDialog","options","t","useLocale","dialogProps","title","multiple","rest","selections","ref","showSingleSelectionCol","scopedSlots","footerPrepend","_createVNode","e","value","length","clearSelections","searchListPageRef","tableRef","clearSelection","useDialog","class","b","width","showFooter","onConfirm","resolve","JSON","parse","stringify","onCancel","render","useTemplateRef","formData","reactive","EpSearchListPage","_mergeProps","showSelectionCol","formProps","col","tableProps","height","onSelectionChange","newSel","onSingleSelectionChange","toRaw"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-dialog.js","sources":["../../../../../packages/hooks/dialog/use-dialog.tsx"],"sourcesContent":["import { useTemplatePromise } from '../use-template-promise'\nimport {\n h,\n getCurrentInstance,\n render as vRender,\n markRaw,\n ref,\n useTemplateRef,\n inject,\n nextTick,\n} from 'vue'\nimport type { ComponentInternalInstance } from 'vue'\nimport {\n ElDialog,\n ElButton,\n configProviderContextKey,\n ElConfigProvider,\n} from 'element-plus'\nimport type { AppContext, VNode } from 'vue'\nimport type { DialogProps } from 'element-plus'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport {\n prepareProps,\n prepareEvents,\n prepareClassNames,\n prepareStyles,\n} from '@el-plus/utils/props'\nimport { useLocale } from '../use-locale'\n\nexport type DialogOptions = Partial<\n DialogProps & {\n instance: ComponentInternalInstance | null\n render: (props) => VNode\n scopedSlots: Record<string, (props) => VNode>\n class: string\n onCancel: (reject) => void\n onConfirm: (resolve) => void\n showFooter: boolean\n }\n>\nexport type ExpandDialogOptions = {\n title?: string\n dialogProps?: DialogOptions\n}\nconst bem = createNameSpace('dialog')\n\nexport const useDialog = (options: DialogOptions = {}) => {\n const { t } = useLocale()\n const {\n scopedSlots = {},\n instance,\n render,\n destroyOnClose,\n onConfirm,\n onCancel,\n showFooter = true,\n ...dialogProps\n } = options\n\n const Dialog = useTemplatePromise<any>({\n destroy: destroyOnClose,\n render: (promiseOptions, ctx) => {\n // 插槽参数增加promiseOptions\n for (const key in scopedSlots) {\n scopedSlots[key] = scopedSlots[key].bind(null, promiseOptions)\n }\n const { resolve, reject, isResolving } = promiseOptions\n const renderFunc = () => {\n return render\n ? render(promiseOptions)\n : ctx.slots.default?.(promiseOptions)\n }\n const slots: DialogOptions['scopedSlots'] = {}\n if (showFooter) {\n slots.footer = () => (\n <div class={bem.e('footer')}>\n {scopedSlots.footerPrepend?.(promiseOptions)}\n <ElButton\n size=\"default\"\n onClick={() => {\n if (onCancel) {\n onCancel(reject)\n } else {\n reject('cancel')\n }\n }}\n >\n {t('ep.dialog.cancel')}\n </ElButton>\n {scopedSlots.footerInner?.(promiseOptions)}\n <ElButton\n type=\"primary\"\n onClick={async () => {\n if (onConfirm) {\n onConfirm(resolve)\n } else {\n resolve('confirm')\n }\n }}\n loading={isResolving}\n >\n {t('ep.dialog.confirm')}\n </ElButton>\n {scopedSlots.footerAppend?.(promiseOptions)}\n </div>\n )\n }\n return (\n <ElDialog\n class={bem.b()}\n modelValue={true}\n {...{\n closeOnClickModal: false,\n closeOnPressEscape: false,\n title: t('ep.dialog.title'),\n center: false,\n // 'append-to-body': true,\n beforeClose: () => {\n reject('cancel')\n },\n ...prepareProps(dialogProps, ['modelValue']),\n }}\n v-slots={{\n ...slots,\n ...scopedSlots,\n }}\n >\n {renderFunc()}\n </ElDialog>\n )\n },\n })\n if (render) {\n // const app = createApp(component)\n // Object.assign(app._context, parentInstance.appContext)\n // app.mount(container)\n const container = document.createElement('div')\n // container.setAttribute('id', 'ep-dialog-container')\n const newInstance = instance || getCurrentInstance()\n const config = inject(configProviderContextKey) as any\n // const parentConfig =\n // newInstance?.provides[configProviderContextKey] ||\n // newInstance?.appContext?.provides[configProviderContextKey]\n // const vnode = h(Dialog)\n const vnode = h(\n ElConfigProvider,\n { locale: config?.locale },\n { default: () => h(Dialog) },\n )\n if (newInstance && newInstance.appContext) {\n // 强制继承父应用的全局组件、指令和插件\n vnode.appContext = newInstance.appContext\n }\n nextTick(() => {\n vRender(vnode, container)\n document.body.appendChild(container)\n })\n }\n\n return Dialog\n}\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","bem","createNameSpace","useDialog","options","t","useLocale","scopedSlots","instance","render","destroyOnClose","onConfirm","onCancel","showFooter","dialogProps","Dialog","useTemplatePromise","destroy","promiseOptions","ctx","key","bind","resolve","reject","isResolving","renderFunc","slots","default","footer","_slot","_slot2","_createVNode","e","footerPrepend","ElButton","onClick","footerInner","footerAppend","ElDialog","_mergeProps","b","closeOnClickModal","closeOnPressEscape","title","center","beforeClose","prepareProps","container","document","createElement","newInstance","getCurrentInstance","config","inject","configProviderContextKey","vnode","h","ElConfigProvider","locale","appContext","nextTick","vRender","body","appendChild"],"mappings":"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"}
1
+ {"version":3,"file":"use-dialog.js","sources":["../../../../../packages/hooks/dialog/use-dialog.tsx"],"sourcesContent":["import { useTemplatePromise } from '../use-template-promise'\nimport { h, getCurrentInstance, render as vRender, inject, nextTick } from 'vue'\nimport type { ComponentInternalInstance } from 'vue'\nimport {\n ElDialog,\n ElButton,\n configProviderContextKey,\n ElConfigProvider,\n} from 'element-plus'\nimport type { VNode } from 'vue'\nimport type { DialogProps } from 'element-plus'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport { prepareProps } from '@el-plus/utils/props'\nimport { useLocale } from '../use-locale'\n\nexport type DialogOptions = Partial<\n DialogProps & {\n instance: ComponentInternalInstance | null\n render: (props) => VNode\n scopedSlots: Record<string, (props) => VNode>\n class: string\n onCancel: (reject) => void\n onConfirm: (resolve) => void\n showFooter: boolean\n }\n>\nexport type ExpandDialogOptions = {\n title?: string\n dialogProps?: DialogOptions\n}\nconst bem = createNameSpace('dialog')\n\nexport const useDialog = (options: DialogOptions = {}) => {\n const { t } = useLocale()\n const {\n scopedSlots = {},\n instance,\n render,\n destroyOnClose,\n onConfirm,\n onCancel,\n showFooter = true,\n ...dialogProps\n } = options\n\n const Dialog = useTemplatePromise<any>({\n destroy: destroyOnClose,\n render: (promiseOptions, ctx) => {\n // 插槽参数增加promiseOptions\n for (const key in scopedSlots) {\n scopedSlots[key] = scopedSlots[key].bind(null, promiseOptions)\n }\n const { resolve, reject, isResolving } = promiseOptions\n const renderFunc = () => {\n return render\n ? render(promiseOptions)\n : ctx.slots.default?.(promiseOptions)\n }\n const slots: DialogOptions['scopedSlots'] = {}\n if (showFooter) {\n slots.footer = () => (\n <div class={bem.e('footer')}>\n {scopedSlots.footerPrepend?.(promiseOptions)}\n <ElButton\n size=\"default\"\n onClick={() => {\n if (onCancel) {\n onCancel(reject)\n } else {\n reject('cancel')\n }\n }}\n >\n {t('ep.dialog.cancel')}\n </ElButton>\n {scopedSlots.footerInner?.(promiseOptions)}\n <ElButton\n type=\"primary\"\n onClick={async () => {\n if (onConfirm) {\n onConfirm(resolve)\n } else {\n resolve('confirm')\n }\n }}\n loading={isResolving}\n >\n {t('ep.dialog.confirm')}\n </ElButton>\n {scopedSlots.footerAppend?.(promiseOptions)}\n </div>\n )\n }\n return (\n <ElDialog\n class={bem.b()}\n modelValue={true}\n {...{\n closeOnClickModal: false,\n closeOnPressEscape: false,\n title: t('ep.dialog.title'),\n center: false,\n // 'append-to-body': true,\n beforeClose: () => {\n reject('cancel')\n },\n ...prepareProps(dialogProps, ['modelValue']),\n }}\n v-slots={{\n ...slots,\n ...scopedSlots,\n }}\n >\n {renderFunc()}\n </ElDialog>\n )\n },\n })\n if (render) {\n // const app = createApp(component)\n // Object.assign(app._context, parentInstance.appContext)\n // app.mount(container)\n const container = document.createElement('div')\n // container.setAttribute('id', 'ep-dialog-container')\n const newInstance = instance || getCurrentInstance()\n const config = inject(configProviderContextKey) as any\n // const parentConfig =\n // newInstance?.provides[configProviderContextKey] ||\n // newInstance?.appContext?.provides[configProviderContextKey]\n // const vnode = h(Dialog)\n const vnode = h(\n ElConfigProvider,\n { locale: config?.locale },\n { default: () => h(Dialog) },\n )\n if (newInstance && newInstance.appContext) {\n // 强制继承父应用的全局组件、指令和插件\n vnode.appContext = newInstance.appContext\n }\n nextTick(() => {\n vRender(vnode, container)\n document.body.appendChild(container)\n })\n }\n\n return Dialog\n}\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","bem","createNameSpace","useDialog","options","t","useLocale","scopedSlots","instance","render","destroyOnClose","onConfirm","onCancel","showFooter","dialogProps","Dialog","useTemplatePromise","destroy","promiseOptions","ctx","key","bind","resolve","reject","isResolving","renderFunc","slots","default","footer","_slot","_slot2","_createVNode","e","footerPrepend","ElButton","onClick","footerInner","footerAppend","ElDialog","_mergeProps","b","closeOnClickModal","closeOnPressEscape","title","center","beforeClose","prepareProps","container","document","createElement","newInstance","getCurrentInstance","config","inject","configProviderContextKey","vnode","h","ElConfigProvider","locale","appContext","nextTick","vRender","body","appendChild"],"mappings":"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"}
@@ -13,7 +13,14 @@ const useFormDialog = (options = {}) => {
13
13
  ...formProps
14
14
  } = options;
15
15
  const formRef = vue.ref();
16
- let formData = formProps.formData || vue.reactive({});
16
+ const isUseComFormData = !formProps.formData;
17
+ let formData = isUseComFormData ? vue.reactive({}) : formProps.formData;
18
+ const isDestroy = dialogProps?.destroyOnClose;
19
+ const resetForm = async () => {
20
+ if (isDestroy) {
21
+ await formRef.value?.resetFields();
22
+ }
23
+ };
17
24
  return useDialog.useDialog({
18
25
  class: bem.b(),
19
26
  width: "80%",
@@ -31,7 +38,12 @@ const useFormDialog = (options = {}) => {
31
38
  },
32
39
  onConfirm: async (resolve) => {
33
40
  await formRef.value.validate();
34
- resolve(formData);
41
+ resolve(JSON.parse(JSON.stringify(formData)));
42
+ resetForm();
43
+ },
44
+ onCancel: async (resolve) => {
45
+ await resetForm();
46
+ resolve("cancel");
35
47
  },
36
48
  ...dialogProps
37
49
  });
@@ -1 +1 @@
1
- {"version":3,"file":"use-form-dialog.js","sources":["../../../../../packages/hooks/dialog/use-form-dialog.tsx"],"sourcesContent":["import type { DialogOptions } from './use-dialog'\nimport type { FormProps } from '@el-plus/components/form'\nimport EpForm from '@el-plus/components/form'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport { useDialog } from './use-dialog'\nimport { reactive, ref } from 'vue'\nconst bem = createNameSpace('form-dialog')\n\ntype Options = {\n title?: string\n dialogProps?: DialogOptions\n formData?: FormProps['model']\n} & FormProps\nexport const useFormDialog = (options: Options = {}) => {\n const { dialogProps, title, ...formProps } = options\n const formRef = ref()\n let formData = formProps.formData || reactive({}) // eslint-disable-line\n return useDialog({\n class: bem.b(),\n width: '80%',\n title,\n render: (props) => {\n return (\n <EpForm\n ref={formRef}\n v-model={formData}\n {...{\n col: 1,\n 'label-width': 'auto',\n ...formProps,\n }}\n />\n )\n },\n onConfirm: async (resolve) => {\n await formRef.value.validate()\n resolve(formData)\n },\n ...dialogProps,\n })\n}\n"],"names":["bem","createNameSpace","useFormDialog","options","dialogProps","title","formProps","formRef","ref","formData","reactive","useDialog","class","b","width","render","props","_createVNode","EpForm","_mergeProps","$event","col","onConfirm","resolve","value","validate"],"mappings":";;;;;;;AAMA,MAAMA,GAAAA,GAAMC,sBAAgB,aAAa,CAAA;AAOlC,MAAMC,aAAAA,GAAgBA,CAACC,OAAAA,GAAmB,EAAC,KAAM;AACtD,EAAA,MAAM;AAAA,IAAEC,WAAAA;AAAAA,IAAaC,KAAAA;AAAAA,IAAO,GAAGC;AAAAA,GAAU,GAAIH,OAAAA;AAC7C,EAAA,MAAMI,UAAUC,OAAAA,EAAI;AACpB,EAAA,IAAIC,QAAAA,GAAWH,SAAAA,CAAUG,QAAAA,IAAYC,YAAAA,CAAS,EAAE,CAAA;AAChD,EAAA,OAAOC,mBAAAA,CAAU;AAAA,IACfC,KAAAA,EAAOZ,IAAIa,CAAAA,EAAE;AAAA,IACbC,KAAAA,EAAO,KAAA;AAAA,IACPT,KAAAA;AAAAA,IACAU,QAASC,CAAAA,KAAAA,KAAU;AACjB,MAAA,OAAAC,eAAAA,CAAAC,cAAAC,cAAAA,CAAA;AAAA,QAAA,KAAA,EAESZ,OAAAA;AAAAA,QAAO,YAAA,EACHE,QAAAA;AAAAA,QAAQ,qBAAA,EAAAW,YAARX,QAAAA,GAAQW;AAAAA,OAAA,EAAA;AAAA,QAEfC,GAAAA,EAAK,CAAA;AAAA,QACL,aAAA,EAAe,MAAA;AAAA,QACf,GAAGf;AAAAA,OAAS,GAAA,IAAA,CAAA;AAAA,IAIpB,CAAA;AAAA,IACAgB,SAAAA,EAAW,OAAOC,OAAAA,KAAY;AAC5B,MAAA,MAAMhB,OAAAA,CAAQiB,MAAMC,QAAAA,EAAS;AAC7BF,MAAAA,OAAAA,CAAQd,QAAQ,CAAA;AAAA,IAClB,CAAA;AAAA,IACA,GAAGL;AAAAA,GACJ,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"use-form-dialog.js","sources":["../../../../../packages/hooks/dialog/use-form-dialog.tsx"],"sourcesContent":["import type { DialogOptions } from './use-dialog'\nimport type { FormProps } from '@el-plus/components/form'\nimport EpForm from '@el-plus/components/form'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport { useDialog } from './use-dialog'\nimport { reactive, ref, toRaw } from 'vue'\nconst bem = createNameSpace('form-dialog')\n\ntype Options = {\n title?: string\n dialogProps?: DialogOptions\n formData?: FormProps['model']\n} & FormProps\nexport const useFormDialog = (options: Options = {}) => {\n const { dialogProps, title, ...formProps } = options\n const formRef = ref()\n const isUseComFormData = !formProps.formData\n let formData = isUseComFormData ? reactive({}) : formProps.formData // eslint-disable-line\n const isDestroy = dialogProps?.destroyOnClose\n const resetForm = async () => {\n if (isDestroy) {\n await formRef.value?.resetFields()\n }\n }\n return useDialog({\n class: bem.b(),\n width: '80%',\n title,\n render: (props) => {\n return (\n <EpForm\n ref={formRef}\n v-model={formData}\n {...{\n col: 1,\n 'label-width': 'auto',\n ...formProps,\n }}\n />\n )\n },\n onConfirm: async (resolve) => {\n await formRef.value.validate()\n resolve(JSON.parse(JSON.stringify(formData)))\n resetForm()\n },\n onCancel: async (resolve) => {\n await resetForm()\n resolve('cancel')\n },\n ...dialogProps,\n })\n}\n"],"names":["bem","createNameSpace","useFormDialog","options","dialogProps","title","formProps","formRef","ref","isUseComFormData","formData","reactive","isDestroy","destroyOnClose","resetForm","value","resetFields","useDialog","class","b","width","render","props","_createVNode","EpForm","_mergeProps","$event","col","onConfirm","resolve","validate","JSON","parse","stringify","onCancel"],"mappings":";;;;;;;AAMA,MAAMA,GAAAA,GAAMC,sBAAgB,aAAa,CAAA;AAOlC,MAAMC,aAAAA,GAAgBA,CAACC,OAAAA,GAAmB,EAAC,KAAM;AACtD,EAAA,MAAM;AAAA,IAAEC,WAAAA;AAAAA,IAAaC,KAAAA;AAAAA,IAAO,GAAGC;AAAAA,GAAU,GAAIH,OAAAA;AAC7C,EAAA,MAAMI,UAAUC,OAAAA,EAAI;AACpB,EAAA,MAAMC,gBAAAA,GAAmB,CAACH,SAAAA,CAAUI,QAAAA;AACpC,EAAA,IAAIA,WAAWD,gBAAAA,GAAmBE,YAAAA,CAAS,EAAE,IAAIL,SAAAA,CAAUI,QAAAA;AAC3D,EAAA,MAAME,YAAYR,WAAAA,EAAaS,cAAAA;AAC/B,EAAA,MAAMC,YAAY,YAAY;AAC5B,IAAA,IAAIF,SAAAA,EAAW;AACb,MAAA,MAAML,OAAAA,CAAQQ,OAAOC,WAAAA,EAAY;AAAA,IACnC;AAAA,EACF,CAAA;AACA,EAAA,OAAOC,mBAAAA,CAAU;AAAA,IACfC,KAAAA,EAAOlB,IAAImB,CAAAA,EAAE;AAAA,IACbC,KAAAA,EAAO,KAAA;AAAA,IACPf,KAAAA;AAAAA,IACAgB,QAASC,CAAAA,KAAAA,KAAU;AACjB,MAAA,OAAAC,eAAAA,CAAAC,cAAAC,cAAAA,CAAA;AAAA,QAAA,KAAA,EAESlB,OAAAA;AAAAA,QAAO,YAAA,EACHG,QAAAA;AAAAA,QAAQ,qBAAA,EAAAgB,YAARhB,QAAAA,GAAQgB;AAAAA,OAAA,EAAA;AAAA,QAEfC,GAAAA,EAAK,CAAA;AAAA,QACL,aAAA,EAAe,MAAA;AAAA,QACf,GAAGrB;AAAAA,OAAS,GAAA,IAAA,CAAA;AAAA,IAIpB,CAAA;AAAA,IACAsB,SAAAA,EAAW,OAAOC,OAAAA,KAAY;AAC5B,MAAA,MAAMtB,OAAAA,CAAQQ,MAAMe,QAAAA,EAAS;AAC7BD,MAAAA,OAAAA,CAAQE,KAAKC,KAAAA,CAAMD,IAAAA,CAAKE,SAAAA,CAAUvB,QAAQ,CAAC,CAAC,CAAA;AAC5CI,MAAAA,SAAAA,EAAU;AAAA,IACZ,CAAA;AAAA,IACAoB,QAAAA,EAAU,OAAOL,OAAAA,KAAY;AAC3B,MAAA,MAAMf,SAAAA,EAAU;AAChBe,MAAAA,OAAAA,CAAQ,QAAQ,CAAA;AAAA,IAClB,CAAA;AAAA,IACA,GAAGzB;AAAAA,GACJ,CAAA;AACH;;;;"}
@@ -41,9 +41,10 @@ const useRequest = ({
41
41
  ...reqParams,
42
42
  ...config.params
43
43
  };
44
- if (data.$query) {
45
- config.data[data.$query] = data.$searchValue;
46
- delete data.$searchValue;
44
+ if (config.data.$query) {
45
+ config.data[config.data.$query] = data.$searchValue;
46
+ delete config.data.$searchValue;
47
+ delete config.data.$query;
47
48
  }
48
49
  if (reqBefore) {
49
50
  reqBefore(config);
@@ -1 +1 @@
1
- {"version":3,"file":"use-request.js","sources":["../../../../packages/hooks/use-request.ts"],"sourcesContent":["import { ref } from 'vue'\nimport { type Ref } from 'vue'\nimport type { Api, ReqAfter, ReqBefore, Method } from '@el-plus/types'\nimport type { Canceler } from 'axios'\nimport { http } from '@el-plus/utils/http'\ntype UseRequest = (config: {\n api?: Api\n method?: Method\n reqData?: Record<string, unknown>\n reqParams?: Record<string, unknown>\n reqBefore?: ReqBefore\n reqAfter?: ReqAfter\n cancelToken?: boolean\n hooks?: {\n success?: (data: unknown) => void\n fail?: (error: unknown) => void\n }\n}) => {\n loading?: Ref<boolean>\n requestFn?: (data?: Record<string, unknown>) => Promise<void>\n}\n\nexport const useRequest: UseRequest = ({\n api,\n method = 'post',\n reqData,\n reqParams,\n reqBefore,\n reqAfter,\n cancelToken,\n hooks,\n}) => {\n if (!api) return {}\n const loading = ref(false)\n let cancelRequest: Canceler\n let apiFn\n if (typeof api === 'string') {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const config: Record<string, any> = {\n method,\n }\n if (cancelToken) {\n config.cancelRequest = (cancel: Canceler) => {\n cancelRequest = cancel\n }\n }\n\n apiFn = (data: Record<string, any> = {}, params?: Record<string, any>) => {\n if (config.method === 'get') {\n config.params = data\n } else {\n config.data = data\n config.params = params\n }\n config.data = {\n ...reqData,\n ...config.data,\n }\n config.params = {\n ...reqParams,\n ...config.params,\n }\n // 替换$query为$searchValue\n if (data.$query) {\n config.data[data.$query] = data.$searchValue\n delete data.$searchValue\n }\n\n if (reqBefore) {\n reqBefore(config)\n }\n return http.request(api, config)\n }\n } else {\n apiFn = api\n }\n const requestFn = async (data: Record<string, unknown> = {}) => {\n if (loading.value && !cancelToken) return\n loading.value = true\n try {\n cancelRequest && cancelRequest()\n const res = await apiFn(data)\n if (reqAfter) {\n reqAfter(res)\n }\n if (hooks?.success) {\n hooks.success(res.data)\n }\n } catch (error) {\n if (hooks?.fail) {\n hooks.fail(error)\n }\n } finally {\n loading.value = false\n }\n }\n return {\n loading,\n requestFn,\n }\n}\n"],"names":["ref","http"],"mappings":";;;;;AAsBO,MAAM,aAAyB,CAAC;AAAA,EACrC,GAAA;AAAA,EACA,MAAA,GAAS,MAAA;AAAA,EACT,OAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA,EACA;AACF,CAAA,KAAM;AACJ,EAAA,IAAI,CAAC,GAAA,EAAK,OAAO,EAAC;AAClB,EAAA,MAAM,OAAA,GAAUA,QAAI,KAAK,CAAA;AACzB,EAAA,IAAI,aAAA;AACJ,EAAA,IAAI,KAAA;AACJ,EAAA,IAAI,OAAO,QAAQ,QAAA,EAAU;AAE3B,IAAA,MAAM,MAAA,GAA8B;AAAA,MAClC;AAAA,KACF;AACA,IAAA,IAAI,WAAA,EAAa;AACf,MAAA,MAAA,CAAO,aAAA,GAAgB,CAAC,MAAA,KAAqB;AAC3C,QAAA,aAAA,GAAgB,MAAA;AAAA,MAClB,CAAA;AAAA,IACF;AAEA,IAAA,KAAA,GAAQ,CAAC,IAAA,GAA4B,EAAC,EAAG,MAAA,KAAiC;AACxE,MAAA,IAAI,MAAA,CAAO,WAAW,KAAA,EAAO;AAC3B,QAAA,MAAA,CAAO,MAAA,GAAS,IAAA;AAAA,MAClB,CAAA,MAAO;AACL,QAAA,MAAA,CAAO,IAAA,GAAO,IAAA;AACd,QAAA,MAAA,CAAO,MAAA,GAAS,MAAA;AAAA,MAClB;AACA,MAAA,MAAA,CAAO,IAAA,GAAO;AAAA,QACZ,GAAG,OAAA;AAAA,QACH,GAAG,MAAA,CAAO;AAAA,OACZ;AACA,MAAA,MAAA,CAAO,MAAA,GAAS;AAAA,QACd,GAAG,SAAA;AAAA,QACH,GAAG,MAAA,CAAO;AAAA,OACZ;AAEA,MAAA,IAAI,KAAK,MAAA,EAAQ;AACf,QAAA,MAAA,CAAO,IAAA,CAAK,IAAA,CAAK,MAAM,CAAA,GAAI,IAAA,CAAK,YAAA;AAChC,QAAA,OAAO,IAAA,CAAK,YAAA;AAAA,MACd;AAEA,MAAA,IAAI,SAAA,EAAW;AACb,QAAA,SAAA,CAAU,MAAM,CAAA;AAAA,MAClB;AACA,MAAA,OAAOC,UAAA,CAAK,OAAA,CAAQ,GAAA,EAAK,MAAM,CAAA;AAAA,IACjC,CAAA;AAAA,EACF,CAAA,MAAO;AACL,IAAA,KAAA,GAAQ,GAAA;AAAA,EACV;AACA,EAAA,MAAM,SAAA,GAAY,OAAO,IAAA,GAAgC,EAAC,KAAM;AAC9D,IAAA,IAAI,OAAA,CAAQ,KAAA,IAAS,CAAC,WAAA,EAAa;AACnC,IAAA,OAAA,CAAQ,KAAA,GAAQ,IAAA;AAChB,IAAA,IAAI;AACF,MAAA,aAAA,IAAiB,aAAA,EAAc;AAC/B,MAAA,MAAM,GAAA,GAAM,MAAM,KAAA,CAAM,IAAI,CAAA;AAC5B,MAAA,IAAI,QAAA,EAAU;AACZ,QAAA,QAAA,CAAS,GAAG,CAAA;AAAA,MACd;AACA,MAAA,IAAI,OAAO,OAAA,EAAS;AAClB,QAAA,KAAA,CAAM,OAAA,CAAQ,IAAI,IAAI,CAAA;AAAA,MACxB;AAAA,IACF,SAAS,KAAA,EAAO;AACd,MAAA,IAAI,OAAO,IAAA,EAAM;AACf,QAAA,KAAA,CAAM,KAAK,KAAK,CAAA;AAAA,MAClB;AAAA,IACF,CAAA,SAAE;AACA,MAAA,OAAA,CAAQ,KAAA,GAAQ,KAAA;AAAA,IAClB;AAAA,EACF,CAAA;AACA,EAAA,OAAO;AAAA,IACL,OAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}
1
+ {"version":3,"file":"use-request.js","sources":["../../../../packages/hooks/use-request.ts"],"sourcesContent":["import { ref } from 'vue'\nimport { type Ref } from 'vue'\nimport type { Api, ReqAfter, ReqBefore, Method } from '@el-plus/types'\nimport type { Canceler } from 'axios'\nimport { http } from '@el-plus/utils/http'\ntype UseRequest = (config: {\n api?: Api\n method?: Method\n reqData?: Record<string, unknown>\n reqParams?: Record<string, unknown>\n reqBefore?: ReqBefore\n reqAfter?: ReqAfter\n cancelToken?: boolean\n hooks?: {\n success?: (data: unknown) => void\n fail?: (error: unknown) => void\n }\n}) => {\n loading?: Ref<boolean>\n requestFn?: (data?: Record<string, unknown>) => Promise<void>\n}\n\nexport const useRequest: UseRequest = ({\n api,\n method = 'post',\n reqData,\n reqParams,\n reqBefore,\n reqAfter,\n cancelToken,\n hooks,\n}) => {\n if (!api) return {}\n const loading = ref(false)\n let cancelRequest: Canceler\n let apiFn\n if (typeof api === 'string') {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const config: Record<string, any> = {\n method,\n }\n if (cancelToken) {\n config.cancelRequest = (cancel: Canceler) => {\n cancelRequest = cancel\n }\n }\n\n apiFn = (data: Record<string, any> = {}, params?: Record<string, any>) => {\n if (config.method === 'get') {\n config.params = data\n } else {\n config.data = data\n config.params = params\n }\n config.data = {\n ...reqData,\n ...config.data,\n }\n config.params = {\n ...reqParams,\n ...config.params,\n }\n // 替换$query为$searchValue\n if (config.data.$query) {\n config.data[config.data.$query] = data.$searchValue\n delete config.data.$searchValue\n delete config.data.$query\n }\n\n if (reqBefore) {\n reqBefore(config)\n }\n return http.request(api, config)\n }\n } else {\n apiFn = api\n }\n const requestFn = async (data: Record<string, unknown> = {}) => {\n if (loading.value && !cancelToken) return\n loading.value = true\n try {\n cancelRequest && cancelRequest()\n const res = await apiFn(data)\n if (reqAfter) {\n reqAfter(res)\n }\n if (hooks?.success) {\n hooks.success(res.data)\n }\n } catch (error) {\n if (hooks?.fail) {\n hooks.fail(error)\n }\n } finally {\n loading.value = false\n }\n }\n return {\n loading,\n requestFn,\n }\n}\n"],"names":["ref","http"],"mappings":";;;;;AAsBO,MAAM,aAAyB,CAAC;AAAA,EACrC,GAAA;AAAA,EACA,MAAA,GAAS,MAAA;AAAA,EACT,OAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA,EACA;AACF,CAAA,KAAM;AACJ,EAAA,IAAI,CAAC,GAAA,EAAK,OAAO,EAAC;AAClB,EAAA,MAAM,OAAA,GAAUA,QAAI,KAAK,CAAA;AACzB,EAAA,IAAI,aAAA;AACJ,EAAA,IAAI,KAAA;AACJ,EAAA,IAAI,OAAO,QAAQ,QAAA,EAAU;AAE3B,IAAA,MAAM,MAAA,GAA8B;AAAA,MAClC;AAAA,KACF;AACA,IAAA,IAAI,WAAA,EAAa;AACf,MAAA,MAAA,CAAO,aAAA,GAAgB,CAAC,MAAA,KAAqB;AAC3C,QAAA,aAAA,GAAgB,MAAA;AAAA,MAClB,CAAA;AAAA,IACF;AAEA,IAAA,KAAA,GAAQ,CAAC,IAAA,GAA4B,EAAC,EAAG,MAAA,KAAiC;AACxE,MAAA,IAAI,MAAA,CAAO,WAAW,KAAA,EAAO;AAC3B,QAAA,MAAA,CAAO,MAAA,GAAS,IAAA;AAAA,MAClB,CAAA,MAAO;AACL,QAAA,MAAA,CAAO,IAAA,GAAO,IAAA;AACd,QAAA,MAAA,CAAO,MAAA,GAAS,MAAA;AAAA,MAClB;AACA,MAAA,MAAA,CAAO,IAAA,GAAO;AAAA,QACZ,GAAG,OAAA;AAAA,QACH,GAAG,MAAA,CAAO;AAAA,OACZ;AACA,MAAA,MAAA,CAAO,MAAA,GAAS;AAAA,QACd,GAAG,SAAA;AAAA,QACH,GAAG,MAAA,CAAO;AAAA,OACZ;AAEA,MAAA,IAAI,MAAA,CAAO,KAAK,MAAA,EAAQ;AACtB,QAAA,MAAA,CAAO,IAAA,CAAK,MAAA,CAAO,IAAA,CAAK,MAAM,IAAI,IAAA,CAAK,YAAA;AACvC,QAAA,OAAO,OAAO,IAAA,CAAK,YAAA;AACnB,QAAA,OAAO,OAAO,IAAA,CAAK,MAAA;AAAA,MACrB;AAEA,MAAA,IAAI,SAAA,EAAW;AACb,QAAA,SAAA,CAAU,MAAM,CAAA;AAAA,MAClB;AACA,MAAA,OAAOC,UAAA,CAAK,OAAA,CAAQ,GAAA,EAAK,MAAM,CAAA;AAAA,IACjC,CAAA;AAAA,EACF,CAAA,MAAO;AACL,IAAA,KAAA,GAAQ,GAAA;AAAA,EACV;AACA,EAAA,MAAM,SAAA,GAAY,OAAO,IAAA,GAAgC,EAAC,KAAM;AAC9D,IAAA,IAAI,OAAA,CAAQ,KAAA,IAAS,CAAC,WAAA,EAAa;AACnC,IAAA,OAAA,CAAQ,KAAA,GAAQ,IAAA;AAChB,IAAA,IAAI;AACF,MAAA,aAAA,IAAiB,aAAA,EAAc;AAC/B,MAAA,MAAM,GAAA,GAAM,MAAM,KAAA,CAAM,IAAI,CAAA;AAC5B,MAAA,IAAI,QAAA,EAAU;AACZ,QAAA,QAAA,CAAS,GAAG,CAAA;AAAA,MACd;AACA,MAAA,IAAI,OAAO,OAAA,EAAS;AAClB,QAAA,KAAA,CAAM,OAAA,CAAQ,IAAI,IAAI,CAAA;AAAA,MACxB;AAAA,IACF,SAAS,KAAA,EAAO;AACd,MAAA,IAAI,OAAO,IAAA,EAAM;AACf,QAAA,KAAA,CAAM,KAAK,KAAK,CAAA;AAAA,MAClB;AAAA,IACF,CAAA,SAAE;AACA,MAAA,OAAA,CAAQ,KAAA,GAAQ,KAAA;AAAA,IAClB;AAAA,EACF,CAAA;AACA,EAAA,OAAO;AAAA,IACL,OAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}
@@ -83,6 +83,18 @@ declare const _default: {
83
83
  notFound: string;
84
84
  serverError: string;
85
85
  };
86
+ attachment: {
87
+ addAttachment: string;
88
+ manageAttachment: string;
89
+ operation: string;
90
+ download: string;
91
+ delete: string;
92
+ attachmentType: string;
93
+ fileName: string;
94
+ creator: string;
95
+ createTime: string;
96
+ description: string;
97
+ };
86
98
  };
87
99
  };
88
100
  export default _default;
@@ -86,6 +86,18 @@ var en = {
86
86
  forbidden: "Access forbidden, you do not have permission to access this resource",
87
87
  notFound: "Not found, the requested resource does not exist",
88
88
  serverError: "Internal server error, please try again later"
89
+ },
90
+ attachment: {
91
+ addAttachment: "Add attachment",
92
+ manageAttachment: "Attachment management",
93
+ operation: "Operation",
94
+ download: "Download",
95
+ delete: "Delete",
96
+ attachmentType: "Attachment type",
97
+ fileName: "File name",
98
+ creator: "Creator",
99
+ createTime: "Create time",
100
+ description: "Description"
89
101
  }
90
102
  }
91
103
  };
@@ -1 +1 @@
1
- {"version":3,"file":"en.js","sources":["../../../../../packages/locale/lang/en.ts"],"sourcesContent":["export default {\n name: 'en',\n ep: {\n dialog: {\n cancel: 'Cancel',\n confirm: 'OK',\n title: 'Prompt',\n },\n buttons: {\n cancel: 'Cancel',\n confirm: 'Confirm',\n secondConfirm: 'Are you sure to',\n secondConfirmEnd: '',\n prompt: 'prompt',\n },\n input: {\n placeholder: 'Please enter',\n },\n datePickerRange: {\n lastWeek: 'Last week',\n lastMonth: 'Last month',\n lastThreeMonth: 'Last three months',\n startTime: 'Start time',\n endTime: 'End time',\n },\n formItem: {\n required: 'Cannot be empty',\n },\n form: {\n more: 'More',\n collapse: 'Collapse',\n },\n header: {\n save: 'Save',\n edit: 'Edit',\n cancel: 'Cancel',\n refresh: 'Refresh',\n approvalLog: 'Approval log',\n },\n searchListPage: {\n add: 'Add',\n templateDownload: 'Template download',\n import: 'Import',\n export: 'Export',\n search: 'Search',\n clear: 'Clear',\n },\n table: {\n select: 'Select',\n serialNumber: 'No.',\n operation: 'Operation',\n },\n title: {\n collapse: 'Collapse',\n expand: 'Expand',\n },\n chooseDialog: {\n selected: 'Selected',\n unit: '',\n },\n customColumn: {\n columnSettings: 'Column settings',\n defineColumn: 'Define column',\n hiddenField: 'Hidden field',\n visibleField: 'Display field',\n moveLeft: 'Move left',\n moveRight: 'Move right',\n moveUp: 'Move up',\n moveDown: 'Move down',\n },\n bpm: {\n approvalLog: 'Approval log',\n },\n loading: {\n loading: 'Loading...',\n },\n http: {\n networkError: 'Network error, please check your connection and try again',\n timeout: 'Request timeout, please try again later',\n requestError: 'Request error. Please check your input and try again',\n authExpired: 'Login authentication expired, please log in again',\n forbidden:\n 'Access forbidden, you do not have permission to access this resource',\n notFound: 'Not found, the requested resource does not exist',\n serverError: 'Internal server error, please try again later',\n },\n },\n}\n"],"names":[],"mappings":";;;;AAAA,SAAe;AAAA,EACb,IAAA,EAAM,IAAA;AAAA,EACN,EAAA,EAAI;AAAA,IACF,MAAA,EAAQ;AAAA,MACN,MAAA,EAAQ,QAAA;AAAA,MACR,OAAA,EAAS,IAAA;AAAA,MACT,KAAA,EAAO;AAAA,KACT;AAAA,IACA,OAAA,EAAS;AAAA,MACP,MAAA,EAAQ,QAAA;AAAA,MACR,OAAA,EAAS,SAAA;AAAA,MACT,aAAA,EAAe,iBAAA;AAAA,MACf,gBAAA,EAAkB,EAAA;AAAA,MAClB,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,KAAA,EAAO;AAAA,MACL,WAAA,EAAa;AAAA,KACf;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,QAAA,EAAU,WAAA;AAAA,MACV,SAAA,EAAW,YAAA;AAAA,MACX,cAAA,EAAgB,mBAAA;AAAA,MAChB,SAAA,EAAW,YAAA;AAAA,MACX,OAAA,EAAS;AAAA,KACX;AAAA,IACA,QAAA,EAAU;AAAA,MACR,QAAA,EAAU;AAAA,KACZ;AAAA,IACA,IAAA,EAAM;AAAA,MACJ,IAAA,EAAM,MAAA;AAAA,MACN,QAAA,EAAU;AAAA,KACZ;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,IAAA,EAAM,MAAA;AAAA,MACN,IAAA,EAAM,MAAA;AAAA,MACN,MAAA,EAAQ,QAAA;AAAA,MACR,OAAA,EAAS,SAAA;AAAA,MACT,WAAA,EAAa;AAAA,KACf;AAAA,IACA,cAAA,EAAgB;AAAA,MACd,GAAA,EAAK,KAAA;AAAA,MACL,gBAAA,EAAkB,mBAAA;AAAA,MAClB,MAAA,EAAQ,QAAA;AAAA,MACR,MAAA,EAAQ,QAAA;AAAA,MACR,MAAA,EAAQ,QAAA;AAAA,MACR,KAAA,EAAO;AAAA,KACT;AAAA,IACA,KAAA,EAAO;AAAA,MACL,MAAA,EAAQ,QAAA;AAAA,MACR,YAAA,EAAc,KAAA;AAAA,MACd,SAAA,EAAW;AAAA,KACb;AAAA,IACA,KAAA,EAAO;AAAA,MACL,QAAA,EAAU,UAAA;AAAA,MACV,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,YAAA,EAAc;AAAA,MACZ,QAAA,EAAU,UAAA;AAAA,MACV,IAAA,EAAM;AAAA,KACR;AAAA,IACA,YAAA,EAAc;AAAA,MACZ,cAAA,EAAgB,iBAAA;AAAA,MAChB,YAAA,EAAc,eAAA;AAAA,MACd,WAAA,EAAa,cAAA;AAAA,MACb,YAAA,EAAc,eAAA;AAAA,MACd,QAAA,EAAU,WAAA;AAAA,MACV,SAAA,EAAW,YAAA;AAAA,MACX,MAAA,EAAQ,SAAA;AAAA,MACR,QAAA,EAAU;AAAA,KACZ;AAAA,IACA,GAAA,EAAK;AAAA,MACH,WAAA,EAAa;AAAA,KACf;AAAA,IACA,OAAA,EAAS;AAAA,MACP,OAAA,EAAS;AAAA,KACX;AAAA,IACA,IAAA,EAAM;AAAA,MACJ,YAAA,EAAc,2DAAA;AAAA,MACd,OAAA,EAAS,yCAAA;AAAA,MACT,YAAA,EAAc,sDAAA;AAAA,MACd,WAAA,EAAa,mDAAA;AAAA,MACb,SAAA,EACE,sEAAA;AAAA,MACF,QAAA,EAAU,kDAAA;AAAA,MACV,WAAA,EAAa;AAAA;AACf;AAEJ,CAAA;;;;"}
1
+ {"version":3,"file":"en.js","sources":["../../../../../packages/locale/lang/en.ts"],"sourcesContent":["export default {\n name: 'en',\n ep: {\n dialog: {\n cancel: 'Cancel',\n confirm: 'OK',\n title: 'Prompt',\n },\n buttons: {\n cancel: 'Cancel',\n confirm: 'Confirm',\n secondConfirm: 'Are you sure to',\n secondConfirmEnd: '',\n prompt: 'prompt',\n },\n input: {\n placeholder: 'Please enter',\n },\n datePickerRange: {\n lastWeek: 'Last week',\n lastMonth: 'Last month',\n lastThreeMonth: 'Last three months',\n startTime: 'Start time',\n endTime: 'End time',\n },\n formItem: {\n required: 'Cannot be empty',\n },\n form: {\n more: 'More',\n collapse: 'Collapse',\n },\n header: {\n save: 'Save',\n edit: 'Edit',\n cancel: 'Cancel',\n refresh: 'Refresh',\n approvalLog: 'Approval log',\n },\n searchListPage: {\n add: 'Add',\n templateDownload: 'Template download',\n import: 'Import',\n export: 'Export',\n search: 'Search',\n clear: 'Clear',\n },\n table: {\n select: 'Select',\n serialNumber: 'No.',\n operation: 'Operation',\n },\n title: {\n collapse: 'Collapse',\n expand: 'Expand',\n },\n chooseDialog: {\n selected: 'Selected',\n unit: '',\n },\n customColumn: {\n columnSettings: 'Column settings',\n defineColumn: 'Define column',\n hiddenField: 'Hidden field',\n visibleField: 'Display field',\n moveLeft: 'Move left',\n moveRight: 'Move right',\n moveUp: 'Move up',\n moveDown: 'Move down',\n },\n bpm: {\n approvalLog: 'Approval log',\n },\n loading: {\n loading: 'Loading...',\n },\n http: {\n networkError: 'Network error, please check your connection and try again',\n timeout: 'Request timeout, please try again later',\n requestError: 'Request error. Please check your input and try again',\n authExpired: 'Login authentication expired, please log in again',\n forbidden:\n 'Access forbidden, you do not have permission to access this resource',\n notFound: 'Not found, the requested resource does not exist',\n serverError: 'Internal server error, please try again later',\n },\n attachment: {\n addAttachment: 'Add attachment',\n manageAttachment: 'Attachment management',\n operation: 'Operation',\n download: 'Download',\n delete: 'Delete',\n attachmentType: 'Attachment type',\n fileName: 'File name',\n creator: 'Creator',\n createTime: 'Create time',\n description: 'Description',\n },\n },\n}\n"],"names":[],"mappings":"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"}
@@ -83,6 +83,18 @@ declare const _default: {
83
83
  notFound: string;
84
84
  serverError: string;
85
85
  };
86
+ attachment: {
87
+ addAttachment: string;
88
+ manageAttachment: string;
89
+ operation: string;
90
+ download: string;
91
+ delete: string;
92
+ attachmentType: string;
93
+ fileName: string;
94
+ creator: string;
95
+ createTime: string;
96
+ description: string;
97
+ };
86
98
  };
87
99
  };
88
100
  export default _default;
@@ -87,6 +87,18 @@ var zhCn = {
87
87
  notFound: "\u672A\u627E\u5230, \u8BF7\u6C42\u7684\u8D44\u6E90\u4E0D\u5B58\u5728",
88
88
  //
89
89
  serverError: "\u5185\u90E8\u670D\u52A1\u5668\u9519\u8BEF\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5"
90
+ },
91
+ attachment: {
92
+ addAttachment: "\u6DFB\u52A0\u9644\u4EF6",
93
+ manageAttachment: "\u9644\u4EF6\u7BA1\u7406",
94
+ operation: "\u64CD\u4F5C",
95
+ download: "\u4E0B\u8F7D",
96
+ delete: "\u5220\u9664",
97
+ attachmentType: "\u9644\u4EF6\u7C7B\u578B",
98
+ fileName: "\u6587\u4EF6\u540D\u79F0",
99
+ creator: "\u521B\u5EFA\u4EBA",
100
+ createTime: "\u521B\u5EFA\u65F6\u95F4",
101
+ description: "\u8BF4\u660E"
90
102
  }
91
103
  }
92
104
  };
@@ -1 +1 @@
1
- {"version":3,"file":"zh-cn.js","sources":["../../../../../packages/locale/lang/zh-cn.ts"],"sourcesContent":["export default {\n name: 'zh-cn',\n ep: {\n dialog: {\n cancel: '取消',\n confirm: '确定',\n title: '提示',\n },\n buttons: {\n cancel: '取消',\n confirm: '确定',\n secondConfirm: '确定要',\n secondConfirmEnd: '吗',\n prompt: '提示',\n },\n input: {\n placeholder: '请输入',\n },\n datePickerRange: {\n lastWeek: '最近一周',\n lastMonth: '最近一个月',\n lastThreeMonth: '最近三个月',\n startTime: '开始时间',\n endTime: '结束时间',\n },\n formItem: {\n required: '不能为空',\n },\n form: {\n more: '更多',\n collapse: '收起',\n },\n header: {\n save: '保存',\n edit: '修改',\n cancel: '取消',\n refresh: '刷新',\n approvalLog: '审批日志',\n },\n searchListPage: {\n add: '新增',\n templateDownload: '模版下载',\n import: '导入',\n export: '导出',\n search: '搜索',\n clear: '清空',\n },\n table: {\n select: '选择',\n serialNumber: '序号',\n operation: '操作',\n },\n title: {\n collapse: '折叠',\n expand: '展开',\n },\n chooseDialog: {\n selected: '已选中',\n unit: '个',\n },\n customColumn: {\n columnSettings: '自定义列设置',\n defineColumn: '自定义列',\n hiddenField: '隐藏字段',\n visibleField: '显示字段',\n moveLeft: '左移',\n moveRight: '右移',\n moveUp: '上移',\n moveDown: '下移',\n },\n bpm: {\n approvalLog: '审批日志',\n },\n loading: {\n loading: '正在加载中...',\n },\n http: {\n networkError: '网络异常,请检查您的网络连接后重试',\n timeout: '请求超时,请稍后再试',\n requestError: '请求错误。请检查您的输入并重试',\n authExpired: '登录认证过期,请重新登录后继续',\n forbidden: '禁止访问, 您没有权限访问此资源',\n notFound: '未找到, 请求的资源不存在', //\n serverError: '内部服务器错误,请稍后再试',\n },\n },\n}\n"],"names":[],"mappings":";;;;AAAA,WAAe;AAAA,EACb,IAAA,EAAM,OAAA;AAAA,EACN,EAAA,EAAI;AAAA,IACF,MAAA,EAAQ;AAAA,MACN,MAAA,EAAQ,cAAA;AAAA,MACR,OAAA,EAAS,cAAA;AAAA,MACT,KAAA,EAAO;AAAA,KACT;AAAA,IACA,OAAA,EAAS;AAAA,MACP,MAAA,EAAQ,cAAA;AAAA,MACR,OAAA,EAAS,cAAA;AAAA,MACT,aAAA,EAAe,oBAAA;AAAA,MACf,gBAAA,EAAkB,QAAA;AAAA,MAClB,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,KAAA,EAAO;AAAA,MACL,WAAA,EAAa;AAAA,KACf;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,QAAA,EAAU,0BAAA;AAAA,MACV,SAAA,EAAW,gCAAA;AAAA,MACX,cAAA,EAAgB,gCAAA;AAAA,MAChB,SAAA,EAAW,0BAAA;AAAA,MACX,OAAA,EAAS;AAAA,KACX;AAAA,IACA,QAAA,EAAU;AAAA,MACR,QAAA,EAAU;AAAA,KACZ;AAAA,IACA,IAAA,EAAM;AAAA,MACJ,IAAA,EAAM,cAAA;AAAA,MACN,QAAA,EAAU;AAAA,KACZ;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,IAAA,EAAM,cAAA;AAAA,MACN,IAAA,EAAM,cAAA;AAAA,MACN,MAAA,EAAQ,cAAA;AAAA,MACR,OAAA,EAAS,cAAA;AAAA,MACT,WAAA,EAAa;AAAA,KACf;AAAA,IACA,cAAA,EAAgB;AAAA,MACd,GAAA,EAAK,cAAA;AAAA,MACL,gBAAA,EAAkB,0BAAA;AAAA,MAClB,MAAA,EAAQ,cAAA;AAAA,MACR,MAAA,EAAQ,cAAA;AAAA,MACR,MAAA,EAAQ,cAAA;AAAA,MACR,KAAA,EAAO;AAAA,KACT;AAAA,IACA,KAAA,EAAO;AAAA,MACL,MAAA,EAAQ,cAAA;AAAA,MACR,YAAA,EAAc,cAAA;AAAA,MACd,SAAA,EAAW;AAAA,KACb;AAAA,IACA,KAAA,EAAO;AAAA,MACL,QAAA,EAAU,cAAA;AAAA,MACV,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,YAAA,EAAc;AAAA,MACZ,QAAA,EAAU,oBAAA;AAAA,MACV,IAAA,EAAM;AAAA,KACR;AAAA,IACA,YAAA,EAAc;AAAA,MACZ,cAAA,EAAgB,sCAAA;AAAA,MAChB,YAAA,EAAc,0BAAA;AAAA,MACd,WAAA,EAAa,0BAAA;AAAA,MACb,YAAA,EAAc,0BAAA;AAAA,MACd,QAAA,EAAU,cAAA;AAAA,MACV,SAAA,EAAW,cAAA;AAAA,MACX,MAAA,EAAQ,cAAA;AAAA,MACR,QAAA,EAAU;AAAA,KACZ;AAAA,IACA,GAAA,EAAK;AAAA,MACH,WAAA,EAAa;AAAA,KACf;AAAA,IACA,OAAA,EAAS;AAAA,MACP,OAAA,EAAS;AAAA,KACX;AAAA,IACA,IAAA,EAAM;AAAA,MACJ,YAAA,EAAc,wGAAA;AAAA,MACd,OAAA,EAAS,8DAAA;AAAA,MACT,YAAA,EAAc,4FAAA;AAAA,MACd,WAAA,EAAa,4FAAA;AAAA,MACb,SAAA,EAAW,wFAAA;AAAA,MACX,QAAA,EAAU,sEAAA;AAAA;AAAA,MACV,WAAA,EAAa;AAAA;AACf;AAEJ,CAAA;;;;"}
1
+ {"version":3,"file":"zh-cn.js","sources":["../../../../../packages/locale/lang/zh-cn.ts"],"sourcesContent":["export default {\n name: 'zh-cn',\n ep: {\n dialog: {\n cancel: '取消',\n confirm: '确定',\n title: '提示',\n },\n buttons: {\n cancel: '取消',\n confirm: '确定',\n secondConfirm: '确定要',\n secondConfirmEnd: '吗',\n prompt: '提示',\n },\n input: {\n placeholder: '请输入',\n },\n datePickerRange: {\n lastWeek: '最近一周',\n lastMonth: '最近一个月',\n lastThreeMonth: '最近三个月',\n startTime: '开始时间',\n endTime: '结束时间',\n },\n formItem: {\n required: '不能为空',\n },\n form: {\n more: '更多',\n collapse: '收起',\n },\n header: {\n save: '保存',\n edit: '修改',\n cancel: '取消',\n refresh: '刷新',\n approvalLog: '审批日志',\n },\n searchListPage: {\n add: '新增',\n templateDownload: '模版下载',\n import: '导入',\n export: '导出',\n search: '搜索',\n clear: '清空',\n },\n table: {\n select: '选择',\n serialNumber: '序号',\n operation: '操作',\n },\n title: {\n collapse: '折叠',\n expand: '展开',\n },\n chooseDialog: {\n selected: '已选中',\n unit: '个',\n },\n customColumn: {\n columnSettings: '自定义列设置',\n defineColumn: '自定义列',\n hiddenField: '隐藏字段',\n visibleField: '显示字段',\n moveLeft: '左移',\n moveRight: '右移',\n moveUp: '上移',\n moveDown: '下移',\n },\n bpm: {\n approvalLog: '审批日志',\n },\n loading: {\n loading: '正在加载中...',\n },\n http: {\n networkError: '网络异常,请检查您的网络连接后重试',\n timeout: '请求超时,请稍后再试',\n requestError: '请求错误。请检查您的输入并重试',\n authExpired: '登录认证过期,请重新登录后继续',\n forbidden: '禁止访问, 您没有权限访问此资源',\n notFound: '未找到, 请求的资源不存在', //\n serverError: '内部服务器错误,请稍后再试',\n },\n attachment: {\n addAttachment: '添加附件',\n manageAttachment: '附件管理',\n operation: '操作',\n download: '下载',\n delete: '删除',\n attachmentType: '附件类型',\n fileName: '文件名称',\n creator: '创建人',\n createTime: '创建时间',\n description: '说明',\n },\n },\n}\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var version = "0.0.47";
3
+ var version = "0.0.51";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=package.json.js.map
@@ -15,6 +15,6 @@ interface ImportFileOptions {
15
15
  failedFileName?: string;
16
16
  extraData?: Record<string, any>;
17
17
  }
18
- export declare const importFile: ({ accept, multiple, fieldName, failedFileName, extraData, api, }: ImportFileOptions) => Promise<unknown>;
18
+ export declare const importFile: ({ accept, multiple, fieldName, failedFileName, extraData, api, }: ImportFileOptions) => Promise<Record<string, any>>;
19
19
  export declare const previewFile: (url: string) => void;
20
20
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"file.js","sources":["../../../../packages/utils/file.ts"],"sourcesContent":["import { http, type AxiosResponse } from './http'\nimport { ElMessage, ElMessageBox } from 'element-plus'\nimport { getEnv, getLocationEnv } from './env'\nimport { encode } from 'js-base64'\n/**\n * 获取全路径\n * @param filePath 附件地址\n * @returns 全路径\n */\n\nexport const getFullUrl = (filePath: string) => {\n return filePath.indexOf('hongxinshop.com') > -1\n ? filePath\n : `${window.location.protocol}${getEnv() === 'local' ? `//${getLocationEnv()}-hxjf.hongxinshop.com` : ''}/image/${filePath}`\n}\nconst downloadSrc = ({\n src,\n fileName,\n blob,\n}: {\n src: string\n fileName: string\n blob?: boolean\n}) => {\n if (src) {\n fileName = fileName || src.split('/')[src.split('/').length - 1]\n const a = document.createElement('a')\n a.style.display = 'none'\n document.body.appendChild(a)\n const event = new MouseEvent('click')\n a.download = fileName\n a.href = blob ? src : getFullUrl(src)\n\n a.target = '_blank'\n a.dispatchEvent(event)\n document.body.removeChild(a)\n }\n}\n\n// 下载文件\nexport async function downloadFile({\n api = '',\n blob,\n data = {},\n src,\n fileName = '',\n config = {},\n}: {\n api?: string\n blob?: boolean\n data?: Record<string, any>\n src?: string\n fileName?: string\n config?: Record<string, any>\n}) {\n if (src) {\n downloadSrc({ src, fileName })\n return\n }\n http\n .request<any, AxiosResponse>(api, {\n method: config.method || 'post',\n data,\n loading: true,\n responseType: blob ? 'blob' : undefined,\n responseReturn: 'raw',\n ...config,\n })\n .then((res) => {\n const { headers } = res\n if (!res.data.success) {\n return ElMessage.error(res.data.msg)\n }\n const data = res.data?.data || res.data?.data?.url || ''\n const lowerHeaders = {}\n for (const key in headers) {\n lowerHeaders[key.toLowerCase()] = headers[key]\n }\n let src = ''\n if (blob) {\n const contentDisposition = lowerHeaders['content-disposition'] || ''\n fileName =\n fileName ||\n decodeURIComponent(contentDisposition.split('filename=')[1])\n const blob = new Blob([data], {\n type: headers['content-type'],\n })\n src = window.URL.createObjectURL(blob)\n setTimeout(() => window.URL.revokeObjectURL(src), 100) // 释放内存\n } else {\n src = data\n }\n downloadSrc({ src, fileName, blob })\n })\n}\n\n// 导入文件\ninterface ImportFileOptions {\n accept?: string\n multiple?: boolean\n fieldName?: string\n api?: string\n failedFileName?: string // 导入失败时提示的文件名\n extraData?: Record<string, any> // 随文件一同发送的其他表单数据\n}\nexport const importFile = async ({\n accept = '*',\n multiple = false,\n fieldName = 'file',\n failedFileName = '',\n extraData = {},\n api = '',\n}: ImportFileOptions) => {\n return new Promise((resolve, reject) => {\n const input = document.createElement('input')\n input.type = 'file'\n input.accept = accept\n input.multiple = multiple\n const formData = new FormData()\n Object.keys(extraData).forEach((key) => {\n formData.append(key, extraData[key])\n })\n input.onchange = async (event: Event) => {\n const target = event.target as HTMLInputElement\n const files = target.files\n if (files && files.length > 0) {\n if (!multiple) {\n formData.append(fieldName, files[0])\n } else {\n Array.from(files).forEach((file, index) => {\n formData.append(`${fieldName}${index}`, file)\n })\n }\n try {\n const { data } = await http.request<any, AxiosResponse>(api, {\n method: 'post',\n data: formData,\n loading: true,\n responseReturn: 'raw',\n transformRequest: [\n function (data) {\n return data\n },\n ],\n })\n if (data.success) {\n return resolve(data.data)\n }\n if (data.code === -2) {\n const fileName =\n failedFileName ||\n data.data.split('/')[data.data.split('/').length - 1]\n const url = `${window.location.origin}/image/${data.data}`\n const failedHtml = `<div style=\"word-break: break-all;\">失败详情:<a style=\"color:#409EFF;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap\" title=\"${url}\" href=\"${url}\" download=\"${fileName}\">${url}</a></div>`\n ElMessageBox.alert(failedHtml, '提示', {\n confirmButtonText: '确定',\n type: 'error',\n dangerouslyUseHTMLString: true,\n })\n return\n }\n return ElMessage.error(data.msg)\n } catch (error) {\n console.error(error)\n }\n input.onchange = null\n }\n }\n input.click()\n })\n}\n\n// 预览文件\nexport const previewFile = (url: string) => {\n url = getFullUrl(url)\n const origin = getFullUrl('').replace('/image/', '')\n const previewUrl = `${origin}/kfv/onlinePreview?url=${encode(url)}`\n window.open(previewUrl, '_blank')\n}\n"],"names":["getEnv","getLocationEnv","http","ElMessage","data","src","blob","ElMessageBox","encode"],"mappings":"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"}
1
+ {"version":3,"file":"file.js","sources":["../../../../packages/utils/file.ts"],"sourcesContent":["import { http, type AxiosResponse } from './http'\nimport { ElMessage, ElMessageBox } from 'element-plus'\nimport { getEnv, getLocationEnv } from './env'\nimport { encode } from 'js-base64'\n/**\n * 获取全路径\n * @param filePath 附件地址\n * @returns 全路径\n */\n\nexport const getFullUrl = (filePath: string) => {\n return filePath.indexOf('hongxinshop.com') > -1\n ? filePath\n : `${window.location.protocol}${getEnv() === 'local' ? `//${getLocationEnv()}-hxjf.hongxinshop.com` : ''}/image/${filePath}`\n}\nconst downloadSrc = ({\n src,\n fileName,\n blob,\n}: {\n src: string\n fileName: string\n blob?: boolean\n}) => {\n if (src) {\n fileName = fileName || src.split('/')[src.split('/').length - 1]\n const a = document.createElement('a')\n a.style.display = 'none'\n document.body.appendChild(a)\n const event = new MouseEvent('click')\n a.download = fileName\n a.href = blob ? src : getFullUrl(src)\n\n a.target = '_blank'\n a.dispatchEvent(event)\n document.body.removeChild(a)\n }\n}\n\n// 下载文件\nexport async function downloadFile({\n api = '',\n blob,\n data = {},\n src,\n fileName = '',\n config = {},\n}: {\n api?: string\n blob?: boolean\n data?: Record<string, any>\n src?: string\n fileName?: string\n config?: Record<string, any>\n}) {\n if (src) {\n downloadSrc({ src, fileName })\n return\n }\n http\n .request<any, AxiosResponse>(api, {\n method: config.method || 'post',\n data,\n loading: true,\n responseType: blob ? 'blob' : undefined,\n responseReturn: 'raw',\n ...config,\n })\n .then((res) => {\n const { headers } = res\n if (!res.data.success) {\n return ElMessage.error(res.data.msg)\n }\n const data = res.data?.data || res.data?.data?.url || ''\n const lowerHeaders = {}\n for (const key in headers) {\n lowerHeaders[key.toLowerCase()] = headers[key]\n }\n let src = ''\n if (blob) {\n const contentDisposition = lowerHeaders['content-disposition'] || ''\n fileName =\n fileName ||\n decodeURIComponent(contentDisposition.split('filename=')[1])\n const blob = new Blob([data], {\n type: headers['content-type'],\n })\n src = window.URL.createObjectURL(blob)\n setTimeout(() => window.URL.revokeObjectURL(src), 100) // 释放内存\n } else {\n src = data\n }\n downloadSrc({ src, fileName, blob })\n })\n}\n\n// 导入文件\ninterface ImportFileOptions {\n accept?: string\n multiple?: boolean\n fieldName?: string\n api?: string\n failedFileName?: string // 导入失败时提示的文件名\n extraData?: Record<string, any> // 随文件一同发送的其他表单数据\n}\nexport const importFile = async ({\n accept = '*',\n multiple = false,\n fieldName = 'file',\n failedFileName = '',\n extraData = {},\n api = '',\n}: ImportFileOptions) => {\n return new Promise<Record<string, any>>((resolve, reject) => {\n const input = document.createElement('input')\n input.type = 'file'\n input.accept = accept\n input.multiple = multiple\n const formData = new FormData()\n Object.keys(extraData).forEach((key) => {\n formData.append(key, extraData[key])\n })\n input.onchange = async (event: Event) => {\n const target = event.target as HTMLInputElement\n const files = target.files\n if (files && files.length > 0) {\n if (!multiple) {\n formData.append(fieldName, files[0])\n } else {\n Array.from(files).forEach((file, index) => {\n formData.append(`${fieldName}${index}`, file)\n })\n }\n try {\n const { data } = await http.request<any, AxiosResponse>(api, {\n method: 'post',\n data: formData,\n loading: true,\n responseReturn: 'raw',\n transformRequest: [\n function (data) {\n return data\n },\n ],\n })\n if (data.success) {\n return resolve(data.data)\n }\n if (data.code === -2) {\n const fileName =\n failedFileName ||\n data.data.split('/')[data.data.split('/').length - 1]\n const url = `${window.location.origin}/image/${data.data}`\n const failedHtml = `<div style=\"word-break: break-all;\">失败详情:<a style=\"color:#409EFF;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap\" title=\"${url}\" href=\"${url}\" download=\"${fileName}\">${url}</a></div>`\n ElMessageBox.alert(failedHtml, '提示', {\n confirmButtonText: '确定',\n type: 'error',\n dangerouslyUseHTMLString: true,\n })\n return\n }\n return ElMessage.error(data.msg)\n } catch (error) {\n console.error(error)\n }\n input.onchange = null\n }\n }\n input.click()\n })\n}\n\n// 预览文件\nexport const previewFile = (url: string) => {\n url = getFullUrl(url)\n const origin = getFullUrl('').replace('/image/', '')\n const previewUrl = `${origin}/kfv/onlinePreview?url=${encode(url)}`\n window.open(previewUrl, '_blank')\n}\n"],"names":["getEnv","getLocationEnv","http","ElMessage","data","src","blob","ElMessageBox","encode"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "el-plus",
3
- "version": "0.0.47",
3
+ "version": "0.0.51",
4
4
  "description": "pro base on element-plus",
5
5
  "module": "./es/index.mjs",
6
6
  "keywords": [
@@ -0,0 +1 @@
1
+ .ep-attachment__dialog--normal{background:none;position:static!important}.ep-attachment__dialog--normal .el-overlay-dialog{position:static}.ep-attachment__dialog--normal .el-overlay-dialog .el-dialog{margin:0;padding:0;width:auto!important}.ep-attachment__dialog--normal .el-overlay-dialog .el-dialog .el-dialog__header{display:none}.ep-attachment__dialog--normal .el-overlay-dialog .el-dialog .el-dialog__body{padding:0}.ep-attachment__handler{height:auto;padding:9px 15px}.ep-attachment__handler.el-button--text{padding:0}
@@ -1 +1 @@
1
- .fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.ep-form{position:relative}.ep-form__fold{bottom:23px;color:#367ef5;cursor:pointer;font-size:14px;position:absolute;right:0;text-align:center;width:70px}.ep-form__fold:hover{text-decoration:underline}.ep-form.is-fold{padding-right:70px}.ep-form .el-form-item--small{margin-bottom:18px}.ep-form .el-form-item--small .el-form-item__label{display:block;height:32px;line-height:32px;overflow:hidden;padding-left:18px;padding-right:6px;text-overflow:ellipsis;white-space:nowrap}.ep-form .el-form-item--small .el-form-item__content{font-size:13px;line-height:32px}.ep-form .el-form-item--small .el-form-item__content .el-input{font-size:13px;height:32px}.ep-form .el-form-item--small .el-form-item__content .el-textarea__inner{font-size:13px!important}.ep-form .el-form-item--small .el-form-item__content .el-select__wrapper{font-size:13px;line-height:32px;min-height:32px}.ep-form .el-form-item--small .el-form-item__content .el-date-editor .el-range-input{font-size:13px}.ep-table__action-buttons{white-space:nowrap}.ep-table .table-column-link .el-form-item{display:inline-block}.ep-table .table-column-link .el-form-item .el-form-item__label{display:none}.ep-table .el-table{font-size:13px}.ep-table .el-table .el-table__cell .is-edit{cursor:pointer}.ep-table .el-table .el-table__cell .is-edit:hover{color:#409eff}.ep-table .el-table .el-table__cell .is-edit .el-icon{vertical-align:-2px}.ep-table .el-table .cell{line-height:30px}.ep-table .el-table thead tr th{height:42px}.ep-table .el-table td,.ep-table .el-table th{padding:3px 0}.ep-table .el-form-item__error{position:unset;text-align:left}.ep-table .el-form-item{margin-bottom:0}.ep-table .el-form-item .el-form-item__label{padding:0}.ep-table .el-pagination{margin-top:12px;--el-pagination-font-size:13px}.ep-table .el-pagination .el-select{--el-select-font-size:13px}.ep-table .el-pagination .el-select .el-select__wrapper{font-size:13px}.ep-button{height:auto;padding:9px 15px}.ep-button.el-button--text{padding:0}.ep-button.el-button+.el-button{margin-left:10px}.ep-search-list-page #middle{overflow:hidden}.ep-search-list-page__middle-left{float:left}.ep-search-list-page__middle-left>.el-button{margin:16px 0}.ep-search-list-page__middle-right{float:right}.ep-search-list-page__middle-right .el-button{margin:16px 0}.ep-title__header{line-height:50px;overflow:hidden}.ep-title__title{float:left;font-size:15px;font-weight:500}.ep-title__toggle{color:#409eff;cursor:pointer;display:inline-block;font-size:14px;font-weight:400;margin-left:10px;white-space:nowrap}.ep-title__toggle .el-icon{transition:transform .3s;vertical-align:-2px}.ep-title.is-expanded .ep-title__toggle .el-icon{transform:rotate(-180deg)}.ep-title__buttons{float:right}.ep-title__content{overflow:hidden;transition:max-height .3s ease-in-out}.ep-header{display:flex;margin-bottom:10px}.ep-header .el-page-header .el-page-header__left{margin-right:-10px;margin-top:4px}.ep-template-promise{position:relative;z-index:8888888888888888}.ep-dialog{padding:20px 25px 40px}.ep-dialog .el-dialog__headerbtn{height:56px}.ep-dialog .el-dialog__headerbtn .el-dialog__close{transform:scale(1.3)}.ep-dialog .el-dialog__header{text-align:center}.ep-dialog .el-dialog__header .el-dialog__title{color:#505050;font-size:16px;font-weight:600;line-height:24px;margin:4px}.ep-dialog .el-dialog__body{padding:25px 0 0}.ep-dialog__footer{padding:14px 0 0}.ep-dialog__footer button{font-size:12px}.ep-choose-dialog__selected-count{color:#409eff;float:left;font-size:16px;line-height:32px}.ep-custom-column__dialog .el-dialog__body{text-align:center}.ep-custom-column__dialog .el-transfer{display:inline-block}.ep-custom-column__dialog .el-transfer-panel__footer{border-bottom:0;height:0}.ep-custom-column__dialog .el-transfer-panel{overflow:visible}.ep-custom-column__operate{position:absolute;right:-100%;top:50%;transform:translate(calc(25% - 52px),32px)}.ep-link{font-size:13px}.ep-uni-vue{background:#fff}.ep-uni-vue__skeleton .el-skeleton__item{margin-top:10px}
1
+ .fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.ep-form{position:relative}.ep-form__fold{bottom:23px;color:#367ef5;cursor:pointer;font-size:14px;position:absolute;right:0;text-align:center;width:70px}.ep-form__fold:hover{text-decoration:underline}.ep-form.is-fold{padding-right:70px}.ep-form .el-form-item--small{margin-bottom:18px}.ep-form .el-form-item--small .el-form-item__label{display:block;height:32px;line-height:32px;overflow:hidden;padding-left:18px;padding-right:6px;text-overflow:ellipsis;white-space:nowrap}.ep-form .el-form-item--small .el-form-item__content{font-size:13px;line-height:32px}.ep-form .el-form-item--small .el-form-item__content .el-input{font-size:13px;height:32px}.ep-form .el-form-item--small .el-form-item__content .el-textarea__inner{font-size:13px!important}.ep-form .el-form-item--small .el-form-item__content .el-select__wrapper{font-size:13px;line-height:32px;min-height:32px}.ep-form .el-form-item--small .el-form-item__content .el-date-editor .el-range-input{font-size:13px}.ep-table__action-buttons{white-space:nowrap}.ep-table .table-column-link .el-form-item{display:inline-block}.ep-table .table-column-link .el-form-item .el-form-item__label{display:none}.ep-table .el-table{font-size:13px}.ep-table .el-table .el-table__cell .is-edit{cursor:pointer}.ep-table .el-table .el-table__cell .is-edit:hover{color:#409eff}.ep-table .el-table .el-table__cell .is-edit .el-icon{vertical-align:-2px}.ep-table .el-table .cell{line-height:30px}.ep-table .el-table thead tr th{height:42px}.ep-table .el-table td,.ep-table .el-table th{padding:3px 0}.ep-table .el-form-item__error{position:unset;text-align:left}.ep-table .el-form-item{margin-bottom:0}.ep-table .el-form-item .el-form-item__label{padding:0}.ep-table .el-pagination{margin-top:12px;--el-pagination-font-size:13px}.ep-table .el-pagination .el-select{--el-select-font-size:13px}.ep-table .el-pagination .el-select .el-select__wrapper{font-size:13px}.ep-button{height:auto;padding:9px 15px}.ep-button.el-button--text{padding:0}.ep-button.el-button+.el-button{margin-left:10px}.ep-search-list-page #middle{overflow:hidden}.ep-search-list-page__middle-left{float:left}.ep-search-list-page__middle-left>.el-button{margin:16px 0}.ep-search-list-page__middle-right{float:right}.ep-search-list-page__middle-right .el-button{margin:16px 0}.ep-title__header{line-height:50px;overflow:hidden}.ep-title__title{float:left;font-size:15px;font-weight:500}.ep-title__toggle{color:#409eff;cursor:pointer;display:inline-block;font-size:14px;font-weight:400;margin-left:10px;white-space:nowrap}.ep-title__toggle .el-icon{transition:transform .3s;vertical-align:-2px}.ep-title.is-expanded .ep-title__toggle .el-icon{transform:rotate(-180deg)}.ep-title__buttons{float:right}.ep-title__content{overflow:hidden;transition:max-height .3s ease-in-out}.ep-header{display:flex;margin-bottom:10px}.ep-header .el-page-header .el-page-header__left{margin-right:-10px;margin-top:4px}.ep-template-promise{position:relative;z-index:8888888888888888}.ep-dialog{padding:20px 25px 40px}.ep-dialog .el-dialog__headerbtn{height:56px}.ep-dialog .el-dialog__headerbtn .el-dialog__close{transform:scale(1.3)}.ep-dialog .el-dialog__header{text-align:center}.ep-dialog .el-dialog__header .el-dialog__title{color:#505050;font-size:16px;font-weight:600;line-height:24px;margin:4px}.ep-dialog .el-dialog__body{padding:25px 0 0}.ep-dialog__footer{padding:14px 0 0}.ep-dialog__footer button{font-size:12px}.ep-choose-dialog__selected-count{color:#409eff;float:left;font-size:16px;line-height:32px}.ep-custom-column__dialog .el-dialog__body{text-align:center}.ep-custom-column__dialog .el-transfer{display:inline-block}.ep-custom-column__dialog .el-transfer-panel__footer{border-bottom:0;height:0}.ep-custom-column__dialog .el-transfer-panel{overflow:visible}.ep-custom-column__operate{position:absolute;right:-100%;top:50%;transform:translate(calc(25% - 52px),32px)}.ep-link{font-size:13px}.ep-uni-vue{background:#fff}.ep-uni-vue__skeleton .el-skeleton__item{margin-top:10px}.ep-attachment__dialog--normal{background:none;position:static!important}.ep-attachment__dialog--normal .el-overlay-dialog{position:static}.ep-attachment__dialog--normal .el-overlay-dialog .el-dialog{margin:0;padding:0;width:auto!important}.ep-attachment__dialog--normal .el-overlay-dialog .el-dialog .el-dialog__header{display:none}.ep-attachment__dialog--normal .el-overlay-dialog .el-dialog .el-dialog__body{padding:0}.ep-attachment__handler{height:auto;padding:9px 15px}.ep-attachment__handler.el-button--text{padding:0}