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