@purpleschool/gptbot 0.14.10-stage-2 → 0.14.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/api/controllers/http/canvas-cron.ts +5 -0
- package/api/controllers/http/files.ts +1 -0
- package/api/controllers/http/index.ts +1 -0
- package/api/routes.ts +3 -0
- package/build/api/controllers/http/canvas-cron.js +7 -0
- package/build/api/controllers/http/files.js +1 -0
- package/build/api/controllers/http/index.js +1 -0
- package/build/api/routes.js +3 -0
- package/build/commands/agents/agent-dialog/send-agent-dialog-admin-reply.command.js +7 -2
- package/build/commands/ai-studio/canvas/index.js +1 -0
- package/build/commands/ai-studio/canvas/recover-stale-nodes.command.js +14 -0
- package/build/commands/tools/tts/tts.command.js +5 -0
- package/build/constants/ai-model/enums/ai-model-tag.enum.js +7 -0
- package/build/constants/ai-model/enums/index.js +1 -0
- package/build/constants/subscription/free-subscription.constant.js +4 -4
- package/build/models/ai-model.schema.js +4 -0
- package/build/models/canvas-node.schema.js +1 -0
- package/build/models/tools/image-generation/image-generation-model.schema.js +2 -0
- package/build/models/tools/video/video-model.schema.js +2 -0
- package/commands/agents/agent-dialog/send-agent-dialog-admin-reply.command.ts +10 -5
- package/commands/ai-studio/canvas/index.ts +1 -0
- package/commands/ai-studio/canvas/recover-stale-nodes.command.ts +13 -0
- package/commands/tools/tts/tts.command.ts +6 -0
- package/constants/ai-model/enums/ai-model-tag.enum.ts +3 -0
- package/constants/ai-model/enums/index.ts +1 -0
- package/constants/subscription/free-subscription.constant.ts +4 -4
- package/models/ai-model.schema.ts +5 -1
- package/models/canvas-node.schema.ts +1 -0
- package/models/tools/image-generation/image-generation-model.schema.ts +2 -0
- package/models/tools/video/video-model.schema.ts +2 -0
- package/package.json +1 -1
|
@@ -4,6 +4,7 @@ export const FILE_PUBLIC_CONTROLLER = 'public/file' as const;
|
|
|
4
4
|
export const FILE_ROUTES = {
|
|
5
5
|
DELETE: (uuid: string) => `${uuid}`,
|
|
6
6
|
UPLOAD: 'upload',
|
|
7
|
+
UPLOAD_PUBLIC: 'upload-public',
|
|
7
8
|
UPLOAD_FILE: 'upload-file',
|
|
8
9
|
UPLOAD_IMAGE: 'upload-image',
|
|
9
10
|
CALCULATE_TEXT_FILE_COST: (uuid: string) => `cost/text/${uuid}`,
|
package/api/routes.ts
CHANGED
|
@@ -633,6 +633,9 @@ export const REST_API = {
|
|
|
633
633
|
DELETE: (uuid: string) =>
|
|
634
634
|
`${ROOT}/${CONTROLLERS.CANVAS_PRIVATE_CONTROLLER}/${CONTROLLERS.CANVAS_ROUTES.DELETE(uuid)}`,
|
|
635
635
|
},
|
|
636
|
+
CANVAS_CRON: {
|
|
637
|
+
RECOVER_STALE_NODES: `${ROOT}/${CONTROLLERS.CANVAS_CRON_PRIVATE_CONTROLLER}/${CONTROLLERS.CANVAS_CRON_ROUTES.RECOVER_STALE_NODES}`,
|
|
638
|
+
},
|
|
636
639
|
USER_TO_PRODUCT: {
|
|
637
640
|
FIND_BY_UUID: (uuid: string) =>
|
|
638
641
|
`${ROOT}/${CONTROLLERS.USER_TO_PRODUCT_CONTROLLER}/${CONTROLLERS.USER_TO_PRODUCT_ROUTES.FIND_BY_UUID(uuid)}`,
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CANVAS_CRON_ROUTES = exports.CANVAS_CRON_PRIVATE_CONTROLLER = void 0;
|
|
4
|
+
exports.CANVAS_CRON_PRIVATE_CONTROLLER = 'private/canvas/cron';
|
|
5
|
+
exports.CANVAS_CRON_ROUTES = {
|
|
6
|
+
RECOVER_STALE_NODES: 'recover-stale-nodes',
|
|
7
|
+
};
|
|
@@ -6,6 +6,7 @@ exports.FILE_PUBLIC_CONTROLLER = 'public/file';
|
|
|
6
6
|
exports.FILE_ROUTES = {
|
|
7
7
|
DELETE: (uuid) => `${uuid}`,
|
|
8
8
|
UPLOAD: 'upload',
|
|
9
|
+
UPLOAD_PUBLIC: 'upload-public',
|
|
9
10
|
UPLOAD_FILE: 'upload-file',
|
|
10
11
|
UPLOAD_IMAGE: 'upload-image',
|
|
11
12
|
CALCULATE_TEXT_FILE_COST: (uuid) => `cost/text/${uuid}`,
|
|
@@ -22,6 +22,7 @@ __exportStar(require("./ai-vendor"), exports);
|
|
|
22
22
|
__exportStar(require("./auth"), exports);
|
|
23
23
|
__exportStar(require("./blog"), exports);
|
|
24
24
|
__exportStar(require("./canvas"), exports);
|
|
25
|
+
__exportStar(require("./canvas-cron"), exports);
|
|
25
26
|
__exportStar(require("./canvas-node-definition"), exports);
|
|
26
27
|
__exportStar(require("./canvas-node"), exports);
|
|
27
28
|
__exportStar(require("./canvas-edge"), exports);
|
package/build/api/routes.js
CHANGED
|
@@ -488,6 +488,9 @@ exports.REST_API = {
|
|
|
488
488
|
UPDATE: (uuid) => `${exports.ROOT}/${CONTROLLERS.CANVAS_PRIVATE_CONTROLLER}/${CONTROLLERS.CANVAS_ROUTES.UPDATE(uuid)}`,
|
|
489
489
|
DELETE: (uuid) => `${exports.ROOT}/${CONTROLLERS.CANVAS_PRIVATE_CONTROLLER}/${CONTROLLERS.CANVAS_ROUTES.DELETE(uuid)}`,
|
|
490
490
|
},
|
|
491
|
+
CANVAS_CRON: {
|
|
492
|
+
RECOVER_STALE_NODES: `${exports.ROOT}/${CONTROLLERS.CANVAS_CRON_PRIVATE_CONTROLLER}/${CONTROLLERS.CANVAS_CRON_ROUTES.RECOVER_STALE_NODES}`,
|
|
493
|
+
},
|
|
491
494
|
USER_TO_PRODUCT: {
|
|
492
495
|
FIND_BY_UUID: (uuid) => `${exports.ROOT}/${CONTROLLERS.USER_TO_PRODUCT_CONTROLLER}/${CONTROLLERS.USER_TO_PRODUCT_ROUTES.FIND_BY_UUID(uuid)}`,
|
|
493
496
|
UPDATE: (uuid) => `${exports.ROOT}/${CONTROLLERS.USER_TO_PRODUCT_CONTROLLER}/${CONTROLLERS.USER_TO_PRODUCT_ROUTES.UPDATE(uuid)}`,
|
|
@@ -8,10 +8,15 @@ var SendAgentDialogAdminReplyCommand;
|
|
|
8
8
|
dialogId: zod_1.z.string().uuid(),
|
|
9
9
|
});
|
|
10
10
|
SendAgentDialogAdminReplyCommand.RequestQuerySchema = zod_1.z.object({});
|
|
11
|
-
SendAgentDialogAdminReplyCommand.RequestBodySchema = zod_1.z
|
|
11
|
+
SendAgentDialogAdminReplyCommand.RequestBodySchema = zod_1.z
|
|
12
|
+
.object({
|
|
12
13
|
text: zod_1.z.string().optional(),
|
|
13
14
|
images: zod_1.z.array(zod_1.z.string()).default([]),
|
|
14
|
-
|
|
15
|
+
fileIds: zod_1.z.array(zod_1.z.string().uuid()).default([]),
|
|
16
|
+
})
|
|
17
|
+
.refine((data) => data.text || data.images.length > 0 || data.fileIds.length > 0, {
|
|
18
|
+
message: 'Message must contain text, images, or files',
|
|
19
|
+
path: ['text'],
|
|
15
20
|
});
|
|
16
21
|
SendAgentDialogAdminReplyCommand.ResponseSchema = zod_1.z.object({
|
|
17
22
|
data: zod_1.z.object({
|
|
@@ -24,3 +24,4 @@ __exportStar(require("./save-canvas.command"), exports);
|
|
|
24
24
|
__exportStar(require("./update-canvas.command"), exports);
|
|
25
25
|
__exportStar(require("./execute-graph-by-node.command"), exports);
|
|
26
26
|
__exportStar(require("./get-price.query"), exports);
|
|
27
|
+
__exportStar(require("./recover-stale-nodes.command"), exports);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RecoverStaleNodesCommand = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
var RecoverStaleNodesCommand;
|
|
6
|
+
(function (RecoverStaleNodesCommand) {
|
|
7
|
+
RecoverStaleNodesCommand.RequestSchema = zod_1.z
|
|
8
|
+
.object({
|
|
9
|
+
staleMinutes: zod_1.z.number().int().positive().default(5),
|
|
10
|
+
maxStaleMinutes: zod_1.z.number().int().positive().default(60),
|
|
11
|
+
limit: zod_1.z.number().int().positive().default(50),
|
|
12
|
+
})
|
|
13
|
+
.default({});
|
|
14
|
+
})(RecoverStaleNodesCommand || (exports.RecoverStaleNodesCommand = RecoverStaleNodesCommand = {}));
|
|
@@ -3,6 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.TTSCommand = void 0;
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
5
|
const models_1 = require("../../../models");
|
|
6
|
+
const TTSReferenceSchema = zod_1.z.object({
|
|
7
|
+
audioUrl: zod_1.z.string().url(),
|
|
8
|
+
text: zod_1.z.string(),
|
|
9
|
+
});
|
|
6
10
|
var TTSCommand;
|
|
7
11
|
(function (TTSCommand) {
|
|
8
12
|
TTSCommand.RequestSchema = zod_1.z.object({
|
|
@@ -19,6 +23,7 @@ var TTSCommand;
|
|
|
19
23
|
})
|
|
20
24
|
.optional()
|
|
21
25
|
.default({}),
|
|
26
|
+
references: zod_1.z.array(TTSReferenceSchema).optional().default([]),
|
|
22
27
|
});
|
|
23
28
|
TTSCommand.ResponseSchema = zod_1.z.object({
|
|
24
29
|
data: models_1.ToolJobSchema,
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AI_MODEL_TAG = void 0;
|
|
4
|
+
var AI_MODEL_TAG;
|
|
5
|
+
(function (AI_MODEL_TAG) {
|
|
6
|
+
AI_MODEL_TAG["RECOMMENDED"] = "recommended";
|
|
7
|
+
})(AI_MODEL_TAG || (exports.AI_MODEL_TAG = AI_MODEL_TAG = {}));
|
|
@@ -18,3 +18,4 @@ __exportStar(require("./ai-model-config-selector-type.enum"), exports);
|
|
|
18
18
|
__exportStar(require("./ai-model-feature.enum"), exports);
|
|
19
19
|
__exportStar(require("./ai-model-status.enum"), exports);
|
|
20
20
|
__exportStar(require("./ai-model-strategy.enum"), exports);
|
|
21
|
+
__exportStar(require("./ai-model-tag.enum"), exports);
|
|
@@ -16,12 +16,12 @@ exports.FREE_SUBSCRIPTION_DATA = {
|
|
|
16
16
|
plan: enums_1.SUBSCRIPTION_PLAN.mock,
|
|
17
17
|
icons: {
|
|
18
18
|
light: {
|
|
19
|
-
svg: 'https://rugpt.
|
|
20
|
-
png: 'https://rugpt.
|
|
19
|
+
svg: 'https://rugpt.storage.rugpt.io/images/images/81b60ce5-b687-43ff-85dd-e4e47c8e81e9.svg',
|
|
20
|
+
png: 'https://rugpt.storage.rugpt.io/images/images/e1bb1acd-a387-4596-8fd5-0159f692ff11.png',
|
|
21
21
|
},
|
|
22
22
|
dark: {
|
|
23
|
-
svg: 'https://rugpt.
|
|
24
|
-
png: 'https://rugpt.
|
|
23
|
+
svg: 'https://rugpt.storage.rugpt.io/images/images/ac095d48-a66b-4862-82c7-eb120b5bd467.svg',
|
|
24
|
+
png: 'https://rugpt.storage.rugpt.io/images/images/e2208949-a73a-4137-b5bd-760599a70691.png',
|
|
25
25
|
},
|
|
26
26
|
},
|
|
27
27
|
interval: '',
|
|
@@ -13,6 +13,8 @@ exports.AiModelSchema = zod_1.z.object({
|
|
|
13
13
|
tokenMultiplicator: zod_1.z.number(),
|
|
14
14
|
freeTokenMultiplicator: zod_1.z.number(),
|
|
15
15
|
order: zod_1.z.number(),
|
|
16
|
+
tags: zod_1.z.array(zod_1.z.nativeEnum(constants_1.AI_MODEL_TAG)),
|
|
17
|
+
hint: zod_1.z.string().nullable(),
|
|
16
18
|
canUse: zod_1.z.optional(zod_1.z.boolean()),
|
|
17
19
|
status: zod_1.z.nativeEnum(constants_1.AI_MODEL_STATUS),
|
|
18
20
|
features: zod_1.z.array(zod_1.z.nativeEnum(constants_1.AI_MODEL_FEATURE)),
|
|
@@ -33,6 +35,8 @@ exports.AiModelSchema = zod_1.z.object({
|
|
|
33
35
|
updatedAt: zod_1.z.date(),
|
|
34
36
|
});
|
|
35
37
|
exports.CreateAiModelSchema = exports.AiModelSchema.extend({
|
|
38
|
+
tags: zod_1.z.array(zod_1.z.nativeEnum(constants_1.AI_MODEL_TAG)).default([]),
|
|
39
|
+
hint: zod_1.z.string().nullable().default(null),
|
|
36
40
|
model: zod_1.z.string(),
|
|
37
41
|
maxInputTokens: zod_1.z.number(),
|
|
38
42
|
});
|
|
@@ -212,6 +212,7 @@ exports.CanvasNodeBaseSchema = zod_1.z.object({
|
|
|
212
212
|
status: zod_1.z.nativeEnum(constants_1.NODE_RUN_STATUS),
|
|
213
213
|
toolJobId: zod_1.z.string().uuid().nullable(),
|
|
214
214
|
params: zod_1.z.unknown().nullable(),
|
|
215
|
+
isParamsChanged: zod_1.z.boolean().optional(),
|
|
215
216
|
output: zod_1.z.unknown().nullable(),
|
|
216
217
|
error: exports.CanvasNodeErrorSchema.nullable(),
|
|
217
218
|
createdAt: zod_1.z.date(),
|
|
@@ -31,6 +31,8 @@ exports.ImageGenerationModelSchema = zod_1.z.object({
|
|
|
31
31
|
uuid: zod_1.z.string().uuid(),
|
|
32
32
|
title: zod_1.z.string(),
|
|
33
33
|
description: zod_1.z.string(),
|
|
34
|
+
tags: zod_1.z.array(zod_1.z.string()),
|
|
35
|
+
hint: zod_1.z.string().nullable(),
|
|
34
36
|
order: zod_1.z.number(),
|
|
35
37
|
status: zod_1.z.string(),
|
|
36
38
|
price: zod_1.z.number(),
|
|
@@ -75,6 +75,8 @@ exports.VideoModelSchema = zod_1.z.object({
|
|
|
75
75
|
uuid: zod_1.z.string(),
|
|
76
76
|
title: zod_1.z.string(),
|
|
77
77
|
description: zod_1.z.string(),
|
|
78
|
+
tags: zod_1.z.array(zod_1.z.string()),
|
|
79
|
+
hint: zod_1.z.string().nullable(),
|
|
78
80
|
pricePerSecond: zod_1.z.number(),
|
|
79
81
|
order: zod_1.z.number(),
|
|
80
82
|
isNew: zod_1.z.boolean(),
|
|
@@ -9,11 +9,16 @@ export namespace SendAgentDialogAdminReplyCommand {
|
|
|
9
9
|
export const RequestQuerySchema = z.object({});
|
|
10
10
|
export type RequestQuery = z.infer<typeof RequestQuerySchema>;
|
|
11
11
|
|
|
12
|
-
export const RequestBodySchema = z
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
12
|
+
export const RequestBodySchema = z
|
|
13
|
+
.object({
|
|
14
|
+
text: z.string().optional(),
|
|
15
|
+
images: z.array(z.string()).default([]),
|
|
16
|
+
fileIds: z.array(z.string().uuid()).default([]),
|
|
17
|
+
})
|
|
18
|
+
.refine((data) => data.text || data.images.length > 0 || data.fileIds.length > 0, {
|
|
19
|
+
message: 'Message must contain text, images, or files',
|
|
20
|
+
path: ['text'],
|
|
21
|
+
});
|
|
17
22
|
export type RequestBody = z.infer<typeof RequestBodySchema>;
|
|
18
23
|
|
|
19
24
|
export const ResponseSchema = z.object({
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
|
|
3
|
+
export namespace RecoverStaleNodesCommand {
|
|
4
|
+
export const RequestSchema = z
|
|
5
|
+
.object({
|
|
6
|
+
staleMinutes: z.number().int().positive().default(5),
|
|
7
|
+
maxStaleMinutes: z.number().int().positive().default(60),
|
|
8
|
+
limit: z.number().int().positive().default(50),
|
|
9
|
+
})
|
|
10
|
+
.default({});
|
|
11
|
+
|
|
12
|
+
export type Request = z.infer<typeof RequestSchema>;
|
|
13
|
+
}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { ToolJobSchema } from '../../../models';
|
|
3
3
|
|
|
4
|
+
const TTSReferenceSchema = z.object({
|
|
5
|
+
audioUrl: z.string().url(),
|
|
6
|
+
text: z.string(),
|
|
7
|
+
});
|
|
8
|
+
|
|
4
9
|
export namespace TTSCommand {
|
|
5
10
|
export const RequestSchema = z.object({
|
|
6
11
|
modelId: z.string().uuid(),
|
|
@@ -16,6 +21,7 @@ export namespace TTSCommand {
|
|
|
16
21
|
})
|
|
17
22
|
.optional()
|
|
18
23
|
.default({}),
|
|
24
|
+
references: z.array(TTSReferenceSchema).optional().default([]),
|
|
19
25
|
});
|
|
20
26
|
|
|
21
27
|
export type Request = z.infer<typeof RequestSchema>;
|
|
@@ -19,12 +19,12 @@ export const FREE_SUBSCRIPTION_DATA = {
|
|
|
19
19
|
plan: SUBSCRIPTION_PLAN.mock,
|
|
20
20
|
icons: {
|
|
21
21
|
light: {
|
|
22
|
-
svg: 'https://rugpt.
|
|
23
|
-
png: 'https://rugpt.
|
|
22
|
+
svg: 'https://rugpt.storage.rugpt.io/images/images/81b60ce5-b687-43ff-85dd-e4e47c8e81e9.svg',
|
|
23
|
+
png: 'https://rugpt.storage.rugpt.io/images/images/e1bb1acd-a387-4596-8fd5-0159f692ff11.png',
|
|
24
24
|
},
|
|
25
25
|
dark: {
|
|
26
|
-
svg: 'https://rugpt.
|
|
27
|
-
png: 'https://rugpt.
|
|
26
|
+
svg: 'https://rugpt.storage.rugpt.io/images/images/ac095d48-a66b-4862-82c7-eb120b5bd467.svg',
|
|
27
|
+
png: 'https://rugpt.storage.rugpt.io/images/images/e2208949-a73a-4137-b5bd-760599a70691.png',
|
|
28
28
|
},
|
|
29
29
|
},
|
|
30
30
|
interval: '',
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { AI_MODEL_FEATURE, AI_MODEL_STATUS } from '../constants';
|
|
2
|
+
import { AI_MODEL_FEATURE, AI_MODEL_STATUS, AI_MODEL_TAG } from '../constants';
|
|
3
3
|
import { AiModelConfigSchema } from './ai-model-config.schema';
|
|
4
4
|
|
|
5
5
|
export const AiModelSchema = z.object({
|
|
@@ -11,6 +11,8 @@ export const AiModelSchema = z.object({
|
|
|
11
11
|
tokenMultiplicator: z.number(),
|
|
12
12
|
freeTokenMultiplicator: z.number(),
|
|
13
13
|
order: z.number(),
|
|
14
|
+
tags: z.array(z.nativeEnum(AI_MODEL_TAG)),
|
|
15
|
+
hint: z.string().nullable(),
|
|
14
16
|
canUse: z.optional(z.boolean()),
|
|
15
17
|
status: z.nativeEnum(AI_MODEL_STATUS),
|
|
16
18
|
features: z.array(z.nativeEnum(AI_MODEL_FEATURE)),
|
|
@@ -34,6 +36,8 @@ export const AiModelSchema = z.object({
|
|
|
34
36
|
export type AiModel = z.infer<typeof AiModelSchema>;
|
|
35
37
|
|
|
36
38
|
export const CreateAiModelSchema = AiModelSchema.extend({
|
|
39
|
+
tags: z.array(z.nativeEnum(AI_MODEL_TAG)).default([]),
|
|
40
|
+
hint: z.string().nullable().default(null),
|
|
37
41
|
model: z.string(),
|
|
38
42
|
maxInputTokens: z.number(),
|
|
39
43
|
});
|
|
@@ -332,6 +332,7 @@ export const CanvasNodeBaseSchema = z.object({
|
|
|
332
332
|
status: z.nativeEnum(NODE_RUN_STATUS),
|
|
333
333
|
toolJobId: z.string().uuid().nullable(),
|
|
334
334
|
params: z.unknown().nullable(),
|
|
335
|
+
isParamsChanged: z.boolean().optional(),
|
|
335
336
|
output: z.unknown().nullable(),
|
|
336
337
|
error: CanvasNodeErrorSchema.nullable(),
|
|
337
338
|
createdAt: z.date(),
|