@purpleschool/gptbot 0.7.8 → 0.7.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.
- package/build/commands/file/upload.command.js +3 -0
- package/build/commands/subscription/get-subscriptions-summary.command.js +0 -1
- package/build/constants/ai-model/enums/ai-model-feature.enum.js +1 -0
- package/build/constants/errors/errors.js +17 -2
- package/build/constants/file/enums/file-type.enum.js +1 -0
- package/build/constants/file/file.constants.js +31 -1
- package/build/constants/subscription/enums/subscription-feature-type.enum.js +1 -0
- package/build/models/file.schema.js +1 -0
- package/build/models/subscription-feature.schema.js +7 -1
- package/commands/file/upload.command.ts +6 -0
- package/commands/subscription/get-subscriptions-summary.command.ts +0 -1
- package/constants/ai-model/enums/ai-model-feature.enum.ts +1 -0
- package/constants/errors/errors.ts +17 -2
- package/constants/file/enums/file-type.enum.ts +1 -0
- package/constants/file/file.constants.ts +30 -0
- package/constants/subscription/enums/subscription-feature-type.enum.ts +1 -0
- package/models/file.schema.ts +1 -0
- package/models/subscription-feature.schema.ts +8 -0
- package/package.json +1 -1
|
@@ -5,6 +5,9 @@ const models_1 = require("../../models");
|
|
|
5
5
|
const zod_1 = require("zod");
|
|
6
6
|
var UploadFileCommand;
|
|
7
7
|
(function (UploadFileCommand) {
|
|
8
|
+
UploadFileCommand.RequestSchema = zod_1.z.object({
|
|
9
|
+
model: zod_1.z.string().optional(),
|
|
10
|
+
});
|
|
8
11
|
UploadFileCommand.ResponseSchema = zod_1.z.object({
|
|
9
12
|
data: models_1.FileSchema,
|
|
10
13
|
});
|
|
@@ -9,6 +9,5 @@ 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(),
|
|
13
12
|
});
|
|
14
13
|
})(GetSubscriptionsSummaryCommand || (exports.GetSubscriptionsSummaryCommand = GetSubscriptionsSummaryCommand = {}));
|
|
@@ -5,6 +5,7 @@ var AI_MODEL_FEATURE;
|
|
|
5
5
|
(function (AI_MODEL_FEATURE) {
|
|
6
6
|
AI_MODEL_FEATURE["IMAGE_ATTACHMENT"] = "image_attachment";
|
|
7
7
|
AI_MODEL_FEATURE["AUDIO_ATTACHMENT"] = "audio_attachment";
|
|
8
|
+
AI_MODEL_FEATURE["TEXT_ATTACHMENT"] = "text_attachment";
|
|
8
9
|
AI_MODEL_FEATURE["WEB_SEARCH"] = "web_search";
|
|
9
10
|
AI_MODEL_FEATURE["IMAGE_EDITING"] = "image_editing";
|
|
10
11
|
})(AI_MODEL_FEATURE || (exports.AI_MODEL_FEATURE = AI_MODEL_FEATURE = {}));
|
|
@@ -1248,9 +1248,9 @@ exports.ERRORS = {
|
|
|
1248
1248
|
message: 'Произошла ошибка при удалении сообщения',
|
|
1249
1249
|
httpCode: 500,
|
|
1250
1250
|
},
|
|
1251
|
-
|
|
1251
|
+
CHAT_FILE_ATTACHMENT_FEATURE_MISSING: {
|
|
1252
1252
|
code: 'A275',
|
|
1253
|
-
message: '
|
|
1253
|
+
message: 'Функции вложения файлов не указаны в запросе',
|
|
1254
1254
|
httpCode: 400,
|
|
1255
1255
|
},
|
|
1256
1256
|
CHAT_IMAGE_ATTACHMENT_AND_WEB_SEARCH_CONFLICT: {
|
|
@@ -1562,4 +1562,19 @@ exports.ERRORS = {
|
|
|
1562
1562
|
message: 'Выбрана Неверная продолжительность видео',
|
|
1563
1563
|
httpCode: 400,
|
|
1564
1564
|
},
|
|
1565
|
+
FILE_UPLOAD_NO_MODEL: {
|
|
1566
|
+
code: 'A334',
|
|
1567
|
+
message: 'В запросе нет модели для обработки текстового файла',
|
|
1568
|
+
httpCode: 400,
|
|
1569
|
+
},
|
|
1570
|
+
FILE_VECTOR_CHUNKS_CREATE_ERROR: {
|
|
1571
|
+
code: 'A335',
|
|
1572
|
+
message: 'Ошибка при сохранении векторных чанков файлов',
|
|
1573
|
+
httpCode: 500,
|
|
1574
|
+
},
|
|
1575
|
+
FILE_VECTOR_SEARCH_ERROR: {
|
|
1576
|
+
code: 'A336',
|
|
1577
|
+
message: 'Ошибка при поиске по векторному хранилищу',
|
|
1578
|
+
httpCode: 500,
|
|
1579
|
+
},
|
|
1565
1580
|
};
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DELETE_UNUSED_FILES_AFTER_HOURS = exports.SUPPORTED_FILES = exports.MAX_AUDIO_UPLOAD_SIZE = exports.MAX_IMAGE_UPLOAD_SIZE = void 0;
|
|
3
|
+
exports.DELETE_UNUSED_FILES_AFTER_HOURS = exports.SUPPORTED_FILES = exports.MAX_TEXT_UPLOAD_SIZE = exports.MAX_AUDIO_UPLOAD_SIZE = exports.MAX_IMAGE_UPLOAD_SIZE = void 0;
|
|
4
4
|
const enums_1 = require("./enums");
|
|
5
5
|
exports.MAX_IMAGE_UPLOAD_SIZE = 5 * 1024 * 1024; // 5 MB
|
|
6
6
|
exports.MAX_AUDIO_UPLOAD_SIZE = 500 * 1024 * 1024; // 500 MB
|
|
7
|
+
exports.MAX_TEXT_UPLOAD_SIZE = 10 * 1024 * 1024; // 10 MB
|
|
7
8
|
exports.SUPPORTED_FILES = new Map([
|
|
8
9
|
['image/jpeg', { type: enums_1.FILE_TYPE.IMAGE, size: exports.MAX_IMAGE_UPLOAD_SIZE }],
|
|
9
10
|
['image/png', { type: enums_1.FILE_TYPE.IMAGE, size: exports.MAX_IMAGE_UPLOAD_SIZE }],
|
|
@@ -13,5 +14,34 @@ exports.SUPPORTED_FILES = new Map([
|
|
|
13
14
|
['audio/wave', { type: enums_1.FILE_TYPE.AUDIO, size: exports.MAX_AUDIO_UPLOAD_SIZE }],
|
|
14
15
|
['audio/wav', { type: enums_1.FILE_TYPE.AUDIO, size: exports.MAX_AUDIO_UPLOAD_SIZE }],
|
|
15
16
|
['audio/x-wav', { type: enums_1.FILE_TYPE.AUDIO, size: exports.MAX_AUDIO_UPLOAD_SIZE }],
|
|
17
|
+
['text/plain', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
18
|
+
['text/markdown', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
19
|
+
['text/csv', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
20
|
+
['text/tab-separated-values', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
21
|
+
['application/json', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
22
|
+
['application/xml', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
23
|
+
['text/xml', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
24
|
+
['application/x-yaml', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
25
|
+
['text/yaml', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
26
|
+
['application/javascript', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
27
|
+
['application/typescript', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
28
|
+
['text/javascript', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
29
|
+
['text/typescript', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
30
|
+
['text/html', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
31
|
+
['text/css', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
32
|
+
['application/x-sh', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
33
|
+
['text/x-python', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
34
|
+
['text/x-c', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
35
|
+
['text/x-c++', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
36
|
+
['text/x-java-source', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
37
|
+
['text/x-shellscript', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
38
|
+
['text/x-php', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
39
|
+
['text/x-ruby', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
40
|
+
['text/x-go', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
41
|
+
['text/x-scss', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
42
|
+
['text/x-yaml', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
43
|
+
['text/x-ini', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
44
|
+
['text/x-properties', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
45
|
+
['text/x-config', { type: enums_1.FILE_TYPE.TEXT, size: exports.MAX_TEXT_UPLOAD_SIZE }],
|
|
16
46
|
]);
|
|
17
47
|
exports.DELETE_UNUSED_FILES_AFTER_HOURS = 12;
|
|
@@ -16,6 +16,7 @@ var SUBSCRIPTION_FEATURE_TYPE;
|
|
|
16
16
|
SUBSCRIPTION_FEATURE_TYPE["STT_QUOTA"] = "stt_quota";
|
|
17
17
|
SUBSCRIPTION_FEATURE_TYPE["VIDEO_QUOTA"] = "video_quota";
|
|
18
18
|
SUBSCRIPTION_FEATURE_TYPE["VIDEO_MODEL_ACCESS"] = "video_model_access";
|
|
19
|
+
SUBSCRIPTION_FEATURE_TYPE["EXTENDED_CONTEXT"] = "extended_context";
|
|
19
20
|
})(SUBSCRIPTION_FEATURE_TYPE || (exports.SUBSCRIPTION_FEATURE_TYPE = SUBSCRIPTION_FEATURE_TYPE = {}));
|
|
20
21
|
var SUBSCRIPTION_FEATURE_KIND;
|
|
21
22
|
(function (SUBSCRIPTION_FEATURE_KIND) {
|
|
@@ -13,6 +13,7 @@ exports.FileSchema = zod_1.z.object({
|
|
|
13
13
|
type: zod_1.z.nativeEnum(constants_1.FILE_TYPE),
|
|
14
14
|
duration: zod_1.z.number().nullable(),
|
|
15
15
|
attachmentCost: zod_1.z.number(),
|
|
16
|
+
contentLength: zod_1.z.number().nullable(),
|
|
16
17
|
createdAt: zod_1.z.date(),
|
|
17
18
|
updatedAt: zod_1.z.date(),
|
|
18
19
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SubscriptionFeatureSchema = exports.VideoModelAccessFeatureSchema = exports.VideoQuotaFeatureSchema = exports.STTQuotaFeatureSchema = exports.STTModelAccessFeatureSchema = exports.TTSQuotaFeatureSchema = exports.ImageGenerationQuotaFeatureSchema = exports.TtsModelAccessFeatureSchema = exports.AdvancedToolsAccessFeatureSchema = exports.WebSearchFeatureSchema = exports.MaxInputLengthFeatureSchema = exports.RequestsQuotaFeatureSchema = exports.AiModelAccessFeatureSchema = exports.SubscriptionFeatureBaseSchema = void 0;
|
|
3
|
+
exports.SubscriptionFeatureSchema = exports.VideoModelAccessFeatureSchema = exports.VideoQuotaFeatureSchema = exports.STTQuotaFeatureSchema = exports.STTModelAccessFeatureSchema = exports.TTSQuotaFeatureSchema = exports.ImageGenerationQuotaFeatureSchema = exports.TtsModelAccessFeatureSchema = exports.AdvancedToolsAccessFeatureSchema = exports.WebSearchFeatureSchema = exports.ExtendedContextFeatureSchema = exports.MaxInputLengthFeatureSchema = exports.RequestsQuotaFeatureSchema = exports.AiModelAccessFeatureSchema = exports.SubscriptionFeatureBaseSchema = void 0;
|
|
4
4
|
const constants_1 = require("../constants");
|
|
5
5
|
const zod_1 = require("zod");
|
|
6
6
|
exports.SubscriptionFeatureBaseSchema = zod_1.z.object({
|
|
@@ -29,6 +29,11 @@ exports.MaxInputLengthFeatureSchema = exports.SubscriptionFeatureBaseSchema.exte
|
|
|
29
29
|
tooltip: zod_1.z.string(),
|
|
30
30
|
value: zod_1.z.number(),
|
|
31
31
|
});
|
|
32
|
+
exports.ExtendedContextFeatureSchema = exports.SubscriptionFeatureBaseSchema.extend({
|
|
33
|
+
type: zod_1.z.literal(constants_1.SUBSCRIPTION_FEATURE_TYPE.EXTENDED_CONTEXT),
|
|
34
|
+
kind: zod_1.z.literal(constants_1.SUBSCRIPTION_FEATURE_KIND.TEXT),
|
|
35
|
+
isAvailable: zod_1.z.boolean(),
|
|
36
|
+
});
|
|
32
37
|
exports.WebSearchFeatureSchema = exports.SubscriptionFeatureBaseSchema.extend({
|
|
33
38
|
kind: zod_1.z.literal(constants_1.SUBSCRIPTION_FEATURE_KIND.TEXT),
|
|
34
39
|
type: zod_1.z.literal(constants_1.SUBSCRIPTION_FEATURE_TYPE.WEB_SEARCH),
|
|
@@ -90,4 +95,5 @@ exports.SubscriptionFeatureSchema = zod_1.z.union([
|
|
|
90
95
|
exports.STTQuotaFeatureSchema,
|
|
91
96
|
exports.VideoQuotaFeatureSchema,
|
|
92
97
|
exports.VideoModelAccessFeatureSchema,
|
|
98
|
+
exports.ExtendedContextFeatureSchema,
|
|
93
99
|
]);
|
|
@@ -2,6 +2,12 @@ import { FileSchema } from '../../models';
|
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
|
|
4
4
|
export namespace UploadFileCommand {
|
|
5
|
+
export const RequestSchema = z.object({
|
|
6
|
+
model: z.string().optional(),
|
|
7
|
+
});
|
|
8
|
+
|
|
9
|
+
export type Request = z.infer<typeof RequestSchema>;
|
|
10
|
+
|
|
5
11
|
export const ResponseSchema = z.object({
|
|
6
12
|
data: FileSchema,
|
|
7
13
|
});
|
|
@@ -10,7 +10,6 @@ export namespace GetSubscriptionsSummaryCommand {
|
|
|
10
10
|
features: z.array(SubscriptionFeatureSchema),
|
|
11
11
|
subscriptions: z.array(UserToSubscriptionWithSubscriptionSchema),
|
|
12
12
|
products: z.array(UserToProductWithProductSchema),
|
|
13
|
-
latest: UserToSubscriptionWithSubscriptionSchema.nullable(),
|
|
14
13
|
});
|
|
15
14
|
|
|
16
15
|
export type Response = z.infer<typeof ResponseSchema>;
|
|
@@ -1254,9 +1254,9 @@ export const ERRORS = {
|
|
|
1254
1254
|
message: 'Произошла ошибка при удалении сообщения',
|
|
1255
1255
|
httpCode: 500,
|
|
1256
1256
|
},
|
|
1257
|
-
|
|
1257
|
+
CHAT_FILE_ATTACHMENT_FEATURE_MISSING: {
|
|
1258
1258
|
code: 'A275',
|
|
1259
|
-
message: '
|
|
1259
|
+
message: 'Функции вложения файлов не указаны в запросе',
|
|
1260
1260
|
httpCode: 400,
|
|
1261
1261
|
},
|
|
1262
1262
|
CHAT_IMAGE_ATTACHMENT_AND_WEB_SEARCH_CONFLICT: {
|
|
@@ -1569,4 +1569,19 @@ export const ERRORS = {
|
|
|
1569
1569
|
message: 'Выбрана Неверная продолжительность видео',
|
|
1570
1570
|
httpCode: 400,
|
|
1571
1571
|
},
|
|
1572
|
+
FILE_UPLOAD_NO_MODEL: {
|
|
1573
|
+
code: 'A334',
|
|
1574
|
+
message: 'В запросе нет модели для обработки текстового файла',
|
|
1575
|
+
httpCode: 400,
|
|
1576
|
+
},
|
|
1577
|
+
FILE_VECTOR_CHUNKS_CREATE_ERROR: {
|
|
1578
|
+
code: 'A335',
|
|
1579
|
+
message: 'Ошибка при сохранении векторных чанков файлов',
|
|
1580
|
+
httpCode: 500,
|
|
1581
|
+
},
|
|
1582
|
+
FILE_VECTOR_SEARCH_ERROR: {
|
|
1583
|
+
code: 'A336',
|
|
1584
|
+
message: 'Ошибка при поиске по векторному хранилищу',
|
|
1585
|
+
httpCode: 500,
|
|
1586
|
+
},
|
|
1572
1587
|
};
|
|
@@ -2,6 +2,7 @@ import { FILE_TYPE } from './enums';
|
|
|
2
2
|
|
|
3
3
|
export const MAX_IMAGE_UPLOAD_SIZE = 5 * 1024 * 1024; // 5 MB
|
|
4
4
|
export const MAX_AUDIO_UPLOAD_SIZE = 500 * 1024 * 1024; // 500 MB
|
|
5
|
+
export const MAX_TEXT_UPLOAD_SIZE = 10 * 1024 * 1024; // 10 MB
|
|
5
6
|
|
|
6
7
|
export const SUPPORTED_FILES = new Map<
|
|
7
8
|
string,
|
|
@@ -18,6 +19,35 @@ export const SUPPORTED_FILES = new Map<
|
|
|
18
19
|
['audio/wave', { type: FILE_TYPE.AUDIO, size: MAX_AUDIO_UPLOAD_SIZE }],
|
|
19
20
|
['audio/wav', { type: FILE_TYPE.AUDIO, size: MAX_AUDIO_UPLOAD_SIZE }],
|
|
20
21
|
['audio/x-wav', { type: FILE_TYPE.AUDIO, size: MAX_AUDIO_UPLOAD_SIZE }],
|
|
22
|
+
['text/plain', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
23
|
+
['text/markdown', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
24
|
+
['text/csv', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
25
|
+
['text/tab-separated-values', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
26
|
+
['application/json', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
27
|
+
['application/xml', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
28
|
+
['text/xml', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
29
|
+
['application/x-yaml', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
30
|
+
['text/yaml', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
31
|
+
['application/javascript', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
32
|
+
['application/typescript', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
33
|
+
['text/javascript', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
34
|
+
['text/typescript', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
35
|
+
['text/html', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
36
|
+
['text/css', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
37
|
+
['application/x-sh', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
38
|
+
['text/x-python', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
39
|
+
['text/x-c', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
40
|
+
['text/x-c++', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
41
|
+
['text/x-java-source', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
42
|
+
['text/x-shellscript', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
43
|
+
['text/x-php', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
44
|
+
['text/x-ruby', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
45
|
+
['text/x-go', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
46
|
+
['text/x-scss', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
47
|
+
['text/x-yaml', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
48
|
+
['text/x-ini', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
49
|
+
['text/x-properties', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
50
|
+
['text/x-config', { type: FILE_TYPE.TEXT, size: MAX_TEXT_UPLOAD_SIZE }],
|
|
21
51
|
]);
|
|
22
52
|
|
|
23
53
|
export const DELETE_UNUSED_FILES_AFTER_HOURS = 12;
|
package/models/file.schema.ts
CHANGED
|
@@ -39,6 +39,13 @@ export const MaxInputLengthFeatureSchema = SubscriptionFeatureBaseSchema.extend(
|
|
|
39
39
|
});
|
|
40
40
|
export type MaxInputLengthFeature = z.infer<typeof MaxInputLengthFeatureSchema>;
|
|
41
41
|
|
|
42
|
+
export const ExtendedContextFeatureSchema = SubscriptionFeatureBaseSchema.extend({
|
|
43
|
+
type: z.literal(SUBSCRIPTION_FEATURE_TYPE.EXTENDED_CONTEXT),
|
|
44
|
+
kind: z.literal(SUBSCRIPTION_FEATURE_KIND.TEXT),
|
|
45
|
+
isAvailable: z.boolean(),
|
|
46
|
+
});
|
|
47
|
+
export type ExtendedContextFeature = z.infer<typeof ExtendedContextFeatureSchema>;
|
|
48
|
+
|
|
42
49
|
export const WebSearchFeatureSchema = SubscriptionFeatureBaseSchema.extend({
|
|
43
50
|
kind: z.literal(SUBSCRIPTION_FEATURE_KIND.TEXT),
|
|
44
51
|
type: z.literal(SUBSCRIPTION_FEATURE_TYPE.WEB_SEARCH),
|
|
@@ -118,6 +125,7 @@ export const SubscriptionFeatureSchema = z.union([
|
|
|
118
125
|
STTQuotaFeatureSchema,
|
|
119
126
|
VideoQuotaFeatureSchema,
|
|
120
127
|
VideoModelAccessFeatureSchema,
|
|
128
|
+
ExtendedContextFeatureSchema,
|
|
121
129
|
]);
|
|
122
130
|
|
|
123
131
|
export type SubscriptionFeature = z.infer<typeof SubscriptionFeatureSchema>;
|