el-plus 0.0.89 → 0.0.91

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 (51) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +12 -2
  4. package/dist/index.full.min.js +3 -3
  5. package/dist/index.full.min.js.map +1 -1
  6. package/dist/index.full.min.mjs +3 -3
  7. package/dist/index.full.min.mjs.map +1 -1
  8. package/dist/index.full.mjs +12 -2
  9. package/docs/components/buttons.md +24 -0
  10. package/es/components/buttons/index.d.ts +5 -0
  11. package/es/components/buttons/src/buttons-vue.d.ts +1 -0
  12. package/es/components/buttons/src/buttons-vue.mjs +3 -0
  13. package/es/components/buttons/src/buttons-vue.mjs.map +1 -1
  14. package/es/components/buttons/src/buttons.d.ts +1 -0
  15. package/es/components/buttons/src/buttons.mjs.map +1 -1
  16. package/es/components/header/index.d.ts +5 -0
  17. package/es/components/header/src/header.vue.d.ts +1 -0
  18. package/es/components/search-list-page/index.d.ts +26 -0
  19. package/es/components/search-list-page/src/search-list-page.vue.d.ts +6 -0
  20. package/es/components/search-list-page/src/use-search-list-page.d.ts +6 -0
  21. package/es/components/search-list-page/src/use-search-list-page.mjs +7 -0
  22. package/es/components/search-list-page/src/use-search-list-page.mjs.map +1 -1
  23. package/es/components/table/index.d.ts +5 -0
  24. package/es/components/table/src/table.vue.d.ts +1 -0
  25. package/es/components/table/src/use-table.d.ts +1 -0
  26. package/es/components/title/index.d.ts +5 -0
  27. package/es/components/title/src/title.vue.d.ts +1 -0
  28. package/es/package.json.mjs +1 -1
  29. package/lib/components/buttons/index.d.ts +5 -0
  30. package/lib/components/buttons/src/buttons-vue.d.ts +1 -0
  31. package/lib/components/buttons/src/buttons-vue.js +3 -0
  32. package/lib/components/buttons/src/buttons-vue.js.map +1 -1
  33. package/lib/components/buttons/src/buttons.d.ts +1 -0
  34. package/lib/components/buttons/src/buttons.js.map +1 -1
  35. package/lib/components/header/index.d.ts +5 -0
  36. package/lib/components/header/src/header.vue.d.ts +1 -0
  37. package/lib/components/search-list-page/index.d.ts +26 -0
  38. package/lib/components/search-list-page/src/search-list-page.vue.d.ts +6 -0
  39. package/lib/components/search-list-page/src/use-search-list-page.d.ts +6 -0
  40. package/lib/components/search-list-page/src/use-search-list-page.js +7 -0
  41. package/lib/components/search-list-page/src/use-search-list-page.js.map +1 -1
  42. package/lib/components/table/index.d.ts +5 -0
  43. package/lib/components/table/src/table.vue.d.ts +1 -0
  44. package/lib/components/table/src/use-table.d.ts +1 -0
  45. package/lib/components/title/index.d.ts +5 -0
  46. package/lib/components/title/src/title.vue.d.ts +1 -0
  47. package/lib/package.json.js +1 -1
  48. package/package.json +1 -1
  49. package/theme-chalk/buttons.css +1 -1
  50. package/theme-chalk/index.css +1 -1
  51. package/theme-chalk/src/buttons.scss +5 -0
@@ -1,4 +1,4 @@
1
- /*! ElPlus v0.0.89 */
1
+ /*! ElPlus v0.0.91 */
2
2
 
3
3
  import { useAttrs, getCurrentInstance, inject, provide, ref, nextTick, defineComponent, computed, createVNode, Fragment, withDirectives, resolveComponent, mergeProps, resolveDirective, useTemplateRef, reactive, onBeforeUpdate, createTextVNode, h, mergeModels, useModel, createElementBlock, openBlock, normalizeStyle, normalizeClass, unref, createCommentVNode, withCtx, renderSlot, renderList, createBlock, vShow, toDisplayString, useSlots, watch, onMounted, createSlots, normalizeProps, guardReactiveProps, markRaw, Transition, shallowReactive, isVNode, render, createElementVNode, toRaw } from 'vue';
4
4
  import { buttonProps, useLocale as useLocale$1, ElLoading, ElMessage, ElMessageBox, formProps as formProps$1, formEmits as formEmits$1, ElTooltip, formItemProps as formItemProps$1, ElFormItem, ElForm, ElRow, ElCol, inputProps as inputProps$1, inputEmits as inputEmits$1, configProviderContextKey, ElConfigProvider, ElDialog, ElButton, ElTable, ElIcon, selectProps as selectProps$1, selectEmits as selectEmits$1, ElPageHeader, datePickerProps, linkProps as linkProps$1, ElSkeleton } from 'element-plus';
@@ -666,6 +666,9 @@ var Buttons = /* @__PURE__ */ defineComponent({
666
666
  });
667
667
  });
668
668
  const clickFn = async (item) => {
669
+ if (item.confirmBefore) {
670
+ await item.confirmBefore();
671
+ }
669
672
  if (item.confirm) {
670
673
  const confirmText = item.confirmText || `${t("ep.buttons.secondConfirm")}${item.name}${t("ep.buttons.secondConfirmEnd")}\uFF1F`;
671
674
  await ElMessageBox.confirm(confirmText, t("ep.buttons.prompt"), {
@@ -2794,6 +2797,13 @@ const useButtons$1 = (props, { validate, resetFields, tableRef }) => {
2794
2797
  const rows = tableRef.value.elTableRef.getSelectionRows();
2795
2798
  clickFn(rows);
2796
2799
  };
2800
+ if (item.confirmBefore) {
2801
+ const confirmBeforeFn = item.confirmBefore;
2802
+ item.confirmBefore = () => {
2803
+ const rows = tableRef.value.elTableRef.getSelectionRows();
2804
+ confirmBeforeFn(rows);
2805
+ };
2806
+ }
2797
2807
  }
2798
2808
  });
2799
2809
  const buttonsProps = computed(() => {
@@ -4475,7 +4485,7 @@ var components = [
4475
4485
  EpFooterInfo
4476
4486
  ];
4477
4487
 
4478
- var version = "0.0.89";
4488
+ var version = "0.0.91";
4479
4489
 
4480
4490
  var globalProperties = {
4481
4491
  install(app) {
@@ -86,6 +86,7 @@ const formItemList = ref<FormProps['formItemList']>([
86
86
  | permission | 权限标识 | `string` | - |
87
87
  | confirm | 是否需要确认 | `boolean` | `false` |
88
88
  | confirmText | 确认提示文本 | `string` | `'确定要${name}吗?'` |
89
+ | confirmBefore | 点击前前置校验 | `() => Promise<void>` | - |
89
90
  | onClick | 点击回调 | `(e: MouseEvent \| TableScope) => void` | - |
90
91
 
91
92
  ## 带确认弹窗
@@ -103,6 +104,29 @@ const buttons = [
103
104
  ]
104
105
  ```
105
106
 
107
+ ## 点击前前置校验
108
+
109
+ 使用 `confirmBefore` 可以在点击后、确认弹窗弹出前执行异步校验逻辑,Promise reject 则阻止后续操作(不弹确认框、不执行 `onClick`)。
110
+
111
+ ```tsx
112
+ const buttons = [
113
+ {
114
+ name: '提交',
115
+ prop: 'submit',
116
+ confirmBefore: async () => {
117
+ const valid = await validateForm()
118
+ if (!valid) {
119
+ return Promise.reject()
120
+ }
121
+ },
122
+ confirm: true,
123
+ onClick: () => {
124
+ // 提交逻辑
125
+ },
126
+ },
127
+ ]
128
+ ```
129
+
106
130
  > **⚠️ 注意:需要确认弹窗时,必须使用 `confirm: true` 属性,禁止手动编写 `ElMessageBox.confirm`**
107
131
  >
108
132
  > **正确做法**:
@@ -10,6 +10,7 @@ export declare const EpButtons: {
10
10
  disabled: import("el-plus/es/utils").IDisabled;
11
11
  confirm: boolean;
12
12
  confirmText: string;
13
+ confirmBefore: () => Promise<void>;
13
14
  } & {} & {
14
15
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
15
16
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -63,6 +64,7 @@ export declare const EpButtons: {
63
64
  disabled: import("el-plus/es/utils").IDisabled;
64
65
  confirm: boolean;
65
66
  confirmText: string;
67
+ confirmBefore: () => Promise<void>;
66
68
  } & {} & {
67
69
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
68
70
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -106,6 +108,7 @@ export declare const EpButtons: {
106
108
  disabled: import("el-plus/es/utils").IDisabled;
107
109
  confirm: boolean;
108
110
  confirmText: string;
111
+ confirmBefore: () => Promise<void>;
109
112
  } & {} & {
110
113
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
111
114
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -159,6 +162,7 @@ export declare const EpButtons: {
159
162
  disabled: import("el-plus/es/utils").IDisabled;
160
163
  confirm: boolean;
161
164
  confirmText: string;
165
+ confirmBefore: () => Promise<void>;
162
166
  } & {} & {
163
167
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
164
168
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -234,6 +238,7 @@ export declare const EpButtons: {
234
238
  disabled: import("el-plus/es/utils").IDisabled;
235
239
  confirm: boolean;
236
240
  confirmText: string;
241
+ confirmBefore: () => Promise<void>;
237
242
  } & {} & {
238
243
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
239
244
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -93,6 +93,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
93
93
  disabled: import("el-plus/es/utils/props").IDisabled;
94
94
  confirm: boolean;
95
95
  confirmText: string;
96
+ confirmBefore: () => Promise<void>;
96
97
  } & {} & {
97
98
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
98
99
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -37,6 +37,9 @@ var Buttons = /* @__PURE__ */ defineComponent({
37
37
  });
38
38
  });
39
39
  const clickFn = async (item) => {
40
+ if (item.confirmBefore) {
41
+ await item.confirmBefore();
42
+ }
40
43
  if (item.confirm) {
41
44
  const confirmText = item.confirmText || `${t("ep.buttons.secondConfirm")}${item.name}${t("ep.buttons.secondConfirmEnd")}\uFF1F`;
42
45
  await ElMessageBox.confirm(confirmText, t("ep.buttons.prompt"), {
@@ -1 +1 @@
1
- {"version":3,"file":"buttons-vue.mjs","sources":["../../../../../../packages/components/buttons/src/buttons-vue.tsx"],"sourcesContent":["import { defineComponent, computed } from 'vue'\nimport { buttonsProps } from './buttons'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport {\n prepareProps,\n prepareEvents,\n prepareClassNames,\n prepareStyles,\n} from '@el-plus/utils/props'\nimport { vRepeatClick, vPermission } from '@el-plus/directives'\nimport { ElMessageBox } from 'element-plus'\nimport { useLocale } from '@el-plus/hooks/use-locale'\nconst bem = createNameSpace('button')\n\nexport default defineComponent({\n name: 'EpButtons',\n directives: {\n [vRepeatClick.name]: vRepeatClick,\n [vPermission.name]: vPermission,\n },\n inheritAttrs: false,\n props: buttonsProps,\n setup(props, { emit }) {\n const { t } = useLocale()\n const { list, ...buttonProps } = props\n const customList = computed(() => {\n return list.filter((button) => {\n if ('show' in button) {\n return typeof button.show === 'function'\n ? button.show(button)\n : button.show\n } else if ('hide' in button) {\n return typeof button.hide === 'function'\n ? !button.hide(button)\n : !button.hide\n }\n return true\n })\n })\n const clickFn = async (item) => {\n if (item.confirm) {\n const confirmText =\n item.confirmText ||\n `${t('ep.buttons.secondConfirm')}${item.name}${t('ep.buttons.secondConfirmEnd')}?`\n await ElMessageBox.confirm(confirmText, t('ep.buttons.prompt'), {\n confirmButtonText: t('ep.buttons.confirm'),\n cancelButtonText: t('ep.buttons.cancel'),\n type: 'warning',\n })\n }\n item.onClick && item.onClick()\n }\n const getDisabled = (item) => {\n if (typeof item.disabled === 'function') {\n return item.disabled()\n }\n if (typeof props.disabled === 'function') {\n return props.disabled()\n }\n return props.disabled\n }\n\n return () => (\n <>\n {customList.value.map((item) => {\n const permissionArr = item.permission?.split(':') || []\n return (\n <el-button\n class={[bem.b(), prepareClassNames()]}\n style={prepareStyles()}\n key={item.prop || item.name}\n v-slots={{\n default: () => item.name,\n ...item.scopedSlots,\n }}\n {...{\n ...prepareProps(buttonProps),\n ...prepareProps(item, ['scopedSlots', 'name', 'onClick']),\n disabled: getDisabled(item),\n }}\n v-repeat-click={\n typeof item.onClick === 'function'\n ? {\n handler: () => clickFn(item),\n immediate: true,\n }\n : () => clickFn(item)\n }\n v-permission={{\n arg: permissionArr[0],\n value: permissionArr[1],\n }}\n ></el-button>\n )\n })}\n </>\n )\n },\n})\n"],"names":["bem","createNameSpace","name","directives","vRepeatClick","vPermission","inheritAttrs","props","buttonsProps","setup","emit","t","useLocale","list","buttonProps","customList","computed","filter","button","show","hide","clickFn","item","confirm","confirmText","ElMessageBox","confirmButtonText","cancelButtonText","type","onClick","getDisabled","disabled","_createVNode","_Fragment","value","map","permissionArr","permission","split","_withDirectives","_resolveComponent","_mergeProps","b","prepareClassNames","prepareStyles","prop","prepareProps","default","scopedSlots","_resolveDirective","handler","immediate","arg"],"mappings":"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"}
1
+ {"version":3,"file":"buttons-vue.mjs","sources":["../../../../../../packages/components/buttons/src/buttons-vue.tsx"],"sourcesContent":["import { defineComponent, computed } from 'vue'\nimport { buttonsProps } from './buttons'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport {\n prepareProps,\n prepareEvents,\n prepareClassNames,\n prepareStyles,\n} from '@el-plus/utils/props'\nimport { vRepeatClick, vPermission } from '@el-plus/directives'\nimport { ElMessageBox } from 'element-plus'\nimport { useLocale } from '@el-plus/hooks/use-locale'\nconst bem = createNameSpace('button')\n\nexport default defineComponent({\n name: 'EpButtons',\n directives: {\n [vRepeatClick.name]: vRepeatClick,\n [vPermission.name]: vPermission,\n },\n inheritAttrs: false,\n props: buttonsProps,\n setup(props, { emit }) {\n const { t } = useLocale()\n const { list, ...buttonProps } = props\n const customList = computed(() => {\n return list.filter((button) => {\n if ('show' in button) {\n return typeof button.show === 'function'\n ? button.show(button)\n : button.show\n } else if ('hide' in button) {\n return typeof button.hide === 'function'\n ? !button.hide(button)\n : !button.hide\n }\n return true\n })\n })\n const clickFn = async (item) => {\n if (item.confirmBefore) {\n await item.confirmBefore()\n }\n if (item.confirm) {\n const confirmText =\n item.confirmText ||\n `${t('ep.buttons.secondConfirm')}${item.name}${t('ep.buttons.secondConfirmEnd')}?`\n await ElMessageBox.confirm(confirmText, t('ep.buttons.prompt'), {\n confirmButtonText: t('ep.buttons.confirm'),\n cancelButtonText: t('ep.buttons.cancel'),\n type: 'warning',\n })\n }\n item.onClick && item.onClick()\n }\n const getDisabled = (item) => {\n if (typeof item.disabled === 'function') {\n return item.disabled()\n }\n if (typeof props.disabled === 'function') {\n return props.disabled()\n }\n return props.disabled\n }\n\n return () => (\n <>\n {customList.value.map((item) => {\n const permissionArr = item.permission?.split(':') || []\n return (\n <el-button\n class={[bem.b(), prepareClassNames()]}\n style={prepareStyles()}\n key={item.prop || item.name}\n v-slots={{\n default: () => item.name,\n ...item.scopedSlots,\n }}\n {...{\n ...prepareProps(buttonProps),\n ...prepareProps(item, ['scopedSlots', 'name', 'onClick']),\n disabled: getDisabled(item),\n }}\n v-repeat-click={\n typeof item.onClick === 'function'\n ? {\n handler: () => clickFn(item),\n immediate: true,\n }\n : () => clickFn(item)\n }\n v-permission={{\n arg: permissionArr[0],\n value: permissionArr[1],\n }}\n ></el-button>\n )\n })}\n </>\n )\n },\n})\n"],"names":["bem","createNameSpace","name","directives","vRepeatClick","vPermission","inheritAttrs","props","buttonsProps","setup","emit","t","useLocale","list","buttonProps","customList","computed","filter","button","show","hide","clickFn","item","confirmBefore","confirm","confirmText","ElMessageBox","confirmButtonText","cancelButtonText","type","onClick","getDisabled","disabled","_createVNode","_Fragment","value","map","permissionArr","permission","split","_withDirectives","_resolveComponent","_mergeProps","b","prepareClassNames","prepareStyles","prop","prepareProps","default","scopedSlots","_resolveDirective","handler","immediate","arg"],"mappings":"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"}
@@ -11,6 +11,7 @@ export type ButtonProps = Partial<Omit<ElButtonProps, 'disabled'> & {
11
11
  disabled: IDisabled;
12
12
  confirm: boolean;
13
13
  confirmText: string;
14
+ confirmBefore: () => Promise<void>;
14
15
  } & VisibleProps>;
15
16
  export declare const buttonsProps: {
16
17
  readonly list: {
@@ -1 +1 @@
1
- {"version":3,"file":"buttons.mjs","sources":["../../../../../../packages/components/buttons/src/buttons.ts"],"sourcesContent":["import type { PropType, ExtractPublicPropTypes, VNode } from 'vue'\nimport {\n buttonProps as elButtonProps,\n // buttonEmits as elButtonEmits,\n type ButtonProps as ElButtonProps,\n} from 'element-plus'\nimport { disabledProps } from '@el-plus/utils/props'\nimport type { VisibleProps, IDisabled } from '@el-plus/utils/props'\nimport type { TableScope } from '@el-plus/components/table'\n\nexport type ButtonProps = Partial<\n Omit<ElButtonProps, 'disabled'> & {\n name: string\n prop: string // 唯一标识\n permission: string // 权限\n onClick: (e: MouseEvent | TableScope) => void\n scopedSlots: Record<string, () => VNode>\n disabled: IDisabled\n confirm: boolean\n confirmText: string\n } & VisibleProps\n>\nexport const buttonsProps = {\n ...elButtonProps,\n ...disabledProps,\n list: {\n type: Array as PropType<ButtonProps[]>,\n default: () => [],\n },\n size: {\n ...elButtonProps.size,\n default: 'small',\n },\n type: {\n ...elButtonProps.type,\n default: 'default',\n },\n} as const\nexport type ButtonsProps = ExtractPublicPropTypes<typeof buttonsProps>\n// export const buttonsEmits = {\n// ...elButtonEmits,\n// }\n// export type ButtonsEmits = typeof buttonsEmits\n// export const buttonsEmitsKeys = Object.keys(buttonsEmits)\n"],"names":["elButtonProps"],"mappings":";;;AAsBO,MAAM,YAAA,GAAe;AAAA,EAC1B,GAAGA,WAAA;AAAA,EACH,GAAG,aAAA;AAAA,EACH,IAAA,EAAM;AAAA,IACJ,IAAA,EAAM,KAAA;AAAA,IACN,OAAA,EAAS,MAAM;AAAC,GAClB;AAAA,EACA,IAAA,EAAM;AAAA,IACJ,GAAGA,WAAA,CAAc,IAAA;AAAA,IACjB,OAAA,EAAS;AAAA,GACX;AAAA,EACA,IAAA,EAAM;AAAA,IACJ,GAAGA,WAAA,CAAc,IAAA;AAAA,IACjB,OAAA,EAAS;AAAA;AAEb;;;;"}
1
+ {"version":3,"file":"buttons.mjs","sources":["../../../../../../packages/components/buttons/src/buttons.ts"],"sourcesContent":["import type { PropType, ExtractPublicPropTypes, VNode } from 'vue'\nimport {\n buttonProps as elButtonProps,\n // buttonEmits as elButtonEmits,\n type ButtonProps as ElButtonProps,\n} from 'element-plus'\nimport { disabledProps } from '@el-plus/utils/props'\nimport type { VisibleProps, IDisabled } from '@el-plus/utils/props'\nimport type { TableScope } from '@el-plus/components/table'\n\nexport type ButtonProps = Partial<\n Omit<ElButtonProps, 'disabled'> & {\n name: string\n prop: string // 唯一标识\n permission: string // 权限\n onClick: (e: MouseEvent | TableScope) => void\n scopedSlots: Record<string, () => VNode>\n disabled: IDisabled\n confirm: boolean\n confirmText: string\n confirmBefore: () => Promise<void>\n } & VisibleProps\n>\nexport const buttonsProps = {\n ...elButtonProps,\n ...disabledProps,\n list: {\n type: Array as PropType<ButtonProps[]>,\n default: () => [],\n },\n size: {\n ...elButtonProps.size,\n default: 'small',\n },\n type: {\n ...elButtonProps.type,\n default: 'default',\n },\n} as const\nexport type ButtonsProps = ExtractPublicPropTypes<typeof buttonsProps>\n// export const buttonsEmits = {\n// ...elButtonEmits,\n// }\n// export type ButtonsEmits = typeof buttonsEmits\n// export const buttonsEmitsKeys = Object.keys(buttonsEmits)\n"],"names":["elButtonProps"],"mappings":";;;AAuBO,MAAM,YAAA,GAAe;AAAA,EAC1B,GAAGA,WAAA;AAAA,EACH,GAAG,aAAA;AAAA,EACH,IAAA,EAAM;AAAA,IACJ,IAAA,EAAM,KAAA;AAAA,IACN,OAAA,EAAS,MAAM;AAAC,GAClB;AAAA,EACA,IAAA,EAAM;AAAA,IACJ,GAAGA,WAAA,CAAc,IAAA;AAAA,IACjB,OAAA,EAAS;AAAA,GACX;AAAA,EACA,IAAA,EAAM;AAAA,IACJ,GAAGA,WAAA,CAAc,IAAA;AAAA,IACjB,OAAA,EAAS;AAAA;AAEb;;;;"}
@@ -17,6 +17,7 @@ export declare const EpHeader: {
17
17
  disabled: import("el-plus/es/utils/props").IDisabled;
18
18
  confirm: boolean;
19
19
  confirmText: string;
20
+ confirmBefore: () => Promise<void>;
20
21
  } & {} & {
21
22
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
22
23
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -50,6 +51,7 @@ export declare const EpHeader: {
50
51
  disabled: import("el-plus/es/utils/props").IDisabled;
51
52
  confirm: boolean;
52
53
  confirmText: string;
54
+ confirmBefore: () => Promise<void>;
53
55
  } & {} & {
54
56
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
55
57
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -105,6 +107,7 @@ export declare const EpHeader: {
105
107
  disabled: import("el-plus/es/utils/props").IDisabled;
106
108
  confirm: boolean;
107
109
  confirmText: string;
110
+ confirmBefore: () => Promise<void>;
108
111
  } & {} & {
109
112
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
110
113
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -138,6 +141,7 @@ export declare const EpHeader: {
138
141
  disabled: import("el-plus/es/utils/props").IDisabled;
139
142
  confirm: boolean;
140
143
  confirmText: string;
144
+ confirmBefore: () => Promise<void>;
141
145
  } & {} & {
142
146
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
143
147
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -211,6 +215,7 @@ export declare const EpHeader: {
211
215
  disabled: import("el-plus/es/utils/props").IDisabled;
212
216
  confirm: boolean;
213
217
  confirmText: string;
218
+ confirmBefore: () => Promise<void>;
214
219
  } & {} & {
215
220
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
216
221
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -66,6 +66,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
66
66
  disabled: import("el-plus/es/utils/props").IDisabled;
67
67
  confirm: boolean;
68
68
  confirmText: string;
69
+ confirmBefore: () => Promise<void>;
69
70
  } & {} & {
70
71
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
71
72
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -27,6 +27,7 @@ export declare const EpSearchListPage: {
27
27
  disabled: import("el-plus/es/utils/props").IDisabled;
28
28
  confirm: boolean;
29
29
  confirmText: string;
30
+ confirmBefore: () => Promise<void>;
30
31
  } & {} & {
31
32
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
32
33
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -67,6 +68,7 @@ export declare const EpSearchListPage: {
67
68
  disabled: import("el-plus/es/utils/props").IDisabled;
68
69
  confirm: boolean;
69
70
  confirmText: string;
71
+ confirmBefore: () => Promise<void>;
70
72
  } & {} & {
71
73
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
72
74
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -209,6 +211,7 @@ export declare const EpSearchListPage: {
209
211
  disabled: import("el-plus/es/utils/props").IDisabled;
210
212
  confirm: boolean;
211
213
  confirmText: string;
214
+ confirmBefore: () => Promise<void>;
212
215
  } & {} & {
213
216
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
214
217
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -319,6 +322,7 @@ export declare const EpSearchListPage: {
319
322
  disabled: import("el-plus/es/utils/props").IDisabled;
320
323
  confirm: boolean;
321
324
  confirmText: string;
325
+ confirmBefore: () => Promise<void>;
322
326
  } & {} & {
323
327
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
324
328
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -473,6 +477,7 @@ export declare const EpSearchListPage: {
473
477
  disabled: import("el-plus/es/utils/props").IDisabled;
474
478
  confirm: boolean;
475
479
  confirmText: string;
480
+ confirmBefore: () => Promise<void>;
476
481
  } & {} & {
477
482
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
478
483
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -1311,6 +1316,7 @@ export declare const EpSearchListPage: {
1311
1316
  disabled: import("el-plus/es/utils/props").IDisabled;
1312
1317
  confirm: boolean;
1313
1318
  confirmText: string;
1319
+ confirmBefore: () => Promise<void>;
1314
1320
  } & {} & {
1315
1321
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
1316
1322
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -1441,6 +1447,7 @@ export declare const EpSearchListPage: {
1441
1447
  disabled: import("el-plus/es/utils/props").IDisabled;
1442
1448
  confirm: boolean;
1443
1449
  confirmText: string;
1450
+ confirmBefore: () => Promise<void>;
1444
1451
  } & {} & {
1445
1452
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
1446
1453
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -1538,6 +1545,7 @@ export declare const EpSearchListPage: {
1538
1545
  disabled: import("el-plus/es/utils/props").IDisabled;
1539
1546
  confirm: boolean;
1540
1547
  confirmText: string;
1548
+ confirmBefore: () => Promise<void>;
1541
1549
  } & {} & {
1542
1550
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
1543
1551
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -2602,6 +2610,7 @@ export declare const EpSearchListPage: {
2602
2610
  disabled: import("el-plus/es/utils/props").IDisabled;
2603
2611
  confirm: boolean;
2604
2612
  confirmText: string;
2613
+ confirmBefore: () => Promise<void>;
2605
2614
  } & {} & {
2606
2615
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
2607
2616
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -2635,6 +2644,7 @@ export declare const EpSearchListPage: {
2635
2644
  disabled: import("el-plus/es/utils/props").IDisabled;
2636
2645
  confirm: boolean;
2637
2646
  confirmText: string;
2647
+ confirmBefore: () => Promise<void>;
2638
2648
  } & {} & {
2639
2649
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
2640
2650
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -2674,6 +2684,7 @@ export declare const EpSearchListPage: {
2674
2684
  disabled: import("el-plus/es/utils/props").IDisabled;
2675
2685
  confirm: boolean;
2676
2686
  confirmText: string;
2687
+ confirmBefore: () => Promise<void>;
2677
2688
  } & {} & {
2678
2689
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
2679
2690
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -2714,6 +2725,7 @@ export declare const EpSearchListPage: {
2714
2725
  disabled: import("el-plus/es/utils/props").IDisabled;
2715
2726
  confirm: boolean;
2716
2727
  confirmText: string;
2728
+ confirmBefore: () => Promise<void>;
2717
2729
  } & {} & {
2718
2730
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
2719
2731
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -2856,6 +2868,7 @@ export declare const EpSearchListPage: {
2856
2868
  disabled: import("el-plus/es/utils/props").IDisabled;
2857
2869
  confirm: boolean;
2858
2870
  confirmText: string;
2871
+ confirmBefore: () => Promise<void>;
2859
2872
  } & {} & {
2860
2873
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
2861
2874
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -2966,6 +2979,7 @@ export declare const EpSearchListPage: {
2966
2979
  disabled: import("el-plus/es/utils/props").IDisabled;
2967
2980
  confirm: boolean;
2968
2981
  confirmText: string;
2982
+ confirmBefore: () => Promise<void>;
2969
2983
  } & {} & {
2970
2984
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
2971
2985
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -3120,6 +3134,7 @@ export declare const EpSearchListPage: {
3120
3134
  disabled: import("el-plus/es/utils/props").IDisabled;
3121
3135
  confirm: boolean;
3122
3136
  confirmText: string;
3137
+ confirmBefore: () => Promise<void>;
3123
3138
  } & {} & {
3124
3139
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
3125
3140
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -3958,6 +3973,7 @@ export declare const EpSearchListPage: {
3958
3973
  disabled: import("el-plus/es/utils/props").IDisabled;
3959
3974
  confirm: boolean;
3960
3975
  confirmText: string;
3976
+ confirmBefore: () => Promise<void>;
3961
3977
  } & {} & {
3962
3978
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
3963
3979
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -4088,6 +4104,7 @@ export declare const EpSearchListPage: {
4088
4104
  disabled: import("el-plus/es/utils/props").IDisabled;
4089
4105
  confirm: boolean;
4090
4106
  confirmText: string;
4107
+ confirmBefore: () => Promise<void>;
4091
4108
  } & {} & {
4092
4109
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
4093
4110
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -4185,6 +4202,7 @@ export declare const EpSearchListPage: {
4185
4202
  disabled: import("el-plus/es/utils/props").IDisabled;
4186
4203
  confirm: boolean;
4187
4204
  confirmText: string;
4205
+ confirmBefore: () => Promise<void>;
4188
4206
  } & {} & {
4189
4207
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
4190
4208
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -5249,6 +5267,7 @@ export declare const EpSearchListPage: {
5249
5267
  disabled: import("el-plus/es/utils/props").IDisabled;
5250
5268
  confirm: boolean;
5251
5269
  confirmText: string;
5270
+ confirmBefore: () => Promise<void>;
5252
5271
  } & {} & {
5253
5272
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
5254
5273
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -5282,6 +5301,7 @@ export declare const EpSearchListPage: {
5282
5301
  disabled: import("el-plus/es/utils/props").IDisabled;
5283
5302
  confirm: boolean;
5284
5303
  confirmText: string;
5304
+ confirmBefore: () => Promise<void>;
5285
5305
  } & {} & {
5286
5306
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
5287
5307
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -5450,6 +5470,7 @@ export declare const EpSearchListPage: {
5450
5470
  disabled: import("el-plus/es/utils/props").IDisabled;
5451
5471
  confirm: boolean;
5452
5472
  confirmText: string;
5473
+ confirmBefore: () => Promise<void>;
5453
5474
  } & {} & {
5454
5475
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
5455
5476
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -5560,6 +5581,7 @@ export declare const EpSearchListPage: {
5560
5581
  disabled: import("el-plus/es/utils/props").IDisabled;
5561
5582
  confirm: boolean;
5562
5583
  confirmText: string;
5584
+ confirmBefore: () => Promise<void>;
5563
5585
  } & {} & {
5564
5586
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
5565
5587
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -6514,6 +6536,7 @@ export declare const EpSearchListPage: {
6514
6536
  disabled: import("el-plus/es/utils/props").IDisabled;
6515
6537
  confirm: boolean;
6516
6538
  confirmText: string;
6539
+ confirmBefore: () => Promise<void>;
6517
6540
  } & {} & {
6518
6541
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
6519
6542
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -6644,6 +6667,7 @@ export declare const EpSearchListPage: {
6644
6667
  disabled: import("el-plus/es/utils/props").IDisabled;
6645
6668
  confirm: boolean;
6646
6669
  confirmText: string;
6670
+ confirmBefore: () => Promise<void>;
6647
6671
  } & {} & {
6648
6672
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
6649
6673
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -7767,6 +7791,7 @@ export declare const EpSearchListPage: {
7767
7791
  disabled: import("el-plus/es/utils/props").IDisabled;
7768
7792
  confirm: boolean;
7769
7793
  confirmText: string;
7794
+ confirmBefore: () => Promise<void>;
7770
7795
  } & {} & {
7771
7796
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
7772
7797
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -7800,6 +7825,7 @@ export declare const EpSearchListPage: {
7800
7825
  disabled: import("el-plus/es/utils/props").IDisabled;
7801
7826
  confirm: boolean;
7802
7827
  confirmText: string;
7828
+ confirmBefore: () => Promise<void>;
7803
7829
  } & {} & {
7804
7830
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
7805
7831
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -162,6 +162,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
162
162
  disabled: import("el-plus/es/utils/props").IDisabled;
163
163
  confirm: boolean;
164
164
  confirmText: string;
165
+ confirmBefore: () => Promise<void>;
165
166
  } & {} & {
166
167
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
167
168
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -272,6 +273,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
272
273
  disabled: import("el-plus/es/utils/props").IDisabled;
273
274
  confirm: boolean;
274
275
  confirmText: string;
276
+ confirmBefore: () => Promise<void>;
275
277
  } & {} & {
276
278
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
277
279
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -1226,6 +1228,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
1226
1228
  disabled: import("el-plus/es/utils/props").IDisabled;
1227
1229
  confirm: boolean;
1228
1230
  confirmText: string;
1231
+ confirmBefore: () => Promise<void>;
1229
1232
  } & {} & {
1230
1233
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
1231
1234
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -1356,6 +1359,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
1356
1359
  disabled: import("el-plus/es/utils/props").IDisabled;
1357
1360
  confirm: boolean;
1358
1361
  confirmText: string;
1362
+ confirmBefore: () => Promise<void>;
1359
1363
  } & {} & {
1360
1364
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
1361
1365
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -2560,6 +2564,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
2560
2564
  disabled: import("el-plus/es/utils/props").IDisabled;
2561
2565
  confirm: boolean;
2562
2566
  confirmText: string;
2567
+ confirmBefore: () => Promise<void>;
2563
2568
  } & {} & {
2564
2569
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
2565
2570
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -2593,6 +2598,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
2593
2598
  disabled: import("el-plus/es/utils/props").IDisabled;
2594
2599
  confirm: boolean;
2595
2600
  confirmText: string;
2601
+ confirmBefore: () => Promise<void>;
2596
2602
  } & {} & {
2597
2603
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
2598
2604
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -39,6 +39,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
39
39
  disabled: import("el-plus/es/utils").IDisabled;
40
40
  confirm: boolean;
41
41
  confirmText: string;
42
+ confirmBefore: () => Promise<void>;
42
43
  } & {} & {
43
44
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
44
45
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -79,6 +80,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
79
80
  disabled: import("el-plus/es/utils").IDisabled;
80
81
  confirm: boolean;
81
82
  confirmText: string;
83
+ confirmBefore: () => Promise<void>;
82
84
  } & {} & {
83
85
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
84
86
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -160,6 +162,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
160
162
  disabled: import("el-plus/es/utils").IDisabled;
161
163
  confirm: boolean;
162
164
  confirmText: string;
165
+ confirmBefore: () => Promise<void>;
163
166
  } & {} & {
164
167
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
165
168
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -270,6 +273,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
270
273
  disabled: import("el-plus/es/utils").IDisabled;
271
274
  confirm: boolean;
272
275
  confirmText: string;
276
+ confirmBefore: () => Promise<void>;
273
277
  } & {} & {
274
278
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
275
279
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -1224,6 +1228,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
1224
1228
  disabled: import("el-plus/es/utils").IDisabled;
1225
1229
  confirm: boolean;
1226
1230
  confirmText: string;
1231
+ confirmBefore: () => Promise<void>;
1227
1232
  } & {} & {
1228
1233
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
1229
1234
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -1354,6 +1359,7 @@ export declare const useSearchListPage: (props: SearchListPageProps, config?: {}
1354
1359
  disabled: import("el-plus/es/utils").IDisabled;
1355
1360
  confirm: boolean;
1356
1361
  confirmText: string;
1362
+ confirmBefore: () => Promise<void>;
1357
1363
  } & {} & {
1358
1364
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
1359
1365
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
@@ -159,6 +159,13 @@ const useButtons = (props, { validate, resetFields, tableRef }) => {
159
159
  const rows = tableRef.value.elTableRef.getSelectionRows();
160
160
  clickFn(rows);
161
161
  };
162
+ if (item.confirmBefore) {
163
+ const confirmBeforeFn = item.confirmBefore;
164
+ item.confirmBefore = () => {
165
+ const rows = tableRef.value.elTableRef.getSelectionRows();
166
+ confirmBeforeFn(rows);
167
+ };
168
+ }
162
169
  }
163
170
  });
164
171
  const buttonsProps = computed(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"use-search-list-page.mjs","sources":["../../../../../../packages/components/search-list-page/src/use-search-list-page.ts"],"sourcesContent":["import { ref, onMounted, computed, useTemplateRef, nextTick } from 'vue'\nimport type { SearchListPageProps } from './search-list-page'\nimport type { ButtonsProps } from '@el-plus/components/buttons'\nimport type { FormInstance } from '@el-plus/components/form'\nimport type { TableInstance } from '@el-plus/components/table'\nimport type { FormItemProp } from 'element-plus'\nimport { mergeListByKey, getEnv } from '@el-plus/utils'\nimport { useLocale } from '@el-plus/hooks/use-locale'\n\nexport const useSearchListPage = (props: SearchListPageProps, config = {}) => {\n const { calcTableHeight, tableProps, tableRef } = useTable(props, config)\n const { formProps, validate, resetFields, formRef } = useForm(props, {\n calcTableHeight,\n })\n const { buttonsProps, searchButtons, search, reset } = useButtons(props, {\n validate,\n resetFields,\n tableRef,\n })\n return {\n formProps,\n tableProps,\n buttonsProps,\n searchButtons,\n search,\n reset,\n tableRef,\n formRef,\n beforeSearch: async () => {\n if (!formRef.value) {\n await nextTick()\n }\n await validate()\n }\n }\n}\nconst useTable = (props: SearchListPageProps, config) => {\n const instanceName = 'tableRef'\n const tableRef = useTemplateRef<TableInstance>(instanceName)\n const tableHeight = ref(window.innerHeight)\n const tableProps = computed(() => {\n return {\n ref: instanceName,\n columns: props.columns,\n showPagination: true,\n height: tableHeight.value,\n showIndexCol: props.showIndexCol,\n showSelectionCol: props.showSelectionCol,\n showSingleSelectionCol: props.showSingleSelectionCol,\n actionButtons: props.actionButtons,\n formatColumns: props.formatColumns,\n api: props.api,\n reqAfter: props.reqAfter,\n reqBefore: props.reqBefore,\n reqData: props.formData,\n customColumnModule: props.customColumnModule,\n customColumnApi: props.customColumnApi,\n customColumnSaveApi: props.customColumnSaveApi,\n minWidth: props.minWidth,\n actionColWidth: props.actionColWidth,\n ...props.tableProps,\n }\n })\n const calcTableHeight = () => {\n setTimeout(() => {\n const topHeight = (document.getElementById('top') as HTMLElement)\n .offsetHeight\n const middleHeight = (document.getElementById('middle') as HTMLElement)\n .offsetHeight\n let paginationHeight = 0\n if (tableProps.value.showPagination) {\n paginationHeight =\n (document.querySelector('.el-pagination') as HTMLElement)\n .offsetHeight + 12\n }\n const frameDistance =\n window.parent.openMenuSelect || getEnv() !== 'local' ? 40 : 48 + 40\n\n tableHeight.value =\n window.innerHeight -\n topHeight -\n middleHeight -\n paginationHeight -\n frameDistance -\n props.offsetTop!\n }, 0)\n }\n\n onMounted(calcTableHeight)\n return {\n tableRef,\n tableProps,\n calcTableHeight,\n }\n}\nconst useForm = (props: SearchListPageProps, { calcTableHeight }) => {\n const instanceName = 'formRef'\n const formRef = useTemplateRef<FormInstance>(instanceName)\n const formProps = computed(() => {\n return {\n ref: instanceName,\n formItemList: props.formItemList,\n isShowFold: true,\n modelValue: props.formData,\n ...props.formProps,\n onToggleStatus: () => {\n calcTableHeight()\n },\n }\n })\n // 校验\n const validate = () => {\n return formRef.value!.validate()\n }\n // 重置校验\n const resetFields = (props: FormItemProp) => {\n return formRef.value!.resetFields(props)\n }\n // 清理某个字段的表单验证信息\n const clearValidate = (props: FormItemProp) => {\n return formRef.value!.clearValidate(props)\n }\n return {\n formProps,\n formRef,\n validate,\n resetFields,\n clearValidate,\n }\n}\nconst useButtons = (\n props: SearchListPageProps,\n { validate, resetFields, tableRef },\n) => {\n const { t } = useLocale()\n const defaultButtons: ButtonsProps['list'] = [\n {\n name: t('ep.searchListPage.add'),\n prop: 'add',\n permission: props.name ? `${props.name}:ADD` : '',\n show: () => {\n return !!props.add\n },\n onClick: () => {\n props.add?.()\n },\n },\n // {\n // name: t('ep.searchListPage.templateDownload'),\n // prop: 'templateDownload',\n // permission: props.name ? `${props.name}:TEMPLATEDOWNLOAD` : '',\n // show: !!props.templateDownloadApi,\n // },\n // {\n // name: t('ep.searchListPage.import'),\n // prop: 'import',\n // permission: props.name ? `${props.name}:IMPORT` : '',\n // show: !!props.importApi,\n // },\n // {\n // name: t('ep.searchListPage.export'),\n // prop: 'export',\n // permission: props.name ? `${props.name}:EXPORT` : '',\n // show: !!props.exportApi,\n // },\n ]\n const list = mergeListByKey(defaultButtons, props.leftButtons)\n if (props.customColumnModule) {\n list.push({\n name: t('ep.customColumn.columnSettings'),\n prop: 'customColumn',\n type: 'primary',\n onClick: () => {\n tableRef.value.openCustomColumnDialog()\n },\n })\n }\n list.forEach((item) => {\n if (item.onClick) {\n const clickFn = item.onClick\n item.onClick = () => {\n // 增加选中项\n const rows = tableRef.value.elTableRef.getSelectionRows()\n clickFn(rows)\n }\n }\n })\n\n const buttonsProps = computed(() => {\n return {\n list,\n ...props.buttonsProps,\n }\n })\n // 搜索\n const search = async (isInitSearch = false) => {\n // await validate()\n tableRef.value.search(isInitSearch)\n }\n // 清空\n const reset = async () => {\n resetFields()\n search(true)\n }\n const searchButtons: ButtonsProps['list'] = [\n {\n name: t('ep.searchListPage.search'),\n type: 'primary',\n onClick: search.bind(null, true),\n },\n {\n name: t('ep.searchListPage.clear'),\n onClick: reset,\n },\n ]\n return {\n buttonsProps,\n searchButtons,\n search,\n reset,\n }\n}\n"],"names":["props"],"mappings":"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"}
1
+ {"version":3,"file":"use-search-list-page.mjs","sources":["../../../../../../packages/components/search-list-page/src/use-search-list-page.ts"],"sourcesContent":["import { ref, onMounted, computed, useTemplateRef, nextTick } from 'vue'\nimport type { SearchListPageProps } from './search-list-page'\nimport type { ButtonsProps } from '@el-plus/components/buttons'\nimport type { FormInstance } from '@el-plus/components/form'\nimport type { TableInstance } from '@el-plus/components/table'\nimport type { FormItemProp } from 'element-plus'\nimport { mergeListByKey, getEnv } from '@el-plus/utils'\nimport { useLocale } from '@el-plus/hooks/use-locale'\n\nexport const useSearchListPage = (props: SearchListPageProps, config = {}) => {\n const { calcTableHeight, tableProps, tableRef } = useTable(props, config)\n const { formProps, validate, resetFields, formRef } = useForm(props, {\n calcTableHeight,\n })\n const { buttonsProps, searchButtons, search, reset } = useButtons(props, {\n validate,\n resetFields,\n tableRef,\n })\n return {\n formProps,\n tableProps,\n buttonsProps,\n searchButtons,\n search,\n reset,\n tableRef,\n formRef,\n beforeSearch: async () => {\n if (!formRef.value) {\n await nextTick()\n }\n await validate()\n }\n }\n}\nconst useTable = (props: SearchListPageProps, config) => {\n const instanceName = 'tableRef'\n const tableRef = useTemplateRef<TableInstance>(instanceName)\n const tableHeight = ref(window.innerHeight)\n const tableProps = computed(() => {\n return {\n ref: instanceName,\n columns: props.columns,\n showPagination: true,\n height: tableHeight.value,\n showIndexCol: props.showIndexCol,\n showSelectionCol: props.showSelectionCol,\n showSingleSelectionCol: props.showSingleSelectionCol,\n actionButtons: props.actionButtons,\n formatColumns: props.formatColumns,\n api: props.api,\n reqAfter: props.reqAfter,\n reqBefore: props.reqBefore,\n reqData: props.formData,\n customColumnModule: props.customColumnModule,\n customColumnApi: props.customColumnApi,\n customColumnSaveApi: props.customColumnSaveApi,\n minWidth: props.minWidth,\n actionColWidth: props.actionColWidth,\n ...props.tableProps,\n }\n })\n const calcTableHeight = () => {\n setTimeout(() => {\n const topHeight = (document.getElementById('top') as HTMLElement)\n .offsetHeight\n const middleHeight = (document.getElementById('middle') as HTMLElement)\n .offsetHeight\n let paginationHeight = 0\n if (tableProps.value.showPagination) {\n paginationHeight =\n (document.querySelector('.el-pagination') as HTMLElement)\n .offsetHeight + 12\n }\n const frameDistance =\n window.parent.openMenuSelect || getEnv() !== 'local' ? 40 : 48 + 40\n\n tableHeight.value =\n window.innerHeight -\n topHeight -\n middleHeight -\n paginationHeight -\n frameDistance -\n props.offsetTop!\n }, 0)\n }\n\n onMounted(calcTableHeight)\n return {\n tableRef,\n tableProps,\n calcTableHeight,\n }\n}\nconst useForm = (props: SearchListPageProps, { calcTableHeight }) => {\n const instanceName = 'formRef'\n const formRef = useTemplateRef<FormInstance>(instanceName)\n const formProps = computed(() => {\n return {\n ref: instanceName,\n formItemList: props.formItemList,\n isShowFold: true,\n modelValue: props.formData,\n ...props.formProps,\n onToggleStatus: () => {\n calcTableHeight()\n },\n }\n })\n // 校验\n const validate = () => {\n return formRef.value!.validate()\n }\n // 重置校验\n const resetFields = (props: FormItemProp) => {\n return formRef.value!.resetFields(props)\n }\n // 清理某个字段的表单验证信息\n const clearValidate = (props: FormItemProp) => {\n return formRef.value!.clearValidate(props)\n }\n return {\n formProps,\n formRef,\n validate,\n resetFields,\n clearValidate,\n }\n}\nconst useButtons = (\n props: SearchListPageProps,\n { validate, resetFields, tableRef },\n) => {\n const { t } = useLocale()\n const defaultButtons: ButtonsProps['list'] = [\n {\n name: t('ep.searchListPage.add'),\n prop: 'add',\n permission: props.name ? `${props.name}:ADD` : '',\n show: () => {\n return !!props.add\n },\n onClick: () => {\n props.add?.()\n },\n },\n // {\n // name: t('ep.searchListPage.templateDownload'),\n // prop: 'templateDownload',\n // permission: props.name ? `${props.name}:TEMPLATEDOWNLOAD` : '',\n // show: !!props.templateDownloadApi,\n // },\n // {\n // name: t('ep.searchListPage.import'),\n // prop: 'import',\n // permission: props.name ? `${props.name}:IMPORT` : '',\n // show: !!props.importApi,\n // },\n // {\n // name: t('ep.searchListPage.export'),\n // prop: 'export',\n // permission: props.name ? `${props.name}:EXPORT` : '',\n // show: !!props.exportApi,\n // },\n ]\n const list = mergeListByKey(defaultButtons, props.leftButtons)\n if (props.customColumnModule) {\n list.push({\n name: t('ep.customColumn.columnSettings'),\n prop: 'customColumn',\n type: 'primary',\n onClick: () => {\n tableRef.value.openCustomColumnDialog()\n },\n })\n }\n list.forEach((item) => {\n if (item.onClick) {\n const clickFn = item.onClick\n item.onClick = () => {\n // 增加选中项\n const rows = tableRef.value.elTableRef.getSelectionRows()\n clickFn(rows)\n }\n // beforeConfirm 校验\n if (item.confirmBefore) {\n const confirmBeforeFn = item.confirmBefore\n item.confirmBefore = () => {\n // 增加选中项\n const rows = tableRef.value.elTableRef.getSelectionRows()\n confirmBeforeFn(rows)\n }\n }\n }\n })\n\n const buttonsProps = computed(() => {\n return {\n list,\n ...props.buttonsProps,\n }\n })\n // 搜索\n const search = async (isInitSearch = false) => {\n // await validate()\n tableRef.value.search(isInitSearch)\n }\n // 清空\n const reset = async () => {\n resetFields()\n search(true)\n }\n const searchButtons: ButtonsProps['list'] = [\n {\n name: t('ep.searchListPage.search'),\n type: 'primary',\n onClick: search.bind(null, true),\n },\n {\n name: t('ep.searchListPage.clear'),\n onClick: reset,\n },\n ]\n return {\n buttonsProps,\n searchButtons,\n search,\n reset,\n }\n}\n"],"names":["props"],"mappings":"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"}