el-plus 0.0.50 → 0.0.52

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 (80) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/index.full.js +63 -16
  3. package/dist/index.full.min.js +1 -1
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +1 -1
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +63 -16
  8. package/es/components/attachment/src/attachment.d.ts +4 -3
  9. package/es/components/attachment/src/attachment.mjs +1 -2
  10. package/es/components/attachment/src/attachment.mjs.map +1 -1
  11. package/es/components/attachment/src/attachment.vue2.mjs +2 -2
  12. package/es/components/attachment/src/attachment.vue2.mjs.map +1 -1
  13. package/es/components/attachment/src/use-attachment.mjs +2 -0
  14. package/es/components/attachment/src/use-attachment.mjs.map +1 -1
  15. package/es/components/custom-column/src/custom-column.vue2.mjs +1 -1
  16. package/es/components/custom-column/src/custom-column.vue2.mjs.map +1 -1
  17. package/es/components/header/index.d.ts +90 -0
  18. package/es/components/header/src/header.d.ts +9 -0
  19. package/es/components/header/src/header.mjs +10 -0
  20. package/es/components/header/src/header.mjs.map +1 -1
  21. package/es/components/header/src/header.vue.d.ts +38 -0
  22. package/es/components/header/src/header.vue2.mjs +4 -3
  23. package/es/components/header/src/header.vue2.mjs.map +1 -1
  24. package/es/components/search-list-page/index.d.ts +11 -3
  25. package/es/components/search-list-page/index.mjs.map +1 -1
  26. package/es/components/search-list-page/src/search-list-page.vue.d.ts +3 -1
  27. package/es/components/search-list-page/src/use-search-list-page.d.ts +3 -1
  28. package/es/components/search-list-page/src/use-search-list-page.mjs +1 -1
  29. package/es/components/search-list-page/src/use-search-list-page.mjs.map +1 -1
  30. package/es/components/table/index.d.ts +3 -0
  31. package/es/components/table/src/table.vue.d.ts +1 -0
  32. package/es/components/table/src/table.vue2.mjs +2 -0
  33. package/es/components/table/src/table.vue2.mjs.map +1 -1
  34. package/es/components/table/src/use-table.d.ts +1 -0
  35. package/es/components/table/src/use-table.mjs +4 -0
  36. package/es/components/table/src/use-table.mjs.map +1 -1
  37. package/es/hooks/dialog/use-choose-dialog.mjs +18 -3
  38. package/es/hooks/dialog/use-choose-dialog.mjs.map +1 -1
  39. package/es/hooks/dialog/use-form-dialog.mjs +14 -2
  40. package/es/hooks/dialog/use-form-dialog.mjs.map +1 -1
  41. package/es/hooks/use-request.mjs +4 -3
  42. package/es/hooks/use-request.mjs.map +1 -1
  43. package/es/package.json.mjs +1 -1
  44. package/lib/components/attachment/src/attachment.d.ts +4 -3
  45. package/lib/components/attachment/src/attachment.js +1 -2
  46. package/lib/components/attachment/src/attachment.js.map +1 -1
  47. package/lib/components/attachment/src/attachment.vue2.js +2 -2
  48. package/lib/components/attachment/src/attachment.vue2.js.map +1 -1
  49. package/lib/components/attachment/src/use-attachment.js +2 -0
  50. package/lib/components/attachment/src/use-attachment.js.map +1 -1
  51. package/lib/components/custom-column/src/custom-column.vue2.js +1 -1
  52. package/lib/components/custom-column/src/custom-column.vue2.js.map +1 -1
  53. package/lib/components/header/index.d.ts +90 -0
  54. package/lib/components/header/src/header.d.ts +9 -0
  55. package/lib/components/header/src/header.js +10 -0
  56. package/lib/components/header/src/header.js.map +1 -1
  57. package/lib/components/header/src/header.vue.d.ts +38 -0
  58. package/lib/components/header/src/header.vue2.js +3 -2
  59. package/lib/components/header/src/header.vue2.js.map +1 -1
  60. package/lib/components/search-list-page/index.d.ts +11 -3
  61. package/lib/components/search-list-page/index.js.map +1 -1
  62. package/lib/components/search-list-page/src/search-list-page.vue.d.ts +3 -1
  63. package/lib/components/search-list-page/src/use-search-list-page.d.ts +3 -1
  64. package/lib/components/search-list-page/src/use-search-list-page.js +1 -1
  65. package/lib/components/search-list-page/src/use-search-list-page.js.map +1 -1
  66. package/lib/components/table/index.d.ts +3 -0
  67. package/lib/components/table/src/table.vue.d.ts +1 -0
  68. package/lib/components/table/src/table.vue2.js +2 -0
  69. package/lib/components/table/src/table.vue2.js.map +1 -1
  70. package/lib/components/table/src/use-table.d.ts +1 -0
  71. package/lib/components/table/src/use-table.js +4 -0
  72. package/lib/components/table/src/use-table.js.map +1 -1
  73. package/lib/hooks/dialog/use-choose-dialog.js +17 -2
  74. package/lib/hooks/dialog/use-choose-dialog.js.map +1 -1
  75. package/lib/hooks/dialog/use-form-dialog.js +14 -2
  76. package/lib/hooks/dialog/use-form-dialog.js.map +1 -1
  77. package/lib/hooks/use-request.js +4 -3
  78. package/lib/hooks/use-request.js.map +1 -1
  79. package/lib/package.json.js +1 -1
  80. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- /*! ElPlus v0.0.50 */
1
+ /*! ElPlus v0.0.52 */
2
2
 
3
3
  import { useAttrs, getCurrentInstance, inject, provide, ref, nextTick, defineComponent, computed, createVNode, Fragment, withDirectives, resolveComponent, mergeProps, resolveDirective, useTemplateRef, createTextVNode, h, mergeModels, useModel, createElementBlock, openBlock, normalizeStyle, normalizeClass, unref, createCommentVNode, withCtx, renderSlot, renderList, createBlock, vShow, toDisplayString, reactive, useSlots, watch, onMounted, createSlots, normalizeProps, guardReactiveProps, markRaw, Transition, shallowReactive, isVNode, render, createElementVNode, toRaw } from 'vue';
4
4
  import { buttonProps, useLocale as useLocale$1, ElLoading, ElMessage, ElMessageBox, formProps as formProps$1, formEmits as formEmits$1, ElTooltip, formItemProps as formItemProps$1, ElFormItem, ElForm, ElRow, ElCol, inputProps as inputProps$1, inputEmits as inputEmits$1, configProviderContextKey, ElConfigProvider, ElDialog, ElButton, ElTable, ElIcon, selectProps as selectProps$1, selectEmits as selectEmits$1, ElPageHeader, datePickerProps, linkProps as linkProps$1, ElSkeleton } from 'element-plus';
@@ -1568,9 +1568,10 @@ const useRequest = ({
1568
1568
  ...reqParams,
1569
1569
  ...config.params
1570
1570
  };
1571
- if (data.$query) {
1572
- config.data[data.$query] = data.$searchValue;
1573
- delete data.$searchValue;
1571
+ if (config.data.$query) {
1572
+ config.data[config.data.$query] = data.$searchValue;
1573
+ delete config.data.$searchValue;
1574
+ delete config.data.$query;
1574
1575
  }
1575
1576
  if (reqBefore) {
1576
1577
  reqBefore(config);
@@ -1816,7 +1817,7 @@ var _sfc_main$9 = /* @__PURE__ */ defineComponent({
1816
1817
  size: "small",
1817
1818
  onClick: open
1818
1819
  }, {
1819
- default: withCtx(() => [createTextVNode(toDisplayString(unref(t)("ep.customColumn.defineColumn")), 1)]),
1820
+ default: withCtx(() => [createTextVNode(toDisplayString(unref(t)("ep.customColumn.columnSettings")), 1)]),
1820
1821
  _: 1
1821
1822
  }, 8, ["class"])) : createCommentVNode("", true), createVNode(unref(CustomColumnDialog), null, {
1822
1823
  default: withCtx(() => [createVNode(_component_el_transfer, {
@@ -1969,7 +1970,14 @@ const useFormDialog = (options = {}) => {
1969
1970
  ...formProps
1970
1971
  } = options;
1971
1972
  const formRef = ref();
1972
- let formData = formProps.formData || reactive({});
1973
+ const isUseComFormData = !formProps.formData;
1974
+ let formData = isUseComFormData ? reactive({}) : formProps.formData;
1975
+ const isDestroy = dialogProps?.destroyOnClose;
1976
+ const resetForm = async () => {
1977
+ if (isDestroy) {
1978
+ await formRef.value?.resetFields();
1979
+ }
1980
+ };
1973
1981
  return useDialog({
1974
1982
  class: bem$1.b(),
1975
1983
  width: "80%",
@@ -1987,7 +1995,12 @@ const useFormDialog = (options = {}) => {
1987
1995
  },
1988
1996
  onConfirm: async (resolve) => {
1989
1997
  await formRef.value.validate();
1990
- resolve(formData);
1998
+ resolve(isUseComFormData ? JSON.parse(JSON.stringify(formData)) : formData);
1999
+ resetForm();
2000
+ },
2001
+ onCancel: async (resolve) => {
2002
+ await resetForm();
2003
+ resolve("cancel");
1991
2004
  },
1992
2005
  ...dialogProps
1993
2006
  });
@@ -2090,6 +2103,9 @@ const useTable$1 = (props) => {
2090
2103
  const resetFields = (props2) => {
2091
2104
  return elFormRef.value.resetFields(props2);
2092
2105
  };
2106
+ const clearSelection = () => {
2107
+ return elTableRef.value.clearSelection();
2108
+ };
2093
2109
  const clearValidate = (props2) => {
2094
2110
  return elFormRef.value.clearValidate(props2);
2095
2111
  };
@@ -2108,6 +2124,7 @@ const useTable$1 = (props) => {
2108
2124
  pagination,
2109
2125
  paginationProps,
2110
2126
  validate,
2127
+ clearSelection,
2111
2128
  resetFields,
2112
2129
  clearValidate,
2113
2130
  elFormRef,
@@ -2361,6 +2378,7 @@ var _sfc_main$8 = /* @__PURE__ */ defineComponent({
2361
2378
  validate,
2362
2379
  resetFields,
2363
2380
  clearValidate,
2381
+ clearSelection,
2364
2382
  loading,
2365
2383
  search,
2366
2384
  elFormRef,
@@ -2381,6 +2399,7 @@ var _sfc_main$8 = /* @__PURE__ */ defineComponent({
2381
2399
  validate,
2382
2400
  resetFields,
2383
2401
  clearValidate,
2402
+ clearSelection,
2384
2403
  search,
2385
2404
  openCustomColumnDialog: () => {
2386
2405
  customColumnRef.value?.open();
@@ -2714,7 +2733,7 @@ const useButtons$1 = (props, { validate, resetFields, tableRef }) => {
2714
2733
  const list = mergeListByKey(defaultButtons, props.leftButtons);
2715
2734
  if (props.customColumnModule) {
2716
2735
  list.push({
2717
- name: t("ep.customColumn.defineColumn"),
2736
+ name: t("ep.customColumn.columnSettings"),
2718
2737
  prop: "customColumn",
2719
2738
  type: "primary",
2720
2739
  onClick: () => {
@@ -3180,6 +3199,16 @@ const headerProps = {
3180
3199
  isShowAttachmentButton: {
3181
3200
  type: Boolean,
3182
3201
  default: false
3202
+ },
3203
+ // 附件列表
3204
+ fileList: {
3205
+ type: Array,
3206
+ default: () => []
3207
+ },
3208
+ attachmentProps: {
3209
+ type: Object,
3210
+ default: () => {
3211
+ }
3183
3212
  }
3184
3213
  };
3185
3214
  const headerEmits = {};
@@ -3344,7 +3373,7 @@ const attachmentProps = {
3344
3373
  },
3345
3374
  // 页面模式
3346
3375
  mode: {
3347
- ...headerProps.mode
3376
+ type: String
3348
3377
  },
3349
3378
  // 展示模式
3350
3379
  openType: {
@@ -3600,6 +3629,8 @@ const useAttachment = (props, { data }) => {
3600
3629
  const onConfirm = async (resolve) => {
3601
3630
  await tableRef.value?.validate();
3602
3631
  resolve(data.value);
3632
+ toBeConfirmData = [];
3633
+ toBeDeleteData = {};
3603
3634
  };
3604
3635
  const onCancel = (resolve) => {
3605
3636
  if (toBeConfirmData.length) {
@@ -3677,7 +3708,7 @@ var _sfc_main$4 = /* @__PURE__ */ defineComponent({
3677
3708
  return (_ctx, _cache) => {
3678
3709
  const _component_EpButtons = resolveComponent("EpButtons");
3679
3710
  return openBlock(), createElementBlock(Fragment, null, [
3680
- _ctx.isShowOpenDialogButton ? (openBlock(), createBlock(unref(ElButton), {
3711
+ props.isShowOpenDialogButton ? (openBlock(), createBlock(unref(ElButton), {
3681
3712
  key: 0,
3682
3713
  type: "primary",
3683
3714
  plain: "",
@@ -3693,7 +3724,7 @@ var _sfc_main$4 = /* @__PURE__ */ defineComponent({
3693
3724
  createVNode(unref(AttachmentDialog), null, {
3694
3725
  default: withCtx(() => [
3695
3726
  createElementVNode("div", { style: { "margin-bottom": "10px", "text-align": "right" } }, [
3696
- _ctx.openType === "dialog" ? (openBlock(), createBlock(_component_EpButtons, {
3727
+ props.openType === "dialog" ? (openBlock(), createBlock(_component_EpButtons, {
3697
3728
  key: 0,
3698
3729
  type: "primary",
3699
3730
  list: [
@@ -3752,10 +3783,11 @@ var _sfc_main$3 = /* @__PURE__ */ defineComponent({
3752
3783
  _: 1
3753
3784
  }, 8, ["onBack"])) : createCommentVNode("", true),
3754
3785
  createVNode(unref(EpButtons), { list: unref(buttons) }, null, 8, ["list"]),
3755
- props.isShowAttachmentButton ? (openBlock(), createBlock(unref(EpAttachment), {
3786
+ props.isShowAttachmentButton ? (openBlock(), createBlock(unref(EpAttachment), mergeProps({
3756
3787
  key: 1,
3788
+ "model-value": props.fileList,
3757
3789
  "is-show-open-dialog-button": ""
3758
- })) : createCommentVNode("", true)
3790
+ }, props.attachmentProps), null, 16, ["model-value"])) : createCommentVNode("", true)
3759
3791
  ], 6);
3760
3792
  };
3761
3793
  }
@@ -4140,7 +4172,7 @@ var components = [
4140
4172
  EpUniVue
4141
4173
  ];
4142
4174
 
4143
- var version = "0.0.50";
4175
+ var version = "0.0.52";
4144
4176
 
4145
4177
  var globalProperties = {
4146
4178
  install(app) {
@@ -4174,6 +4206,11 @@ const useChooseDialog = (options = {}) => {
4174
4206
  }, [t("ep.chooseDialog.selected"), selections.value.length, t("ep.chooseDialog.unit")]);
4175
4207
  };
4176
4208
  }
4209
+ const clearSelections = async () => {
4210
+ selections.value = [];
4211
+ searchListPageRef.value?.tableRef?.clearSelection();
4212
+ };
4213
+ let searchListPageRef;
4177
4214
  return useDialog({
4178
4215
  class: bem.b(),
4179
4216
  width: "80%",
@@ -4182,12 +4219,22 @@ const useChooseDialog = (options = {}) => {
4182
4219
  title,
4183
4220
  onConfirm: (resolve) => {
4184
4221
  resolve(JSON.parse(JSON.stringify(selections.value)));
4222
+ clearSelections();
4223
+ },
4224
+ onCancel: async (resolve) => {
4225
+ clearSelections();
4226
+ resolve();
4185
4227
  },
4186
4228
  render: ({
4187
4229
  resolve
4188
4230
  }) => {
4231
+ if (!searchListPageRef) {
4232
+ searchListPageRef = useTemplateRef("searchListPage");
4233
+ }
4189
4234
  const formData = rest.formData || reactive({});
4190
- return createVNode(EpSearchListPage, {
4235
+ return createVNode(EpSearchListPage, mergeProps({
4236
+ "ref": "searchListPage"
4237
+ }, {
4191
4238
  showSelectionCol: multiple,
4192
4239
  showSingleSelectionCol,
4193
4240
  formData,
@@ -4206,7 +4253,7 @@ const useChooseDialog = (options = {}) => {
4206
4253
  resolve(toRaw(selections));
4207
4254
  }
4208
4255
  }
4209
- }, null);
4256
+ }), null);
4210
4257
  },
4211
4258
  ...dialogProps
4212
4259
  });
@@ -1,11 +1,12 @@
1
- import type { ExtractPropTypes, PropType } from 'vue';
1
+ import type { ExtractPublicPropTypes, PropType } from 'vue';
2
+ import type { PageMode } from 'el-plus/es/hooks/use-navigation';
2
3
  export declare const attachmentProps: {
3
4
  readonly formatColumns: {
4
5
  readonly type: PropType<import("el-plus/es/components/table").TableColumn[]>;
5
6
  readonly default: () => never[];
6
7
  };
7
8
  readonly mode: {
8
- readonly type: PropType<import("el-plus/es/hooks").PageMode>;
9
+ readonly type: PropType<PageMode>;
9
10
  };
10
11
  readonly openType: {
11
12
  readonly type: PropType<"dialog" | "normal">;
@@ -24,4 +25,4 @@ export declare const attachmentProps: {
24
25
  readonly default: false;
25
26
  };
26
27
  };
27
- export type AttachmentProps = ExtractPropTypes<typeof attachmentProps>;
28
+ export type AttachmentProps = ExtractPublicPropTypes<typeof attachmentProps>;
@@ -1,4 +1,3 @@
1
- import { headerProps } from '../../header/src/header.mjs';
2
1
  import { tableProps } from '../../table/src/table.mjs';
3
2
 
4
3
  const attachmentProps = {
@@ -8,7 +7,7 @@ const attachmentProps = {
8
7
  },
9
8
  // 页面模式
10
9
  mode: {
11
- ...headerProps.mode
10
+ type: String
12
11
  },
13
12
  // 展示模式
14
13
  openType: {
@@ -1 +1 @@
1
- {"version":3,"file":"attachment.mjs","sources":["../../../../../../packages/components/attachment/src/attachment.ts"],"sourcesContent":["import type { ExtractPropTypes, PropType } from 'vue'\nimport { tableProps } from '@el-plus/components/table'\nimport { headerProps } from '@el-plus/components/header'\nexport const attachmentProps = {\n // 格式化列\n formatColumns: {\n ...tableProps.formatColumns,\n },\n // 页面模式\n mode: {\n ...headerProps.mode,\n },\n // 展示模式\n openType: {\n type: String as PropType<'dialog' | 'normal'>,\n default: 'dialog',\n },\n // 是否需要类型\n isType: {\n type: Boolean,\n default: true,\n },\n // 是否需要备注\n isNote: {\n type: Boolean,\n default: false,\n },\n // 是否需要打开弹窗按钮\n isShowOpenDialogButton: {\n type: Boolean,\n default: false,\n },\n} as const\nexport type AttachmentProps = ExtractPropTypes<typeof attachmentProps>\n"],"names":[],"mappings":";;;AAGO,MAAM,eAAA,GAAkB;AAAA;AAAA,EAE7B,aAAA,EAAe;AAAA,IACb,GAAG,UAAA,CAAW;AAAA,GAChB;AAAA;AAAA,EAEA,IAAA,EAAM;AAAA,IACJ,GAAG,WAAA,CAAY;AAAA,GACjB;AAAA;AAAA,EAEA,QAAA,EAAU;AAAA,IACR,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,MAAA,EAAQ;AAAA,IACN,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,MAAA,EAAQ;AAAA,IACN,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,sBAAA,EAAwB;AAAA,IACtB,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA;AAEb;;;;"}
1
+ {"version":3,"file":"attachment.mjs","sources":["../../../../../../packages/components/attachment/src/attachment.ts"],"sourcesContent":["import type { ExtractPublicPropTypes, PropType } from 'vue'\nimport { tableProps } from '@el-plus/components/table'\nimport type { PageMode } from '@el-plus/hooks/use-navigation'\n\nexport const attachmentProps = {\n // 格式化列\n formatColumns: {\n ...tableProps.formatColumns,\n },\n // 页面模式\n mode: {\n type: String as PropType<PageMode>,\n },\n // 展示模式\n openType: {\n type: String as PropType<'dialog' | 'normal'>,\n default: 'dialog',\n },\n // 是否需要类型\n isType: {\n type: Boolean,\n default: true,\n },\n // 是否需要备注\n isNote: {\n type: Boolean,\n default: false,\n },\n // 是否需要打开弹窗按钮\n isShowOpenDialogButton: {\n type: Boolean,\n default: false,\n },\n} as const\nexport type AttachmentProps = ExtractPublicPropTypes<typeof attachmentProps>\n"],"names":[],"mappings":";;AAIO,MAAM,eAAA,GAAkB;AAAA;AAAA,EAE7B,aAAA,EAAe;AAAA,IACb,GAAG,UAAA,CAAW;AAAA,GAChB;AAAA;AAAA,EAEA,IAAA,EAAM;AAAA,IACJ,IAAA,EAAM;AAAA,GACR;AAAA;AAAA,EAEA,QAAA,EAAU;AAAA,IACR,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,MAAA,EAAQ;AAAA,IACN,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,MAAA,EAAQ;AAAA,IACN,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,sBAAA,EAAwB;AAAA,IACtB,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA;AAEb;;;;"}
@@ -56,7 +56,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
56
56
  return (_ctx, _cache) => {
57
57
  const _component_EpButtons = resolveComponent("EpButtons");
58
58
  return openBlock(), createElementBlock(Fragment, null, [
59
- _ctx.isShowOpenDialogButton ? (openBlock(), createBlock(unref(ElButton), {
59
+ props.isShowOpenDialogButton ? (openBlock(), createBlock(unref(ElButton), {
60
60
  key: 0,
61
61
  type: "primary",
62
62
  plain: "",
@@ -72,7 +72,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
72
72
  createVNode(unref(AttachmentDialog), null, {
73
73
  default: withCtx(() => [
74
74
  createElementVNode("div", { style: { "margin-bottom": "10px", "text-align": "right" } }, [
75
- _ctx.openType === "dialog" ? (openBlock(), createBlock(_component_EpButtons, {
75
+ props.openType === "dialog" ? (openBlock(), createBlock(_component_EpButtons, {
76
76
  key: 0,
77
77
  type: "primary",
78
78
  list: [
@@ -1 +1 @@
1
- {"version":3,"file":"attachment.vue2.mjs","sources":["../../../../../../packages/components/attachment/src/attachment.vue"],"sourcesContent":["<template>\n <ElButton\n v-if=\"isShowOpenDialogButton\"\n type=\"primary\"\n plain\n size=\"small\"\n :class=\"bem.e('handler')\"\n @click=\"open\"\n >\n {{ t('ep.attachment.manageAttachment') }}({{ modelValue?.length || 0 }})\n </ElButton>\n <AttachmentDialog>\n <div style=\"margin-bottom: 10px; text-align: right\">\n <EpButtons\n v-if=\"openType === 'dialog'\"\n type=\"primary\"\n :list=\"[\n {\n name: t('ep.attachment.addAttachment'),\n type: 'primary',\n onClick: addAttachment,\n },\n ]\"\n />\n </div>\n\n <EpTable\n ref=\"tableRef\"\n :class=\"`${bem.b()} ${prepareClassNames()}`\"\n :style=\"{\n ...prepareStyles(),\n }\"\n :columns=\"columns\"\n :data=\"modelValue\"\n v-bind=\"props\"\n >\n </EpTable>\n </AttachmentDialog>\n</template>\n<script setup lang=\"ts\">\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport { prepareClassNames, prepareStyles } from '@el-plus/utils/props'\nimport { attachmentProps } from './attachment'\nimport EpTable from '@el-plus/components/table'\nimport { useAttachment } from './use-attachment'\nimport type { TableProps } from '@el-plus/components/table'\nimport { useDialog } from '@el-plus/hooks/dialog/use-dialog'\nimport { useLocale } from '@el-plus/hooks/use-locale'\nimport { ElButton } from 'element-plus'\nconst { t } = useLocale()\ndefineOptions({\n name: 'EpAttachment',\n inheritAttrs: false,\n})\nconst bem = createNameSpace('attachment')\nconst props = defineProps(attachmentProps)\nconst modelValue = defineModel<TableProps['data']>()\nconst { columns, addAttachment, isNormalOpen, onConfirm, onCancel } =\n useAttachment(props, {\n data: modelValue,\n })\nconst AttachmentDialog = useDialog({\n width: 850,\n center: true,\n title: isNormalOpen ? '' : t('ep.attachment.manageAttachment'),\n modal: !isNormalOpen,\n showClose: !isNormalOpen,\n showFooter: !isNormalOpen,\n transition: isNormalOpen ? '' : 'dialog-fade',\n modalClass: bem.em(\n 'dialog',\n props.openType === 'normal' ? props.openType : '',\n ),\n onConfirm: async (resolve) => {\n onConfirm(resolve)\n },\n onCancel: (resolve) => {\n onCancel(resolve)\n },\n})\nconst open = AttachmentDialog.open\nif (isNormalOpen) {\n open()\n}\ndefineExpose({\n open,\n})\n</script>\n"],"names":["_useModel","isShowOpenDialogButton","_createBlock","_unref","_normalizeClass","_createTextVNode","_toDisplayString","_createVNode","_createElementVNode","openType","_mergeProps"],"mappings":"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"}
1
+ {"version":3,"file":"attachment.vue2.mjs","sources":["../../../../../../packages/components/attachment/src/attachment.vue"],"sourcesContent":["<template>\n <ElButton\n v-if=\"props.isShowOpenDialogButton\"\n type=\"primary\"\n plain\n size=\"small\"\n :class=\"bem.e('handler')\"\n @click=\"open\"\n >\n {{ t('ep.attachment.manageAttachment') }}({{ modelValue?.length || 0 }})\n </ElButton>\n <AttachmentDialog>\n <div style=\"margin-bottom: 10px; text-align: right\">\n <EpButtons\n v-if=\"props.openType === 'dialog'\"\n type=\"primary\"\n :list=\"[\n {\n name: t('ep.attachment.addAttachment'),\n type: 'primary',\n onClick: addAttachment,\n },\n ]\"\n />\n </div>\n\n <EpTable\n ref=\"tableRef\"\n :class=\"`${bem.b()} ${prepareClassNames()}`\"\n :style=\"{\n ...prepareStyles(),\n }\"\n :columns=\"columns\"\n :data=\"modelValue\"\n v-bind=\"props\"\n >\n </EpTable>\n </AttachmentDialog>\n</template>\n<script setup lang=\"ts\">\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport { prepareClassNames, prepareStyles } from '@el-plus/utils/props'\nimport { attachmentProps } from './attachment'\nimport EpTable from '@el-plus/components/table'\nimport { useAttachment } from './use-attachment'\nimport type { TableProps } from '@el-plus/components/table'\nimport { useDialog } from '@el-plus/hooks/dialog/use-dialog'\nimport { useLocale } from '@el-plus/hooks/use-locale'\nimport { ElButton } from 'element-plus'\nconst { t } = useLocale()\ndefineOptions({\n name: 'EpAttachment',\n inheritAttrs: false,\n})\nconst bem = createNameSpace('attachment')\nconst props = defineProps(attachmentProps)\nconst modelValue = defineModel<TableProps['data']>()\nconst { columns, addAttachment, isNormalOpen, onConfirm, onCancel } =\n useAttachment(props, {\n data: modelValue,\n })\nconst AttachmentDialog = useDialog({\n width: 850,\n center: true,\n title: isNormalOpen ? '' : t('ep.attachment.manageAttachment'),\n modal: !isNormalOpen,\n showClose: !isNormalOpen,\n showFooter: !isNormalOpen,\n transition: isNormalOpen ? '' : 'dialog-fade',\n modalClass: bem.em(\n 'dialog',\n props.openType === 'normal' ? props.openType : '',\n ),\n onConfirm: async (resolve) => {\n onConfirm(resolve)\n },\n onCancel: (resolve) => {\n onCancel(resolve)\n },\n})\nconst open = AttachmentDialog.open\nif (isNormalOpen) {\n open()\n}\ndefineExpose({\n open,\n})\n</script>\n"],"names":["_useModel","_createBlock","_unref","_normalizeClass","_createTextVNode","_toDisplayString","_createVNode","_createElementVNode","_mergeProps"],"mappings":"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"}
@@ -100,6 +100,8 @@ const useAttachment = (props, { data }) => {
100
100
  const onConfirm = async (resolve) => {
101
101
  await tableRef.value?.validate();
102
102
  resolve(data.value);
103
+ toBeConfirmData = [];
104
+ toBeDeleteData = {};
103
105
  };
104
106
  const onCancel = (resolve) => {
105
107
  if (toBeConfirmData.length) {
@@ -1 +1 @@
1
- {"version":3,"file":"use-attachment.mjs","sources":["../../../../../../packages/components/attachment/src/use-attachment.ts"],"sourcesContent":["import { ref, computed, useTemplateRef } from 'vue'\nimport { useNavigation } from '@el-plus/hooks/use-navigation'\nimport { useLocale } from '@el-plus/hooks/use-locale'\nimport { downloadFile, previewFile, importFile } from '@el-plus/utils/file'\nimport { Cookies } from '@el-plus/utils/cookie'\nimport type { TableInstance } from '@el-plus/components/table'\n\nexport const useAttachment = (props, { data }) => {\n const { mode: defaultMode } = useNavigation()\n const { t } = useLocale()\n const mode = computed(() => {\n return props.mode || defaultMode.value\n })\n const tableRef = useTemplateRef<TableInstance>('tableRef')\n const isNormalOpen = props.openType === 'normal'\n const isDialogOpen = props.openType === 'dialog'\n\n // 待确认的附件列表\n let toBeConfirmData: Record<string, any>[] = []\n // 待删除的附件列表\n let toBeDeleteData: {\n [key: number]: Record<string, any> // key要存储原来索引以便保留原顺序\n } = {}\n const columns = ref([\n {\n type: 'EpButtons',\n label: t('ep.attachment.operation'),\n width: '120px',\n props: {\n type: 'text',\n list: [\n {\n name: t('ep.attachment.download'),\n onClick({ row }) {\n downloadFile({\n src: row.filePath,\n fileName: row.originalFilename || row.originalFileName,\n })\n },\n },\n {\n name: t('ep.attachment.delete'),\n disabled: () => {\n return mode.value === 'browse'\n },\n onClick: ({ $index, row }) => {\n if (isDialogOpen) {\n // 待删除的附件列表\n toBeDeleteData[$index] = row\n }\n data.value.splice($index, 1)\n },\n },\n ],\n },\n },\n {\n label: t('ep.attachment.attachmentType'),\n prop: 'type',\n type: 'EpSelect',\n required: true,\n show: () => props.isType,\n props: {\n desc: ({ row }) => {\n return row.typeDesc\n },\n },\n },\n {\n label: t('ep.attachment.fileName'),\n prop: 'originalFilename',\n type: 'EpLink',\n onClick({ row }) {\n previewFile(row.filePath)\n },\n },\n {\n label: t('ep.attachment.creator'),\n prop: 'createBy',\n },\n {\n label: t('ep.attachment.createTime'),\n prop: 'createTime',\n },\n {\n label: t('ep.attachment.description'),\n prop: 'note',\n type: 'EpInput',\n show: () => props.isNote,\n },\n ])\n const addAttachment = async () => {\n toBeConfirmData = []\n const fileData = await importFile({\n api: 'api-f/fast/files/save',\n extraData: {\n createBy: Cookies.get('accountName') || '',\n },\n })\n fileData.fileId = fileData.id\n delete fileData.id\n if (isDialogOpen) {\n // 待确认的附件列表\n toBeConfirmData.push(fileData)\n }\n data.value.push(fileData)\n }\n // 确认\n const onConfirm = async (resolve) => {\n await tableRef.value?.validate()\n resolve(data.value)\n }\n // 取消\n const onCancel = (resolve) => {\n if (toBeConfirmData.length) {\n // 找到待确认的附件\n const index = data.value.findIndex((item) => {\n return item.fileId === toBeConfirmData[0].fileId\n })\n if (index !== -1) {\n // 删除待确认的附件\n data.value.splice(index, 1)\n }\n // 清空待确认的附件列表\n toBeConfirmData = []\n }\n if (Object.keys(toBeDeleteData).length) {\n // 找到待删除的附件在原位置插入\n Object.keys(toBeDeleteData).forEach((oldIndex) => {\n data.value.splice(Number(oldIndex), 0, toBeDeleteData[oldIndex])\n })\n // 清空待删除的附件列表\n toBeDeleteData = {}\n }\n resolve()\n }\n return {\n columns,\n addAttachment,\n isNormalOpen,\n isDialogOpen,\n onConfirm,\n onCancel,\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-attachment.mjs","sources":["../../../../../../packages/components/attachment/src/use-attachment.ts"],"sourcesContent":["import { ref, computed, useTemplateRef } from 'vue'\nimport { useNavigation } from '@el-plus/hooks/use-navigation'\nimport { useLocale } from '@el-plus/hooks/use-locale'\nimport { downloadFile, previewFile, importFile } from '@el-plus/utils/file'\nimport { Cookies } from '@el-plus/utils/cookie'\nimport type { TableInstance } from '@el-plus/components/table'\n\nexport const useAttachment = (props, { data }) => {\n const { mode: defaultMode } = useNavigation()\n const { t } = useLocale()\n const mode = computed(() => {\n return props.mode || defaultMode.value\n })\n const tableRef = useTemplateRef<TableInstance>('tableRef')\n const isNormalOpen = props.openType === 'normal'\n const isDialogOpen = props.openType === 'dialog'\n\n // 待确认的附件列表\n let toBeConfirmData: Record<string, any>[] = []\n // 待删除的附件列表\n let toBeDeleteData: {\n [key: number]: Record<string, any> // key要存储原来索引以便保留原顺序\n } = {}\n const columns = ref([\n {\n type: 'EpButtons',\n label: t('ep.attachment.operation'),\n width: '120px',\n props: {\n type: 'text',\n list: [\n {\n name: t('ep.attachment.download'),\n onClick({ row }) {\n downloadFile({\n src: row.filePath,\n fileName: row.originalFilename || row.originalFileName,\n })\n },\n },\n {\n name: t('ep.attachment.delete'),\n disabled: () => {\n return mode.value === 'browse'\n },\n onClick: ({ $index, row }) => {\n if (isDialogOpen) {\n // 待删除的附件列表\n toBeDeleteData[$index] = row\n }\n data.value.splice($index, 1)\n },\n },\n ],\n },\n },\n {\n label: t('ep.attachment.attachmentType'),\n prop: 'type',\n type: 'EpSelect',\n required: true,\n show: () => props.isType,\n props: {\n desc: ({ row }) => {\n return row.typeDesc\n },\n },\n },\n {\n label: t('ep.attachment.fileName'),\n prop: 'originalFilename',\n type: 'EpLink',\n onClick({ row }) {\n previewFile(row.filePath)\n },\n },\n {\n label: t('ep.attachment.creator'),\n prop: 'createBy',\n },\n {\n label: t('ep.attachment.createTime'),\n prop: 'createTime',\n },\n {\n label: t('ep.attachment.description'),\n prop: 'note',\n type: 'EpInput',\n show: () => props.isNote,\n },\n ])\n const addAttachment = async () => {\n toBeConfirmData = []\n const fileData = await importFile({\n api: 'api-f/fast/files/save',\n extraData: {\n createBy: Cookies.get('accountName') || '',\n },\n })\n fileData.fileId = fileData.id\n delete fileData.id\n if (isDialogOpen) {\n // 待确认的附件列表\n toBeConfirmData.push(fileData)\n }\n data.value.push(fileData)\n }\n // 确认\n const onConfirm = async (resolve) => {\n await tableRef.value?.validate()\n resolve(data.value)\n toBeConfirmData = []\n toBeDeleteData = {}\n }\n // 取消\n const onCancel = (resolve) => {\n if (toBeConfirmData.length) {\n // 找到待确认的附件\n const index = data.value.findIndex((item) => {\n return item.fileId === toBeConfirmData[0].fileId\n })\n if (index !== -1) {\n // 删除待确认的附件\n data.value.splice(index, 1)\n }\n // 清空待确认的附件列表\n toBeConfirmData = []\n }\n if (Object.keys(toBeDeleteData).length) {\n // 找到待删除的附件在原位置插入\n Object.keys(toBeDeleteData).forEach((oldIndex) => {\n data.value.splice(Number(oldIndex), 0, toBeDeleteData[oldIndex])\n })\n // 清空待删除的附件列表\n toBeDeleteData = {}\n }\n resolve()\n }\n return {\n columns,\n addAttachment,\n isNormalOpen,\n isDialogOpen,\n onConfirm,\n onCancel,\n }\n}\n"],"names":[],"mappings":"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"}
@@ -165,7 +165,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
165
165
  size: "small",
166
166
  onClick: open
167
167
  }, {
168
- default: withCtx(() => [createTextVNode(toDisplayString(unref(t)("ep.customColumn.defineColumn")), 1)]),
168
+ default: withCtx(() => [createTextVNode(toDisplayString(unref(t)("ep.customColumn.columnSettings")), 1)]),
169
169
  _: 1
170
170
  }, 8, ["class"])) : createCommentVNode("", true), createVNode(unref(CustomColumnDialog), null, {
171
171
  default: withCtx(() => [createVNode(_component_el_transfer, {
@@ -1 +1 @@
1
- {"version":3,"file":"custom-column.vue2.mjs","sources":["../../../../../../packages/components/custom-column/src/custom-column.vue"],"sourcesContent":["<template>\n <el-button\n v-if=\"showHandler\"\n type=\"primary\"\n :class=\"[bem.b(), 'ep-button']\"\n size=\"small\"\n @click=\"open\"\n >{{ t('ep.customColumn.defineColumn') }}</el-button\n >\n <CustomColumnDialog>\n <el-transfer\n v-model=\"showData\"\n :class=\"bem.e('transfer')\"\n filterable\n :titles=\"[\n t('ep.customColumn.hiddenField'),\n t('ep.customColumn.visibleField'),\n ]\"\n :button-texts=\"[\n t('ep.customColumn.moveLeft'),\n t('ep.customColumn.moveRight'),\n ]\"\n :data=\"allData\"\n target-order=\"push\"\n @right-check-change=\"rightCheckChange\"\n @change=\"change\"\n >\n <template #left-footer>\n <div :class=\"bem.e('operate')\">\n <el-button\n type=\"primary\"\n class=\"up\"\n :disabled=\"isDiabledMoveUpDown\"\n @click=\"moveUp\"\n >\n <el-icon><arrow-up /></el-icon>\n {{ t('ep.customColumn.moveUp') }}\n </el-button>\n <el-button\n type=\"primary\"\n class=\"down\"\n :disabled=\"isDiabledMoveUpDown\"\n @click=\"moveDown\"\n >\n {{ t('ep.customColumn.moveDown') }}\n <el-icon><arrow-down /></el-icon>\n </el-button>\n </div>\n </template>\n </el-transfer>\n </CustomColumnDialog>\n</template>\n\n<script setup lang=\"tsx\">\nimport { ref, computed, watch, provide } from 'vue'\nimport { useDialog } from '@el-plus/hooks/dialog/use-dialog'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport { useLocale } from '@el-plus/hooks/use-locale'\nimport { ArrowUp, ArrowDown } from '@element-plus/icons-vue'\nimport { customColumnEmits, customColumnProps } from './custom-column'\nimport { useRequest } from '@el-plus/hooks/use-request'\nimport type { TransferDataItem } from 'element-plus'\nimport { bus } from '@el-plus/utils'\n\nconst { t } = useLocale()\nconst bem = createNameSpace('custom-column')\ndefineOptions({ name: 'EpCustomColumn', inheritAttrs: false })\nconst props = defineProps(customColumnProps)\nconst emit = defineEmits(customColumnEmits)\nconst CustomColumnDialog = useDialog({\n class: bem.e('dialog'),\n width: 850,\n center: true,\n title: t('ep.customColumn.columnSettings'),\n onConfirm: async (resolve) => {\n resolve(\n saveColumnsFn!({\n module: props.module,\n userModuleColumnsReqs: showData.value.map((item, index) => {\n return {\n columnId: item,\n seq: index,\n }\n }),\n }).then(() => {\n const columns = showTableColumns()\n emit('confirm', columns)\n bus.emit('loadedCustomColumn', columns)\n }),\n )\n },\n})\nconst allData = ref<TransferDataItem[]>([])\nconst showData = ref<TransferDataItem[]>([])\nconst { requestFn: getColumnsFn } = useRequest({\n api: props.api,\n method: 'post',\n hooks: {\n success(data) {\n const { hiddenColumns, showColumns } = data as {\n hiddenColumns: TransferDataItem[]\n showColumns: TransferDataItem[]\n }\n allData.value = [...hiddenColumns, ...showColumns].map((item) => ({\n label: item.showName,\n key: item.id,\n prop: item.showField,\n }))\n showData.value = showColumns.map((item) => item.id)\n const columns = showTableColumns()\n emit('loaded', columns)\n bus.emit('loadedCustomColumn', columns)\n },\n },\n})\nconst { requestFn: saveColumnsFn } = useRequest({\n api: props.saveApi,\n method: 'post',\n hooks: {\n success() {\n emit('confirm', showTableColumns())\n },\n },\n})\nconst showTableColumns = () => {\n return showData.value.map((id) => {\n const item = allData.value.find((item) => item.key === id)\n return {\n prop: item!.prop,\n label: item!.label,\n key: item!.key,\n }\n })\n}\nif (props.module) {\n getColumnsFn!({\n module: props.module,\n })\n}\nconst rightChecked = ref([])\n\nconst moveUp = () => {\n const index = showData.value.indexOf(rightChecked.value[0])\n const temp = showData.value[index]\n if (index === 0) {\n showData.value[index] = showData.value[showData.value.length - 1]\n showData.value[showData.value.length - 1] = temp\n } else {\n showData.value[index] = showData.value[index - 1]\n showData.value[index - 1] = temp\n }\n scrollIntoView()\n}\nconst moveDown = () => {\n const index = showData.value.indexOf(rightChecked.value[0])\n const temp = showData.value[index]\n if (index === showData.value.length - 1) {\n showData.value[index] = showData.value[0]\n showData.value[0] = temp\n } else {\n showData.value[index] = showData.value[index + 1]\n showData.value[index + 1] = temp\n }\n scrollIntoView()\n}\nconst scrollIntoView = () => {\n // 选中项要在可视范围\n const checkedEl = document.querySelectorAll(\n '.ep-custom-column__transfer .el-transfer-panel',\n )\n const rightEl = checkedEl[1].querySelector(\n '.el-transfer-panel__item.is-checked',\n )\n if (rightEl) {\n requestAnimationFrame(() => {\n rightEl.scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n })\n })\n }\n}\n\nconst rightCheckChange = (val) => {\n rightChecked.value = val\n}\nconst change = () => {\n if (!showData.value.some((item) => item === rightChecked.value[0])) {\n rightChecked.value = []\n }\n}\n\nconst isDiabledMoveUpDown = computed(() => {\n return rightChecked.value.length !== 1\n})\n\nconst open = async () => {\n try {\n await CustomColumnDialog.open()\n } catch (error) {}\n}\ndefineExpose({ open })\n</script>\n"],"names":["t","useLocale","bem","createNameSpace","props","__props","emit","__emit","CustomColumnDialog","useDialog","class","e","width","center","title","onConfirm","resolve","saveColumnsFn","module","userModuleColumnsReqs","showData","value","map","item","index","columnId","seq","then","columns","showTableColumns","bus","allData","ref","requestFn","getColumnsFn","useRequest","api","method","hooks","success","data","hiddenColumns","showColumns","label","showName","key","id","prop","showField","saveApi","find","rightChecked","moveUp","indexOf","temp","length","scrollIntoView","moveDown","checkedEl","document","querySelectorAll","rightEl","querySelector","requestAnimationFrame","behavior","block","rightCheckChange","val","change","some","isDiabledMoveUpDown","computed","open","error","__expose","showHandler","_createBlock","_component_el_button","type","_normalizeClass","_unref","b","size","onClick","_createVNode","_component_el_transfer","$event","filterable","titles","onRightCheckChange","onChange","_createElementVNode","disabled","_component_el_icon","ArrowUp","_createTextVNode","_toDisplayString","ArrowDown"],"mappings":"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"}
1
+ {"version":3,"file":"custom-column.vue2.mjs","sources":["../../../../../../packages/components/custom-column/src/custom-column.vue"],"sourcesContent":["<template>\n <el-button\n v-if=\"showHandler\"\n type=\"primary\"\n :class=\"[bem.b(), 'ep-button']\"\n size=\"small\"\n @click=\"open\"\n >{{ t('ep.customColumn.columnSettings') }}</el-button\n >\n <CustomColumnDialog>\n <el-transfer\n v-model=\"showData\"\n :class=\"bem.e('transfer')\"\n filterable\n :titles=\"[\n t('ep.customColumn.hiddenField'),\n t('ep.customColumn.visibleField'),\n ]\"\n :button-texts=\"[\n t('ep.customColumn.moveLeft'),\n t('ep.customColumn.moveRight'),\n ]\"\n :data=\"allData\"\n target-order=\"push\"\n @right-check-change=\"rightCheckChange\"\n @change=\"change\"\n >\n <template #left-footer>\n <div :class=\"bem.e('operate')\">\n <el-button\n type=\"primary\"\n class=\"up\"\n :disabled=\"isDiabledMoveUpDown\"\n @click=\"moveUp\"\n >\n <el-icon><arrow-up /></el-icon>\n {{ t('ep.customColumn.moveUp') }}\n </el-button>\n <el-button\n type=\"primary\"\n class=\"down\"\n :disabled=\"isDiabledMoveUpDown\"\n @click=\"moveDown\"\n >\n {{ t('ep.customColumn.moveDown') }}\n <el-icon><arrow-down /></el-icon>\n </el-button>\n </div>\n </template>\n </el-transfer>\n </CustomColumnDialog>\n</template>\n\n<script setup lang=\"tsx\">\nimport { ref, computed, watch, provide } from 'vue'\nimport { useDialog } from '@el-plus/hooks/dialog/use-dialog'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport { useLocale } from '@el-plus/hooks/use-locale'\nimport { ArrowUp, ArrowDown } from '@element-plus/icons-vue'\nimport { customColumnEmits, customColumnProps } from './custom-column'\nimport { useRequest } from '@el-plus/hooks/use-request'\nimport type { TransferDataItem } from 'element-plus'\nimport { bus } from '@el-plus/utils'\n\nconst { t } = useLocale()\nconst bem = createNameSpace('custom-column')\ndefineOptions({ name: 'EpCustomColumn', inheritAttrs: false })\nconst props = defineProps(customColumnProps)\nconst emit = defineEmits(customColumnEmits)\nconst CustomColumnDialog = useDialog({\n class: bem.e('dialog'),\n width: 850,\n center: true,\n title: t('ep.customColumn.columnSettings'),\n onConfirm: async (resolve) => {\n resolve(\n saveColumnsFn!({\n module: props.module,\n userModuleColumnsReqs: showData.value.map((item, index) => {\n return {\n columnId: item,\n seq: index,\n }\n }),\n }).then(() => {\n const columns = showTableColumns()\n emit('confirm', columns)\n bus.emit('loadedCustomColumn', columns)\n }),\n )\n },\n})\nconst allData = ref<TransferDataItem[]>([])\nconst showData = ref<TransferDataItem[]>([])\nconst { requestFn: getColumnsFn } = useRequest({\n api: props.api,\n method: 'post',\n hooks: {\n success(data) {\n const { hiddenColumns, showColumns } = data as {\n hiddenColumns: TransferDataItem[]\n showColumns: TransferDataItem[]\n }\n allData.value = [...hiddenColumns, ...showColumns].map((item) => ({\n label: item.showName,\n key: item.id,\n prop: item.showField,\n }))\n showData.value = showColumns.map((item) => item.id)\n const columns = showTableColumns()\n emit('loaded', columns)\n bus.emit('loadedCustomColumn', columns)\n },\n },\n})\nconst { requestFn: saveColumnsFn } = useRequest({\n api: props.saveApi,\n method: 'post',\n hooks: {\n success() {\n emit('confirm', showTableColumns())\n },\n },\n})\nconst showTableColumns = () => {\n return showData.value.map((id) => {\n const item = allData.value.find((item) => item.key === id)\n return {\n prop: item!.prop,\n label: item!.label,\n key: item!.key,\n }\n })\n}\nif (props.module) {\n getColumnsFn!({\n module: props.module,\n })\n}\nconst rightChecked = ref([])\n\nconst moveUp = () => {\n const index = showData.value.indexOf(rightChecked.value[0])\n const temp = showData.value[index]\n if (index === 0) {\n showData.value[index] = showData.value[showData.value.length - 1]\n showData.value[showData.value.length - 1] = temp\n } else {\n showData.value[index] = showData.value[index - 1]\n showData.value[index - 1] = temp\n }\n scrollIntoView()\n}\nconst moveDown = () => {\n const index = showData.value.indexOf(rightChecked.value[0])\n const temp = showData.value[index]\n if (index === showData.value.length - 1) {\n showData.value[index] = showData.value[0]\n showData.value[0] = temp\n } else {\n showData.value[index] = showData.value[index + 1]\n showData.value[index + 1] = temp\n }\n scrollIntoView()\n}\nconst scrollIntoView = () => {\n // 选中项要在可视范围\n const checkedEl = document.querySelectorAll(\n '.ep-custom-column__transfer .el-transfer-panel',\n )\n const rightEl = checkedEl[1].querySelector(\n '.el-transfer-panel__item.is-checked',\n )\n if (rightEl) {\n requestAnimationFrame(() => {\n rightEl.scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n })\n })\n }\n}\n\nconst rightCheckChange = (val) => {\n rightChecked.value = val\n}\nconst change = () => {\n if (!showData.value.some((item) => item === rightChecked.value[0])) {\n rightChecked.value = []\n }\n}\n\nconst isDiabledMoveUpDown = computed(() => {\n return rightChecked.value.length !== 1\n})\n\nconst open = async () => {\n try {\n await CustomColumnDialog.open()\n } catch (error) {}\n}\ndefineExpose({ open })\n</script>\n"],"names":["t","useLocale","bem","createNameSpace","props","__props","emit","__emit","CustomColumnDialog","useDialog","class","e","width","center","title","onConfirm","resolve","saveColumnsFn","module","userModuleColumnsReqs","showData","value","map","item","index","columnId","seq","then","columns","showTableColumns","bus","allData","ref","requestFn","getColumnsFn","useRequest","api","method","hooks","success","data","hiddenColumns","showColumns","label","showName","key","id","prop","showField","saveApi","find","rightChecked","moveUp","indexOf","temp","length","scrollIntoView","moveDown","checkedEl","document","querySelectorAll","rightEl","querySelector","requestAnimationFrame","behavior","block","rightCheckChange","val","change","some","isDiabledMoveUpDown","computed","open","error","__expose","showHandler","_createBlock","_component_el_button","type","_normalizeClass","_unref","b","size","onClick","_createVNode","_component_el_transfer","$event","filterable","titles","onRightCheckChange","onChange","_createElementVNode","disabled","_component_el_icon","ArrowUp","_createTextVNode","_toDisplayString","ArrowDown"],"mappings":"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"}
@@ -33,6 +33,14 @@ export declare const EpHeader: {
33
33
  readonly type: BooleanConstructor;
34
34
  readonly default: false;
35
35
  };
36
+ readonly fileList: {
37
+ readonly type: import("vue").PropType<Record<string, any>[]>;
38
+ readonly default: () => never[];
39
+ };
40
+ readonly attachmentProps: {
41
+ readonly type: import("vue").PropType<import("el-plus/es/index").AttachmentProps>;
42
+ readonly default: () => void;
43
+ };
36
44
  }>> & Readonly<{}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").PublicProps, {
37
45
  readonly buttons: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
38
46
  name: string;
@@ -50,6 +58,28 @@ export declare const EpHeader: {
50
58
  readonly allowBack: boolean;
51
59
  readonly defaultButtons: import("./src/header").defaultButtonsProps[];
52
60
  readonly isShowAttachmentButton: boolean;
61
+ readonly fileList: Record<string, any>[];
62
+ readonly attachmentProps: {
63
+ readonly mode?: import("el-plus/es/hooks/use-navigation").PageMode | undefined;
64
+ readonly formatColumns?: Partial<import("element-plus").TableColumnCtx & {
65
+ [key: string]: any;
66
+ required: boolean | (() => boolean);
67
+ cellRequired: (scope: import("el-plus/es/index").TableScope) => boolean;
68
+ headerRender: import("element-plus").TableColumnCtx["renderHeader"];
69
+ disabled: boolean | ((scope: import("el-plus/es/index").TableScope) => boolean);
70
+ type: string;
71
+ props: Record<string, any>;
72
+ filter: boolean;
73
+ editable: boolean | ((formData: Record<string, any>) => void);
74
+ } & {} & {
75
+ show?: (boolean | ((T: unknown) => boolean)) | undefined;
76
+ hide?: (boolean | ((T: unknown) => boolean)) | undefined;
77
+ }>[] | undefined;
78
+ readonly openType?: "dialog" | "normal" | undefined;
79
+ readonly isType?: boolean | undefined;
80
+ readonly isNote?: boolean | undefined;
81
+ readonly isShowOpenDialogButton?: boolean | undefined;
82
+ };
53
83
  }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
54
84
  P: {};
55
85
  B: {};
@@ -91,6 +121,14 @@ export declare const EpHeader: {
91
121
  readonly type: BooleanConstructor;
92
122
  readonly default: false;
93
123
  };
124
+ readonly fileList: {
125
+ readonly type: import("vue").PropType<Record<string, any>[]>;
126
+ readonly default: () => never[];
127
+ };
128
+ readonly attachmentProps: {
129
+ readonly type: import("vue").PropType<import("el-plus/es/index").AttachmentProps>;
130
+ readonly default: () => void;
131
+ };
94
132
  }>> & Readonly<{}>, {}, {}, {}, {}, {
95
133
  readonly buttons: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
96
134
  name: string;
@@ -108,6 +146,28 @@ export declare const EpHeader: {
108
146
  readonly allowBack: boolean;
109
147
  readonly defaultButtons: import("./src/header").defaultButtonsProps[];
110
148
  readonly isShowAttachmentButton: boolean;
149
+ readonly fileList: Record<string, any>[];
150
+ readonly attachmentProps: {
151
+ readonly mode?: import("el-plus/es/hooks/use-navigation").PageMode | undefined;
152
+ readonly formatColumns?: Partial<import("element-plus").TableColumnCtx & {
153
+ [key: string]: any;
154
+ required: boolean | (() => boolean);
155
+ cellRequired: (scope: import("el-plus/es/index").TableScope) => boolean;
156
+ headerRender: import("element-plus").TableColumnCtx["renderHeader"];
157
+ disabled: boolean | ((scope: import("el-plus/es/index").TableScope) => boolean);
158
+ type: string;
159
+ props: Record<string, any>;
160
+ filter: boolean;
161
+ editable: boolean | ((formData: Record<string, any>) => void);
162
+ } & {} & {
163
+ show?: (boolean | ((T: unknown) => boolean)) | undefined;
164
+ hide?: (boolean | ((T: unknown) => boolean)) | undefined;
165
+ }>[] | undefined;
166
+ readonly openType?: "dialog" | "normal" | undefined;
167
+ readonly isType?: boolean | undefined;
168
+ readonly isNote?: boolean | undefined;
169
+ readonly isShowOpenDialogButton?: boolean | undefined;
170
+ };
111
171
  }>;
112
172
  __isFragment?: never;
113
173
  __isTeleport?: never;
@@ -134,6 +194,14 @@ export declare const EpHeader: {
134
194
  readonly type: BooleanConstructor;
135
195
  readonly default: false;
136
196
  };
197
+ readonly fileList: {
198
+ readonly type: import("vue").PropType<Record<string, any>[]>;
199
+ readonly default: () => never[];
200
+ };
201
+ readonly attachmentProps: {
202
+ readonly type: import("vue").PropType<import("el-plus/es/index").AttachmentProps>;
203
+ readonly default: () => void;
204
+ };
137
205
  }>> & Readonly<{}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
138
206
  readonly buttons: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
139
207
  name: string;
@@ -151,6 +219,28 @@ export declare const EpHeader: {
151
219
  readonly allowBack: boolean;
152
220
  readonly defaultButtons: import("./src/header").defaultButtonsProps[];
153
221
  readonly isShowAttachmentButton: boolean;
222
+ readonly fileList: Record<string, any>[];
223
+ readonly attachmentProps: {
224
+ readonly mode?: import("el-plus/es/hooks/use-navigation").PageMode | undefined;
225
+ readonly formatColumns?: Partial<import("element-plus").TableColumnCtx & {
226
+ [key: string]: any;
227
+ required: boolean | (() => boolean);
228
+ cellRequired: (scope: import("el-plus/es/index").TableScope) => boolean;
229
+ headerRender: import("element-plus").TableColumnCtx["renderHeader"];
230
+ disabled: boolean | ((scope: import("el-plus/es/index").TableScope) => boolean);
231
+ type: string;
232
+ props: Record<string, any>;
233
+ filter: boolean;
234
+ editable: boolean | ((formData: Record<string, any>) => void);
235
+ } & {} & {
236
+ show?: (boolean | ((T: unknown) => boolean)) | undefined;
237
+ hide?: (boolean | ((T: unknown) => boolean)) | undefined;
238
+ }>[] | undefined;
239
+ readonly openType?: "dialog" | "normal" | undefined;
240
+ readonly isType?: boolean | undefined;
241
+ readonly isNote?: boolean | undefined;
242
+ readonly isShowOpenDialogButton?: boolean | undefined;
243
+ };
154
244
  }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vue").Plugin;
155
245
  export default EpHeader;
156
246
  export * from './src/header';
@@ -1,4 +1,5 @@
1
1
  import type { ExtractPropTypes, PropType } from 'vue';
2
+ import type { AttachmentProps } from 'el-plus/es/components/attachment';
2
3
  import type { PageMode } from 'el-plus/es/hooks/use-navigation';
3
4
  export type defaultButtonsProps = 'modify' | 'save' | 'cancel' | 'refresh' | 'auditLog';
4
5
  export declare const headerProps: {
@@ -23,6 +24,14 @@ export declare const headerProps: {
23
24
  readonly type: BooleanConstructor;
24
25
  readonly default: false;
25
26
  };
27
+ readonly fileList: {
28
+ readonly type: PropType<Record<string, any>[]>;
29
+ readonly default: () => never[];
30
+ };
31
+ readonly attachmentProps: {
32
+ readonly type: PropType<AttachmentProps>;
33
+ readonly default: () => void;
34
+ };
26
35
  };
27
36
  export type HeaderProps = ExtractPropTypes<typeof headerProps>;
28
37
  export declare const headerEmits: {};
@@ -25,6 +25,16 @@ const headerProps = {
25
25
  isShowAttachmentButton: {
26
26
  type: Boolean,
27
27
  default: false
28
+ },
29
+ // 附件列表
30
+ fileList: {
31
+ type: Array,
32
+ default: () => []
33
+ },
34
+ attachmentProps: {
35
+ type: Object,
36
+ default: () => {
37
+ }
28
38
  }
29
39
  };
30
40
  const headerEmits = {};
@@ -1 +1 @@
1
- {"version":3,"file":"header.mjs","sources":["../../../../../../packages/components/header/src/header.ts"],"sourcesContent":["import type { ExtractPropTypes, PropType } from 'vue'\nimport { buttonsProps } from '@el-plus/components/buttons'\nimport type { PageMode } from '@el-plus/hooks/use-navigation'\nexport type defaultButtonsProps =\n | 'modify'\n | 'save'\n | 'cancel'\n | 'refresh'\n | 'auditLog'\n\nexport const headerProps = {\n // 页面模式\n mode: {\n type: String as PropType<PageMode>,\n },\n allowBack: {\n type: Boolean,\n default: true,\n },\n buttons: {\n ...buttonsProps.list,\n },\n name: String, // 权限前缀\n // 要展示的默认按钮\n defaultButtons: {\n type: Array as PropType<defaultButtonsProps[]>,\n default: () => [],\n },\n // 工作流id\n workflowId: String,\n // 是否显示附件按钮\n isShowAttachmentButton: {\n type: Boolean,\n default: false,\n },\n} as const\nexport type HeaderProps = ExtractPropTypes<typeof headerProps>\n\nexport const headerEmits = {}\nexport type HeaderEmits = typeof headerEmits\n"],"names":[],"mappings":";;AAUO,MAAM,WAAA,GAAc;AAAA;AAAA,EAEzB,IAAA,EAAM;AAAA,IACJ,IAAA,EAAM;AAAA,GACR;AAAA,EACA,SAAA,EAAW;AAAA,IACT,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA,EACA,OAAA,EAAS;AAAA,IACP,GAAG,YAAA,CAAa;AAAA,GAClB;AAAA,EACA,IAAA,EAAM,MAAA;AAAA;AAAA;AAAA,EAEN,cAAA,EAAgB;AAAA,IACd,IAAA,EAAM,KAAA;AAAA,IACN,OAAA,EAAS,MAAM;AAAC,GAClB;AAAA;AAAA,EAEA,UAAA,EAAY,MAAA;AAAA;AAAA,EAEZ,sBAAA,EAAwB;AAAA,IACtB,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA;AAEb;AAGO,MAAM,cAAc;;;;"}
1
+ {"version":3,"file":"header.mjs","sources":["../../../../../../packages/components/header/src/header.ts"],"sourcesContent":["import type { ExtractPropTypes, PropType } from 'vue'\nimport { buttonsProps } from '@el-plus/components/buttons'\nimport type { AttachmentProps } from '@el-plus/components/attachment'\nimport type { PageMode } from '@el-plus/hooks/use-navigation'\nexport type defaultButtonsProps =\n | 'modify'\n | 'save'\n | 'cancel'\n | 'refresh'\n | 'auditLog'\n\nexport const headerProps = {\n // 页面模式\n mode: {\n type: String as PropType<PageMode>,\n },\n allowBack: {\n type: Boolean,\n default: true,\n },\n buttons: {\n ...buttonsProps.list,\n },\n name: String, // 权限前缀\n // 要展示的默认按钮\n defaultButtons: {\n type: Array as PropType<defaultButtonsProps[]>,\n default: () => [],\n },\n // 工作流id\n workflowId: String,\n // 是否显示附件按钮\n isShowAttachmentButton: {\n type: Boolean,\n default: false,\n },\n // 附件列表\n fileList: {\n type: Array as PropType<Record<string, any>[]>,\n default: () => [],\n },\n attachmentProps: {\n type: Object as PropType<AttachmentProps>,\n default: () => {},\n },\n} as const\nexport type HeaderProps = ExtractPropTypes<typeof headerProps>\n\nexport const headerEmits = {}\nexport type HeaderEmits = typeof headerEmits\n"],"names":[],"mappings":";;AAWO,MAAM,WAAA,GAAc;AAAA;AAAA,EAEzB,IAAA,EAAM;AAAA,IACJ,IAAA,EAAM;AAAA,GACR;AAAA,EACA,SAAA,EAAW;AAAA,IACT,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA,EACA,OAAA,EAAS;AAAA,IACP,GAAG,YAAA,CAAa;AAAA,GAClB;AAAA,EACA,IAAA,EAAM,MAAA;AAAA;AAAA;AAAA,EAEN,cAAA,EAAgB;AAAA,IACd,IAAA,EAAM,KAAA;AAAA,IACN,OAAA,EAAS,MAAM;AAAC,GAClB;AAAA;AAAA,EAEA,UAAA,EAAY,MAAA;AAAA;AAAA,EAEZ,sBAAA,EAAwB;AAAA,IACtB,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,QAAA,EAAU;AAAA,IACR,IAAA,EAAM,KAAA;AAAA,IACN,OAAA,EAAS,MAAM;AAAC,GAClB;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,IAAA,EAAM,MAAA;AAAA,IACN,SAAS,MAAM;AAAA,IAAC;AAAA;AAEpB;AAGO,MAAM,cAAc;;;;"}