el-plus 0.0.21 → 0.0.23

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 (68) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +27 -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 +28 -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/form/index.d.ts +3 -3
  12. package/es/components/form/src/form.d.ts +1 -1
  13. package/es/components/form/src/form.mjs +1 -1
  14. package/es/components/form/src/form.mjs.map +1 -1
  15. package/es/components/form/src/form.vue.d.ts +2 -2
  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/search-list-page/index.d.ts +6 -6
  19. package/es/components/search-list-page/src/search-list-page.vue.d.ts +2 -2
  20. package/es/components/search-list-page/src/use-search-list-page.d.ts +2 -2
  21. package/es/components/select/index.d.ts +3 -3
  22. package/es/components/select/src/select.vue.d.ts +1 -1
  23. package/es/components/table/src/use-table.mjs +9 -1
  24. package/es/components/table/src/use-table.mjs.map +1 -1
  25. package/es/components/title/index.d.ts +12 -3
  26. package/es/components/title/src/title.d.ts +4 -1
  27. package/es/components/title/src/title.mjs +4 -1
  28. package/es/components/title/src/title.mjs.map +1 -1
  29. package/es/components/title/src/title.vue.d.ts +8 -2
  30. package/es/components/title/src/title.vue2.mjs +4 -3
  31. package/es/components/title/src/title.vue2.mjs.map +1 -1
  32. package/es/hooks/dialog/use-choose-dialog.mjs +3 -3
  33. package/es/hooks/dialog/use-choose-dialog.mjs.map +1 -1
  34. package/es/hooks/dialog/use-dialog.mjs +8 -3
  35. package/es/hooks/dialog/use-dialog.mjs.map +1 -1
  36. package/es/package.json.mjs +1 -1
  37. package/lib/components/date-picker-range/index.d.ts +3 -3
  38. package/lib/components/date-picker-range/src/date-picker-range.vue.d.ts +1 -1
  39. package/lib/components/form/index.d.ts +3 -3
  40. package/lib/components/form/src/form.d.ts +1 -1
  41. package/lib/components/form/src/form.js +1 -1
  42. package/lib/components/form/src/form.js.map +1 -1
  43. package/lib/components/form/src/form.vue.d.ts +2 -2
  44. package/lib/components/header/src/use-header.js +1 -1
  45. package/lib/components/header/src/use-header.js.map +1 -1
  46. package/lib/components/search-list-page/index.d.ts +6 -6
  47. package/lib/components/search-list-page/src/search-list-page.vue.d.ts +2 -2
  48. package/lib/components/search-list-page/src/use-search-list-page.d.ts +2 -2
  49. package/lib/components/select/index.d.ts +3 -3
  50. package/lib/components/select/src/select.vue.d.ts +1 -1
  51. package/lib/components/table/src/use-table.js +8 -0
  52. package/lib/components/table/src/use-table.js.map +1 -1
  53. package/lib/components/title/index.d.ts +12 -3
  54. package/lib/components/title/src/title.d.ts +4 -1
  55. package/lib/components/title/src/title.js +4 -1
  56. package/lib/components/title/src/title.js.map +1 -1
  57. package/lib/components/title/src/title.vue.d.ts +8 -2
  58. package/lib/components/title/src/title.vue2.js +3 -2
  59. package/lib/components/title/src/title.vue2.js.map +1 -1
  60. package/lib/hooks/dialog/use-choose-dialog.js +2 -2
  61. package/lib/hooks/dialog/use-choose-dialog.js.map +1 -1
  62. package/lib/hooks/dialog/use-dialog.js +6 -1
  63. package/lib/hooks/dialog/use-dialog.js.map +1 -1
  64. package/lib/package.json.js +1 -1
  65. package/package.json +1 -1
  66. package/theme-chalk/index.css +1 -1
  67. package/theme-chalk/src/title.scss +15 -8
  68. package/theme-chalk/title.css +1 -1
@@ -1,7 +1,7 @@
1
- /*! ElPlus v0.0.21 */
1
+ /*! ElPlus v0.0.23 */
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';
@@ -807,7 +807,7 @@ const formProps = {
807
807
  // 标签的长度
808
808
  labelWidth: {
809
809
  ...formProps$1.labelWidth,
810
- default: 120
810
+ default: 100
811
811
  },
812
812
  scrollIntoViewOptions: {
813
813
  ...formProps$1.scrollIntoViewOptions,
@@ -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) {
@@ -2027,6 +2033,13 @@ const useTable$1 = (props) => {
2027
2033
  }
2028
2034
  }
2029
2035
  };
2036
+ if (!props.api) {
2037
+ watch(() => props.data, (newValue) => {
2038
+ customData.value = newValue;
2039
+ }, {
2040
+ deep: true
2041
+ });
2042
+ }
2030
2043
  const {
2031
2044
  pagination,
2032
2045
  paginationProps
@@ -2992,7 +3005,10 @@ const titleProps = {
2992
3005
  // 标题名称
2993
3006
  title: String,
2994
3007
  // 是否显示展开折叠
2995
- showDownUp: Boolean
3008
+ showDownUp: {
3009
+ type: Boolean,
3010
+ default: false
3011
+ }
2996
3012
  };
2997
3013
  const titleEmits = {
2998
3014
  toggle: (expanded) => true
@@ -3068,7 +3084,8 @@ var _sfc_main$3 = /* @__PURE__ */ defineComponent({
3068
3084
  renderSlot(_ctx.$slots, "title", { title: _ctx.title }, () => [
3069
3085
  createTextVNode(toDisplayString(_ctx.title), 1)
3070
3086
  ]),
3071
- createElementVNode("div", {
3087
+ _ctx.showDownUp ? (openBlock(), createElementBlock("div", {
3088
+ key: 0,
3072
3089
  class: normalizeClass(unref(bem).e("toggle")),
3073
3090
  onClick: unref(toggleState)
3074
3091
  }, [
@@ -3079,7 +3096,7 @@ var _sfc_main$3 = /* @__PURE__ */ defineComponent({
3079
3096
  ]),
3080
3097
  _: 1
3081
3098
  })
3082
- ], 10, ["onClick"]),
3099
+ ], 10, ["onClick"])) : createCommentVNode("", true),
3083
3100
  renderSlot(_ctx.$slots, "title-append")
3084
3101
  ], 2),
3085
3102
  createElementVNode("div", {
@@ -3225,7 +3242,7 @@ const useButtons = (props, emit) => {
3225
3242
  const { t } = useLocale();
3226
3243
  const { mode: defaultMode } = useNavigation();
3227
3244
  const mode = computed(() => {
3228
- return props.mode || defaultMode;
3245
+ return props.mode || defaultMode.value;
3229
3246
  });
3230
3247
  let defaultButtons = [
3231
3248
  {
@@ -3519,7 +3536,7 @@ var components = [
3519
3536
  EpLink
3520
3537
  ];
3521
3538
 
3522
- var version = "0.0.21";
3539
+ var version = "0.0.23";
3523
3540
 
3524
3541
  var globalProperties = {
3525
3542
  install(app) {
@@ -3560,7 +3577,7 @@ const useChooseDialog = (options = {}) => {
3560
3577
  scopedSlots,
3561
3578
  title,
3562
3579
  onConfirm: (resolve) => {
3563
- resolve(selections);
3580
+ resolve(toRaw(selections));
3564
3581
  },
3565
3582
  render: ({
3566
3583
  resolve
@@ -3582,7 +3599,7 @@ const useChooseDialog = (options = {}) => {
3582
3599
  },
3583
3600
  onSingleSelectionChange: (newSel) => {
3584
3601
  selections = newSel;
3585
- resolve(selections);
3602
+ resolve(toRaw(selections));
3586
3603
  }
3587
3604
  }
3588
3605
  }, null);
@@ -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[];
@@ -10,7 +10,7 @@ export declare const EpForm: {
10
10
  readonly __epPropKey: true;
11
11
  };
12
12
  labelWidth: {
13
- readonly default: 120;
13
+ readonly default: 100;
14
14
  readonly type: import("vue").PropType<import("element-plus/es/utils/index.js").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
15
15
  readonly required: false;
16
16
  readonly validator: ((val: unknown) => boolean) | undefined;
@@ -107,7 +107,7 @@ export declare const EpForm: {
107
107
  readonly __epPropKey: true;
108
108
  };
109
109
  labelWidth: {
110
- readonly default: 120;
110
+ readonly default: 100;
111
111
  readonly type: import("vue").PropType<import("element-plus/es/utils/index.js").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
112
112
  readonly required: false;
113
113
  readonly validator: ((val: unknown) => boolean) | undefined;
@@ -197,7 +197,7 @@ export declare const EpForm: {
197
197
  readonly __epPropKey: true;
198
198
  };
199
199
  labelWidth: {
200
- readonly default: 120;
200
+ readonly default: 100;
201
201
  readonly type: import("vue").PropType<import("element-plus/es/utils/index.js").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
202
202
  readonly required: false;
203
203
  readonly validator: ((val: unknown) => boolean) | undefined;
@@ -9,7 +9,7 @@ export declare const formProps: {
9
9
  readonly __epPropKey: true;
10
10
  };
11
11
  readonly labelWidth: {
12
- readonly default: 120;
12
+ readonly default: 100;
13
13
  readonly type: PropType<import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
14
14
  readonly required: false;
15
15
  readonly validator: ((val: unknown) => boolean) | undefined;
@@ -29,7 +29,7 @@ const formProps = {
29
29
  // 标签的长度
30
30
  labelWidth: {
31
31
  ...formProps$1.labelWidth,
32
- default: 120
32
+ default: 100
33
33
  },
34
34
  scrollIntoViewOptions: {
35
35
  ...formProps$1.scrollIntoViewOptions,
@@ -1 +1 @@
1
- {"version":3,"file":"form.mjs","sources":["../../../../../../packages/components/form/src/form.ts"],"sourcesContent":["import type { ExtractPropTypes, PropType, ExtractPublicPropTypes } from 'vue'\nimport {\n formProps as elFormProps,\n formEmits as elFormEmits,\n} from 'element-plus'\nimport type { FormItemProps } from './form-item'\nconst expandFormProps = {\n // 表单列表\n formItemList: {\n type: Array as PropType<FormItemProps[]>,\n default: () => [] as FormItemProps[],\n },\n // 是否显示折叠\n isShowFold: Boolean,\n\n // 最大显示的表单数\n showFieldCount: {\n type: Number,\n default: 8,\n },\n // 每行的列数\n col: {\n type: Number,\n default: 4,\n },\n}\nexport const formProps = {\n ...elFormProps,\n ...expandFormProps,\n size: {\n ...elFormProps.size,\n default: 'small',\n },\n // 标签的长度\n labelWidth: {\n ...elFormProps.labelWidth,\n default: 120,\n },\n scrollIntoViewOptions: {\n ...elFormProps.scrollIntoViewOptions,\n default: () => {\n return { inline: 'center' }\n },\n },\n} as const\nexport type FormProps = ExtractPublicPropTypes<typeof formProps>\nexport const expandFormPropsKeys = Object.keys(expandFormProps)\n/* eslint-disable @typescript-eslint/no-unused-vars */\nexport const formEmits = {\n ...elFormEmits,\n toggleStatus: (status: boolean) => true, // 折叠状态切换时触发\n}\n/* eslint-enable @typescript-eslint/no-unused-vars */\n\nexport type FormEmits = typeof formEmits\nexport const formEmitsKeys = Object.keys(formEmits)\n"],"names":["elFormProps","elFormEmits"],"mappings":";;AAMA,MAAM,eAAA,GAAkB;AAAA;AAAA,EAEtB,YAAA,EAAc;AAAA,IACZ,IAAA,EAAM,KAAA;AAAA,IACN,OAAA,EAAS,MAAM;AAAC,GAClB;AAAA;AAAA,EAEA,UAAA,EAAY,OAAA;AAAA;AAAA,EAGZ,cAAA,EAAgB;AAAA,IACd,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,GAAA,EAAK;AAAA,IACH,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA;AAEb,CAAA;AACO,MAAM,SAAA,GAAY;AAAA,EACvB,GAAGA,WAAA;AAAA,EACH,GAAG,eAAA;AAAA,EACH,IAAA,EAAM;AAAA,IACJ,GAAGA,WAAA,CAAY,IAAA;AAAA,IACf,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,UAAA,EAAY;AAAA,IACV,GAAGA,WAAA,CAAY,UAAA;AAAA,IACf,OAAA,EAAS;AAAA,GACX;AAAA,EACA,qBAAA,EAAuB;AAAA,IACrB,GAAGA,WAAA,CAAY,qBAAA;AAAA,IACf,SAAS,MAAM;AACb,MAAA,OAAO,EAAE,QAAQ,QAAA,EAAS;AAAA,IAC5B;AAAA;AAEJ;AAEO,MAAM,mBAAA,GAAsB,MAAA,CAAO,IAAA,CAAK,eAAe;AAEvD,MAAM,SAAA,GAAY;AAAA,EACvB,GAAGC,WAAA;AAAA,EACH,YAAA,EAAc,CAAC,MAAA,KAAoB;AAAA;AACrC;AAIO,MAAM,aAAA,GAAgB,MAAA,CAAO,IAAA,CAAK,SAAS;;;;"}
1
+ {"version":3,"file":"form.mjs","sources":["../../../../../../packages/components/form/src/form.ts"],"sourcesContent":["import type { ExtractPropTypes, PropType, ExtractPublicPropTypes } from 'vue'\nimport {\n formProps as elFormProps,\n formEmits as elFormEmits,\n} from 'element-plus'\nimport type { FormItemProps } from './form-item'\nconst expandFormProps = {\n // 表单列表\n formItemList: {\n type: Array as PropType<FormItemProps[]>,\n default: () => [] as FormItemProps[],\n },\n // 是否显示折叠\n isShowFold: Boolean,\n\n // 最大显示的表单数\n showFieldCount: {\n type: Number,\n default: 8,\n },\n // 每行的列数\n col: {\n type: Number,\n default: 4,\n },\n}\nexport const formProps = {\n ...elFormProps,\n ...expandFormProps,\n size: {\n ...elFormProps.size,\n default: 'small',\n },\n // 标签的长度\n labelWidth: {\n ...elFormProps.labelWidth,\n default: 100,\n },\n scrollIntoViewOptions: {\n ...elFormProps.scrollIntoViewOptions,\n default: () => {\n return { inline: 'center' }\n },\n },\n} as const\nexport type FormProps = ExtractPublicPropTypes<typeof formProps>\nexport const expandFormPropsKeys = Object.keys(expandFormProps)\n/* eslint-disable @typescript-eslint/no-unused-vars */\nexport const formEmits = {\n ...elFormEmits,\n toggleStatus: (status: boolean) => true, // 折叠状态切换时触发\n}\n/* eslint-enable @typescript-eslint/no-unused-vars */\n\nexport type FormEmits = typeof formEmits\nexport const formEmitsKeys = Object.keys(formEmits)\n"],"names":["elFormProps","elFormEmits"],"mappings":";;AAMA,MAAM,eAAA,GAAkB;AAAA;AAAA,EAEtB,YAAA,EAAc;AAAA,IACZ,IAAA,EAAM,KAAA;AAAA,IACN,OAAA,EAAS,MAAM;AAAC,GAClB;AAAA;AAAA,EAEA,UAAA,EAAY,OAAA;AAAA;AAAA,EAGZ,cAAA,EAAgB;AAAA,IACd,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,GAAA,EAAK;AAAA,IACH,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA;AAEb,CAAA;AACO,MAAM,SAAA,GAAY;AAAA,EACvB,GAAGA,WAAA;AAAA,EACH,GAAG,eAAA;AAAA,EACH,IAAA,EAAM;AAAA,IACJ,GAAGA,WAAA,CAAY,IAAA;AAAA,IACf,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,UAAA,EAAY;AAAA,IACV,GAAGA,WAAA,CAAY,UAAA;AAAA,IACf,OAAA,EAAS;AAAA,GACX;AAAA,EACA,qBAAA,EAAuB;AAAA,IACrB,GAAGA,WAAA,CAAY,qBAAA;AAAA,IACf,SAAS,MAAM;AACb,MAAA,OAAO,EAAE,QAAQ,QAAA,EAAS;AAAA,IAC5B;AAAA;AAEJ;AAEO,MAAM,mBAAA,GAAsB,MAAA,CAAO,IAAA,CAAK,eAAe;AAEvD,MAAM,SAAA,GAAY;AAAA,EACvB,GAAGC,WAAA;AAAA,EACH,YAAA,EAAc,CAAC,MAAA,KAAoB;AAAA;AACrC;AAIO,MAAM,aAAA,GAAgB,MAAA,CAAO,IAAA,CAAK,SAAS;;;;"}
@@ -11,7 +11,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
11
11
  readonly __epPropKey: true;
12
12
  };
13
13
  labelWidth: {
14
- readonly default: 120;
14
+ readonly default: 100;
15
15
  readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
16
16
  readonly required: false;
17
17
  readonly validator: ((val: unknown) => boolean) | undefined;
@@ -78,7 +78,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
78
78
  readonly __epPropKey: true;
79
79
  };
80
80
  labelWidth: {
81
- readonly default: 120;
81
+ readonly default: 100;
82
82
  readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
83
83
  readonly required: false;
84
84
  readonly validator: ((val: unknown) => boolean) | undefined;
@@ -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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"}
@@ -2336,7 +2336,7 @@ export declare const EpSearchListPage: {
2336
2336
  readonly __epPropKey: true;
2337
2337
  };
2338
2338
  labelWidth: {
2339
- readonly default: 120;
2339
+ readonly default: 100;
2340
2340
  readonly type: import("vue").PropType<import("element-plus/es/utils/index.js").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
2341
2341
  readonly required: false;
2342
2342
  readonly validator: ((val: unknown) => boolean) | undefined;
@@ -2465,7 +2465,7 @@ export declare const EpSearchListPage: {
2465
2465
  readonly __epPropKey: true;
2466
2466
  };
2467
2467
  labelWidth: {
2468
- readonly default: 120;
2468
+ readonly default: 100;
2469
2469
  readonly type: import("vue").PropType<import("element-plus/es/utils/index.js").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
2470
2470
  readonly required: false;
2471
2471
  readonly validator: ((val: unknown) => boolean) | undefined;
@@ -4935,7 +4935,7 @@ export declare const EpSearchListPage: {
4935
4935
  readonly __epPropKey: true;
4936
4936
  };
4937
4937
  labelWidth: {
4938
- readonly default: 120;
4938
+ readonly default: 100;
4939
4939
  readonly type: import("vue").PropType<import("element-plus/es/utils/index.js").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
4940
4940
  readonly required: false;
4941
4941
  readonly validator: ((val: unknown) => boolean) | undefined;
@@ -5064,7 +5064,7 @@ export declare const EpSearchListPage: {
5064
5064
  readonly __epPropKey: true;
5065
5065
  };
5066
5066
  labelWidth: {
5067
- readonly default: 120;
5067
+ readonly default: 100;
5068
5068
  readonly type: import("vue").PropType<import("element-plus/es/utils/index.js").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
5069
5069
  readonly required: false;
5070
5070
  readonly validator: ((val: unknown) => boolean) | undefined;
@@ -7408,7 +7408,7 @@ export declare const EpSearchListPage: {
7408
7408
  readonly __epPropKey: true;
7409
7409
  };
7410
7410
  labelWidth: {
7411
- readonly default: 120;
7411
+ readonly default: 100;
7412
7412
  readonly type: import("vue").PropType<import("element-plus/es/utils/index.js").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
7413
7413
  readonly required: false;
7414
7414
  readonly validator: ((val: unknown) => boolean) | undefined;
@@ -7537,7 +7537,7 @@ export declare const EpSearchListPage: {
7537
7537
  readonly __epPropKey: true;
7538
7538
  };
7539
7539
  labelWidth: {
7540
- readonly default: 120;
7540
+ readonly default: 100;
7541
7541
  readonly type: import("vue").PropType<import("element-plus/es/utils/index.js").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
7542
7542
  readonly required: false;
7543
7543
  readonly validator: ((val: unknown) => boolean) | undefined;
@@ -2217,7 +2217,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
2217
2217
  readonly __epPropKey: true;
2218
2218
  };
2219
2219
  labelWidth: {
2220
- readonly default: 120;
2220
+ readonly default: 100;
2221
2221
  readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
2222
2222
  readonly required: false;
2223
2223
  readonly validator: ((val: unknown) => boolean) | undefined;
@@ -2346,7 +2346,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
2346
2346
  readonly __epPropKey: true;
2347
2347
  };
2348
2348
  labelWidth: {
2349
- readonly default: 120;
2349
+ readonly default: 100;
2350
2350
  readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
2351
2351
  readonly required: false;
2352
2352
  readonly validator: ((val: unknown) => boolean) | undefined;
@@ -2217,7 +2217,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
2217
2217
  readonly __epPropKey: true;
2218
2218
  };
2219
2219
  labelWidth: {
2220
- readonly default: 120;
2220
+ readonly default: 100;
2221
2221
  readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
2222
2222
  readonly required: false;
2223
2223
  readonly validator: ((val: unknown) => boolean) | undefined;
@@ -2346,7 +2346,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
2346
2346
  readonly __epPropKey: true;
2347
2347
  };
2348
2348
  labelWidth: {
2349
- readonly default: 120;
2349
+ readonly default: 100;
2350
2350
  readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
2351
2351
  readonly required: false;
2352
2352
  readonly validator: ((val: unknown) => boolean) | undefined;
@@ -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;
@@ -1,4 +1,4 @@
1
- import { useTemplateRef, ref, useAttrs, getCurrentInstance, computed, reactive, createVNode, createTextVNode, toRaw } from 'vue';
1
+ import { useTemplateRef, ref, useAttrs, watch, 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) {
@@ -72,6 +73,13 @@ const useTable = (props) => {
72
73
  }
73
74
  }
74
75
  };
76
+ if (!props.api) {
77
+ watch(() => props.data, (newValue) => {
78
+ customData.value = newValue;
79
+ }, {
80
+ deep: true
81
+ });
82
+ }
75
83
  const {
76
84
  pagination,
77
85
  paginationProps
@@ -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 watch,\n} from 'vue'\nimport { useRequest } from '@el-plus/hooks/use-request'\nimport type { TableColumn, TableProps, TableScope } from './table'\nimport type { ButtonProps } from '@el-plus/components/buttons'\nimport type { FormProps } from '@el-plus/components/form'\nimport { bus } from '@el-plus/utils'\nimport {\n prepareProps,\n prepareEvents,\n prepareClassNames,\n prepareStyles,\n} from '@el-plus/utils/props'\nimport { cloneDeep } from 'lodash-unified'\nimport { EditPen } from '@element-plus/icons-vue'\nimport { ElIcon } from 'element-plus'\nimport { useFormDialog } from '@el-plus/hooks/dialog/use-form-dialog'\n\nexport type ISearch = (init: boolean, isPagination?: boolean) => void\nexport const useTable = (props: TableProps) => {\n const elFormRef = useTemplateRef<FormInstance>('elFormRef')\n const elTableRef = useTemplateRef<TableInstance>('elTableRef')\n const customData = ref<Record<string, unknown>[]>([])\n const { loading, requestFn } = useRequest({\n api: props.api,\n method: props.method,\n reqData: props.reqData,\n reqParams: props.reqParams,\n reqBefore: props.reqBefore,\n reqAfter: props.reqAfter,\n cancelToken: true,\n hooks: {\n success(data) {\n if (Array.isArray(data)) {\n customData.value = data\n } else if (data && typeof data === 'object') {\n const rawData = data as Record<string, any>\n customData.value = rawData?.list || rawData?.data || []\n } else {\n customData.value = []\n }\n if (props.showPagination) {\n pagination.total =\n (props.isFrontPage\n ? customData.value.length\n : (data as { total: number }).total) || 0\n }\n },\n fail(error) {\n console.error(error)\n },\n },\n })\n // 自定义列\n const customColumns = ref<TableColumn[]>([])\n // 加载列表\n const attrs = useAttrs()\n const search: ISearch = async (init = false, isPagination = false) => {\n const beforeSearch = attrs['before-search']\n if (typeof beforeSearch === 'function') {\n await nextTick()\n await beforeSearch?.()\n }\n if (init) {\n pagination.pageNo = 1\n }\n // 前端分页\n if (isPagination && props.isFrontPage) {\n const { pageNo, pageSize } = pagination\n const data = customData.value.filter((item, index) => {\n return index < pageNo * pageSize && index >= (pageNo - 1) * pageSize\n })\n customData.value = data\n } else {\n if (props.api) {\n requestFn!({\n pageNo: pagination.pageNo,\n pageSize: pagination.pageSize,\n pageNum: pagination.pageNo,\n })\n } else if (props.data?.length) {\n customData.value = props.data\n }\n }\n }\n if (!props.api) {\n watch(\n () => props.data,\n (newValue) => {\n customData.value = newValue as Record<string, any>[]\n },\n {\n deep: true,\n },\n )\n }\n\n const { pagination, paginationProps } = usePagination(props, search)\n\n // 初始化加载\n ;(async () => {\n if (props.isInitSearch) {\n if (props.customColumnModule) {\n loading!.value = true\n const columns = await bus.once('loadedCustomColumn')\n loading!.value = false\n customColumns.value = columns\n bus.on('loadedCustomColumn', (columns: TableColumn[]) => {\n customColumns.value = columns\n })\n }\n search(true)\n }\n })()\n\n // 校验\n const validate = () => {\n return elFormRef.value!.validate()\n }\n // 重置校验\n const resetFields = (props: FormItemProp) => {\n return elFormRef.value!.resetFields(props)\n }\n // 清理某个字段的表单验证信息\n const clearValidate = (props: FormItemProp) => {\n return elFormRef.value!.clearValidate(props)\n }\n // 格式化操作按钮\n const formatActionButtons = (list: ButtonProps[], scope: TableScope) => {\n return list.map((item) => {\n if (item.onClick) {\n item.onClick = item.onClick.bind(null, scope)\n }\n return item\n })\n }\n\n return {\n loading,\n data: customData,\n search,\n pagination,\n paginationProps,\n validate,\n resetFields,\n clearValidate,\n elFormRef,\n elTableRef,\n formatActionButtons,\n customColumns: customColumns as unknown as Ref<TableColumn[]>,\n }\n}\nconst usePagination = function (props: TableProps, search: ISearch) {\n const pageSizes = [20, 50, 100, 200]\n const pagination = reactive({\n total: 0,\n pageNo: 1,\n pageSize: pageSizes[0],\n })\n const paginationProps = computed(() => {\n const defaultPaginationProps = props.paginationProps || {}\n const onSizeChange = defaultPaginationProps.onSizeChange\n const onCurrentChange = defaultPaginationProps.onCurrentChange\n return {\n ...defaultPaginationProps,\n pageSizes,\n layout: 'total, sizes, prev, pager, next, jumper',\n onSizeChange: (value: number) => {\n onSizeChange && onSizeChange(value)\n search(true, true)\n },\n onCurrentChange: (value: number) => {\n onCurrentChange && onCurrentChange(value)\n search(false, true)\n },\n }\n })\n return {\n pagination,\n paginationProps,\n }\n}\n\nexport const useTableColumn = (\n props: TableProps,\n tableData: Ref<TableProps['data']>,\n customColumns: Ref<TableColumn[]>,\n) => {\n const instance = getCurrentInstance()\n const columnProps = (column: TableColumn) => {\n 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","watch","newValue","deep","paginationProps","usePagination","isInitSearch","customColumnModule","columns","bus","once","on","validate","resetFields","clearValidate","formatActionButtons","scope","map","onClick","bind","pageSizes","reactive","computed","defaultPaginationProps","onSizeChange","onCurrentChange","layout","useTableColumn","tableData","instance","getCurrentInstance","columnProps","column","align","minWidth","renderHeader","required","editable","_createVNode","_createTextVNode","cloneColumn","rawRender","render","formData","row","formDialog","useFormDialog","title","label","dialogProps","destroyOnClose","formItemList","open","forEach","prop","toRaw","ElIcon","default","EditPen","arr","filters","Set","text","filterMethod","type","className","prepareProps","columnList","newColumn","formatColumns","formatColumn","find","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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"}