el-plus 0.0.76 → 0.0.78

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 (76) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +112 -71
  4. package/dist/index.full.min.js +4 -4
  5. package/dist/index.full.min.js.map +1 -1
  6. package/dist/index.full.min.mjs +4 -4
  7. package/dist/index.full.min.mjs.map +1 -1
  8. package/dist/index.full.mjs +113 -72
  9. package/es/components/attachment/index.d.ts +24 -0
  10. package/es/components/attachment/src/attachment.d.ts +8 -0
  11. package/es/components/attachment/src/attachment.mjs +8 -0
  12. package/es/components/attachment/src/attachment.mjs.map +1 -1
  13. package/es/components/attachment/src/attachment.vue.d.ts +15 -0
  14. package/es/components/attachment/src/attachment.vue2.mjs +10 -5
  15. package/es/components/attachment/src/attachment.vue2.mjs.map +1 -1
  16. package/es/components/attachment/src/use-attachment.d.ts +14 -105
  17. package/es/components/attachment/src/use-attachment.mjs +31 -30
  18. package/es/components/attachment/src/use-attachment.mjs.map +1 -1
  19. package/es/components/header/index.d.ts +6 -0
  20. package/es/components/header/src/header.vue.d.ts +2 -0
  21. package/es/components/search-list-page/index.d.ts +42 -15
  22. package/es/components/search-list-page/src/search-list-page.vue.d.ts +14 -5
  23. package/es/components/search-list-page/src/use-search-list-page.d.ts +14 -5
  24. package/es/components/table/index.d.ts +15 -3
  25. package/es/components/table/src/table.d.ts +4 -1
  26. package/es/components/table/src/table.mjs +4 -0
  27. package/es/components/table/src/table.mjs.map +1 -1
  28. package/es/components/table/src/table.vue.d.ts +9 -2
  29. package/es/components/table/src/table.vue2.mjs +17 -6
  30. package/es/components/table/src/table.vue2.mjs.map +1 -1
  31. package/es/components/table/src/use-table.mjs +1 -1
  32. package/es/components/table/src/use-table.mjs.map +1 -1
  33. package/es/components/uni-vue/index.d.ts +23 -3
  34. package/es/components/uni-vue/src/uni-vue.vue.d.ts +10 -2
  35. package/es/components/uni-vue/src/uni-vue.vue2.mjs +4 -2
  36. package/es/components/uni-vue/src/uni-vue.vue2.mjs.map +1 -1
  37. package/es/components/uni-vue/src/use-uni-vue.d.ts +1 -1
  38. package/es/components/uni-vue/src/use-uni-vue.mjs +39 -27
  39. package/es/components/uni-vue/src/use-uni-vue.mjs.map +1 -1
  40. package/es/package.json.mjs +1 -1
  41. package/lib/components/attachment/index.d.ts +24 -0
  42. package/lib/components/attachment/src/attachment.d.ts +8 -0
  43. package/lib/components/attachment/src/attachment.js +8 -0
  44. package/lib/components/attachment/src/attachment.js.map +1 -1
  45. package/lib/components/attachment/src/attachment.vue.d.ts +15 -0
  46. package/lib/components/attachment/src/attachment.vue2.js +11 -6
  47. package/lib/components/attachment/src/attachment.vue2.js.map +1 -1
  48. package/lib/components/attachment/src/use-attachment.d.ts +14 -105
  49. package/lib/components/attachment/src/use-attachment.js +31 -30
  50. package/lib/components/attachment/src/use-attachment.js.map +1 -1
  51. package/lib/components/header/index.d.ts +6 -0
  52. package/lib/components/header/src/header.vue.d.ts +2 -0
  53. package/lib/components/search-list-page/index.d.ts +42 -15
  54. package/lib/components/search-list-page/src/search-list-page.vue.d.ts +14 -5
  55. package/lib/components/search-list-page/src/use-search-list-page.d.ts +14 -5
  56. package/lib/components/table/index.d.ts +15 -3
  57. package/lib/components/table/src/table.d.ts +4 -1
  58. package/lib/components/table/src/table.js +4 -0
  59. package/lib/components/table/src/table.js.map +1 -1
  60. package/lib/components/table/src/table.vue.d.ts +9 -2
  61. package/lib/components/table/src/table.vue2.js +17 -6
  62. package/lib/components/table/src/table.vue2.js.map +1 -1
  63. package/lib/components/table/src/use-table.js +1 -1
  64. package/lib/components/table/src/use-table.js.map +1 -1
  65. package/lib/components/uni-vue/index.d.ts +23 -3
  66. package/lib/components/uni-vue/src/uni-vue.vue.d.ts +10 -2
  67. package/lib/components/uni-vue/src/uni-vue.vue2.js +4 -2
  68. package/lib/components/uni-vue/src/uni-vue.vue2.js.map +1 -1
  69. package/lib/components/uni-vue/src/use-uni-vue.d.ts +1 -1
  70. package/lib/components/uni-vue/src/use-uni-vue.js +38 -26
  71. package/lib/components/uni-vue/src/use-uni-vue.js.map +1 -1
  72. package/lib/package.json.js +1 -1
  73. package/package.json +1 -1
  74. package/theme-chalk/header.css +1 -1
  75. package/theme-chalk/index.css +1 -1
  76. package/theme-chalk/src/header.scss +8 -1
@@ -1 +1 @@
1
- {"version":3,"file":"use-uni-vue.mjs","sources":["../../../../../../packages/components/uni-vue/src/use-uni-vue.ts"],"sourcesContent":["import { onMounted, ref, useAttrs, useTemplateRef, watch } from 'vue'\nimport { http } from '@el-plus/utils/http'\nimport Vue2 from 'vue2'\nimport VueRouter3 from 'vue-router3'\nimport { componentType } from './uni-vue'\nimport axios from 'axios'\nimport { ElMessage, ElLoading } from 'element-plus'\nexport const useUniVue = (props) => {\n const uniVue = useTemplateRef<HTMLElement>('uniVue')\n const { type } = props\n const loading = ref(true)\n const isAddress = type === 'address'\n const isBpm = type === 'bpm'\n // 是否需要加载静态资源\n const isLoadStatic = componentType.indexOf(type) > -1\n const attrs = useAttrs()\n const setupWindow = () => {\n Vue2.use(VueRouter3)\n if (!window.Vue) {\n window.Vue = Vue2\n }\n // 地址\n if (isAddress) {\n if (!window.axios) {\n window.axios = axios\n }\n if (!window.ElementUI) {\n window.ElementUI = {\n Message: ElMessage,\n Loading: ElLoading,\n }\n }\n }\n }\n setupWindow()\n const prepareVueAttributes = () => {\n const events = {}\n const _props = {}\n const modelProps = {}\n // console.log(attrs)\n\n Object.keys(attrs).forEach((key) => {\n if (key.startsWith('on')) {\n let eventName = key.slice(2) // 去掉 'on' 前缀\n if (eventName.startsWith('Update:')) {\n // 处理 v-model:xxx 事件,转换为 update:xxx\n // 例如:onUpdate:modelValue -> update:modelValue、onUpdate:dialogFormData -> update:dialogFormData\n eventName = 'update:' + eventName.slice(7)\n \n // 如果是v-model:value, 转换为input\n if (eventName === 'update:value') {\n eventName = 'input'\n }\n } else {\n // 将驼峰命名转换为短横线命名\n // 例如: onInitComplete-> init-complete (因为测试发现用initComplete不生效)\n eventName = eventName.replace(/([A-Z])/g, '-$1').toLowerCase()\n // 删除第一位的-\n eventName = eventName.slice(1)\n }\n events[eventName] = attrs[key]\n } else {\n _props[key] = attrs[key]\n }\n })\n console.log(events, _props, 9999)\n\n return {\n on: events,\n props: _props,\n }\n }\n\n const cdn = '//j01.hongxinshop.com/'\n const getStaticJsUrl = () => {\n switch (type) {\n case 'bpm':\n return `${cdn}bpm-common/common/index.umd.min.js`\n case 'address':\n return `./hx-address.js`\n return `${cdn}address/static/hx-address.js`\n default:\n return ''\n }\n }\n const getStaticCssUrl = () => {\n switch (type) {\n case 'bpm':\n return `/bpm-common/common/index.css`\n case 'address':\n return `/address/static/hx-address.css`\n default:\n return ''\n }\n }\n const loadStaticJsResource = async () => {\n const promises: Promise<void>[] = []\n\n // 检查并加载element-ui.js(非bpm类型)\n if (!isBpm && !window.ElementUIComponents) {\n await new Promise((resolve, reject) => {\n const script = document.createElement('script')\n script.src = '/element-ui.js'\n script.onload = resolve\n script.onerror = reject\n document.body.appendChild(script)\n })\n }\n\n // 检查并加载原有的JS资源\n let globalName\n if (isAddress) {\n globalName = 'hxAddress'\n }\n if (isBpm) {\n globalName = 'index'\n }\n\n if (globalName && !window[globalName]) {\n promises.push(\n new Promise((resolve, reject) => {\n const script = document.createElement('script')\n script.src = getStaticJsUrl()\n script.onload = () => resolve()\n script.onerror = reject\n document.body.appendChild(script)\n }),\n )\n }\n\n return Promise.all(promises)\n }\n const loadStaticCssResource = async () => {\n const cssPromises: Promise<string>[] = []\n\n // 为非bpm类型加载element-ui.css\n if (!isBpm) {\n cssPromises.push(\n http\n .request<string>('/element-ui.css', {\n responseReturn: 'raw',\n baseURL: '',\n })\n .then((res) => res.data),\n )\n }\n\n // 加载原有的CSS资源\n const staticCssUrl = getStaticCssUrl()\n if (staticCssUrl) {\n cssPromises.push(\n http\n .request<string>(staticCssUrl, {\n responseReturn: 'raw',\n })\n .then((res) => res.data),\n )\n }\n\n const cssContents = await Promise.all(cssPromises)\n return cssContents.join('\\n')\n }\n let instance\n const setupInstance = async () => {\n if (instance) {\n return\n }\n // if (import.meta.hot) return // 每次热更新都会执行,在这里阻止,防止每次热更新页面都会重复插入组件\n const el = uniVue.value // 选择一个宿主元素\n const shadowRoot = el!.attachShadow({ mode: 'open' }) // 创建一个开放模式的 shadow root\n const container = document.createElement('div')\n if (isLoadStatic) {\n try {\n loading.value = true\n const [_res1, css] = await Promise.all([\n loadStaticJsResource(),\n loadStaticCssResource(),\n ])\n const style = document.createElement('style')\n style.textContent = css\n shadowRoot.appendChild(style)\n } catch (error) {\n console.log(error)\n } finally {\n loading.value = false\n }\n }\n shadowRoot.appendChild(container)\n // console.log( prepareVueAttributes());\n\n instance = new Vue2({\n el: container,\n // @ts-expect-error 缺少类型定义\n router: new VueRouter3(),\n render: (h) => h(props.name, {\n props: {\n ...prepareVueAttributes().props,\n },\n on: {\n ...prepareVueAttributes().on,\n // 'update:dialogFormData': (newVal) => {\n // console.log(newVal, 'update:dialogFormData');\n // },\n // 'update:visible': (newVal) => {\n // console.log(newVal, 'update:visible');\n // },\n 'input': (newVal) => {\n console.log(newVal, 'input');\n },\n }\n }),\n })\n }\n\n // 监听 attrs中通过v-model绑定的数据(onUpdate:)变化,更新 Vue 2 组件\n Object.keys(attrs).forEach((key) => {\n if (key.startsWith('onUpdate:')) {\n const propName = key.slice(9)\n watch(\n () => attrs[propName],\n (newVal) => {\n \n if (instance) {\n try {\n console.log(newVal, 'newVal', propName, instance);\n instance.$children[0][propName] = newVal\n } catch (e) {\n // 忽略更新异常\n }\n }\n },\n {\n immediate: true,\n deep: true,\n },\n )\n }\n })\n\n onMounted(() => {\n setupInstance()\n })\n\n return {\n loading,\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-uni-vue.mjs","sources":["../../../../../../packages/components/uni-vue/src/use-uni-vue.ts"],"sourcesContent":["import { onMounted, ref, useAttrs,nextTick, useTemplateRef, watch } from 'vue'\nimport { http } from '@el-plus/utils/http'\nimport Vue2 from 'vue2'\nimport VueRouter3 from 'vue-router3'\nimport { componentType } from './uni-vue'\nimport axios from 'axios'\nimport { ElMessage, ElLoading } from 'element-plus'\n\nexport const useUniVue = (props, emit) => {\n const uniVue = useTemplateRef<HTMLElement>('uniVue')\n const { type } = props\n const loading = ref(true)\n const isAddress = type === 'address'\n const isBpm = type === 'bpm'\n // 是否需要加载静态资源\n const isLoadStatic = componentType.indexOf(type) > -1\n const attrs = useAttrs()\n const setupWindow = () => {\n Vue2.use(VueRouter3)\n if (!window.Vue) {\n window.Vue = Vue2\n }\n // 地址\n if (isAddress) {\n if (!window.axios) {\n window.axios = axios\n }\n if (!window.ElementUI) {\n window.ElementUI = {\n Message: ElMessage,\n Loading: ElLoading,\n }\n }\n }\n }\n setupWindow()\n const prepareVueAttributes = () => {\n const events = {}\n const _props = {} as Record<string, any>\n Object.keys(attrs).forEach((key) => {\n if (key.startsWith('on')) {\n let eventName = key.slice(2) // 去掉 'on' 前缀\n if (eventName.startsWith('Update:')) {\n // 处理 v-model:xxx 事件,转换为 update:xxx\n // 例如:onUpdate:modelValue -> update:modelValue、onUpdate:dialogFormData -> update:dialogFormData\n eventName = 'update:' + eventName.slice(7)\n\n // 如果是v-model, 转换为vue2对应的input\n if (eventName === 'update:modelValue') {\n eventName = 'input'\n }\n } else {\n // 将驼峰命名转换为短横线命名\n // 例如: onInitComplete-> init-complete (因为测试发现用initComplete不生效)\n eventName = eventName.replace(/([A-Z])/g, '-$1').toLowerCase()\n // 删除第一位的-\n eventName = eventName.slice(1)\n }\n events[eventName] = attrs[key]\n } else {\n if (key === 'modelValue') {\n // 处理 v-model转换为vue2的value\n _props.value = attrs[key] // eslint-disable-line\n } else {\n _props[key] = attrs[key]\n\n }\n }\n })\n return {\n on: events,\n props: _props,\n }\n }\n\n const cdn = '//j01.hongxinshop.com/'\n const getStaticJsUrl = () => {\n switch (type) {\n case 'bpm':\n return `${cdn}bpm-common/common/index.umd.min.js`\n case 'address':\n return `http://localhost:8001/dist/hx-address.js`\n return `./hx-address.js`\n return `${cdn}address/static/hx-address.js`\n default:\n return ''\n }\n }\n const getStaticCssUrl = () => {\n switch (type) {\n case 'bpm':\n return `/bpm-common/common/index.css`\n case 'address':\n return `/address/static/hx-address.css`\n default:\n return ''\n }\n }\n const loadStaticJsResource = async () => {\n const promises: Promise<void>[] = []\n\n // 检查并加载element-ui.js(非bpm类型)\n if (!isBpm && !window.ElementUIComponents) {\n await new Promise((resolve, reject) => {\n const script = document.createElement('script')\n script.src = '/element-ui.js'\n script.onload = resolve\n script.onerror = reject\n document.body.appendChild(script)\n })\n }\n\n // 检查并加载原有的JS资源\n let globalName\n if (isAddress) {\n globalName = 'hxAddress'\n }\n if (isBpm) {\n globalName = 'index'\n }\n\n if (globalName && !window[globalName]) {\n promises.push(\n new Promise((resolve, reject) => {\n const script = document.createElement('script')\n script.src = getStaticJsUrl()\n script.onload = () => resolve()\n script.onerror = reject\n document.body.appendChild(script)\n }),\n )\n }\n\n return Promise.all(promises)\n }\n const loadStaticCssResource = async () => {\n const cssPromises: Promise<string>[] = []\n\n // 为非bpm类型加载element-ui.css\n if (!isBpm) {\n cssPromises.push(\n http\n .request<string>('/element-ui.css', {\n responseReturn: 'raw',\n baseURL: '',\n })\n .then((res) => res.data),\n )\n }\n\n // 加载原有的CSS资源\n const staticCssUrl = getStaticCssUrl()\n if (staticCssUrl) {\n cssPromises.push(\n http\n .request<string>(staticCssUrl, {\n responseReturn: 'raw',\n })\n .then((res) => res.data),\n )\n }\n\n const cssContents = await Promise.all(cssPromises)\n return cssContents.join('\\n')\n }\n let instance\n const setupInstance = async () => {\n if (instance) {\n return\n }\n // if (import.meta.hot) return // 每次热更新都会执行,在这里阻止,防止每次热更新页面都会重复插入组件\n const el = uniVue.value // 选择一个宿主元素\n const shadowRoot = el!.attachShadow({ mode: 'open' }) // 创建一个开放模式的 shadow root\n const container = document.createElement('div')\n if (isLoadStatic) {\n try {\n loading.value = true\n const [_res1, css] = await Promise.all([\n loadStaticJsResource(),\n loadStaticCssResource(),\n ])\n const style = document.createElement('style')\n style.textContent = css\n shadowRoot.appendChild(style)\n } catch (error) {\n console.log(error)\n } finally {\n loading.value = false\n }\n }\n shadowRoot.appendChild(container)\n console.log(prepareVueAttributes());\n\n // 准备基础事件处理\n const baseEvents = {\n ...prepareVueAttributes().on,\n 'input': (newVal) => {\n console.log(newVal, 'input', props.name);\n emit('update:modelValue', newVal)\n },\n 'update:dialogFormData': (newVal) => {\n console.log(newVal, 'update:dialogFormData');\n emit('update:dialogFormData', newVal)\n },\n 'update:visible': (newVal) => {\n console.log(newVal, 'update:visible');\n emit('update:visible', newVal)\n },\n }\n\n // 创建Vue2实例\n instance = new Vue2({\n el: container,\n // @ts-expect-error 缺少类型定义\n router: new VueRouter3(),\n render: (h) => h(props.name, {\n props: {\n ...prepareVueAttributes().props,\n },\n on: baseEvents\n }),\n })\n\n // // 监听所有可能的update:事件\n // instance.$on(/^update:/, (eventName, newVal) => {\n // console.log(eventName, newVal, 'dynamic update event');\n // emit(eventName, newVal)\n // })\n }\n\n // 监听 attrs中非事件属性的变化,更新 Vue 2 组件\n Object.keys(attrs).forEach((key) => {\n console.log(key, 8);\n if (!key.startsWith('on')) {\n watch(\n () => attrs[key],\n (newVal) => {\n // if (instance) {\n nextTick(() => {\n try {\n console.log(props.name, newVal, 'watch', key, instance);\n // v-model转换为vue2的value\n let vue2Prop = key\n if (key === 'modelValue') {\n vue2Prop = 'value'\n }\n instance.$children[0][vue2Prop] = newVal\n } catch (e) {\n // 忽略更新异常\n }\n })\n // }\n },\n {\n deep: true,\n immediate: true,\n },\n )\n }\n })\n\n onMounted(() => {\n setupInstance()\n })\n\n return {\n loading,\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- var version = "0.0.76";
1
+ var version = "0.0.78";
2
2
 
3
3
  export { version };
4
4
  //# sourceMappingURL=package.json.mjs.map
@@ -17,6 +17,10 @@ export declare const EpAttachment: {
17
17
  }>[]>;
18
18
  readonly default: () => never[];
19
19
  };
20
+ rowKey: {
21
+ readonly type: StringConstructor;
22
+ readonly default: "fileId";
23
+ };
20
24
  mode: {
21
25
  readonly type: import("vue").PropType<import("el-plus/es/hooks/use-navigation").PageMode>;
22
26
  };
@@ -39,6 +43,9 @@ export declare const EpAttachment: {
39
43
  beforeAdd: {
40
44
  readonly type: import("vue").PropType<(fileItem: Record<string, any>) => boolean>;
41
45
  };
46
+ permission: {
47
+ readonly type: import("vue").PropType<import("el-plus/es/directives/permission/index").Permission>;
48
+ };
42
49
  modelValue: {
43
50
  type: import("vue").PropType<any[]>;
44
51
  };
@@ -63,6 +70,7 @@ export declare const EpAttachment: {
63
70
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
64
71
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
65
72
  }>[];
73
+ rowKey: string;
66
74
  openType: "dialog" | "normal";
67
75
  isType: boolean;
68
76
  isNote: boolean;
@@ -92,6 +100,10 @@ export declare const EpAttachment: {
92
100
  }>[]>;
93
101
  readonly default: () => never[];
94
102
  };
103
+ rowKey: {
104
+ readonly type: StringConstructor;
105
+ readonly default: "fileId";
106
+ };
95
107
  mode: {
96
108
  readonly type: import("vue").PropType<import("el-plus/es/hooks/use-navigation").PageMode>;
97
109
  };
@@ -114,6 +126,9 @@ export declare const EpAttachment: {
114
126
  beforeAdd: {
115
127
  readonly type: import("vue").PropType<(fileItem: Record<string, any>) => boolean>;
116
128
  };
129
+ permission: {
130
+ readonly type: import("vue").PropType<import("el-plus/es/directives/permission/index").Permission>;
131
+ };
117
132
  modelValue: {
118
133
  type: import("vue").PropType<any[]>;
119
134
  };
@@ -136,6 +151,7 @@ export declare const EpAttachment: {
136
151
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
137
152
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
138
153
  }>[];
154
+ rowKey: string;
139
155
  openType: "dialog" | "normal";
140
156
  isType: boolean;
141
157
  isNote: boolean;
@@ -149,6 +165,10 @@ export declare const EpAttachment: {
149
165
  readonly type: import("vue").PropType<import("el-plus/es/index").TableColumn[]>;
150
166
  readonly default: () => never[];
151
167
  };
168
+ rowKey: {
169
+ readonly type: StringConstructor;
170
+ readonly default: "fileId";
171
+ };
152
172
  mode: {
153
173
  readonly type: import("vue").PropType<import("el-plus/es/hooks/use-navigation").PageMode>;
154
174
  };
@@ -171,6 +191,9 @@ export declare const EpAttachment: {
171
191
  beforeAdd: {
172
192
  readonly type: import("vue").PropType<(fileItem: Record<string, any>) => boolean>;
173
193
  };
194
+ permission: {
195
+ readonly type: import("vue").PropType<import("el-plus/es/directives/permission/index").Permission>;
196
+ };
174
197
  modelValue: {
175
198
  type: import("vue").PropType<any[]>;
176
199
  };
@@ -195,6 +218,7 @@ export declare const EpAttachment: {
195
218
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
196
219
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
197
220
  }>[];
221
+ rowKey: string;
198
222
  openType: "dialog" | "normal";
199
223
  isType: boolean;
200
224
  isNote: boolean;
@@ -1,10 +1,15 @@
1
1
  import type { ExtractPublicPropTypes, PropType } from 'vue';
2
2
  import type { PageMode } from 'el-plus/es/hooks/use-navigation';
3
+ import type { Permission } from 'el-plus/es/directives/permission';
3
4
  export declare const attachmentProps: {
4
5
  readonly formatColumns: {
5
6
  readonly type: PropType<import("el-plus/es/components/table").TableColumn[]>;
6
7
  readonly default: () => never[];
7
8
  };
9
+ readonly rowKey: {
10
+ readonly type: StringConstructor;
11
+ readonly default: "fileId";
12
+ };
8
13
  readonly mode: {
9
14
  readonly type: PropType<PageMode>;
10
15
  };
@@ -27,5 +32,8 @@ export declare const attachmentProps: {
27
32
  readonly beforeAdd: {
28
33
  readonly type: PropType<(fileItem: Record<string, any>) => boolean>;
29
34
  };
35
+ readonly permission: {
36
+ readonly type: PropType<Permission>;
37
+ };
30
38
  };
31
39
  export type AttachmentProps = ExtractPublicPropTypes<typeof attachmentProps>;
@@ -7,6 +7,10 @@ const attachmentProps = {
7
7
  formatColumns: {
8
8
  ...table.tableProps.formatColumns
9
9
  },
10
+ rowKey: {
11
+ type: String,
12
+ default: "fileId"
13
+ },
10
14
  // 页面模式
11
15
  mode: {
12
16
  type: String
@@ -34,6 +38,10 @@ const attachmentProps = {
34
38
  // 添加前校验
35
39
  beforeAdd: {
36
40
  type: Function
41
+ },
42
+ // 权限
43
+ permission: {
44
+ type: String
37
45
  }
38
46
  };
39
47
 
@@ -1 +1 @@
1
- {"version":3,"file":"attachment.js","sources":["../../../../../../packages/components/attachment/src/attachment.ts"],"sourcesContent":["import type { ExtractPublicPropTypes, PropType } from 'vue'\nimport { tableProps } from '@el-plus/components/table'\nimport type { PageMode } from '@el-plus/hooks/use-navigation'\n\nexport const attachmentProps = {\n // 格式化列\n formatColumns: {\n ...tableProps.formatColumns,\n },\n // 页面模式\n mode: {\n type: String as PropType<PageMode>,\n },\n // 展示模式\n openType: {\n type: String as PropType<'dialog' | 'normal'>,\n default: 'dialog',\n },\n // 是否需要类型\n isType: {\n type: Boolean,\n default: true,\n },\n // 是否需要备注\n isNote: {\n type: Boolean,\n default: false,\n },\n // 是否需要打开弹窗按钮\n isShowOpenDialogButton: {\n type: Boolean,\n default: false,\n },\n // 添加前校验\n beforeAdd: {\n type: Function as PropType<(fileItem: Record<string, any>) => boolean>,\n },\n \n} as const\nexport type AttachmentProps = ExtractPublicPropTypes<typeof attachmentProps>\n"],"names":["tableProps"],"mappings":";;;;AAIO,MAAM,eAAA,GAAkB;AAAA;AAAA,EAE7B,aAAA,EAAe;AAAA,IACb,GAAGA,gBAAA,CAAW;AAAA,GAChB;AAAA;AAAA,EAEA,IAAA,EAAM;AAAA,IACJ,IAAA,EAAM;AAAA,GACR;AAAA;AAAA,EAEA,QAAA,EAAU;AAAA,IACR,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,MAAA,EAAQ;AAAA,IACN,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,MAAA,EAAQ;AAAA,IACN,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,sBAAA,EAAwB;AAAA,IACtB,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,SAAA,EAAW;AAAA,IACT,IAAA,EAAM;AAAA;AAGV;;;;"}
1
+ {"version":3,"file":"attachment.js","sources":["../../../../../../packages/components/attachment/src/attachment.ts"],"sourcesContent":["import type { ExtractPublicPropTypes, PropType } from 'vue'\nimport { tableProps } from '@el-plus/components/table'\nimport type { PageMode } from '@el-plus/hooks/use-navigation'\nimport type {Permission} from '@el-plus/directives/permission'\nexport const attachmentProps = {\n // 格式化列\n formatColumns: {\n ...tableProps.formatColumns,\n },\n rowKey: {\n type: String,\n default: 'fileId',\n },\n // 页面模式\n mode: {\n type: String as PropType<PageMode>,\n },\n // 展示模式\n openType: {\n type: String as PropType<'dialog' | 'normal'>,\n default: 'dialog',\n },\n // 是否需要类型\n isType: {\n type: Boolean,\n default: true,\n },\n // 是否需要备注\n isNote: {\n type: Boolean,\n default: false,\n },\n // 是否需要打开弹窗按钮\n isShowOpenDialogButton: {\n type: Boolean,\n default: false,\n },\n // 添加前校验\n beforeAdd: {\n type: Function as PropType<(fileItem: Record<string, any>) => boolean>,\n },\n // 权限\n permission: {\n type: String as PropType<Permission>,\n },\n\n} as const\nexport type AttachmentProps = ExtractPublicPropTypes<typeof attachmentProps>\n"],"names":["tableProps"],"mappings":";;;;AAIO,MAAM,eAAA,GAAkB;AAAA;AAAA,EAE7B,aAAA,EAAe;AAAA,IACb,GAAGA,gBAAA,CAAW;AAAA,GAChB;AAAA,EACA,MAAA,EAAQ;AAAA,IACN,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,IAAA,EAAM;AAAA,IACJ,IAAA,EAAM;AAAA,GACR;AAAA;AAAA,EAEA,QAAA,EAAU;AAAA,IACR,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,MAAA,EAAQ;AAAA,IACN,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,MAAA,EAAQ;AAAA,IACN,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,sBAAA,EAAwB;AAAA,IACtB,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA,EAEA,SAAA,EAAW;AAAA,IACT,IAAA,EAAM;AAAA,GACR;AAAA;AAAA,EAEA,UAAA,EAAY;AAAA,IACV,IAAA,EAAM;AAAA;AAGV;;;;"}
@@ -3,6 +3,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
3
3
  readonly type: import("vue").PropType<import("el-plus/es/components/table").TableColumn[]>;
4
4
  readonly default: () => never[];
5
5
  };
6
+ rowKey: {
7
+ readonly type: StringConstructor;
8
+ readonly default: "fileId";
9
+ };
6
10
  mode: {
7
11
  readonly type: import("vue").PropType<import("el-plus/es/hooks").PageMode>;
8
12
  };
@@ -25,6 +29,9 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
25
29
  beforeAdd: {
26
30
  readonly type: import("vue").PropType<(fileItem: Record<string, any>) => boolean>;
27
31
  };
32
+ permission: {
33
+ readonly type: import("vue").PropType<import("el-plus/es/directives/permission").Permission>;
34
+ };
28
35
  modelValue: {
29
36
  type: import("vue").PropType<any[]>;
30
37
  };
@@ -37,6 +44,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
37
44
  readonly type: import("vue").PropType<import("el-plus/es/components/table").TableColumn[]>;
38
45
  readonly default: () => never[];
39
46
  };
47
+ rowKey: {
48
+ readonly type: StringConstructor;
49
+ readonly default: "fileId";
50
+ };
40
51
  mode: {
41
52
  readonly type: import("vue").PropType<import("el-plus/es/hooks").PageMode>;
42
53
  };
@@ -59,6 +70,9 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
59
70
  beforeAdd: {
60
71
  readonly type: import("vue").PropType<(fileItem: Record<string, any>) => boolean>;
61
72
  };
73
+ permission: {
74
+ readonly type: import("vue").PropType<import("el-plus/es/directives/permission").Permission>;
75
+ };
62
76
  modelValue: {
63
77
  type: import("vue").PropType<any[]>;
64
78
  };
@@ -79,6 +93,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
79
93
  show?: (boolean | ((T: unknown) => boolean)) | undefined;
80
94
  hide?: (boolean | ((T: unknown) => boolean)) | undefined;
81
95
  }>[];
96
+ rowKey: string;
82
97
  openType: "dialog" | "normal";
83
98
  isType: boolean;
84
99
  isNote: boolean;
@@ -6,11 +6,12 @@ var vue = require('vue');
6
6
  var bem = require('../../../utils/bem.js');
7
7
  var props = require('../../../utils/props.js');
8
8
  var attachment = require('./attachment.js');
9
- var index = require('../../table/index.js');
9
+ var index$1 = require('../../table/index.js');
10
10
  var useAttachment = require('./use-attachment.js');
11
11
  var useDialog = require('../../../hooks/dialog/use-dialog.js');
12
12
  var useLocale = require('../../../hooks/use-locale.js');
13
13
  var elementPlus = require('element-plus');
14
+ var index = require('../../../directives/permission/index.js');
14
15
 
15
16
  var _sfc_main = /* @__PURE__ */ vue.defineComponent({
16
17
  ...{
@@ -28,7 +29,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
28
29
  const bem$1 = bem.createNameSpace("attachment");
29
30
  const props$1 = __props;
30
31
  const modelValue = vue.useModel(__props, "modelValue");
31
- const { columns, addAttachment, isNormalOpen, onConfirm, onCancel, mode } = useAttachment.useAttachment(props$1, {
32
+ const { columns, actionButtons, addAttachment, isNormalOpen, permission, onConfirm, onCancel, mode } = useAttachment.useAttachment(props$1, {
32
33
  data: modelValue
33
34
  });
34
35
  const AttachmentDialog = useDialog.useDialog({
@@ -60,7 +61,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
60
61
  return (_ctx, _cache) => {
61
62
  const _component_EpButtons = vue.resolveComponent("EpButtons");
62
63
  return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
63
- props$1.isShowOpenDialogButton ? (vue.openBlock(), vue.createBlock(vue.unref(elementPlus.ElButton), {
64
+ props$1.isShowOpenDialogButton ? vue.withDirectives((vue.openBlock(), vue.createBlock(vue.unref(elementPlus.ElButton), {
64
65
  key: 0,
65
66
  type: "primary",
66
67
  plain: "",
@@ -72,7 +73,9 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
72
73
  vue.createTextVNode(vue.toDisplayString(vue.unref(t)("ep.attachment.manageAttachment")) + "(" + vue.toDisplayString(modelValue.value?.length || 0) + ") ", 1)
73
74
  ]),
74
75
  _: 1
75
- }, 8, ["class", "onClick"])) : vue.createCommentVNode("", true),
76
+ }, 8, ["class", "onClick"])), [
77
+ [vue.unref(index.default), vue.unref(permission)]
78
+ ]) : vue.createCommentVNode("", true),
76
79
  vue.createVNode(vue.unref(AttachmentDialog), null, {
77
80
  default: vue.withCtx(() => [
78
81
  vue.createElementVNode("div", { style: { "margin-bottom": "10px", "text-align": "right" } }, [
@@ -88,15 +91,17 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
88
91
  ]
89
92
  }, null, 8, ["list"])) : vue.createCommentVNode("", true)
90
93
  ]),
91
- vue.createVNode(vue.unref(index.EpTable), vue.mergeProps({
94
+ vue.createVNode(vue.unref(index$1.EpTable), vue.mergeProps({
92
95
  ref: "tableRef",
93
96
  class: `${vue.unref(bem$1).b()} ${vue.unref(props.prepareClassNames)()}`,
94
97
  style: {
95
98
  ...vue.unref(props.prepareStyles)()
96
99
  },
97
100
  columns: vue.unref(columns),
101
+ "action-buttons": vue.unref(actionButtons),
102
+ actionColWidth: "110",
98
103
  data: modelValue.value
99
- }, props$1), null, 16, ["class", "style", "columns", "data"])
104
+ }, props$1), null, 16, ["class", "style", "columns", "action-buttons", "data"])
100
105
  ]),
101
106
  _: 1
102
107
  })
@@ -1 +1 @@
1
- {"version":3,"file":"attachment.vue2.js","sources":["../../../../../../packages/components/attachment/src/attachment.vue"],"sourcesContent":["<template>\n <ElButton\n v-if=\"props.isShowOpenDialogButton\"\n type=\"primary\"\n plain\n size=\"small\"\n :class=\"bem.e('handler')\"\n @click=\"open\"\n >\n {{ t('ep.attachment.manageAttachment') }}({{ modelValue?.length || 0 }})\n </ElButton>\n <AttachmentDialog>\n <div style=\"margin-bottom: 10px; text-align: right\">\n <EpButtons\n v-if=\"props.openType === 'dialog' && mode !== 'browse'\"\n type=\"primary\"\n :list=\"[\n {\n name: t('ep.attachment.addAttachment'),\n type: 'primary',\n onClick: addAttachment,\n },\n ]\"\n />\n </div>\n\n <EpTable\n ref=\"tableRef\"\n :class=\"`${bem.b()} ${prepareClassNames()}`\"\n :style=\"{\n ...prepareStyles(),\n }\"\n :columns=\"columns\"\n :data=\"modelValue\"\n v-bind=\"props\"\n >\n </EpTable>\n </AttachmentDialog>\n</template>\n<script setup lang=\"ts\">\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport { prepareClassNames, prepareStyles } from '@el-plus/utils/props'\nimport { attachmentProps } from './attachment'\nimport EpTable from '@el-plus/components/table'\nimport { useAttachment } from './use-attachment'\nimport type { TableProps } from '@el-plus/components/table'\nimport { useDialog } from '@el-plus/hooks/dialog/use-dialog'\nimport { useLocale } from '@el-plus/hooks/use-locale'\nimport { ElButton } from 'element-plus'\nconst { t } = useLocale()\ndefineOptions({\n name: 'EpAttachment',\n inheritAttrs: false,\n})\nconst bem = createNameSpace('attachment')\nconst props = defineProps(attachmentProps)\nconst modelValue = defineModel<TableProps['data']>()\nconst { columns, addAttachment, isNormalOpen, onConfirm, onCancel, mode } =\n useAttachment(props, {\n data: modelValue,\n })\nconst AttachmentDialog = useDialog({\n width: 850,\n center: true,\n title: isNormalOpen ? '' : t('ep.attachment.manageAttachment'),\n modal: !isNormalOpen,\n showClose: !isNormalOpen,\n showFooter: !isNormalOpen,\n transition: isNormalOpen ? '' : 'dialog-fade',\n modalClass: bem.em(\n 'dialog',\n props.openType === 'normal' ? props.openType : '',\n ),\n onConfirm: async (resolve) => {\n onConfirm(resolve)\n },\n onCancel: (resolve) => {\n onCancel(resolve)\n },\n})\nconst open = AttachmentDialog.open\nif (isNormalOpen) {\n open()\n}\ndefineExpose({\n open,\n})\n</script>\n"],"names":["useLocale","bem","createNameSpace","props","_useModel","useAttachment","useDialog","_createBlock","_unref","ElButton","_normalizeClass","_createTextVNode","_toDisplayString","_createVNode","_createElementVNode","_mergeProps","prepareClassNames","prepareStyles"],"mappings":"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"}
1
+ {"version":3,"file":"attachment.vue2.js","sources":["../../../../../../packages/components/attachment/src/attachment.vue"],"sourcesContent":["<template>\n <ElButton\n v-if=\"props.isShowOpenDialogButton\"\n type=\"primary\"\n plain\n size=\"small\"\n :class=\"bem.e('handler')\"\n @click=\"open\"\n v-permission=\"permission\"\n >\n {{ t('ep.attachment.manageAttachment') }}({{ modelValue?.length || 0 }})\n </ElButton>\n <AttachmentDialog>\n <div style=\"margin-bottom: 10px; text-align: right\">\n <EpButtons\n v-if=\"props.openType === 'dialog' && mode !== 'browse'\"\n type=\"primary\"\n :list=\"[\n {\n name: t('ep.attachment.addAttachment'),\n type: 'primary',\n onClick: addAttachment,\n },\n ]\"\n />\n </div>\n\n <EpTable\n ref=\"tableRef\"\n :class=\"`${bem.b()} ${prepareClassNames()}`\"\n :style=\"{\n ...prepareStyles(),\n }\"\n :columns=\"columns\"\n :action-buttons=\"actionButtons\"\n actionColWidth=\"110\"\n :data=\"modelValue\"\n v-bind=\"props\"\n >\n </EpTable>\n </AttachmentDialog>\n</template>\n<script setup lang=\"ts\">\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport { prepareClassNames, prepareStyles } from '@el-plus/utils/props'\nimport { attachmentProps } from './attachment'\nimport EpTable from '@el-plus/components/table'\nimport { useAttachment } from './use-attachment'\nimport type { TableProps } from '@el-plus/components/table'\nimport { useDialog } from '@el-plus/hooks/dialog/use-dialog'\nimport { useLocale } from '@el-plus/hooks/use-locale'\nimport { ElButton } from 'element-plus'\nimport { vPermission } from '@el-plus/directives'\n\nconst { t } = useLocale()\ndefineOptions({\n name: 'EpAttachment',\n inheritAttrs: false,\n})\nconst bem = createNameSpace('attachment')\nconst props = defineProps(attachmentProps)\nconst modelValue = defineModel<TableProps['data']>()\nconst { columns,actionButtons, addAttachment, isNormalOpen,permission, onConfirm, onCancel, mode } =\n useAttachment(props, {\n data: modelValue,\n })\nconst AttachmentDialog = useDialog({\n width: 850,\n center: true,\n title: isNormalOpen ? '' : t('ep.attachment.manageAttachment'),\n modal: !isNormalOpen,\n showClose: !isNormalOpen,\n showFooter: !isNormalOpen,\n transition: isNormalOpen ? '' : 'dialog-fade',\n modalClass: bem.em(\n 'dialog',\n props.openType === 'normal' ? props.openType : '',\n ),\n onConfirm: async (resolve) => {\n onConfirm(resolve)\n },\n onCancel: (resolve) => {\n onCancel(resolve)\n },\n})\nconst open = AttachmentDialog.open\nif (isNormalOpen) {\n open()\n}\ndefineExpose({\n open,\n})\n</script>\n"],"names":["useLocale","bem","createNameSpace","props","_useModel","useAttachment","useDialog","_createBlock","_unref","ElButton","_normalizeClass","_createTextVNode","_toDisplayString","_createVNode","_createElementVNode","_mergeProps","prepareClassNames","prepareStyles"],"mappings":"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"}
@@ -2,32 +2,6 @@ export declare const useAttachment: (props: any, { data }: {
2
2
  data: any;
3
3
  }) => {
4
4
  columns: import("vue").Ref<({
5
- type: string;
6
- label: any;
7
- width: string;
8
- props: {
9
- type: string;
10
- list: ({
11
- name: any;
12
- onClick: ({ row }: {
13
- row: any;
14
- }) => void;
15
- disabled?: undefined;
16
- } | {
17
- name: any;
18
- disabled: () => boolean;
19
- onClick: ({ $index, row }: {
20
- $index: any;
21
- row: any;
22
- }) => void;
23
- })[];
24
- desc?: undefined;
25
- };
26
- prop?: undefined;
27
- required?: undefined;
28
- show?: undefined;
29
- onClick?: undefined;
30
- } | {
31
5
  label: any;
32
6
  prop: string;
33
7
  type: string;
@@ -37,10 +11,7 @@ export declare const useAttachment: (props: any, { data }: {
37
11
  desc: ({ row }: {
38
12
  row: any;
39
13
  }) => any;
40
- type?: undefined;
41
- list?: undefined;
42
14
  };
43
- width?: undefined;
44
15
  onClick?: undefined;
45
16
  } | {
46
17
  label: any;
@@ -49,55 +20,26 @@ export declare const useAttachment: (props: any, { data }: {
49
20
  onClick: ({ row }: {
50
21
  row: any;
51
22
  }) => void;
52
- width?: undefined;
53
- props?: undefined;
54
23
  required?: undefined;
55
24
  show?: undefined;
25
+ props?: undefined;
56
26
  } | {
57
27
  label: any;
58
28
  prop: string;
59
29
  type?: undefined;
60
- width?: undefined;
61
- props?: undefined;
62
30
  required?: undefined;
63
31
  show?: undefined;
32
+ props?: undefined;
64
33
  onClick?: undefined;
65
34
  } | {
66
35
  label: any;
67
36
  prop: string;
68
37
  type: string;
69
38
  show: () => any;
70
- width?: undefined;
71
- props?: undefined;
72
39
  required?: undefined;
40
+ props?: undefined;
73
41
  onClick?: undefined;
74
42
  })[], ({
75
- type: string;
76
- label: any;
77
- width: string;
78
- props: {
79
- type: string;
80
- list: ({
81
- name: any;
82
- onClick({ row }: {
83
- row: any;
84
- }): void;
85
- disabled?: undefined;
86
- } | {
87
- name: any;
88
- disabled: () => boolean;
89
- onClick: ({ $index, row }: {
90
- $index: any;
91
- row: any;
92
- }) => void;
93
- })[];
94
- desc?: undefined;
95
- };
96
- prop?: undefined;
97
- required?: undefined;
98
- show?: undefined;
99
- onClick?: undefined;
100
- } | {
101
43
  label: any;
102
44
  prop: string;
103
45
  type: string;
@@ -107,10 +49,7 @@ export declare const useAttachment: (props: any, { data }: {
107
49
  desc: ({ row }: {
108
50
  row: any;
109
51
  }) => any;
110
- type?: undefined;
111
- list?: undefined;
112
52
  };
113
- width?: undefined;
114
53
  onClick?: undefined;
115
54
  } | {
116
55
  label: any;
@@ -119,55 +58,26 @@ export declare const useAttachment: (props: any, { data }: {
119
58
  onClick({ row }: {
120
59
  row: any;
121
60
  }): void;
122
- width?: undefined;
123
- props?: undefined;
124
61
  required?: undefined;
125
62
  show?: undefined;
63
+ props?: undefined;
126
64
  } | {
127
65
  label: any;
128
66
  prop: string;
129
67
  type?: undefined;
130
- width?: undefined;
131
- props?: undefined;
132
68
  required?: undefined;
133
69
  show?: undefined;
70
+ props?: undefined;
134
71
  onClick?: undefined;
135
72
  } | {
136
73
  label: any;
137
74
  prop: string;
138
75
  type: string;
139
76
  show: () => any;
140
- width?: undefined;
141
- props?: undefined;
142
77
  required?: undefined;
78
+ props?: undefined;
143
79
  onClick?: undefined;
144
80
  })[] | ({
145
- type: string;
146
- label: any;
147
- width: string;
148
- props: {
149
- type: string;
150
- list: ({
151
- name: any;
152
- onClick: ({ row }: {
153
- row: any;
154
- }) => void;
155
- disabled?: undefined;
156
- } | {
157
- name: any;
158
- disabled: () => boolean;
159
- onClick: ({ $index, row }: {
160
- $index: any;
161
- row: any;
162
- }) => void;
163
- })[];
164
- desc?: undefined;
165
- };
166
- prop?: undefined;
167
- required?: undefined;
168
- show?: undefined;
169
- onClick?: undefined;
170
- } | {
171
81
  label: any;
172
82
  prop: string;
173
83
  type: string;
@@ -177,10 +87,7 @@ export declare const useAttachment: (props: any, { data }: {
177
87
  desc: ({ row }: {
178
88
  row: any;
179
89
  }) => any;
180
- type?: undefined;
181
- list?: undefined;
182
90
  };
183
- width?: undefined;
184
91
  onClick?: undefined;
185
92
  } | {
186
93
  label: any;
@@ -189,33 +96,35 @@ export declare const useAttachment: (props: any, { data }: {
189
96
  onClick: ({ row }: {
190
97
  row: any;
191
98
  }) => void;
192
- width?: undefined;
193
- props?: undefined;
194
99
  required?: undefined;
195
100
  show?: undefined;
101
+ props?: undefined;
196
102
  } | {
197
103
  label: any;
198
104
  prop: string;
199
105
  type?: undefined;
200
- width?: undefined;
201
- props?: undefined;
202
106
  required?: undefined;
203
107
  show?: undefined;
108
+ props?: undefined;
204
109
  onClick?: undefined;
205
110
  } | {
206
111
  label: any;
207
112
  prop: string;
208
113
  type: string;
209
114
  show: () => any;
210
- width?: undefined;
211
- props?: undefined;
212
115
  required?: undefined;
116
+ props?: undefined;
213
117
  onClick?: undefined;
214
118
  })[]>;
119
+ actionButtons: import("vue").Ref<any, any>;
215
120
  addAttachment: () => Promise<void>;
216
121
  isNormalOpen: boolean;
217
122
  isDialogOpen: boolean;
218
123
  onConfirm: (resolve: any) => Promise<void>;
219
124
  onCancel: (resolve: any) => void;
220
125
  mode: import("vue").ComputedRef<any>;
126
+ permission: import("vue").ComputedRef<{
127
+ arg: any;
128
+ value: any;
129
+ }>;
221
130
  };