@purpleschool/gptbot 0.6.3 → 0.6.10

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 (78) hide show
  1. package/api/controllers/http/folder.ts +10 -0
  2. package/api/controllers/http/index.ts +1 -0
  3. package/api/controllers/http/user.ts +6 -0
  4. package/api/routes.ts +23 -0
  5. package/build/api/controllers/http/folder.js +12 -0
  6. package/build/api/controllers/http/index.js +1 -0
  7. package/build/api/controllers/http/user.js +6 -0
  8. package/build/api/routes.js +14 -0
  9. package/build/commands/chat/update-chat.command.js +5 -2
  10. package/build/commands/folder/create-folder.command.js +15 -0
  11. package/build/commands/folder/delete-folder.command.js +19 -0
  12. package/build/commands/folder/find-folder-by-uuid-with-chats.command.js +27 -0
  13. package/build/commands/folder/find-folder-by-uuid.command.js +17 -0
  14. package/build/commands/folder/find-folders-by-user.command.js +20 -0
  15. package/build/commands/folder/index.js +22 -0
  16. package/build/commands/folder/update-folder.command.js +18 -0
  17. package/build/commands/index.js +1 -0
  18. package/build/commands/payment/index.js +1 -0
  19. package/build/commands/payment/recurrent.command.js +47 -0
  20. package/build/commands/subscription/dismiss-subscription-renewal.command.js +12 -0
  21. package/build/commands/subscription/get-subscriptions-summary.command.js +1 -0
  22. package/build/commands/user/find-user-by-uuid.command.js +21 -0
  23. package/build/commands/user/find-users-by-criteria.command.js +32 -0
  24. package/build/commands/user/get-user-balance.command.js +15 -0
  25. package/build/commands/user/get-user-orders.command.js +27 -0
  26. package/build/commands/user/get-user-products.command.js +25 -0
  27. package/build/commands/user/get-user-subscriptions.command.js +25 -0
  28. package/build/commands/user/index.js +6 -1
  29. package/build/constants/errors/errors.js +43 -3
  30. package/build/constants/order/enums/order-sort-by.enum.js +11 -0
  31. package/build/constants/product/enums/index.js +1 -0
  32. package/build/constants/product/enums/product-sort-by.enum.js +9 -0
  33. package/build/constants/subscription/enums/index.js +1 -0
  34. package/build/constants/subscription/enums/subscription-sort-by.enum.js +9 -0
  35. package/build/constants/subscription/enums/subscription-status.enum.js +2 -0
  36. package/build/constants/ui-notification/enums/ui-notification-type.enum.js +1 -0
  37. package/build/constants/user/enums/index.js +2 -0
  38. package/build/constants/user/enums/sort-order.enum.js +8 -0
  39. package/build/constants/user/enums/user-sort-by.enum.js +9 -0
  40. package/build/models/folder.schema.js +12 -0
  41. package/build/models/index.js +1 -0
  42. package/build/models/order.schema.js +3 -1
  43. package/commands/chat/update-chat.command.ts +7 -3
  44. package/commands/folder/create-folder.command.ts +17 -0
  45. package/commands/folder/delete-folder.command.ts +18 -0
  46. package/commands/folder/find-folder-by-uuid-with-chats.command.ts +31 -0
  47. package/commands/folder/find-folder-by-uuid.command.ts +16 -0
  48. package/commands/folder/find-folders-by-user.command.ts +19 -0
  49. package/commands/folder/index.ts +6 -0
  50. package/commands/folder/update-folder.command.ts +23 -0
  51. package/commands/index.ts +1 -0
  52. package/commands/payment/index.ts +1 -0
  53. package/commands/payment/recurrent.command.ts +48 -0
  54. package/commands/subscription/dismiss-subscription-renewal.command.ts +13 -0
  55. package/commands/subscription/get-subscriptions-summary.command.ts +1 -0
  56. package/commands/user/find-user-by-uuid.command.ts +23 -0
  57. package/commands/user/find-users-by-criteria.command.ts +34 -0
  58. package/commands/user/{find-user.command.ts → get-user-balance.command.ts} +4 -3
  59. package/commands/user/get-user-orders.command.ts +28 -0
  60. package/commands/user/get-user-products.command.ts +26 -0
  61. package/commands/user/get-user-subscriptions.command.ts +26 -0
  62. package/commands/user/index.ts +6 -1
  63. package/constants/errors/errors.ts +43 -3
  64. package/constants/order/enums/order-sort-by.enum.ts +7 -0
  65. package/constants/product/enums/index.ts +1 -0
  66. package/constants/product/enums/product-sort-by.enum.ts +5 -0
  67. package/constants/subscription/enums/index.ts +1 -0
  68. package/constants/subscription/enums/subscription-sort-by.enum.ts +5 -0
  69. package/constants/subscription/enums/subscription-status.enum.ts +2 -0
  70. package/constants/ui-notification/enums/ui-notification-type.enum.ts +1 -0
  71. package/constants/user/enums/index.ts +2 -0
  72. package/constants/user/enums/sort-order.enum.ts +4 -0
  73. package/constants/user/enums/user-sort-by.enum.ts +5 -0
  74. package/models/folder.schema.ts +10 -0
  75. package/models/index.ts +1 -0
  76. package/models/order.schema.ts +3 -1
  77. package/package.json +1 -1
  78. package/build/commands/user/find-user.command.js +0 -14
@@ -0,0 +1,10 @@
1
+ export const FOLDER_PRIVATE_CONTROLLER = 'private/folder' as const;
2
+
3
+ export const FOLDER_ROUTES = {
4
+ FIND_MANY_BY_USER: 'user',
5
+ FIND_BY_UUID: (uuid: string) => `${uuid}`,
6
+ FIND_BY_UUID_WITH_CHATS: (uuid: string) => `${uuid}/chats`,
7
+ CREATE: '',
8
+ UPDATE: (uuid: string) => `${uuid}`,
9
+ DELETE: (uuid: string) => `${uuid}`,
10
+ } as const;
@@ -39,3 +39,4 @@ export * from './review';
39
39
  export * from './prompt-category';
40
40
  export * from './prompt-topic';
41
41
  export * from './prompt';
42
+ export * from './folder';
@@ -4,4 +4,10 @@ export const USER_ROUTES = {
4
4
  GET: 'me',
5
5
  POST: 'up-balance',
6
6
  CHECK_EMAIL: 'check-email',
7
+ FIND_BY_CRITERIA: 'criteria',
8
+ FIND_BY_UUID: (uuid: string) => `${uuid}`,
9
+ GET_BALANCE: (uuid: string) => `balance/${uuid}`,
10
+ GET_ORDERS: (uuid: string) => `orders/${uuid}`,
11
+ GET_SUBSCRIPTIONS: (uuid: string) => `subscriptions/${uuid}`,
12
+ GET_PRODUCTS: (uuid: string) => `products/${uuid}`,
7
13
  } as const;
package/api/routes.ts CHANGED
@@ -16,6 +16,17 @@ export const REST_API = {
16
16
  GET: `${ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.GET}`,
17
17
  POST: `${ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.POST}`,
18
18
  CHECK_EMAIL: `${ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.CHECK_EMAIL}`,
19
+ FIND_BY_CRITERIA: `${ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.FIND_BY_CRITERIA}`,
20
+ FIND_BY_UUID: (uuid: string) =>
21
+ `${ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.FIND_BY_UUID(uuid)}`,
22
+ GET_BALANCE: (uuid: string) =>
23
+ `${ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.GET_BALANCE(uuid)}`,
24
+ GET_ORDERS: (uuid: string) =>
25
+ `${ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.GET_ORDERS(uuid)}`,
26
+ GET_SUBSCRIPTIONS: (uuid: string) =>
27
+ `${ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.GET_SUBSCRIPTIONS(uuid)}`,
28
+ GET_PRODUCTS: (uuid: string) =>
29
+ `${ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.GET_PRODUCTS(uuid)}`,
19
30
  },
20
31
  PAGE: {
21
32
  GET: `${ROOT}/${CONTROLLERS.PAGE_CONTROLLER}/${CONTROLLERS.PAGE_ROUTES.GET_ALL}`,
@@ -231,4 +242,16 @@ export const REST_API = {
231
242
  FIND: (topicId: string) =>
232
243
  `${ROOT}/${CONTROLLERS.PROMPT_PUBLIC_CONTROLLER}/${CONTROLLERS.PROMPT_ROUTES.FIND(topicId)}`,
233
244
  },
245
+ FOLDER_PRIVATE: {
246
+ FIND_BY_UUID: (uuid: string) =>
247
+ `${ROOT}/${CONTROLLERS.FOLDER_PRIVATE_CONTROLLER}/${CONTROLLERS.FOLDER_ROUTES.FIND_BY_UUID(uuid)}`,
248
+ FIND_BY_UUID_WITH_CHATS: (uuid: string) =>
249
+ `${ROOT}/${CONTROLLERS.FOLDER_PRIVATE_CONTROLLER}/${CONTROLLERS.FOLDER_ROUTES.FIND_BY_UUID_WITH_CHATS(uuid)}`,
250
+ FIND_MANY_BY_USER: `${ROOT}/${CONTROLLERS.FOLDER_PRIVATE_CONTROLLER}/${CONTROLLERS.FOLDER_ROUTES.FIND_MANY_BY_USER}`,
251
+ CREATE: `${ROOT}/${CONTROLLERS.FOLDER_PRIVATE_CONTROLLER}/${CONTROLLERS.FOLDER_ROUTES.CREATE}`,
252
+ UPDATE: (uuid: string) =>
253
+ `${ROOT}/${CONTROLLERS.FOLDER_PRIVATE_CONTROLLER}/${CONTROLLERS.FOLDER_ROUTES.UPDATE(uuid)}`,
254
+ DELETE: (uuid: string) =>
255
+ `${ROOT}/${CONTROLLERS.FOLDER_PRIVATE_CONTROLLER}/${CONTROLLERS.FOLDER_ROUTES.DELETE(uuid)}`,
256
+ },
234
257
  } as const;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FOLDER_ROUTES = exports.FOLDER_PRIVATE_CONTROLLER = void 0;
4
+ exports.FOLDER_PRIVATE_CONTROLLER = 'private/folder';
5
+ exports.FOLDER_ROUTES = {
6
+ FIND_MANY_BY_USER: 'user',
7
+ FIND_BY_UUID: (uuid) => `${uuid}`,
8
+ FIND_BY_UUID_WITH_CHATS: (uuid) => `${uuid}/chats`,
9
+ CREATE: '',
10
+ UPDATE: (uuid) => `${uuid}`,
11
+ DELETE: (uuid) => `${uuid}`,
12
+ };
@@ -55,3 +55,4 @@ __exportStar(require("./review"), exports);
55
55
  __exportStar(require("./prompt-category"), exports);
56
56
  __exportStar(require("./prompt-topic"), exports);
57
57
  __exportStar(require("./prompt"), exports);
58
+ __exportStar(require("./folder"), exports);
@@ -6,4 +6,10 @@ exports.USER_ROUTES = {
6
6
  GET: 'me',
7
7
  POST: 'up-balance',
8
8
  CHECK_EMAIL: 'check-email',
9
+ FIND_BY_CRITERIA: 'criteria',
10
+ FIND_BY_UUID: (uuid) => `${uuid}`,
11
+ GET_BALANCE: (uuid) => `balance/${uuid}`,
12
+ GET_ORDERS: (uuid) => `orders/${uuid}`,
13
+ GET_SUBSCRIPTIONS: (uuid) => `subscriptions/${uuid}`,
14
+ GET_PRODUCTS: (uuid) => `products/${uuid}`,
9
15
  };
@@ -50,6 +50,12 @@ exports.REST_API = {
50
50
  GET: `${exports.ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.GET}`,
51
51
  POST: `${exports.ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.POST}`,
52
52
  CHECK_EMAIL: `${exports.ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.CHECK_EMAIL}`,
53
+ FIND_BY_CRITERIA: `${exports.ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.FIND_BY_CRITERIA}`,
54
+ FIND_BY_UUID: (uuid) => `${exports.ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.FIND_BY_UUID(uuid)}`,
55
+ GET_BALANCE: (uuid) => `${exports.ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.GET_BALANCE(uuid)}`,
56
+ GET_ORDERS: (uuid) => `${exports.ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.GET_ORDERS(uuid)}`,
57
+ GET_SUBSCRIPTIONS: (uuid) => `${exports.ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.GET_SUBSCRIPTIONS(uuid)}`,
58
+ GET_PRODUCTS: (uuid) => `${exports.ROOT}/${CONTROLLERS.USER_CONTROLLER}/${CONTROLLERS.USER_ROUTES.GET_PRODUCTS(uuid)}`,
53
59
  },
54
60
  PAGE: {
55
61
  GET: `${exports.ROOT}/${CONTROLLERS.PAGE_CONTROLLER}/${CONTROLLERS.PAGE_ROUTES.GET_ALL}`,
@@ -221,4 +227,12 @@ exports.REST_API = {
221
227
  FIND_ALL: `${exports.ROOT}/${CONTROLLERS.PROMPT_PUBLIC_CONTROLLER}/${CONTROLLERS.PROMPT_ROUTES.FIND_ALL}`,
222
228
  FIND: (topicId) => `${exports.ROOT}/${CONTROLLERS.PROMPT_PUBLIC_CONTROLLER}/${CONTROLLERS.PROMPT_ROUTES.FIND(topicId)}`,
223
229
  },
230
+ FOLDER_PRIVATE: {
231
+ FIND_BY_UUID: (uuid) => `${exports.ROOT}/${CONTROLLERS.FOLDER_PRIVATE_CONTROLLER}/${CONTROLLERS.FOLDER_ROUTES.FIND_BY_UUID(uuid)}`,
232
+ FIND_BY_UUID_WITH_CHATS: (uuid) => `${exports.ROOT}/${CONTROLLERS.FOLDER_PRIVATE_CONTROLLER}/${CONTROLLERS.FOLDER_ROUTES.FIND_BY_UUID_WITH_CHATS(uuid)}`,
233
+ FIND_MANY_BY_USER: `${exports.ROOT}/${CONTROLLERS.FOLDER_PRIVATE_CONTROLLER}/${CONTROLLERS.FOLDER_ROUTES.FIND_MANY_BY_USER}`,
234
+ CREATE: `${exports.ROOT}/${CONTROLLERS.FOLDER_PRIVATE_CONTROLLER}/${CONTROLLERS.FOLDER_ROUTES.CREATE}`,
235
+ UPDATE: (uuid) => `${exports.ROOT}/${CONTROLLERS.FOLDER_PRIVATE_CONTROLLER}/${CONTROLLERS.FOLDER_ROUTES.UPDATE(uuid)}`,
236
+ DELETE: (uuid) => `${exports.ROOT}/${CONTROLLERS.FOLDER_PRIVATE_CONTROLLER}/${CONTROLLERS.FOLDER_ROUTES.DELETE(uuid)}`,
237
+ },
224
238
  };
@@ -8,9 +8,12 @@ var UpdateChatCommand;
8
8
  UpdateChatCommand.RequestParamsSchema = models_1.ChatSchema.pick({
9
9
  uuid: true,
10
10
  });
11
- UpdateChatCommand.RequestSchema = zod_1.z.object({
11
+ UpdateChatCommand.RequestSchema = zod_1.z
12
+ .object({
12
13
  title: zod_1.z.string().max(65),
13
- });
14
+ folderId: zod_1.z.string().uuid(),
15
+ })
16
+ .partial();
14
17
  UpdateChatCommand.ResponseSchema = zod_1.z.object({
15
18
  data: models_1.ChatSchema,
16
19
  });
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CreateFolderCommand = void 0;
4
+ const zod_1 = require("zod");
5
+ const models_1 = require("../../models");
6
+ var CreateFolderCommand;
7
+ (function (CreateFolderCommand) {
8
+ CreateFolderCommand.RequestSchema = models_1.FolderSchema.pick({
9
+ title: true,
10
+ prompt: true,
11
+ });
12
+ CreateFolderCommand.ResponseSchema = zod_1.z.object({
13
+ data: models_1.FolderSchema,
14
+ });
15
+ })(CreateFolderCommand || (exports.CreateFolderCommand = CreateFolderCommand = {}));
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.DeleteFolderCommand = void 0;
7
+ const zod_1 = __importDefault(require("zod"));
8
+ const __1 = require("../..");
9
+ var DeleteFolderCommand;
10
+ (function (DeleteFolderCommand) {
11
+ DeleteFolderCommand.RequestSchema = __1.FolderSchema.pick({
12
+ uuid: true,
13
+ });
14
+ DeleteFolderCommand.ResponseSchema = zod_1.default.object({
15
+ data: zod_1.default.object({
16
+ isDeleted: zod_1.default.boolean(),
17
+ }),
18
+ });
19
+ })(DeleteFolderCommand || (exports.DeleteFolderCommand = DeleteFolderCommand = {}));
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.FindFolderByUuidWithChatsCommand = void 0;
7
+ const zod_1 = __importDefault(require("zod"));
8
+ const models_1 = require("../../models");
9
+ var FindFolderByUuidWithChatsCommand;
10
+ (function (FindFolderByUuidWithChatsCommand) {
11
+ FindFolderByUuidWithChatsCommand.RequestParamSchema = models_1.FolderSchema.pick({
12
+ uuid: true,
13
+ });
14
+ FindFolderByUuidWithChatsCommand.RequestSchema = zod_1.default.object({
15
+ limit: zod_1.default.coerce.number().min(1),
16
+ offset: zod_1.default.coerce.number().min(0).default(0),
17
+ });
18
+ FindFolderByUuidWithChatsCommand.ResponseSchema = zod_1.default.object({
19
+ data: models_1.FolderSchema.extend({
20
+ chats: zod_1.default.array(models_1.ChatSchema.extend({
21
+ messages: zod_1.default.array(models_1.MessageSchema),
22
+ })),
23
+ }),
24
+ page: zod_1.default.number(),
25
+ totalPages: zod_1.default.number(),
26
+ });
27
+ })(FindFolderByUuidWithChatsCommand || (exports.FindFolderByUuidWithChatsCommand = FindFolderByUuidWithChatsCommand = {}));
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.FindFolderByUuidCommand = void 0;
7
+ const zod_1 = __importDefault(require("zod"));
8
+ const models_1 = require("../../models");
9
+ var FindFolderByUuidCommand;
10
+ (function (FindFolderByUuidCommand) {
11
+ FindFolderByUuidCommand.RequestSchema = models_1.FolderSchema.pick({
12
+ uuid: true,
13
+ });
14
+ FindFolderByUuidCommand.ResponseSchema = zod_1.default.object({
15
+ data: models_1.FolderSchema,
16
+ });
17
+ })(FindFolderByUuidCommand || (exports.FindFolderByUuidCommand = FindFolderByUuidCommand = {}));
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.FindFoldersByUserCommand = void 0;
7
+ const zod_1 = __importDefault(require("zod"));
8
+ const models_1 = require("../../models");
9
+ var FindFoldersByUserCommand;
10
+ (function (FindFoldersByUserCommand) {
11
+ FindFoldersByUserCommand.RequestSchema = zod_1.default.object({
12
+ limit: zod_1.default.coerce.number().min(1),
13
+ offset: zod_1.default.coerce.number().min(0).default(0),
14
+ });
15
+ FindFoldersByUserCommand.ResponseSchema = zod_1.default.object({
16
+ data: zod_1.default.array(models_1.FolderSchema),
17
+ page: zod_1.default.number(),
18
+ totalPages: zod_1.default.number(),
19
+ });
20
+ })(FindFoldersByUserCommand || (exports.FindFoldersByUserCommand = FindFoldersByUserCommand = {}));
@@ -0,0 +1,22 @@
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-folder.command"), exports);
18
+ __exportStar(require("./delete-folder.command"), exports);
19
+ __exportStar(require("./find-folders-by-user.command"), exports);
20
+ __exportStar(require("./find-folder-by-uuid.command"), exports);
21
+ __exportStar(require("./update-folder.command"), exports);
22
+ __exportStar(require("./find-folder-by-uuid-with-chats.command"), exports);
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UpdateFolderCommand = void 0;
4
+ const zod_1 = require("zod");
5
+ const models_1 = require("../../models");
6
+ var UpdateFolderCommand;
7
+ (function (UpdateFolderCommand) {
8
+ UpdateFolderCommand.RequestParamSchema = models_1.FolderSchema.pick({
9
+ uuid: true,
10
+ });
11
+ UpdateFolderCommand.RequestSchema = models_1.FolderSchema.pick({
12
+ title: true,
13
+ prompt: true,
14
+ }).partial();
15
+ UpdateFolderCommand.ResponseSchema = zod_1.z.object({
16
+ data: models_1.FolderSchema,
17
+ });
18
+ })(UpdateFolderCommand || (exports.UpdateFolderCommand = UpdateFolderCommand = {}));
@@ -49,3 +49,4 @@ __exportStar(require("./review"), exports);
49
49
  __exportStar(require("./prompt-category"), exports);
50
50
  __exportStar(require("./prompt-topic"), exports);
51
51
  __exportStar(require("./prompt"), exports);
52
+ __exportStar(require("./folder"), exports);
@@ -18,3 +18,4 @@ __exportStar(require("./check.command"), exports);
18
18
  __exportStar(require("./get-payment-history.command"), exports);
19
19
  __exportStar(require("./pay.command"), exports);
20
20
  __exportStar(require("./receipt.command"), exports);
21
+ __exportStar(require("./recurrent.command"), exports);
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RecurrentNotificationCommand = void 0;
4
+ const zod_1 = require("zod");
5
+ var RecurrentNotificationCommand;
6
+ (function (RecurrentNotificationCommand) {
7
+ RecurrentNotificationCommand.RequestSchema = zod_1.z
8
+ .object({
9
+ Id: zod_1.z.string(),
10
+ AccountId: zod_1.z.string(),
11
+ Description: zod_1.z.string(),
12
+ Email: zod_1.z.string(),
13
+ Amount: zod_1.z.number(),
14
+ Currency: zod_1.z.string(), // "RUB", "USD", "EUR", "GBP"
15
+ RequireConfirmation: zod_1.z.boolean(),
16
+ StartDate: zod_1.z.string(), // ISO‐8601 datetime in UTC, e.g. "2025-07-21T14:30:00Z"
17
+ Interval: zod_1.z.string(), // "Week", "Month", "Year"
18
+ Period: zod_1.z.number(),
19
+ Status: zod_1.z.string(),
20
+ SuccessfulTransactionsNumber: zod_1.z.number(),
21
+ FailedTransactionsNumber: zod_1.z.number(),
22
+ MaxPeriods: zod_1.z.number().optional(),
23
+ LastTransactionDate: zod_1.z.string().optional(), // "yyyy-MM-dd HH:mm:ss"
24
+ NextTransactionDate: zod_1.z.string().optional(), // "yyyy-MM-dd HH:mm:ss"
25
+ })
26
+ .transform((data) => ({
27
+ id: data.Id,
28
+ accountId: data.AccountId,
29
+ description: data.Description,
30
+ email: data.Email,
31
+ amount: data.Amount,
32
+ currency: data.Currency,
33
+ requireConfirmation: data.RequireConfirmation,
34
+ startDate: data.StartDate,
35
+ interval: data.Interval,
36
+ period: data.Period,
37
+ status: data.Status,
38
+ successfulTransactionsNumber: data.SuccessfulTransactionsNumber,
39
+ failedTransactionsNumber: data.FailedTransactionsNumber,
40
+ maxPeriods: data.MaxPeriods,
41
+ lastTransactionDate: data.LastTransactionDate,
42
+ nextTransactionDate: data.NextTransactionDate,
43
+ }));
44
+ RecurrentNotificationCommand.ResponseSchema = zod_1.z.object({
45
+ code: zod_1.z.number(),
46
+ });
47
+ })(RecurrentNotificationCommand || (exports.RecurrentNotificationCommand = RecurrentNotificationCommand = {}));
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DismissSubscriptionRenewalCommand = void 0;
4
+ const zod_1 = require("zod");
5
+ const models_1 = require("../../models");
6
+ var DismissSubscriptionRenewalCommand;
7
+ (function (DismissSubscriptionRenewalCommand) {
8
+ DismissSubscriptionRenewalCommand.RequestParamSchema = zod_1.z.object({
9
+ uuidSiteUserToSubscription: zod_1.z.string(),
10
+ });
11
+ DismissSubscriptionRenewalCommand.ResponseSchema = models_1.UserToSubscriptionSchema;
12
+ })(DismissSubscriptionRenewalCommand || (exports.DismissSubscriptionRenewalCommand = DismissSubscriptionRenewalCommand = {}));
@@ -9,5 +9,6 @@ var GetSubscriptionsSummaryCommand;
9
9
  features: zod_1.z.array(models_1.SubscriptionFeatureSchema),
10
10
  subscriptions: zod_1.z.array(models_1.UserToSubscriptionWithSubscriptionSchema),
11
11
  products: zod_1.z.array(models_1.UserToProductWithProductSchema),
12
+ latest: models_1.UserToSubscriptionWithSubscriptionSchema.nullable(),
12
13
  });
13
14
  })(GetSubscriptionsSummaryCommand || (exports.GetSubscriptionsSummaryCommand = GetSubscriptionsSummaryCommand = {}));
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FindUserByUuidCommand = void 0;
4
+ const models_1 = require("../../models");
5
+ const zod_1 = require("zod");
6
+ var FindUserByUuidCommand;
7
+ (function (FindUserByUuidCommand) {
8
+ FindUserByUuidCommand.RequestSchema = zod_1.z.object({
9
+ uuid: zod_1.z.string().uuid(),
10
+ });
11
+ FindUserByUuidCommand.ResponseSchema = zod_1.z.object({
12
+ data: models_1.UserSchema.omit({
13
+ verifyTokenHash: true,
14
+ password: true,
15
+ passwordHash: true,
16
+ restoreTokenHash: true,
17
+ }).extend({
18
+ telegramId: zod_1.z.number().nullable(),
19
+ }),
20
+ });
21
+ })(FindUserByUuidCommand || (exports.FindUserByUuidCommand = FindUserByUuidCommand = {}));
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.FindUsersByCriteriaCommand = void 0;
7
+ const zod_1 = __importDefault(require("zod"));
8
+ const models_1 = require("../../models");
9
+ const constants_1 = require("../../constants");
10
+ var FindUsersByCriteriaCommand;
11
+ (function (FindUsersByCriteriaCommand) {
12
+ FindUsersByCriteriaCommand.RequestSchema = zod_1.default
13
+ .object({
14
+ uuid: zod_1.default.string().uuid().optional(),
15
+ email: zod_1.default.string().email().optional(),
16
+ status: zod_1.default.nativeEnum(constants_1.USER_STATUS).optional(),
17
+ role: zod_1.default.nativeEnum(constants_1.ROLE).optional(),
18
+ createdAt: zod_1.default.date().optional(),
19
+ updatedAt: zod_1.default.date().optional(),
20
+ sortBy: zod_1.default.nativeEnum(constants_1.USER_SORT_BY).optional(),
21
+ sortOrder: zod_1.default.nativeEnum(constants_1.SORT_ORDER).default(constants_1.SORT_ORDER.DESC).optional(),
22
+ })
23
+ .partial();
24
+ FindUsersByCriteriaCommand.ResponseSchema = zod_1.default.object({
25
+ data: zod_1.default.array(models_1.UserSchema.omit({
26
+ verifyTokenHash: true,
27
+ password: true,
28
+ passwordHash: true,
29
+ restoreTokenHash: true,
30
+ })),
31
+ });
32
+ })(FindUsersByCriteriaCommand || (exports.FindUsersByCriteriaCommand = FindUsersByCriteriaCommand = {}));
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GetUserBalanceCommand = void 0;
4
+ const zod_1 = require("zod");
5
+ var GetUserBalanceCommand;
6
+ (function (GetUserBalanceCommand) {
7
+ GetUserBalanceCommand.RequestSchema = zod_1.z.object({
8
+ uuid: zod_1.z.string().uuid(),
9
+ });
10
+ GetUserBalanceCommand.ResponseSchema = zod_1.z.object({
11
+ data: zod_1.z.object({
12
+ totalTokenBalance: zod_1.z.number(),
13
+ }),
14
+ });
15
+ })(GetUserBalanceCommand || (exports.GetUserBalanceCommand = GetUserBalanceCommand = {}));
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.GetUserOrdersCommand = void 0;
7
+ const zod_1 = __importDefault(require("zod"));
8
+ const constants_1 = require("../../constants");
9
+ const models_1 = require("../../models");
10
+ const order_sort_by_enum_1 = require("../../constants/order/enums/order-sort-by.enum");
11
+ var GetUserOrdersCommand;
12
+ (function (GetUserOrdersCommand) {
13
+ GetUserOrdersCommand.RequestParamSchema = zod_1.default.object({
14
+ uuid: zod_1.default.string().uuid(),
15
+ });
16
+ GetUserOrdersCommand.RequestSchema = zod_1.default
17
+ .object({
18
+ status: zod_1.default.nativeEnum(constants_1.ORDER_STATUS).optional(),
19
+ type: zod_1.default.nativeEnum(constants_1.ORDER_TYPE).optional(),
20
+ sortBy: zod_1.default.nativeEnum(order_sort_by_enum_1.ORDER_SORT_BY).optional(),
21
+ sortOrder: zod_1.default.nativeEnum(constants_1.SORT_ORDER).default(constants_1.SORT_ORDER.DESC).optional(),
22
+ })
23
+ .partial();
24
+ GetUserOrdersCommand.ResponseSchema = zod_1.default.object({
25
+ data: zod_1.default.array(models_1.OrderSchema),
26
+ });
27
+ })(GetUserOrdersCommand || (exports.GetUserOrdersCommand = GetUserOrdersCommand = {}));
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.GetUserProductsCommand = void 0;
7
+ const zod_1 = __importDefault(require("zod"));
8
+ const constants_1 = require("../../constants");
9
+ const models_1 = require("../../models");
10
+ var GetUserProductsCommand;
11
+ (function (GetUserProductsCommand) {
12
+ GetUserProductsCommand.RequestParamSchema = zod_1.default.object({
13
+ uuid: zod_1.default.string().uuid(),
14
+ });
15
+ GetUserProductsCommand.RequestSchema = zod_1.default
16
+ .object({
17
+ status: zod_1.default.nativeEnum(constants_1.PRODUCT_STATUS).optional(),
18
+ sortBy: zod_1.default.nativeEnum(constants_1.PRODUCT_SORT_BY).optional(),
19
+ sortOrder: zod_1.default.nativeEnum(constants_1.SORT_ORDER).default(constants_1.SORT_ORDER.DESC).optional(),
20
+ })
21
+ .partial();
22
+ GetUserProductsCommand.ResponseSchema = zod_1.default.object({
23
+ data: zod_1.default.array(models_1.UserToProductSchema),
24
+ });
25
+ })(GetUserProductsCommand || (exports.GetUserProductsCommand = GetUserProductsCommand = {}));
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.GetUserSubscriptionsCommand = void 0;
7
+ const zod_1 = __importDefault(require("zod"));
8
+ const constants_1 = require("../../constants");
9
+ const models_1 = require("../../models");
10
+ var GetUserSubscriptionsCommand;
11
+ (function (GetUserSubscriptionsCommand) {
12
+ GetUserSubscriptionsCommand.RequestParamSchema = zod_1.default.object({
13
+ uuid: zod_1.default.string().uuid(),
14
+ });
15
+ GetUserSubscriptionsCommand.RequestSchema = zod_1.default
16
+ .object({
17
+ status: zod_1.default.nativeEnum(constants_1.SUBSCRIPTION_STATUS).optional(),
18
+ sortBy: zod_1.default.nativeEnum(constants_1.SUBSCRIPTION_SORT_BY).optional(),
19
+ sortOrder: zod_1.default.nativeEnum(constants_1.SORT_ORDER).default(constants_1.SORT_ORDER.DESC).optional(),
20
+ })
21
+ .partial();
22
+ GetUserSubscriptionsCommand.ResponseSchema = zod_1.default.object({
23
+ data: zod_1.default.array(models_1.UserToSubscriptionSchema),
24
+ });
25
+ })(GetUserSubscriptionsCommand || (exports.GetUserSubscriptionsCommand = GetUserSubscriptionsCommand = {}));
@@ -15,6 +15,11 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./check-email.command"), exports);
18
- __exportStar(require("./find-user.command"), exports);
18
+ __exportStar(require("./find-user-by-uuid.command"), exports);
19
19
  __exportStar(require("./get-me.command"), exports);
20
20
  __exportStar(require("./up-token-bonus-balance.command"), exports);
21
+ __exportStar(require("./find-users-by-criteria.command"), exports);
22
+ __exportStar(require("./get-user-balance.command"), exports);
23
+ __exportStar(require("./get-user-orders.command"), exports);
24
+ __exportStar(require("./get-user-subscriptions.command"), exports);
25
+ __exportStar(require("./get-user-products.command"), exports);
@@ -227,11 +227,11 @@ exports.ERRORS = {
227
227
  },
228
228
  SUBSCRIPTION_DELETE_ERROR: { code: 'A051', message: 'Подписка не была удалена', httpCode: 500 },
229
229
  SUBSCRIPTION_CREATE_ERROR: { code: 'A052', message: 'Подписка не была создана', httpCode: 500 },
230
- SUBSCRIPTION_FIND_ERROR: { code: 'A053', message: 'Подписка не найдена', httpCode: 404 },
230
+ SUBSCRIPTION_FIND_ERROR: { code: 'A053', message: 'Подписка не найдена', httpCode: 500 },
231
231
  SUBSCRIPTIONS_FIND_ERROR: {
232
232
  code: 'A054',
233
233
  message: 'Подписки не найдены',
234
- httpCode: 404,
234
+ httpCode: 500,
235
235
  },
236
236
  SUBSCRIPTION_BUY_ERROR: {
237
237
  code: 'A097',
@@ -1438,8 +1438,48 @@ exports.ERRORS = {
1438
1438
  message: 'Произошла ошибка при построении списка функций подписки',
1439
1439
  httpCode: 500,
1440
1440
  },
1441
- CHECK_USER_HAS_ACTIVE_SUBSCRIPTION_OR_PRODUCT_ERROR: {
1441
+ USER_TO_SUBSCRIPTION_NOT_FOUND: {
1442
1442
  code: 'A311',
1443
+ message: 'Подписка пользователя не найдена',
1444
+ httpCode: 404,
1445
+ },
1446
+ SUBSCRIPTION_NOT_ACTIVE: {
1447
+ code: 'A312',
1448
+ message: 'Подписка не активна',
1449
+ httpCode: 401,
1450
+ },
1451
+ FOLDER_DELETE_ERROR: {
1452
+ code: 'A311',
1453
+ message: 'Папка не была удалена',
1454
+ httpCode: 500,
1455
+ },
1456
+ FOLDER_CREATE_ERROR: {
1457
+ code: 'A312',
1458
+ message: 'Папка не был создана',
1459
+ httpCode: 500,
1460
+ },
1461
+ FOLDER_FIND_ERROR: {
1462
+ code: 'A313',
1463
+ message: 'Папка не найдена',
1464
+ httpCode: 404,
1465
+ },
1466
+ FOLDERS_FIND_ERROR: {
1467
+ code: 'A314',
1468
+ message: 'Папки не найдены',
1469
+ httpCode: 404,
1470
+ },
1471
+ FOLDER_UPDATE_ERROR: {
1472
+ code: 'A315',
1473
+ message: 'Папка не был обновлена',
1474
+ httpCode: 500,
1475
+ },
1476
+ FOLDER_OWNERSHIP_ERROR: {
1477
+ code: 'A316',
1478
+ message: 'Юзер не является владельцем папки',
1479
+ httpCode: 400,
1480
+ },
1481
+ CHECK_USER_HAS_ACTIVE_SUBSCRIPTION_OR_PRODUCT_ERROR: {
1482
+ code: 'A317',
1443
1483
  message: 'Произошла ошибка при проверке наличия активной подписки или пакета у пользователя',
1444
1484
  httpCode: 500,
1445
1485
  },
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ORDER_SORT_BY = void 0;
4
+ var ORDER_SORT_BY;
5
+ (function (ORDER_SORT_BY) {
6
+ ORDER_SORT_BY["STATUS"] = "status";
7
+ ORDER_SORT_BY["TYPE"] = "type";
8
+ ORDER_SORT_BY["SUM"] = "sum";
9
+ ORDER_SORT_BY["CREATED_AT"] = "createdAt";
10
+ ORDER_SORT_BY["UPDATED_AT"] = "updatedAt";
11
+ })(ORDER_SORT_BY || (exports.ORDER_SORT_BY = ORDER_SORT_BY = {}));
@@ -15,3 +15,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./product-status.enum"), exports);
18
+ __exportStar(require("./product-sort-by.enum"), exports);
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PRODUCT_SORT_BY = void 0;
4
+ var PRODUCT_SORT_BY;
5
+ (function (PRODUCT_SORT_BY) {
6
+ PRODUCT_SORT_BY["STATUS"] = "status";
7
+ PRODUCT_SORT_BY["CREATED_AT"] = "createdAt";
8
+ PRODUCT_SORT_BY["UPDATED_AT"] = "updatedAt";
9
+ })(PRODUCT_SORT_BY || (exports.PRODUCT_SORT_BY = PRODUCT_SORT_BY = {}));
@@ -21,3 +21,4 @@ __exportStar(require("./subscription-status.enum"), exports);
21
21
  __exportStar(require("./subscription-type.enum"), exports);
22
22
  __exportStar(require("./user-to-subscription-type.enum"), exports);
23
23
  __exportStar(require("./user-to-subscription-marks.enum"), exports);
24
+ __exportStar(require("./subscription-sort-by.enum"), exports);