@remnawave/backend-contract 0.3.78 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/build/backend/api/controllers/hwid.d.ts +7 -0
  2. package/build/backend/api/controllers/hwid.d.ts.map +1 -0
  3. package/build/backend/api/controllers/hwid.js +9 -0
  4. package/build/backend/api/controllers/index.d.ts +1 -0
  5. package/build/backend/api/controllers/index.d.ts.map +1 -1
  6. package/build/backend/api/controllers/index.js +1 -0
  7. package/build/backend/api/routes.d.ts +5 -0
  8. package/build/backend/api/routes.d.ts.map +1 -1
  9. package/build/backend/api/routes.js +5 -0
  10. package/build/backend/commands/hwid/create-user-hwid-device.command.d.ts +82 -0
  11. package/build/backend/commands/hwid/create-user-hwid-device.command.d.ts.map +1 -0
  12. package/build/backend/commands/hwid/create-user-hwid-device.command.js +22 -0
  13. package/build/backend/commands/hwid/delete-user-hwid-device.command.d.ts +70 -0
  14. package/build/backend/commands/hwid/delete-user-hwid-device.command.d.ts.map +1 -0
  15. package/build/backend/commands/hwid/delete-user-hwid-device.command.js +18 -0
  16. package/build/backend/commands/hwid/get-user-hwid-devices.command.d.ts +67 -0
  17. package/build/backend/commands/hwid/get-user-hwid-devices.command.d.ts.map +1 -0
  18. package/build/backend/commands/hwid/get-user-hwid-devices.command.js +17 -0
  19. package/build/backend/commands/hwid/index.d.ts +4 -0
  20. package/build/backend/commands/hwid/index.d.ts.map +1 -0
  21. package/build/backend/commands/hwid/index.js +19 -0
  22. package/build/backend/commands/index.d.ts +1 -0
  23. package/build/backend/commands/index.d.ts.map +1 -1
  24. package/build/backend/commands/index.js +1 -0
  25. package/build/backend/commands/users/activate-all-inbounds.command.d.ts +5 -0
  26. package/build/backend/commands/users/activate-all-inbounds.command.d.ts.map +1 -1
  27. package/build/backend/commands/users/create-user.command.d.ts +8 -0
  28. package/build/backend/commands/users/create-user.command.d.ts.map +1 -1
  29. package/build/backend/commands/users/create-user.command.js +1 -0
  30. package/build/backend/commands/users/disable-user.command.d.ts +5 -0
  31. package/build/backend/commands/users/disable-user.command.d.ts.map +1 -1
  32. package/build/backend/commands/users/enable-user.command.d.ts +5 -0
  33. package/build/backend/commands/users/enable-user.command.d.ts.map +1 -1
  34. package/build/backend/commands/users/get-all-users-v2.command.d.ts +7 -0
  35. package/build/backend/commands/users/get-all-users-v2.command.d.ts.map +1 -1
  36. package/build/backend/commands/users/get-user-by-email.command.d.ts +5 -0
  37. package/build/backend/commands/users/get-user-by-email.command.d.ts.map +1 -1
  38. package/build/backend/commands/users/get-user-by-short-uuid.command.d.ts +5 -0
  39. package/build/backend/commands/users/get-user-by-short-uuid.command.d.ts.map +1 -1
  40. package/build/backend/commands/users/get-user-by-subscription-uuid.command.d.ts +5 -0
  41. package/build/backend/commands/users/get-user-by-subscription-uuid.command.d.ts.map +1 -1
  42. package/build/backend/commands/users/get-user-by-telegram-id.command.d.ts +5 -0
  43. package/build/backend/commands/users/get-user-by-telegram-id.command.d.ts.map +1 -1
  44. package/build/backend/commands/users/get-user-by-username.command.d.ts +5 -0
  45. package/build/backend/commands/users/get-user-by-username.command.d.ts.map +1 -1
  46. package/build/backend/commands/users/get-user-by-uuid.command.d.ts +5 -0
  47. package/build/backend/commands/users/get-user-by-uuid.command.d.ts.map +1 -1
  48. package/build/backend/commands/users/reset-user-traffic.command.d.ts +5 -0
  49. package/build/backend/commands/users/reset-user-traffic.command.d.ts.map +1 -1
  50. package/build/backend/commands/users/revoke-user-subscription.command.d.ts +5 -0
  51. package/build/backend/commands/users/revoke-user-subscription.command.d.ts.map +1 -1
  52. package/build/backend/commands/users/update-user.command.d.ts +9 -0
  53. package/build/backend/commands/users/update-user.command.d.ts.map +1 -1
  54. package/build/backend/commands/users/update-user.command.js +1 -0
  55. package/build/backend/constants/errors/errors.d.ts +30 -0
  56. package/build/backend/constants/errors/errors.d.ts.map +1 -1
  57. package/build/backend/constants/errors/errors.js +30 -0
  58. package/build/backend/models/extented-users.schema.d.ts +3 -0
  59. package/build/backend/models/extented-users.schema.d.ts.map +1 -1
  60. package/build/backend/models/hwid-user-device.schema.d.ts +30 -0
  61. package/build/backend/models/hwid-user-device.schema.d.ts.map +1 -0
  62. package/build/backend/models/hwid-user-device.schema.js +20 -0
  63. package/build/backend/models/index.d.ts +1 -0
  64. package/build/backend/models/index.d.ts.map +1 -1
  65. package/build/backend/models/index.js +1 -0
  66. package/build/backend/models/users.schema.d.ts +3 -0
  67. package/build/backend/models/users.schema.d.ts.map +1 -1
  68. package/build/backend/models/users.schema.js +1 -0
  69. package/build/frontend/api/controllers/hwid.js +9 -0
  70. package/build/frontend/api/controllers/index.js +1 -0
  71. package/build/frontend/api/routes.js +5 -0
  72. package/build/frontend/commands/hwid/create-user-hwid-device.command.js +22 -0
  73. package/build/frontend/commands/hwid/delete-user-hwid-device.command.js +18 -0
  74. package/build/frontend/commands/hwid/get-user-hwid-devices.command.js +17 -0
  75. package/build/frontend/commands/hwid/index.js +19 -0
  76. package/build/frontend/commands/index.js +1 -0
  77. package/build/frontend/commands/users/create-user.command.js +1 -0
  78. package/build/frontend/commands/users/update-user.command.js +1 -0
  79. package/build/frontend/constants/errors/errors.js +30 -0
  80. package/build/frontend/models/hwid-user-device.schema.js +20 -0
  81. package/build/frontend/models/index.js +1 -0
  82. package/build/frontend/models/users.schema.js +1 -0
  83. package/package.json +1 -1
@@ -0,0 +1,30 @@
1
+ import { z } from 'zod';
2
+ export declare const HwidUserDeviceSchema: z.ZodObject<{
3
+ hwid: z.ZodString;
4
+ userUuid: z.ZodString;
5
+ platform: z.ZodNullable<z.ZodString>;
6
+ osVersion: z.ZodNullable<z.ZodString>;
7
+ deviceModel: z.ZodNullable<z.ZodString>;
8
+ userAgent: z.ZodNullable<z.ZodString>;
9
+ createdAt: z.ZodEffects<z.ZodString, Date, string>;
10
+ updatedAt: z.ZodEffects<z.ZodString, Date, string>;
11
+ }, "strip", z.ZodTypeAny, {
12
+ hwid: string;
13
+ createdAt: Date;
14
+ updatedAt: Date;
15
+ userUuid: string;
16
+ platform: string | null;
17
+ osVersion: string | null;
18
+ deviceModel: string | null;
19
+ userAgent: string | null;
20
+ }, {
21
+ hwid: string;
22
+ createdAt: string;
23
+ updatedAt: string;
24
+ userUuid: string;
25
+ platform: string | null;
26
+ osVersion: string | null;
27
+ deviceModel: string | null;
28
+ userAgent: string | null;
29
+ }>;
30
+ //# sourceMappingURL=hwid-user-device.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hwid-user-device.schema.d.ts","sourceRoot":"","sources":["../../../models/hwid-user-device.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiB/B,CAAC"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HwidUserDeviceSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.HwidUserDeviceSchema = zod_1.z.object({
6
+ hwid: zod_1.z.string(),
7
+ userUuid: zod_1.z.string(),
8
+ platform: zod_1.z.nullable(zod_1.z.string()),
9
+ osVersion: zod_1.z.nullable(zod_1.z.string()),
10
+ deviceModel: zod_1.z.nullable(zod_1.z.string()),
11
+ userAgent: zod_1.z.nullable(zod_1.z.string()),
12
+ createdAt: zod_1.z
13
+ .string()
14
+ .datetime()
15
+ .transform((str) => new Date(str)),
16
+ updatedAt: zod_1.z
17
+ .string()
18
+ .datetime()
19
+ .transform((str) => new Date(str)),
20
+ });
@@ -5,6 +5,7 @@ export * from './extented-users.schema';
5
5
  export * from './full-inbounds.schema';
6
6
  export * from './happ.schema';
7
7
  export * from './hosts.schema';
8
+ export * from './hwid-user-device.schema';
8
9
  export * from './inbounds.schema';
9
10
  export * from './last-connected-node.schema';
10
11
  export * from './nodes.schema';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../models/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../models/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gBAAgB,CAAC"}
@@ -21,6 +21,7 @@ __exportStar(require("./extented-users.schema"), exports);
21
21
  __exportStar(require("./full-inbounds.schema"), exports);
22
22
  __exportStar(require("./happ.schema"), exports);
23
23
  __exportStar(require("./hosts.schema"), exports);
24
+ __exportStar(require("./hwid-user-device.schema"), exports);
24
25
  __exportStar(require("./inbounds.schema"), exports);
25
26
  __exportStar(require("./last-connected-node.schema"), exports);
26
27
  __exportStar(require("./nodes.schema"), exports);
@@ -31,6 +31,7 @@ export declare const UsersSchema: z.ZodObject<{
31
31
  description: z.ZodNullable<z.ZodString>;
32
32
  telegramId: z.ZodNullable<z.ZodNumber>;
33
33
  email: z.ZodNullable<z.ZodString>;
34
+ hwidDeviceLimit: z.ZodNullable<z.ZodNumber>;
34
35
  createdAt: z.ZodEffects<z.ZodString, Date, string>;
35
36
  updatedAt: z.ZodEffects<z.ZodString, Date, string>;
36
37
  activeUserInbounds: z.ZodArray<z.ZodObject<{
@@ -76,6 +77,7 @@ export declare const UsersSchema: z.ZodObject<{
76
77
  vlessUuid: string;
77
78
  ssPassword: string;
78
79
  telegramId: number | null;
80
+ hwidDeviceLimit: number | null;
79
81
  activeUserInbounds: {
80
82
  uuid: string;
81
83
  type: string;
@@ -104,6 +106,7 @@ export declare const UsersSchema: z.ZodObject<{
104
106
  vlessUuid: string;
105
107
  ssPassword: string;
106
108
  telegramId: number | null;
109
+ hwidDeviceLimit: number | null;
107
110
  activeUserInbounds: {
108
111
  uuid: string;
109
112
  type: string;
@@ -1 +1 @@
1
- {"version":3,"file":"users.schema.d.ts","sourceRoot":"","sources":["../../../models/users.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoEtB,CAAC"}
1
+ {"version":3,"file":"users.schema.d.ts","sourceRoot":"","sources":["../../../models/users.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsEtB,CAAC"}
@@ -45,6 +45,7 @@ exports.UsersSchema = zod_1.z.object({
45
45
  description: zod_1.z.nullable(zod_1.z.string()),
46
46
  telegramId: zod_1.z.nullable(zod_1.z.number().int()),
47
47
  email: zod_1.z.nullable(zod_1.z.string().email()),
48
+ hwidDeviceLimit: zod_1.z.nullable(zod_1.z.number().int()),
48
49
  createdAt: zod_1.z
49
50
  .string()
50
51
  .datetime()
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HWID_ROUTES = exports.HWID_CONTROLLER = void 0;
4
+ exports.HWID_CONTROLLER = 'hwid';
5
+ exports.HWID_ROUTES = {
6
+ CREATE_USER_HWID_DEVICE: 'devices/create',
7
+ GET_USER_HWID_DEVICES: 'devices/get',
8
+ DELETE_USER_HWID_DEVICE: 'devices/delete',
9
+ };
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./api-tokens"), exports);
18
18
  __exportStar(require("./auth"), exports);
19
19
  __exportStar(require("./hosts"), exports);
20
+ __exportStar(require("./hwid"), exports);
20
21
  __exportStar(require("./inbounds"), exports);
21
22
  __exportStar(require("./keygen"), exports);
22
23
  __exportStar(require("./nodes"), exports);
@@ -150,4 +150,9 @@ exports.REST_API = {
150
150
  GET_SETTINGS: `${exports.ROOT}/${CONTROLLERS.SUBSCRIPTION_SETTINGS_CONTROLLER}/${CONTROLLERS.SUBSCRIPTION_SETTINGS_ROUTES.GET_SETTINGS}`,
151
151
  UPDATE_SETTINGS: `${exports.ROOT}/${CONTROLLERS.SUBSCRIPTION_SETTINGS_CONTROLLER}/${CONTROLLERS.SUBSCRIPTION_SETTINGS_ROUTES.UPDATE_SETTINGS}`,
152
152
  },
153
+ HWID: {
154
+ CREATE_USER_HWID_DEVICE: `${exports.ROOT}/${CONTROLLERS.HWID_CONTROLLER}/${CONTROLLERS.HWID_ROUTES.CREATE_USER_HWID_DEVICE}`,
155
+ GET_USER_HWID_DEVICES: (userUuid) => `${exports.ROOT}/${CONTROLLERS.HWID_CONTROLLER}/${CONTROLLERS.HWID_ROUTES.GET_USER_HWID_DEVICES}/${userUuid}`,
156
+ DELETE_USER_HWID_DEVICE: `${exports.ROOT}/${CONTROLLERS.HWID_CONTROLLER}/${CONTROLLERS.HWID_ROUTES.DELETE_USER_HWID_DEVICE}`,
157
+ },
153
158
  };
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CreateUserHwidDeviceCommand = void 0;
4
+ const zod_1 = require("zod");
5
+ const models_1 = require("../../models");
6
+ const api_1 = require("../../api");
7
+ var CreateUserHwidDeviceCommand;
8
+ (function (CreateUserHwidDeviceCommand) {
9
+ CreateUserHwidDeviceCommand.url = api_1.REST_API.HWID.CREATE_USER_HWID_DEVICE;
10
+ CreateUserHwidDeviceCommand.TSQ_url = CreateUserHwidDeviceCommand.url;
11
+ CreateUserHwidDeviceCommand.RequestSchema = zod_1.z.object({
12
+ hwid: zod_1.z.string(),
13
+ userUuid: zod_1.z.string().uuid(),
14
+ platform: zod_1.z.optional(zod_1.z.string()),
15
+ osVersion: zod_1.z.optional(zod_1.z.string()),
16
+ deviceModel: zod_1.z.optional(zod_1.z.string()),
17
+ userAgent: zod_1.z.optional(zod_1.z.string()),
18
+ });
19
+ CreateUserHwidDeviceCommand.ResponseSchema = zod_1.z.object({
20
+ response: zod_1.z.array(models_1.HwidUserDeviceSchema),
21
+ });
22
+ })(CreateUserHwidDeviceCommand || (exports.CreateUserHwidDeviceCommand = CreateUserHwidDeviceCommand = {}));
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DeleteUserHwidDeviceCommand = void 0;
4
+ const zod_1 = require("zod");
5
+ const models_1 = require("../../models");
6
+ const api_1 = require("../../api");
7
+ var DeleteUserHwidDeviceCommand;
8
+ (function (DeleteUserHwidDeviceCommand) {
9
+ DeleteUserHwidDeviceCommand.url = api_1.REST_API.HWID.DELETE_USER_HWID_DEVICE;
10
+ DeleteUserHwidDeviceCommand.TSQ_url = DeleteUserHwidDeviceCommand.url;
11
+ DeleteUserHwidDeviceCommand.RequestSchema = zod_1.z.object({
12
+ userUuid: zod_1.z.string().uuid(),
13
+ hwid: zod_1.z.string(),
14
+ });
15
+ DeleteUserHwidDeviceCommand.ResponseSchema = zod_1.z.object({
16
+ response: zod_1.z.array(models_1.HwidUserDeviceSchema),
17
+ });
18
+ })(DeleteUserHwidDeviceCommand || (exports.DeleteUserHwidDeviceCommand = DeleteUserHwidDeviceCommand = {}));
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GetUserHwidDevicesCommand = void 0;
4
+ const zod_1 = require("zod");
5
+ const models_1 = require("../../models");
6
+ const api_1 = require("../../api");
7
+ var GetUserHwidDevicesCommand;
8
+ (function (GetUserHwidDevicesCommand) {
9
+ GetUserHwidDevicesCommand.url = api_1.REST_API.HWID.GET_USER_HWID_DEVICES;
10
+ GetUserHwidDevicesCommand.TSQ_url = GetUserHwidDevicesCommand.url(':userUuid');
11
+ GetUserHwidDevicesCommand.RequestSchema = zod_1.z.object({
12
+ userUuid: zod_1.z.string().uuid(),
13
+ });
14
+ GetUserHwidDevicesCommand.ResponseSchema = zod_1.z.object({
15
+ response: zod_1.z.array(models_1.HwidUserDeviceSchema),
16
+ });
17
+ })(GetUserHwidDevicesCommand || (exports.GetUserHwidDevicesCommand = GetUserHwidDevicesCommand = {}));
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./create-user-hwid-device.command"), exports);
18
+ __exportStar(require("./delete-user-hwid-device.command"), exports);
19
+ __exportStar(require("./get-user-hwid-devices.command"), exports);
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./api-tokens"), exports);
18
18
  __exportStar(require("./auth"), exports);
19
19
  __exportStar(require("./hosts"), exports);
20
+ __exportStar(require("./hwid"), exports);
20
21
  __exportStar(require("./inbounds"), exports);
21
22
  __exportStar(require("./keygen"), exports);
22
23
  __exportStar(require("./nodes"), exports);
@@ -105,6 +105,7 @@ var CreateUserCommand;
105
105
  description: zod_1.z.string().optional(),
106
106
  telegramId: zod_1.z.optional(zod_1.z.number().int()),
107
107
  email: zod_1.z.string().email('Invalid email format').optional(),
108
+ hwidDeviceLimit: zod_1.z.optional(zod_1.z.number().int()),
108
109
  activateAllInbounds: zod_1.z.boolean().optional(),
109
110
  });
110
111
  CreateUserCommand.ResponseSchema = zod_1.z.object({
@@ -52,6 +52,7 @@ var UpdateUserCommand;
52
52
  description: zod_1.z.optional(zod_1.z.string().nullable()),
53
53
  telegramId: zod_1.z.optional(zod_1.z.number().int().nullable()),
54
54
  email: zod_1.z.optional(zod_1.z.string().email('Invalid email format').nullable()),
55
+ hwidDeviceLimit: zod_1.z.optional(zod_1.z.number().int().nullable()),
55
56
  });
56
57
  UpdateUserCommand.ResponseSchema = zod_1.z.object({
57
58
  response: models_1.ExtendedUsersSchema,
@@ -475,4 +475,34 @@ exports.ERRORS = {
475
475
  message: 'Get nodes realtime usage error',
476
476
  httpCode: 500,
477
477
  },
478
+ CREATE_HWID_USER_DEVICE_ERROR: {
479
+ code: 'A096',
480
+ message: 'Create hwid user device error',
481
+ httpCode: 500,
482
+ },
483
+ CHECK_HWID_EXISTS_ERROR: {
484
+ code: 'A097',
485
+ message: 'Check hwid exists error',
486
+ httpCode: 500,
487
+ },
488
+ USER_HWID_DEVICE_ALREADY_EXISTS: {
489
+ code: 'A098',
490
+ message: 'User hwid device already exists',
491
+ httpCode: 400,
492
+ },
493
+ USER_HWID_DEVICE_LIMIT_REACHED: {
494
+ code: 'A099',
495
+ message: 'User hwid device limit reached',
496
+ httpCode: 400,
497
+ },
498
+ GET_USER_HWID_DEVICES_ERROR: {
499
+ code: 'A100',
500
+ message: 'Get user hwid devices error',
501
+ httpCode: 500,
502
+ },
503
+ DELETE_HWID_USER_DEVICE_ERROR: {
504
+ code: 'A101',
505
+ message: 'Delete hwid user device error',
506
+ httpCode: 500,
507
+ },
478
508
  };
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HwidUserDeviceSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.HwidUserDeviceSchema = zod_1.z.object({
6
+ hwid: zod_1.z.string(),
7
+ userUuid: zod_1.z.string(),
8
+ platform: zod_1.z.nullable(zod_1.z.string()),
9
+ osVersion: zod_1.z.nullable(zod_1.z.string()),
10
+ deviceModel: zod_1.z.nullable(zod_1.z.string()),
11
+ userAgent: zod_1.z.nullable(zod_1.z.string()),
12
+ createdAt: zod_1.z
13
+ .string()
14
+ .datetime()
15
+ .transform((str) => new Date(str)),
16
+ updatedAt: zod_1.z
17
+ .string()
18
+ .datetime()
19
+ .transform((str) => new Date(str)),
20
+ });
@@ -21,6 +21,7 @@ __exportStar(require("./extented-users.schema"), exports);
21
21
  __exportStar(require("./full-inbounds.schema"), exports);
22
22
  __exportStar(require("./happ.schema"), exports);
23
23
  __exportStar(require("./hosts.schema"), exports);
24
+ __exportStar(require("./hwid-user-device.schema"), exports);
24
25
  __exportStar(require("./inbounds.schema"), exports);
25
26
  __exportStar(require("./last-connected-node.schema"), exports);
26
27
  __exportStar(require("./nodes.schema"), exports);
@@ -45,6 +45,7 @@ exports.UsersSchema = zod_1.z.object({
45
45
  description: zod_1.z.nullable(zod_1.z.string()),
46
46
  telegramId: zod_1.z.nullable(zod_1.z.number().int()),
47
47
  email: zod_1.z.nullable(zod_1.z.string().email()),
48
+ hwidDeviceLimit: zod_1.z.nullable(zod_1.z.number().int()),
48
49
  createdAt: zod_1.z
49
50
  .string()
50
51
  .datetime()
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remnawave/backend-contract",
3
- "version": "0.3.78",
3
+ "version": "0.4.0",
4
4
  "public": true,
5
5
  "license": "AGPL-3.0-only",
6
6
  "description": "A contract library for Remnawave Backend. It can be used in backend and frontend.",