el-plus 0.0.20 → 0.0.22

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 (48) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +15 -10
  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 +16 -11
  9. package/es/components/date-picker-range/index.d.ts +3 -3
  10. package/es/components/date-picker-range/src/date-picker-range.vue.d.ts +1 -1
  11. package/es/components/header/index.d.ts +0 -6
  12. package/es/components/header/src/header.d.ts +0 -1
  13. package/es/components/header/src/header.mjs +1 -2
  14. package/es/components/header/src/header.mjs.map +1 -1
  15. package/es/components/header/src/header.vue.d.ts +0 -3
  16. package/es/components/header/src/use-header.mjs +1 -1
  17. package/es/components/header/src/use-header.mjs.map +1 -1
  18. package/es/components/select/index.d.ts +3 -3
  19. package/es/components/select/src/select.vue.d.ts +1 -1
  20. package/es/components/select/src/use-select.mjs +4 -4
  21. package/es/components/select/src/use-select.mjs.map +1 -1
  22. package/es/components/table/src/use-table.mjs +2 -1
  23. package/es/components/table/src/use-table.mjs.map +1 -1
  24. package/es/hooks/dialog/use-dialog.mjs +8 -3
  25. package/es/hooks/dialog/use-dialog.mjs.map +1 -1
  26. package/es/package.json.mjs +1 -1
  27. package/lib/components/date-picker-range/index.d.ts +3 -3
  28. package/lib/components/date-picker-range/src/date-picker-range.vue.d.ts +1 -1
  29. package/lib/components/header/index.d.ts +0 -6
  30. package/lib/components/header/src/header.d.ts +0 -1
  31. package/lib/components/header/src/header.js +1 -2
  32. package/lib/components/header/src/header.js.map +1 -1
  33. package/lib/components/header/src/header.vue.d.ts +0 -3
  34. package/lib/components/header/src/use-header.js +1 -1
  35. package/lib/components/header/src/use-header.js.map +1 -1
  36. package/lib/components/select/index.d.ts +3 -3
  37. package/lib/components/select/src/select.vue.d.ts +1 -1
  38. package/lib/components/select/src/use-select.js +4 -4
  39. package/lib/components/select/src/use-select.js.map +1 -1
  40. package/lib/components/table/src/use-table.js +1 -0
  41. package/lib/components/table/src/use-table.js.map +1 -1
  42. package/lib/hooks/dialog/use-dialog.js +6 -1
  43. package/lib/hooks/dialog/use-dialog.js.map +1 -1
  44. package/lib/package.json.js +1 -1
  45. package/package.json +1 -1
  46. package/theme-chalk/index.css +1 -1
  47. package/theme-chalk/src/title.scss +15 -8
  48. package/theme-chalk/title.css +1 -1
@@ -1,7 +1,7 @@
1
- /*! ElPlus v0.0.20 */
1
+ /*! ElPlus v0.0.22 */
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
- 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, ElDialog, ElButton, ElTable, ElIcon, selectProps as selectProps$1, selectEmits as selectEmits$1, ElPageHeader, datePickerProps, linkProps as linkProps$1 } from 'element-plus';
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 } from 'element-plus';
5
5
  import { isFunction } from '@vue/shared';
6
6
  import axios from 'axios';
7
7
  import Cookies from 'js-cookie';
@@ -1476,7 +1476,12 @@ const useDialog = (options = {}) => {
1476
1476
  if (render$1) {
1477
1477
  const container = document.createElement("div");
1478
1478
  const newInstance = instance || getCurrentInstance();
1479
- const vnode = h(Dialog);
1479
+ const config = inject(configProviderContextKey);
1480
+ const vnode = h(ElConfigProvider, {
1481
+ locale: config?.locale
1482
+ }, {
1483
+ default: () => h(Dialog)
1484
+ });
1480
1485
  if (newInstance && newInstance.appContext) {
1481
1486
  vnode.appContext = newInstance.appContext;
1482
1487
  }
@@ -2001,6 +2006,7 @@ const useTable$1 = (props) => {
2001
2006
  const search = async (init = false, isPagination = false) => {
2002
2007
  const beforeSearch = attrs["before-search"];
2003
2008
  if (typeof beforeSearch === "function") {
2009
+ await nextTick();
2004
2010
  await beforeSearch?.();
2005
2011
  }
2006
2012
  if (init) {
@@ -2868,13 +2874,13 @@ function useSelect(props, emit) {
2868
2874
  };
2869
2875
  const getSelectItem = (value) => {
2870
2876
  if (Array.isArray(value)) {
2871
- if (!props.options) return [];
2872
- return props.options.filter((item) => {
2877
+ if (!customOptions.value) return [];
2878
+ return customOptions.value.filter((item) => {
2873
2879
  return value.indexOf(item[props.valueKey]) > -1;
2874
2880
  });
2875
2881
  }
2876
- if (!props.options) return {};
2877
- return props.options.find((item) => {
2882
+ if (!customOptions.value) return {};
2883
+ return customOptions.value.find((item) => {
2878
2884
  return item[props.valueKey] === value;
2879
2885
  }) || {};
2880
2886
  };
@@ -3106,8 +3112,7 @@ const EpTitle = withInstall(_sfc_main$3);
3106
3112
  const headerProps = {
3107
3113
  // 页面模式
3108
3114
  mode: {
3109
- type: String,
3110
- default: "add"
3115
+ type: String
3111
3116
  },
3112
3117
  allowBack: {
3113
3118
  type: Boolean,
@@ -3226,7 +3231,7 @@ const useButtons = (props, emit) => {
3226
3231
  const { t } = useLocale();
3227
3232
  const { mode: defaultMode } = useNavigation();
3228
3233
  const mode = computed(() => {
3229
- return props.mode || defaultMode;
3234
+ return props.mode || defaultMode.value;
3230
3235
  });
3231
3236
  let defaultButtons = [
3232
3237
  {
@@ -3520,7 +3525,7 @@ var components = [
3520
3525
  EpLink
3521
3526
  ];
3522
3527
 
3523
- var version = "0.0.20";
3528
+ var version = "0.0.22";
3524
3529
 
3525
3530
  var globalProperties = {
3526
3531
  install(app) {
@@ -276,13 +276,13 @@ export declare const EpDatePickerRange: {
276
276
  fallbackPlacements: import("element-plus").Placement[];
277
277
  popperOptions: Partial<import("element-plus").Options>;
278
278
  showFooter: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
279
+ valueOnClear: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown>;
279
280
  editable: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
280
281
  placeholder: string;
281
282
  readonly: boolean;
282
283
  prefixIcon: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | ((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component))[], unknown, unknown>;
283
284
  tabindex: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
284
285
  validateEvent: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
285
- valueOnClear: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown>;
286
286
  automaticDropdown: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
287
287
  valueFormat: "x";
288
288
  shortcuts: unknown[];
@@ -575,13 +575,13 @@ export declare const EpDatePickerRange: {
575
575
  fallbackPlacements: import("element-plus").Placement[];
576
576
  popperOptions: Partial<import("element-plus").Options>;
577
577
  showFooter: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
578
+ valueOnClear: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown>;
578
579
  editable: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
579
580
  placeholder: string;
580
581
  readonly: boolean;
581
582
  prefixIcon: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | ((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component))[], unknown, unknown>;
582
583
  tabindex: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
583
584
  validateEvent: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
584
- valueOnClear: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown>;
585
585
  automaticDropdown: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
586
586
  valueFormat: "x";
587
587
  shortcuts: unknown[];
@@ -875,13 +875,13 @@ export declare const EpDatePickerRange: {
875
875
  fallbackPlacements: import("element-plus").Placement[];
876
876
  popperOptions: Partial<import("element-plus").Options>;
877
877
  showFooter: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
878
+ valueOnClear: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown>;
878
879
  editable: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
879
880
  placeholder: string;
880
881
  readonly: boolean;
881
882
  prefixIcon: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | ((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component))[], unknown, unknown>;
882
883
  tabindex: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
883
884
  validateEvent: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
884
- valueOnClear: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown>;
885
885
  automaticDropdown: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
886
886
  valueFormat: "x";
887
887
  shortcuts: unknown[];
@@ -534,13 +534,13 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
534
534
  fallbackPlacements: import("element-plus").Placement[];
535
535
  popperOptions: Partial<import("element-plus").Options>;
536
536
  showFooter: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
537
+ valueOnClear: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown>;
537
538
  editable: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
538
539
  placeholder: string;
539
540
  readonly: boolean;
540
541
  prefixIcon: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | ((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component))[], unknown, unknown>;
541
542
  tabindex: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
542
543
  validateEvent: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
543
- valueOnClear: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown>;
544
544
  automaticDropdown: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
545
545
  valueFormat: "x";
546
546
  shortcuts: unknown[];
@@ -2,7 +2,6 @@ export declare const EpHeader: {
2
2
  new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
3
3
  readonly mode: {
4
4
  readonly type: import("vue").PropType<import("packages/hooks/use-navigation.js").PageMode>;
5
- readonly default: "add";
6
5
  };
7
6
  readonly allowBack: {
8
7
  readonly type: BooleanConstructor;
@@ -31,7 +30,6 @@ export declare const EpHeader: {
31
30
  };
32
31
  readonly workflowId: StringConstructor;
33
32
  }>> & Readonly<{}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").PublicProps, {
34
- readonly mode: import("packages/hooks/use-navigation.js").PageMode;
35
33
  readonly buttons: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
36
34
  name: string;
37
35
  prop: string;
@@ -57,7 +55,6 @@ export declare const EpHeader: {
57
55
  }, Readonly<import("vue").ExtractPropTypes<{
58
56
  readonly mode: {
59
57
  readonly type: import("vue").PropType<import("packages/hooks/use-navigation.js").PageMode>;
60
- readonly default: "add";
61
58
  };
62
59
  readonly allowBack: {
63
60
  readonly type: BooleanConstructor;
@@ -86,7 +83,6 @@ export declare const EpHeader: {
86
83
  };
87
84
  readonly workflowId: StringConstructor;
88
85
  }>> & Readonly<{}>, {}, {}, {}, {}, {
89
- readonly mode: import("packages/hooks/use-navigation.js").PageMode;
90
86
  readonly buttons: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
91
87
  name: string;
92
88
  prop: string;
@@ -109,7 +105,6 @@ export declare const EpHeader: {
109
105
  } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
110
106
  readonly mode: {
111
107
  readonly type: import("vue").PropType<import("packages/hooks/use-navigation.js").PageMode>;
112
- readonly default: "add";
113
108
  };
114
109
  readonly allowBack: {
115
110
  readonly type: BooleanConstructor;
@@ -126,7 +121,6 @@ export declare const EpHeader: {
126
121
  };
127
122
  readonly workflowId: StringConstructor;
128
123
  }>> & Readonly<{}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
129
- readonly mode: import("packages/hooks/use-navigation.js").PageMode;
130
124
  readonly buttons: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
131
125
  name: string;
132
126
  prop: string;
@@ -4,7 +4,6 @@ export type defaultButtonsProps = 'modify' | 'save' | 'cancel' | 'refresh' | 'au
4
4
  export declare const headerProps: {
5
5
  readonly mode: {
6
6
  readonly type: PropType<PageMode>;
7
- readonly default: "add";
8
7
  };
9
8
  readonly allowBack: {
10
9
  readonly type: BooleanConstructor;
@@ -3,8 +3,7 @@ import { buttonsProps } from '../../buttons/src/buttons.mjs';
3
3
  const headerProps = {
4
4
  // 页面模式
5
5
  mode: {
6
- type: String,
7
- default: "add"
6
+ type: String
8
7
  },
9
8
  allowBack: {
10
9
  type: Boolean,
@@ -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 default: 'add',\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} 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,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;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;AACd;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 { 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} 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;AACd;AAGO,MAAM,cAAc;;;;"}
@@ -1,7 +1,6 @@
1
1
  declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
2
  readonly mode: {
3
3
  readonly type: import("vue").PropType<import("packages/hooks").PageMode>;
4
- readonly default: "add";
5
4
  };
6
5
  readonly allowBack: {
7
6
  readonly type: BooleanConstructor;
@@ -20,7 +19,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
20
19
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
21
20
  readonly mode: {
22
21
  readonly type: import("vue").PropType<import("packages/hooks").PageMode>;
23
- readonly default: "add";
24
22
  };
25
23
  readonly allowBack: {
26
24
  readonly type: BooleanConstructor;
@@ -37,7 +35,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
37
35
  };
38
36
  readonly workflowId: StringConstructor;
39
37
  }>> & Readonly<{}>, {
40
- readonly mode: import("packages/hooks").PageMode;
41
38
  readonly buttons: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
42
39
  name: string;
43
40
  prop: string;
@@ -28,7 +28,7 @@ const useButtons = (props, emit) => {
28
28
  const { t } = useLocale();
29
29
  const { mode: defaultMode } = useNavigation();
30
30
  const mode = computed(() => {
31
- return props.mode || defaultMode;
31
+ return props.mode || defaultMode.value;
32
32
  });
33
33
  let defaultButtons = [
34
34
  {
@@ -1 +1 @@
1
- {"version":3,"file":"use-header.mjs","sources":["../../../../../../packages/components/header/src/use-header.ts"],"sourcesContent":["import { computed } from 'vue'\nimport { useRouter, useRoute } from 'vue-router'\nimport type { HeaderProps } from '@el-plus/components/header'\nimport type { ButtonsProps } from '@el-plus/components/buttons'\nimport { mergeListByKey, gotoTaskTrace } from '@el-plus/utils'\nimport { useLocale } from '@el-plus/hooks/use-locale'\nimport { useNavigation } from '@el-plus/hooks/use-navigation'\nexport const useHeader = (props, emit) => {\n const router = useRouter()\n const isShowBack = computed(() => {\n if (!props.allowBack) {\n return false\n }\n if (window.parent.openMenuSelect) {\n return false\n }\n return true\n })\n const goBack = () => {\n router?.back()\n }\n return {\n isShowBack,\n goBack,\n }\n}\nexport const useButtons = (props: HeaderProps, emit) => {\n const { t } = useLocale()\n const { mode: defaultMode } = useNavigation()\n const mode = computed(() => {\n return props.mode || defaultMode\n })\n let defaultButtons: ButtonsProps['list'] = [\n {\n name: t('ep.header.edit'),\n prop: 'modify',\n permission: props.name ? `${props.name}:UPDATE` : '',\n disabled: () => {\n return mode.value !== 'browse'\n },\n },\n {\n name: t('ep.header.save'),\n prop: 'save',\n permission: props.name ? `${props.name}:SAVE` : '',\n disabled: () => {\n return !(mode.value === 'edit' || mode.value === 'add')\n },\n },\n {\n name: t('ep.header.cancel'),\n prop: 'cancel',\n disabled: () => {\n return mode.value !== 'edit'\n },\n },\n {\n name: t('ep.header.refresh'),\n prop: 'refresh',\n permission: props.name ? `${props.name}:REFRESH` : '',\n disabled: () => {\n return mode.value !== 'browse'\n },\n },\n {\n name: t('ep.header.approvalLog'),\n prop: 'approvalLog',\n permission: props.name ? `${props.name}:APPROVALLOG` : '',\n show: () => {\n return !!props.workflowId\n },\n onClick: () => {\n gotoTaskTrace(props.workflowId!)\n },\n },\n ]\n // 过滤要显示的\n if (props.defaultButtons.length) {\n defaultButtons = defaultButtons.filter((item) => {\n return props.defaultButtons.some((item1) => item1 === item.prop)\n })\n }\n const buttons = mergeListByKey(defaultButtons, props.buttons)\n\n return {\n buttons,\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-header.mjs","sources":["../../../../../../packages/components/header/src/use-header.ts"],"sourcesContent":["import { computed } from 'vue'\nimport { useRouter, useRoute } from 'vue-router'\nimport type { HeaderProps } from '@el-plus/components/header'\nimport type { ButtonsProps } from '@el-plus/components/buttons'\nimport { mergeListByKey, gotoTaskTrace } from '@el-plus/utils'\nimport { useLocale } from '@el-plus/hooks/use-locale'\nimport { useNavigation } from '@el-plus/hooks/use-navigation'\nexport const useHeader = (props, emit) => {\n const router = useRouter()\n const isShowBack = computed(() => {\n if (!props.allowBack) {\n return false\n }\n if (window.parent.openMenuSelect) {\n return false\n }\n return true\n })\n const goBack = () => {\n router?.back()\n }\n return {\n isShowBack,\n goBack,\n }\n}\nexport const useButtons = (props: HeaderProps, emit) => {\n const { t } = useLocale()\n const { mode: defaultMode } = useNavigation()\n const mode = computed(() => {\n return props.mode || defaultMode.value\n })\n let defaultButtons: ButtonsProps['list'] = [\n {\n name: t('ep.header.edit'),\n prop: 'modify',\n permission: props.name ? `${props.name}:UPDATE` : '',\n disabled: () => {\n return mode.value !== 'browse'\n },\n },\n {\n name: t('ep.header.save'),\n prop: 'save',\n permission: props.name ? `${props.name}:SAVE` : '',\n disabled: () => {\n return !(mode.value === 'edit' || mode.value === 'add')\n },\n },\n {\n name: t('ep.header.cancel'),\n prop: 'cancel',\n disabled: () => {\n return mode.value !== 'edit'\n },\n },\n {\n name: t('ep.header.refresh'),\n prop: 'refresh',\n permission: props.name ? `${props.name}:REFRESH` : '',\n disabled: () => {\n return mode.value !== 'browse'\n },\n },\n {\n name: t('ep.header.approvalLog'),\n prop: 'approvalLog',\n permission: props.name ? `${props.name}:APPROVALLOG` : '',\n show: () => {\n return !!props.workflowId\n },\n onClick: () => {\n gotoTaskTrace(props.workflowId!)\n },\n },\n ]\n // 过滤要显示的\n if (props.defaultButtons.length) {\n defaultButtons = defaultButtons.filter((item) => {\n return props.defaultButtons.some((item1) => item1 === item.prop)\n })\n }\n const buttons = mergeListByKey(defaultButtons, props.buttons)\n\n return {\n buttons,\n }\n}\n"],"names":[],"mappings":"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"}
@@ -193,12 +193,12 @@ export declare const EpSelect: {
193
193
  popperOptions: Partial<import("element-plus").Options>;
194
194
  multiple: boolean;
195
195
  lazy: boolean;
196
+ valueOnClear: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown>;
196
197
  filterable: boolean;
197
198
  disabledOption: (item: import("./src/select").SelectOption) => boolean;
198
199
  autocomplete: string;
199
200
  tabindex: import("element-plus/es/utils/index.js").EpPropMergeType<(StringConstructor | NumberConstructor)[], unknown, unknown>;
200
201
  validateEvent: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
201
- valueOnClear: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown>;
202
202
  automaticDropdown: boolean;
203
203
  allowCreate: boolean;
204
204
  remote: boolean;
@@ -403,12 +403,12 @@ export declare const EpSelect: {
403
403
  popperOptions: Partial<import("element-plus").Options>;
404
404
  multiple: boolean;
405
405
  lazy: boolean;
406
+ valueOnClear: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown>;
406
407
  filterable: boolean;
407
408
  disabledOption: (item: import("./src/select").SelectOption) => boolean;
408
409
  autocomplete: string;
409
410
  tabindex: import("element-plus/es/utils/index.js").EpPropMergeType<(StringConstructor | NumberConstructor)[], unknown, unknown>;
410
411
  validateEvent: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
411
- valueOnClear: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown>;
412
412
  automaticDropdown: boolean;
413
413
  allowCreate: boolean;
414
414
  remote: boolean;
@@ -623,12 +623,12 @@ export declare const EpSelect: {
623
623
  popperOptions: Partial<import("element-plus").Options>;
624
624
  multiple: boolean;
625
625
  lazy: boolean;
626
+ valueOnClear: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown>;
626
627
  filterable: boolean;
627
628
  disabledOption: (item: import("./src/select").SelectOption) => boolean;
628
629
  autocomplete: string;
629
630
  tabindex: import("element-plus/es/utils/index.js").EpPropMergeType<(StringConstructor | NumberConstructor)[], unknown, unknown>;
630
631
  validateEvent: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
631
- valueOnClear: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown>;
632
632
  automaticDropdown: boolean;
633
633
  allowCreate: boolean;
634
634
  remote: boolean;
@@ -351,12 +351,12 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
351
351
  popperOptions: Partial<import("element-plus").Options>;
352
352
  multiple: boolean;
353
353
  lazy: boolean;
354
+ valueOnClear: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown>;
354
355
  filterable: boolean;
355
356
  disabledOption: (item: import("./select").SelectOption) => boolean;
356
357
  autocomplete: string;
357
358
  tabindex: import("element-plus/es/utils").EpPropMergeType<(StringConstructor | NumberConstructor)[], unknown, unknown>;
358
359
  validateEvent: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
359
- valueOnClear: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown>;
360
360
  automaticDropdown: boolean;
361
361
  allowCreate: boolean;
362
362
  remote: boolean;
@@ -48,13 +48,13 @@ function useSelect(props, emit) {
48
48
  };
49
49
  const getSelectItem = (value) => {
50
50
  if (Array.isArray(value)) {
51
- if (!props.options) return [];
52
- return props.options.filter((item) => {
51
+ if (!customOptions.value) return [];
52
+ return customOptions.value.filter((item) => {
53
53
  return value.indexOf(item[props.valueKey]) > -1;
54
54
  });
55
55
  }
56
- if (!props.options) return {};
57
- return props.options.find((item) => {
56
+ if (!customOptions.value) return {};
57
+ return customOptions.value.find((item) => {
58
58
  return item[props.valueKey] === value;
59
59
  }) || {};
60
60
  };
@@ -1 +1 @@
1
- {"version":3,"file":"use-select.mjs","sources":["../../../../../../packages/components/select/src/use-select.ts"],"sourcesContent":["import { ref } from 'vue'\nimport type { SetupContext } from 'vue'\nimport { useRequest } from '@el-plus/hooks/use-request'\nimport type { SelectProps, SelectOption, SelectEmits } from './select'\nexport function useSelect(\n props: SelectProps,\n emit: SetupContext<SelectEmits>['emit'],\n) {\n let hasLoaded = false\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: props.remote,\n hooks: {\n success(data) {\n type OptionArr = SelectOption[]\n interface OptionObj {\n list?: OptionArr\n data?: OptionArr\n }\n if (Array.isArray(data)) {\n customOptions.value = data as OptionArr\n } else if (data && typeof data === 'object') {\n const rawData = data as OptionObj\n customOptions.value = rawData?.list || rawData?.data || []\n } else {\n customOptions.value = []\n }\n hasLoaded = true\n },\n fail(error) {\n console.error(error)\n },\n },\n })\n // 下拉列表\n const customOptions = ref<SelectOption[]>([]) // 下拉列表\n // 加载下拉列表\n const loadOptions = (\n value: SelectProps['modelValue'],\n desc: string | undefined,\n ) => {\n if ((value || value === 0) && desc) {\n customOptions.value = [\n {\n [props.labelKey]: desc,\n [props.valueKey]: value,\n },\n ]\n }\n if (props.api) {\n if (!props.lazy && !props.remote) {\n requestFn!()\n }\n } else if (props.options?.length) {\n customOptions.value = props.options\n }\n }\n // 获取选中项\n const getSelectItem = (value: SelectProps['modelValue']) => {\n if (Array.isArray(value)) {\n if (!props.options) return []\n return props.options.filter((item: SelectOption) => {\n return value.indexOf(item[props.valueKey]) > -1\n })\n }\n if (!props.options) return {}\n return (\n props.options.find((item: SelectOption) => {\n return item[props.valueKey] === value\n }) || {}\n )\n }\n const expandAttrs = {\n loading: props.loading || loading?.value,\n remoteMethod: (query: string) => {\n if (!query) return\n requestFn!({\n $searchValue: query,\n })\n },\n onChange(value: SelectProps['modelValue']) {\n emit('change', value, getSelectItem(value))\n },\n onVisibleChange(visible: boolean) {\n if (props.api && props.lazy && visible && !hasLoaded && !props.remote) {\n requestFn!()\n }\n emit('visible-change', visible)\n },\n }\n return {\n customOptions,\n loadOptions,\n expandAttrs,\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-select.mjs","sources":["../../../../../../packages/components/select/src/use-select.ts"],"sourcesContent":["import { ref } from 'vue'\nimport type { SetupContext } from 'vue'\nimport { useRequest } from '@el-plus/hooks/use-request'\nimport type { SelectProps, SelectOption, SelectEmits } from './select'\nexport function useSelect(\n props: SelectProps,\n emit: SetupContext<SelectEmits>['emit'],\n) {\n let hasLoaded = false\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: props.remote,\n hooks: {\n success(data) {\n type OptionArr = SelectOption[]\n interface OptionObj {\n list?: OptionArr\n data?: OptionArr\n }\n if (Array.isArray(data)) {\n customOptions.value = data as OptionArr\n } else if (data && typeof data === 'object') {\n const rawData = data as OptionObj\n customOptions.value = rawData?.list || rawData?.data || []\n } else {\n customOptions.value = []\n }\n hasLoaded = true\n },\n fail(error) {\n console.error(error)\n },\n },\n })\n // 下拉列表\n const customOptions = ref<SelectOption[]>([]) // 下拉列表\n // 加载下拉列表\n const loadOptions = (\n value: SelectProps['modelValue'],\n desc: string | undefined,\n ) => {\n if ((value || value === 0) && desc) {\n customOptions.value = [\n {\n [props.labelKey]: desc,\n [props.valueKey]: value,\n },\n ]\n }\n if (props.api) {\n if (!props.lazy && !props.remote) {\n requestFn!()\n }\n } else if (props.options?.length) {\n customOptions.value = props.options\n }\n }\n // 获取选中项\n const getSelectItem = (value: SelectProps['modelValue']) => {\n if (Array.isArray(value)) {\n if (!customOptions.value) return []\n return customOptions.value.filter((item: SelectOption) => {\n return value.indexOf(item[props.valueKey]) > -1\n })\n }\n if (!customOptions.value) return {}\n return (\n customOptions.value.find((item: SelectOption) => {\n return item[props.valueKey] === value\n }) || {}\n )\n }\n const expandAttrs = {\n loading: props.loading || loading?.value,\n remoteMethod: (query: string) => {\n if (!query) return\n requestFn!({\n $searchValue: query,\n })\n },\n onChange(value: SelectProps['modelValue']) {\n emit('change', value, getSelectItem(value))\n },\n onVisibleChange(visible: boolean) {\n if (props.api && props.lazy && visible && !hasLoaded && !props.remote) {\n requestFn!()\n }\n emit('visible-change', visible)\n },\n }\n return {\n customOptions,\n loadOptions,\n expandAttrs,\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { useTemplateRef, ref, useAttrs, getCurrentInstance, computed, reactive, createVNode, createTextVNode, toRaw } from 'vue';
1
+ import { useTemplateRef, ref, useAttrs, getCurrentInstance, computed, reactive, nextTick, createVNode, createTextVNode, toRaw } from 'vue';
2
2
  import { useRequest } from '../../../hooks/use-request.mjs';
3
3
  import { prepareProps } from '../../../utils/props.mjs';
4
4
  import { cloneDeep } from 'lodash-unified';
@@ -46,6 +46,7 @@ const useTable = (props) => {
46
46
  const search = async (init = false, isPagination = false) => {
47
47
  const beforeSearch = attrs["before-search"];
48
48
  if (typeof beforeSearch === "function") {
49
+ await nextTick();
49
50
  await beforeSearch?.();
50
51
  }
51
52
  if (init) {
@@ -1 +1 @@
1
- {"version":3,"file":"use-table.mjs","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} 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 {\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 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 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 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 let newColumn = { ...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 }\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 columnProps,\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 }\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","pageNo","pageSize","filter","item","index","pageNum","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","show","hide","useTableFormItem","formItemProps","rawItem","cloneDeep","cellRequired","disabled","options","disabledOption","args","btnItem","name","content","key","startsWith","fn","event","Event","shift","isShowLabel","hideRequiredAsterisk","$index","tableProp"],"mappings":"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"}
1
+ {"version":3,"file":"use-table.mjs","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} 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 {\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 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 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 let newColumn = { ...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 }\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 columnProps,\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 }\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","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","show","hide","useTableFormItem","formItemProps","rawItem","cloneDeep","cellRequired","disabled","options","disabledOption","args","btnItem","name","content","key","startsWith","fn","event","Event","shift","isShowLabel","hideRequiredAsterisk","$index","tableProp"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { getCurrentInstance, h, render, createVNode, mergeProps, isVNode } from 'vue';
1
+ import { getCurrentInstance, inject, h, render, createVNode, mergeProps, isVNode } from 'vue';
2
2
  import { useTemplatePromise } from '../use-template-promise.mjs';
3
- import { ElDialog, ElButton } from 'element-plus';
3
+ import { configProviderContextKey, ElConfigProvider, ElDialog, ElButton } from 'element-plus';
4
4
  import { createNameSpace } from '../../utils/bem.mjs';
5
5
  import { prepareProps } from '../../utils/props.mjs';
6
6
  import { useLocale } from '../use-locale.mjs';
@@ -92,7 +92,12 @@ const useDialog = (options = {}) => {
92
92
  if (render$1) {
93
93
  const container = document.createElement("div");
94
94
  const newInstance = instance || getCurrentInstance();
95
- const vnode = h(Dialog);
95
+ const config = inject(configProviderContextKey);
96
+ const vnode = h(ElConfigProvider, {
97
+ locale: config?.locale
98
+ }, {
99
+ default: () => h(Dialog)
100
+ });
96
101
  if (newInstance && newInstance.appContext) {
97
102
  vnode.appContext = newInstance.appContext;
98
103
  }