@purpleschool/gptbot 0.8.18 → 0.8.20

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 (41) hide show
  1. package/api/controllers/http/image-generation.ts +14 -0
  2. package/api/controllers/http/index.ts +1 -0
  3. package/api/routes.ts +28 -0
  4. package/build/api/controllers/http/image-generation.js +16 -0
  5. package/build/api/controllers/http/index.js +1 -0
  6. package/build/api/routes.js +20 -0
  7. package/build/commands/tools/image-generation/delete-all-image-generation-jobs.command.js +10 -0
  8. package/build/commands/tools/image-generation/delete-image-generation-job-by-uuid.command.js +13 -0
  9. package/build/commands/tools/image-generation/find-image-generation-job-by-uuid.command.js +14 -0
  10. package/build/commands/tools/image-generation/find-image-generation-jobs.command.js +18 -0
  11. package/build/commands/tools/image-generation/get-image-generation-config.command.js +11 -0
  12. package/build/commands/tools/image-generation/image-generation.command.js +21 -0
  13. package/build/commands/tools/image-generation/index.js +24 -0
  14. package/build/commands/tools/image-generation/set-reaction-to-image-generation-job.command.js +18 -0
  15. package/build/commands/tools/image-generation/update-image-generation-job-title.command.js +17 -0
  16. package/build/commands/tools/index.js +1 -0
  17. package/build/constants/errors/errors.js +65 -0
  18. package/build/models/tools/image-generation/image-generation-config.schema.js +21 -0
  19. package/build/models/tools/image-generation/image-generation-job.schema.js +23 -0
  20. package/build/models/tools/image-generation/image-generation-model.schema.js +16 -0
  21. package/build/models/tools/image-generation/index.js +19 -0
  22. package/build/models/tools/index.js +1 -0
  23. package/build/models/tools/video-editor/video-editor-job.schema.js +1 -0
  24. package/commands/tools/image-generation/delete-all-image-generation-jobs.command.ts +8 -0
  25. package/commands/tools/image-generation/delete-image-generation-job-by-uuid.command.ts +13 -0
  26. package/commands/tools/image-generation/find-image-generation-job-by-uuid.command.ts +16 -0
  27. package/commands/tools/image-generation/find-image-generation-jobs.command.ts +18 -0
  28. package/commands/tools/image-generation/get-image-generation-config.command.ts +9 -0
  29. package/commands/tools/image-generation/image-generation.command.ts +23 -0
  30. package/commands/tools/image-generation/index.ts +8 -0
  31. package/commands/tools/image-generation/set-reaction-to-image-generation-job.command.ts +20 -0
  32. package/commands/tools/image-generation/update-image-generation-job-title.command.ts +19 -0
  33. package/commands/tools/index.ts +1 -0
  34. package/constants/errors/errors.ts +66 -0
  35. package/models/tools/image-generation/image-generation-config.schema.ts +27 -0
  36. package/models/tools/image-generation/image-generation-job.schema.ts +28 -0
  37. package/models/tools/image-generation/image-generation-model.schema.ts +16 -0
  38. package/models/tools/image-generation/index.ts +3 -0
  39. package/models/tools/index.ts +1 -0
  40. package/models/tools/video-editor/video-editor-job.schema.ts +1 -0
  41. package/package.json +1 -1
@@ -0,0 +1,14 @@
1
+ export const IMAGE_GENERATION_CONTROLLER_PRIVATE = 'private/tools/image-generation' as const;
2
+ export const IMAGE_GENERATION_CONTROLLER_PUBLIC = 'public/tools/image-generation' as const;
3
+
4
+ export const IMAGE_GENERATION_ROUTES = {
5
+ CONFIG: 'config',
6
+ EXECUTE: 'execute',
7
+ GET_JOBS: 'jobs',
8
+ GET_JOB: (uuid: string) => `jobs/${uuid}`,
9
+ UPDATE: (uuid: string) => `jobs/${uuid}`,
10
+ SET_REACTION: (uuid: string) => `jobs/${uuid}/reaction`,
11
+ DELETE: (uuid: string) => `jobs/${uuid}`,
12
+ DELETE_ALL: 'jobs',
13
+ RETRY: (uuid: string) => `jobs/${uuid}/retry`,
14
+ } as const;
@@ -55,3 +55,4 @@ export * from './music';
55
55
  export * from './webmaster-click';
56
56
  export * from './community';
57
57
  export * from './user-profile';
58
+ export * from './image-generation';
package/api/routes.ts CHANGED
@@ -848,4 +848,32 @@ export const REST_API = {
848
848
  UPDATE_PROFILE: `${ROOT}/${CONTROLLERS.USER_PROFILE_CONTROLLER}/${CONTROLLERS.USER_PROFILE_ROUTES.UPDATE_PROFILE}`,
849
849
  DELETE_AVATAR: `${ROOT}/${CONTROLLERS.USER_PROFILE_CONTROLLER}/${CONTROLLERS.USER_PROFILE_ROUTES.DELETE_AVATAR}`,
850
850
  },
851
+ IMAGE_GENERATION_PUBLIC: {
852
+ CONFIG: `${ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PUBLIC}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.CONFIG}`,
853
+ EXECUTE: `${ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PUBLIC}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.EXECUTE}`,
854
+ GET_JOBS: `${ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PUBLIC}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.GET_JOBS}`,
855
+ GET_JOB: (uuid: string) =>
856
+ `${ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PUBLIC}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.GET_JOB(uuid)}`,
857
+ UPDATE: (uuid: string) =>
858
+ `${ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PUBLIC}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.UPDATE(uuid)}`,
859
+ SET_REACTION: (uuid: string) =>
860
+ `${ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PUBLIC}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.SET_REACTION(uuid)}`,
861
+ DELETE: (uuid: string) =>
862
+ `${ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PUBLIC}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.DELETE(uuid)}`,
863
+ DELETE_ALL: `${ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PUBLIC}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.DELETE_ALL}`,
864
+ },
865
+ IMAGE_GENERATION_PRIVATE: {
866
+ CONFIG: `${ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PRIVATE}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.CONFIG}`,
867
+ EXECUTE: `${ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PRIVATE}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.EXECUTE}`,
868
+ GET_JOBS: `${ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PRIVATE}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.GET_JOBS}`,
869
+ GET_JOB: (uuid: string) =>
870
+ `${ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PRIVATE}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.GET_JOB(uuid)}`,
871
+ UPDATE: (uuid: string) =>
872
+ `${ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PRIVATE}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.UPDATE(uuid)}`,
873
+ SET_REACTION: (uuid: string) =>
874
+ `${ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PRIVATE}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.SET_REACTION(uuid)}`,
875
+ DELETE: (uuid: string) =>
876
+ `${ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PRIVATE}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.DELETE(uuid)}`,
877
+ DELETE_ALL: `${ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PRIVATE}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.DELETE_ALL}`,
878
+ },
851
879
  } as const;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IMAGE_GENERATION_ROUTES = exports.IMAGE_GENERATION_CONTROLLER_PUBLIC = exports.IMAGE_GENERATION_CONTROLLER_PRIVATE = void 0;
4
+ exports.IMAGE_GENERATION_CONTROLLER_PRIVATE = 'private/tools/image-generation';
5
+ exports.IMAGE_GENERATION_CONTROLLER_PUBLIC = 'public/tools/image-generation';
6
+ exports.IMAGE_GENERATION_ROUTES = {
7
+ CONFIG: 'config',
8
+ EXECUTE: 'execute',
9
+ GET_JOBS: 'jobs',
10
+ GET_JOB: (uuid) => `jobs/${uuid}`,
11
+ UPDATE: (uuid) => `jobs/${uuid}`,
12
+ SET_REACTION: (uuid) => `jobs/${uuid}/reaction`,
13
+ DELETE: (uuid) => `jobs/${uuid}`,
14
+ DELETE_ALL: 'jobs',
15
+ RETRY: (uuid) => `jobs/${uuid}/retry`,
16
+ };
@@ -71,3 +71,4 @@ __exportStar(require("./music"), exports);
71
71
  __exportStar(require("./webmaster-click"), exports);
72
72
  __exportStar(require("./community"), exports);
73
73
  __exportStar(require("./user-profile"), exports);
74
+ __exportStar(require("./image-generation"), exports);
@@ -661,4 +661,24 @@ exports.REST_API = {
661
661
  UPDATE_PROFILE: `${exports.ROOT}/${CONTROLLERS.USER_PROFILE_CONTROLLER}/${CONTROLLERS.USER_PROFILE_ROUTES.UPDATE_PROFILE}`,
662
662
  DELETE_AVATAR: `${exports.ROOT}/${CONTROLLERS.USER_PROFILE_CONTROLLER}/${CONTROLLERS.USER_PROFILE_ROUTES.DELETE_AVATAR}`,
663
663
  },
664
+ IMAGE_GENERATION_PUBLIC: {
665
+ CONFIG: `${exports.ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PUBLIC}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.CONFIG}`,
666
+ EXECUTE: `${exports.ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PUBLIC}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.EXECUTE}`,
667
+ GET_JOBS: `${exports.ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PUBLIC}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.GET_JOBS}`,
668
+ GET_JOB: (uuid) => `${exports.ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PUBLIC}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.GET_JOB(uuid)}`,
669
+ UPDATE: (uuid) => `${exports.ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PUBLIC}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.UPDATE(uuid)}`,
670
+ SET_REACTION: (uuid) => `${exports.ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PUBLIC}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.SET_REACTION(uuid)}`,
671
+ DELETE: (uuid) => `${exports.ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PUBLIC}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.DELETE(uuid)}`,
672
+ DELETE_ALL: `${exports.ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PUBLIC}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.DELETE_ALL}`,
673
+ },
674
+ IMAGE_GENERATION_PRIVATE: {
675
+ CONFIG: `${exports.ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PRIVATE}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.CONFIG}`,
676
+ EXECUTE: `${exports.ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PRIVATE}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.EXECUTE}`,
677
+ GET_JOBS: `${exports.ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PRIVATE}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.GET_JOBS}`,
678
+ GET_JOB: (uuid) => `${exports.ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PRIVATE}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.GET_JOB(uuid)}`,
679
+ UPDATE: (uuid) => `${exports.ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PRIVATE}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.UPDATE(uuid)}`,
680
+ SET_REACTION: (uuid) => `${exports.ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PRIVATE}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.SET_REACTION(uuid)}`,
681
+ DELETE: (uuid) => `${exports.ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PRIVATE}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.DELETE(uuid)}`,
682
+ DELETE_ALL: `${exports.ROOT}/${CONTROLLERS.IMAGE_GENERATION_CONTROLLER_PRIVATE}/${CONTROLLERS.IMAGE_GENERATION_ROUTES.DELETE_ALL}`,
683
+ },
664
684
  };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DeleteAllImageGenerationJobsCommand = void 0;
4
+ const zod_1 = require("zod");
5
+ var DeleteAllImageGenerationJobsCommand;
6
+ (function (DeleteAllImageGenerationJobsCommand) {
7
+ DeleteAllImageGenerationJobsCommand.ResponseSchema = zod_1.z.object({
8
+ data: zod_1.z.boolean(),
9
+ });
10
+ })(DeleteAllImageGenerationJobsCommand || (exports.DeleteAllImageGenerationJobsCommand = DeleteAllImageGenerationJobsCommand = {}));
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DeleteImageGenerationJobByUUIDCommand = void 0;
4
+ const zod_1 = require("zod");
5
+ var DeleteImageGenerationJobByUUIDCommand;
6
+ (function (DeleteImageGenerationJobByUUIDCommand) {
7
+ DeleteImageGenerationJobByUUIDCommand.RequestParamsSchema = zod_1.z.object({
8
+ uuid: zod_1.z.string().uuid(),
9
+ });
10
+ DeleteImageGenerationJobByUUIDCommand.ResponseSchema = zod_1.z.object({
11
+ data: zod_1.z.boolean(),
12
+ });
13
+ })(DeleteImageGenerationJobByUUIDCommand || (exports.DeleteImageGenerationJobByUUIDCommand = DeleteImageGenerationJobByUUIDCommand = {}));
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FindImageGenerationJobByUUIDCommand = void 0;
4
+ const zod_1 = require("zod");
5
+ const models_1 = require("../../../models");
6
+ var FindImageGenerationJobByUUIDCommand;
7
+ (function (FindImageGenerationJobByUUIDCommand) {
8
+ FindImageGenerationJobByUUIDCommand.RequestParamsSchema = models_1.ToolJobSchema.pick({
9
+ uuid: true,
10
+ });
11
+ FindImageGenerationJobByUUIDCommand.ResponseSchema = zod_1.z.object({
12
+ data: models_1.ImageGenerationJobSchema,
13
+ });
14
+ })(FindImageGenerationJobByUUIDCommand || (exports.FindImageGenerationJobByUUIDCommand = FindImageGenerationJobByUUIDCommand = {}));
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FindImageGenerationJobsCommand = void 0;
4
+ const zod_1 = require("zod");
5
+ const models_1 = require("../../../models");
6
+ var FindImageGenerationJobsCommand;
7
+ (function (FindImageGenerationJobsCommand) {
8
+ FindImageGenerationJobsCommand.RequestQuerySchema = zod_1.z.object({
9
+ limit: zod_1.z.coerce.number().min(1).optional(),
10
+ offset: zod_1.z.coerce.number().min(0).default(0).optional(),
11
+ title: zod_1.z.string().optional(),
12
+ });
13
+ FindImageGenerationJobsCommand.ResponseSchema = zod_1.z.object({
14
+ data: zod_1.z.array(models_1.ImageGenerationJobSchema),
15
+ totalPages: zod_1.z.number(),
16
+ page: zod_1.z.number(),
17
+ });
18
+ })(FindImageGenerationJobsCommand || (exports.FindImageGenerationJobsCommand = FindImageGenerationJobsCommand = {}));
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GetImageGenerationConfigCommand = void 0;
4
+ const zod_1 = require("zod");
5
+ const models_1 = require("../../../models");
6
+ var GetImageGenerationConfigCommand;
7
+ (function (GetImageGenerationConfigCommand) {
8
+ GetImageGenerationConfigCommand.ResponseSchema = zod_1.z.object({
9
+ data: models_1.ImageGenerationConfigSchema,
10
+ });
11
+ })(GetImageGenerationConfigCommand || (exports.GetImageGenerationConfigCommand = GetImageGenerationConfigCommand = {}));
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ImageGenerationCommand = void 0;
4
+ const zod_1 = require("zod");
5
+ const models_1 = require("../../../models");
6
+ var ImageGenerationCommand;
7
+ (function (ImageGenerationCommand) {
8
+ ImageGenerationCommand.RequestSchema = zod_1.z.object({
9
+ modelId: zod_1.z.string().uuid(),
10
+ prompt: zod_1.z.string(),
11
+ params: zod_1.z.object({
12
+ aspectRatio: zod_1.z.string(),
13
+ attachedImages: zod_1.z.string().array(),
14
+ enhancePrompt: zod_1.z.boolean(),
15
+ }),
16
+ presetId: zod_1.z.string().uuid().nullable().optional(),
17
+ });
18
+ ImageGenerationCommand.ResponseSchema = zod_1.z.object({
19
+ data: models_1.ToolJobSchema,
20
+ });
21
+ })(ImageGenerationCommand || (exports.ImageGenerationCommand = ImageGenerationCommand = {}));
@@ -0,0 +1,24 @@
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("./image-generation.command"), exports);
18
+ __exportStar(require("./find-image-generation-job-by-uuid.command"), exports);
19
+ __exportStar(require("./find-image-generation-jobs.command"), exports);
20
+ __exportStar(require("./set-reaction-to-image-generation-job.command"), exports);
21
+ __exportStar(require("./update-image-generation-job-title.command"), exports);
22
+ __exportStar(require("./delete-image-generation-job-by-uuid.command"), exports);
23
+ __exportStar(require("./delete-all-image-generation-jobs.command"), exports);
24
+ __exportStar(require("./get-image-generation-config.command"), exports);
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SetReactionToImageGenerationJobCommand = void 0;
4
+ const zod_1 = require("zod");
5
+ const models_1 = require("../../../models");
6
+ const constants_1 = require("../../../constants");
7
+ var SetReactionToImageGenerationJobCommand;
8
+ (function (SetReactionToImageGenerationJobCommand) {
9
+ SetReactionToImageGenerationJobCommand.RequestSchema = zod_1.z.object({
10
+ reaction: zod_1.z.nativeEnum(constants_1.USER_REACTION).nullable(),
11
+ });
12
+ SetReactionToImageGenerationJobCommand.RequestParamsSchema = zod_1.z.object({
13
+ uuid: zod_1.z.string().uuid(),
14
+ });
15
+ SetReactionToImageGenerationJobCommand.ResponseSchema = zod_1.z.object({
16
+ data: models_1.ImageGenerationJobSchema,
17
+ });
18
+ })(SetReactionToImageGenerationJobCommand || (exports.SetReactionToImageGenerationJobCommand = SetReactionToImageGenerationJobCommand = {}));
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UpdateImageGenerationJobTitleCommand = void 0;
4
+ const zod_1 = require("zod");
5
+ const models_1 = require("../../../models");
6
+ var UpdateImageGenerationJobTitleCommand;
7
+ (function (UpdateImageGenerationJobTitleCommand) {
8
+ UpdateImageGenerationJobTitleCommand.RequestSchema = zod_1.z.object({
9
+ title: zod_1.z.string(),
10
+ });
11
+ UpdateImageGenerationJobTitleCommand.RequestParamsSchema = zod_1.z.object({
12
+ uuid: zod_1.z.string().uuid(),
13
+ });
14
+ UpdateImageGenerationJobTitleCommand.ResponseSchema = zod_1.z.object({
15
+ data: models_1.ImageGenerationJobSchema,
16
+ });
17
+ })(UpdateImageGenerationJobTitleCommand || (exports.UpdateImageGenerationJobTitleCommand = UpdateImageGenerationJobTitleCommand = {}));
@@ -24,3 +24,4 @@ __exportStar(require("./writer"), exports);
24
24
  __exportStar(require("./image-editor"), exports);
25
25
  __exportStar(require("./video-editor"), exports);
26
26
  __exportStar(require("./music"), exports);
27
+ __exportStar(require("./image-generation"), exports);
@@ -2487,4 +2487,69 @@ exports.ERRORS = {
2487
2487
  message: 'Произошла ошибка при сохранении файлов',
2488
2488
  httpCode: 500,
2489
2489
  },
2490
+ IMAGE_GENERATION_CONFIG_ERROR: {
2491
+ code: 'A508',
2492
+ message: 'Произошла ошибка при получении конфигурации инструмента для генерации изображений',
2493
+ httpCode: 500,
2494
+ },
2495
+ IMAGE_GENERATION_SEND_REQUEST_ERROR: {
2496
+ code: 'A509',
2497
+ message: 'Произошла ошибка при отправке запроса на генерацию изображения',
2498
+ httpCode: 500,
2499
+ },
2500
+ IMAGE_GENERATION_FIND_JOBS_ERROR: {
2501
+ code: 'A510',
2502
+ message: 'Произошла ошибка при получении списка заданий на генерацию изображений',
2503
+ httpCode: 500,
2504
+ },
2505
+ IMAGE_GENERATION_FIND_JOB_ERROR: {
2506
+ code: 'A511',
2507
+ message: 'Произошла ошибка при получении задания на генерацию изображения',
2508
+ httpCode: 500,
2509
+ },
2510
+ IMAGE_GENERATION_RETRY_JOB_ERROR: {
2511
+ code: 'A512',
2512
+ message: 'Произошла ошибка при повторном запросе на генерацию изображения',
2513
+ httpCode: 500,
2514
+ },
2515
+ IMAGE_GENERATION_SET_REACTION_ERROR: {
2516
+ code: 'A513',
2517
+ message: 'Произошла ошибка при установке оценки задания на генерацию изображения',
2518
+ httpCode: 500,
2519
+ },
2520
+ IMAGE_GENERATION_UPDATE_TITLE_ERROR: {
2521
+ code: 'A514',
2522
+ message: 'Произошла ошибка при обновлении названия задания на генерацию изображения',
2523
+ httpCode: 500,
2524
+ },
2525
+ IMAGE_GENERATION_DELETE_JOB_ERROR: {
2526
+ code: 'A515',
2527
+ message: 'Произошла ошибка при удалении задания на генерацию изображения',
2528
+ httpCode: 500,
2529
+ },
2530
+ IMAGE_GENERATION_DELETE_ALL_JOBS_ERROR: {
2531
+ code: 'A516',
2532
+ message: 'Произошла ошибка при удалении всех заданий на генерацию изображений',
2533
+ httpCode: 500,
2534
+ },
2535
+ IMAGE_GENERATION_MODEL_NOT_FOUND: {
2536
+ code: 'A517',
2537
+ message: 'Не удалось найти указанную модель для генерации изображений',
2538
+ httpCode: 400,
2539
+ },
2540
+ IMAGE_GENERATION_MODEL_INACTIVE: {
2541
+ code: 'A518',
2542
+ message: 'Модель для генерации изображений неактивна',
2543
+ httpCode: 400,
2544
+ },
2545
+ IMAGE_GENERATION_MODEL_NOT_AVAILABLE: {
2546
+ code: 'A519',
2547
+ message: 'Модель для генерации изображений недоступна для данного пользователя',
2548
+ httpCode: 403,
2549
+ },
2550
+ IMAGE_GENERATION_MAX_SYMBOLS_EXCEEDED: {
2551
+ code: 'A520',
2552
+ message: 'Превышена максимальная количество символов',
2553
+ httpCode: 400,
2554
+ },
2490
2555
  };
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ImageGenerationConfigSchema = exports.ImageGenerationPresetSchema = exports.ImageGenerationVendorSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const image_generation_model_schema_1 = require("./image-generation-model.schema");
6
+ exports.ImageGenerationVendorSchema = zod_1.z.object({
7
+ uuid: zod_1.z.string().uuid(),
8
+ title: zod_1.z.string(),
9
+ order: zod_1.z.number(),
10
+ models: zod_1.z.array(image_generation_model_schema_1.ImageGenerationModelSchema),
11
+ });
12
+ exports.ImageGenerationPresetSchema = zod_1.z.object({
13
+ uuid: zod_1.z.string().uuid(),
14
+ title: zod_1.z.string(),
15
+ sample: zod_1.z.string(),
16
+ order: zod_1.z.number(),
17
+ });
18
+ exports.ImageGenerationConfigSchema = zod_1.z.object({
19
+ vendors: zod_1.z.array(exports.ImageGenerationVendorSchema),
20
+ presets: zod_1.z.array(exports.ImageGenerationPresetSchema),
21
+ });
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ImageGenerationJobSchema = exports.ImageGenerationJobParamsSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const tool_job_schema_1 = require("../../tool-job.schema");
6
+ const constants_1 = require("../../../constants");
7
+ exports.ImageGenerationJobParamsSchema = zod_1.z.object({
8
+ aspectRatio: zod_1.z.string().optional(),
9
+ attachedImages: zod_1.z.string().array().optional(),
10
+ });
11
+ exports.ImageGenerationJobSchema = tool_job_schema_1.ToolJobSchema.extend({
12
+ title: zod_1.z.string(),
13
+ prompt: zod_1.z.string(),
14
+ reaction: zod_1.z.nativeEnum(constants_1.USER_REACTION).nullable(),
15
+ images: zod_1.z
16
+ .array(zod_1.z.object({
17
+ uuid: zod_1.z.string(),
18
+ url: zod_1.z.string(),
19
+ }))
20
+ .nullable(),
21
+ params: exports.ImageGenerationJobParamsSchema.optional(),
22
+ modelId: zod_1.z.string(),
23
+ });
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ImageGenerationModelSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const unlocked_by_subscription_schema_1 = require("../../unlocked-by-subscription.schema");
6
+ exports.ImageGenerationModelSchema = zod_1.z.object({
7
+ uuid: zod_1.z.string().uuid(),
8
+ title: zod_1.z.string(),
9
+ description: zod_1.z.string(),
10
+ order: zod_1.z.number(),
11
+ status: zod_1.z.string(),
12
+ price: zod_1.z.number(),
13
+ maxPromptLength: zod_1.z.number(),
14
+ unlockedBy: unlocked_by_subscription_schema_1.UnlockedBySchema.nullable(),
15
+ canUse: zod_1.z.boolean(),
16
+ });
@@ -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("./image-generation-config.schema"), exports);
18
+ __exportStar(require("./image-generation-job.schema"), exports);
19
+ __exportStar(require("./image-generation-model.schema"), exports);
@@ -24,3 +24,4 @@ __exportStar(require("./writer"), exports);
24
24
  __exportStar(require("./image-editor"), exports);
25
25
  __exportStar(require("./video-editor"), exports);
26
26
  __exportStar(require("./music"), exports);
27
+ __exportStar(require("./image-generation"), exports);
@@ -8,6 +8,7 @@ exports.VideoEditorJobSchema = tool_job_schema_1.ToolJobSchema.extend({
8
8
  title: zod_1.z.string(),
9
9
  prompt: zod_1.z.string(),
10
10
  reaction: zod_1.z.nativeEnum(constants_1.USER_REACTION).nullable(),
11
+ inputVideoId: zod_1.z.string().nullable(),
11
12
  inputVideoUrl: zod_1.z.string(),
12
13
  outputVideoUrl: zod_1.z.string().nullable(),
13
14
  modelId: zod_1.z.string(),
@@ -0,0 +1,8 @@
1
+ import { z } from 'zod';
2
+
3
+ export namespace DeleteAllImageGenerationJobsCommand {
4
+ export const ResponseSchema = z.object({
5
+ data: z.boolean(),
6
+ });
7
+ export type Response = z.infer<typeof ResponseSchema>;
8
+ }
@@ -0,0 +1,13 @@
1
+ import { z } from 'zod';
2
+
3
+ export namespace DeleteImageGenerationJobByUUIDCommand {
4
+ export const RequestParamsSchema = z.object({
5
+ uuid: z.string().uuid(),
6
+ });
7
+ export type RequestParams = z.infer<typeof RequestParamsSchema>;
8
+
9
+ export const ResponseSchema = z.object({
10
+ data: z.boolean(),
11
+ });
12
+ export type Response = z.infer<typeof ResponseSchema>;
13
+ }
@@ -0,0 +1,16 @@
1
+ import { z } from 'zod';
2
+ import { ImageGenerationJobSchema, ToolJobSchema } from '../../../models';
3
+
4
+ export namespace FindImageGenerationJobByUUIDCommand {
5
+ export const RequestParamsSchema = ToolJobSchema.pick({
6
+ uuid: true,
7
+ });
8
+
9
+ export type Request = z.infer<typeof RequestParamsSchema>;
10
+
11
+ export const ResponseSchema = z.object({
12
+ data: ImageGenerationJobSchema,
13
+ });
14
+
15
+ export type Response = z.infer<typeof ResponseSchema>;
16
+ }
@@ -0,0 +1,18 @@
1
+ import { z } from 'zod';
2
+ import { ImageGenerationJobSchema } from '../../../models';
3
+
4
+ export namespace FindImageGenerationJobsCommand {
5
+ export const RequestQuerySchema = z.object({
6
+ limit: z.coerce.number().min(1).optional(),
7
+ offset: z.coerce.number().min(0).default(0).optional(),
8
+ title: z.string().optional(),
9
+ });
10
+ export type RequestQuery = z.infer<typeof RequestQuerySchema>;
11
+
12
+ export const ResponseSchema = z.object({
13
+ data: z.array(ImageGenerationJobSchema),
14
+ totalPages: z.number(),
15
+ page: z.number(),
16
+ });
17
+ export type Response = z.infer<typeof ResponseSchema>;
18
+ }
@@ -0,0 +1,9 @@
1
+ import { z } from 'zod';
2
+ import { ImageGenerationConfigSchema } from '../../../models';
3
+
4
+ export namespace GetImageGenerationConfigCommand {
5
+ export const ResponseSchema = z.object({
6
+ data: ImageGenerationConfigSchema,
7
+ });
8
+ export type Response = z.infer<typeof ResponseSchema>;
9
+ }
@@ -0,0 +1,23 @@
1
+ import { z } from 'zod';
2
+ import { ToolJobSchema } from '../../../models';
3
+
4
+ export namespace ImageGenerationCommand {
5
+ export const RequestSchema = z.object({
6
+ modelId: z.string().uuid(),
7
+ prompt: z.string(),
8
+ params: z.object({
9
+ aspectRatio: z.string(),
10
+ attachedImages: z.string().array(),
11
+ enhancePrompt: z.boolean(),
12
+ }),
13
+ presetId: z.string().uuid().nullable().optional(),
14
+ });
15
+
16
+ export type Request = z.infer<typeof RequestSchema>;
17
+
18
+ export const ResponseSchema = z.object({
19
+ data: ToolJobSchema,
20
+ });
21
+
22
+ export type Response = z.infer<typeof ResponseSchema>;
23
+ }
@@ -0,0 +1,8 @@
1
+ export * from './image-generation.command';
2
+ export * from './find-image-generation-job-by-uuid.command';
3
+ export * from './find-image-generation-jobs.command';
4
+ export * from './set-reaction-to-image-generation-job.command';
5
+ export * from './update-image-generation-job-title.command';
6
+ export * from './delete-image-generation-job-by-uuid.command';
7
+ export * from './delete-all-image-generation-jobs.command';
8
+ export * from './get-image-generation-config.command';
@@ -0,0 +1,20 @@
1
+ import { z } from 'zod';
2
+ import { ImageGenerationJobSchema } from '../../../models';
3
+ import { USER_REACTION } from '../../../constants';
4
+
5
+ export namespace SetReactionToImageGenerationJobCommand {
6
+ export const RequestSchema = z.object({
7
+ reaction: z.nativeEnum(USER_REACTION).nullable(),
8
+ });
9
+ export type Request = z.infer<typeof RequestSchema>;
10
+
11
+ export const RequestParamsSchema = z.object({
12
+ uuid: z.string().uuid(),
13
+ });
14
+ export type RequestParams = z.infer<typeof RequestParamsSchema>;
15
+
16
+ export const ResponseSchema = z.object({
17
+ data: ImageGenerationJobSchema,
18
+ });
19
+ export type Response = z.infer<typeof ResponseSchema>;
20
+ }
@@ -0,0 +1,19 @@
1
+ import { z } from 'zod';
2
+ import { ImageGenerationJobSchema } from '../../../models';
3
+
4
+ export namespace UpdateImageGenerationJobTitleCommand {
5
+ export const RequestSchema = z.object({
6
+ title: z.string(),
7
+ });
8
+ export type Request = z.infer<typeof RequestSchema>;
9
+
10
+ export const RequestParamsSchema = z.object({
11
+ uuid: z.string().uuid(),
12
+ });
13
+ export type RequestParams = z.infer<typeof RequestParamsSchema>;
14
+
15
+ export const ResponseSchema = z.object({
16
+ data: ImageGenerationJobSchema,
17
+ });
18
+ export type Response = z.infer<typeof ResponseSchema>;
19
+ }
@@ -8,3 +8,4 @@ export * from './writer';
8
8
  export * from './image-editor';
9
9
  export * from './video-editor';
10
10
  export * from './music';
11
+ export * from './image-generation';
@@ -2495,4 +2495,70 @@ export const ERRORS = {
2495
2495
  message: 'Произошла ошибка при сохранении файлов',
2496
2496
  httpCode: 500,
2497
2497
  },
2498
+ IMAGE_GENERATION_CONFIG_ERROR: {
2499
+ code: 'A508',
2500
+ message:
2501
+ 'Произошла ошибка при получении конфигурации инструмента для генерации изображений',
2502
+ httpCode: 500,
2503
+ },
2504
+ IMAGE_GENERATION_SEND_REQUEST_ERROR: {
2505
+ code: 'A509',
2506
+ message: 'Произошла ошибка при отправке запроса на генерацию изображения',
2507
+ httpCode: 500,
2508
+ },
2509
+ IMAGE_GENERATION_FIND_JOBS_ERROR: {
2510
+ code: 'A510',
2511
+ message: 'Произошла ошибка при получении списка заданий на генерацию изображений',
2512
+ httpCode: 500,
2513
+ },
2514
+ IMAGE_GENERATION_FIND_JOB_ERROR: {
2515
+ code: 'A511',
2516
+ message: 'Произошла ошибка при получении задания на генерацию изображения',
2517
+ httpCode: 500,
2518
+ },
2519
+ IMAGE_GENERATION_RETRY_JOB_ERROR: {
2520
+ code: 'A512',
2521
+ message: 'Произошла ошибка при повторном запросе на генерацию изображения',
2522
+ httpCode: 500,
2523
+ },
2524
+ IMAGE_GENERATION_SET_REACTION_ERROR: {
2525
+ code: 'A513',
2526
+ message: 'Произошла ошибка при установке оценки задания на генерацию изображения',
2527
+ httpCode: 500,
2528
+ },
2529
+ IMAGE_GENERATION_UPDATE_TITLE_ERROR: {
2530
+ code: 'A514',
2531
+ message: 'Произошла ошибка при обновлении названия задания на генерацию изображения',
2532
+ httpCode: 500,
2533
+ },
2534
+ IMAGE_GENERATION_DELETE_JOB_ERROR: {
2535
+ code: 'A515',
2536
+ message: 'Произошла ошибка при удалении задания на генерацию изображения',
2537
+ httpCode: 500,
2538
+ },
2539
+ IMAGE_GENERATION_DELETE_ALL_JOBS_ERROR: {
2540
+ code: 'A516',
2541
+ message: 'Произошла ошибка при удалении всех заданий на генерацию изображений',
2542
+ httpCode: 500,
2543
+ },
2544
+ IMAGE_GENERATION_MODEL_NOT_FOUND: {
2545
+ code: 'A517',
2546
+ message: 'Не удалось найти указанную модель для генерации изображений',
2547
+ httpCode: 400,
2548
+ },
2549
+ IMAGE_GENERATION_MODEL_INACTIVE: {
2550
+ code: 'A518',
2551
+ message: 'Модель для генерации изображений неактивна',
2552
+ httpCode: 400,
2553
+ },
2554
+ IMAGE_GENERATION_MODEL_NOT_AVAILABLE: {
2555
+ code: 'A519',
2556
+ message: 'Модель для генерации изображений недоступна для данного пользователя',
2557
+ httpCode: 403,
2558
+ },
2559
+ IMAGE_GENERATION_MAX_SYMBOLS_EXCEEDED: {
2560
+ code: 'A520',
2561
+ message: 'Превышена максимальная количество символов',
2562
+ httpCode: 400,
2563
+ },
2498
2564
  };
@@ -0,0 +1,27 @@
1
+ import { z } from 'zod';
2
+ import { ImageGenerationModelSchema } from './image-generation-model.schema';
3
+
4
+ export const ImageGenerationVendorSchema = z.object({
5
+ uuid: z.string().uuid(),
6
+ title: z.string(),
7
+ order: z.number(),
8
+ models: z.array(ImageGenerationModelSchema),
9
+ });
10
+
11
+ export type ImageGenerationVendor = z.infer<typeof ImageGenerationVendorSchema>;
12
+
13
+ export const ImageGenerationPresetSchema = z.object({
14
+ uuid: z.string().uuid(),
15
+ title: z.string(),
16
+ sample: z.string(),
17
+ order: z.number(),
18
+ });
19
+
20
+ export type ImageGenerationPreset = z.infer<typeof ImageGenerationPresetSchema>;
21
+
22
+ export const ImageGenerationConfigSchema = z.object({
23
+ vendors: z.array(ImageGenerationVendorSchema),
24
+ presets: z.array(ImageGenerationPresetSchema),
25
+ });
26
+
27
+ export type ImageGenerationConfig = z.infer<typeof ImageGenerationConfigSchema>;
@@ -0,0 +1,28 @@
1
+ import { z } from 'zod';
2
+ import { ToolJobSchema } from '../../tool-job.schema';
3
+ import { USER_REACTION } from '../../../constants';
4
+
5
+ export const ImageGenerationJobParamsSchema = z.object({
6
+ aspectRatio: z.string().optional(),
7
+ attachedImages: z.string().array().optional(),
8
+ });
9
+
10
+ export type ImageGenerationJobParams = z.infer<typeof ImageGenerationJobParamsSchema>;
11
+
12
+ export const ImageGenerationJobSchema = ToolJobSchema.extend({
13
+ title: z.string(),
14
+ prompt: z.string(),
15
+ reaction: z.nativeEnum(USER_REACTION).nullable(),
16
+ images: z
17
+ .array(
18
+ z.object({
19
+ uuid: z.string(),
20
+ url: z.string(),
21
+ }),
22
+ )
23
+ .nullable(),
24
+ params: ImageGenerationJobParamsSchema.optional(),
25
+ modelId: z.string(),
26
+ });
27
+
28
+ export type ImageGenerationJob = z.infer<typeof ImageGenerationJobSchema>;
@@ -0,0 +1,16 @@
1
+ import { z } from 'zod';
2
+ import { UnlockedBySchema } from '../../unlocked-by-subscription.schema';
3
+
4
+ export const ImageGenerationModelSchema = z.object({
5
+ uuid: z.string().uuid(),
6
+ title: z.string(),
7
+ description: z.string(),
8
+ order: z.number(),
9
+ status: z.string(),
10
+ price: z.number(),
11
+ maxPromptLength: z.number(),
12
+ unlockedBy: UnlockedBySchema.nullable(),
13
+ canUse: z.boolean(),
14
+ });
15
+
16
+ export type ImageGenerationModel = z.infer<typeof ImageGenerationModelSchema>;
@@ -0,0 +1,3 @@
1
+ export * from './image-generation-config.schema';
2
+ export * from './image-generation-job.schema';
3
+ export * from './image-generation-model.schema';
@@ -8,3 +8,4 @@ export * from './writer';
8
8
  export * from './image-editor';
9
9
  export * from './video-editor';
10
10
  export * from './music';
11
+ export * from './image-generation';
@@ -6,6 +6,7 @@ export const VideoEditorJobSchema = ToolJobSchema.extend({
6
6
  title: z.string(),
7
7
  prompt: z.string(),
8
8
  reaction: z.nativeEnum(USER_REACTION).nullable(),
9
+ inputVideoId: z.string().nullable(),
9
10
  inputVideoUrl: z.string(),
10
11
  outputVideoUrl: z.string().nullable(),
11
12
  modelId: z.string(),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@purpleschool/gptbot",
3
- "version": "0.8.18",
3
+ "version": "0.8.20",
4
4
  "description": "",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",