mirror of
https://github.com/geoffsee/open-gsio.git
synced 2025-09-08 22:56:46 +00:00
init
This commit is contained in:
9
workers/site/models/ContactRecord.ts
Normal file
9
workers/site/models/ContactRecord.ts
Normal file
@@ -0,0 +1,9 @@
|
||||
import { types } from "mobx-state-tree";
|
||||
|
||||
export default types.model("ContactRecord", {
|
||||
message: types.string,
|
||||
timestamp: types.string,
|
||||
email: types.string,
|
||||
firstname: types.string,
|
||||
lastname: types.string,
|
||||
});
|
10
workers/site/models/FeedbackRecord.ts
Normal file
10
workers/site/models/FeedbackRecord.ts
Normal file
@@ -0,0 +1,10 @@
|
||||
// FeedbackRecord.ts
|
||||
import { types } from "mobx-state-tree";
|
||||
|
||||
const FeedbackRecord = types.model("FeedbackRecord", {
|
||||
feedback: types.string,
|
||||
timestamp: types.string,
|
||||
user: types.optional(types.string, "Anonymous"),
|
||||
});
|
||||
|
||||
export default FeedbackRecord;
|
18
workers/site/models/Message.ts
Normal file
18
workers/site/models/Message.ts
Normal file
@@ -0,0 +1,18 @@
|
||||
// Base Message
|
||||
import { Instance, types } from "mobx-state-tree";
|
||||
|
||||
export default types
|
||||
.model("Message", {
|
||||
content: types.string,
|
||||
role: types.enumeration(["user", "assistant", "system"]),
|
||||
})
|
||||
.actions((self) => ({
|
||||
setContent(newContent: string) {
|
||||
self.content = newContent;
|
||||
},
|
||||
append(newContent: string) {
|
||||
self.content += newContent;
|
||||
},
|
||||
}));
|
||||
|
||||
export type MessageType = Instance<typeof this>;
|
20
workers/site/models/O1Message.ts
Normal file
20
workers/site/models/O1Message.ts
Normal file
@@ -0,0 +1,20 @@
|
||||
import { types } from "mobx-state-tree";
|
||||
|
||||
export default types
|
||||
.model("O1Message", {
|
||||
role: types.enumeration(["user", "assistant", "system"]),
|
||||
content: types.array(
|
||||
types.model({
|
||||
type: types.string,
|
||||
text: types.string,
|
||||
}),
|
||||
),
|
||||
})
|
||||
.actions((self) => ({
|
||||
setContent(newContent: string, contentType: string = "text") {
|
||||
self.content = [{ type: contentType, text: newContent }];
|
||||
},
|
||||
append(newContent: string, contentType: string = "text") {
|
||||
self.content.push({ type: contentType, text: newContent });
|
||||
},
|
||||
}));
|
16
workers/site/models/OpenAiMessage.ts
Normal file
16
workers/site/models/OpenAiMessage.ts
Normal file
@@ -0,0 +1,16 @@
|
||||
// Models
|
||||
import { types } from "mobx-state-tree";
|
||||
|
||||
export default types
|
||||
.model("Message", {
|
||||
content: types.string,
|
||||
role: types.enumeration(["user", "assistant", "system"]),
|
||||
})
|
||||
.actions((self) => ({
|
||||
setContent(newContent: string) {
|
||||
self.content = newContent;
|
||||
},
|
||||
append(newContent: string) {
|
||||
self.content += newContent;
|
||||
},
|
||||
}));
|
Reference in New Issue
Block a user