Added export buttons
parent
73609501ab
commit
6fe938798b
12
chat.html
12
chat.html
|
@ -33,11 +33,14 @@
|
|||
<div class="sz-12 text-center"><button @click="authenticate">Anmelden...</button></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-if="chatApp.identity.authenticated" class="flex-grow-1 fill">
|
||||
<div class="row" style="align-items: stretch;">
|
||||
<div class="sz-3 bg-white border-radius-2 h-100 overflow-auto">
|
||||
<div class="">
|
||||
<button @click="newChat();">neu...</button>
|
||||
<button class="symbol" @click="exportChats();">
|
||||
<img src="contrib/lnstyles/svg/triangle-down.svg"></button>
|
||||
</div>
|
||||
<div v-for="chat in chatApp.chats.slice().reverse()"
|
||||
class="border-radius-1 border-1 row m-1 p-1"
|
||||
|
@ -50,6 +53,8 @@
|
|||
class="flex-grow-1 text-right">{{ chat.assistant.name }}</small>
|
||||
</div>
|
||||
<div class="sz-1">
|
||||
<img src="contrib/lnstyles/svg/triangle-down.svg"
|
||||
@click="exportChat(chat);">
|
||||
<img src="contrib/lnstyles/svg/delete.svg"
|
||||
@click="chatApp.removeChat(chat);">
|
||||
</div>
|
||||
|
@ -145,6 +150,7 @@
|
|||
assistants: config.assistants,
|
||||
loginUsername: "",
|
||||
loginPassword: "",
|
||||
$,
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
|
@ -178,6 +184,12 @@
|
|||
authenticate(){
|
||||
console.log("authenticate", this.loginUsername);
|
||||
this.chatApp.identity.authenticate(this.loginUsername, this.loginPassword);
|
||||
},
|
||||
exportChat(chat){
|
||||
$.saveAs(chat.title + '.json', chat.backup());
|
||||
},
|
||||
exportChats(){
|
||||
$.saveAs('ai.chats.json', this.chatApp.backup());
|
||||
}
|
||||
}
|
||||
})
|
||||
|
|
10
chat.js
10
chat.js
|
@ -26,7 +26,7 @@ export class Chat {
|
|||
}
|
||||
|
||||
backup(){
|
||||
return { created: this._created, messages: this._messages, assistant: this._assistant };
|
||||
return { exported: new Date().getTime(), created: this._created, messages: this._messages, assistant: this._assistant };
|
||||
}
|
||||
|
||||
get title(){
|
||||
|
@ -166,11 +166,15 @@ export class ChatApp {
|
|||
}
|
||||
|
||||
saveChats() {
|
||||
let backup = {chats: [],};
|
||||
localStorage.setItem("ai.chats", JSON.stringify(this.backup()));
|
||||
}
|
||||
|
||||
backup(){
|
||||
let backup = {chats: [], exported: new Date().getTime()};
|
||||
this.chats.forEach((v) => {
|
||||
backup.chats.push(v.backup());
|
||||
});
|
||||
localStorage.setItem("ai.chats", JSON.stringify(backup));
|
||||
return backup;
|
||||
}
|
||||
|
||||
chat(content) {
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit e329de2b674fc536d94e639c2543f02b2c55b003
|
||||
Subproject commit 3d878c5ed6fcb736aa9a931ea08e327bb94cfc59
|
Loading…
Reference in New Issue