diff --git a/src/data/Navigation.ts b/src/data/Navigation.ts index 89cfa28f..d1377e52 100644 --- a/src/data/Navigation.ts +++ b/src/data/Navigation.ts @@ -1,21 +1,21 @@ import { NavigationModel, NavigationPosition } from '@/model/Navigation' import NavigationService from '@/services/Navigation' -import { Ban, CircleOff, Gauge, LogIn, LogOut, StickyNote } from 'lucide-vue-next' +import { AudioWaveform, Ban, CircleOff, FormInput, Gauge, LogIn, LogOut, StickyNote } from 'lucide-vue-next' const createNavigation = (): void => { NavigationService.addNavigation(createNavigationItem('common.common.dashboard', undefined, '/dashboard', Gauge, NavigationPosition.LEFT_TOP)) - const signIn = createNavigationItem('common.common.signIn', undefined, '/auth/signin', LogIn, NavigationPosition.LEFT_TOP) - NavigationService.addNavigation(signIn) - const signUp = createNavigationItem('common.common.signUp', undefined, '/auth/signup', LogOut, NavigationPosition.LEFT_BOTTOM) - NavigationService.addNavigation(signUp) - NavigationService.addNavigation(createNavigationItem('common.common.home', + NavigationService.addNavigation(createNavigationItem('common.common.dashboard', undefined, - '/', + '/dashboard', undefined, NavigationPosition.TOP, [], - 'common.common.home', + 'common.common.dashboard', undefined)) + const signIn = createNavigationItem('common.common.signIn', undefined, '/auth/signin', LogIn, NavigationPosition.TOP) + NavigationService.addNavigation(signIn) + const signUp = createNavigationItem('common.common.signUp', undefined, '/auth/signup', LogOut, NavigationPosition.TOP) + NavigationService.addNavigation(signUp) const datacap = createNavigationItem('common.common.datacap', undefined, @@ -41,6 +41,13 @@ const createNavigation = (): void => { const pages = createNavigationItem('common.common.page', pageArray.length.toString(), '/pages', StickyNote, NavigationPosition.LEFT_TOP, pageArray, undefined, 'common.common.page') NavigationService.addNavigation(pages) + + const form = createNavigationItem('form.common.formBasic', undefined, '/forms/basic', AudioWaveform, NavigationPosition.LEFT_TOP) + const formWithAction = createNavigationItem('form.common.formWithAction', undefined, '/forms/withAction', AudioWaveform, NavigationPosition.LEFT_TOP) + const formArray = [form, formWithAction] + const froms = createNavigationItem('form.common.form', formArray.length.toString(), '/forms', FormInput, NavigationPosition.LEFT_TOP, + formArray, undefined, 'common.common.form') + NavigationService.addNavigation(froms) } const createNavigationItem = (title?: string, label?: string, href?: string, icon?: any, position?: NavigationPosition, children?: NavigationModel[], group?: string, description?: string, blank?: boolean): NavigationModel => { diff --git a/src/i18n/langs/en/Form.ts b/src/i18n/langs/en/Form.ts new file mode 100644 index 00000000..76fa350a --- /dev/null +++ b/src/i18n/langs/en/Form.ts @@ -0,0 +1,12 @@ +export default { + common: { + form: 'Form', + formBasic: 'Basic Form', + formWithAction: 'Form with Action', + signInWithGoogle: 'Sign in with Google', + }, + tip: { + formBasic: 'This is a basic form example', + formWithAction: 'Here\'s an example of a form with an action function' + } +} \ No newline at end of file diff --git a/src/i18n/langs/en/index.ts b/src/i18n/langs/en/index.ts index e2c9f2c8..f28029c9 100644 --- a/src/i18n/langs/en/index.ts +++ b/src/i18n/langs/en/index.ts @@ -1,9 +1,11 @@ import region from '@/i18n/langs/en/Region' import common from '@/i18n/langs/en/Common' import user from '@/i18n/langs/en/User' +import form from '@/i18n/langs/en/Form' export default { region: region, common: common, - user: user + user: user, + form: form } \ No newline at end of file diff --git a/src/i18n/langs/zhCn/Form.ts b/src/i18n/langs/zhCn/Form.ts new file mode 100644 index 00000000..0288ca9b --- /dev/null +++ b/src/i18n/langs/zhCn/Form.ts @@ -0,0 +1,12 @@ +export default { + common: { + form: '表单', + formBasic: '基础表单', + formWithAction: '带操作功能表单', + signInWithGoogle: '使用 Google 登录', + }, + tip: { + formBasic: '这是一个表单的基础示例', + formWithAction: '这是一个带有操作功能的表单示例' + } +} \ No newline at end of file diff --git a/src/i18n/langs/zhCn/index.ts b/src/i18n/langs/zhCn/index.ts index af02fe9a..1a9e2e3d 100644 --- a/src/i18n/langs/zhCn/index.ts +++ b/src/i18n/langs/zhCn/index.ts @@ -1,9 +1,11 @@ import region from '@/i18n/langs/zhCn/Region' import common from '@/i18n/langs/zhCn/Common' import user from '@/i18n/langs/zhCn/User' +import form from '@/i18n/langs/zhCn/Form' export default { region: region, common: common, - user: user + user: user, + form: form } \ No newline at end of file diff --git a/src/router/default.ts b/src/router/default.ts index 0b1c1953..e71b5571 100644 --- a/src/router/default.ts +++ b/src/router/default.ts @@ -17,6 +17,7 @@ const createDefaultRouter = (router: Router): void => { }) createHttpRouter(router) createUserRouter(router) + createFormRouter(router) } /** @@ -70,6 +71,26 @@ const createUserRouter = (router: Router): void => { }) } +const createFormRouter = (router: Router): void => { + router.addRoute({ + path: '/forms', + name: 'form', + component: LayoutContainer, + children: [ + { + name: 'basic', + path: 'basic', + component: () => import('@/views/pages/form/FormBasic.vue') + }, + { + name: 'withAction', + path: 'withAction', + component: () => import('@/views/pages/form/FormWithAction.vue') + } + ] + }) +} + export { createDefaultRouter } diff --git a/src/views/layouts/base/components/components/NavigationOpened.vue b/src/views/layouts/base/components/components/NavigationOpened.vue index 080023f2..60be97ad 100644 --- a/src/views/layouts/base/components/components/NavigationOpened.vue +++ b/src/views/layouts/base/components/components/NavigationOpened.vue @@ -3,7 +3,19 @@ + + + {{ $t(navigator?.title as string) }} + {{ navigator?.label }} + + + diff --git a/src/views/pages/form/FormBasic.vue b/src/views/pages/form/FormBasic.vue new file mode 100644 index 00000000..fadfed3b --- /dev/null +++ b/src/views/pages/form/FormBasic.vue @@ -0,0 +1,43 @@ + + + diff --git a/src/views/pages/form/FormWithAction.vue b/src/views/pages/form/FormWithAction.vue new file mode 100644 index 00000000..528097d5 --- /dev/null +++ b/src/views/pages/form/FormWithAction.vue @@ -0,0 +1,51 @@ + + +