@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.
Files changed (135) hide show
  1. package/dist/components/tt-api-component/index.d.ts +35 -24
  2. package/dist/components/tt-api-component/index.vue.d.ts +34 -0
  3. package/dist/components/tt-area/TtArea.vue.d.ts +2 -0
  4. package/dist/components/tt-area/index.d.ts +1 -1
  5. package/dist/components/tt-button/components/AddButton.vue.d.ts +2 -0
  6. package/dist/components/tt-button/index.d.ts +589 -260
  7. package/dist/components/tt-button/index.vue.d.ts +466 -0
  8. package/dist/components/tt-checkbox/index.d.ts +35 -26
  9. package/dist/components/tt-checkbox/index.vue.d.ts +28 -0
  10. package/dist/components/tt-drawer/index.d.ts +299 -306
  11. package/dist/components/tt-drawer/src/{RenderDrawer.d.ts → RenderDrawer.vue.d.ts} +146 -149
  12. package/dist/components/tt-drawer/src/components/{DrawerFooter.d.ts → DrawerFooter.vue.d.ts} +16 -18
  13. package/dist/components/tt-drawer/src/components/{DrawerHeader.d.ts → DrawerHeader.vue.d.ts} +3 -4
  14. package/dist/components/tt-drawer/src/hooks/useDrawerRender.d.ts +2 -2
  15. package/dist/components/tt-drawer/src/hooks/useResizable.d.ts +2 -2
  16. package/dist/components/tt-drawer/src/utils/drawer-api.d.ts +2 -4
  17. package/dist/components/tt-empty/index.d.ts +8 -10
  18. package/dist/components/tt-form/src/components/{ExpandableArrow.d.ts → ExpandableArrow.vue.d.ts} +4 -5
  19. package/dist/components/tt-form/src/components/{FormActions.d.ts → FormActions.vue.d.ts} +5 -6
  20. package/dist/components/tt-form/src/components/{FormElInput.d.ts → FormElInput.vue.d.ts} +101 -105
  21. package/dist/components/tt-form/src/components/Slot.d.ts +4 -4
  22. package/dist/components/tt-form/src/form/{FormControl.d.ts → FormControl.vue.d.ts} +1 -2
  23. package/dist/components/tt-form/src/form/{FormDescription.d.ts → FormDescription.vue.d.ts} +1 -2
  24. package/dist/components/tt-form/src/form/{FormItem.d.ts → FormItem.vue.d.ts} +1 -2
  25. package/dist/components/tt-form/src/form/{FormLabel.d.ts → FormLabel.vue.d.ts} +1 -2
  26. package/dist/components/tt-form/src/form/FormMessage.vue.d.ts +2 -0
  27. package/dist/components/tt-form/src/form/FormMessageToolTip.vue.d.ts +8 -0
  28. package/dist/components/tt-form/src/form/{FormWarnMessage.d.ts → FormWarnMessage.vue.d.ts} +1 -2
  29. package/dist/components/tt-form/src/form/{RenderContent.d.ts → RenderContent.vue.d.ts} +4 -4
  30. package/dist/components/tt-form/src/form/index.d.ts +8 -8
  31. package/dist/components/tt-form/src/form/useFormField.d.ts +5 -6
  32. package/dist/components/tt-form/src/form-render/{FormField.d.ts → FormField.vue.d.ts} +1 -2
  33. package/dist/components/tt-form/src/form-render/FormFieldContact.d.ts +6 -6
  34. package/dist/components/tt-form/src/form-render/{FormLabel.d.ts → FormLabel.vue.d.ts} +2 -3
  35. package/dist/components/tt-form/src/form-render/array-register/FormArrayRegister.d.ts +11 -14
  36. package/dist/components/tt-form/src/form-render/context.d.ts +4 -5
  37. package/dist/components/tt-form/src/form-render/dependencies.d.ts +6 -7
  38. package/dist/components/tt-form/src/form-render/expandable.d.ts +3 -4
  39. package/dist/components/tt-form/src/form-render/{form.d.ts → form.vue.d.ts} +8 -9
  40. package/dist/components/tt-form/src/form-render/index.d.ts +3 -3
  41. package/dist/components/tt-form/src/formApi.d.ts +3 -3
  42. package/dist/components/tt-form/src/group-form/{GroupForm.d.ts → GroupForm.vue.d.ts} +5 -7
  43. package/dist/components/tt-form/src/group-form/{GroupSection.d.ts → GroupSection.vue.d.ts} +5 -7
  44. package/dist/components/tt-form/src/group-form/{LazyFormField.d.ts → LazyFormField.vue.d.ts} +3 -5
  45. package/dist/components/tt-form/src/group-form/groupFormApi.d.ts +5 -7
  46. package/dist/components/tt-form/src/hooks/useFormFieldBus.d.ts +2 -3
  47. package/dist/components/tt-form/src/hooks/useForwardProps.d.ts +2 -2
  48. package/dist/components/tt-form/src/hooks/useForwardPropsEmits.d.ts +2 -2
  49. package/dist/components/tt-form/src/index.vue.d.ts +216 -0
  50. package/dist/components/tt-form/src/useForm.d.ts +1 -2
  51. package/dist/components/tt-form/src/useFormContext.d.ts +1 -2
  52. package/dist/components/tt-form-item-error-tooltip/index.d.ts +337 -61
  53. package/dist/components/tt-form-item-error-tooltip/index.vue.d.ts +298 -0
  54. package/dist/components/tt-icon/components/AddIcon.vue.d.ts +7 -0
  55. package/dist/components/tt-icon/components/SubIcon.vue.d.ts +7 -0
  56. package/dist/components/tt-icon/index.d.ts +115 -24
  57. package/dist/components/tt-icon/index.vue.d.ts +32 -0
  58. package/dist/components/tt-image/index.d.ts +41 -45
  59. package/dist/components/tt-image/src/components/ImageViewer.d.ts +26 -30
  60. package/dist/components/tt-image/tt-image.d.ts +34 -36
  61. package/dist/components/tt-loading/index.d.ts +2 -5
  62. package/dist/components/tt-loading/src/loading.vue.d.ts +12 -0
  63. package/dist/components/tt-log/index.d.ts +6 -7
  64. package/dist/components/tt-log/index.vue.d.ts +5 -0
  65. package/dist/components/tt-modal/index.d.ts +364 -371
  66. package/dist/components/tt-modal/src/{RenderModal.d.ts → RenderModal.vue.d.ts} +115 -118
  67. package/dist/components/tt-modal/src/components/{ModalFooter.d.ts → ModalFooter.vue.d.ts} +23 -26
  68. package/dist/components/tt-modal/src/components/{ModalHeader.d.ts → ModalHeader.vue.d.ts} +3 -4
  69. package/dist/components/tt-modal/src/components/{ModalWrapper.d.ts → ModalWrapper.vue.d.ts} +24 -27
  70. package/dist/components/tt-modal/src/hooks/useModalRender.d.ts +29 -32
  71. package/dist/components/tt-modal/src/typing.d.ts +2 -2
  72. package/dist/components/tt-modal/src/utils/modal-api.d.ts +1 -2
  73. package/dist/components/tt-modal-form/hooks/useModalFormSlot.d.ts +2 -3
  74. package/dist/components/tt-modal-form/index.d.ts +2 -46
  75. package/dist/components/tt-modal-form/index.vue.d.ts +45 -0
  76. package/dist/components/tt-modal-form/useModalForm.d.ts +3 -4
  77. package/dist/components/tt-nav-anchor/index.d.ts +12 -15
  78. package/dist/components/tt-nav-anchor/src/{TtNavAnchor.d.ts → TtNavAnchor.vue.d.ts} +4 -4
  79. package/dist/components/tt-panel-select/index.d.ts +1 -1
  80. package/dist/components/tt-panel-select/src/components/{PanelLeft.d.ts → PanelLeft.vue.d.ts} +3 -4
  81. package/dist/components/tt-panel-select/src/components/{PanelMiddle.d.ts → PanelMiddle.vue.d.ts} +80 -83
  82. package/dist/components/tt-panel-select/src/components/{PanelRight.d.ts → PanelRight.vue.d.ts} +32 -34
  83. package/dist/components/tt-panel-select/src/hooks/usePanelData.d.ts +6 -7
  84. package/dist/components/tt-panel-select/src/hooks/usePanelSelection.d.ts +5 -5
  85. package/dist/components/tt-panel-select/src/{index.d.ts → index.vue.d.ts} +80 -84
  86. package/dist/components/tt-radio-group/index.d.ts +50 -31
  87. package/dist/components/tt-radio-group/index.vue.d.ts +33 -0
  88. package/dist/components/tt-select/index.d.ts +1 -1
  89. package/dist/components/tt-select/src/{Select.d.ts → Select.vue.d.ts} +141 -146
  90. package/dist/components/tt-select/src/components/{SelectTable.d.ts → SelectTable.vue.d.ts} +36 -40
  91. package/dist/components/tt-select/src/components/{Table.d.ts → Table.vue.d.ts} +38 -41
  92. package/dist/components/tt-select/src/hooks/useGrid.d.ts +2 -2
  93. package/dist/components/tt-select/src/hooks/usePagination.d.ts +3 -4
  94. package/dist/components/tt-select/src/hooks/useSelect.d.ts +2 -2
  95. package/dist/components/tt-select/src/hooks/useSelectTableEvent.d.ts +1 -1
  96. package/dist/components/tt-table/index.d.ts +279 -287
  97. package/dist/components/tt-table/src/{Table.d.ts → Table.vue.d.ts} +204 -209
  98. package/dist/components/tt-table/src/{TableForm.d.ts → TableForm.vue.d.ts} +80 -83
  99. package/dist/components/tt-table/src/components/RowContext.d.ts +5 -5
  100. package/dist/components/tt-table/src/components/{TableAction.d.ts → TableAction.vue.d.ts} +4 -4
  101. package/dist/components/tt-table/src/components/TableButtons.d.ts +5 -5
  102. package/dist/components/tt-table/src/components/{TableColumnModal.d.ts → TableColumnModal.vue.d.ts} +4 -5
  103. package/dist/components/tt-table/src/components/{TableToolbarTools.d.ts → TableToolbarTools.vue.d.ts} +6 -7
  104. package/dist/components/tt-table/src/hooks/useColumns.d.ts +44 -45
  105. package/dist/components/tt-table/src/hooks/usePagination.d.ts +33 -33
  106. package/dist/components/tt-table/src/hooks/useQuery.d.ts +2 -2
  107. package/dist/components/tt-table/src/hooks/useRowSelection.d.ts +2 -2
  108. package/dist/components/tt-table/src/hooks/useSideSlot.d.ts +110 -112
  109. package/dist/components/tt-table/src/hooks/useTableData.d.ts +2 -2
  110. package/dist/components/tt-table/src/props.d.ts +17 -19
  111. package/dist/components/tt-table/src/utils/table-api.d.ts +4 -4
  112. package/dist/components/tt-table/src/utils/table-form-api.d.ts +1 -2
  113. package/dist/components/tt-text/index.d.ts +59 -34
  114. package/dist/components/tt-text/index.vue.d.ts +50 -0
  115. package/dist/components/tt-upload/index.d.ts +311 -317
  116. package/dist/components/tt-upload/src/TtUpload.vue.d.ts +517 -0
  117. package/dist/components/tt-upload/src/typing.d.ts +47 -49
  118. package/dist/hooks/basicDataCodes.js +21 -20
  119. package/dist/hooks/useDataPermissionOptions.d.ts +24 -11
  120. package/dist/hooks/useDataPermissionOptions.js +85 -128
  121. package/dist/hooks/useFormSchemasLink.d.ts +4 -4
  122. package/dist/hooks/useLoading.d.ts +2 -2
  123. package/dist/hooks/useScreenshotOss.d.ts +2 -2
  124. package/dist/hooks/userListCache.js +5 -5
  125. package/dist/index.d.ts +1 -2
  126. package/package.json +1 -1
  127. package/dist/components/tt-area/TtArea.d.ts +0 -3
  128. package/dist/components/tt-button/components/AddButton.d.ts +0 -3
  129. package/dist/components/tt-form/src/form/FormMessage.d.ts +0 -3
  130. package/dist/components/tt-form/src/form/FormMessageToolTip.d.ts +0 -9
  131. package/dist/components/tt-form/src/index.d.ts +0 -217
  132. package/dist/components/tt-icon/components/AddIcon.d.ts +0 -8
  133. package/dist/components/tt-icon/components/SubIcon.d.ts +0 -8
  134. package/dist/components/tt-loading/src/loading.d.ts +0 -13
  135. 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, UploadFile, UploadFiles, UploadProgressEvent, UploadUserFile, UploadData, UploadRequestHandler } from 'element-plus';
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< EpPropMergeType<(new (...args: any[]) => "" | "anonymous" | "use-credentials") | (() => "" | "anonymous" | "use-credentials") | (((new (...args: any[]) => "" | "anonymous" | "use-credentials") | (() => "" | "anonymous" | "use-credentials")) | null)[], unknown, unknown>>;
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< 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>>;
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< Mutable<Record<string, any>>> | ((rawFile: UploadRawFile) => Awaitable<UploadData>)) | (() => Awaitable<Mutable<Record<string, any>>> | ((rawFile: UploadRawFile) => Awaitable<UploadData>)) | (((new (...args: any[]) => Mutable<Record<string, any>> | Promise< Mutable<Record<string, any>>> | ((rawFile: UploadRawFile) => Awaitable<UploadData>)) | (() => Awaitable<Mutable<Record<string, any>>> | ((rawFile: UploadRawFile) => Awaitable<UploadData>))) | null)[], unknown, unknown, () => Mutable<{}>, boolean>;
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, pageUser as I } from "../api/dataTypeContext.js";
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 J(a, e) {
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 Q(a) {
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 X(a, e) {
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 Z(a, e) {
159
+ function ee(a, e) {
159
160
  return !N(a) || !N(e) ? !1 : y[a] > y[e];
160
161
  }
161
- function ee(a, e) {
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 ae(a) {
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 x(a = []) {
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 m(a = []) {
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 re = {
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({ pageNo: 1, pageSize: 9999 });
390
- return x((a == null ? void 0 : a.records) || []);
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 m(a || []);
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
- re as CODE_REGISTRY,
496
+ le as CODE_REGISTRY,
496
497
  U as GEO_LEVEL_CODES,
497
498
  d as GROUP_BY,
498
- Z as canDeriveGeoLevel,
499
- ee as deriveRegionLevelOptionsFromGeoSource,
500
- J as groupBasicDataOptions,
501
- Q as groupPurchasePlaceOptions,
499
+ ee as canDeriveGeoLevel,
500
+ ae as deriveRegionLevelOptionsFromGeoSource,
501
+ Q as groupBasicDataOptions,
502
+ X as groupPurchasePlaceOptions,
502
503
  N as isGeoLevelCode,
503
- X as resolveDefaultGroupBy,
504
- ae as resolveHighestGeoLevelCode
504
+ Z as resolveDefaultGroupBy,
505
+ re as resolveHighestGeoLevelCode
505
506
  };
@@ -1,26 +1,39 @@
1
1
  import { MaybeRef, Ref } from 'vue';
2
- export type BudinessDataType = "platformId" | "shopId" | "purchasePlaceId" | "businessType" | "lockUserId" | "userId";
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
- export type DataPermissionOptionsMap = Partial<Record<BudinessDataType, DataPermissionOptionItem[]>>;
8
- export interface UseBudinessDataOptions {
9
- codes: BudinessDataType[];
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
- showAll?: boolean | Partial<Record<BudinessDataType, boolean>>;
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
- * codes:['userId','shopId]
19
- * })
20
- *
21
- * dataSource.value.userId
31
+ * codes: ["userId", "shopId"],
32
+ * });
33
+ * dataSource.value.userId // [{ label: "张三", value: 1 }, ...]
34
+ * ```
22
35
  */
23
- export declare function useDataPermissionOptions(options: UseBudinessDataOptions): {
24
- dataSource: Ref<Record<BudinessDataType, DataPermissionOptionItem[]>>;
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 j } from "../api/dataTypeContext.js";
2
- import { fetchUserListOnce as k, clearUserListCache as B } from "./userListCache.js";
3
- import { ref as F, watchEffect as W, unref as U, computed as G } from "vue";
4
- import { useOwnerRoutePath as H } from "./useOwnerRoutePath.js";
5
- const u = /* @__PURE__ */ new Map(), d = /* @__PURE__ */ new Map(), p = /* @__PURE__ */ new Map(), f = /* @__PURE__ */ new Map(), I = /* @__PURE__ */ new Map(), J = "all", Q = { label: "全部", value: J }, b = /* @__PURE__ */ new WeakMap(), X = {
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 Y(n, a = []) {
14
- const i = b.get(a) || /* @__PURE__ */ new Map(), o = i.get(n);
15
- if (o) return o.slice();
16
- const [y, S] = X[n], m = a.map((h) => {
17
- const c = n === "purchasePlaceId" ? h.purchaseInfo || {} : h;
18
- return {
19
- ...h,
20
- label: c == null ? void 0 : c[y],
21
- value: c == null ? void 0 : c[S]
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 i.set(n, m), b.set(a, i), m.slice();
29
+ return o.set(e, c), c.slice();
25
30
  }
26
- function re(n) {
27
- const a = H(), i = F({});
28
- function o(t = {}) {
29
- i.value = n.codes.reduce(
30
- (e, r) => (e[r] = Y(r, t[r]), e),
31
- {}
32
- );
33
- }
34
- function y(t) {
35
- var e;
36
- return typeof n.showAll == "boolean" ? n.showAll : ((e = n.showAll) == null ? void 0 : e[t]) ?? !1;
37
- }
38
- function S() {
39
- p.clear(), f.clear(), u.clear(), d.clear(), I.clear(), B();
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
- function m(t) {
42
- u.delete(t), d.delete(t), f.delete(t);
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
- function h(t) {
45
- const e = d.get(t) || /* @__PURE__ */ new Set(), r = e.size;
46
- n.codes.forEach((l) => e.add(l)), d.set(t, e), e.size !== r && A(t);
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
- async function c(t = !1) {
49
- const e = a, r = U(n.dataSource);
50
- if (r) {
51
- o({ ...u.get(e) || {}, ...r });
52
- return;
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
- const l = /* @__PURE__ */ new Set(), V = 32;
55
- for (let L = 0; L < V; L++) {
56
- const v = u.get(e) || {}, M = [...d.get(e) || n.codes], g = t ? M : M.filter((s) => !Object.prototype.hasOwnProperty.call(v, s));
57
- if (t = !1, !g.length) {
58
- o(v);
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 z(t) {
115
- o(u.get(t));
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 h(a), A(a).then(() => z(a)), {
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
- re as useDataPermissionOptions
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 { BudinessDataType, DataPermissionOptionsMap } from './useDataPermissionOptions';
5
- type DataType = Exclude<BudinessDataType, "userId">;
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<BudinessDataType, SelectOption[]>>;
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: BudinessDataType[]): FormSchemasLinkBuilder;
102
+ codes(codes: BusinessDataType[]): FormSchemasLinkBuilder;
103
103
  /** 使用外部数据源,跳过内部接口请求 */
104
104
  dataSource(dataSource: MaybeRef<DataPermissionOptionsMap | undefined>): FormSchemasLinkBuilder;
105
105
  /** 覆盖单个字段配置 */
@@ -1,9 +1,9 @@
1
- import { MaybeRef, ComputedRef } from 'vue';
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
  };