cabloy 5.1.101 → 5.1.103
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/.cabloy-version +1 -1
- package/CHANGELOG.md +36 -0
- package/CLAUDE.local.md +4 -0
- package/cabloy-docs/.vitepress/config.mjs +3 -0
- package/cabloy-docs/backend/file-guide.md +148 -0
- package/cabloy-docs/backend/image-guide.md +40 -40
- package/cabloy-docs/backend/jwt-guide.md +21 -0
- package/cabloy-docs/frontend/file-guide.md +147 -0
- package/cabloy-docs/frontend/image-guide.md +18 -9
- package/cabloy-docs/frontend/model-state-guide.md +12 -0
- package/cabloy-docs/frontend/use-state-data-best-practices.md +54 -0
- package/cabloy-docs/fullstack/file-workflow.md +135 -0
- package/cabloy-docs/fullstack/image-workflow.md +12 -3
- package/package.json +1 -1
- package/scripts/upgrade.ts +26 -10
- package/vona/packages-vona/vona/package.json +1 -1
- package/vona/src/suite/a-training/modules/training-record/src/.metadata/index.ts +30 -4
- package/vona/src/suite/a-training/modules/training-record/src/bean/fileScene.dossierFile.ts +1 -1
- package/vona/src/suite/a-training/modules/training-record/src/bean/imageScene.sceneImage.ts +1 -0
- package/vona/src/suite/a-training/modules/training-record/src/dto/recordSelectResItem.tsx +8 -6
- package/vona/src/suite/a-training/modules/training-record/src/dto/recordView.tsx +8 -6
- package/vona/src/suite/a-training/modules/training-record/src/index.ts +0 -1
- package/vona/src/suite/a-training/modules/training-record/src/lib/index.ts +0 -1
- package/vona/src/suite/a-training/modules/training-record/test/record.test.ts +10 -12
- package/vona/src/suite/a-training/modules/training-student/src/bean/imageScene.studentImage.ts +1 -0
- package/vona/src/suite/a-training/modules/training-student/src/dto/detailRecordBase.tsx +9 -10
- package/vona/src/suite/a-training/modules/training-student/test/student.test.ts +2 -2
- package/vona/src/suite-vendor/a-file/modules/a-file/package.json +3 -2
- package/vona/src/suite-vendor/a-file/modules/a-file/src/.metadata/index.ts +155 -35
- package/vona/src/suite-vendor/a-file/modules/a-file/src/bean/bean.file.ts +283 -54
- package/vona/src/suite-vendor/a-file/modules/a-file/src/bean/bean.fileUploadPolicy.ts +46 -63
- package/vona/src/suite-vendor/a-file/modules/a-file/src/bean/meta.index.ts +12 -0
- package/vona/src/suite-vendor/a-file/modules/a-file/src/bean/meta.redlock.ts +1 -1
- package/vona/src/suite-vendor/a-file/modules/a-file/src/bean/meta.version.ts +3 -0
- package/vona/src/suite-vendor/a-file/modules/a-file/src/bean/schedule.fileDraftPrune.ts +29 -0
- package/vona/src/suite-vendor/a-file/modules/a-file/src/bean/serializerTransform.resolveView.ts +45 -0
- package/vona/src/suite-vendor/a-file/modules/a-file/src/bean/serializerTransform.resolveViews.ts +45 -0
- package/vona/src/suite-vendor/a-file/modules/a-file/src/config/config.ts +6 -0
- package/vona/src/suite-vendor/a-file/modules/a-file/src/controller/file.ts +64 -56
- package/vona/src/suite-vendor/a-file/modules/a-file/src/dto/fileDirectUploadFinalizeRequest.ts +13 -0
- package/vona/src/suite-vendor/a-file/modules/a-file/src/dto/fileDirectUploadFinalizeResponse.ts +10 -0
- package/vona/src/suite-vendor/a-file/modules/a-file/src/dto/fileDirectUploadRequest.ts +0 -3
- package/vona/src/suite-vendor/a-file/modules/a-file/src/dto/fileDirectUploadResponse.ts +2 -14
- package/vona/src/suite-vendor/a-file/modules/a-file/src/dto/fileDownloadRequest.ts +3 -0
- package/vona/src/suite-vendor/a-file/modules/a-file/src/dto/fileUploadPolicyResponse.ts +3 -0
- package/vona/src/suite-vendor/a-file/modules/a-file/src/dto/fileUploadResponse.ts +0 -25
- package/vona/src/{suite/a-training/modules/training-record/src/dto/recordDossierFileView.ts → suite-vendor/a-file/modules/a-file/src/dto/fileView.ts} +3 -15
- package/vona/src/suite-vendor/a-file/modules/a-file/src/entity/file.ts +10 -0
- package/vona/src/suite-vendor/a-file/modules/a-file/src/lib/fileUploadUrl.ts +329 -0
- package/vona/src/suite-vendor/a-file/modules/a-file/src/lib/index.ts +1 -0
- package/vona/src/suite-vendor/a-file/modules/a-file/src/types/file.ts +51 -10
- package/vona/src/suite-vendor/a-file/modules/a-file/src/types/fileProvider.ts +8 -3
- package/vona/src/suite-vendor/a-file/modules/a-file/src/types/fileScene.ts +1 -1
- package/vona/src/suite-vendor/a-file/modules/file-cloudflare/package.json +1 -1
- package/vona/src/suite-vendor/a-file/modules/file-cloudflare/src/bean/fileProvider.cloudflare.ts +12 -4
- package/vona/src/suite-vendor/a-file/modules/file-cloudflare/src/service/fileCloudflare.ts +52 -18
- package/vona/src/suite-vendor/a-file/modules/file-native/package.json +1 -1
- package/vona/src/suite-vendor/a-file/modules/file-native/src/bean/fileProvider.native.ts +5 -5
- package/vona/src/suite-vendor/a-file/modules/file-native/src/service/fileNative.ts +7 -8
- package/vona/src/suite-vendor/a-file/package.json +4 -4
- package/vona/src/suite-vendor/a-image/modules/a-image/package.json +1 -1
- package/vona/src/suite-vendor/a-image/modules/a-image/src/.metadata/index.ts +16 -19
- package/vona/src/suite-vendor/a-image/modules/a-image/src/bean/bean.image.ts +99 -74
- package/vona/src/suite-vendor/a-image/modules/a-image/src/bean/bean.imageUploadPolicy.ts +28 -68
- package/vona/src/suite-vendor/a-image/modules/a-image/src/bean/meta.version.ts +1 -1
- package/vona/src/suite-vendor/a-image/modules/a-image/src/bean/serializerTransform.resolveView.ts +3 -0
- package/vona/src/suite-vendor/a-image/modules/a-image/src/bean/serializerTransform.resolveViews.ts +3 -0
- package/vona/src/suite-vendor/a-image/modules/a-image/src/config/config.ts +4 -0
- package/vona/src/suite-vendor/a-image/modules/a-image/src/controller/image.ts +78 -34
- package/vona/src/suite-vendor/a-image/modules/a-image/src/dto/imageDeliveryRequest.ts +3 -0
- package/vona/src/suite-vendor/a-image/modules/a-image/src/dto/imageDirectUploadRequest.ts +0 -3
- package/vona/src/suite-vendor/a-image/modules/a-image/src/dto/imageDirectUploadResponse.ts +1 -27
- package/vona/src/suite-vendor/a-image/modules/a-image/src/dto/imageUploadPolicyResponse.ts +6 -0
- package/vona/src/suite-vendor/a-image/modules/a-image/src/dto/imageUploadResponse.ts +2 -36
- package/vona/src/suite-vendor/a-image/modules/a-image/src/dto/imageUploadUrlRequest.ts +0 -3
- package/vona/src/suite-vendor/a-image/modules/a-image/src/dto/imageView.ts +4 -27
- package/vona/src/suite-vendor/a-image/modules/a-image/src/entity/image.ts +1 -1
- package/vona/src/suite-vendor/a-image/modules/a-image/src/types/image.ts +36 -29
- package/vona/src/suite-vendor/a-image/modules/a-image/src/types/imageProvider.ts +4 -4
- package/vona/src/suite-vendor/a-image/modules/a-image/src/types/imageScene.ts +1 -0
- package/vona/src/suite-vendor/a-image/modules/image-cloudflare/package.json +1 -1
- package/vona/src/suite-vendor/a-image/modules/image-cloudflare/src/bean/imageProvider.cloudflare.ts +8 -11
- package/vona/src/suite-vendor/a-image/modules/image-cloudflare/src/lib/cloudflareImageUrl.ts +4 -16
- package/vona/src/suite-vendor/a-image/modules/image-cloudflare/src/service/imageCloudflare.ts +17 -16
- package/vona/src/suite-vendor/a-image/modules/image-native/package.json +2 -6
- package/vona/src/suite-vendor/a-image/modules/image-native/src/.metadata/index.ts +0 -37
- package/vona/src/suite-vendor/a-image/modules/image-native/src/bean/imageProvider.native.ts +13 -36
- package/vona/src/suite-vendor/a-image/modules/image-native/src/service/imageNative.ts +100 -113
- package/vona/src/suite-vendor/a-image/package.json +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-jwt/package.json +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-jwt/src/config/config.ts +3 -1
- package/vona/src/suite-vendor/a-vona/modules/a-jwt/src/service/jwtClient.ts +9 -4
- package/vona/src/suite-vendor/a-vona/modules/a-upload/package.json +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-upload/src/bean/interceptor.upload.ts +113 -64
- package/vona/src/suite-vendor/a-vona/package.json +1 -1
- package/zova/packages-zova/zova/package.json +2 -2
- package/zova/src/suite/a-home/modules/home-api/src/api/openapi/schemas.ts +50 -12
- package/zova/src/suite/a-home/modules/home-api/src/api/openapi/types.ts +610 -114
- package/zova/src/suite/a-home/modules/home-passport/src/model/passport.ts +44 -1
- package/zova/src/suite/a-training/modules/training-student/src/api/openapi/schemas.ts +50 -12
- package/zova/src/suite/a-training/modules/training-student/src/api/openapi/types.ts +610 -114
- package/zova/src/suite/cabloy-basic/modules/basic-file/src/.metadata/index.ts +16 -12
- package/zova/src/suite/cabloy-basic/modules/basic-file/src/api/file.ts +25 -25
- package/zova/src/suite/cabloy-basic/modules/basic-file/src/api/openapi/schemas.ts +18 -24
- package/zova/src/suite/cabloy-basic/modules/basic-file/src/api/openapi/types.ts +228 -291
- package/zova/src/suite/cabloy-basic/modules/basic-file/src/apiSchema/file.ts +5 -5
- package/zova/src/suite/cabloy-basic/modules/basic-file/src/bean/tableCell.file.tsx +23 -5
- package/zova/src/suite/cabloy-basic/modules/basic-file/src/component/formFieldFile/controller.tsx +72 -43
- package/zova/src/suite/cabloy-basic/modules/basic-file/src/lib/file.ts +22 -4
- package/zova/src/suite/cabloy-basic/modules/basic-image/src/.metadata/index.ts +16 -42
- package/zova/src/suite/cabloy-basic/modules/basic-image/src/api/image.ts +5 -25
- package/zova/src/suite/cabloy-basic/modules/basic-image/src/api/openapi/schemas.ts +10 -24
- package/zova/src/suite/cabloy-basic/modules/basic-image/src/api/openapi/types.ts +216 -333
- package/zova/src/suite/cabloy-basic/modules/basic-image/src/apiSchema/image.ts +0 -5
- package/zova/src/suite/cabloy-basic/modules/basic-image/src/bean/tableCell.image.tsx +38 -12
- package/zova/src/suite/cabloy-basic/modules/basic-image/src/component/formFieldImage/controller.tsx +79 -32
- package/zova/src/suite/cabloy-basic/modules/basic-image/src/lib/preview.ts +22 -4
- package/zova/src/suite/cabloy-basic/modules/basic-image/src/types/image.ts +3 -4
- package/zova/src/suite-vendor/a-zova/modules/a-model/package.json +1 -1
- package/zova/src/suite-vendor/a-zova/modules/a-model/src/lib/utils.ts +29 -1
- package/zova/src/suite-vendor/a-zova/modules/a-model/src/types/query.ts +2 -2
- package/zova/src/suite-vendor/a-zova/package.json +2 -2
- package/vona/src/suite/a-training/modules/training-record/src/lib/resolveDossierFiles.ts +0 -34
- package/vona/src/suite-vendor/a-image/modules/a-image/src/dto/imageUploadTokenRequest.ts +0 -24
- package/vona/src/suite-vendor/a-image/modules/a-image/src/dto/imageUploadTokenResponse.ts +0 -16
- package/vona/src/suite-vendor/a-image/modules/image-native/src/controller/image.ts +0 -57
- package/zova/src/suite/cabloy-basic/modules/basic-image/src/api/imageNativeImage.ts +0 -31
- package/zova/src/suite/cabloy-basic/modules/basic-image/src/apiSchema/imageNativeImage.ts +0 -13
|
@@ -9,7 +9,7 @@ import type {
|
|
|
9
9
|
|
|
10
10
|
import { combineQueries, isNil } from '@cabloy/utils';
|
|
11
11
|
import { SchemaObject } from 'openapi3-ts/oas31';
|
|
12
|
-
import { BeanModelBase, Model } from 'zova-module-a-model';
|
|
12
|
+
import { $QueryEnsureFresh, $QueryGetFresh, BeanModelBase, Model } from 'zova-module-a-model';
|
|
13
13
|
import {
|
|
14
14
|
IPermissionHintGeneral,
|
|
15
15
|
IResourceFormActionRowNameRecord,
|
|
@@ -81,6 +81,41 @@ export class ModelPassport extends BeanModelBase {
|
|
|
81
81
|
});
|
|
82
82
|
}
|
|
83
83
|
|
|
84
|
+
getTempAuthToken(options: { path?: string; staleTime: number }) {
|
|
85
|
+
if (!process.env.CLIENT || !this.isAuthenticated) return;
|
|
86
|
+
return this.$useStateData({
|
|
87
|
+
queryKey: ['tempAuthToken', options.path],
|
|
88
|
+
queryFn: async () => {
|
|
89
|
+
return await this.$api.homeUserPassport.createTempAuthToken(undefined, {
|
|
90
|
+
query: { path: options.path },
|
|
91
|
+
});
|
|
92
|
+
},
|
|
93
|
+
staleTime: options.staleTime,
|
|
94
|
+
meta: {
|
|
95
|
+
disableSuspenseOnInit: true,
|
|
96
|
+
persister: false,
|
|
97
|
+
ssr: { dehydrate: false },
|
|
98
|
+
},
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
getFreshTempAuthToken(options: { path?: string; staleTime: number }): string | undefined {
|
|
103
|
+
return $QueryGetFresh(
|
|
104
|
+
() => this.getTempAuthToken(options),
|
|
105
|
+
query => this._isTempAuthTokenExpired(query.data, query.dataUpdatedAt, options.staleTime),
|
|
106
|
+
);
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
async ensureFreshTempAuthToken(options: {
|
|
110
|
+
path?: string;
|
|
111
|
+
staleTime: number;
|
|
112
|
+
}): Promise<string | undefined> {
|
|
113
|
+
return await $QueryEnsureFresh(
|
|
114
|
+
() => this.getTempAuthToken(options),
|
|
115
|
+
query => this._isTempAuthTokenExpired(query.data, query.dataUpdatedAt, options.staleTime),
|
|
116
|
+
);
|
|
117
|
+
}
|
|
118
|
+
|
|
84
119
|
getOauthLoginUrl(module: string, providerName: string, clientName?: string): string {
|
|
85
120
|
const apiPath = this.sys.util.apiActionPathTranslate(ApiApiHomeUserPassportloginOauthPath, {
|
|
86
121
|
module,
|
|
@@ -160,6 +195,14 @@ export class ModelPassport extends BeanModelBase {
|
|
|
160
195
|
return this.passport;
|
|
161
196
|
}
|
|
162
197
|
|
|
198
|
+
private _isTempAuthTokenExpired(
|
|
199
|
+
token: string | undefined,
|
|
200
|
+
dataUpdatedAt: number,
|
|
201
|
+
staleTime: number,
|
|
202
|
+
) {
|
|
203
|
+
return token === undefined || dataUpdatedAt + staleTime <= Date.now();
|
|
204
|
+
}
|
|
205
|
+
|
|
163
206
|
private _setLocaleTz() {
|
|
164
207
|
const user = this.passport?.user;
|
|
165
208
|
if (!user) return;
|
|
@@ -67,10 +67,8 @@ export type ApiSchemaTrainingRecordDtoRecordSelectResItemPartial =
|
|
|
67
67
|
Partial<ApiSchemaTrainingRecordDtoRecordSelectResItem>;
|
|
68
68
|
export type ApiSchemaAImageDtoImageView = components['schemas']['a-image.dto.imageView'];
|
|
69
69
|
export type ApiSchemaAImageDtoImageViewPartial = Partial<ApiSchemaAImageDtoImageView>;
|
|
70
|
-
export type
|
|
71
|
-
|
|
72
|
-
export type ApiSchemaAImageDtoImageTransformOptionsPartial =
|
|
73
|
-
Partial<ApiSchemaAImageDtoImageTransformOptions>;
|
|
70
|
+
export type ApiSchemaAFileDtoFileView = components['schemas']['a-file.dto.fileView'];
|
|
71
|
+
export type ApiSchemaAFileDtoFileViewPartial = Partial<ApiSchemaAFileDtoFileView>;
|
|
74
72
|
export type ApiSchemaTrainingRecordDtoRecordView_2d063d28bc7243bed02ebd8bddf1212a93c6305b_425dbecccd52e19e24888f99e1b1670233afa875 =
|
|
75
73
|
components['schemas']['training-record.dto.recordView_2d063d28bc7243bed02ebd8bddf1212a93c6305b_425dbecccd52e19e24888f99e1b1670233afa875'];
|
|
76
74
|
export type ApiSchemaTrainingRecordDtoRecordView_2d063d28bc7243bed02ebd8bddf1212a93c6305b_425dbecccd52e19e24888f99e1b1670233afa875Partial =
|
|
@@ -111,14 +109,46 @@ export type ApiSchemaTrainingStudentDtoStudentSummary_2d063d28bc7243bed02ebd8bdd
|
|
|
111
109
|
components['schemas']['training-student.dto.studentSummary_2d063d28bc7243bed02ebd8bddf1212a93c6305b'];
|
|
112
110
|
export type ApiSchemaTrainingStudentDtoStudentSummary_2d063d28bc7243bed02ebd8bddf1212a93c6305bPartial =
|
|
113
111
|
Partial<ApiSchemaTrainingStudentDtoStudentSummary_2d063d28bc7243bed02ebd8bddf1212a93c6305b>;
|
|
114
|
-
export type
|
|
115
|
-
components['schemas']['a-
|
|
116
|
-
export type
|
|
117
|
-
Partial<
|
|
118
|
-
export type
|
|
119
|
-
components['schemas']['a-
|
|
120
|
-
export type
|
|
121
|
-
Partial<
|
|
112
|
+
export type ApiSchemaAFileDtoFileUploadPolicyResponse =
|
|
113
|
+
components['schemas']['a-file.dto.fileUploadPolicyResponse'];
|
|
114
|
+
export type ApiSchemaAFileDtoFileUploadPolicyResponsePartial =
|
|
115
|
+
Partial<ApiSchemaAFileDtoFileUploadPolicyResponse>;
|
|
116
|
+
export type ApiSchemaAFileDtoFileUploadPolicyRequest =
|
|
117
|
+
components['schemas']['a-file.dto.fileUploadPolicyRequest'];
|
|
118
|
+
export type ApiSchemaAFileDtoFileUploadPolicyRequestPartial =
|
|
119
|
+
Partial<ApiSchemaAFileDtoFileUploadPolicyRequest>;
|
|
120
|
+
export type ApiSchemaAFileDtoFileUploadResponse =
|
|
121
|
+
components['schemas']['a-file.dto.fileUploadResponse'];
|
|
122
|
+
export type ApiSchemaAFileDtoFileUploadResponsePartial =
|
|
123
|
+
Partial<ApiSchemaAFileDtoFileUploadResponse>;
|
|
124
|
+
export type ApiSchemaAFileDtoFileDirectUploadResponse =
|
|
125
|
+
components['schemas']['a-file.dto.fileDirectUploadResponse'];
|
|
126
|
+
export type ApiSchemaAFileDtoFileDirectUploadResponsePartial =
|
|
127
|
+
Partial<ApiSchemaAFileDtoFileDirectUploadResponse>;
|
|
128
|
+
export type ApiSchemaAFileDtoFileDirectUploadRequest =
|
|
129
|
+
components['schemas']['a-file.dto.fileDirectUploadRequest'];
|
|
130
|
+
export type ApiSchemaAFileDtoFileDirectUploadRequestPartial =
|
|
131
|
+
Partial<ApiSchemaAFileDtoFileDirectUploadRequest>;
|
|
132
|
+
export type ApiSchemaAFileDtoFileDirectUploadFinalizeResponse =
|
|
133
|
+
components['schemas']['a-file.dto.fileDirectUploadFinalizeResponse'];
|
|
134
|
+
export type ApiSchemaAFileDtoFileDirectUploadFinalizeResponsePartial =
|
|
135
|
+
Partial<ApiSchemaAFileDtoFileDirectUploadFinalizeResponse>;
|
|
136
|
+
export type ApiSchemaAFileDtoFileDirectUploadFinalizeRequest =
|
|
137
|
+
components['schemas']['a-file.dto.fileDirectUploadFinalizeRequest'];
|
|
138
|
+
export type ApiSchemaAFileDtoFileDirectUploadFinalizeRequestPartial =
|
|
139
|
+
Partial<ApiSchemaAFileDtoFileDirectUploadFinalizeRequest>;
|
|
140
|
+
export type ApiSchemaAFileDtoFileUploadUrlRequest =
|
|
141
|
+
components['schemas']['a-file.dto.fileUploadUrlRequest'];
|
|
142
|
+
export type ApiSchemaAFileDtoFileUploadUrlRequestPartial =
|
|
143
|
+
Partial<ApiSchemaAFileDtoFileUploadUrlRequest>;
|
|
144
|
+
export type ApiSchemaAImageDtoImageUploadPolicyResponse =
|
|
145
|
+
components['schemas']['a-image.dto.imageUploadPolicyResponse'];
|
|
146
|
+
export type ApiSchemaAImageDtoImageUploadPolicyResponsePartial =
|
|
147
|
+
Partial<ApiSchemaAImageDtoImageUploadPolicyResponse>;
|
|
148
|
+
export type ApiSchemaAImageDtoImageUploadPolicyRequest =
|
|
149
|
+
components['schemas']['a-image.dto.imageUploadPolicyRequest'];
|
|
150
|
+
export type ApiSchemaAImageDtoImageUploadPolicyRequestPartial =
|
|
151
|
+
Partial<ApiSchemaAImageDtoImageUploadPolicyRequest>;
|
|
122
152
|
export type ApiSchemaAImageDtoImageUploadResponse =
|
|
123
153
|
components['schemas']['a-image.dto.imageUploadResponse'];
|
|
124
154
|
export type ApiSchemaAImageDtoImageUploadResponsePartial =
|
|
@@ -131,6 +161,14 @@ export type ApiSchemaAImageDtoImageDirectUploadRequest =
|
|
|
131
161
|
components['schemas']['a-image.dto.imageDirectUploadRequest'];
|
|
132
162
|
export type ApiSchemaAImageDtoImageDirectUploadRequestPartial =
|
|
133
163
|
Partial<ApiSchemaAImageDtoImageDirectUploadRequest>;
|
|
164
|
+
export type ApiSchemaAImageDtoImageDirectUploadFinalizeResponse =
|
|
165
|
+
components['schemas']['a-image.dto.imageDirectUploadFinalizeResponse'];
|
|
166
|
+
export type ApiSchemaAImageDtoImageDirectUploadFinalizeResponsePartial =
|
|
167
|
+
Partial<ApiSchemaAImageDtoImageDirectUploadFinalizeResponse>;
|
|
168
|
+
export type ApiSchemaAImageDtoImageDirectUploadFinalizeRequest =
|
|
169
|
+
components['schemas']['a-image.dto.imageDirectUploadFinalizeRequest'];
|
|
170
|
+
export type ApiSchemaAImageDtoImageDirectUploadFinalizeRequestPartial =
|
|
171
|
+
Partial<ApiSchemaAImageDtoImageDirectUploadFinalizeRequest>;
|
|
134
172
|
export type ApiSchemaAImageDtoImageUploadUrlRequest =
|
|
135
173
|
components['schemas']['a-image.dto.imageUploadUrlRequest'];
|
|
136
174
|
export type ApiSchemaAImageDtoImageUploadUrlRequestPartial =
|