@dazhicheng/ui 1.6.25 → 1.6.27
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/dist/components/tt-api-component/index.d.ts +35 -24
- package/dist/components/tt-api-component/index.vue.d.ts +34 -0
- package/dist/components/tt-area/TtArea.vue.d.ts +2 -0
- package/dist/components/tt-area/index.d.ts +1 -1
- package/dist/components/tt-button/components/AddButton.vue.d.ts +2 -0
- package/dist/components/tt-button/index.d.ts +589 -260
- package/dist/components/tt-button/index.vue.d.ts +466 -0
- package/dist/components/tt-checkbox/index.d.ts +35 -26
- package/dist/components/tt-checkbox/index.vue.d.ts +28 -0
- package/dist/components/tt-drawer/index.d.ts +299 -306
- package/dist/components/tt-drawer/src/{RenderDrawer.d.ts → RenderDrawer.vue.d.ts} +146 -149
- package/dist/components/tt-drawer/src/components/{DrawerFooter.d.ts → DrawerFooter.vue.d.ts} +16 -18
- package/dist/components/tt-drawer/src/components/{DrawerHeader.d.ts → DrawerHeader.vue.d.ts} +3 -4
- package/dist/components/tt-drawer/src/hooks/useDrawerRender.d.ts +2 -2
- package/dist/components/tt-drawer/src/hooks/useResizable.d.ts +2 -2
- package/dist/components/tt-drawer/src/utils/drawer-api.d.ts +2 -4
- package/dist/components/tt-empty/index.d.ts +8 -10
- package/dist/components/tt-form/src/components/{ExpandableArrow.d.ts → ExpandableArrow.vue.d.ts} +4 -5
- package/dist/components/tt-form/src/components/{FormActions.d.ts → FormActions.vue.d.ts} +5 -6
- package/dist/components/tt-form/src/components/{FormElInput.d.ts → FormElInput.vue.d.ts} +101 -105
- package/dist/components/tt-form/src/components/Slot.d.ts +4 -4
- package/dist/components/tt-form/src/form/{FormControl.d.ts → FormControl.vue.d.ts} +1 -2
- package/dist/components/tt-form/src/form/{FormDescription.d.ts → FormDescription.vue.d.ts} +1 -2
- package/dist/components/tt-form/src/form/{FormItem.d.ts → FormItem.vue.d.ts} +1 -2
- package/dist/components/tt-form/src/form/{FormLabel.d.ts → FormLabel.vue.d.ts} +1 -2
- package/dist/components/tt-form/src/form/FormMessage.vue.d.ts +2 -0
- package/dist/components/tt-form/src/form/FormMessageToolTip.vue.d.ts +8 -0
- package/dist/components/tt-form/src/form/{FormWarnMessage.d.ts → FormWarnMessage.vue.d.ts} +1 -2
- package/dist/components/tt-form/src/form/{RenderContent.d.ts → RenderContent.vue.d.ts} +4 -4
- package/dist/components/tt-form/src/form/index.d.ts +8 -8
- package/dist/components/tt-form/src/form/useFormField.d.ts +5 -6
- package/dist/components/tt-form/src/form-render/{FormField.d.ts → FormField.vue.d.ts} +1 -2
- package/dist/components/tt-form/src/form-render/FormFieldContact.d.ts +6 -6
- package/dist/components/tt-form/src/form-render/{FormLabel.d.ts → FormLabel.vue.d.ts} +2 -3
- package/dist/components/tt-form/src/form-render/array-register/FormArrayRegister.d.ts +11 -14
- package/dist/components/tt-form/src/form-render/context.d.ts +4 -5
- package/dist/components/tt-form/src/form-render/dependencies.d.ts +6 -7
- package/dist/components/tt-form/src/form-render/expandable.d.ts +3 -4
- package/dist/components/tt-form/src/form-render/{form.d.ts → form.vue.d.ts} +8 -9
- package/dist/components/tt-form/src/form-render/index.d.ts +3 -3
- package/dist/components/tt-form/src/formApi.d.ts +3 -3
- package/dist/components/tt-form/src/group-form/{GroupForm.d.ts → GroupForm.vue.d.ts} +5 -7
- package/dist/components/tt-form/src/group-form/{GroupSection.d.ts → GroupSection.vue.d.ts} +5 -7
- package/dist/components/tt-form/src/group-form/{LazyFormField.d.ts → LazyFormField.vue.d.ts} +3 -5
- package/dist/components/tt-form/src/group-form/groupFormApi.d.ts +5 -7
- package/dist/components/tt-form/src/hooks/useFormFieldBus.d.ts +2 -3
- package/dist/components/tt-form/src/hooks/useForwardProps.d.ts +2 -2
- package/dist/components/tt-form/src/hooks/useForwardPropsEmits.d.ts +2 -2
- package/dist/components/tt-form/src/index.vue.d.ts +216 -0
- package/dist/components/tt-form/src/useForm.d.ts +1 -2
- package/dist/components/tt-form/src/useFormContext.d.ts +1 -2
- package/dist/components/tt-form-item-error-tooltip/index.d.ts +337 -61
- package/dist/components/tt-form-item-error-tooltip/index.vue.d.ts +298 -0
- package/dist/components/tt-icon/components/AddIcon.vue.d.ts +7 -0
- package/dist/components/tt-icon/components/SubIcon.vue.d.ts +7 -0
- package/dist/components/tt-icon/index.d.ts +115 -24
- package/dist/components/tt-icon/index.vue.d.ts +32 -0
- package/dist/components/tt-image/index.d.ts +41 -45
- package/dist/components/tt-image/src/components/ImageViewer.d.ts +26 -30
- package/dist/components/tt-image/tt-image.d.ts +34 -36
- package/dist/components/tt-loading/index.d.ts +2 -5
- package/dist/components/tt-loading/src/loading.vue.d.ts +12 -0
- package/dist/components/tt-log/index.d.ts +6 -7
- package/dist/components/tt-log/index.vue.d.ts +5 -0
- package/dist/components/tt-modal/index.d.ts +364 -371
- package/dist/components/tt-modal/src/{RenderModal.d.ts → RenderModal.vue.d.ts} +115 -118
- package/dist/components/tt-modal/src/components/{ModalFooter.d.ts → ModalFooter.vue.d.ts} +23 -26
- package/dist/components/tt-modal/src/components/{ModalHeader.d.ts → ModalHeader.vue.d.ts} +3 -4
- package/dist/components/tt-modal/src/components/{ModalWrapper.d.ts → ModalWrapper.vue.d.ts} +24 -27
- package/dist/components/tt-modal/src/hooks/useModalRender.d.ts +29 -32
- package/dist/components/tt-modal/src/typing.d.ts +2 -2
- package/dist/components/tt-modal/src/utils/modal-api.d.ts +1 -2
- package/dist/components/tt-modal-form/hooks/useModalFormSlot.d.ts +2 -3
- package/dist/components/tt-modal-form/index.d.ts +2 -46
- package/dist/components/tt-modal-form/index.vue.d.ts +45 -0
- package/dist/components/tt-modal-form/useModalForm.d.ts +3 -4
- package/dist/components/tt-nav-anchor/index.d.ts +12 -15
- package/dist/components/tt-nav-anchor/src/{TtNavAnchor.d.ts → TtNavAnchor.vue.d.ts} +4 -4
- package/dist/components/tt-panel-select/index.d.ts +1 -1
- package/dist/components/tt-panel-select/src/components/{PanelLeft.d.ts → PanelLeft.vue.d.ts} +3 -4
- package/dist/components/tt-panel-select/src/components/{PanelMiddle.d.ts → PanelMiddle.vue.d.ts} +80 -83
- package/dist/components/tt-panel-select/src/components/{PanelRight.d.ts → PanelRight.vue.d.ts} +32 -34
- package/dist/components/tt-panel-select/src/hooks/usePanelData.d.ts +6 -7
- package/dist/components/tt-panel-select/src/hooks/usePanelSelection.d.ts +5 -5
- package/dist/components/tt-panel-select/src/{index.d.ts → index.vue.d.ts} +80 -84
- package/dist/components/tt-radio-group/index.d.ts +50 -31
- package/dist/components/tt-radio-group/index.vue.d.ts +33 -0
- package/dist/components/tt-select/index.d.ts +1 -1
- package/dist/components/tt-select/src/{Select.d.ts → Select.vue.d.ts} +141 -146
- package/dist/components/tt-select/src/components/{SelectTable.d.ts → SelectTable.vue.d.ts} +36 -40
- package/dist/components/tt-select/src/components/{Table.d.ts → Table.vue.d.ts} +38 -41
- package/dist/components/tt-select/src/hooks/useGrid.d.ts +2 -2
- package/dist/components/tt-select/src/hooks/usePagination.d.ts +3 -4
- package/dist/components/tt-select/src/hooks/useSelect.d.ts +2 -2
- package/dist/components/tt-select/src/hooks/useSelectTableEvent.d.ts +1 -1
- package/dist/components/tt-table/index.d.ts +279 -287
- package/dist/components/tt-table/src/{Table.d.ts → Table.vue.d.ts} +204 -209
- package/dist/components/tt-table/src/{TableForm.d.ts → TableForm.vue.d.ts} +80 -83
- package/dist/components/tt-table/src/components/RowContext.d.ts +5 -5
- package/dist/components/tt-table/src/components/{TableAction.d.ts → TableAction.vue.d.ts} +4 -4
- package/dist/components/tt-table/src/components/TableButtons.d.ts +5 -5
- package/dist/components/tt-table/src/components/{TableColumnModal.d.ts → TableColumnModal.vue.d.ts} +4 -5
- package/dist/components/tt-table/src/components/{TableToolbarTools.d.ts → TableToolbarTools.vue.d.ts} +6 -7
- package/dist/components/tt-table/src/hooks/useColumns.d.ts +44 -45
- package/dist/components/tt-table/src/hooks/usePagination.d.ts +33 -33
- package/dist/components/tt-table/src/hooks/useQuery.d.ts +2 -2
- package/dist/components/tt-table/src/hooks/useRowSelection.d.ts +2 -2
- package/dist/components/tt-table/src/hooks/useSideSlot.d.ts +110 -112
- package/dist/components/tt-table/src/hooks/useTableData.d.ts +2 -2
- package/dist/components/tt-table/src/props.d.ts +17 -19
- package/dist/components/tt-table/src/utils/table-api.d.ts +4 -4
- package/dist/components/tt-table/src/utils/table-form-api.d.ts +1 -2
- package/dist/components/tt-text/index.d.ts +59 -34
- package/dist/components/tt-text/index.vue.d.ts +50 -0
- package/dist/components/tt-upload/index.d.ts +311 -317
- package/dist/components/tt-upload/src/TtUpload.vue.d.ts +517 -0
- package/dist/components/tt-upload/src/typing.d.ts +47 -49
- package/dist/hooks/basicDataCodes.js +21 -20
- package/dist/hooks/useDataPermissionOptions.d.ts +24 -11
- package/dist/hooks/useDataPermissionOptions.js +85 -128
- package/dist/hooks/useFormSchemasLink.d.ts +4 -4
- package/dist/hooks/useLoading.d.ts +2 -2
- package/dist/hooks/useScreenshotOss.d.ts +2 -2
- package/dist/hooks/userListCache.js +5 -5
- package/dist/index.d.ts +1 -2
- package/package.json +1 -1
- package/dist/components/tt-area/TtArea.d.ts +0 -3
- package/dist/components/tt-button/components/AddButton.d.ts +0 -3
- package/dist/components/tt-form/src/form/FormMessage.d.ts +0 -3
- package/dist/components/tt-form/src/form/FormMessageToolTip.d.ts +0 -9
- package/dist/components/tt-form/src/index.d.ts +0 -217
- package/dist/components/tt-icon/components/AddIcon.d.ts +0 -8
- package/dist/components/tt-icon/components/SubIcon.d.ts +0 -8
- package/dist/components/tt-loading/src/loading.d.ts +0 -13
- package/dist/components/tt-upload/src/TtUpload.d.ts +0 -519
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { ExtractPropTypes, PropType } from 'vue';
|
|
2
|
-
import { UploadRawFile
|
|
3
|
-
import { EpPropFinalized, EpPropMergeType } from 'element-plus/es/utils/index.mjs';
|
|
4
|
-
import { Awaitable, Mutable } from 'element-plus/es/utils/typescript.mjs';
|
|
2
|
+
import { UploadRawFile } from 'element-plus';
|
|
5
3
|
export interface OssSignatureResult {
|
|
6
4
|
/** HMAC-SHA256 签名 */
|
|
7
5
|
signature: string;
|
|
@@ -57,12 +55,12 @@ export declare const ttUploadProps: {
|
|
|
57
55
|
readonly default: ".pdf,.xlsx,.xls,.doc,.docx,.jpg,.jpeg,.png";
|
|
58
56
|
};
|
|
59
57
|
/** 上传前的钩子;在内置类型/大小/数量校验通过后调用,返回 false 可阻止上传 */
|
|
60
|
-
readonly beforeUpload: EpPropFinalized<(new (...args: any[]) => (rawFile: UploadRawFile) => Awaitable<void | undefined | null | boolean | File | Blob>) | (() => (rawFile: UploadRawFile) => Awaitable<void | undefined | null | boolean | File | Blob>) | {
|
|
61
|
-
(): (rawFile: UploadRawFile) => Awaitable<void | undefined | null | boolean | File | Blob>;
|
|
58
|
+
readonly beforeUpload: import('element-plus/es/utils/index.mjs').EpPropFinalized<(new (...args: any[]) => (rawFile: UploadRawFile) => import('element-plus/es/utils/typescript.mjs').Awaitable<void | undefined | null | boolean | File | Blob>) | (() => (rawFile: UploadRawFile) => import('element-plus/es/utils/typescript.mjs').Awaitable<void | undefined | null | boolean | File | Blob>) | {
|
|
59
|
+
(): (rawFile: UploadRawFile) => import('element-plus/es/utils/typescript.mjs').Awaitable<void | undefined | null | boolean | File | Blob>;
|
|
62
60
|
new (): any;
|
|
63
61
|
readonly prototype: any;
|
|
64
|
-
} | ((new (...args: any[]) => (rawFile: UploadRawFile) => Awaitable<void | undefined | null | boolean | File | Blob>) | (() => (rawFile: UploadRawFile) => Awaitable<void | undefined | null | boolean | File | Blob>) | {
|
|
65
|
-
(): (rawFile: UploadRawFile) => Awaitable<void | undefined | null | boolean | File | Blob>;
|
|
62
|
+
} | ((new (...args: any[]) => (rawFile: UploadRawFile) => import('element-plus/es/utils/typescript.mjs').Awaitable<void | undefined | null | boolean | File | Blob>) | (() => (rawFile: UploadRawFile) => import('element-plus/es/utils/typescript.mjs').Awaitable<void | undefined | null | boolean | File | Blob>) | {
|
|
63
|
+
(): (rawFile: UploadRawFile) => import('element-plus/es/utils/typescript.mjs').Awaitable<void | undefined | null | boolean | File | Blob>;
|
|
66
64
|
new (): any;
|
|
67
65
|
readonly prototype: any;
|
|
68
66
|
} | null)[], unknown, unknown, () => void, boolean>;
|
|
@@ -171,102 +169,102 @@ export declare const ttUploadProps: {
|
|
|
171
169
|
readonly default: false;
|
|
172
170
|
};
|
|
173
171
|
readonly beforeRemove: {
|
|
174
|
-
readonly type: PropType<(uploadFile: UploadFile, uploadFiles: UploadFiles) => Awaitable<boolean>>;
|
|
172
|
+
readonly type: PropType<(uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => import('element-plus/es/utils/typescript.mjs').Awaitable<boolean>>;
|
|
175
173
|
readonly required: false;
|
|
176
174
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
177
175
|
__epPropKey: true;
|
|
178
176
|
};
|
|
179
|
-
readonly onRemove: EpPropFinalized<(new (...args: any[]) => (uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
180
|
-
(): (uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
177
|
+
readonly onRemove: import('element-plus/es/utils/index.mjs').EpPropFinalized<(new (...args: any[]) => (uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | (() => (uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | {
|
|
178
|
+
(): (uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void;
|
|
181
179
|
new (): any;
|
|
182
180
|
readonly prototype: any;
|
|
183
|
-
} | (((new (...args: any[]) => (uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
184
|
-
(): (uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
181
|
+
} | (((new (...args: any[]) => (uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | (() => (uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | {
|
|
182
|
+
(): (uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void;
|
|
185
183
|
new (): any;
|
|
186
184
|
readonly prototype: any;
|
|
187
185
|
}) | null)[], unknown, unknown, () => void, boolean>;
|
|
188
|
-
readonly onChange: EpPropFinalized<(new (...args: any[]) => (uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
189
|
-
(): (uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
186
|
+
readonly onChange: import('element-plus/es/utils/index.mjs').EpPropFinalized<(new (...args: any[]) => (uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | (() => (uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | {
|
|
187
|
+
(): (uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void;
|
|
190
188
|
new (): any;
|
|
191
189
|
readonly prototype: any;
|
|
192
|
-
} | (((new (...args: any[]) => (uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
193
|
-
(): (uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
190
|
+
} | (((new (...args: any[]) => (uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | (() => (uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | {
|
|
191
|
+
(): (uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void;
|
|
194
192
|
new (): any;
|
|
195
193
|
readonly prototype: any;
|
|
196
194
|
}) | null)[], unknown, unknown, () => void, boolean>;
|
|
197
|
-
readonly onPreview: EpPropFinalized<(new (...args: any[]) => (uploadFile: UploadFile) => void) | (() => (uploadFile: UploadFile) => void) | {
|
|
198
|
-
(): (uploadFile: UploadFile) => void;
|
|
195
|
+
readonly onPreview: import('element-plus/es/utils/index.mjs').EpPropFinalized<(new (...args: any[]) => (uploadFile: import('element-plus').UploadFile) => void) | (() => (uploadFile: import('element-plus').UploadFile) => void) | {
|
|
196
|
+
(): (uploadFile: import('element-plus').UploadFile) => void;
|
|
199
197
|
new (): any;
|
|
200
198
|
readonly prototype: any;
|
|
201
|
-
} | (((new (...args: any[]) => (uploadFile: UploadFile) => void) | (() => (uploadFile: UploadFile) => void) | {
|
|
202
|
-
(): (uploadFile: UploadFile) => void;
|
|
199
|
+
} | (((new (...args: any[]) => (uploadFile: import('element-plus').UploadFile) => void) | (() => (uploadFile: import('element-plus').UploadFile) => void) | {
|
|
200
|
+
(): (uploadFile: import('element-plus').UploadFile) => void;
|
|
203
201
|
new (): any;
|
|
204
202
|
readonly prototype: any;
|
|
205
203
|
}) | null)[], unknown, unknown, () => void, boolean>;
|
|
206
|
-
readonly onSuccess: EpPropFinalized<(new (...args: any[]) => (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
207
|
-
(): (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
204
|
+
readonly onSuccess: import('element-plus/es/utils/index.mjs').EpPropFinalized<(new (...args: any[]) => (response: any, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | (() => (response: any, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | {
|
|
205
|
+
(): (response: any, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void;
|
|
208
206
|
new (): any;
|
|
209
207
|
readonly prototype: any;
|
|
210
|
-
} | (((new (...args: any[]) => (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
211
|
-
(): (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
208
|
+
} | (((new (...args: any[]) => (response: any, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | (() => (response: any, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | {
|
|
209
|
+
(): (response: any, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void;
|
|
212
210
|
new (): any;
|
|
213
211
|
readonly prototype: any;
|
|
214
212
|
}) | null)[], unknown, unknown, () => void, boolean>;
|
|
215
|
-
readonly onProgress: EpPropFinalized<(new (...args: any[]) => (evt: UploadProgressEvent, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (evt: UploadProgressEvent, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
216
|
-
(): (evt: UploadProgressEvent, uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
213
|
+
readonly onProgress: import('element-plus/es/utils/index.mjs').EpPropFinalized<(new (...args: any[]) => (evt: import('element-plus').UploadProgressEvent, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | (() => (evt: import('element-plus').UploadProgressEvent, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | {
|
|
214
|
+
(): (evt: import('element-plus').UploadProgressEvent, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void;
|
|
217
215
|
new (): any;
|
|
218
216
|
readonly prototype: any;
|
|
219
|
-
} | (((new (...args: any[]) => (evt: UploadProgressEvent, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (evt: UploadProgressEvent, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
220
|
-
(): (evt: UploadProgressEvent, uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
217
|
+
} | (((new (...args: any[]) => (evt: import('element-plus').UploadProgressEvent, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | (() => (evt: import('element-plus').UploadProgressEvent, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | {
|
|
218
|
+
(): (evt: import('element-plus').UploadProgressEvent, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void;
|
|
221
219
|
new (): any;
|
|
222
220
|
readonly prototype: any;
|
|
223
221
|
}) | null)[], unknown, unknown, () => void, boolean>;
|
|
224
|
-
readonly onError: EpPropFinalized<(new (...args: any[]) => (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
225
|
-
(): (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
222
|
+
readonly onError: import('element-plus/es/utils/index.mjs').EpPropFinalized<(new (...args: any[]) => (error: Error, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | (() => (error: Error, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | {
|
|
223
|
+
(): (error: Error, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void;
|
|
226
224
|
new (): any;
|
|
227
225
|
readonly prototype: any;
|
|
228
|
-
} | (((new (...args: any[]) => (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
229
|
-
(): (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
226
|
+
} | (((new (...args: any[]) => (error: Error, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | (() => (error: Error, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void) | {
|
|
227
|
+
(): (error: Error, uploadFile: import('element-plus').UploadFile, uploadFiles: import('element-plus').UploadFiles) => void;
|
|
230
228
|
new (): any;
|
|
231
229
|
readonly prototype: any;
|
|
232
230
|
}) | null)[], unknown, unknown, () => void, boolean>;
|
|
233
|
-
readonly onExceed: EpPropFinalized<(new (...args: any[]) => (files: File[], uploadFiles: UploadUserFile[]) => void) | (() => (files: File[], uploadFiles: UploadUserFile[]) => void) | {
|
|
234
|
-
(): (files: File[], uploadFiles: UploadUserFile[]) => void;
|
|
231
|
+
readonly onExceed: import('element-plus/es/utils/index.mjs').EpPropFinalized<(new (...args: any[]) => (files: File[], uploadFiles: import('element-plus').UploadUserFile[]) => void) | (() => (files: File[], uploadFiles: import('element-plus').UploadUserFile[]) => void) | {
|
|
232
|
+
(): (files: File[], uploadFiles: import('element-plus').UploadUserFile[]) => void;
|
|
235
233
|
new (): any;
|
|
236
234
|
readonly prototype: any;
|
|
237
|
-
} | (((new (...args: any[]) => (files: File[], uploadFiles: UploadUserFile[]) => void) | (() => (files: File[], uploadFiles: UploadUserFile[]) => void) | {
|
|
238
|
-
(): (files: File[], uploadFiles: UploadUserFile[]) => void;
|
|
235
|
+
} | (((new (...args: any[]) => (files: File[], uploadFiles: import('element-plus').UploadUserFile[]) => void) | (() => (files: File[], uploadFiles: import('element-plus').UploadUserFile[]) => void) | {
|
|
236
|
+
(): (files: File[], uploadFiles: import('element-plus').UploadUserFile[]) => void;
|
|
239
237
|
new (): any;
|
|
240
238
|
readonly prototype: any;
|
|
241
239
|
}) | null)[], unknown, unknown, () => void, boolean>;
|
|
242
240
|
readonly crossorigin: {
|
|
243
|
-
readonly type: PropType<
|
|
241
|
+
readonly type: PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<(new (...args: any[]) => "" | "anonymous" | "use-credentials") | (() => "" | "anonymous" | "use-credentials") | (((new (...args: any[]) => "" | "anonymous" | "use-credentials") | (() => "" | "anonymous" | "use-credentials")) | null)[], unknown, unknown>>;
|
|
244
242
|
readonly required: false;
|
|
245
243
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
246
244
|
__epPropKey: true;
|
|
247
245
|
};
|
|
248
246
|
readonly headers: {
|
|
249
|
-
readonly type: PropType<
|
|
247
|
+
readonly type: PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<(new (...args: any[]) => Record<string, any> | Headers) | (() => Record<string, any> | Headers) | (((new (...args: any[]) => Record<string, any> | Headers) | (() => Record<string, any> | Headers)) | null)[], unknown, unknown>>;
|
|
250
248
|
readonly required: false;
|
|
251
249
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
252
250
|
__epPropKey: true;
|
|
253
251
|
};
|
|
254
|
-
readonly method: EpPropFinalized<StringConstructor, unknown, unknown, "post", boolean>;
|
|
255
|
-
readonly data: EpPropFinalized<(new (...args: any[]) => Mutable<Record<string, any>> | Promise<
|
|
256
|
-
readonly name: EpPropFinalized<StringConstructor, unknown, unknown, "file", boolean>;
|
|
252
|
+
readonly method: import('element-plus/es/utils/index.mjs').EpPropFinalized<StringConstructor, unknown, unknown, "post", boolean>;
|
|
253
|
+
readonly data: import('element-plus/es/utils/index.mjs').EpPropFinalized<(new (...args: any[]) => import('element-plus/es/utils/typescript.mjs').Mutable<Record<string, any>> | Promise<import('element-plus/es/utils/typescript.mjs').Mutable<Record<string, any>>> | ((rawFile: UploadRawFile) => import('element-plus/es/utils/typescript.mjs').Awaitable<import('element-plus').UploadData>)) | (() => import('element-plus/es/utils/typescript.mjs').Awaitable<import('element-plus/es/utils/typescript.mjs').Mutable<Record<string, any>>> | ((rawFile: UploadRawFile) => import('element-plus/es/utils/typescript.mjs').Awaitable<import('element-plus').UploadData>)) | (((new (...args: any[]) => import('element-plus/es/utils/typescript.mjs').Mutable<Record<string, any>> | Promise<import('element-plus/es/utils/typescript.mjs').Mutable<Record<string, any>>> | ((rawFile: UploadRawFile) => import('element-plus/es/utils/typescript.mjs').Awaitable<import('element-plus').UploadData>)) | (() => import('element-plus/es/utils/typescript.mjs').Awaitable<import('element-plus/es/utils/typescript.mjs').Mutable<Record<string, any>>> | ((rawFile: UploadRawFile) => import('element-plus/es/utils/typescript.mjs').Awaitable<import('element-plus').UploadData>))) | null)[], unknown, unknown, () => import('element-plus/es/utils/typescript.mjs').Mutable<{}>, boolean>;
|
|
254
|
+
readonly name: import('element-plus/es/utils/index.mjs').EpPropFinalized<StringConstructor, unknown, unknown, "file", boolean>;
|
|
257
255
|
readonly withCredentials: BooleanConstructor;
|
|
258
|
-
readonly fileList: EpPropFinalized<(new (...args: any[]) => UploadUserFile[]) | (() => UploadUserFile[]) | (((new (...args: any[]) => UploadUserFile[]) | (() => UploadUserFile[])) | null)[], unknown, unknown, () => [], boolean>;
|
|
259
|
-
readonly autoUpload: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
260
|
-
readonly listType: EpPropFinalized<StringConstructor, "text" | "picture" | "picture-card", unknown, "text", boolean>;
|
|
261
|
-
readonly httpRequest: EpPropFinalized<(new (...args: any[]) => UploadRequestHandler) | (() => UploadRequestHandler) | {
|
|
262
|
-
(): UploadRequestHandler;
|
|
256
|
+
readonly fileList: import('element-plus/es/utils/index.mjs').EpPropFinalized<(new (...args: any[]) => import('element-plus').UploadUserFile[]) | (() => import('element-plus').UploadUserFile[]) | (((new (...args: any[]) => import('element-plus').UploadUserFile[]) | (() => import('element-plus').UploadUserFile[])) | null)[], unknown, unknown, () => [], boolean>;
|
|
257
|
+
readonly autoUpload: import('element-plus/es/utils/index.mjs').EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
258
|
+
readonly listType: import('element-plus/es/utils/index.mjs').EpPropFinalized<StringConstructor, "text" | "picture" | "picture-card", unknown, "text", boolean>;
|
|
259
|
+
readonly httpRequest: import('element-plus/es/utils/index.mjs').EpPropFinalized<(new (...args: any[]) => import('element-plus').UploadRequestHandler) | (() => import('element-plus').UploadRequestHandler) | {
|
|
260
|
+
(): import('element-plus').UploadRequestHandler;
|
|
263
261
|
new (): any;
|
|
264
262
|
readonly prototype: any;
|
|
265
|
-
} | (((new (...args: any[]) => UploadRequestHandler) | (() => UploadRequestHandler) | {
|
|
266
|
-
(): UploadRequestHandler;
|
|
263
|
+
} | (((new (...args: any[]) => import('element-plus').UploadRequestHandler) | (() => import('element-plus').UploadRequestHandler) | {
|
|
264
|
+
(): import('element-plus').UploadRequestHandler;
|
|
267
265
|
new (): any;
|
|
268
266
|
readonly prototype: any;
|
|
269
|
-
}) | null)[], unknown, unknown, UploadRequestHandler, boolean>;
|
|
267
|
+
}) | null)[], unknown, unknown, import('element-plus').UploadRequestHandler, boolean>;
|
|
270
268
|
readonly limit: NumberConstructor;
|
|
271
269
|
readonly directory: BooleanConstructor;
|
|
272
270
|
};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { getAllBasicAirline as O, getDictItemsByCodes as R, listChainByTypeAirportRegionLevel as A } from "../api/basicData.js";
|
|
2
|
-
import { queryAllRoles as L
|
|
2
|
+
import { queryAllRoles as L } from "../api/dataTypeContext.js";
|
|
3
|
+
import { fetchUserListOnce as I } from "./userListCache.js";
|
|
3
4
|
import { secondaryDropdownListLossReason as T, primaryDropdownListLossReason as C } from "../api/lossReason.js";
|
|
4
5
|
import { listAllSupplierPurchase as P, listAllValidSupplierManage as _, getAllConfigListSupplierConfigManage as h } from "../api/supplier.js";
|
|
5
6
|
const o = {
|
|
@@ -56,7 +57,7 @@ const o = {
|
|
|
56
57
|
REFUND: "退票",
|
|
57
58
|
REBOOK: "改签"
|
|
58
59
|
};
|
|
59
|
-
function
|
|
60
|
+
function Q(a, e) {
|
|
60
61
|
if (!Array.isArray(a) || !a.length) return a || [];
|
|
61
62
|
if (e === d.PINYIN || e === d.NONE) return a;
|
|
62
63
|
const l = b[e];
|
|
@@ -77,7 +78,7 @@ function J(a, e) {
|
|
|
77
78
|
n.get(i).children.push(u);
|
|
78
79
|
}), s.map((u) => n.get(u));
|
|
79
80
|
}
|
|
80
|
-
function
|
|
81
|
+
function X(a) {
|
|
81
82
|
const e = /* @__PURE__ */ new Map();
|
|
82
83
|
return (Array.isArray(a) ? a : []).forEach((l) => {
|
|
83
84
|
const n = l.purchaseInfo || l, s = (n == null ? void 0 : n.supplierSubType) ?? "其他";
|
|
@@ -89,7 +90,7 @@ function Q(a) {
|
|
|
89
90
|
}, e.set(s, r)), r.children.push(l);
|
|
90
91
|
}), Array.from(e.values());
|
|
91
92
|
}
|
|
92
|
-
function
|
|
93
|
+
function Z(a, e) {
|
|
93
94
|
return e || (a === o.CONTINENT ? d.NONE : a === o.AIRPORT || a === o.CITY ? d.COUNTRY : a === o.COUNTRY || a === o.REGION ? d.CONTINENT : a === o.LOSS_REASON ? d.BUSINESS_TYPE : a === o.LOSS_REASON_SECONDARY ? d.PRIMARY_REASON : a === o.SUPPLIER_CONFIG ? d.SUPPLIER_MANAGE_NAME : d.PINYIN);
|
|
94
95
|
}
|
|
95
96
|
const v = {
|
|
@@ -155,10 +156,10 @@ o.CONTINENT, o.REGION, o.COUNTRY, o.CITY;
|
|
|
155
156
|
function N(a) {
|
|
156
157
|
return U.includes(a);
|
|
157
158
|
}
|
|
158
|
-
function
|
|
159
|
+
function ee(a, e) {
|
|
159
160
|
return !N(a) || !N(e) ? !1 : y[a] > y[e];
|
|
160
161
|
}
|
|
161
|
-
function
|
|
162
|
+
function ae(a, e) {
|
|
162
163
|
if (!N(e)) return [];
|
|
163
164
|
const { codeKey: l, nameKey: n } = F[e], s = /* @__PURE__ */ new Map();
|
|
164
165
|
return (Array.isArray(a) ? a : []).forEach((r) => {
|
|
@@ -172,7 +173,7 @@ function ee(a, e) {
|
|
|
172
173
|
});
|
|
173
174
|
}), Array.from(s.values());
|
|
174
175
|
}
|
|
175
|
-
function
|
|
176
|
+
function re(a) {
|
|
176
177
|
let e;
|
|
177
178
|
for (const l of a)
|
|
178
179
|
N(l) && (!e || y[l] > y[e]) && (e = l);
|
|
@@ -231,14 +232,14 @@ function S(a, e = D) {
|
|
|
231
232
|
}
|
|
232
233
|
};
|
|
233
234
|
}
|
|
234
|
-
function
|
|
235
|
+
function m(a = []) {
|
|
235
236
|
return (Array.isArray(a) ? a : []).filter((e) => (e == null ? void 0 : e.id) !== void 0 && (e == null ? void 0 : e.id) !== null).map((e) => ({
|
|
236
237
|
...e,
|
|
237
238
|
label: e.fullName || e.username || String(e.id),
|
|
238
239
|
value: e.id
|
|
239
240
|
}));
|
|
240
241
|
}
|
|
241
|
-
function
|
|
242
|
+
function x(a = []) {
|
|
242
243
|
return (Array.isArray(a) ? a : []).filter((e) => (e == null ? void 0 : e.id) !== void 0 && (e == null ? void 0 : e.id) !== null).map((e) => ({
|
|
243
244
|
...e,
|
|
244
245
|
label: e.roleName || e.roleCode || String(e.id),
|
|
@@ -293,7 +294,7 @@ function H(a = []) {
|
|
|
293
294
|
}
|
|
294
295
|
}));
|
|
295
296
|
}
|
|
296
|
-
const
|
|
297
|
+
const le = {
|
|
297
298
|
[o.AIRLINE]: {
|
|
298
299
|
defaultFieldName: "airlineCodes",
|
|
299
300
|
defaultLabel: "航司",
|
|
@@ -386,8 +387,8 @@ const re = {
|
|
|
386
387
|
defaultShowAll: !1,
|
|
387
388
|
async fetchOptions() {
|
|
388
389
|
try {
|
|
389
|
-
const a = await I(
|
|
390
|
-
return
|
|
390
|
+
const a = await I();
|
|
391
|
+
return m(a);
|
|
391
392
|
} catch {
|
|
392
393
|
return [];
|
|
393
394
|
}
|
|
@@ -402,7 +403,7 @@ const re = {
|
|
|
402
403
|
async fetchOptions() {
|
|
403
404
|
try {
|
|
404
405
|
const a = await L();
|
|
405
|
-
return
|
|
406
|
+
return x(a || []);
|
|
406
407
|
} catch {
|
|
407
408
|
return [];
|
|
408
409
|
}
|
|
@@ -492,14 +493,14 @@ const re = {
|
|
|
492
493
|
};
|
|
493
494
|
export {
|
|
494
495
|
o as CODES,
|
|
495
|
-
|
|
496
|
+
le as CODE_REGISTRY,
|
|
496
497
|
U as GEO_LEVEL_CODES,
|
|
497
498
|
d as GROUP_BY,
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
499
|
+
ee as canDeriveGeoLevel,
|
|
500
|
+
ae as deriveRegionLevelOptionsFromGeoSource,
|
|
501
|
+
Q as groupBasicDataOptions,
|
|
502
|
+
X as groupPurchasePlaceOptions,
|
|
502
503
|
N as isGeoLevelCode,
|
|
503
|
-
|
|
504
|
-
|
|
504
|
+
Z as resolveDefaultGroupBy,
|
|
505
|
+
re as resolveHighestGeoLevelCode
|
|
505
506
|
};
|
|
@@ -1,26 +1,39 @@
|
|
|
1
1
|
import { MaybeRef, Ref } from 'vue';
|
|
2
|
-
|
|
2
|
+
/** 数据权限维度的 code 标识,对应平台、店铺、采购地、业务类型、锁单人、用户 */
|
|
3
|
+
export type BusinessDataType = "platformId" | "shopId" | "purchasePlaceId" | "businessType" | "lockUserId" | "userId";
|
|
4
|
+
/** 下拉选项条目,label 和 value 由 toNormalizedOptions 从原始字段映射而来 */
|
|
3
5
|
export type DataPermissionOptionItem = Record<string, any> & {
|
|
4
6
|
label?: string;
|
|
5
7
|
value?: string | number;
|
|
6
8
|
};
|
|
7
|
-
|
|
8
|
-
export
|
|
9
|
-
|
|
9
|
+
/** 各 code 到选项列表的映射,Partial 因为不一定每个 code 都有数据 */
|
|
10
|
+
export type DataPermissionOptionsMap = Partial<Record<BusinessDataType, DataPermissionOptionItem[]>>;
|
|
11
|
+
/** useDataPermissionOptions 的入参 */
|
|
12
|
+
export interface UseBusinessDataOptions {
|
|
13
|
+
/** 需要获取的数据权限维度 */
|
|
14
|
+
codes: BusinessDataType[];
|
|
15
|
+
/** 外部数据源,传入后优先使用,不走接口请求,不回写共享缓存 */
|
|
10
16
|
dataSource?: MaybeRef<DataPermissionOptionsMap | undefined>;
|
|
11
|
-
|
|
17
|
+
/** 是否在选项列表头部插入「全部」选项。传 boolean 对所有 code 生效,传对象可按 code 单独控制 */
|
|
18
|
+
showAll?: boolean | Partial<Record<BusinessDataType, boolean>>;
|
|
12
19
|
}
|
|
13
20
|
/**
|
|
21
|
+
* 获取当前用户的数据权限下拉选项(平台 / 店铺 / 采购地 / 业务类型 / 锁单人 / 用户)。
|
|
14
22
|
*
|
|
23
|
+
* 同路由多个实例共享缓存,microtask 合并同 tick 请求,pending 去重跨 tick 请求。
|
|
24
|
+
* 返回的 dataSource 是只读 Proxy,访问未声明的 code 返回空数组,赋值会报错。
|
|
25
|
+
*
|
|
26
|
+
* @param options 配置项
|
|
27
|
+
* @returns dataSource — 响应式选项数据源;reload — 清空当前路由缓存并重新请求
|
|
15
28
|
* @example
|
|
16
29
|
* ```ts
|
|
17
30
|
* const { dataSource } = useDataPermissionOptions({
|
|
18
|
-
*
|
|
19
|
-
* })
|
|
20
|
-
*
|
|
21
|
-
*
|
|
31
|
+
* codes: ["userId", "shopId"],
|
|
32
|
+
* });
|
|
33
|
+
* dataSource.value.userId // [{ label: "张三", value: 1 }, ...]
|
|
34
|
+
* ```
|
|
22
35
|
*/
|
|
23
|
-
export declare function useDataPermissionOptions(options:
|
|
24
|
-
dataSource: Ref<Record<
|
|
36
|
+
export declare function useDataPermissionOptions(options: UseBusinessDataOptions): {
|
|
37
|
+
dataSource: Ref<Record<BusinessDataType, DataPermissionOptionItem[]>>;
|
|
25
38
|
reload: () => Promise<void>;
|
|
26
39
|
};
|
|
@@ -1,146 +1,103 @@
|
|
|
1
|
-
import { queryDataPermissionDetailDataTypeContext as
|
|
2
|
-
import { fetchUserListOnce as
|
|
3
|
-
import {
|
|
4
|
-
import { useOwnerRoutePath as
|
|
5
|
-
const
|
|
1
|
+
import { queryDataPermissionDetailDataTypeContext as M } from "../api/dataTypeContext.js";
|
|
2
|
+
import { fetchUserListOnce as N, clearUserListCache as R } from "./userListCache.js";
|
|
3
|
+
import { computed as O, unref as S, ref as A } from "vue";
|
|
4
|
+
import { useOwnerRoutePath as D } from "./useOwnerRoutePath.js";
|
|
5
|
+
const F = { label: "全部", value: "all" }, T = {
|
|
6
6
|
platformId: ["platformName", "platformId"],
|
|
7
7
|
shopId: ["shopName", "shopId"],
|
|
8
8
|
purchasePlaceId: ["purchasePlaceName", "purchasePlaceCode"],
|
|
9
9
|
businessType: ["itemName", "itemCode"],
|
|
10
10
|
lockUserId: ["userName", "userId"],
|
|
11
11
|
userId: ["fullName", "id"]
|
|
12
|
-
};
|
|
13
|
-
function
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
12
|
+
}, f = /* @__PURE__ */ new Map(), d = /* @__PURE__ */ new Map(), h = /* @__PURE__ */ new Map(), g = /* @__PURE__ */ new Set(), y = /* @__PURE__ */ new Map(), p = /* @__PURE__ */ new Map(), I = /* @__PURE__ */ new WeakMap();
|
|
13
|
+
function v(e) {
|
|
14
|
+
let s = y.get(e);
|
|
15
|
+
return s || (s = A(0), y.set(e, s)), s;
|
|
16
|
+
}
|
|
17
|
+
function q(e) {
|
|
18
|
+
v(e).value++;
|
|
19
|
+
}
|
|
20
|
+
function x(e, s = []) {
|
|
21
|
+
let o = I.get(s);
|
|
22
|
+
o || (o = /* @__PURE__ */ new Map(), I.set(s, o));
|
|
23
|
+
const a = o.get(e);
|
|
24
|
+
if (a) return a.slice();
|
|
25
|
+
const [l, r] = T[e], c = s.map((t) => {
|
|
26
|
+
const n = e === "purchasePlaceId" ? t.purchaseInfo || {} : t;
|
|
27
|
+
return { ...t, label: n[l], value: n[r] };
|
|
23
28
|
});
|
|
24
|
-
return
|
|
29
|
+
return o.set(e, c), c.slice();
|
|
25
30
|
}
|
|
26
|
-
function
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
31
|
+
async function L(e) {
|
|
32
|
+
const s = e.filter((t) => t !== "userId"), o = e.includes("userId"), [a, l] = await Promise.allSettled([
|
|
33
|
+
s.length ? M({ dataTypeName: s }).then(
|
|
34
|
+
(t) => t
|
|
35
|
+
) : Promise.resolve([]),
|
|
36
|
+
o ? N() : Promise.resolve(void 0)
|
|
37
|
+
]), r = {};
|
|
38
|
+
if (a.status === "fulfilled") {
|
|
39
|
+
for (const t of s)
|
|
40
|
+
r[t] = [];
|
|
41
|
+
for (const t of a.value) {
|
|
42
|
+
const n = t == null ? void 0 : t.dataTypeCode;
|
|
43
|
+
n && (r[n] = t.originalItems || []);
|
|
44
|
+
}
|
|
40
45
|
}
|
|
41
|
-
|
|
42
|
-
|
|
46
|
+
const c = l.status === "fulfilled" ? l.value : void 0;
|
|
47
|
+
return c != null && c.length && (r.userId = c), r;
|
|
48
|
+
}
|
|
49
|
+
async function C(e, s = !1) {
|
|
50
|
+
const o = d.get(e);
|
|
51
|
+
o && await o;
|
|
52
|
+
const a = f.get(e) ?? {}, l = [...h.get(e) ?? []], r = s ? l : l.filter((n) => !Object.hasOwn(a, n));
|
|
53
|
+
if (!r.length) return;
|
|
54
|
+
const c = p.get(e) ?? 0, t = (async () => {
|
|
55
|
+
const n = await L(r);
|
|
56
|
+
if ((p.get(e) ?? 0) !== c) return;
|
|
57
|
+
const m = { ...f.get(e) ?? {}, ...n };
|
|
58
|
+
f.set(e, m), q(e);
|
|
59
|
+
})();
|
|
60
|
+
d.set(e, t);
|
|
61
|
+
try {
|
|
62
|
+
await t;
|
|
63
|
+
} finally {
|
|
64
|
+
d.get(e) === t && d.delete(e);
|
|
43
65
|
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
66
|
+
}
|
|
67
|
+
function U(e) {
|
|
68
|
+
g.has(e) || (g.add(e), Promise.resolve().then(() => {
|
|
69
|
+
g.delete(e), C(e);
|
|
70
|
+
}));
|
|
71
|
+
}
|
|
72
|
+
function E(e) {
|
|
73
|
+
const s = D(), o = v(s), a = h.get(s) ?? /* @__PURE__ */ new Set();
|
|
74
|
+
e.codes.forEach((t) => a.add(t)), h.set(s, a), U(s);
|
|
75
|
+
function l(t) {
|
|
76
|
+
var n;
|
|
77
|
+
return typeof e.showAll == "boolean" ? e.showAll : ((n = e.showAll) == null ? void 0 : n[t]) ?? !1;
|
|
47
78
|
}
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
79
|
+
const r = O(() => {
|
|
80
|
+
o.value;
|
|
81
|
+
const t = S(e.dataSource), n = f.get(s) ?? {}, w = t ? { ...n, ...t } : n, m = {};
|
|
82
|
+
for (const i of e.codes) {
|
|
83
|
+
const u = x(i, w[i]);
|
|
84
|
+
m[i] = l(i) ? [F, ...u] : u;
|
|
53
85
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
return;
|
|
60
|
-
}
|
|
61
|
-
const N = p.get(e);
|
|
62
|
-
if (N) {
|
|
63
|
-
await N;
|
|
64
|
-
continue;
|
|
65
|
-
}
|
|
66
|
-
if (g.every((s) => l.has(s))) {
|
|
67
|
-
o(v);
|
|
68
|
-
return;
|
|
69
|
-
}
|
|
70
|
-
g.forEach((s) => l.add(s));
|
|
71
|
-
const x = g.filter((s) => s !== "userId"), _ = g.includes("userId"), D = Promise.allSettled([
|
|
72
|
-
x.length ? j({ dataTypeName: x }).then(
|
|
73
|
-
(s) => s
|
|
74
|
-
) : Promise.resolve([]),
|
|
75
|
-
_ ? k() : Promise.resolve(void 0)
|
|
76
|
-
]).then(([s, q]) => {
|
|
77
|
-
const w = s.status === "fulfilled" ? s.value : [], C = q.status === "fulfilled" ? q.value : void 0;
|
|
78
|
-
return {
|
|
79
|
-
...C != null && C.length ? { userId: C } : {},
|
|
80
|
-
...w.reduce((O, P) => {
|
|
81
|
-
const T = P == null ? void 0 : P.dataTypeCode;
|
|
82
|
-
return T && (O[T] = P.originalItems || []), O;
|
|
83
|
-
}, {})
|
|
84
|
-
};
|
|
85
|
-
}), R = (I.get(e) || 0) + 1;
|
|
86
|
-
I.set(e, R), p.set(e, D);
|
|
87
|
-
try {
|
|
88
|
-
const s = await D;
|
|
89
|
-
if (I.get(e) !== R) continue;
|
|
90
|
-
const w = { ...u.get(e) || {}, ...s };
|
|
91
|
-
u.set(e, w), o(w);
|
|
92
|
-
} finally {
|
|
93
|
-
p.get(e) === D && p.delete(e);
|
|
86
|
+
return new Proxy(m, {
|
|
87
|
+
get(i, u, b) {
|
|
88
|
+
return typeof u == "symbol" ? Reflect.get(i, u, b) : i[u] ?? [];
|
|
89
|
+
},
|
|
90
|
+
set(i, u) {
|
|
91
|
+
return !0;
|
|
94
92
|
}
|
|
95
|
-
}
|
|
96
|
-
o(u.get(e) || {});
|
|
97
|
-
}
|
|
98
|
-
async function E() {
|
|
99
|
-
const t = a, e = new Set(d.get(t) || n.codes);
|
|
100
|
-
S(), m(t), d.set(t, e), await c(!0);
|
|
101
|
-
}
|
|
102
|
-
function A(t) {
|
|
103
|
-
const e = f.get(t);
|
|
104
|
-
if (e) return e;
|
|
105
|
-
const r = Promise.resolve().then(() => c());
|
|
106
|
-
return f.set(t, r), r.finally(() => {
|
|
107
|
-
f.get(t) === r && f.delete(t);
|
|
108
|
-
}), r;
|
|
109
|
-
}
|
|
110
|
-
W(() => {
|
|
111
|
-
const t = U(n.dataSource);
|
|
112
|
-
t && o({ ...u.get(a) || {}, ...t });
|
|
93
|
+
});
|
|
113
94
|
});
|
|
114
|
-
function
|
|
115
|
-
|
|
95
|
+
async function c() {
|
|
96
|
+
const t = (p.get(s) ?? 0) + 1;
|
|
97
|
+
p.set(s, t), f.delete(s), d.delete(s), R(), await C(s, !0);
|
|
116
98
|
}
|
|
117
|
-
return
|
|
118
|
-
/**
|
|
119
|
-
* 数据源
|
|
120
|
-
*/
|
|
121
|
-
dataSource: G(() => {
|
|
122
|
-
const t = n.codes.reduce(
|
|
123
|
-
(e, r) => {
|
|
124
|
-
const l = i.value[r] || [];
|
|
125
|
-
return e[r] = y(r) ? [Q, ...l] : l, e;
|
|
126
|
-
},
|
|
127
|
-
{}
|
|
128
|
-
);
|
|
129
|
-
return new Proxy(t, {
|
|
130
|
-
get(e, r) {
|
|
131
|
-
return typeof r != "string" ? [] : t[r] || [];
|
|
132
|
-
},
|
|
133
|
-
set() {
|
|
134
|
-
return !1;
|
|
135
|
-
}
|
|
136
|
-
});
|
|
137
|
-
}),
|
|
138
|
-
/**
|
|
139
|
-
* @description 清空所有缓存,重新请求
|
|
140
|
-
*/
|
|
141
|
-
reload: E
|
|
142
|
-
};
|
|
99
|
+
return { dataSource: r, reload: c };
|
|
143
100
|
}
|
|
144
101
|
export {
|
|
145
|
-
|
|
102
|
+
E as useDataPermissionOptions
|
|
146
103
|
};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { TtFormSchema } from '../components/tt-form';
|
|
2
2
|
import { Recordable } from '../../../utils/src';
|
|
3
3
|
import { MaybeRef, Ref } from 'vue';
|
|
4
|
-
import {
|
|
5
|
-
type DataType = Exclude<
|
|
4
|
+
import { BusinessDataType, DataPermissionOptionsMap } from './useDataPermissionOptions';
|
|
5
|
+
type DataType = Exclude<BusinessDataType, "userId">;
|
|
6
6
|
/**
|
|
7
7
|
* 表单使用场景。
|
|
8
8
|
*
|
|
@@ -89,7 +89,7 @@ export type SelectOption = Recordable & {
|
|
|
89
89
|
* 返回值会包含每个 DataType 对应的 TtFormSchema,以及当前已归一化的下拉数据源。
|
|
90
90
|
*/
|
|
91
91
|
type UseFormSchemasLinkResult = Record<DataType, TtFormSchema> & {
|
|
92
|
-
dataSource: Ref<Record<
|
|
92
|
+
dataSource: Ref<Record<BusinessDataType, SelectOption[]>>;
|
|
93
93
|
};
|
|
94
94
|
type FormSchemasLinkBuilder = {
|
|
95
95
|
/** 设置为查询筛选场景 */
|
|
@@ -99,7 +99,7 @@ type FormSchemasLinkBuilder = {
|
|
|
99
99
|
/** 设置表单场景 */
|
|
100
100
|
scene(scene: FormScene): FormSchemasLinkBuilder;
|
|
101
101
|
/** 指定需要请求和构建的字段类型,默认包含全部 DataType */
|
|
102
|
-
codes(codes:
|
|
102
|
+
codes(codes: BusinessDataType[]): FormSchemasLinkBuilder;
|
|
103
103
|
/** 使用外部数据源,跳过内部接口请求 */
|
|
104
104
|
dataSource(dataSource: MaybeRef<DataPermissionOptionsMap | undefined>): FormSchemasLinkBuilder;
|
|
105
105
|
/** 覆盖单个字段配置 */
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { MaybeRef
|
|
1
|
+
import { MaybeRef } from 'vue';
|
|
2
2
|
/**
|
|
3
3
|
* 用于处理加载状态的钩子函数
|
|
4
4
|
* @returns 包含获取加载状态和设置加载状态的函数的对象
|
|
5
5
|
*/
|
|
6
6
|
export declare function useLoading(loading?: MaybeRef<boolean>): {
|
|
7
|
-
getLoading: ComputedRef<boolean>;
|
|
7
|
+
getLoading: import('vue').ComputedRef<boolean>;
|
|
8
8
|
setLoading: (loading: boolean) => void;
|
|
9
9
|
};
|