aivilife-contracts 1.0.0 → 3.0.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.
package/dist/index.js CHANGED
@@ -21,6 +21,8 @@ var BaseListQuerySchema = zod.z.object({
21
21
  dateTo: DateToSchema,
22
22
  sortOrder: SortOrderSchema.optional()
23
23
  });
24
+ var INT4_MAX = 2147483647;
25
+ var DbIdSchema = zod.z.coerce.number().int().positive().max(INT4_MAX);
24
26
 
25
27
  // src/user/user-role.enum.ts
26
28
  var UserRole = /* @__PURE__ */ ((UserRole2) => {
@@ -30,6 +32,42 @@ var UserRole = /* @__PURE__ */ ((UserRole2) => {
30
32
  UserRole2["PARTNER"] = "partner";
31
33
  return UserRole2;
32
34
  })(UserRole || {});
35
+ var RatePerBaseSchema = zod.z.string().regex(
36
+ /^\d{1,12}(\.\d{1,18})?$/,
37
+ "Rate must contain at most 12 integer and 18 decimal digits"
38
+ ).refine((value) => /[1-9]/.test(value), "Rate must be greater than zero");
39
+
40
+ // src/currency/currency.schemas.ts
41
+ var CurrencyCodeSchema = zod.z.string().trim().toUpperCase().regex(/^[A-Z]{3}$/, "Invalid ISO 4217 currency code");
42
+ var CurrencyCodeParamSchema = zod.z.object({
43
+ code: CurrencyCodeSchema
44
+ });
45
+ var CurrencySchema = zod.z.object({
46
+ id: zod.z.number().int().positive(),
47
+ code: CurrencyCodeSchema,
48
+ name: zod.z.string().trim().max(255),
49
+ symbol: zod.z.string().trim().max(10),
50
+ decimalDigits: zod.z.number().int().min(0).max(8),
51
+ isActive: zod.z.boolean(),
52
+ isBase: zod.z.boolean(),
53
+ createdAt: zod.z.string().datetime(),
54
+ updatedAt: zod.z.string().datetime()
55
+ });
56
+ var CurrencyListResponseSchema = zod.z.array(CurrencySchema);
57
+ var CreateCurrencyRequestSchema = zod.z.object({
58
+ code: CurrencyCodeSchema,
59
+ name: zod.z.string().trim().min(1).max(255),
60
+ symbol: zod.z.string().trim().min(1).max(10),
61
+ decimalDigits: zod.z.number().int().min(0).max(8).default(2),
62
+ isActive: zod.z.boolean().default(true),
63
+ ratePerBase: RatePerBaseSchema
64
+ });
65
+ var UpdateCurrencyRequestSchema = zod.z.object({
66
+ name: zod.z.string().trim().min(1).max(255),
67
+ symbol: zod.z.string().trim().min(1).max(10),
68
+ decimalDigits: zod.z.number().int().min(0).max(8),
69
+ isActive: zod.z.boolean()
70
+ }).partial();
33
71
 
34
72
  // src/user/user.schemas.ts
35
73
  var UserSchema = zod.z.object({
@@ -46,6 +84,10 @@ var UserSchema = zod.z.object({
46
84
  countryCode: zod.z.string().trim().length(2),
47
85
  country: zod.z.string().trim().max(255),
48
86
  city: zod.z.string().trim().max(255),
87
+ whatsappLink: zod.z.string().trim().max(255).nullable(),
88
+ instagramLink: zod.z.string().trim().max(255).nullable(),
89
+ telegramLink: zod.z.string().trim().max(255).nullable(),
90
+ displayCurrency: CurrencyCodeSchema,
49
91
  role: zod.z.enum(UserRole),
50
92
  createdAt: zod.z.iso.datetime(),
51
93
  updatedAt: zod.z.iso.datetime()
@@ -61,8 +103,48 @@ var CreateUserRequestSchema = zod.z.object({
61
103
  country: zod.z.string().trim().max(255),
62
104
  city: zod.z.string().trim().max(255)
63
105
  });
106
+ var UpdateUserRequestSchema = zod.z.object({
107
+ firstName: zod.z.string().trim().min(1).max(255),
108
+ lastName: zod.z.string().trim().min(1).max(255),
109
+ countryCode: zod.z.string().trim().length(2),
110
+ country: zod.z.string().trim().min(1).max(255),
111
+ city: zod.z.string().trim().min(1).max(255),
112
+ whatsappLink: zod.z.string().trim().max(255).nullable(),
113
+ instagramLink: zod.z.string().trim().max(255).nullable(),
114
+ telegramLink: zod.z.string().trim().max(255).nullable(),
115
+ displayCurrency: CurrencyCodeSchema
116
+ }).partial();
117
+ var ChangePasswordRequestSchema = zod.z.object({
118
+ currentPassword: zod.z.string().trim().min(6).max(255),
119
+ newPassword: zod.z.string().trim().min(6).max(255)
120
+ }).refine((data) => data.currentPassword !== data.newPassword, {
121
+ message: "\u041D\u043E\u0432\u044B\u0439 \u043F\u0430\u0440\u043E\u043B\u044C \u0434\u043E\u043B\u0436\u0435\u043D \u043E\u0442\u043B\u0438\u0447\u0430\u0442\u044C\u0441\u044F \u043E\u0442 \u0442\u0435\u043A\u0443\u0449\u0435\u0433\u043E",
122
+ path: ["newPassword"]
123
+ });
64
124
  var UserListResponseSchema = zod.z.array(UserSchema);
65
125
 
126
+ // src/user/user-file-type.enum.ts
127
+ var UserFileType = /* @__PURE__ */ ((UserFileType2) => {
128
+ UserFileType2["PHOTO"] = "PHOTO";
129
+ UserFileType2["DOCUMENT"] = "DOCUMENT";
130
+ return UserFileType2;
131
+ })(UserFileType || {});
132
+ var UserFileSchema = zod.z.object({
133
+ id: zod.z.number().int().positive(),
134
+ userId: zod.z.number().int().positive(),
135
+ type: zod.z.enum(UserFileType),
136
+ url: zod.z.string().url(),
137
+ originalName: zod.z.string().nullable(),
138
+ mimeType: zod.z.string().min(1).nullable(),
139
+ sizeBytes: zod.z.number().int().positive().nullable(),
140
+ createdAt: zod.z.iso.datetime(),
141
+ updatedAt: zod.z.iso.datetime()
142
+ });
143
+ var UserFileListSchema = zod.z.array(UserFileSchema);
144
+ var FileIdParamSchema = zod.z.object({
145
+ fileId: DbIdSchema
146
+ });
147
+
66
148
  // src/auth/auth-user.contract.ts
67
149
  var AuthUserSchema = zod.z.object({
68
150
  id: zod.z.number(),
@@ -80,10 +162,49 @@ var SignInRequestSchema = zod.z.object({
80
162
  });
81
163
  var SignInResponseSchema = zod.z.object({
82
164
  accessToken: zod.z.string(),
83
- refreshToken: zod.z.string(),
84
165
  user: AuthUserSchema
85
166
  });
86
- var SignUpRequestSchema = zod.z.object({
167
+ var BinaryBranch = /* @__PURE__ */ ((BinaryBranch2) => {
168
+ BinaryBranch2["LEFT"] = "LEFT";
169
+ BinaryBranch2["RIGHT"] = "RIGHT";
170
+ return BinaryBranch2;
171
+ })(BinaryBranch || {});
172
+ var MarketingMemberStatus = /* @__PURE__ */ ((MarketingMemberStatus2) => {
173
+ MarketingMemberStatus2["ACTIVE"] = "ACTIVE";
174
+ MarketingMemberStatus2["BLOCKED"] = "BLOCKED";
175
+ return MarketingMemberStatus2;
176
+ })(MarketingMemberStatus || {});
177
+ var BinaryBranchSchema = zod.z.enum(BinaryBranch);
178
+ var MarketingMemberStatusSchema = zod.z.enum(MarketingMemberStatus);
179
+ var MarketingPublicIdentifierSchema = zod.z.string().trim().min(3).max(255);
180
+ var MarketingInvitationTokenSchema = zod.z.string().trim().regex(/^[A-Za-z0-9_-]{43}$/);
181
+ var ManualMarketingPlacementSchema = zod.z.object({
182
+ sponsorId: MarketingPublicIdentifierSchema,
183
+ leg: BinaryBranchSchema
184
+ });
185
+ var InvitationMarketingPlacementSchema = zod.z.object({
186
+ invitationToken: MarketingInvitationTokenSchema
187
+ });
188
+ var CreateMarketingInvitationRequestSchema = zod.z.object({
189
+ leg: BinaryBranchSchema
190
+ });
191
+ var MarketingPlacementIdentitySchema = zod.z.object({
192
+ uuid: zod.z.string().trim().min(1).max(255),
193
+ login: zod.z.string().trim().min(1).max(255),
194
+ firstName: zod.z.string().trim().max(255),
195
+ lastName: zod.z.string().trim().max(255)
196
+ });
197
+ var MarketingPlacementPreviewSchema = zod.z.object({
198
+ sponsor: MarketingPlacementIdentitySchema,
199
+ leg: BinaryBranchSchema,
200
+ expiresAt: zod.z.iso.datetime().nullable()
201
+ });
202
+ var CreateMarketingInvitationResponseSchema = MarketingPlacementPreviewSchema.extend({
203
+ invitationToken: MarketingInvitationTokenSchema
204
+ });
205
+
206
+ // src/auth/sign-up.contract.ts
207
+ var SignUpBaseSchema = zod.z.object({
87
208
  firstName: zod.z.string().trim().max(255),
88
209
  lastName: zod.z.string().trim().max(255),
89
210
  email: zod.z.email().trim(),
@@ -94,6 +215,39 @@ var SignUpRequestSchema = zod.z.object({
94
215
  country: zod.z.string().trim().max(255),
95
216
  city: zod.z.string().trim().max(255)
96
217
  });
218
+ var SignUpRequestSchema = SignUpBaseSchema.extend({
219
+ sponsorId: ManualMarketingPlacementSchema.shape.sponsorId.optional(),
220
+ leg: ManualMarketingPlacementSchema.shape.leg.optional(),
221
+ invitationToken: InvitationMarketingPlacementSchema.shape.invitationToken.optional()
222
+ }).superRefine((input, context) => {
223
+ const hasInvitation = input.invitationToken !== void 0;
224
+ const manualFields = [input.sponsorId, input.leg];
225
+ const hasAnyManualField = manualFields.some((value) => value !== void 0);
226
+ const hasEveryManualField = manualFields.every(
227
+ (value) => value !== void 0
228
+ );
229
+ if (hasInvitation === hasAnyManualField || !hasInvitation && !hasEveryManualField) {
230
+ context.addIssue({
231
+ code: "custom",
232
+ message: "\u041F\u0435\u0440\u0435\u0434\u0430\u0439\u0442\u0435 invitationToken \u0438\u043B\u0438 \u043F\u043E\u043B\u043D\u044B\u0439 \u043D\u0430\u0431\u043E\u0440 sponsorId \u0438 leg",
233
+ path: ["invitationToken"]
234
+ });
235
+ }
236
+ });
237
+ var ActionTokenSchema = zod.z.string().trim().min(40).max(500);
238
+ var RequestEmailVerificationSchema = zod.z.object({
239
+ email: zod.z.email().trim()
240
+ });
241
+ var ConfirmEmailSchema = zod.z.object({
242
+ token: ActionTokenSchema
243
+ });
244
+ var ForgotPasswordSchema = zod.z.object({
245
+ email: zod.z.email().trim()
246
+ });
247
+ var ResetPasswordSchema = zod.z.object({
248
+ token: ActionTokenSchema,
249
+ newPassword: zod.z.string().trim().min(8).max(255)
250
+ });
97
251
 
98
252
  // src/wallets/wallets.enum.ts
99
253
  var WalletCurrency = /* @__PURE__ */ ((WalletCurrency2) => {
@@ -114,6 +268,12 @@ var WalletType = /* @__PURE__ */ ((WalletType2) => {
114
268
  WalletType2["PREMIUM"] = "PREMIUM";
115
269
  return WalletType2;
116
270
  })(WalletType || {});
271
+ var MoneyAmountStringSchema = zod.z.string().regex(/^\d+(\.\d{1,8})?$/, "Invalid money amount");
272
+ var MoneyViewSchema = zod.z.object({
273
+ currency: CurrencyCodeSchema,
274
+ amount: MoneyAmountStringSchema,
275
+ rate: zod.z.string()
276
+ });
117
277
 
118
278
  // src/wallets/wallets.contract.ts
119
279
  var WalletTypeSchema = zod.z.enum(WalletType);
@@ -127,6 +287,8 @@ var WalletSchema = zod.z.object({
127
287
  blockedBalance: zod.z.string(),
128
288
  currency: WalletCurrencySchema,
129
289
  status: WalletStatusSchema,
290
+ /** Баланс в валюте отображения пользователя (только для денежных кошельков). */
291
+ display: MoneyViewSchema.nullable().optional(),
130
292
  createdAt: zod.z.string().datetime(),
131
293
  updatedAt: zod.z.string().datetime()
132
294
  });
@@ -166,7 +328,11 @@ var WalletTransactionReason = /* @__PURE__ */ ((WalletTransactionReason2) => {
166
328
  WalletTransactionReason2["EXPIRATION"] = "EXPIRATION";
167
329
  return WalletTransactionReason2;
168
330
  })(WalletTransactionReason || {});
169
- var MoneyAmountSchema = zod.z.string().regex(/^\d+(\.\d{1,2})?$/, "Invalid money amount");
331
+ var MoneyAmountSchema = zod.z.string().regex(
332
+ /^\d{1,16}(\.\d{1,2})?$/,
333
+ "Money amount must contain at most 16 integer and 2 decimal digits"
334
+ );
335
+ var WalletOperationKeySchema = zod.z.string().trim().min(1).max(150).regex(/^[A-Za-z0-9][A-Za-z0-9:._-]*$/, "Invalid wallet operation key");
170
336
  var WalletTransactionDirectionSchema = zod.z.enum(
171
337
  WalletTransactionDirection
172
338
  );
@@ -179,6 +345,7 @@ var WalletTransactionSourceUserSchema = zod.z.object({
179
345
  });
180
346
  var WalletTransactionSchema = zod.z.object({
181
347
  id: zod.z.number().int().positive(),
348
+ operationKey: WalletOperationKeySchema,
182
349
  walletId: zod.z.number().int().positive(),
183
350
  userId: zod.z.number().int().positive(),
184
351
  walletType: zod.z.enum(WalletType),
@@ -197,9 +364,11 @@ var WalletTransactionSchema = zod.z.object({
197
364
  createdAt: zod.z.string().datetime()
198
365
  });
199
366
  var WalletTransactionDetailsSchema = WalletTransactionSchema.extend({
200
- sourceUser: WalletTransactionSourceUserSchema.nullable()
367
+ sourceUser: WalletTransactionSourceUserSchema.nullable(),
368
+ displayAmount: MoneyViewSchema.nullable().optional()
201
369
  });
202
370
  var CreateWalletTransactionRequestSchema = zod.z.object({
371
+ operationKey: WalletOperationKeySchema,
203
372
  userId: zod.z.number().int().positive(),
204
373
  walletType: zod.z.enum(WalletType),
205
374
  direction: WalletTransactionDirectionSchema,
@@ -223,7 +392,7 @@ var WalletTransactionDetailsListResponseSchema = zod.z.array(
223
392
  WalletTransactionDetailsSchema
224
393
  );
225
394
  var GetUserWalletTransactionsParamsSchema = zod.z.object({
226
- userId: zod.z.coerce.number().int().positive()
395
+ userId: DbIdSchema
227
396
  });
228
397
  var CountryResponseSchema = zod.z.object({
229
398
  name: zod.z.string(),
@@ -239,37 +408,89 @@ var GetCitiesQuerySchema = zod.z.object({
239
408
  });
240
409
  var CountriesResponseSchema = zod.z.array(CountryResponseSchema);
241
410
  var CitiesResponseSchema = zod.z.array(CityResponseSchema);
411
+ var ExchangeRateSourceSchema = zod.z.literal("manual");
412
+ var ExchangeRateSchema = zod.z.object({
413
+ id: zod.z.number().int().positive(),
414
+ currencyCode: CurrencyCodeSchema,
415
+ /** Сколько единиц валюты за 1 базовую валюту. */
416
+ ratePerBase: zod.z.string(),
417
+ source: ExchangeRateSourceSchema,
418
+ createdAt: zod.z.string().datetime(),
419
+ updatedAt: zod.z.string().datetime()
420
+ });
421
+ var ExchangeRateListResponseSchema = zod.z.array(ExchangeRateSchema);
422
+ var UpdateExchangeRateRequestSchema = zod.z.object({
423
+ ratePerBase: RatePerBaseSchema
424
+ });
242
425
 
243
426
  exports.AuthUserSchema = AuthUserSchema;
244
427
  exports.BaseListQuerySchema = BaseListQuerySchema;
428
+ exports.BinaryBranch = BinaryBranch;
429
+ exports.BinaryBranchSchema = BinaryBranchSchema;
430
+ exports.ChangePasswordRequestSchema = ChangePasswordRequestSchema;
245
431
  exports.CitiesResponseSchema = CitiesResponseSchema;
246
432
  exports.CityResponseSchema = CityResponseSchema;
433
+ exports.ConfirmEmailSchema = ConfirmEmailSchema;
247
434
  exports.CountriesResponseSchema = CountriesResponseSchema;
248
435
  exports.CountryResponseSchema = CountryResponseSchema;
436
+ exports.CreateCurrencyRequestSchema = CreateCurrencyRequestSchema;
437
+ exports.CreateMarketingInvitationRequestSchema = CreateMarketingInvitationRequestSchema;
438
+ exports.CreateMarketingInvitationResponseSchema = CreateMarketingInvitationResponseSchema;
249
439
  exports.CreateUserRequestSchema = CreateUserRequestSchema;
250
440
  exports.CreateWalletTransactionRequestSchema = CreateWalletTransactionRequestSchema;
441
+ exports.CurrencyCodeParamSchema = CurrencyCodeParamSchema;
442
+ exports.CurrencyCodeSchema = CurrencyCodeSchema;
443
+ exports.CurrencyListResponseSchema = CurrencyListResponseSchema;
444
+ exports.CurrencySchema = CurrencySchema;
251
445
  exports.DateFromSchema = DateFromSchema;
252
446
  exports.DateToSchema = DateToSchema;
447
+ exports.DbIdSchema = DbIdSchema;
448
+ exports.ExchangeRateListResponseSchema = ExchangeRateListResponseSchema;
449
+ exports.ExchangeRateSchema = ExchangeRateSchema;
450
+ exports.ExchangeRateSourceSchema = ExchangeRateSourceSchema;
451
+ exports.FileIdParamSchema = FileIdParamSchema;
452
+ exports.ForgotPasswordSchema = ForgotPasswordSchema;
253
453
  exports.GetCitiesQuerySchema = GetCitiesQuerySchema;
254
454
  exports.GetUserWalletByTypeParamsSchema = GetUserWalletByTypeParamsSchema;
255
455
  exports.GetUserWalletTransactionsParamsSchema = GetUserWalletTransactionsParamsSchema;
256
456
  exports.GetUserWalletsParamsSchema = GetUserWalletsParamsSchema;
457
+ exports.INT4_MAX = INT4_MAX;
458
+ exports.InvitationMarketingPlacementSchema = InvitationMarketingPlacementSchema;
257
459
  exports.LimitSchema = LimitSchema;
460
+ exports.ManualMarketingPlacementSchema = ManualMarketingPlacementSchema;
461
+ exports.MarketingInvitationTokenSchema = MarketingInvitationTokenSchema;
462
+ exports.MarketingMemberStatus = MarketingMemberStatus;
463
+ exports.MarketingMemberStatusSchema = MarketingMemberStatusSchema;
464
+ exports.MarketingPlacementIdentitySchema = MarketingPlacementIdentitySchema;
465
+ exports.MarketingPlacementPreviewSchema = MarketingPlacementPreviewSchema;
466
+ exports.MarketingPublicIdentifierSchema = MarketingPublicIdentifierSchema;
258
467
  exports.MoneyAmountSchema = MoneyAmountSchema;
468
+ exports.MoneyAmountStringSchema = MoneyAmountStringSchema;
469
+ exports.MoneyViewSchema = MoneyViewSchema;
259
470
  exports.PageSchema = PageSchema;
260
471
  exports.PaginationQuerySchema = PaginationQuerySchema;
472
+ exports.RatePerBaseSchema = RatePerBaseSchema;
261
473
  exports.RefreshResponseSchema = RefreshResponseSchema;
474
+ exports.RequestEmailVerificationSchema = RequestEmailVerificationSchema;
475
+ exports.ResetPasswordSchema = ResetPasswordSchema;
262
476
  exports.SearchSchema = SearchSchema;
263
477
  exports.SignInRequestSchema = SignInRequestSchema;
264
478
  exports.SignInResponseSchema = SignInResponseSchema;
265
479
  exports.SignUpRequestSchema = SignUpRequestSchema;
266
480
  exports.SortOrderSchema = SortOrderSchema;
481
+ exports.UpdateCurrencyRequestSchema = UpdateCurrencyRequestSchema;
482
+ exports.UpdateExchangeRateRequestSchema = UpdateExchangeRateRequestSchema;
483
+ exports.UpdateUserRequestSchema = UpdateUserRequestSchema;
484
+ exports.UserFileListSchema = UserFileListSchema;
485
+ exports.UserFileSchema = UserFileSchema;
486
+ exports.UserFileType = UserFileType;
267
487
  exports.UserListResponseSchema = UserListResponseSchema;
268
488
  exports.UserRole = UserRole;
269
489
  exports.UserSchema = UserSchema;
270
490
  exports.WalletCurrency = WalletCurrency;
271
491
  exports.WalletCurrencySchema = WalletCurrencySchema;
272
492
  exports.WalletListResponseSchema = WalletListResponseSchema;
493
+ exports.WalletOperationKeySchema = WalletOperationKeySchema;
273
494
  exports.WalletSchema = WalletSchema;
274
495
  exports.WalletStatus = WalletStatus;
275
496
  exports.WalletStatusSchema = WalletStatusSchema;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/pagination.schemas.ts","../src/common/list-query.schemas.ts","../src/user/user-role.enum.ts","../src/user/user.schemas.ts","../src/auth/auth-user.contract.ts","../src/auth/refresh.contract.ts","../src/auth/sign-in.contract.ts","../src/auth/sign-up.contract.ts","../src/wallets/wallets.enum.ts","../src/wallets/wallets.contract.ts","../src/wallet-transaction/wallet-transaction.enums.ts","../src/wallet-transaction/wallet-transaction.schemas.ts","../src/countries/countries.contract.ts"],"names":["z","UserRole","WalletCurrency","WalletStatus","WalletType","WalletTransactionDirection","WalletTransactionStatus","WalletTransactionReason"],"mappings":"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","file":"index.js","sourcesContent":["import { z } from 'zod';\n\nexport const PageSchema = z.coerce.number().int().min(1).default(1);\nexport const LimitSchema = z.coerce.number().int().min(1).max(100).default(20);\nexport const SortOrderSchema = z.enum(['asc', 'desc']).default('desc');\n\nexport const PaginationQuerySchema = z.object({\n page: PageSchema.optional(),\n limit: LimitSchema.optional(),\n});\n","import { z } from 'zod';\nimport { LimitSchema, PageSchema, SortOrderSchema } from './pagination.schemas';\n\nexport const DateFromSchema = z.string().datetime().optional();\nexport const DateToSchema = z.string().datetime().optional();\n\nexport const SearchSchema = z.string().trim().min(1).max(255).optional();\n\nexport const BaseListQuerySchema = z.object({\n page: PageSchema.optional(),\n limit: LimitSchema.optional(),\n search: SearchSchema,\n dateFrom: DateFromSchema,\n dateTo: DateToSchema,\n sortOrder: SortOrderSchema.optional(),\n});\n","export enum UserRole {\n ADMIN = 'admin',\n MANAGER = 'manager',\n STAFF = 'staff',\n PARTNER = 'partner',\n}\n","import { z } from 'zod';\nimport { UserRole } from './user-role.enum';\n\nexport const UserSchema = z.object({\n id: z.number().int().positive(),\n firstName: z.string().trim().max(255),\n lastName: z.string().trim().max(255),\n email: z.email().trim(),\n phoneNumber: z.string().trim().max(20),\n login: z.string().trim().max(255),\n uuid: z.string().trim().max(255),\n isActive: z.boolean(),\n isEmailVerified: z.boolean(),\n isPhoneVerified: z.boolean(),\n countryCode: z.string().trim().length(2),\n country: z.string().trim().max(255),\n city: z.string().trim().max(255),\n role: z.enum(UserRole),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n});\n\nexport const CreateUserRequestSchema = z.object({\n firstName: z.string().trim().max(255),\n lastName: z.string().trim().max(255),\n email: z.email().trim(),\n phoneNumber: z.string().trim().max(20),\n login: z.string().trim().max(255),\n password: z.string().trim().min(6).max(255),\n countryCode: z.string().trim().length(2),\n country: z.string().trim().max(255),\n city: z.string().trim().max(255),\n});\n\nexport const UserListResponseSchema = z.array(UserSchema);\n","import { z } from 'zod';\nimport { UserRole } from '../user';\n\nexport const AuthUserSchema = z.object({\n id: z.number(),\n login: z.string(),\n role: z.enum(UserRole),\n isActive: z.boolean(),\n});\n\nexport type AuthUser = z.infer<typeof AuthUserSchema>;\n","import { z } from 'zod';\nimport { AuthUserSchema } from './auth-user.contract';\n\nexport const RefreshResponseSchema = z.object({\n accessToken: z.string(),\n user: AuthUserSchema,\n});\n\nexport type RefreshResponse = z.infer<typeof RefreshResponseSchema>;\n","import { z } from 'zod';\nimport { AuthUserSchema } from './auth-user.contract';\n\nexport const SignInRequestSchema = z.object({\n login: z\n .string('Логин должен быть строкой')\n .min(1, 'Логин не может быть пустым'),\n password: z\n .string('Пароль должен быть строкой')\n .min(1, 'Пароль не может быть пустым'),\n});\n\nexport const SignInResponseSchema = z.object({\n accessToken: z.string(),\n refreshToken: z.string(),\n user: AuthUserSchema,\n});\n\nexport type SignInRequest = z.infer<typeof SignInRequestSchema>;\nexport type SignInResponse = z.infer<typeof SignInResponseSchema>;\n","import { z } from 'zod';\n\nexport const SignUpRequestSchema = z.object({\n firstName: z.string().trim().max(255),\n lastName: z.string().trim().max(255),\n email: z.email().trim(),\n phoneNumber: z.string().trim().max(20),\n login: z.string().trim().min(3).max(255),\n password: z.string().trim().min(6).max(255),\n countryCode: z.string().trim().length(2),\n country: z.string().trim().max(255),\n city: z.string().trim().max(255),\n});\n\nexport type SignUpRequest = z.infer<typeof SignUpRequestSchema>;\n","export enum WalletCurrency {\n PV = 'PV',\n MONEY = 'MONEY',\n}\n\nexport enum WalletStatus {\n ACTIVE = 'ACTIVE',\n BLOCKED = 'BLOCKED',\n ARCHIVED = 'ARCHIVED',\n}\n\nexport enum WalletType {\n MAIN = 'MAIN',\n BONUS = 'BONUS',\n CASHBACK = 'CASHBACK',\n PREMIUM = 'PREMIUM',\n}\n","import { z } from 'zod';\nimport { WalletCurrency, WalletStatus, WalletType } from './wallets.enum';\n\nexport const WalletTypeSchema = z.enum(WalletType);\nexport const WalletStatusSchema = z.enum(WalletStatus);\nexport const WalletCurrencySchema = z.enum(WalletCurrency);\n\nexport const WalletSchema = z.object({\n id: z.number().int().positive(),\n userId: z.number().int().positive(),\n type: WalletTypeSchema,\n balance: z.string(),\n blockedBalance: z.string(),\n currency: WalletCurrencySchema,\n status: WalletStatusSchema,\n createdAt: z.string().datetime(),\n updatedAt: z.string().datetime(),\n});\n\nexport const WalletListResponseSchema = z.array(WalletSchema);\n\nexport const GetUserWalletsParamsSchema = z.object({\n userId: z.coerce.number().int().positive(),\n});\n\nexport const GetUserWalletByTypeParamsSchema = z.object({\n userId: z.coerce.number().int().positive(),\n type: WalletTypeSchema,\n});\n","export enum WalletTransactionDirection {\n CREDIT = 'CREDIT',\n DEBIT = 'DEBIT',\n}\n\nexport enum WalletTransactionStatus {\n COMPLETED = 'COMPLETED',\n FAILED = 'FAILED',\n}\n\nexport enum WalletTransactionReason {\n REFERRAL_BONUS = 'REFERRAL_BONUS',\n BINARY_BONUS = 'BINARY_BONUS',\n MATCHING_BONUS = 'MATCHING_BONUS',\n STATUS_BONUS = 'STATUS_BONUS',\n EXTRA_BONUS = 'EXTRA_BONUS',\n STRUCTURE_BONUS = 'STRUCTURE_BONUS',\n PRODUCT_PURCHASE = 'PRODUCT_PURCHASE',\n PLAN_PURCHASE = 'PLAN_PURCHASE',\n WITHDRAWAL = 'WITHDRAWAL',\n TRANSFER_IN = 'TRANSFER_IN',\n TRANSFER_OUT = 'TRANSFER_OUT',\n REFUND = 'REFUND',\n EXPIRATION = 'EXPIRATION',\n}\n","import { z } from 'zod';\nimport {\n WalletTransactionDirection,\n WalletTransactionReason,\n WalletTransactionStatus,\n} from './wallet-transaction.enums';\nimport { WalletCurrency, WalletType } from '../wallets';\nimport { BaseListQuerySchema } from '../common';\n\nexport const MoneyAmountSchema = z\n .string()\n .regex(/^\\d+(\\.\\d{1,2})?$/, 'Invalid money amount');\n\nexport const WalletTransactionDirectionSchema = z.enum(\n WalletTransactionDirection,\n);\n\nexport const WalletTransactionStatusSchema = z.enum(WalletTransactionStatus);\n\nexport const WalletTransactionReasonSchema = z.enum(WalletTransactionReason);\n\nexport const WalletTransactionSourceUserSchema = z.object({\n id: z.number().int().positive(),\n login: z.string().trim().max(255).nullable(),\n fullName: z.string().trim().max(255).nullable(),\n});\n\nexport const WalletTransactionSchema = z.object({\n id: z.number().int().positive(),\n walletId: z.number().int().positive(),\n userId: z.number().int().positive(),\n walletType: z.enum(WalletType),\n direction: WalletTransactionDirectionSchema,\n reason: WalletTransactionReasonSchema,\n status: WalletTransactionStatusSchema,\n amount: MoneyAmountSchema,\n balanceBefore: MoneyAmountSchema,\n balanceAfter: MoneyAmountSchema,\n currency: z.enum(WalletCurrency),\n referenceType: z.string().trim().max(100).nullable(),\n referenceId: z.string().trim().max(100).nullable(),\n sourceUserId: z.number().int().positive().nullable(),\n initiatorUserId: z.number().int().positive().nullable(),\n comment: z.string().trim().max(500).nullable(),\n createdAt: z.string().datetime(),\n});\n\nexport const WalletTransactionDetailsSchema = WalletTransactionSchema.extend({\n sourceUser: WalletTransactionSourceUserSchema.nullable(),\n});\n\nexport const CreateWalletTransactionRequestSchema = z.object({\n userId: z.number().int().positive(),\n walletType: z.enum(WalletType),\n direction: WalletTransactionDirectionSchema,\n reason: WalletTransactionReasonSchema,\n amount: MoneyAmountSchema,\n referenceType: z.string().trim().max(100).optional(),\n referenceId: z.string().trim().max(100).optional(),\n sourceUserId: z.number().int().positive().optional(),\n initiatorUserId: z.number().int().positive().optional(),\n comment: z.string().trim().max(500).optional(),\n});\n\nexport const WalletTransactionsListQuerySchema = BaseListQuerySchema.extend({\n walletType: z.enum(WalletType).optional(),\n direction: WalletTransactionDirectionSchema.optional(),\n reason: WalletTransactionReasonSchema.optional(),\n});\n\nexport const WalletTransactionListResponseSchema = z.array(\n WalletTransactionSchema,\n);\n\nexport const WalletTransactionDetailsListResponseSchema = z.array(\n WalletTransactionDetailsSchema,\n);\n\nexport const GetUserWalletTransactionsParamsSchema = z.object({\n userId: z.coerce.number().int().positive(),\n});\n","import { z } from 'zod';\n\nexport const CountryResponseSchema = z.object({\n name: z.string(),\n code: z.string().length(2),\n nativeName: z.string(),\n});\n\nexport const CityResponseSchema = z.object({\n name: z.string(),\n nativeName: z.string(),\n});\n\nexport const GetCitiesQuerySchema = z.object({\n countryCode: z.string().length(2),\n});\n\nexport const CountriesResponseSchema = z.array(CountryResponseSchema);\nexport const CitiesResponseSchema = z.array(CityResponseSchema);\n\nexport type CountryResponse = z.infer<typeof CountryResponseSchema>;\nexport type CountriesResponse = z.infer<typeof CountriesResponseSchema>;\nexport type CityResponse = z.infer<typeof CityResponseSchema>;\nexport type CitiesResponse = z.infer<typeof CitiesResponseSchema>;\nexport type GetCitiesQuery = z.infer<typeof GetCitiesQuerySchema>;\n"]}
1
+ {"version":3,"sources":["../src/common/pagination.schemas.ts","../src/common/list-query.schemas.ts","../src/common/id.schemas.ts","../src/user/user-role.enum.ts","../src/currency/rate.schemas.ts","../src/currency/currency.schemas.ts","../src/user/user.schemas.ts","../src/user/user-file-type.enum.ts","../src/user/user-file.schemas.ts","../src/auth/auth-user.contract.ts","../src/auth/refresh.contract.ts","../src/auth/sign-in.contract.ts","../src/marketing/marketing.enums.ts","../src/marketing/marketing-invitation.contract.ts","../src/auth/sign-up.contract.ts","../src/auth/account-actions.contract.ts","../src/wallets/wallets.enum.ts","../src/currency/money-view.schemas.ts","../src/wallets/wallets.contract.ts","../src/wallet-transaction/wallet-transaction.enums.ts","../src/wallet-transaction/wallet-transaction.schemas.ts","../src/countries/countries.contract.ts","../src/currency/exchange-rate.schemas.ts"],"names":["z","UserRole","UserFileType","BinaryBranch","MarketingMemberStatus","WalletCurrency","WalletStatus","WalletType","WalletTransactionDirection","WalletTransactionStatus","WalletTransactionReason"],"mappings":"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","file":"index.js","sourcesContent":["import { z } from 'zod';\n\nexport const PageSchema = z.coerce.number().int().min(1).default(1);\nexport const LimitSchema = z.coerce.number().int().min(1).max(100).default(20);\nexport const SortOrderSchema = z.enum(['asc', 'desc']).default('desc');\n\nexport const PaginationQuerySchema = z.object({\n page: PageSchema.optional(),\n limit: LimitSchema.optional(),\n});\n","import { z } from 'zod';\nimport { LimitSchema, PageSchema, SortOrderSchema } from './pagination.schemas';\n\nexport const DateFromSchema = z.string().datetime().optional();\nexport const DateToSchema = z.string().datetime().optional();\n\nexport const SearchSchema = z.string().trim().min(1).max(255).optional();\n\nexport const BaseListQuerySchema = z.object({\n page: PageSchema.optional(),\n limit: LimitSchema.optional(),\n search: SearchSchema,\n dateFrom: DateFromSchema,\n dateTo: DateToSchema,\n sortOrder: SortOrderSchema.optional(),\n});\n","import { z } from 'zod';\n\n/** Максимум для Postgres int4 (SERIAL первичный ключ). */\nexport const INT4_MAX = 2147483647;\n\n/**\n * Идентификатор записи в БД (int4 PK).\n * Коэрсит строку из path/query в число и не пропускает значения вне диапазона\n * integer — иначе запрос падает в Postgres с `22003 out of range for type integer`.\n */\nexport const DbIdSchema = z.coerce.number().int().positive().max(INT4_MAX);\n\nexport type DbId = z.infer<typeof DbIdSchema>;\n","export enum UserRole {\n ADMIN = 'admin',\n MANAGER = 'manager',\n STAFF = 'staff',\n PARTNER = 'partner',\n}\n","import { z } from 'zod';\n\n/** numeric(30,18): up to 12 integer and 18 fractional digits. */\nexport const RatePerBaseSchema = z\n .string()\n .regex(\n /^\\d{1,12}(\\.\\d{1,18})?$/,\n 'Rate must contain at most 12 integer and 18 decimal digits',\n )\n .refine((value) => /[1-9]/.test(value), 'Rate must be greater than zero');\n","import { z } from 'zod';\nimport { RatePerBaseSchema } from './rate.schemas';\n\n/** Код валюты ISO 4217 (3 заглавные буквы). */\nexport const CurrencyCodeSchema = z\n .string()\n .trim()\n .toUpperCase()\n .regex(/^[A-Z]{3}$/, 'Invalid ISO 4217 currency code');\n\nexport const CurrencyCodeParamSchema = z.object({\n code: CurrencyCodeSchema,\n});\n\nexport const CurrencySchema = z.object({\n id: z.number().int().positive(),\n code: CurrencyCodeSchema,\n name: z.string().trim().max(255),\n symbol: z.string().trim().max(10),\n decimalDigits: z.number().int().min(0).max(8),\n isActive: z.boolean(),\n isBase: z.boolean(),\n createdAt: z.string().datetime(),\n updatedAt: z.string().datetime(),\n});\n\nexport const CurrencyListResponseSchema = z.array(CurrencySchema);\n\nexport const CreateCurrencyRequestSchema = z.object({\n code: CurrencyCodeSchema,\n name: z.string().trim().min(1).max(255),\n symbol: z.string().trim().min(1).max(10),\n decimalDigits: z.number().int().min(0).max(8).default(2),\n isActive: z.boolean().default(true),\n ratePerBase: RatePerBaseSchema,\n});\n\nexport const UpdateCurrencyRequestSchema = z\n .object({\n name: z.string().trim().min(1).max(255),\n symbol: z.string().trim().min(1).max(10),\n decimalDigits: z.number().int().min(0).max(8),\n isActive: z.boolean(),\n })\n .partial();\n","import { z } from 'zod';\nimport { UserRole } from './user-role.enum';\nimport { CurrencyCodeSchema } from '../currency/currency.schemas';\n\nexport const UserSchema = z.object({\n id: z.number().int().positive(),\n firstName: z.string().trim().max(255),\n lastName: z.string().trim().max(255),\n email: z.email().trim(),\n phoneNumber: z.string().trim().max(20),\n login: z.string().trim().max(255),\n uuid: z.string().trim().max(255),\n isActive: z.boolean(),\n isEmailVerified: z.boolean(),\n isPhoneVerified: z.boolean(),\n countryCode: z.string().trim().length(2),\n country: z.string().trim().max(255),\n city: z.string().trim().max(255),\n whatsappLink: z.string().trim().max(255).nullable(),\n instagramLink: z.string().trim().max(255).nullable(),\n telegramLink: z.string().trim().max(255).nullable(),\n displayCurrency: CurrencyCodeSchema,\n role: z.enum(UserRole),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n});\n\nexport const CreateUserRequestSchema = z.object({\n firstName: z.string().trim().max(255),\n lastName: z.string().trim().max(255),\n email: z.email().trim(),\n phoneNumber: z.string().trim().max(20),\n login: z.string().trim().max(255),\n password: z.string().trim().min(6).max(255),\n countryCode: z.string().trim().length(2),\n country: z.string().trim().max(255),\n city: z.string().trim().max(255),\n});\n\nexport const UpdateUserRequestSchema = z\n .object({\n firstName: z.string().trim().min(1).max(255),\n lastName: z.string().trim().min(1).max(255),\n countryCode: z.string().trim().length(2),\n country: z.string().trim().min(1).max(255),\n city: z.string().trim().min(1).max(255),\n whatsappLink: z.string().trim().max(255).nullable(),\n instagramLink: z.string().trim().max(255).nullable(),\n telegramLink: z.string().trim().max(255).nullable(),\n displayCurrency: CurrencyCodeSchema,\n })\n .partial();\n\nexport const ChangePasswordRequestSchema = z\n .object({\n currentPassword: z.string().trim().min(6).max(255),\n newPassword: z.string().trim().min(6).max(255),\n })\n .refine((data) => data.currentPassword !== data.newPassword, {\n message: 'Новый пароль должен отличаться от текущего',\n path: ['newPassword'],\n });\n\nexport const UserListResponseSchema = z.array(UserSchema);\n","export enum UserFileType {\n PHOTO = 'PHOTO',\n DOCUMENT = 'DOCUMENT',\n}\n","import { z } from 'zod';\nimport { UserFileType } from './user-file-type.enum';\nimport { DbIdSchema } from '../common';\n\nexport const UserFileSchema = z.object({\n id: z.number().int().positive(),\n userId: z.number().int().positive(),\n type: z.enum(UserFileType),\n url: z.string().url(),\n originalName: z.string().nullable(),\n mimeType: z.string().min(1).nullable(),\n sizeBytes: z.number().int().positive().nullable(),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n});\n\nexport const UserFileListSchema = z.array(UserFileSchema);\n\n/** Path-параметр `:fileId` для операций с файлами пользователя. */\nexport const FileIdParamSchema = z.object({\n fileId: DbIdSchema,\n});\n\nexport type UserFile = z.infer<typeof UserFileSchema>;\nexport type UserFileList = z.infer<typeof UserFileListSchema>;\nexport type FileIdParam = z.infer<typeof FileIdParamSchema>;\n","import { z } from 'zod';\nimport { UserRole } from '../user';\n\nexport const AuthUserSchema = z.object({\n id: z.number(),\n login: z.string(),\n role: z.enum(UserRole),\n isActive: z.boolean(),\n});\n\nexport type AuthUser = z.infer<typeof AuthUserSchema>;\n","import { z } from 'zod';\nimport { AuthUserSchema } from './auth-user.contract';\n\nexport const RefreshResponseSchema = z.object({\n accessToken: z.string(),\n user: AuthUserSchema,\n});\n\nexport type RefreshResponse = z.infer<typeof RefreshResponseSchema>;\n","import { z } from 'zod';\nimport { AuthUserSchema } from './auth-user.contract';\n\nexport const SignInRequestSchema = z.object({\n login: z\n .string('Логин должен быть строкой')\n .min(1, 'Логин не может быть пустым'),\n password: z\n .string('Пароль должен быть строкой')\n .min(1, 'Пароль не может быть пустым'),\n});\n\nexport const SignInResponseSchema = z.object({\n accessToken: z.string(),\n user: AuthUserSchema,\n});\n\nexport type SignInRequest = z.infer<typeof SignInRequestSchema>;\nexport type SignInResponse = z.infer<typeof SignInResponseSchema>;\n","import { z } from 'zod';\n\nexport enum BinaryBranch {\n LEFT = 'LEFT',\n RIGHT = 'RIGHT',\n}\n\nexport enum MarketingMemberStatus {\n ACTIVE = 'ACTIVE',\n BLOCKED = 'BLOCKED',\n}\n\nexport const BinaryBranchSchema = z.enum(BinaryBranch);\nexport const MarketingMemberStatusSchema = z.enum(MarketingMemberStatus);\n","import { z } from 'zod';\nimport { BinaryBranchSchema } from './marketing.enums';\n\nexport const MarketingPublicIdentifierSchema = z\n .string()\n .trim()\n .min(3)\n .max(255);\n\nexport const MarketingInvitationTokenSchema = z\n .string()\n .trim()\n .regex(/^[A-Za-z0-9_-]{43}$/);\n\nexport const ManualMarketingPlacementSchema = z.object({\n sponsorId: MarketingPublicIdentifierSchema,\n leg: BinaryBranchSchema,\n});\n\nexport const InvitationMarketingPlacementSchema = z.object({\n invitationToken: MarketingInvitationTokenSchema,\n});\n\nexport const CreateMarketingInvitationRequestSchema = z.object({\n leg: BinaryBranchSchema,\n});\n\nexport const MarketingPlacementIdentitySchema = z.object({\n uuid: z.string().trim().min(1).max(255),\n login: z.string().trim().min(1).max(255),\n firstName: z.string().trim().max(255),\n lastName: z.string().trim().max(255),\n});\n\nexport const MarketingPlacementPreviewSchema = z.object({\n sponsor: MarketingPlacementIdentitySchema,\n leg: BinaryBranchSchema,\n expiresAt: z.iso.datetime().nullable(),\n});\n\nexport const CreateMarketingInvitationResponseSchema =\n MarketingPlacementPreviewSchema.extend({\n invitationToken: MarketingInvitationTokenSchema,\n });\n\nexport type ManualMarketingPlacement = z.infer<\n typeof ManualMarketingPlacementSchema\n>;\nexport type InvitationMarketingPlacement = z.infer<\n typeof InvitationMarketingPlacementSchema\n>;\nexport type CreateMarketingInvitationRequest = z.infer<\n typeof CreateMarketingInvitationRequestSchema\n>;\nexport type MarketingPlacementIdentity = z.infer<\n typeof MarketingPlacementIdentitySchema\n>;\nexport type MarketingPlacementPreview = z.infer<\n typeof MarketingPlacementPreviewSchema\n>;\nexport type CreateMarketingInvitationResponse = z.infer<\n typeof CreateMarketingInvitationResponseSchema\n>;\n","import { z } from 'zod';\nimport {\n InvitationMarketingPlacementSchema,\n ManualMarketingPlacementSchema,\n} from '../marketing';\n\nconst SignUpBaseSchema = z.object({\n firstName: z.string().trim().max(255),\n lastName: z.string().trim().max(255),\n email: z.email().trim(),\n phoneNumber: z.string().trim().max(20),\n login: z.string().trim().min(3).max(255),\n password: z.string().trim().min(6).max(255),\n countryCode: z.string().trim().length(2),\n country: z.string().trim().max(255),\n city: z.string().trim().max(255),\n});\n\nexport const SignUpRequestSchema = SignUpBaseSchema.extend({\n sponsorId: ManualMarketingPlacementSchema.shape.sponsorId.optional(),\n leg: ManualMarketingPlacementSchema.shape.leg.optional(),\n invitationToken:\n InvitationMarketingPlacementSchema.shape.invitationToken.optional(),\n}).superRefine((input, context) => {\n const hasInvitation = input.invitationToken !== undefined;\n const manualFields = [input.sponsorId, input.leg];\n const hasAnyManualField = manualFields.some((value) => value !== undefined);\n const hasEveryManualField = manualFields.every(\n (value) => value !== undefined,\n );\n\n if (\n hasInvitation === hasAnyManualField ||\n (!hasInvitation && !hasEveryManualField)\n ) {\n context.addIssue({\n code: 'custom',\n message: 'Передайте invitationToken или полный набор sponsorId и leg',\n path: ['invitationToken'],\n });\n }\n});\n\nexport type SignUpRequest = z.infer<typeof SignUpRequestSchema>;\n","import { z } from 'zod';\n\nconst ActionTokenSchema = z.string().trim().min(40).max(500);\n\nexport const RequestEmailVerificationSchema = z.object({\n email: z.email().trim(),\n});\n\nexport const ConfirmEmailSchema = z.object({\n token: ActionTokenSchema,\n});\n\nexport const ForgotPasswordSchema = z.object({\n email: z.email().trim(),\n});\n\nexport const ResetPasswordSchema = z.object({\n token: ActionTokenSchema,\n newPassword: z.string().trim().min(8).max(255),\n});\n\nexport type RequestEmailVerification = z.infer<\n typeof RequestEmailVerificationSchema\n>;\nexport type ConfirmEmail = z.infer<typeof ConfirmEmailSchema>;\nexport type ForgotPassword = z.infer<typeof ForgotPasswordSchema>;\nexport type ResetPassword = z.infer<typeof ResetPasswordSchema>;\n","export enum WalletCurrency {\n PV = 'PV',\n MONEY = 'MONEY',\n}\n\nexport enum WalletStatus {\n ACTIVE = 'ACTIVE',\n BLOCKED = 'BLOCKED',\n ARCHIVED = 'ARCHIVED',\n}\n\nexport enum WalletType {\n MAIN = 'MAIN',\n BONUS = 'BONUS',\n CASHBACK = 'CASHBACK',\n PREMIUM = 'PREMIUM',\n}\n","import { z } from 'zod';\nimport { CurrencyCodeSchema } from './currency.schemas';\n\n/** Денежная сумма как строка (decimal), напр. \"1234.56\". */\nexport const MoneyAmountStringSchema = z\n .string()\n .regex(/^\\d+(\\.\\d{1,8})?$/, 'Invalid money amount');\n\n/**\n * Представление денежной суммы в валюте отображения.\n * `amount` уже сконвертирован из базовой валюты по `rate`.\n */\nexport const MoneyViewSchema = z.object({\n currency: CurrencyCodeSchema,\n amount: MoneyAmountStringSchema,\n rate: z.string(),\n});\n","import { z } from 'zod';\nimport { WalletCurrency, WalletStatus, WalletType } from './wallets.enum';\nimport { MoneyViewSchema } from '../currency/money-view.schemas';\n\nexport const WalletTypeSchema = z.enum(WalletType);\nexport const WalletStatusSchema = z.enum(WalletStatus);\nexport const WalletCurrencySchema = z.enum(WalletCurrency);\n\nexport const WalletSchema = z.object({\n id: z.number().int().positive(),\n userId: z.number().int().positive(),\n type: WalletTypeSchema,\n balance: z.string(),\n blockedBalance: z.string(),\n currency: WalletCurrencySchema,\n status: WalletStatusSchema,\n /** Баланс в валюте отображения пользователя (только для денежных кошельков). */\n display: MoneyViewSchema.nullable().optional(),\n createdAt: z.string().datetime(),\n updatedAt: z.string().datetime(),\n});\n\nexport const WalletListResponseSchema = z.array(WalletSchema);\n\nexport const GetUserWalletsParamsSchema = z.object({\n userId: z.coerce.number().int().positive(),\n});\n\nexport const GetUserWalletByTypeParamsSchema = z.object({\n userId: z.coerce.number().int().positive(),\n type: WalletTypeSchema,\n});\n","export enum WalletTransactionDirection {\n CREDIT = 'CREDIT',\n DEBIT = 'DEBIT',\n}\n\nexport enum WalletTransactionStatus {\n COMPLETED = 'COMPLETED',\n FAILED = 'FAILED',\n}\n\nexport enum WalletTransactionReason {\n REFERRAL_BONUS = 'REFERRAL_BONUS',\n BINARY_BONUS = 'BINARY_BONUS',\n MATCHING_BONUS = 'MATCHING_BONUS',\n STATUS_BONUS = 'STATUS_BONUS',\n EXTRA_BONUS = 'EXTRA_BONUS',\n STRUCTURE_BONUS = 'STRUCTURE_BONUS',\n PRODUCT_PURCHASE = 'PRODUCT_PURCHASE',\n PLAN_PURCHASE = 'PLAN_PURCHASE',\n WITHDRAWAL = 'WITHDRAWAL',\n TRANSFER_IN = 'TRANSFER_IN',\n TRANSFER_OUT = 'TRANSFER_OUT',\n REFUND = 'REFUND',\n EXPIRATION = 'EXPIRATION',\n}\n","import { z } from 'zod';\nimport {\n WalletTransactionDirection,\n WalletTransactionReason,\n WalletTransactionStatus,\n} from './wallet-transaction.enums';\nimport { WalletCurrency, WalletType } from '../wallets';\nimport { BaseListQuerySchema, DbIdSchema } from '../common';\nimport { MoneyViewSchema } from '../currency/money-view.schemas';\n\nexport const MoneyAmountSchema = z\n .string()\n .regex(\n /^\\d{1,16}(\\.\\d{1,2})?$/,\n 'Money amount must contain at most 16 integer and 2 decimal digits',\n );\n\nexport const WalletOperationKeySchema = z\n .string()\n .trim()\n .min(1)\n .max(150)\n .regex(/^[A-Za-z0-9][A-Za-z0-9:._-]*$/, 'Invalid wallet operation key');\n\nexport const WalletTransactionDirectionSchema = z.enum(\n WalletTransactionDirection,\n);\n\nexport const WalletTransactionStatusSchema = z.enum(WalletTransactionStatus);\n\nexport const WalletTransactionReasonSchema = z.enum(WalletTransactionReason);\n\nexport const WalletTransactionSourceUserSchema = z.object({\n id: z.number().int().positive(),\n login: z.string().trim().max(255).nullable(),\n fullName: z.string().trim().max(255).nullable(),\n});\n\nexport const WalletTransactionSchema = z.object({\n id: z.number().int().positive(),\n operationKey: WalletOperationKeySchema,\n walletId: z.number().int().positive(),\n userId: z.number().int().positive(),\n walletType: z.enum(WalletType),\n direction: WalletTransactionDirectionSchema,\n reason: WalletTransactionReasonSchema,\n status: WalletTransactionStatusSchema,\n amount: MoneyAmountSchema,\n balanceBefore: MoneyAmountSchema,\n balanceAfter: MoneyAmountSchema,\n currency: z.enum(WalletCurrency),\n referenceType: z.string().trim().max(100).nullable(),\n referenceId: z.string().trim().max(100).nullable(),\n sourceUserId: z.number().int().positive().nullable(),\n initiatorUserId: z.number().int().positive().nullable(),\n comment: z.string().trim().max(500).nullable(),\n createdAt: z.string().datetime(),\n});\n\nexport const WalletTransactionDetailsSchema = WalletTransactionSchema.extend({\n sourceUser: WalletTransactionSourceUserSchema.nullable(),\n displayAmount: MoneyViewSchema.nullable().optional(),\n});\n\nexport const CreateWalletTransactionRequestSchema = z.object({\n operationKey: WalletOperationKeySchema,\n userId: z.number().int().positive(),\n walletType: z.enum(WalletType),\n direction: WalletTransactionDirectionSchema,\n reason: WalletTransactionReasonSchema,\n amount: MoneyAmountSchema,\n referenceType: z.string().trim().max(100).optional(),\n referenceId: z.string().trim().max(100).optional(),\n sourceUserId: z.number().int().positive().optional(),\n initiatorUserId: z.number().int().positive().optional(),\n comment: z.string().trim().max(500).optional(),\n});\n\nexport const WalletTransactionsListQuerySchema = BaseListQuerySchema.extend({\n walletType: z.enum(WalletType).optional(),\n direction: WalletTransactionDirectionSchema.optional(),\n reason: WalletTransactionReasonSchema.optional(),\n});\n\nexport const WalletTransactionListResponseSchema = z.array(\n WalletTransactionSchema,\n);\n\nexport const WalletTransactionDetailsListResponseSchema = z.array(\n WalletTransactionDetailsSchema,\n);\n\nexport const GetUserWalletTransactionsParamsSchema = z.object({\n userId: DbIdSchema,\n});\n","import { z } from 'zod';\n\nexport const CountryResponseSchema = z.object({\n name: z.string(),\n code: z.string().length(2),\n nativeName: z.string(),\n});\n\nexport const CityResponseSchema = z.object({\n name: z.string(),\n nativeName: z.string(),\n});\n\nexport const GetCitiesQuerySchema = z.object({\n countryCode: z.string().length(2),\n});\n\nexport const CountriesResponseSchema = z.array(CountryResponseSchema);\nexport const CitiesResponseSchema = z.array(CityResponseSchema);\n\nexport type CountryResponse = z.infer<typeof CountryResponseSchema>;\nexport type CountriesResponse = z.infer<typeof CountriesResponseSchema>;\nexport type CityResponse = z.infer<typeof CityResponseSchema>;\nexport type CitiesResponse = z.infer<typeof CitiesResponseSchema>;\nexport type GetCitiesQuery = z.infer<typeof GetCitiesQuerySchema>;\n","import { z } from 'zod';\nimport { CurrencyCodeSchema } from './currency.schemas';\nimport { RatePerBaseSchema } from './rate.schemas';\n\nexport const ExchangeRateSourceSchema = z.literal('manual');\n\nexport const ExchangeRateSchema = z.object({\n id: z.number().int().positive(),\n currencyCode: CurrencyCodeSchema,\n /** Сколько единиц валюты за 1 базовую валюту. */\n ratePerBase: z.string(),\n source: ExchangeRateSourceSchema,\n createdAt: z.string().datetime(),\n updatedAt: z.string().datetime(),\n});\n\nexport const ExchangeRateListResponseSchema = z.array(ExchangeRateSchema);\n\nexport const UpdateExchangeRateRequestSchema = z.object({\n ratePerBase: RatePerBaseSchema,\n});\n"]}