feat: lighten ai agent admin frontend

This commit is contained in:
2026-06-11 18:03:43 +08:00
parent ecf29e2278
commit 15229cc5ab
316 changed files with 898 additions and 60944 deletions
@@ -5,7 +5,7 @@ import type { VbenFormSchema } from '@vben-core/form-ui';
import type { AuthenticationProps } from './types';
import { computed, defineAsyncComponent, onMounted, reactive, ref } from 'vue';
import { computed, onMounted, reactive, ref } from 'vue';
import { useRouter } from 'vue-router';
import { $t } from '@vben/locales';
@@ -15,10 +15,6 @@ import { VbenButton, VbenCheckbox } from '@vben-core/shadcn-ui';
import Title from './auth-title.vue';
const ThirdPartyLogin = defineAsyncComponent(
() => import('./third-party-login.vue'),
);
interface Props extends AuthenticationProps {
formSchema?: VbenFormSchema[];
}
@@ -62,9 +58,7 @@ const [Form, formApi] = useVbenForm(
const router = useRouter();
const REMEMBER_ME_KEY = `REMEMBER_ME_USERNAME_${location.hostname}`;
const localUsername = localStorage.getItem(REMEMBER_ME_KEY) || '';
const rememberMe = ref(!!localUsername);
async function handleSubmit() {
@@ -99,7 +93,7 @@ defineExpose({
<slot name="title">
<Title>
<slot name="title">
{{ title || `${$t('authentication.welcomeBack')} 👋🏻` }}
{{ title || $t('authentication.welcomeBack') }}
</slot>
<template #desc>
<span class="text-muted-foreground">
@@ -113,28 +107,29 @@ defineExpose({
<Form />
<!-- <div-->
<!-- v-if="showRememberMe || showForgetPassword"-->
<!-- class="mb-6 flex justify-between"-->
<!-- >-->
<!-- <div class="flex-center">-->
<!-- <VbenCheckbox-->
<!-- v-if="showRememberMe"-->
<!-- v-model:checked="rememberMe"-->
<!-- name="rememberMe"-->
<!-- >-->
<!-- {{ $t('authentication.rememberMe') }}-->
<!-- </VbenCheckbox>-->
<!-- </div>-->
<div
v-if="showRememberMe || showForgetPassword"
class="mb-6 flex justify-between"
>
<div class="flex-center">
<VbenCheckbox
v-if="showRememberMe"
v-model:checked="rememberMe"
name="rememberMe"
>
{{ $t('authentication.rememberMe') }}
</VbenCheckbox>
</div>
<span
v-if="showForgetPassword"
class="vben-link text-sm font-normal"
@click="handleGo(forgetPasswordPath)"
>
{{ $t('authentication.forgetPassword') }}
</span>
</div>
<!-- <span-->
<!-- v-if="showForgetPassword"-->
<!-- class="vben-link text-sm font-normal"-->
<!-- @click="handleGo(forgetPasswordPath)"-->
<!-- >-->
<!-- {{ $t('authentication.forgetPassword') }}-->
<!-- </span>-->
<!-- </div>-->
<VbenButton
:class="{
'cursor-wait': loading,
@@ -169,21 +164,18 @@ defineExpose({
</VbenButton>
</div>
<!-- 第三方登录 -->
<slot name="third-party-login">
<ThirdPartyLogin v-if="showThirdPartyLogin" />
</slot>
<slot v-if="showThirdPartyLogin" name="third-party-login"></slot>
<!-- <slot name="to-register">-->
<!-- <div v-if="showRegister" class="mt-3 text-center text-sm">-->
<!-- {{ $t('authentication.accountTip') }}-->
<!-- <span-->
<!-- class="vben-link text-sm font-normal"-->
<!-- @click="handleGo(registerPath)"-->
<!-- >-->
<!-- {{ $t('authentication.createAccount') }}-->
<!-- </span>-->
<!-- </div>-->
<!-- </slot>-->
<slot name="to-register">
<div v-if="showRegister" class="mt-3 text-center text-sm">
{{ $t('authentication.accountTip') }}
<span
class="vben-link text-sm font-normal"
@click="handleGo(registerPath)"
>
{{ $t('authentication.createAccount') }}
</span>
</div>
</slot>
</div>
</template>