@gigapay-dev/contracts 3.26.0 → 3.28.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.
Files changed (35) hide show
  1. package/build/domains/admin/index.d.ts +103 -0
  2. package/build/domains/admin/index.d.ts.map +1 -1
  3. package/build/domains/admin/index.js +22 -0
  4. package/build/domains/admin/index.js.map +1 -1
  5. package/build/domains/admin/payment-methods.d.ts +108 -0
  6. package/build/domains/admin/payment-methods.d.ts.map +1 -0
  7. package/build/domains/admin/payment-methods.js +55 -0
  8. package/build/domains/admin/payment-methods.js.map +1 -0
  9. package/build/domains/admin/settings.d.ts +46 -0
  10. package/build/domains/admin/settings.d.ts.map +1 -0
  11. package/build/domains/admin/settings.js +35 -0
  12. package/build/domains/admin/settings.js.map +1 -0
  13. package/build/domains/auth/index.d.ts +120 -0
  14. package/build/domains/auth/index.d.ts.map +1 -1
  15. package/build/domains/auth/index.js +3 -0
  16. package/build/domains/auth/index.js.map +1 -1
  17. package/build/domains/auth/passkeys.d.ts +345 -0
  18. package/build/domains/auth/passkeys.d.ts.map +1 -0
  19. package/build/domains/auth/passkeys.js +107 -0
  20. package/build/domains/auth/passkeys.js.map +1 -0
  21. package/build/domains/products/commands.d.ts +6 -6
  22. package/build/domains/products/dtos.d.ts +2 -2
  23. package/build/domains/products/index.d.ts +4 -4
  24. package/build/domains/products/queries.d.ts +4 -4
  25. package/build/domains/users/dtos.d.ts +27 -0
  26. package/build/domains/users/dtos.d.ts.map +1 -1
  27. package/build/domains/users/dtos.js +18 -1
  28. package/build/domains/users/dtos.js.map +1 -1
  29. package/build/domains/users/index.d.ts +76 -0
  30. package/build/domains/users/index.d.ts.map +1 -1
  31. package/build/domains/users/index.js +2 -2
  32. package/build/domains/users/index.js.map +1 -1
  33. package/build/index.d.ts +262 -4
  34. package/build/index.d.ts.map +1 -1
  35. package/package.json +1 -1
@@ -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":"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"}
@@ -64,12 +64,13 @@ export declare const CreateVariantRequestSchema: z.ZodObject<{
64
64
  export type CreateVariantRequest = z.infer<typeof CreateVariantRequestSchema>;
65
65
  /** Частичное обновление торгового варианта из админки. */
66
66
  export declare const UpdateVariantRequestSchema: z.ZodObject<{
67
+ platform: z.ZodOptional<z.ZodOptional<z.ZodString>>;
68
+ name: z.ZodOptional<z.ZodString>;
67
69
  deliveryType: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
68
70
  AUTOMATIC: "AUTOMATIC";
69
71
  MANUAL: "MANUAL";
70
72
  BOT: "BOT";
71
73
  }>>>;
72
- name: z.ZodOptional<z.ZodString>;
73
74
  sku: z.ZodOptional<z.ZodString>;
74
75
  imageUrl: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodURL>>>;
75
76
  desslyServiceType: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
@@ -79,7 +80,6 @@ export declare const UpdateVariantRequestSchema: z.ZodObject<{
79
80
  MOBILE_REFILL: "MOBILE_REFILL";
80
81
  CRYPTO_REFILL: "CRYPTO_REFILL";
81
82
  }>>>;
82
- platform: z.ZodOptional<z.ZodOptional<z.ZodString>>;
83
83
  regionCode: z.ZodOptional<z.ZodOptional<z.ZodString>>;
84
84
  desslyRegion: z.ZodOptional<z.ZodOptional<z.ZodString>>;
85
85
  priceUsd: z.ZodOptional<z.ZodString>;
@@ -612,12 +612,13 @@ export declare const UpdateVariantEndpoint: {
612
612
  id: z.ZodCoercedNumber<unknown>;
613
613
  }, z.core.$strip>;
614
614
  readonly request: z.ZodObject<{
615
+ platform: z.ZodOptional<z.ZodOptional<z.ZodString>>;
616
+ name: z.ZodOptional<z.ZodString>;
615
617
  deliveryType: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
616
618
  AUTOMATIC: "AUTOMATIC";
617
619
  MANUAL: "MANUAL";
618
620
  BOT: "BOT";
619
621
  }>>>;
620
- name: z.ZodOptional<z.ZodString>;
621
622
  sku: z.ZodOptional<z.ZodString>;
622
623
  imageUrl: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodURL>>>;
623
624
  desslyServiceType: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
@@ -627,7 +628,6 @@ export declare const UpdateVariantEndpoint: {
627
628
  MOBILE_REFILL: "MOBILE_REFILL";
628
629
  CRYPTO_REFILL: "CRYPTO_REFILL";
629
630
  }>>>;
630
- platform: z.ZodOptional<z.ZodOptional<z.ZodString>>;
631
631
  regionCode: z.ZodOptional<z.ZodOptional<z.ZodString>>;
632
632
  desslyRegion: z.ZodOptional<z.ZodOptional<z.ZodString>>;
633
633
  priceUsd: z.ZodOptional<z.ZodString>;
@@ -1088,12 +1088,13 @@ export declare const ProductCommands: {
1088
1088
  id: z.ZodCoercedNumber<unknown>;
1089
1089
  }, z.core.$strip>;
1090
1090
  readonly request: z.ZodObject<{
1091
+ platform: z.ZodOptional<z.ZodOptional<z.ZodString>>;
1092
+ name: z.ZodOptional<z.ZodString>;
1091
1093
  deliveryType: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
1092
1094
  AUTOMATIC: "AUTOMATIC";
1093
1095
  MANUAL: "MANUAL";
1094
1096
  BOT: "BOT";
1095
1097
  }>>>;
1096
- name: z.ZodOptional<z.ZodString>;
1097
1098
  sku: z.ZodOptional<z.ZodString>;
1098
1099
  imageUrl: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodURL>>>;
1099
1100
  desslyServiceType: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
@@ -1103,7 +1104,6 @@ export declare const ProductCommands: {
1103
1104
  MOBILE_REFILL: "MOBILE_REFILL";
1104
1105
  CRYPTO_REFILL: "CRYPTO_REFILL";
1105
1106
  }>>>;
1106
- platform: z.ZodOptional<z.ZodOptional<z.ZodString>>;
1107
1107
  regionCode: z.ZodOptional<z.ZodOptional<z.ZodString>>;
1108
1108
  desslyRegion: z.ZodOptional<z.ZodOptional<z.ZodString>>;
1109
1109
  priceUsd: z.ZodOptional<z.ZodString>;
@@ -158,6 +158,7 @@ export declare const VariantStockSchema: z.ZodObject<{
158
158
  export type VariantStock = z.infer<typeof VariantStockSchema>;
159
159
  export declare const AdminProductVariantSchema: z.ZodObject<{
160
160
  id: z.ZodNumber;
161
+ name: z.ZodString;
161
162
  price: z.ZodObject<{
162
163
  usd: z.ZodString;
163
164
  rub: z.ZodString;
@@ -169,7 +170,6 @@ export declare const AdminProductVariantSchema: z.ZodObject<{
169
170
  MANUAL: "MANUAL";
170
171
  BOT: "BOT";
171
172
  }>;
172
- name: z.ZodString;
173
173
  sku: z.ZodString;
174
174
  imageUrl: z.ZodNullable<z.ZodString>;
175
175
  desslyServiceType: z.ZodNullable<z.ZodEnum<{
@@ -530,6 +530,7 @@ export declare const AdminProductSchema: z.ZodObject<{
530
530
  steamDetailsSyncedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
531
531
  variants: z.ZodArray<z.ZodObject<{
532
532
  id: z.ZodNumber;
533
+ name: z.ZodString;
533
534
  price: z.ZodObject<{
534
535
  usd: z.ZodString;
535
536
  rub: z.ZodString;
@@ -541,7 +542,6 @@ export declare const AdminProductSchema: z.ZodObject<{
541
542
  MANUAL: "MANUAL";
542
543
  BOT: "BOT";
543
544
  }>;
544
- name: z.ZodString;
545
545
  sku: z.ZodString;
546
546
  imageUrl: z.ZodNullable<z.ZodString>;
547
547
  desslyServiceType: z.ZodNullable<z.ZodEnum<{
@@ -233,12 +233,13 @@ export declare const ProductEndpoints: {
233
233
  id: import("zod").ZodCoercedNumber<unknown>;
234
234
  }, import("zod/v4/core").$strip>;
235
235
  readonly request: import("zod").ZodObject<{
236
+ platform: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodString>>;
237
+ name: import("zod").ZodOptional<import("zod").ZodString>;
236
238
  deliveryType: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodEnum<{
237
239
  AUTOMATIC: "AUTOMATIC";
238
240
  MANUAL: "MANUAL";
239
241
  BOT: "BOT";
240
242
  }>>>;
241
- name: import("zod").ZodOptional<import("zod").ZodString>;
242
243
  sku: import("zod").ZodOptional<import("zod").ZodString>;
243
244
  imageUrl: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodURL>>>;
244
245
  desslyServiceType: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodEnum<{
@@ -248,7 +249,6 @@ export declare const ProductEndpoints: {
248
249
  MOBILE_REFILL: "MOBILE_REFILL";
249
250
  CRYPTO_REFILL: "CRYPTO_REFILL";
250
251
  }>>>;
251
- platform: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodString>>;
252
252
  regionCode: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodString>>;
253
253
  desslyRegion: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodString>>;
254
254
  priceUsd: import("zod").ZodOptional<import("zod").ZodString>;
@@ -905,6 +905,7 @@ export declare const ProductEndpoints: {
905
905
  steamDetailsSyncedAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
906
906
  variants: import("zod").ZodArray<import("zod").ZodObject<{
907
907
  id: import("zod").ZodNumber;
908
+ name: import("zod").ZodString;
908
909
  price: import("zod").ZodObject<{
909
910
  usd: import("zod").ZodString;
910
911
  rub: import("zod").ZodString;
@@ -916,7 +917,6 @@ export declare const ProductEndpoints: {
916
917
  MANUAL: "MANUAL";
917
918
  BOT: "BOT";
918
919
  }>;
919
- name: import("zod").ZodString;
920
920
  sku: import("zod").ZodString;
921
921
  imageUrl: import("zod").ZodNullable<import("zod").ZodString>;
922
922
  desslyServiceType: import("zod").ZodNullable<import("zod").ZodEnum<{
@@ -1118,6 +1118,7 @@ export declare const ProductEndpoints: {
1118
1118
  steamDetailsSyncedAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
1119
1119
  variants: import("zod").ZodArray<import("zod").ZodObject<{
1120
1120
  id: import("zod").ZodNumber;
1121
+ name: import("zod").ZodString;
1121
1122
  price: import("zod").ZodObject<{
1122
1123
  usd: import("zod").ZodString;
1123
1124
  rub: import("zod").ZodString;
@@ -1129,7 +1130,6 @@ export declare const ProductEndpoints: {
1129
1130
  MANUAL: "MANUAL";
1130
1131
  BOT: "BOT";
1131
1132
  }>;
1132
- name: import("zod").ZodString;
1133
1133
  sku: import("zod").ZodString;
1134
1134
  imageUrl: import("zod").ZodNullable<import("zod").ZodString>;
1135
1135
  desslyServiceType: import("zod").ZodNullable<import("zod").ZodEnum<{