Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1ff1c46e37 | ||
|
|
afa3e499dc | ||
|
|
70ce5746bc | ||
|
|
8bbc44e7bf | ||
|
|
3dcb4be6e4 | ||
|
|
83f8072625 |
@@ -41,7 +41,7 @@ const deleteMessage = async () => {
|
|||||||
method: 'DELETE'
|
method: 'DELETE'
|
||||||
})
|
})
|
||||||
if (!error.value) {
|
if (!error.value) {
|
||||||
this.$emit('deleteMessage', props.messageIndex)
|
props.deleteMessage(props.messageIndex)
|
||||||
showSnackbar('Deleted!')
|
showSnackbar('Deleted!')
|
||||||
}
|
}
|
||||||
showSnackbar('Delete failed')
|
showSnackbar('Delete failed')
|
||||||
|
|||||||
@@ -12,14 +12,19 @@ const md = new MarkdownIt({
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
const props = defineProps(['content'])
|
const props = defineProps({
|
||||||
|
message: {
|
||||||
|
type: Object,
|
||||||
|
required: true
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
const contentHtml = ref('')
|
const contentHtml = ref('')
|
||||||
|
|
||||||
const contentElm = ref(null)
|
const contentElm = ref(null)
|
||||||
|
|
||||||
watchEffect(() => {
|
watchEffect(() => {
|
||||||
contentHtml.value = props.content ? md.render(props.content) : ''
|
contentHtml.value = props.message.message ? md.render(props.message.message) : ''
|
||||||
})
|
})
|
||||||
|
|
||||||
const bindCopyCodeToButtons = () => {
|
const bindCopyCodeToButtons = () => {
|
||||||
@@ -54,11 +59,19 @@ onUpdated(() => {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div
|
<v-card
|
||||||
ref="contentElm"
|
:color="message.is_bot ? '' : 'primary'"
|
||||||
v-html="contentHtml"
|
rounded="lg"
|
||||||
class="chat-msg-content"
|
elevation="2"
|
||||||
></div>
|
>
|
||||||
|
<v-card-text>
|
||||||
|
<div
|
||||||
|
ref="contentElm"
|
||||||
|
v-html="contentHtml"
|
||||||
|
class="chat-msg-content"
|
||||||
|
></div>
|
||||||
|
</v-card-text>
|
||||||
|
</v-card>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ export default defineNuxtConfig({
|
|||||||
description: 'A ChatGPT web Client'
|
description: 'A ChatGPT web Client'
|
||||||
},
|
},
|
||||||
workbox: {
|
workbox: {
|
||||||
enabled: true
|
enabled: process.env.DEBUT_PWA === 'true',
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
i18n: {
|
i18n: {
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
"@kevinmarrec/nuxt-pwa": "^0.17.0",
|
"@kevinmarrec/nuxt-pwa": "^0.17.0",
|
||||||
"@nuxtjs/color-mode": "^3.2.0",
|
"@nuxtjs/color-mode": "^3.2.0",
|
||||||
"@nuxtjs/i18n": "^8.0.0-beta.9",
|
"@nuxtjs/i18n": "^8.0.0-beta.9",
|
||||||
|
"@vite-pwa/nuxt": "^0.0.7",
|
||||||
"material-design-icons-iconfont": "^6.7.0",
|
"material-design-icons-iconfont": "^6.7.0",
|
||||||
"nuxt": "^3.2.0"
|
"nuxt": "^3.2.0"
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ const fetchReply = async (message, parentMessageId) => {
|
|||||||
const data = Object.assign({}, currentModel.value, {
|
const data = Object.assign({}, currentModel.value, {
|
||||||
openaiApiKey: openaiApiKey.value,
|
openaiApiKey: openaiApiKey.value,
|
||||||
message: message,
|
message: message,
|
||||||
parentMessageId: parentMessageId,
|
// parentMessageId: parentMessageId,
|
||||||
conversationId: currentConversation.value.id
|
conversationId: currentConversation.value.id
|
||||||
})
|
})
|
||||||
|
|
||||||
@@ -93,6 +93,13 @@ const fetchReply = async (message, parentMessageId) => {
|
|||||||
throw new Error(data.error);
|
throw new Error(data.error);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (event === 'userMessageId') {
|
||||||
|
console.log(currentConversation.value.messages[currentConversation.value.messages.length - 1])
|
||||||
|
currentConversation.value.messages[currentConversation.value.messages.length - 1].id = data.userMessageId
|
||||||
|
console.log(currentConversation.value.messages[currentConversation.value.messages.length - 1])
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (event === 'done') {
|
if (event === 'done') {
|
||||||
if (currentConversation.value.id === null) {
|
if (currentConversation.value.id === null) {
|
||||||
currentConversation.value.id = data.conversationId
|
currentConversation.value.id = data.conversationId
|
||||||
@@ -184,15 +191,7 @@ const deleteMessage = (index) => {
|
|||||||
:use-prompt="usePrompt"
|
:use-prompt="usePrompt"
|
||||||
:delete-message="deleteMessage"
|
:delete-message="deleteMessage"
|
||||||
/>
|
/>
|
||||||
<v-card
|
<MsgContent :message="message" />
|
||||||
:color="message.is_bot ? '' : 'primary'"
|
|
||||||
rounded="lg"
|
|
||||||
elevation="2"
|
|
||||||
>
|
|
||||||
<v-card-text>
|
|
||||||
<MsgContent :content="message.message" />
|
|
||||||
</v-card-text>
|
|
||||||
</v-card>
|
|
||||||
<MessageActions
|
<MessageActions
|
||||||
v-if="message.is_bot"
|
v-if="message.is_bot"
|
||||||
:message="message"
|
:message="message"
|
||||||
|
|||||||
2
public/robots.txt
Normal file
2
public/robots.txt
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
User-agent: *
|
||||||
|
Allow: /
|
||||||
Reference in New Issue
Block a user