@gigapay-dev/contracts 3.25.0 → 3.27.0

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.
@@ -2,7 +2,127 @@ export * from "./dtos";
2
2
  export * from "./commands";
3
3
  export * from "./queries";
4
4
  export * from "./events";
5
+ export * from "./passkeys";
5
6
  export declare const AuthEndpoints: {
7
+ readonly passkeyRegistrationOptions: {
8
+ readonly method: "POST";
9
+ readonly path: "/api/auth/passkeys/registration/options";
10
+ readonly response: import("zod").ZodObject<{
11
+ challenge: import("zod").ZodString;
12
+ rp: import("zod").ZodObject<{
13
+ id: import("zod").ZodOptional<import("zod").ZodString>;
14
+ name: import("zod").ZodString;
15
+ }, import("zod/v4/core").$loose>;
16
+ user: import("zod").ZodObject<{
17
+ id: import("zod").ZodString;
18
+ name: import("zod").ZodString;
19
+ displayName: import("zod").ZodString;
20
+ }, import("zod/v4/core").$loose>;
21
+ pubKeyCredParams: import("zod").ZodArray<import("zod").ZodObject<{
22
+ type: import("zod").ZodLiteral<"public-key">;
23
+ alg: import("zod").ZodNumber;
24
+ }, import("zod/v4/core").$strip>>;
25
+ timeout: import("zod").ZodOptional<import("zod").ZodNumber>;
26
+ attestation: import("zod").ZodOptional<import("zod").ZodString>;
27
+ excludeCredentials: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>>;
28
+ authenticatorSelection: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
29
+ }, import("zod/v4/core").$loose>;
30
+ readonly requiresAuth: true;
31
+ };
32
+ readonly passkeyRegistrationVerify: {
33
+ readonly method: "POST";
34
+ readonly path: "/api/auth/passkeys/registration/verify";
35
+ readonly request: import("zod").ZodObject<{
36
+ response: import("zod").ZodObject<{
37
+ id: import("zod").ZodString;
38
+ rawId: import("zod").ZodString;
39
+ type: import("zod").ZodLiteral<"public-key">;
40
+ response: import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>;
41
+ clientExtensionResults: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
42
+ authenticatorAttachment: import("zod").ZodOptional<import("zod").ZodEnum<{
43
+ platform: "platform";
44
+ "cross-platform": "cross-platform";
45
+ }>>;
46
+ }, import("zod/v4/core").$loose>;
47
+ name: import("zod").ZodOptional<import("zod").ZodString>;
48
+ }, import("zod/v4/core").$strip>;
49
+ readonly response: import("zod").ZodObject<{
50
+ id: import("zod").ZodNumber;
51
+ name: import("zod").ZodNullable<import("zod").ZodString>;
52
+ deviceType: import("zod").ZodString;
53
+ backedUp: import("zod").ZodBoolean;
54
+ createdAt: import("zod").ZodString;
55
+ lastUsedAt: import("zod").ZodNullable<import("zod").ZodString>;
56
+ }, import("zod/v4/core").$strip>;
57
+ readonly requiresAuth: true;
58
+ };
59
+ readonly passkeyLoginOptions: {
60
+ readonly method: "POST";
61
+ readonly path: "/api/auth/passkeys/login/options";
62
+ readonly response: import("zod").ZodObject<{
63
+ challenge: import("zod").ZodString;
64
+ rpId: import("zod").ZodOptional<import("zod").ZodString>;
65
+ timeout: import("zod").ZodOptional<import("zod").ZodNumber>;
66
+ userVerification: import("zod").ZodOptional<import("zod").ZodString>;
67
+ allowCredentials: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>>;
68
+ }, import("zod/v4/core").$loose>;
69
+ readonly rateLimit: {
70
+ readonly limit: 10;
71
+ readonly ttlSec: 900;
72
+ };
73
+ };
74
+ readonly passkeyLoginVerify: {
75
+ readonly method: "POST";
76
+ readonly path: "/api/auth/passkeys/login/verify";
77
+ readonly request: import("zod").ZodObject<{
78
+ response: import("zod").ZodObject<{
79
+ id: import("zod").ZodString;
80
+ rawId: import("zod").ZodString;
81
+ type: import("zod").ZodLiteral<"public-key">;
82
+ response: import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>;
83
+ clientExtensionResults: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
84
+ authenticatorAttachment: import("zod").ZodOptional<import("zod").ZodEnum<{
85
+ platform: "platform";
86
+ "cross-platform": "cross-platform";
87
+ }>>;
88
+ }, import("zod/v4/core").$loose>;
89
+ }, import("zod/v4/core").$strip>;
90
+ readonly response: import("zod").ZodObject<{
91
+ accessToken: import("zod").ZodString;
92
+ role: import("zod").ZodEnum<{
93
+ USER: "USER";
94
+ ADMIN: "ADMIN";
95
+ }>;
96
+ }, import("zod/v4/core").$strip>;
97
+ readonly rateLimit: {
98
+ readonly limit: 5;
99
+ readonly ttlSec: 900;
100
+ };
101
+ };
102
+ readonly passkeyList: {
103
+ readonly method: "GET";
104
+ readonly path: "/api/auth/passkeys";
105
+ readonly response: import("zod").ZodArray<import("zod").ZodObject<{
106
+ id: import("zod").ZodNumber;
107
+ name: import("zod").ZodNullable<import("zod").ZodString>;
108
+ deviceType: import("zod").ZodString;
109
+ backedUp: import("zod").ZodBoolean;
110
+ createdAt: import("zod").ZodString;
111
+ lastUsedAt: import("zod").ZodNullable<import("zod").ZodString>;
112
+ }, import("zod/v4/core").$strip>>;
113
+ readonly requiresAuth: true;
114
+ };
115
+ readonly passkeyRemove: {
116
+ readonly method: "DELETE";
117
+ readonly path: "/api/auth/passkeys/:id";
118
+ readonly params: import("zod").ZodObject<{
119
+ id: import("zod").ZodCoercedNumber<unknown>;
120
+ }, import("zod/v4/core").$strip>;
121
+ readonly response: import("zod").ZodObject<{
122
+ ok: import("zod").ZodLiteral<true>;
123
+ }, import("zod/v4/core").$strip>;
124
+ readonly requiresAuth: true;
125
+ };
6
126
  readonly getCurrentUser: {
7
127
  readonly method: "GET";
8
128
  readonly path: "/api/auth/me";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domains/auth/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AAKzB,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGhB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domains/auth/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAM3B,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIhB,CAAC"}
@@ -19,10 +19,13 @@ __exportStar(require("./dtos"), exports);
19
19
  __exportStar(require("./commands"), exports);
20
20
  __exportStar(require("./queries"), exports);
21
21
  __exportStar(require("./events"), exports);
22
+ __exportStar(require("./passkeys"), exports);
22
23
  const commands_1 = require("./commands");
23
24
  const queries_1 = require("./queries");
25
+ const passkeys_1 = require("./passkeys");
24
26
  exports.AuthEndpoints = {
25
27
  ...commands_1.AuthCommands,
26
28
  ...queries_1.AuthQueries,
29
+ ...passkeys_1.AuthPasskeys,
27
30
  };
28
31
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domains/auth/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,6CAA2B;AAC3B,4CAA0B;AAC1B,2CAAyB;AAEzB,yCAA0C;AAC1C,uCAAwC;AAE3B,QAAA,aAAa,GAAG;IAC5B,GAAG,uBAAY;IACf,GAAG,qBAAW;CACL,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domains/auth/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,6CAA2B;AAC3B,4CAA0B;AAC1B,2CAAyB;AACzB,6CAA2B;AAE3B,yCAA0C;AAC1C,uCAAwC;AACxC,yCAA0C;AAE7B,QAAA,aAAa,GAAG;IAC5B,GAAG,uBAAY;IACf,GAAG,qBAAW;IACd,GAAG,uBAAY;CACN,CAAC"}
@@ -0,0 +1,345 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * Passkey (WebAuthn). Объекты options и credential описаны минимально:
4
+ * полную структуру проверяет браузер и @simplewebauthn/server на бэкенде.
5
+ */
6
+ declare const PublicKeyCredentialJSONSchema: z.ZodObject<{
7
+ id: z.ZodString;
8
+ rawId: z.ZodString;
9
+ type: z.ZodLiteral<"public-key">;
10
+ response: z.ZodRecord<z.ZodString, z.ZodUnknown>;
11
+ clientExtensionResults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
12
+ authenticatorAttachment: z.ZodOptional<z.ZodEnum<{
13
+ platform: "platform";
14
+ "cross-platform": "cross-platform";
15
+ }>>;
16
+ }, z.core.$loose>;
17
+ export type PublicKeyCredentialJSON = z.infer<typeof PublicKeyCredentialJSONSchema>;
18
+ export declare const PasskeyRegistrationOptionsSchema: z.ZodObject<{
19
+ challenge: z.ZodString;
20
+ rp: z.ZodObject<{
21
+ id: z.ZodOptional<z.ZodString>;
22
+ name: z.ZodString;
23
+ }, z.core.$loose>;
24
+ user: z.ZodObject<{
25
+ id: z.ZodString;
26
+ name: z.ZodString;
27
+ displayName: z.ZodString;
28
+ }, z.core.$loose>;
29
+ pubKeyCredParams: z.ZodArray<z.ZodObject<{
30
+ type: z.ZodLiteral<"public-key">;
31
+ alg: z.ZodNumber;
32
+ }, z.core.$strip>>;
33
+ timeout: z.ZodOptional<z.ZodNumber>;
34
+ attestation: z.ZodOptional<z.ZodString>;
35
+ excludeCredentials: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
36
+ authenticatorSelection: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
37
+ }, z.core.$loose>;
38
+ export type PasskeyRegistrationOptions = z.infer<typeof PasskeyRegistrationOptionsSchema>;
39
+ export declare const PasskeyLoginOptionsSchema: z.ZodObject<{
40
+ challenge: z.ZodString;
41
+ rpId: z.ZodOptional<z.ZodString>;
42
+ timeout: z.ZodOptional<z.ZodNumber>;
43
+ userVerification: z.ZodOptional<z.ZodString>;
44
+ allowCredentials: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
45
+ }, z.core.$loose>;
46
+ export type PasskeyLoginOptions = z.infer<typeof PasskeyLoginOptionsSchema>;
47
+ export declare const PasskeySchema: z.ZodObject<{
48
+ id: z.ZodNumber;
49
+ name: z.ZodNullable<z.ZodString>;
50
+ deviceType: z.ZodString;
51
+ backedUp: z.ZodBoolean;
52
+ createdAt: z.ZodString;
53
+ lastUsedAt: z.ZodNullable<z.ZodString>;
54
+ }, z.core.$strip>;
55
+ export type Passkey = z.infer<typeof PasskeySchema>;
56
+ export declare const PasskeyRegistrationVerifyRequestSchema: z.ZodObject<{
57
+ response: z.ZodObject<{
58
+ id: z.ZodString;
59
+ rawId: z.ZodString;
60
+ type: z.ZodLiteral<"public-key">;
61
+ response: z.ZodRecord<z.ZodString, z.ZodUnknown>;
62
+ clientExtensionResults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
63
+ authenticatorAttachment: z.ZodOptional<z.ZodEnum<{
64
+ platform: "platform";
65
+ "cross-platform": "cross-platform";
66
+ }>>;
67
+ }, z.core.$loose>;
68
+ name: z.ZodOptional<z.ZodString>;
69
+ }, z.core.$strip>;
70
+ export type PasskeyRegistrationVerifyRequest = z.infer<typeof PasskeyRegistrationVerifyRequestSchema>;
71
+ export declare const PasskeyLoginVerifyRequestSchema: z.ZodObject<{
72
+ response: z.ZodObject<{
73
+ id: z.ZodString;
74
+ rawId: z.ZodString;
75
+ type: z.ZodLiteral<"public-key">;
76
+ response: z.ZodRecord<z.ZodString, z.ZodUnknown>;
77
+ clientExtensionResults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
78
+ authenticatorAttachment: z.ZodOptional<z.ZodEnum<{
79
+ platform: "platform";
80
+ "cross-platform": "cross-platform";
81
+ }>>;
82
+ }, z.core.$loose>;
83
+ }, z.core.$strip>;
84
+ export type PasskeyLoginVerifyRequest = z.infer<typeof PasskeyLoginVerifyRequestSchema>;
85
+ export declare const PasskeyLoginResponseSchema: z.ZodObject<{
86
+ accessToken: z.ZodString;
87
+ role: z.ZodEnum<{
88
+ USER: "USER";
89
+ ADMIN: "ADMIN";
90
+ }>;
91
+ }, z.core.$strip>;
92
+ export type PasskeyLoginResponse = z.infer<typeof PasskeyLoginResponseSchema>;
93
+ export declare const PasskeyListResponseSchema: z.ZodArray<z.ZodObject<{
94
+ id: z.ZodNumber;
95
+ name: z.ZodNullable<z.ZodString>;
96
+ deviceType: z.ZodString;
97
+ backedUp: z.ZodBoolean;
98
+ createdAt: z.ZodString;
99
+ lastUsedAt: z.ZodNullable<z.ZodString>;
100
+ }, z.core.$strip>>;
101
+ export declare const PasskeyIdParamsSchema: z.ZodObject<{
102
+ id: z.ZodCoercedNumber<unknown>;
103
+ }, z.core.$strip>;
104
+ export declare const PasskeyRegistrationOptionsEndpoint: {
105
+ readonly method: "POST";
106
+ readonly path: "/api/auth/passkeys/registration/options";
107
+ readonly response: z.ZodObject<{
108
+ challenge: z.ZodString;
109
+ rp: z.ZodObject<{
110
+ id: z.ZodOptional<z.ZodString>;
111
+ name: z.ZodString;
112
+ }, z.core.$loose>;
113
+ user: z.ZodObject<{
114
+ id: z.ZodString;
115
+ name: z.ZodString;
116
+ displayName: z.ZodString;
117
+ }, z.core.$loose>;
118
+ pubKeyCredParams: z.ZodArray<z.ZodObject<{
119
+ type: z.ZodLiteral<"public-key">;
120
+ alg: z.ZodNumber;
121
+ }, z.core.$strip>>;
122
+ timeout: z.ZodOptional<z.ZodNumber>;
123
+ attestation: z.ZodOptional<z.ZodString>;
124
+ excludeCredentials: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
125
+ authenticatorSelection: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
126
+ }, z.core.$loose>;
127
+ readonly requiresAuth: true;
128
+ };
129
+ export declare const PasskeyRegistrationVerifyEndpoint: {
130
+ readonly method: "POST";
131
+ readonly path: "/api/auth/passkeys/registration/verify";
132
+ readonly request: z.ZodObject<{
133
+ response: z.ZodObject<{
134
+ id: z.ZodString;
135
+ rawId: z.ZodString;
136
+ type: z.ZodLiteral<"public-key">;
137
+ response: z.ZodRecord<z.ZodString, z.ZodUnknown>;
138
+ clientExtensionResults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
139
+ authenticatorAttachment: z.ZodOptional<z.ZodEnum<{
140
+ platform: "platform";
141
+ "cross-platform": "cross-platform";
142
+ }>>;
143
+ }, z.core.$loose>;
144
+ name: z.ZodOptional<z.ZodString>;
145
+ }, z.core.$strip>;
146
+ readonly response: z.ZodObject<{
147
+ id: z.ZodNumber;
148
+ name: z.ZodNullable<z.ZodString>;
149
+ deviceType: z.ZodString;
150
+ backedUp: z.ZodBoolean;
151
+ createdAt: z.ZodString;
152
+ lastUsedAt: z.ZodNullable<z.ZodString>;
153
+ }, z.core.$strip>;
154
+ readonly requiresAuth: true;
155
+ };
156
+ export declare const PasskeyLoginOptionsEndpoint: {
157
+ readonly method: "POST";
158
+ readonly path: "/api/auth/passkeys/login/options";
159
+ readonly response: z.ZodObject<{
160
+ challenge: z.ZodString;
161
+ rpId: z.ZodOptional<z.ZodString>;
162
+ timeout: z.ZodOptional<z.ZodNumber>;
163
+ userVerification: z.ZodOptional<z.ZodString>;
164
+ allowCredentials: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
165
+ }, z.core.$loose>;
166
+ readonly rateLimit: {
167
+ readonly limit: 10;
168
+ readonly ttlSec: 900;
169
+ };
170
+ };
171
+ export declare const PasskeyLoginVerifyEndpoint: {
172
+ readonly method: "POST";
173
+ readonly path: "/api/auth/passkeys/login/verify";
174
+ readonly request: z.ZodObject<{
175
+ response: z.ZodObject<{
176
+ id: z.ZodString;
177
+ rawId: z.ZodString;
178
+ type: z.ZodLiteral<"public-key">;
179
+ response: z.ZodRecord<z.ZodString, z.ZodUnknown>;
180
+ clientExtensionResults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
181
+ authenticatorAttachment: z.ZodOptional<z.ZodEnum<{
182
+ platform: "platform";
183
+ "cross-platform": "cross-platform";
184
+ }>>;
185
+ }, z.core.$loose>;
186
+ }, z.core.$strip>;
187
+ readonly response: z.ZodObject<{
188
+ accessToken: z.ZodString;
189
+ role: z.ZodEnum<{
190
+ USER: "USER";
191
+ ADMIN: "ADMIN";
192
+ }>;
193
+ }, z.core.$strip>;
194
+ readonly rateLimit: {
195
+ readonly limit: 5;
196
+ readonly ttlSec: 900;
197
+ };
198
+ };
199
+ export declare const PasskeyListEndpoint: {
200
+ readonly method: "GET";
201
+ readonly path: "/api/auth/passkeys";
202
+ readonly response: z.ZodArray<z.ZodObject<{
203
+ id: z.ZodNumber;
204
+ name: z.ZodNullable<z.ZodString>;
205
+ deviceType: z.ZodString;
206
+ backedUp: z.ZodBoolean;
207
+ createdAt: z.ZodString;
208
+ lastUsedAt: z.ZodNullable<z.ZodString>;
209
+ }, z.core.$strip>>;
210
+ readonly requiresAuth: true;
211
+ };
212
+ export declare const PasskeyRemoveEndpoint: {
213
+ readonly method: "DELETE";
214
+ readonly path: "/api/auth/passkeys/:id";
215
+ readonly params: z.ZodObject<{
216
+ id: z.ZodCoercedNumber<unknown>;
217
+ }, z.core.$strip>;
218
+ readonly response: z.ZodObject<{
219
+ ok: z.ZodLiteral<true>;
220
+ }, z.core.$strip>;
221
+ readonly requiresAuth: true;
222
+ };
223
+ export declare const AuthPasskeys: {
224
+ readonly passkeyRegistrationOptions: {
225
+ readonly method: "POST";
226
+ readonly path: "/api/auth/passkeys/registration/options";
227
+ readonly response: z.ZodObject<{
228
+ challenge: z.ZodString;
229
+ rp: z.ZodObject<{
230
+ id: z.ZodOptional<z.ZodString>;
231
+ name: z.ZodString;
232
+ }, z.core.$loose>;
233
+ user: z.ZodObject<{
234
+ id: z.ZodString;
235
+ name: z.ZodString;
236
+ displayName: z.ZodString;
237
+ }, z.core.$loose>;
238
+ pubKeyCredParams: z.ZodArray<z.ZodObject<{
239
+ type: z.ZodLiteral<"public-key">;
240
+ alg: z.ZodNumber;
241
+ }, z.core.$strip>>;
242
+ timeout: z.ZodOptional<z.ZodNumber>;
243
+ attestation: z.ZodOptional<z.ZodString>;
244
+ excludeCredentials: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
245
+ authenticatorSelection: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
246
+ }, z.core.$loose>;
247
+ readonly requiresAuth: true;
248
+ };
249
+ readonly passkeyRegistrationVerify: {
250
+ readonly method: "POST";
251
+ readonly path: "/api/auth/passkeys/registration/verify";
252
+ readonly request: z.ZodObject<{
253
+ response: z.ZodObject<{
254
+ id: z.ZodString;
255
+ rawId: z.ZodString;
256
+ type: z.ZodLiteral<"public-key">;
257
+ response: z.ZodRecord<z.ZodString, z.ZodUnknown>;
258
+ clientExtensionResults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
259
+ authenticatorAttachment: z.ZodOptional<z.ZodEnum<{
260
+ platform: "platform";
261
+ "cross-platform": "cross-platform";
262
+ }>>;
263
+ }, z.core.$loose>;
264
+ name: z.ZodOptional<z.ZodString>;
265
+ }, z.core.$strip>;
266
+ readonly response: z.ZodObject<{
267
+ id: z.ZodNumber;
268
+ name: z.ZodNullable<z.ZodString>;
269
+ deviceType: z.ZodString;
270
+ backedUp: z.ZodBoolean;
271
+ createdAt: z.ZodString;
272
+ lastUsedAt: z.ZodNullable<z.ZodString>;
273
+ }, z.core.$strip>;
274
+ readonly requiresAuth: true;
275
+ };
276
+ readonly passkeyLoginOptions: {
277
+ readonly method: "POST";
278
+ readonly path: "/api/auth/passkeys/login/options";
279
+ readonly response: z.ZodObject<{
280
+ challenge: z.ZodString;
281
+ rpId: z.ZodOptional<z.ZodString>;
282
+ timeout: z.ZodOptional<z.ZodNumber>;
283
+ userVerification: z.ZodOptional<z.ZodString>;
284
+ allowCredentials: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
285
+ }, z.core.$loose>;
286
+ readonly rateLimit: {
287
+ readonly limit: 10;
288
+ readonly ttlSec: 900;
289
+ };
290
+ };
291
+ readonly passkeyLoginVerify: {
292
+ readonly method: "POST";
293
+ readonly path: "/api/auth/passkeys/login/verify";
294
+ readonly request: z.ZodObject<{
295
+ response: z.ZodObject<{
296
+ id: z.ZodString;
297
+ rawId: z.ZodString;
298
+ type: z.ZodLiteral<"public-key">;
299
+ response: z.ZodRecord<z.ZodString, z.ZodUnknown>;
300
+ clientExtensionResults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
301
+ authenticatorAttachment: z.ZodOptional<z.ZodEnum<{
302
+ platform: "platform";
303
+ "cross-platform": "cross-platform";
304
+ }>>;
305
+ }, z.core.$loose>;
306
+ }, z.core.$strip>;
307
+ readonly response: z.ZodObject<{
308
+ accessToken: z.ZodString;
309
+ role: z.ZodEnum<{
310
+ USER: "USER";
311
+ ADMIN: "ADMIN";
312
+ }>;
313
+ }, z.core.$strip>;
314
+ readonly rateLimit: {
315
+ readonly limit: 5;
316
+ readonly ttlSec: 900;
317
+ };
318
+ };
319
+ readonly passkeyList: {
320
+ readonly method: "GET";
321
+ readonly path: "/api/auth/passkeys";
322
+ readonly response: z.ZodArray<z.ZodObject<{
323
+ id: z.ZodNumber;
324
+ name: z.ZodNullable<z.ZodString>;
325
+ deviceType: z.ZodString;
326
+ backedUp: z.ZodBoolean;
327
+ createdAt: z.ZodString;
328
+ lastUsedAt: z.ZodNullable<z.ZodString>;
329
+ }, z.core.$strip>>;
330
+ readonly requiresAuth: true;
331
+ };
332
+ readonly passkeyRemove: {
333
+ readonly method: "DELETE";
334
+ readonly path: "/api/auth/passkeys/:id";
335
+ readonly params: z.ZodObject<{
336
+ id: z.ZodCoercedNumber<unknown>;
337
+ }, z.core.$strip>;
338
+ readonly response: z.ZodObject<{
339
+ ok: z.ZodLiteral<true>;
340
+ }, z.core.$strip>;
341
+ readonly requiresAuth: true;
342
+ };
343
+ };
344
+ export {};
345
+ //# sourceMappingURL=passkeys.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"passkeys.d.ts","sourceRoot":"","sources":["../../../src/domains/auth/passkeys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB;;;GAGG;AAEH,QAAA,MAAM,6BAA6B;;;;;;;;;;iBAS1B,CAAC;AACV,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAEpF,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;iBAWpC,CAAC;AACV,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAE1F,eAAO,MAAM,yBAAyB;;;;;;iBAQ7B,CAAC;AACV,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,eAAO,MAAM,aAAa;;;;;;;iBAOxB,CAAC;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;iBAGjD,CAAC;AACH,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sCAAsC,CAAC,CAAC;AAEtG,eAAO,MAAM,+BAA+B;;;;;;;;;;;;iBAE1C,CAAC;AACH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAExF,eAAO,MAAM,0BAA0B;;;;;;iBAAwD,CAAC;AAChG,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,eAAO,MAAM,yBAAyB;;;;;;;kBAAyB,CAAC;AAEhE,eAAO,MAAM,qBAAqB;;iBAAuD,CAAC;AAE1F,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;CAKV,CAAC;AAEtC,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;CAMT,CAAC;AAEtC,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;CAKH,CAAC;AAEtC,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMF,CAAC;AAEtC,eAAO,MAAM,mBAAmB;;;;;;;;;;;;CAKK,CAAC;AAEtC,eAAO,MAAM,qBAAqB;;;;;;;;;;CAMG,CAAC;AAEtC,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOf,CAAC"}
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AuthPasskeys = exports.PasskeyRemoveEndpoint = exports.PasskeyListEndpoint = exports.PasskeyLoginVerifyEndpoint = exports.PasskeyLoginOptionsEndpoint = exports.PasskeyRegistrationVerifyEndpoint = exports.PasskeyRegistrationOptionsEndpoint = exports.PasskeyIdParamsSchema = exports.PasskeyListResponseSchema = exports.PasskeyLoginResponseSchema = exports.PasskeyLoginVerifyRequestSchema = exports.PasskeyRegistrationVerifyRequestSchema = exports.PasskeySchema = exports.PasskeyLoginOptionsSchema = exports.PasskeyRegistrationOptionsSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const common_1 = require("../../shared/common");
6
+ const dtos_1 = require("./dtos");
7
+ /**
8
+ * Passkey (WebAuthn). Объекты options и credential описаны минимально:
9
+ * полную структуру проверяет браузер и @simplewebauthn/server на бэкенде.
10
+ */
11
+ const PublicKeyCredentialJSONSchema = zod_1.z
12
+ .object({
13
+ id: zod_1.z.string().min(1),
14
+ rawId: zod_1.z.string().min(1),
15
+ type: zod_1.z.literal("public-key"),
16
+ response: zod_1.z.record(zod_1.z.string(), zod_1.z.unknown()),
17
+ clientExtensionResults: zod_1.z.record(zod_1.z.string(), zod_1.z.unknown()).optional(),
18
+ authenticatorAttachment: zod_1.z.enum(["platform", "cross-platform"]).optional(),
19
+ })
20
+ .loose();
21
+ exports.PasskeyRegistrationOptionsSchema = zod_1.z
22
+ .object({
23
+ challenge: zod_1.z.string().min(1),
24
+ rp: zod_1.z.object({ id: zod_1.z.string().optional(), name: zod_1.z.string() }).loose(),
25
+ user: zod_1.z.object({ id: zod_1.z.string(), name: zod_1.z.string(), displayName: zod_1.z.string() }).loose(),
26
+ pubKeyCredParams: zod_1.z.array(zod_1.z.object({ type: zod_1.z.literal("public-key"), alg: zod_1.z.number() })),
27
+ timeout: zod_1.z.number().optional(),
28
+ attestation: zod_1.z.string().optional(),
29
+ excludeCredentials: zod_1.z.array(zod_1.z.record(zod_1.z.string(), zod_1.z.unknown())).optional(),
30
+ authenticatorSelection: zod_1.z.record(zod_1.z.string(), zod_1.z.unknown()).optional(),
31
+ })
32
+ .loose();
33
+ exports.PasskeyLoginOptionsSchema = zod_1.z
34
+ .object({
35
+ challenge: zod_1.z.string().min(1),
36
+ rpId: zod_1.z.string().optional(),
37
+ timeout: zod_1.z.number().optional(),
38
+ userVerification: zod_1.z.string().optional(),
39
+ allowCredentials: zod_1.z.array(zod_1.z.record(zod_1.z.string(), zod_1.z.unknown())).optional(),
40
+ })
41
+ .loose();
42
+ exports.PasskeySchema = zod_1.z.object({
43
+ id: zod_1.z.number().int().positive(),
44
+ name: zod_1.z.string().nullable(),
45
+ deviceType: zod_1.z.string(),
46
+ backedUp: zod_1.z.boolean(),
47
+ createdAt: zod_1.z.string(),
48
+ lastUsedAt: zod_1.z.string().nullable(),
49
+ });
50
+ exports.PasskeyRegistrationVerifyRequestSchema = zod_1.z.object({
51
+ response: PublicKeyCredentialJSONSchema,
52
+ name: zod_1.z.string().trim().min(1).max(64).optional(),
53
+ });
54
+ exports.PasskeyLoginVerifyRequestSchema = zod_1.z.object({
55
+ response: PublicKeyCredentialJSONSchema,
56
+ });
57
+ exports.PasskeyLoginResponseSchema = dtos_1.TokensResponseSchema.extend({ role: dtos_1.UserRoleSchema });
58
+ exports.PasskeyListResponseSchema = zod_1.z.array(exports.PasskeySchema);
59
+ exports.PasskeyIdParamsSchema = zod_1.z.object({ id: zod_1.z.coerce.number().int().positive() });
60
+ exports.PasskeyRegistrationOptionsEndpoint = {
61
+ method: "POST",
62
+ path: "/api/auth/passkeys/registration/options",
63
+ response: exports.PasskeyRegistrationOptionsSchema,
64
+ requiresAuth: true,
65
+ };
66
+ exports.PasskeyRegistrationVerifyEndpoint = {
67
+ method: "POST",
68
+ path: "/api/auth/passkeys/registration/verify",
69
+ request: exports.PasskeyRegistrationVerifyRequestSchema,
70
+ response: exports.PasskeySchema,
71
+ requiresAuth: true,
72
+ };
73
+ exports.PasskeyLoginOptionsEndpoint = {
74
+ method: "POST",
75
+ path: "/api/auth/passkeys/login/options",
76
+ response: exports.PasskeyLoginOptionsSchema,
77
+ rateLimit: { limit: 10, ttlSec: 900 },
78
+ };
79
+ exports.PasskeyLoginVerifyEndpoint = {
80
+ method: "POST",
81
+ path: "/api/auth/passkeys/login/verify",
82
+ request: exports.PasskeyLoginVerifyRequestSchema,
83
+ response: exports.PasskeyLoginResponseSchema,
84
+ rateLimit: { limit: 5, ttlSec: 900 },
85
+ };
86
+ exports.PasskeyListEndpoint = {
87
+ method: "GET",
88
+ path: "/api/auth/passkeys",
89
+ response: exports.PasskeyListResponseSchema,
90
+ requiresAuth: true,
91
+ };
92
+ exports.PasskeyRemoveEndpoint = {
93
+ method: "DELETE",
94
+ path: "/api/auth/passkeys/:id",
95
+ params: exports.PasskeyIdParamsSchema,
96
+ response: common_1.SuccessResponseSchema,
97
+ requiresAuth: true,
98
+ };
99
+ exports.AuthPasskeys = {
100
+ passkeyRegistrationOptions: exports.PasskeyRegistrationOptionsEndpoint,
101
+ passkeyRegistrationVerify: exports.PasskeyRegistrationVerifyEndpoint,
102
+ passkeyLoginOptions: exports.PasskeyLoginOptionsEndpoint,
103
+ passkeyLoginVerify: exports.PasskeyLoginVerifyEndpoint,
104
+ passkeyList: exports.PasskeyListEndpoint,
105
+ passkeyRemove: exports.PasskeyRemoveEndpoint,
106
+ };
107
+ //# sourceMappingURL=passkeys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"passkeys.js","sourceRoot":"","sources":["../../../src/domains/auth/passkeys.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,gDAA4D;AAC5D,iCAA8D;AAE9D;;;GAGG;AAEH,MAAM,6BAA6B,GAAG,OAAC;KACrC,MAAM,CAAC;IACP,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACrB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,YAAY,CAAC;IAC7B,QAAQ,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC;IAC3C,sBAAsB,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACpE,uBAAuB,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC1E,CAAC;KACD,KAAK,EAAE,CAAC;AAGG,QAAA,gCAAgC,GAAG,OAAC;KAC/C,MAAM,CAAC;IACP,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,EAAE,EAAE,OAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE;IACrE,IAAI,EAAE,OAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE;IACrF,gBAAgB,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACvF,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,kBAAkB,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;IACzE,sBAAsB,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;CACpE,CAAC;KACD,KAAK,EAAE,CAAC;AAGG,QAAA,yBAAyB,GAAG,OAAC;KACxC,MAAM,CAAC;IACP,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,gBAAgB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACvC,gBAAgB,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;CACvE,CAAC;KACD,KAAK,EAAE,CAAC;AAGG,QAAA,aAAa,GAAG,OAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC/B,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,QAAQ,EAAE,OAAC,CAAC,OAAO,EAAE;IACrB,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC,CAAC;AAGU,QAAA,sCAAsC,GAAG,OAAC,CAAC,MAAM,CAAC;IAC9D,QAAQ,EAAE,6BAA6B;IACvC,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;CACjD,CAAC,CAAC;AAGU,QAAA,+BAA+B,GAAG,OAAC,CAAC,MAAM,CAAC;IACvD,QAAQ,EAAE,6BAA6B;CACvC,CAAC,CAAC;AAGU,QAAA,0BAA0B,GAAG,2BAAoB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,qBAAc,EAAE,CAAC,CAAC;AAGnF,QAAA,yBAAyB,GAAG,OAAC,CAAC,KAAK,CAAC,qBAAa,CAAC,CAAC;AAEnD,QAAA,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,OAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AAE7E,QAAA,kCAAkC,GAAG;IACjD,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,yCAAyC;IAC/C,QAAQ,EAAE,wCAAgC;IAC1C,YAAY,EAAE,IAAI;CACkB,CAAC;AAEzB,QAAA,iCAAiC,GAAG;IAChD,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,wCAAwC;IAC9C,OAAO,EAAE,8CAAsC;IAC/C,QAAQ,EAAE,qBAAa;IACvB,YAAY,EAAE,IAAI;CACkB,CAAC;AAEzB,QAAA,2BAA2B,GAAG;IAC1C,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,kCAAkC;IACxC,QAAQ,EAAE,iCAAyB;IACnC,SAAS,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE;CACD,CAAC;AAEzB,QAAA,0BAA0B,GAAG;IACzC,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,iCAAiC;IACvC,OAAO,EAAE,uCAA+B;IACxC,QAAQ,EAAE,kCAA0B;IACpC,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE;CACA,CAAC;AAEzB,QAAA,mBAAmB,GAAG;IAClC,MAAM,EAAE,KAAK;IACb,IAAI,EAAE,oBAAoB;IAC1B,QAAQ,EAAE,iCAAyB;IACnC,YAAY,EAAE,IAAI;CACkB,CAAC;AAEzB,QAAA,qBAAqB,GAAG;IACpC,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,wBAAwB;IAC9B,MAAM,EAAE,6BAAqB;IAC7B,QAAQ,EAAE,8BAAqB;IAC/B,YAAY,EAAE,IAAI;CACkB,CAAC;AAEzB,QAAA,YAAY,GAAG;IAC3B,0BAA0B,EAAE,0CAAkC;IAC9D,yBAAyB,EAAE,yCAAiC;IAC5D,mBAAmB,EAAE,mCAA2B;IAChD,kBAAkB,EAAE,kCAA0B;IAC9C,WAAW,EAAE,2BAAmB;IAChC,aAAa,EAAE,6BAAqB;CAC3B,CAAC"}
@@ -192,6 +192,17 @@ export declare const CollectionPageSchema: z.ZodObject<{
192
192
  slug: z.ZodString;
193
193
  name: z.ZodString;
194
194
  }, z.core.$strip>>>;
195
+ developer: z.ZodOptional<z.ZodNullable<z.ZodString>>;
196
+ publisher: z.ZodOptional<z.ZodNullable<z.ZodString>>;
197
+ releaseDate: z.ZodOptional<z.ZodNullable<z.ZodString>>;
198
+ hasSinglePlayer: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
199
+ hasMultiplayer: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
200
+ hasCoop: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
201
+ languages: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
202
+ name: z.ZodString;
203
+ audio: z.ZodBoolean;
204
+ }, z.core.$strip>>>>;
205
+ ageRating: z.ZodOptional<z.ZodNullable<z.ZodString>>;
195
206
  form: z.ZodNullable<z.ZodObject<{
196
207
  version: z.ZodNumber;
197
208
  fields: z.ZodArray<z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"dtos.d.ts","sourceRoot":"","sources":["../../../src/domains/collections/dtos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,gBAAgB;;;;;;;;;;iBAU3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;iBAUlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;iBAEhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;iBAExC,CAAC;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAEpF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAM/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
1
+ {"version":3,"file":"dtos.d.ts","sourceRoot":"","sources":["../../../src/domains/collections/dtos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,gBAAgB;;;;;;;;;;iBAU3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;iBAUlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;iBAEhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;iBAExC,CAAC;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAEpF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAM/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}