@common_ch/common 1.0.285 → 1.0.286

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.
@@ -0,0 +1,25 @@
1
+ import mongoose from 'mongoose';
2
+ export interface FileReferenceGeminiAttrs {
3
+ geminiId: string;
4
+ fileUri: string;
5
+ mimeType: string;
6
+ displayName: string;
7
+ uploadedAt: Date;
8
+ sessionId: mongoose.Types.ObjectId;
9
+ }
10
+ interface FileReferenceGeminiModel extends mongoose.Model<FileReferenceGeminiDoc> {
11
+ build(attrs: FileReferenceGeminiAttrs): FileReferenceGeminiDoc;
12
+ }
13
+ export interface FileReferenceGeminiDoc extends mongoose.Document {
14
+ _id: string;
15
+ geminiId: string;
16
+ fileUri: string;
17
+ mimeType: string;
18
+ displayName: string;
19
+ uploadedAt: Date;
20
+ sessionId: mongoose.Types.ObjectId;
21
+ createdAt?: string;
22
+ updatedAt?: string;
23
+ }
24
+ declare const FileReferenceGemini: FileReferenceGeminiModel;
25
+ export { FileReferenceGemini };
@@ -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.FileReferenceGemini = void 0;
7
+ const mongoose_1 = __importDefault(require("mongoose"));
8
+ const fileReferenceGeminiSchema = new mongoose_1.default.Schema({
9
+ geminiId: { type: String, required: true, unique: true },
10
+ fileUri: { type: String, required: true },
11
+ mimeType: { type: String, required: true },
12
+ displayName: { type: String, required: true },
13
+ uploadedAt: { type: Date, default: Date.now },
14
+ sessionId: { type: mongoose_1.default.Schema.Types.ObjectId, ref: 'ChatSession', required: true },
15
+ createdAt: mongoose_1.default.Schema.Types.Date,
16
+ updatedAt: mongoose_1.default.Schema.Types.Date,
17
+ }, {
18
+ timestamps: true,
19
+ });
20
+ fileReferenceGeminiSchema.index({ 'geminiId': 1 });
21
+ fileReferenceGeminiSchema.index({ 'sessionId': 1 });
22
+ fileReferenceGeminiSchema.index({ 'fileUri': 1 });
23
+ fileReferenceGeminiSchema.statics.build = (attrs) => {
24
+ return new FileReferenceGemini(attrs);
25
+ };
26
+ const FileReferenceGemini = mongoose_1.default.model('FileReferenceGemini', fileReferenceGeminiSchema);
27
+ exports.FileReferenceGemini = FileReferenceGemini;
@@ -0,0 +1,61 @@
1
+ import mongoose from 'mongoose';
2
+ import { UserDoc } from './user';
3
+ import { PlanDoc } from './plan';
4
+ import { AiOptionDoc } from './ai-option';
5
+ import { FileReferenceGeminiDoc } from './fileReferenceGemini';
6
+ export declare enum ContentRoleGeminiEnum {
7
+ user = "user",
8
+ model = "model"
9
+ }
10
+ interface IPart {
11
+ text?: string;
12
+ fileData?: {
13
+ mimeType: string;
14
+ fileUri: string;
15
+ };
16
+ }
17
+ export type ContentGemini = {
18
+ role: ContentRoleGeminiEnum;
19
+ parts: IPart[];
20
+ aiOptionId: string | AiOptionDoc;
21
+ attachments?: Attachment[];
22
+ };
23
+ export type Attachment = {
24
+ contentType: string;
25
+ path: string;
26
+ name: string;
27
+ };
28
+ export interface MessageGeminiAttrs {
29
+ userId: string;
30
+ messageName: string;
31
+ planId?: string;
32
+ geminiTokenNumber?: number;
33
+ summary?: string;
34
+ summaryCheck?: boolean;
35
+ remainMessageForSummary?: number;
36
+ isArchived?: boolean;
37
+ contents: ContentGemini[];
38
+ fileRefs: mongoose.Types.ObjectId[] | FileReferenceGeminiDoc;
39
+ createdAt?: string;
40
+ updatedAt?: string;
41
+ }
42
+ interface MessageGeminiModel extends mongoose.Model<MessageGeminiDoc> {
43
+ build(attrs: MessageGeminiAttrs): MessageGeminiDoc;
44
+ }
45
+ export interface MessageGeminiDoc extends mongoose.Document {
46
+ _id: string;
47
+ userId: string | UserDoc;
48
+ messageName: string;
49
+ planId?: string | PlanDoc;
50
+ geminiTokenNumber?: number;
51
+ summary?: string;
52
+ summaryCheck?: boolean;
53
+ remainMessageForSummary?: number;
54
+ isArchived?: boolean;
55
+ contents: ContentGemini[];
56
+ fileRefs: mongoose.Types.ObjectId[] | FileReferenceGeminiDoc;
57
+ createdAt?: string;
58
+ updatedAt?: string;
59
+ }
60
+ declare const MessageGemini: MessageGeminiModel;
61
+ export { MessageGemini };
@@ -0,0 +1,109 @@
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.MessageGemini = exports.ContentRoleGeminiEnum = void 0;
7
+ const mongoose_1 = __importDefault(require("mongoose"));
8
+ var ContentRoleGeminiEnum;
9
+ (function (ContentRoleGeminiEnum) {
10
+ ContentRoleGeminiEnum["user"] = "user";
11
+ ContentRoleGeminiEnum["model"] = "model";
12
+ })(ContentRoleGeminiEnum || (exports.ContentRoleGeminiEnum = ContentRoleGeminiEnum = {}));
13
+ const messageGeminiSchema = new mongoose_1.default.Schema({
14
+ userId: {
15
+ type: String,
16
+ required: true,
17
+ },
18
+ messageName: {
19
+ type: String,
20
+ required: true,
21
+ },
22
+ summary: {
23
+ type: String,
24
+ required: false,
25
+ },
26
+ summaryCheck: {
27
+ type: Boolean,
28
+ required: false,
29
+ },
30
+ remainMessageForSummary: {
31
+ type: Number,
32
+ required: false,
33
+ },
34
+ planId: {
35
+ type: mongoose_1.default.Schema.Types.ObjectId,
36
+ ref: 'Plan',
37
+ required: false,
38
+ },
39
+ geminiTokenNumber: {
40
+ type: Number,
41
+ required: false,
42
+ },
43
+ isArchived: {
44
+ type: Boolean,
45
+ required: false,
46
+ default: false,
47
+ },
48
+ contents: [
49
+ {
50
+ aiOptionId: {
51
+ type: mongoose_1.default.Schema.Types.ObjectId,
52
+ ref: 'AiOption',
53
+ },
54
+ role: {
55
+ type: String,
56
+ required: true,
57
+ enum: Object.values(ContentRoleGeminiEnum),
58
+ },
59
+ parts: [{
60
+ text: {
61
+ type: String,
62
+ required: false,
63
+ },
64
+ fileData: {
65
+ required: false,
66
+ mimeType: {
67
+ type: String,
68
+ required: false,
69
+ },
70
+ fileUri: {
71
+ type: String,
72
+ required: false,
73
+ }
74
+ }
75
+ }],
76
+ attachments: [{
77
+ contentType: {
78
+ type: String,
79
+ required: true,
80
+ },
81
+ path: {
82
+ type: String,
83
+ required: true,
84
+ },
85
+ name: {
86
+ type: String,
87
+ required: true,
88
+ }
89
+ }],
90
+ createdAt: {
91
+ type: mongoose_1.default.Schema.Types.Date,
92
+ required: true,
93
+ },
94
+ },
95
+ ],
96
+ fileRefs: [{ type: mongoose_1.default.Schema.Types.ObjectId, ref: 'FileReference' }],
97
+ createdAt: mongoose_1.default.Schema.Types.Date,
98
+ updatedAt: mongoose_1.default.Schema.Types.Date,
99
+ }, {
100
+ timestamps: true,
101
+ });
102
+ messageGeminiSchema.index({ 'updatedAt': 1 });
103
+ messageGeminiSchema.index({ 'planId': 1 });
104
+ messageGeminiSchema.index({ 'userId': 1 });
105
+ messageGeminiSchema.statics.build = (attrs) => {
106
+ return new MessageGemini(attrs);
107
+ };
108
+ const MessageGemini = mongoose_1.default.model('MessageGemini', messageGeminiSchema);
109
+ exports.MessageGemini = MessageGemini;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@common_ch/common",
3
- "version": "1.0.285",
3
+ "version": "1.0.286",
4
4
  "main": "./build/index.js",
5
5
  "types": "./build/index.d.ts",
6
6
  "files": [