From 12aee0ab671faf8e7d0b013085274fe1aa772ef2 Mon Sep 17 00:00:00 2001 From: keqingmoe Date: Sat, 4 Jan 2025 21:07:25 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E6=9E=84=E9=A1=B9=E7=9B=AE=E7=BB=93?= =?UTF-8?q?=E6=9E=84=EF=BC=8C=E7=A7=BB=E9=99=A4=E6=97=A0=E7=94=A8=E7=BB=84?= =?UTF-8?q?=E4=BB=B6=EF=BC=8C=E6=B7=BB=E5=8A=A0=E6=95=B0=E5=AD=A6=E5=BA=93?= =?UTF-8?q?=E4=BE=9D=E8=B5=96=EF=BC=8C=E6=9B=B4=E6=96=B0=E8=B7=AF=E7=94=B1?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E4=BB=A5=E6=94=AF=E6=8C=81=E6=96=B0=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ui/components.d.ts | 24 +- ui/index.html | 2 +- ui/package.json | 1 + ui/src/App.vue | 50 ++- ui/src/components/Auth.vue | 18 +- ui/src/components/HelloWorld.vue | 7 - ui/src/components/HelloWorld2.vue | 157 ------- ui/src/components/Homepage.vue | 71 +++ ui/src/components/Problems.vue | 80 ++++ ui/src/components/RecordList.vue | 42 +- ui/src/components/Study.vue | 74 ++++ ui/src/components/Toy.vue | 80 ---- ui/src/components/admin/AdminPanel.vue | 2 +- .../components/admin/DeleteAccountDialog.vue | 2 +- ui/src/components/admin/LoginForm.vue | 2 +- ui/src/components/admin/Permission.vue | 2 +- ui/src/components/admin/Repasswd2Dialog .vue | 2 +- ui/src/components/admin/RepasswdDialog.vue | 2 +- ui/src/components/study/ManagePanel.vue | 49 +++ ui/src/components/study/Problem.vue | 142 ++++++ ui/src/components/study/ProblemList.vue | 273 ++++++++---- ui/src/components/study/SetList.vue | 409 ++++++++++++++++++ .../components/users/DeleteAccountDialog.vue | 2 +- ui/src/components/users/LoginForm.vue | 5 +- ui/src/components/users/RegisterForm.vue | 7 +- ui/src/components/users/Repasswd2Dialog.vue | 2 +- ui/src/components/users/RepasswdDialog.vue | 2 +- ui/src/components/users/UserPanel.vue | 14 +- ui/src/router/index.ts | 38 +- ui/src/store/auth.ts | 19 +- ui/vite.config.mts | 6 + xmake.lua | 4 +- 32 files changed, 1175 insertions(+), 415 deletions(-) delete mode 100644 ui/src/components/HelloWorld.vue delete mode 100644 ui/src/components/HelloWorld2.vue create mode 100644 ui/src/components/Homepage.vue create mode 100644 ui/src/components/Problems.vue create mode 100644 ui/src/components/Study.vue delete mode 100644 ui/src/components/Toy.vue create mode 100644 ui/src/components/study/ManagePanel.vue create mode 100644 ui/src/components/study/Problem.vue create mode 100644 ui/src/components/study/SetList.vue diff --git a/ui/components.d.ts b/ui/components.d.ts index 833fc1c..24f0478 100644 --- a/ui/components.d.ts +++ b/ui/components.d.ts @@ -7,15 +7,29 @@ export {} /* prettier-ignore */ declare module 'vue' { export interface GlobalComponents { + Admin: typeof import('./src/components/Admin.vue')['default'] + AdminPanel: typeof import('./src/components/admin/AdminPanel.vue')['default'] Auth: typeof import('./src/components/Auth.vue')['default'] + DeleteAccountDialog: typeof import('./src/components/admin/DeleteAccountDialog.vue')['default'] Dialog: typeof import('./src/components/Dialog.vue')['default'] - HelloWorld: typeof import('./src/components/HelloWorld.vue')['default'] - HelloWorld2: typeof import('./src/components/HelloWorld2.vue')['default'] - LoginForm: typeof import('./src/components/LoginForm.vue')['default'] - RegisterForm: typeof import('./src/components/RegisterForm.vue')['default'] + Homepage: typeof import('./src/components/Homepage.vue')['default'] + LoginForm: typeof import('./src/components/admin/LoginForm.vue')['default'] + ManagePanel: typeof import('./src/components/study/ManagePanel.vue')['default'] + Permission: typeof import('./src/components/admin/Permission.vue')['default'] + Problem: typeof import('./src/components/study/Problem.vue')['default'] + ProblemDialog: typeof import('./src/components/study/ProblemDialog.vue')['default'] + ProblemList: typeof import('./src/components/study/ProblemList.vue')['default'] + Problems: typeof import('./src/components/Problems.vue')['default'] + RecordList: typeof import('./src/components/RecordList.vue')['default'] + RegisterForm: typeof import('./src/components/users/RegisterForm.vue')['default'] + Repasswd2Dialog: typeof import('./src/components/users/Repasswd2Dialog.vue')['default'] + 'Repasswd2Dialog ': typeof import('./src/components/admin/Repasswd2Dialog .vue')['default'] + RepasswdDialog: typeof import('./src/components/admin/RepasswdDialog.vue')['default'] RouterLink: typeof import('vue-router')['RouterLink'] RouterView: typeof import('vue-router')['RouterView'] + SetList: typeof import('./src/components/study/SetList.vue')['default'] + Study: typeof import('./src/components/Study.vue')['default'] Toy: typeof import('./src/components/Toy.vue')['default'] - UserPanel: typeof import('./src/components/UserPanel.vue')['default'] + UserPanel: typeof import('./src/components/users/UserPanel.vue')['default'] } } diff --git a/ui/index.html b/ui/index.html index 8abc79c..b077834 100644 --- a/ui/index.html +++ b/ui/index.html @@ -4,7 +4,7 @@ - Welcome to Vuetify 3 + KQM Math
diff --git a/ui/package.json b/ui/package.json index 36a0226..4232c4a 100644 --- a/ui/package.json +++ b/ui/package.json @@ -17,6 +17,7 @@ "core-js": "^3.37.1", "jsonwebtoken": "^9.0.2", "jwt-decode": "^4.0.0", + "mathjs": "^14.0.1", "node-forge": "^1.3.1", "pinia": "^2.3.0", "roboto-fontface": "*", diff --git a/ui/src/App.vue b/ui/src/App.vue index 2b4ff18..4633afe 100644 --- a/ui/src/App.vue +++ b/ui/src/App.vue @@ -1,44 +1,52 @@ diff --git a/ui/src/components/Auth.vue b/ui/src/components/Auth.vue index d795182..ec083b4 100644 --- a/ui/src/components/Auth.vue +++ b/ui/src/components/Auth.vue @@ -1,19 +1,19 @@ diff --git a/ui/src/components/HelloWorld.vue b/ui/src/components/HelloWorld.vue deleted file mode 100644 index be44c5d..0000000 --- a/ui/src/components/HelloWorld.vue +++ /dev/null @@ -1,7 +0,0 @@ - - - diff --git a/ui/src/components/HelloWorld2.vue b/ui/src/components/HelloWorld2.vue deleted file mode 100644 index 75cd267..0000000 --- a/ui/src/components/HelloWorld2.vue +++ /dev/null @@ -1,157 +0,0 @@ - - - diff --git a/ui/src/components/Homepage.vue b/ui/src/components/Homepage.vue new file mode 100644 index 0000000..ea8960c --- /dev/null +++ b/ui/src/components/Homepage.vue @@ -0,0 +1,71 @@ + + + + + diff --git a/ui/src/components/Problems.vue b/ui/src/components/Problems.vue new file mode 100644 index 0000000..2618b2e --- /dev/null +++ b/ui/src/components/Problems.vue @@ -0,0 +1,80 @@ + + + diff --git a/ui/src/components/RecordList.vue b/ui/src/components/RecordList.vue index 1fa4730..ad1b767 100644 --- a/ui/src/components/RecordList.vue +++ b/ui/src/components/RecordList.vue @@ -1,5 +1,6 @@