aivilife-contracts 2.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.
@@ -1,2 +1,2 @@
1
- export { A as AuthUser, a as AuthUserSchema, C as ConfirmEmail, b as ConfirmEmailSchema, F as ForgotPassword, c as ForgotPasswordSchema, R as RefreshResponse, d as RefreshResponseSchema, e as RequestEmailVerification, f as RequestEmailVerificationSchema, g as ResetPassword, h as ResetPasswordSchema, S as SignInRequest, i as SignInRequestSchema, j as SignInResponse, k as SignInResponseSchema, l as SignUpRequest, m as SignUpRequestSchema } from '../index-LnrjPFdn.mjs';
1
+ export { A as AuthUser, a as AuthUserSchema, C as ConfirmEmail, c as ConfirmEmailSchema, F as ForgotPassword, d as ForgotPasswordSchema, R as RefreshResponse, f as RefreshResponseSchema, g as RequestEmailVerification, h as RequestEmailVerificationSchema, i as ResetPassword, j as ResetPasswordSchema, S as SignInRequest, k as SignInRequestSchema, l as SignInResponse, m as SignInResponseSchema, n as SignUpRequest, o as SignUpRequestSchema } from '../marketing.enums-qC7eI41b.mjs';
2
2
  import 'zod';
@@ -1,2 +1,2 @@
1
- export { A as AuthUser, a as AuthUserSchema, C as ConfirmEmail, b as ConfirmEmailSchema, F as ForgotPassword, c as ForgotPasswordSchema, R as RefreshResponse, d as RefreshResponseSchema, e as RequestEmailVerification, f as RequestEmailVerificationSchema, g as ResetPassword, h as ResetPasswordSchema, S as SignInRequest, i as SignInRequestSchema, j as SignInResponse, k as SignInResponseSchema, l as SignUpRequest, m as SignUpRequestSchema } from '../index-LnrjPFdn.js';
1
+ export { A as AuthUser, a as AuthUserSchema, C as ConfirmEmail, c as ConfirmEmailSchema, F as ForgotPassword, d as ForgotPasswordSchema, R as RefreshResponse, f as RefreshResponseSchema, g as RequestEmailVerification, h as RequestEmailVerificationSchema, i as ResetPassword, j as ResetPasswordSchema, S as SignInRequest, k as SignInRequestSchema, l as SignInResponse, m as SignInResponseSchema, n as SignUpRequest, o as SignUpRequestSchema } from '../marketing.enums-qC7eI41b.js';
2
2
  import 'zod';
@@ -166,7 +166,47 @@ var SignInResponseSchema = zod.z.object({
166
166
  accessToken: zod.z.string(),
167
167
  user: AuthUserSchema
168
168
  });
169
- var SignUpRequestSchema = zod.z.object({
169
+ var BinaryBranch = /* @__PURE__ */ ((BinaryBranch2) => {
170
+ BinaryBranch2["LEFT"] = "LEFT";
171
+ BinaryBranch2["RIGHT"] = "RIGHT";
172
+ return BinaryBranch2;
173
+ })(BinaryBranch || {});
174
+ var MarketingMemberStatus = /* @__PURE__ */ ((MarketingMemberStatus2) => {
175
+ MarketingMemberStatus2["ACTIVE"] = "ACTIVE";
176
+ MarketingMemberStatus2["BLOCKED"] = "BLOCKED";
177
+ return MarketingMemberStatus2;
178
+ })(MarketingMemberStatus || {});
179
+ var BinaryBranchSchema = zod.z.enum(BinaryBranch);
180
+ zod.z.enum(MarketingMemberStatus);
181
+ var MarketingPublicIdentifierSchema = zod.z.string().trim().min(3).max(255);
182
+ var MarketingInvitationTokenSchema = zod.z.string().trim().regex(/^[A-Za-z0-9_-]{43}$/);
183
+ var ManualMarketingPlacementSchema = zod.z.object({
184
+ sponsorId: MarketingPublicIdentifierSchema,
185
+ leg: BinaryBranchSchema
186
+ });
187
+ var InvitationMarketingPlacementSchema = zod.z.object({
188
+ invitationToken: MarketingInvitationTokenSchema
189
+ });
190
+ zod.z.object({
191
+ leg: BinaryBranchSchema
192
+ });
193
+ var MarketingPlacementIdentitySchema = zod.z.object({
194
+ uuid: zod.z.string().trim().min(1).max(255),
195
+ login: zod.z.string().trim().min(1).max(255),
196
+ firstName: zod.z.string().trim().max(255),
197
+ lastName: zod.z.string().trim().max(255)
198
+ });
199
+ var MarketingPlacementPreviewSchema = zod.z.object({
200
+ sponsor: MarketingPlacementIdentitySchema,
201
+ leg: BinaryBranchSchema,
202
+ expiresAt: zod.z.iso.datetime().nullable()
203
+ });
204
+ MarketingPlacementPreviewSchema.extend({
205
+ invitationToken: MarketingInvitationTokenSchema
206
+ });
207
+
208
+ // src/auth/sign-up.contract.ts
209
+ var SignUpBaseSchema = zod.z.object({
170
210
  firstName: zod.z.string().trim().max(255),
171
211
  lastName: zod.z.string().trim().max(255),
172
212
  email: zod.z.email().trim(),
@@ -177,6 +217,25 @@ var SignUpRequestSchema = zod.z.object({
177
217
  country: zod.z.string().trim().max(255),
178
218
  city: zod.z.string().trim().max(255)
179
219
  });
220
+ var SignUpRequestSchema = SignUpBaseSchema.extend({
221
+ sponsorId: ManualMarketingPlacementSchema.shape.sponsorId.optional(),
222
+ leg: ManualMarketingPlacementSchema.shape.leg.optional(),
223
+ invitationToken: InvitationMarketingPlacementSchema.shape.invitationToken.optional()
224
+ }).superRefine((input, context) => {
225
+ const hasInvitation = input.invitationToken !== void 0;
226
+ const manualFields = [input.sponsorId, input.leg];
227
+ const hasAnyManualField = manualFields.some((value) => value !== void 0);
228
+ const hasEveryManualField = manualFields.every(
229
+ (value) => value !== void 0
230
+ );
231
+ if (hasInvitation === hasAnyManualField || !hasInvitation && !hasEveryManualField) {
232
+ context.addIssue({
233
+ code: "custom",
234
+ 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",
235
+ path: ["invitationToken"]
236
+ });
237
+ }
238
+ });
180
239
  var ActionTokenSchema = zod.z.string().trim().min(40).max(500);
181
240
  var RequestEmailVerificationSchema = zod.z.object({
182
241
  email: zod.z.email().trim()
@@ -1 +1 @@
1
- {"version":3,"sources":["../../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/common/pagination.schemas.ts","../../src/common/list-query.schemas.ts","../../src/common/id.schemas.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/auth/sign-up.contract.ts","../../src/auth/account-actions.contract.ts"],"names":["UserRole","z","UserFileType"],"mappings":"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","file":"index.js","sourcesContent":["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';\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","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 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","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"]}
1
+ {"version":3,"sources":["../../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/common/pagination.schemas.ts","../../src/common/list-query.schemas.ts","../../src/common/id.schemas.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"],"names":["UserRole","z","UserFileType","BinaryBranch","MarketingMemberStatus"],"mappings":";;;;;;;AAAO,IAAK,QAAA,qBAAAA,SAAAA,KAAL;AACL,EAAAA,UAAA,OAAA,CAAA,GAAQ,OAAA;AACR,EAAAA,UAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,UAAA,OAAA,CAAA,GAAQ,OAAA;AACR,EAAAA,UAAA,SAAA,CAAA,GAAU,SAAA;AAJA,EAAA,OAAAA,SAAAA;AAAA,CAAA,EAAA,QAAA,IAAA,EAAA,CAAA;ACGL,IAAM,iBAAA,GAAoBC,KAAA,CAC9B,MAAA,EAAO,CACP,KAAA;AAAA,EACC,yBAAA;AAAA,EACA;AACF,CAAA,CACC,OAAO,CAAC,KAAA,KAAU,QAAQ,IAAA,CAAK,KAAK,GAAG,gCAAgC,CAAA;;;ACLnE,IAAM,kBAAA,GAAqBA,KAAAA,CAC/B,MAAA,EAAO,CACP,IAAA,GACA,WAAA,EAAY,CACZ,KAAA,CAAM,YAAA,EAAc,gCAAgC,CAAA;AAEhBA,MAAE,MAAA,CAAO;AAAA,EAC9C,IAAA,EAAM;AACR,CAAC;AAEM,IAAM,cAAA,GAAiBA,MAAE,MAAA,CAAO;AAAA,EACrC,IAAIA,KAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,GAAM,QAAA,EAAS;AAAA,EAC9B,IAAA,EAAM,kBAAA;AAAA,EACN,MAAMA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG,CAAA;AAAA,EAC/B,QAAQA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,EAAE,CAAA;AAAA,EAChC,aAAA,EAAeA,KAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,GAAM,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,CAAC,CAAA;AAAA,EAC5C,QAAA,EAAUA,MAAE,OAAA,EAAQ;AAAA,EACpB,MAAA,EAAQA,MAAE,OAAA,EAAQ;AAAA,EAClB,SAAA,EAAWA,KAAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC/B,SAAA,EAAWA,KAAAA,CAAE,MAAA,EAAO,CAAE,QAAA;AACxB,CAAC,CAAA;AAEyCA,KAAAA,CAAE,KAAA,CAAM,cAAc;AAErBA,MAAE,MAAA,CAAO;AAAA,EAClD,IAAA,EAAM,kBAAA;AAAA,EACN,IAAA,EAAMA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,GAAO,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,GAAG,CAAA;AAAA,EACtC,MAAA,EAAQA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,GAAO,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,EAAE,CAAA;AAAA,EACvC,aAAA,EAAeA,KAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,CAAC,CAAA,CAAE,QAAQ,CAAC,CAAA;AAAA,EACvD,QAAA,EAAUA,KAAAA,CAAE,OAAA,EAAQ,CAAE,QAAQ,IAAI,CAAA;AAAA,EAClC,WAAA,EAAa;AACf,CAAC;AAE0CA,MACxC,MAAA,CAAO;AAAA,EACN,IAAA,EAAMA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,GAAO,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,GAAG,CAAA;AAAA,EACtC,MAAA,EAAQA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,GAAO,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,EAAE,CAAA;AAAA,EACvC,aAAA,EAAeA,KAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,GAAM,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,CAAC,CAAA;AAAA,EAC5C,QAAA,EAAUA,MAAE,OAAA;AACd,CAAC,EACA,OAAA;;;ACxCI,IAAM,UAAA,GAAaA,MAAE,MAAA,CAAO;AAAA,EACjC,IAAIA,KAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,GAAM,QAAA,EAAS;AAAA,EAC9B,WAAWA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG,CAAA;AAAA,EACpC,UAAUA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG,CAAA;AAAA,EACnC,KAAA,EAAOA,KAAAA,CAAE,KAAA,EAAM,CAAE,IAAA,EAAK;AAAA,EACtB,aAAaA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,EAAE,CAAA;AAAA,EACrC,OAAOA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG,CAAA;AAAA,EAChC,MAAMA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG,CAAA;AAAA,EAC/B,QAAA,EAAUA,MAAE,OAAA,EAAQ;AAAA,EACpB,eAAA,EAAiBA,MAAE,OAAA,EAAQ;AAAA,EAC3B,eAAA,EAAiBA,MAAE,OAAA,EAAQ;AAAA,EAC3B,aAAaA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,OAAO,CAAC,CAAA;AAAA,EACvC,SAASA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG,CAAA;AAAA,EAClC,MAAMA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG,CAAA;AAAA,EAC/B,YAAA,EAAcA,MAAE,MAAA,EAAO,CAAE,MAAK,CAAE,GAAA,CAAI,GAAG,CAAA,CAAE,QAAA,EAAS;AAAA,EAClD,aAAA,EAAeA,MAAE,MAAA,EAAO,CAAE,MAAK,CAAE,GAAA,CAAI,GAAG,CAAA,CAAE,QAAA,EAAS;AAAA,EACnD,YAAA,EAAcA,MAAE,MAAA,EAAO,CAAE,MAAK,CAAE,GAAA,CAAI,GAAG,CAAA,CAAE,QAAA,EAAS;AAAA,EAClD,eAAA,EAAiB,kBAAA;AAAA,EACjB,IAAA,EAAMA,KAAAA,CAAE,IAAA,CAAK,QAAQ,CAAA;AAAA,EACrB,SAAA,EAAWA,KAAAA,CAAE,GAAA,CAAI,QAAA,EAAS;AAAA,EAC1B,SAAA,EAAWA,KAAAA,CAAE,GAAA,CAAI,QAAA;AACnB,CAAC,CAAA;AAEsCA,MAAE,MAAA,CAAO;AAAA,EAC9C,WAAWA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG,CAAA;AAAA,EACpC,UAAUA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG,CAAA;AAAA,EACnC,KAAA,EAAOA,KAAAA,CAAE,KAAA,EAAM,CAAE,IAAA,EAAK;AAAA,EACtB,aAAaA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,EAAE,CAAA;AAAA,EACrC,OAAOA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG,CAAA;AAAA,EAChC,QAAA,EAAUA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,GAAO,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,GAAG,CAAA;AAAA,EAC1C,aAAaA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,OAAO,CAAC,CAAA;AAAA,EACvC,SAASA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG,CAAA;AAAA,EAClC,MAAMA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG;AACjC,CAAC;AAEsCA,MACpC,MAAA,CAAO;AAAA,EACN,SAAA,EAAWA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,GAAO,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,GAAG,CAAA;AAAA,EAC3C,QAAA,EAAUA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,GAAO,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,GAAG,CAAA;AAAA,EAC1C,aAAaA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,OAAO,CAAC,CAAA;AAAA,EACvC,OAAA,EAASA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,GAAO,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,GAAG,CAAA;AAAA,EACzC,IAAA,EAAMA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,GAAO,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,GAAG,CAAA;AAAA,EACtC,YAAA,EAAcA,MAAE,MAAA,EAAO,CAAE,MAAK,CAAE,GAAA,CAAI,GAAG,CAAA,CAAE,QAAA,EAAS;AAAA,EAClD,aAAA,EAAeA,MAAE,MAAA,EAAO,CAAE,MAAK,CAAE,GAAA,CAAI,GAAG,CAAA,CAAE,QAAA,EAAS;AAAA,EACnD,YAAA,EAAcA,MAAE,MAAA,EAAO,CAAE,MAAK,CAAE,GAAA,CAAI,GAAG,CAAA,CAAE,QAAA,EAAS;AAAA,EAClD,eAAA,EAAiB;AACnB,CAAC,EACA,OAAA;AAEwCA,MACxC,MAAA,CAAO;AAAA,EACN,eAAA,EAAiBA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,GAAO,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,GAAG,CAAA;AAAA,EACjD,WAAA,EAAaA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,GAAO,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,GAAG;AAC/C,CAAC,EACA,MAAA,CAAO,CAAC,SAAS,IAAA,CAAK,eAAA,KAAoB,KAAK,WAAA,EAAa;AAAA,EAC3D,OAAA,EAAS,qOAAA;AAAA,EACT,IAAA,EAAM,CAAC,aAAa;AACtB,CAAC;AAEmCA,KAAAA,CAAE,KAAA,CAAM,UAAU;;;AC/DjD,IAAK,YAAA,qBAAAC,aAAAA,KAAL;AACL,EAAAA,cAAA,OAAA,CAAA,GAAQ,OAAA;AACR,EAAAA,cAAA,UAAA,CAAA,GAAW,UAAA;AAFD,EAAA,OAAAA,aAAAA;AAAA,CAAA,EAAA,YAAA,IAAA,EAAA,CAAA;ACEL,IAAM,UAAA,GAAaD,KAAAA,CAAE,MAAA,CAAO,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,GAAA,CAAI,CAAC,CAAA,CAAE,OAAA,CAAQ,CAAC,CAAA;AAC3D,IAAM,WAAA,GAAcA,KAAAA,CAAE,MAAA,CAAO,MAAA,GAAS,GAAA,EAAI,CAAE,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,GAAG,CAAA,CAAE,QAAQ,EAAE,CAAA;AACtE,IAAM,eAAA,GAAkBA,MAAE,IAAA,CAAK,CAAC,OAAO,MAAM,CAAC,CAAA,CAAE,OAAA,CAAQ,MAAM,CAAA;AAEhCA,MAAE,MAAA,CAAO;AAAA,EAC5C,IAAA,EAAM,WAAW,QAAA,EAAS;AAAA,EAC1B,KAAA,EAAO,YAAY,QAAA;AACrB,CAAC;ACNM,IAAM,iBAAiBA,KAAAA,CAAE,MAAA,EAAO,CAAE,QAAA,GAAW,QAAA,EAAS;AACtD,IAAM,eAAeA,KAAAA,CAAE,MAAA,EAAO,CAAE,QAAA,GAAW,QAAA,EAAS;AAEpD,IAAM,YAAA,GAAeA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,EAAK,CAAE,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,GAAG,CAAA,CAAE,QAAA,EAAS;AAEpCA,MAAE,MAAA,CAAO;AAAA,EAC1C,IAAA,EAAM,WAAW,QAAA,EAAS;AAAA,EAC1B,KAAA,EAAO,YAAY,QAAA,EAAS;AAAA,EAC5B,MAAA,EAAQ,YAAA;AAAA,EACR,QAAA,EAAU,cAAA;AAAA,EACV,MAAA,EAAQ,YAAA;AAAA,EACR,SAAA,EAAW,gBAAgB,QAAA;AAC7B,CAAC;ACZM,IAAM,QAAA,GAAW,UAAA;AAOjB,IAAM,UAAA,GAAaA,KAAAA,CAAE,MAAA,CAAO,MAAA,EAAO,CAAE,KAAI,CAAE,QAAA,EAAS,CAAE,GAAA,CAAI,QAAQ,CAAA;;;ACNlE,IAAM,cAAA,GAAiBA,MAAE,MAAA,CAAO;AAAA,EACrC,IAAIA,KAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,GAAM,QAAA,EAAS;AAAA,EAC9B,QAAQA,KAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,GAAM,QAAA,EAAS;AAAA,EAClC,IAAA,EAAMA,KAAAA,CAAE,IAAA,CAAK,YAAY,CAAA;AAAA,EACzB,GAAA,EAAKA,KAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,EAAI;AAAA,EACpB,YAAA,EAAcA,KAAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAClC,UAAUA,KAAAA,CAAE,MAAA,GAAS,GAAA,CAAI,CAAC,EAAE,QAAA,EAAS;AAAA,EACrC,SAAA,EAAWA,MAAE,MAAA,EAAO,CAAE,KAAI,CAAE,QAAA,GAAW,QAAA,EAAS;AAAA,EAChD,SAAA,EAAWA,KAAAA,CAAE,GAAA,CAAI,QAAA,EAAS;AAAA,EAC1B,SAAA,EAAWA,KAAAA,CAAE,GAAA,CAAI,QAAA;AACnB,CAAC,CAAA;AAEiCA,KAAAA,CAAE,KAAA,CAAM,cAAc;AAGvBA,MAAE,MAAA,CAAO;AAAA,EACxC,MAAA,EAAQ;AACV,CAAC;;;AClBM,IAAM,cAAA,GAAiBA,MAAE,MAAA,CAAO;AAAA,EACrC,EAAA,EAAIA,MAAE,MAAA,EAAO;AAAA,EACb,KAAA,EAAOA,MAAE,MAAA,EAAO;AAAA,EAChB,IAAA,EAAMA,KAAAA,CAAE,IAAA,CAAK,QAAQ,CAAA;AAAA,EACrB,QAAA,EAAUA,MAAE,OAAA;AACd,CAAC;ACLM,IAAM,qBAAA,GAAwBA,MAAE,MAAA,CAAO;AAAA,EAC5C,WAAA,EAAaA,MAAE,MAAA,EAAO;AAAA,EACtB,IAAA,EAAM;AACR,CAAC;ACHM,IAAM,mBAAA,GAAsBA,MAAE,MAAA,CAAO;AAAA,EAC1C,OAAOA,KAAAA,CACJ,MAAA,CAAO,yIAA2B,CAAA,CAClC,GAAA,CAAI,GAAG,0IAA4B,CAAA;AAAA,EACtC,UAAUA,KAAAA,CACP,MAAA,CAAO,+IAA4B,CAAA,CACnC,GAAA,CAAI,GAAG,gJAA6B;AACzC,CAAC;AAEM,IAAM,oBAAA,GAAuBA,MAAE,MAAA,CAAO;AAAA,EAC3C,WAAA,EAAaA,MAAE,MAAA,EAAO;AAAA,EACtB,IAAA,EAAM;AACR,CAAC;ACbM,IAAK,YAAA,qBAAAE,aAAAA,KAAL;AACL,EAAAA,cAAA,MAAA,CAAA,GAAO,MAAA;AACP,EAAAA,cAAA,OAAA,CAAA,GAAQ,OAAA;AAFE,EAAA,OAAAA,aAAAA;AAAA,CAAA,EAAA,YAAA,IAAA,EAAA,CAAA;AAKL,IAAK,qBAAA,qBAAAC,sBAAAA,KAAL;AACL,EAAAA,uBAAA,QAAA,CAAA,GAAS,QAAA;AACT,EAAAA,uBAAA,SAAA,CAAA,GAAU,SAAA;AAFA,EAAA,OAAAA,sBAAAA;AAAA,CAAA,EAAA,qBAAA,IAAA,EAAA,CAAA;AAKL,IAAM,kBAAA,GAAqBH,KAAAA,CAAE,IAAA,CAAK,YAAY,CAAA;AACVA,KAAAA,CAAE,IAAA,CAAK,qBAAqB;ACVhE,IAAM,+BAAA,GAAkCA,KAAAA,CAC5C,MAAA,EAAO,CACP,IAAA,GACA,GAAA,CAAI,CAAC,CAAA,CACL,GAAA,CAAI,GAAG,CAAA;AAEH,IAAM,iCAAiCA,KAAAA,CAC3C,MAAA,GACA,IAAA,EAAK,CACL,MAAM,qBAAqB,CAAA;AAEvB,IAAM,8BAAA,GAAiCA,MAAE,MAAA,CAAO;AAAA,EACrD,SAAA,EAAW,+BAAA;AAAA,EACX,GAAA,EAAK;AACP,CAAC,CAAA;AAEM,IAAM,kCAAA,GAAqCA,MAAE,MAAA,CAAO;AAAA,EACzD,eAAA,EAAiB;AACnB,CAAC,CAAA;AAEqDA,MAAE,MAAA,CAAO;AAAA,EAC7D,GAAA,EAAK;AACP,CAAC;AAEM,IAAM,gCAAA,GAAmCA,MAAE,MAAA,CAAO;AAAA,EACvD,IAAA,EAAMA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,GAAO,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,GAAG,CAAA;AAAA,EACtC,KAAA,EAAOA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,GAAO,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,GAAG,CAAA;AAAA,EACvC,WAAWA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG,CAAA;AAAA,EACpC,UAAUA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG;AACrC,CAAC,CAAA;AAEM,IAAM,+BAAA,GAAkCA,MAAE,MAAA,CAAO;AAAA,EACtD,OAAA,EAAS,gCAAA;AAAA,EACT,GAAA,EAAK,kBAAA;AAAA,EACL,SAAA,EAAWA,KAAAA,CAAE,GAAA,CAAI,QAAA,GAAW,QAAA;AAC9B,CAAC,CAAA;AAGC,gCAAgC,MAAA,CAAO;AAAA,EACrC,eAAA,EAAiB;AACnB,CAAC;;;ACrCH,IAAM,gBAAA,GAAmBA,MAAE,MAAA,CAAO;AAAA,EAChC,WAAWA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG,CAAA;AAAA,EACpC,UAAUA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG,CAAA;AAAA,EACnC,KAAA,EAAOA,KAAAA,CAAE,KAAA,EAAM,CAAE,IAAA,EAAK;AAAA,EACtB,aAAaA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,EAAE,CAAA;AAAA,EACrC,KAAA,EAAOA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,GAAO,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,GAAG,CAAA;AAAA,EACvC,QAAA,EAAUA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,GAAO,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,GAAG,CAAA;AAAA,EAC1C,aAAaA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,OAAO,CAAC,CAAA;AAAA,EACvC,SAASA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG,CAAA;AAAA,EAClC,MAAMA,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,GAAG;AACjC,CAAC,CAAA;AAEM,IAAM,mBAAA,GAAsB,iBAAiB,MAAA,CAAO;AAAA,EACzD,SAAA,EAAW,8BAAA,CAA+B,KAAA,CAAM,SAAA,CAAU,QAAA,EAAS;AAAA,EACnE,GAAA,EAAK,8BAAA,CAA+B,KAAA,CAAM,GAAA,CAAI,QAAA,EAAS;AAAA,EACvD,eAAA,EACE,kCAAA,CAAmC,KAAA,CAAM,eAAA,CAAgB,QAAA;AAC7D,CAAC,CAAA,CAAE,WAAA,CAAY,CAAC,KAAA,EAAO,OAAA,KAAY;AACjC,EAAA,MAAM,aAAA,GAAgB,MAAM,eAAA,KAAoB,MAAA;AAChD,EAAA,MAAM,YAAA,GAAe,CAAC,KAAA,CAAM,SAAA,EAAW,MAAM,GAAG,CAAA;AAChD,EAAA,MAAM,oBAAoB,YAAA,CAAa,IAAA,CAAK,CAAC,KAAA,KAAU,UAAU,MAAS,CAAA;AAC1E,EAAA,MAAM,sBAAsB,YAAA,CAAa,KAAA;AAAA,IACvC,CAAC,UAAU,KAAA,KAAU;AAAA,GACvB;AAEA,EAAA,IACE,aAAA,KAAkB,iBAAA,IACjB,CAAC,aAAA,IAAiB,CAAC,mBAAA,EACpB;AACA,IAAA,OAAA,CAAQ,QAAA,CAAS;AAAA,MACf,IAAA,EAAM,QAAA;AAAA,MACN,OAAA,EAAS,oLAAA;AAAA,MACT,IAAA,EAAM,CAAC,iBAAiB;AAAA,KACzB,CAAA;AAAA,EACH;AACF,CAAC;ACvCD,IAAM,iBAAA,GAAoBA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,GAAO,GAAA,CAAI,EAAE,CAAA,CAAE,GAAA,CAAI,GAAG,CAAA;AAEpD,IAAM,8BAAA,GAAiCA,MAAE,MAAA,CAAO;AAAA,EACrD,KAAA,EAAOA,KAAAA,CAAE,KAAA,EAAM,CAAE,IAAA;AACnB,CAAC;AAEM,IAAM,kBAAA,GAAqBA,MAAE,MAAA,CAAO;AAAA,EACzC,KAAA,EAAO;AACT,CAAC;AAEM,IAAM,oBAAA,GAAuBA,MAAE,MAAA,CAAO;AAAA,EAC3C,KAAA,EAAOA,KAAAA,CAAE,KAAA,EAAM,CAAE,IAAA;AACnB,CAAC;AAEM,IAAM,mBAAA,GAAsBA,MAAE,MAAA,CAAO;AAAA,EAC1C,KAAA,EAAO,iBAAA;AAAA,EACP,WAAA,EAAaA,KAAAA,CAAE,MAAA,EAAO,CAAE,IAAA,GAAO,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,GAAG;AAC/C,CAAC","file":"index.js","sourcesContent":["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';\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","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"]}
@@ -164,7 +164,47 @@ var SignInResponseSchema = z.object({
164
164
  accessToken: z.string(),
165
165
  user: AuthUserSchema
166
166
  });
167
- var SignUpRequestSchema = 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 = z.enum(BinaryBranch);
178
+ z.enum(MarketingMemberStatus);
179
+ var MarketingPublicIdentifierSchema = z.string().trim().min(3).max(255);
180
+ var MarketingInvitationTokenSchema = z.string().trim().regex(/^[A-Za-z0-9_-]{43}$/);
181
+ var ManualMarketingPlacementSchema = z.object({
182
+ sponsorId: MarketingPublicIdentifierSchema,
183
+ leg: BinaryBranchSchema
184
+ });
185
+ var InvitationMarketingPlacementSchema = z.object({
186
+ invitationToken: MarketingInvitationTokenSchema
187
+ });
188
+ z.object({
189
+ leg: BinaryBranchSchema
190
+ });
191
+ var MarketingPlacementIdentitySchema = z.object({
192
+ uuid: z.string().trim().min(1).max(255),
193
+ login: z.string().trim().min(1).max(255),
194
+ firstName: z.string().trim().max(255),
195
+ lastName: z.string().trim().max(255)
196
+ });
197
+ var MarketingPlacementPreviewSchema = z.object({
198
+ sponsor: MarketingPlacementIdentitySchema,
199
+ leg: BinaryBranchSchema,
200
+ expiresAt: z.iso.datetime().nullable()
201
+ });
202
+ MarketingPlacementPreviewSchema.extend({
203
+ invitationToken: MarketingInvitationTokenSchema
204
+ });
205
+
206
+ // src/auth/sign-up.contract.ts
207
+ var SignUpBaseSchema = z.object({
168
208
  firstName: z.string().trim().max(255),
169
209
  lastName: z.string().trim().max(255),
170
210
  email: z.email().trim(),
@@ -175,6 +215,25 @@ var SignUpRequestSchema = z.object({
175
215
  country: z.string().trim().max(255),
176
216
  city: z.string().trim().max(255)
177
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
+ });
178
237
  var ActionTokenSchema = z.string().trim().min(40).max(500);
179
238
  var RequestEmailVerificationSchema = z.object({
180
239
  email: z.email().trim()
@@ -1 +1 @@
1
- {"version":3,"sources":["../../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/common/pagination.schemas.ts","../../src/common/list-query.schemas.ts","../../src/common/id.schemas.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/auth/sign-up.contract.ts","../../src/auth/account-actions.contract.ts"],"names":["UserRole","z","UserFileType"],"mappings":"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","file":"index.mjs","sourcesContent":["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';\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","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 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","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"]}
1
+ {"version":3,"sources":["../../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/common/pagination.schemas.ts","../../src/common/list-query.schemas.ts","../../src/common/id.schemas.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"],"names":["UserRole","z","UserFileType","BinaryBranch","MarketingMemberStatus"],"mappings":"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","file":"index.mjs","sourcesContent":["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';\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","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"]}
package/dist/index.d.mts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { U as UserRole } from './index-LnrjPFdn.mjs';
3
- export { A as AuthUser, a as AuthUserSchema, C as ConfirmEmail, b as ConfirmEmailSchema, F as ForgotPassword, c as ForgotPasswordSchema, R as RefreshResponse, d as RefreshResponseSchema, e as RequestEmailVerification, f as RequestEmailVerificationSchema, g as ResetPassword, h as ResetPasswordSchema, S as SignInRequest, i as SignInRequestSchema, j as SignInResponse, k as SignInResponseSchema, l as SignUpRequest, m as SignUpRequestSchema } from './index-LnrjPFdn.mjs';
2
+ import { U as UserRole, B as BinaryBranch } from './marketing.enums-qC7eI41b.mjs';
3
+ export { A as AuthUser, a as AuthUserSchema, b as BinaryBranchSchema, C as ConfirmEmail, c as ConfirmEmailSchema, F as ForgotPassword, d as ForgotPasswordSchema, M as MarketingMemberStatus, e as MarketingMemberStatusSchema, R as RefreshResponse, f as RefreshResponseSchema, g as RequestEmailVerification, h as RequestEmailVerificationSchema, i as ResetPassword, j as ResetPasswordSchema, S as SignInRequest, k as SignInRequestSchema, l as SignInResponse, m as SignInResponseSchema, n as SignUpRequest, o as SignUpRequestSchema } from './marketing.enums-qC7eI41b.mjs';
4
4
 
5
5
  declare const PageSchema: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
6
6
  declare const LimitSchema: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
@@ -515,4 +515,50 @@ type ExchangeRateResponse = ExchangeRate;
515
515
  type ExchangeRateListResponse = z.infer<typeof ExchangeRateListResponseSchema>;
516
516
  type UpdateExchangeRateRequest = z.infer<typeof UpdateExchangeRateRequestSchema>;
517
517
 
518
- export { type BaseListQuery, BaseListQuerySchema, type ChangePasswordRequest, ChangePasswordRequestSchema, type CitiesResponse, CitiesResponseSchema, type CityResponse, CityResponseSchema, type CountriesResponse, CountriesResponseSchema, type CountryResponse, CountryResponseSchema, type CreateCurrencyRequest, CreateCurrencyRequestSchema, CreateUserRequestSchema, type CreateWalletTransactionRequest, CreateWalletTransactionRequestSchema, type Currency, CurrencyCodeParamSchema, CurrencyCodeSchema, type CurrencyListResponse, CurrencyListResponseSchema, type CurrencyResponse, CurrencySchema, DateFromSchema, DateToSchema, type DbId, DbIdSchema, type ExchangeRate, type ExchangeRateListResponse, ExchangeRateListResponseSchema, type ExchangeRateResponse, ExchangeRateSchema, ExchangeRateSourceSchema, type FileIdParam, FileIdParamSchema, type GetCitiesQuery, GetCitiesQuerySchema, type GetUserWalletByTypeParams, GetUserWalletByTypeParamsSchema, GetUserWalletTransactionsParamsSchema, type GetUserWalletsParams, GetUserWalletsParamsSchema, INT4_MAX, LimitSchema, MoneyAmountSchema, MoneyAmountStringSchema, type MoneyView, MoneyViewSchema, PageSchema, type PaginatedResponse, type PaginatedResponseMeta, type PaginationQuery, PaginationQuerySchema, RatePerBaseSchema, SearchSchema, type SortOrder, SortOrderSchema, type UpdateCurrencyRequest, UpdateCurrencyRequestSchema, type UpdateExchangeRateRequest, UpdateExchangeRateRequestSchema, UpdateUserRequestSchema, type UserCreateRequest, type UserFile, type UserFileList, UserFileListSchema, UserFileSchema, UserFileType, type UserListResponse, UserListResponseSchema, type UserResponse, UserRole, UserSchema, type UserUpdateRequest, WalletCurrency, WalletCurrencySchema, type WalletListResponse, WalletListResponseSchema, WalletOperationKeySchema, type WalletResponse, WalletSchema, WalletStatus, WalletStatusSchema, WalletTransactionDetailsListResponseSchema, type WalletTransactionDetailsResponse, WalletTransactionDetailsSchema, WalletTransactionDirection, WalletTransactionDirectionSchema, WalletTransactionListResponseSchema, WalletTransactionReason, WalletTransactionReasonSchema, type WalletTransactionResponse, WalletTransactionSchema, WalletTransactionSourceUserSchema, WalletTransactionStatus, WalletTransactionStatusSchema, type WalletTransactionsListQuery, WalletTransactionsListQuerySchema, WalletType, WalletTypeSchema };
518
+ declare const MarketingPublicIdentifierSchema: z.ZodString;
519
+ declare const MarketingInvitationTokenSchema: z.ZodString;
520
+ declare const ManualMarketingPlacementSchema: z.ZodObject<{
521
+ sponsorId: z.ZodString;
522
+ leg: z.ZodEnum<typeof BinaryBranch>;
523
+ }, z.core.$strip>;
524
+ declare const InvitationMarketingPlacementSchema: z.ZodObject<{
525
+ invitationToken: z.ZodString;
526
+ }, z.core.$strip>;
527
+ declare const CreateMarketingInvitationRequestSchema: z.ZodObject<{
528
+ leg: z.ZodEnum<typeof BinaryBranch>;
529
+ }, z.core.$strip>;
530
+ declare const MarketingPlacementIdentitySchema: z.ZodObject<{
531
+ uuid: z.ZodString;
532
+ login: z.ZodString;
533
+ firstName: z.ZodString;
534
+ lastName: z.ZodString;
535
+ }, z.core.$strip>;
536
+ declare const MarketingPlacementPreviewSchema: z.ZodObject<{
537
+ sponsor: z.ZodObject<{
538
+ uuid: z.ZodString;
539
+ login: z.ZodString;
540
+ firstName: z.ZodString;
541
+ lastName: z.ZodString;
542
+ }, z.core.$strip>;
543
+ leg: z.ZodEnum<typeof BinaryBranch>;
544
+ expiresAt: z.ZodNullable<z.ZodISODateTime>;
545
+ }, z.core.$strip>;
546
+ declare const CreateMarketingInvitationResponseSchema: z.ZodObject<{
547
+ sponsor: z.ZodObject<{
548
+ uuid: z.ZodString;
549
+ login: z.ZodString;
550
+ firstName: z.ZodString;
551
+ lastName: z.ZodString;
552
+ }, z.core.$strip>;
553
+ leg: z.ZodEnum<typeof BinaryBranch>;
554
+ expiresAt: z.ZodNullable<z.ZodISODateTime>;
555
+ invitationToken: z.ZodString;
556
+ }, z.core.$strip>;
557
+ type ManualMarketingPlacement = z.infer<typeof ManualMarketingPlacementSchema>;
558
+ type InvitationMarketingPlacement = z.infer<typeof InvitationMarketingPlacementSchema>;
559
+ type CreateMarketingInvitationRequest = z.infer<typeof CreateMarketingInvitationRequestSchema>;
560
+ type MarketingPlacementIdentity = z.infer<typeof MarketingPlacementIdentitySchema>;
561
+ type MarketingPlacementPreview = z.infer<typeof MarketingPlacementPreviewSchema>;
562
+ type CreateMarketingInvitationResponse = z.infer<typeof CreateMarketingInvitationResponseSchema>;
563
+
564
+ export { type BaseListQuery, BaseListQuerySchema, BinaryBranch, type ChangePasswordRequest, ChangePasswordRequestSchema, type CitiesResponse, CitiesResponseSchema, type CityResponse, CityResponseSchema, type CountriesResponse, CountriesResponseSchema, type CountryResponse, CountryResponseSchema, type CreateCurrencyRequest, CreateCurrencyRequestSchema, type CreateMarketingInvitationRequest, CreateMarketingInvitationRequestSchema, type CreateMarketingInvitationResponse, CreateMarketingInvitationResponseSchema, CreateUserRequestSchema, type CreateWalletTransactionRequest, CreateWalletTransactionRequestSchema, type Currency, CurrencyCodeParamSchema, CurrencyCodeSchema, type CurrencyListResponse, CurrencyListResponseSchema, type CurrencyResponse, CurrencySchema, DateFromSchema, DateToSchema, type DbId, DbIdSchema, type ExchangeRate, type ExchangeRateListResponse, ExchangeRateListResponseSchema, type ExchangeRateResponse, ExchangeRateSchema, ExchangeRateSourceSchema, type FileIdParam, FileIdParamSchema, type GetCitiesQuery, GetCitiesQuerySchema, type GetUserWalletByTypeParams, GetUserWalletByTypeParamsSchema, GetUserWalletTransactionsParamsSchema, type GetUserWalletsParams, GetUserWalletsParamsSchema, INT4_MAX, type InvitationMarketingPlacement, InvitationMarketingPlacementSchema, LimitSchema, type ManualMarketingPlacement, ManualMarketingPlacementSchema, MarketingInvitationTokenSchema, type MarketingPlacementIdentity, MarketingPlacementIdentitySchema, type MarketingPlacementPreview, MarketingPlacementPreviewSchema, MarketingPublicIdentifierSchema, MoneyAmountSchema, MoneyAmountStringSchema, type MoneyView, MoneyViewSchema, PageSchema, type PaginatedResponse, type PaginatedResponseMeta, type PaginationQuery, PaginationQuerySchema, RatePerBaseSchema, SearchSchema, type SortOrder, SortOrderSchema, type UpdateCurrencyRequest, UpdateCurrencyRequestSchema, type UpdateExchangeRateRequest, UpdateExchangeRateRequestSchema, UpdateUserRequestSchema, type UserCreateRequest, type UserFile, type UserFileList, UserFileListSchema, UserFileSchema, UserFileType, type UserListResponse, UserListResponseSchema, type UserResponse, UserRole, UserSchema, type UserUpdateRequest, WalletCurrency, WalletCurrencySchema, type WalletListResponse, WalletListResponseSchema, WalletOperationKeySchema, type WalletResponse, WalletSchema, WalletStatus, WalletStatusSchema, WalletTransactionDetailsListResponseSchema, type WalletTransactionDetailsResponse, WalletTransactionDetailsSchema, WalletTransactionDirection, WalletTransactionDirectionSchema, WalletTransactionListResponseSchema, WalletTransactionReason, WalletTransactionReasonSchema, type WalletTransactionResponse, WalletTransactionSchema, WalletTransactionSourceUserSchema, WalletTransactionStatus, WalletTransactionStatusSchema, type WalletTransactionsListQuery, WalletTransactionsListQuerySchema, WalletType, WalletTypeSchema };
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { U as UserRole } from './index-LnrjPFdn.js';
3
- export { A as AuthUser, a as AuthUserSchema, C as ConfirmEmail, b as ConfirmEmailSchema, F as ForgotPassword, c as ForgotPasswordSchema, R as RefreshResponse, d as RefreshResponseSchema, e as RequestEmailVerification, f as RequestEmailVerificationSchema, g as ResetPassword, h as ResetPasswordSchema, S as SignInRequest, i as SignInRequestSchema, j as SignInResponse, k as SignInResponseSchema, l as SignUpRequest, m as SignUpRequestSchema } from './index-LnrjPFdn.js';
2
+ import { U as UserRole, B as BinaryBranch } from './marketing.enums-qC7eI41b.js';
3
+ export { A as AuthUser, a as AuthUserSchema, b as BinaryBranchSchema, C as ConfirmEmail, c as ConfirmEmailSchema, F as ForgotPassword, d as ForgotPasswordSchema, M as MarketingMemberStatus, e as MarketingMemberStatusSchema, R as RefreshResponse, f as RefreshResponseSchema, g as RequestEmailVerification, h as RequestEmailVerificationSchema, i as ResetPassword, j as ResetPasswordSchema, S as SignInRequest, k as SignInRequestSchema, l as SignInResponse, m as SignInResponseSchema, n as SignUpRequest, o as SignUpRequestSchema } from './marketing.enums-qC7eI41b.js';
4
4
 
5
5
  declare const PageSchema: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
6
6
  declare const LimitSchema: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
@@ -515,4 +515,50 @@ type ExchangeRateResponse = ExchangeRate;
515
515
  type ExchangeRateListResponse = z.infer<typeof ExchangeRateListResponseSchema>;
516
516
  type UpdateExchangeRateRequest = z.infer<typeof UpdateExchangeRateRequestSchema>;
517
517
 
518
- export { type BaseListQuery, BaseListQuerySchema, type ChangePasswordRequest, ChangePasswordRequestSchema, type CitiesResponse, CitiesResponseSchema, type CityResponse, CityResponseSchema, type CountriesResponse, CountriesResponseSchema, type CountryResponse, CountryResponseSchema, type CreateCurrencyRequest, CreateCurrencyRequestSchema, CreateUserRequestSchema, type CreateWalletTransactionRequest, CreateWalletTransactionRequestSchema, type Currency, CurrencyCodeParamSchema, CurrencyCodeSchema, type CurrencyListResponse, CurrencyListResponseSchema, type CurrencyResponse, CurrencySchema, DateFromSchema, DateToSchema, type DbId, DbIdSchema, type ExchangeRate, type ExchangeRateListResponse, ExchangeRateListResponseSchema, type ExchangeRateResponse, ExchangeRateSchema, ExchangeRateSourceSchema, type FileIdParam, FileIdParamSchema, type GetCitiesQuery, GetCitiesQuerySchema, type GetUserWalletByTypeParams, GetUserWalletByTypeParamsSchema, GetUserWalletTransactionsParamsSchema, type GetUserWalletsParams, GetUserWalletsParamsSchema, INT4_MAX, LimitSchema, MoneyAmountSchema, MoneyAmountStringSchema, type MoneyView, MoneyViewSchema, PageSchema, type PaginatedResponse, type PaginatedResponseMeta, type PaginationQuery, PaginationQuerySchema, RatePerBaseSchema, SearchSchema, type SortOrder, SortOrderSchema, type UpdateCurrencyRequest, UpdateCurrencyRequestSchema, type UpdateExchangeRateRequest, UpdateExchangeRateRequestSchema, UpdateUserRequestSchema, type UserCreateRequest, type UserFile, type UserFileList, UserFileListSchema, UserFileSchema, UserFileType, type UserListResponse, UserListResponseSchema, type UserResponse, UserRole, UserSchema, type UserUpdateRequest, WalletCurrency, WalletCurrencySchema, type WalletListResponse, WalletListResponseSchema, WalletOperationKeySchema, type WalletResponse, WalletSchema, WalletStatus, WalletStatusSchema, WalletTransactionDetailsListResponseSchema, type WalletTransactionDetailsResponse, WalletTransactionDetailsSchema, WalletTransactionDirection, WalletTransactionDirectionSchema, WalletTransactionListResponseSchema, WalletTransactionReason, WalletTransactionReasonSchema, type WalletTransactionResponse, WalletTransactionSchema, WalletTransactionSourceUserSchema, WalletTransactionStatus, WalletTransactionStatusSchema, type WalletTransactionsListQuery, WalletTransactionsListQuerySchema, WalletType, WalletTypeSchema };
518
+ declare const MarketingPublicIdentifierSchema: z.ZodString;
519
+ declare const MarketingInvitationTokenSchema: z.ZodString;
520
+ declare const ManualMarketingPlacementSchema: z.ZodObject<{
521
+ sponsorId: z.ZodString;
522
+ leg: z.ZodEnum<typeof BinaryBranch>;
523
+ }, z.core.$strip>;
524
+ declare const InvitationMarketingPlacementSchema: z.ZodObject<{
525
+ invitationToken: z.ZodString;
526
+ }, z.core.$strip>;
527
+ declare const CreateMarketingInvitationRequestSchema: z.ZodObject<{
528
+ leg: z.ZodEnum<typeof BinaryBranch>;
529
+ }, z.core.$strip>;
530
+ declare const MarketingPlacementIdentitySchema: z.ZodObject<{
531
+ uuid: z.ZodString;
532
+ login: z.ZodString;
533
+ firstName: z.ZodString;
534
+ lastName: z.ZodString;
535
+ }, z.core.$strip>;
536
+ declare const MarketingPlacementPreviewSchema: z.ZodObject<{
537
+ sponsor: z.ZodObject<{
538
+ uuid: z.ZodString;
539
+ login: z.ZodString;
540
+ firstName: z.ZodString;
541
+ lastName: z.ZodString;
542
+ }, z.core.$strip>;
543
+ leg: z.ZodEnum<typeof BinaryBranch>;
544
+ expiresAt: z.ZodNullable<z.ZodISODateTime>;
545
+ }, z.core.$strip>;
546
+ declare const CreateMarketingInvitationResponseSchema: z.ZodObject<{
547
+ sponsor: z.ZodObject<{
548
+ uuid: z.ZodString;
549
+ login: z.ZodString;
550
+ firstName: z.ZodString;
551
+ lastName: z.ZodString;
552
+ }, z.core.$strip>;
553
+ leg: z.ZodEnum<typeof BinaryBranch>;
554
+ expiresAt: z.ZodNullable<z.ZodISODateTime>;
555
+ invitationToken: z.ZodString;
556
+ }, z.core.$strip>;
557
+ type ManualMarketingPlacement = z.infer<typeof ManualMarketingPlacementSchema>;
558
+ type InvitationMarketingPlacement = z.infer<typeof InvitationMarketingPlacementSchema>;
559
+ type CreateMarketingInvitationRequest = z.infer<typeof CreateMarketingInvitationRequestSchema>;
560
+ type MarketingPlacementIdentity = z.infer<typeof MarketingPlacementIdentitySchema>;
561
+ type MarketingPlacementPreview = z.infer<typeof MarketingPlacementPreviewSchema>;
562
+ type CreateMarketingInvitationResponse = z.infer<typeof CreateMarketingInvitationResponseSchema>;
563
+
564
+ export { type BaseListQuery, BaseListQuerySchema, BinaryBranch, type ChangePasswordRequest, ChangePasswordRequestSchema, type CitiesResponse, CitiesResponseSchema, type CityResponse, CityResponseSchema, type CountriesResponse, CountriesResponseSchema, type CountryResponse, CountryResponseSchema, type CreateCurrencyRequest, CreateCurrencyRequestSchema, type CreateMarketingInvitationRequest, CreateMarketingInvitationRequestSchema, type CreateMarketingInvitationResponse, CreateMarketingInvitationResponseSchema, CreateUserRequestSchema, type CreateWalletTransactionRequest, CreateWalletTransactionRequestSchema, type Currency, CurrencyCodeParamSchema, CurrencyCodeSchema, type CurrencyListResponse, CurrencyListResponseSchema, type CurrencyResponse, CurrencySchema, DateFromSchema, DateToSchema, type DbId, DbIdSchema, type ExchangeRate, type ExchangeRateListResponse, ExchangeRateListResponseSchema, type ExchangeRateResponse, ExchangeRateSchema, ExchangeRateSourceSchema, type FileIdParam, FileIdParamSchema, type GetCitiesQuery, GetCitiesQuerySchema, type GetUserWalletByTypeParams, GetUserWalletByTypeParamsSchema, GetUserWalletTransactionsParamsSchema, type GetUserWalletsParams, GetUserWalletsParamsSchema, INT4_MAX, type InvitationMarketingPlacement, InvitationMarketingPlacementSchema, LimitSchema, type ManualMarketingPlacement, ManualMarketingPlacementSchema, MarketingInvitationTokenSchema, type MarketingPlacementIdentity, MarketingPlacementIdentitySchema, type MarketingPlacementPreview, MarketingPlacementPreviewSchema, MarketingPublicIdentifierSchema, MoneyAmountSchema, MoneyAmountStringSchema, type MoneyView, MoneyViewSchema, PageSchema, type PaginatedResponse, type PaginatedResponseMeta, type PaginationQuery, PaginationQuerySchema, RatePerBaseSchema, SearchSchema, type SortOrder, SortOrderSchema, type UpdateCurrencyRequest, UpdateCurrencyRequestSchema, type UpdateExchangeRateRequest, UpdateExchangeRateRequestSchema, UpdateUserRequestSchema, type UserCreateRequest, type UserFile, type UserFileList, UserFileListSchema, UserFileSchema, UserFileType, type UserListResponse, UserListResponseSchema, type UserResponse, UserRole, UserSchema, type UserUpdateRequest, WalletCurrency, WalletCurrencySchema, type WalletListResponse, WalletListResponseSchema, WalletOperationKeySchema, type WalletResponse, WalletSchema, WalletStatus, WalletStatusSchema, WalletTransactionDetailsListResponseSchema, type WalletTransactionDetailsResponse, WalletTransactionDetailsSchema, WalletTransactionDirection, WalletTransactionDirectionSchema, WalletTransactionListResponseSchema, WalletTransactionReason, WalletTransactionReasonSchema, type WalletTransactionResponse, WalletTransactionSchema, WalletTransactionSourceUserSchema, WalletTransactionStatus, WalletTransactionStatusSchema, type WalletTransactionsListQuery, WalletTransactionsListQuerySchema, WalletType, WalletTypeSchema };
package/dist/index.js CHANGED
@@ -164,7 +164,47 @@ var SignInResponseSchema = zod.z.object({
164
164
  accessToken: zod.z.string(),
165
165
  user: AuthUserSchema
166
166
  });
167
- 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({
168
208
  firstName: zod.z.string().trim().max(255),
169
209
  lastName: zod.z.string().trim().max(255),
170
210
  email: zod.z.email().trim(),
@@ -175,6 +215,25 @@ var SignUpRequestSchema = zod.z.object({
175
215
  country: zod.z.string().trim().max(255),
176
216
  city: zod.z.string().trim().max(255)
177
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
+ });
178
237
  var ActionTokenSchema = zod.z.string().trim().min(40).max(500);
179
238
  var RequestEmailVerificationSchema = zod.z.object({
180
239
  email: zod.z.email().trim()
@@ -366,6 +425,8 @@ var UpdateExchangeRateRequestSchema = zod.z.object({
366
425
 
367
426
  exports.AuthUserSchema = AuthUserSchema;
368
427
  exports.BaseListQuerySchema = BaseListQuerySchema;
428
+ exports.BinaryBranch = BinaryBranch;
429
+ exports.BinaryBranchSchema = BinaryBranchSchema;
369
430
  exports.ChangePasswordRequestSchema = ChangePasswordRequestSchema;
370
431
  exports.CitiesResponseSchema = CitiesResponseSchema;
371
432
  exports.CityResponseSchema = CityResponseSchema;
@@ -373,6 +434,8 @@ exports.ConfirmEmailSchema = ConfirmEmailSchema;
373
434
  exports.CountriesResponseSchema = CountriesResponseSchema;
374
435
  exports.CountryResponseSchema = CountryResponseSchema;
375
436
  exports.CreateCurrencyRequestSchema = CreateCurrencyRequestSchema;
437
+ exports.CreateMarketingInvitationRequestSchema = CreateMarketingInvitationRequestSchema;
438
+ exports.CreateMarketingInvitationResponseSchema = CreateMarketingInvitationResponseSchema;
376
439
  exports.CreateUserRequestSchema = CreateUserRequestSchema;
377
440
  exports.CreateWalletTransactionRequestSchema = CreateWalletTransactionRequestSchema;
378
441
  exports.CurrencyCodeParamSchema = CurrencyCodeParamSchema;
@@ -392,7 +455,15 @@ exports.GetUserWalletByTypeParamsSchema = GetUserWalletByTypeParamsSchema;
392
455
  exports.GetUserWalletTransactionsParamsSchema = GetUserWalletTransactionsParamsSchema;
393
456
  exports.GetUserWalletsParamsSchema = GetUserWalletsParamsSchema;
394
457
  exports.INT4_MAX = INT4_MAX;
458
+ exports.InvitationMarketingPlacementSchema = InvitationMarketingPlacementSchema;
395
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;
396
467
  exports.MoneyAmountSchema = MoneyAmountSchema;
397
468
  exports.MoneyAmountStringSchema = MoneyAmountStringSchema;
398
469
  exports.MoneyViewSchema = MoneyViewSchema;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
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/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","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 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","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"]}
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"]}
package/dist/index.mjs CHANGED
@@ -162,7 +162,47 @@ var SignInResponseSchema = z.object({
162
162
  accessToken: z.string(),
163
163
  user: AuthUserSchema
164
164
  });
165
- var SignUpRequestSchema = z.object({
165
+ var BinaryBranch = /* @__PURE__ */ ((BinaryBranch2) => {
166
+ BinaryBranch2["LEFT"] = "LEFT";
167
+ BinaryBranch2["RIGHT"] = "RIGHT";
168
+ return BinaryBranch2;
169
+ })(BinaryBranch || {});
170
+ var MarketingMemberStatus = /* @__PURE__ */ ((MarketingMemberStatus2) => {
171
+ MarketingMemberStatus2["ACTIVE"] = "ACTIVE";
172
+ MarketingMemberStatus2["BLOCKED"] = "BLOCKED";
173
+ return MarketingMemberStatus2;
174
+ })(MarketingMemberStatus || {});
175
+ var BinaryBranchSchema = z.enum(BinaryBranch);
176
+ var MarketingMemberStatusSchema = z.enum(MarketingMemberStatus);
177
+ var MarketingPublicIdentifierSchema = z.string().trim().min(3).max(255);
178
+ var MarketingInvitationTokenSchema = z.string().trim().regex(/^[A-Za-z0-9_-]{43}$/);
179
+ var ManualMarketingPlacementSchema = z.object({
180
+ sponsorId: MarketingPublicIdentifierSchema,
181
+ leg: BinaryBranchSchema
182
+ });
183
+ var InvitationMarketingPlacementSchema = z.object({
184
+ invitationToken: MarketingInvitationTokenSchema
185
+ });
186
+ var CreateMarketingInvitationRequestSchema = z.object({
187
+ leg: BinaryBranchSchema
188
+ });
189
+ var MarketingPlacementIdentitySchema = z.object({
190
+ uuid: z.string().trim().min(1).max(255),
191
+ login: z.string().trim().min(1).max(255),
192
+ firstName: z.string().trim().max(255),
193
+ lastName: z.string().trim().max(255)
194
+ });
195
+ var MarketingPlacementPreviewSchema = z.object({
196
+ sponsor: MarketingPlacementIdentitySchema,
197
+ leg: BinaryBranchSchema,
198
+ expiresAt: z.iso.datetime().nullable()
199
+ });
200
+ var CreateMarketingInvitationResponseSchema = MarketingPlacementPreviewSchema.extend({
201
+ invitationToken: MarketingInvitationTokenSchema
202
+ });
203
+
204
+ // src/auth/sign-up.contract.ts
205
+ var SignUpBaseSchema = z.object({
166
206
  firstName: z.string().trim().max(255),
167
207
  lastName: z.string().trim().max(255),
168
208
  email: z.email().trim(),
@@ -173,6 +213,25 @@ var SignUpRequestSchema = z.object({
173
213
  country: z.string().trim().max(255),
174
214
  city: z.string().trim().max(255)
175
215
  });
216
+ var SignUpRequestSchema = SignUpBaseSchema.extend({
217
+ sponsorId: ManualMarketingPlacementSchema.shape.sponsorId.optional(),
218
+ leg: ManualMarketingPlacementSchema.shape.leg.optional(),
219
+ invitationToken: InvitationMarketingPlacementSchema.shape.invitationToken.optional()
220
+ }).superRefine((input, context) => {
221
+ const hasInvitation = input.invitationToken !== void 0;
222
+ const manualFields = [input.sponsorId, input.leg];
223
+ const hasAnyManualField = manualFields.some((value) => value !== void 0);
224
+ const hasEveryManualField = manualFields.every(
225
+ (value) => value !== void 0
226
+ );
227
+ if (hasInvitation === hasAnyManualField || !hasInvitation && !hasEveryManualField) {
228
+ context.addIssue({
229
+ code: "custom",
230
+ 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",
231
+ path: ["invitationToken"]
232
+ });
233
+ }
234
+ });
176
235
  var ActionTokenSchema = z.string().trim().min(40).max(500);
177
236
  var RequestEmailVerificationSchema = z.object({
178
237
  email: z.email().trim()
@@ -362,6 +421,6 @@ var UpdateExchangeRateRequestSchema = z.object({
362
421
  ratePerBase: RatePerBaseSchema
363
422
  });
364
423
 
365
- export { AuthUserSchema, BaseListQuerySchema, ChangePasswordRequestSchema, CitiesResponseSchema, CityResponseSchema, ConfirmEmailSchema, CountriesResponseSchema, CountryResponseSchema, CreateCurrencyRequestSchema, CreateUserRequestSchema, CreateWalletTransactionRequestSchema, CurrencyCodeParamSchema, CurrencyCodeSchema, CurrencyListResponseSchema, CurrencySchema, DateFromSchema, DateToSchema, DbIdSchema, ExchangeRateListResponseSchema, ExchangeRateSchema, ExchangeRateSourceSchema, FileIdParamSchema, ForgotPasswordSchema, GetCitiesQuerySchema, GetUserWalletByTypeParamsSchema, GetUserWalletTransactionsParamsSchema, GetUserWalletsParamsSchema, INT4_MAX, LimitSchema, MoneyAmountSchema, MoneyAmountStringSchema, MoneyViewSchema, PageSchema, PaginationQuerySchema, RatePerBaseSchema, RefreshResponseSchema, RequestEmailVerificationSchema, ResetPasswordSchema, SearchSchema, SignInRequestSchema, SignInResponseSchema, SignUpRequestSchema, SortOrderSchema, UpdateCurrencyRequestSchema, UpdateExchangeRateRequestSchema, UpdateUserRequestSchema, UserFileListSchema, UserFileSchema, UserFileType, UserListResponseSchema, UserRole, UserSchema, WalletCurrency, WalletCurrencySchema, WalletListResponseSchema, WalletOperationKeySchema, WalletSchema, WalletStatus, WalletStatusSchema, WalletTransactionDetailsListResponseSchema, WalletTransactionDetailsSchema, WalletTransactionDirection, WalletTransactionDirectionSchema, WalletTransactionListResponseSchema, WalletTransactionReason, WalletTransactionReasonSchema, WalletTransactionSchema, WalletTransactionSourceUserSchema, WalletTransactionStatus, WalletTransactionStatusSchema, WalletTransactionsListQuerySchema, WalletType, WalletTypeSchema };
424
+ export { AuthUserSchema, BaseListQuerySchema, BinaryBranch, BinaryBranchSchema, ChangePasswordRequestSchema, CitiesResponseSchema, CityResponseSchema, ConfirmEmailSchema, CountriesResponseSchema, CountryResponseSchema, CreateCurrencyRequestSchema, CreateMarketingInvitationRequestSchema, CreateMarketingInvitationResponseSchema, CreateUserRequestSchema, CreateWalletTransactionRequestSchema, CurrencyCodeParamSchema, CurrencyCodeSchema, CurrencyListResponseSchema, CurrencySchema, DateFromSchema, DateToSchema, DbIdSchema, ExchangeRateListResponseSchema, ExchangeRateSchema, ExchangeRateSourceSchema, FileIdParamSchema, ForgotPasswordSchema, GetCitiesQuerySchema, GetUserWalletByTypeParamsSchema, GetUserWalletTransactionsParamsSchema, GetUserWalletsParamsSchema, INT4_MAX, InvitationMarketingPlacementSchema, LimitSchema, ManualMarketingPlacementSchema, MarketingInvitationTokenSchema, MarketingMemberStatus, MarketingMemberStatusSchema, MarketingPlacementIdentitySchema, MarketingPlacementPreviewSchema, MarketingPublicIdentifierSchema, MoneyAmountSchema, MoneyAmountStringSchema, MoneyViewSchema, PageSchema, PaginationQuerySchema, RatePerBaseSchema, RefreshResponseSchema, RequestEmailVerificationSchema, ResetPasswordSchema, SearchSchema, SignInRequestSchema, SignInResponseSchema, SignUpRequestSchema, SortOrderSchema, UpdateCurrencyRequestSchema, UpdateExchangeRateRequestSchema, UpdateUserRequestSchema, UserFileListSchema, UserFileSchema, UserFileType, UserListResponseSchema, UserRole, UserSchema, WalletCurrency, WalletCurrencySchema, WalletListResponseSchema, WalletOperationKeySchema, WalletSchema, WalletStatus, WalletStatusSchema, WalletTransactionDetailsListResponseSchema, WalletTransactionDetailsSchema, WalletTransactionDirection, WalletTransactionDirectionSchema, WalletTransactionListResponseSchema, WalletTransactionReason, WalletTransactionReasonSchema, WalletTransactionSchema, WalletTransactionSourceUserSchema, WalletTransactionStatus, WalletTransactionStatusSchema, WalletTransactionsListQuerySchema, WalletType, WalletTypeSchema };
366
425
  //# sourceMappingURL=index.mjs.map
367
426
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
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/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","WalletCurrency","WalletStatus","WalletType","WalletTransactionDirection","WalletTransactionStatus","WalletTransactionReason"],"mappings":"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","file":"index.mjs","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 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","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"]}
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.mjs","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"]}
@@ -52,6 +52,9 @@ declare const SignUpRequestSchema: z.ZodObject<{
52
52
  countryCode: z.ZodString;
53
53
  country: z.ZodString;
54
54
  city: z.ZodString;
55
+ sponsorId: z.ZodOptional<z.ZodString>;
56
+ leg: z.ZodOptional<z.ZodEnum<typeof BinaryBranch>>;
57
+ invitationToken: z.ZodOptional<z.ZodString>;
55
58
  }, z.core.$strip>;
56
59
  type SignUpRequest = z.infer<typeof SignUpRequestSchema>;
57
60
 
@@ -73,4 +76,15 @@ type ConfirmEmail = z.infer<typeof ConfirmEmailSchema>;
73
76
  type ForgotPassword = z.infer<typeof ForgotPasswordSchema>;
74
77
  type ResetPassword = z.infer<typeof ResetPasswordSchema>;
75
78
 
76
- export { type AuthUser as A, type ConfirmEmail as C, type ForgotPassword as F, type RefreshResponse as R, type SignInRequest as S, UserRole as U, AuthUserSchema as a, ConfirmEmailSchema as b, ForgotPasswordSchema as c, RefreshResponseSchema as d, type RequestEmailVerification as e, RequestEmailVerificationSchema as f, type ResetPassword as g, ResetPasswordSchema as h, SignInRequestSchema as i, type SignInResponse as j, SignInResponseSchema as k, type SignUpRequest as l, SignUpRequestSchema as m };
79
+ declare enum BinaryBranch {
80
+ LEFT = "LEFT",
81
+ RIGHT = "RIGHT"
82
+ }
83
+ declare enum MarketingMemberStatus {
84
+ ACTIVE = "ACTIVE",
85
+ BLOCKED = "BLOCKED"
86
+ }
87
+ declare const BinaryBranchSchema: z.ZodEnum<typeof BinaryBranch>;
88
+ declare const MarketingMemberStatusSchema: z.ZodEnum<typeof MarketingMemberStatus>;
89
+
90
+ export { type AuthUser as A, BinaryBranch as B, type ConfirmEmail as C, type ForgotPassword as F, MarketingMemberStatus as M, type RefreshResponse as R, type SignInRequest as S, UserRole as U, AuthUserSchema as a, BinaryBranchSchema as b, ConfirmEmailSchema as c, ForgotPasswordSchema as d, MarketingMemberStatusSchema as e, RefreshResponseSchema as f, type RequestEmailVerification as g, RequestEmailVerificationSchema as h, type ResetPassword as i, ResetPasswordSchema as j, SignInRequestSchema as k, type SignInResponse as l, SignInResponseSchema as m, type SignUpRequest as n, SignUpRequestSchema as o };
@@ -52,6 +52,9 @@ declare const SignUpRequestSchema: z.ZodObject<{
52
52
  countryCode: z.ZodString;
53
53
  country: z.ZodString;
54
54
  city: z.ZodString;
55
+ sponsorId: z.ZodOptional<z.ZodString>;
56
+ leg: z.ZodOptional<z.ZodEnum<typeof BinaryBranch>>;
57
+ invitationToken: z.ZodOptional<z.ZodString>;
55
58
  }, z.core.$strip>;
56
59
  type SignUpRequest = z.infer<typeof SignUpRequestSchema>;
57
60
 
@@ -73,4 +76,15 @@ type ConfirmEmail = z.infer<typeof ConfirmEmailSchema>;
73
76
  type ForgotPassword = z.infer<typeof ForgotPasswordSchema>;
74
77
  type ResetPassword = z.infer<typeof ResetPasswordSchema>;
75
78
 
76
- export { type AuthUser as A, type ConfirmEmail as C, type ForgotPassword as F, type RefreshResponse as R, type SignInRequest as S, UserRole as U, AuthUserSchema as a, ConfirmEmailSchema as b, ForgotPasswordSchema as c, RefreshResponseSchema as d, type RequestEmailVerification as e, RequestEmailVerificationSchema as f, type ResetPassword as g, ResetPasswordSchema as h, SignInRequestSchema as i, type SignInResponse as j, SignInResponseSchema as k, type SignUpRequest as l, SignUpRequestSchema as m };
79
+ declare enum BinaryBranch {
80
+ LEFT = "LEFT",
81
+ RIGHT = "RIGHT"
82
+ }
83
+ declare enum MarketingMemberStatus {
84
+ ACTIVE = "ACTIVE",
85
+ BLOCKED = "BLOCKED"
86
+ }
87
+ declare const BinaryBranchSchema: z.ZodEnum<typeof BinaryBranch>;
88
+ declare const MarketingMemberStatusSchema: z.ZodEnum<typeof MarketingMemberStatus>;
89
+
90
+ export { type AuthUser as A, BinaryBranch as B, type ConfirmEmail as C, type ForgotPassword as F, MarketingMemberStatus as M, type RefreshResponse as R, type SignInRequest as S, UserRole as U, AuthUserSchema as a, BinaryBranchSchema as b, ConfirmEmailSchema as c, ForgotPasswordSchema as d, MarketingMemberStatusSchema as e, RefreshResponseSchema as f, type RequestEmailVerification as g, RequestEmailVerificationSchema as h, type ResetPassword as i, ResetPasswordSchema as j, SignInRequestSchema as k, type SignInResponse as l, SignInResponseSchema as m, type SignUpRequest as n, SignUpRequestSchema as o };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aivilife-contracts",
3
- "version": "2.0.0",
3
+ "version": "3.0.0",
4
4
  "description": "Aivilife Contracts",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",