diff --git a/lang/en-US.json b/lang/en-US.json index fdf1aaf..3908fb3 100644 --- a/lang/en-US.json +++ b/lang/en-US.json @@ -39,6 +39,14 @@ "copied": "Copied", "delete": "Delete", "signOut": "Sign out", + "resetPassword": "Reset password", + "submit": "Submit", + "agree": "Agree", + "newPassword": "New password", + "currentPassword": "Current password", + "confirmPassword": "Confirm password", + "yourPasswordHasBeenReset": "Your password has been reset", + "nowYouNeedToSignInAgain": "Now you need to sign in again", "webSearch": "Web Search", "webSearchDefaultPrompt": "Web search results:\n\n[web_results]\nCurrent date: [current_date]\n\nInstructions: Using the provided web search results, write a comprehensive reply to the given query. Make sure to cite results using [[number](URL)] notation after the reference. If the provided search results refer to multiple subjects with the same name, write separate answers for each subject.\nQuery: [query]", "genTitlePrompt": "Generate a short title for the following content, no more than 10 words. \n\nContent: ", diff --git a/lang/ru-RU.json b/lang/ru-RU.json index 725b01a..7f1bd48 100644 --- a/lang/ru-RU.json +++ b/lang/ru-RU.json @@ -39,6 +39,14 @@ "copied": "Скопировано", "delete": "Удалить", "signOut": "Выход", + "resetPassword": "Сбросить пароль", + "submit": "Отправить", + "agree": "Согласен", + "newPassword": "Новый пароль", + "currentPassword": "Текущий пароль", + "confirmPassword": "Подтвердите пароль", + "yourPasswordHasBeenReset": "Ваш пароль был сброшен", + "nowYouNeedToSignInAgain": "Теперь вам нужно снова войти в систему", "webSearch": "Поиск в интернете", "webSearchDefaultPrompt": "Результаты веб-поиска:\n\n[web_results]\nТекущая дата: [current_date]\n\nИнструкции: Используя предоставленные результаты веб-поиска, напишите развернутый ответ на заданный запрос. Обязательно цитируйте результаты, используя обозначение [[number](URL)] после ссылки. Если предоставленные результаты поиска относятся к нескольким темам с одинаковым названием, напишите отдельные ответы для каждой темы.\nЗапрос: [query]", "genTitlePrompt": "Придумайте короткий заголовок для следующего содержания, не более 10 слов. \n\nСодержание: ", diff --git a/lang/zh-CN.json b/lang/zh-CN.json index a9b717b..b2ff081 100644 --- a/lang/zh-CN.json +++ b/lang/zh-CN.json @@ -39,6 +39,14 @@ "copied": "已复制", "delete": "删除", "signOut": "退出登录", + "resetPassword": "重置密码", + "submit": "提交", + "agree": "同意", + "newPassword": "新密码", + "currentPassword": "当前密码", + "confirmPassword": "确认密码", + "yourPasswordHasBeenReset": "您的密码已重置", + "nowYouNeedToSignInAgain": "现在您需要再次登录", "webSearch": "网页搜索", "webSearchDefaultPrompt": "网络搜索结果:\n\n[web_results]\n当前日期:[current_date]\n\n说明:使用提供的网络搜索结果,对给定的查询写出全面的回复。确保在引用参考文献后使用 [[number](URL)] 符号进行引用结果. 如果提供的搜索结果涉及到多个具有相同名称的主题,请针对每个主题编写单独的答案。\n查询:[query]", "genTitlePrompt": "为以下内容生成一个不超过10个字的简短标题。 \n\n内容: ", diff --git a/layouts/default.vue b/layouts/default.vue index 5991d0b..fd77231 100644 --- a/layouts/default.vue +++ b/layouts/default.vue @@ -124,19 +124,48 @@ onMounted(async () => { :permanent="drawerPermanent" width="300" > -
+ + +
+ @@ -287,24 +316,17 @@ onMounted(async () => { @click="feedback" > - -
- {{ runtimeConfig.public.appName }} + {{ currentConversation.topic ?? runtimeConfig.public.appName }} @@ -312,7 +334,15 @@ onMounted(async () => { :title="$t('newConversation')" icon="add" @click="createNewConversation()" + class="d-md-none" > + + {{ $t('newConversation') }} + diff --git a/pages/account/resetPassword.vue b/pages/account/resetPassword.vue new file mode 100644 index 0000000..3785013 --- /dev/null +++ b/pages/account/resetPassword.vue @@ -0,0 +1,176 @@ + + + diff --git a/pages/account/signup.vue b/pages/account/signup.vue index 1b2a6c0..c67a6ab 100644 --- a/pages/account/signup.vue +++ b/pages/account/signup.vue @@ -83,7 +83,7 @@ const submit = async () => { } const handleFieldUpdate = (field) => { - // fieldErrors.value[field] = '' + fieldErrors.value[field] = '' } @@ -122,7 +122,7 @@ const handleFieldUpdate = (field) => { :error-messages="fieldErrors.email" label="Email" variant="underlined" - @@update:modelValue="handleFieldUpdate('email')" + @update:modelValue="handleFieldUpdate('email')" clearable > diff --git a/pages/index.vue b/pages/index.vue index 8b32fb9..4367b4f 100644 --- a/pages/index.vue +++ b/pages/index.vue @@ -7,25 +7,33 @@ definePageMeta({ const route = useRoute() const currentConversation = useConversation() const conversation = ref(getDefaultConversationData()) -watchEffect(() => { - if (!route.params.id) { - conversation.value = getDefaultConversationData() + +const loadConversation = async () => { + const { data, error } = await useAuthFetch('/api/chat/conversations/' + route.params.id) + if (!error.value) { + conversation.value = data.value } -}) +} + const loadMessage = async () => { - conversation.value.loadingMessages = true const { data, error } = await useAuthFetch('/api/chat/messages/?conversationId=' + route.params.id) if (!error.value) { conversation.value.messages = data.value } - conversation.value.loadingMessages = false } -onMounted(async () => { +onActivated(async () => { + console.log('activated') + console.log(conversation.value) if (route.params.id) { - conversation.value.id = parseInt(route.params.id) + conversation.value.loadingMessages = true + await loadConversation() await loadMessage() + conversation.value.loadingMessages = false + } else { + conversation.value = getDefaultConversationData() } + console.log(conversation.value) currentConversation.value = Object.assign({}, conversation.value) })