+
- 安装页面
+
+
+
+ {{ t("欢迎使用 MCSManager 管理面板") }}
+
+
+
+ {{ t("开源,分布式,开箱即用,支持 Minecraft 游戏服务端和所有控制台程序的管理面板") }}
+
+
+
+
+ {{ t("面板已安装,不可重复安装") }}
+
+
+ {{ t("开始使用") }}
+
+
+
+
+
+ Reference: https://mcsmanager.com/
+
+
+
+ Released under the Apache-2.0 License.
+
+
+
+
+
+
+
+
+
+
+ {{ t("创建一个访问面板的管理员账号") }}
+
+
+
+ {{ t("用户名支持任何语言,请务必保证您的密码安全。") }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ t("创建账号") }}
+
+
+
+
+
+
+
+
+
+
+
+ {{ t("大功告成!") }}
+
+
+
+ {{ t("最后,您是第一次使用此软件吗?") }}
+
+
+
+
+
+ {{ t("首次使用") }}
+
+
+ {{ t("我们将引导你使用并部署你的应用程序。") }}
+
+
+
+
+ {{ t("老用户") }}
+
+
+ {{ t("以更专业化的界面供你使用。") }}
+
+
+
@@ -90,11 +296,28 @@
.install-panel {
transition: all 0.6s;
- max-width: 420px;
- max-height: 400px;
+ max-width: 460px;
+ max-height: 360px;
width: 100%;
background-color: var(--login-panel-bg);
backdrop-filter: saturate(120%) blur(12px);
+ padding: 40px;
+ }
+}
+
+.final-btn {
+ padding: 10px 12px;
+ border: 1px solid var(--color-gray-2);
+ background-color: var(--color-gray-2);
+
+ cursor: pointer;
+ user-select: none;
+ transition: all 0.4s;
+ border-radius: 6px;
+
+ &:hover {
+ border: 1px solid var(--color-gray-8);
+ box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.16);
}
}
From 7f940743b1a46e803d07598745736c118e7aa7d0 Mon Sep 17 00:00:00 2001
From: Lazy <2211717435@qq.com>
Date: Sat, 21 Oct 2023 20:05:47 +0800
Subject: [PATCH 3/6] Fix: auto login
---
frontend/src/views/Install.vue | 9 +--------
1 file changed, 1 insertion(+), 8 deletions(-)
diff --git a/frontend/src/views/Install.vue b/frontend/src/views/Install.vue
index a6848b00..65a4254c 100644
--- a/frontend/src/views/Install.vue
+++ b/frontend/src/views/Install.vue
@@ -2,7 +2,7 @@
import { onMounted, ref, reactive } from "vue";
import CardPanel from "@/components/CardPanel.vue";
import { t, i18n } from "@/lang/i18n";
-import { panelInstall, updateSettings, loginUser } from "@/services/apis";
+import { panelInstall, updateSettings } from "@/services/apis";
import { message } from "ant-design-vue";
import type { FormInstance } from "ant-design-vue";
import { useAppRouters } from "@/hooks/useAppRouters";
@@ -19,7 +19,6 @@ const formData = reactive({
});
const { execute: createAdminUser } = panelInstall();
-const { execute: login } = loginUser();
const installLoading = ref(false);
const createUser = async () => {
try {
@@ -29,12 +28,6 @@ const createUser = async () => {
data: formData
});
await sleep(100);
- await login({
- data: {
- ...formData
- }
- });
- await sleep(200);
await updateUserInfo();
step.value++;
} catch (err: any) {
From f26cf94c526ae19d372741827720e29759739c73 Mon Sep 17 00:00:00 2001
From: Lazy <2211717435@qq.com>
Date: Sat, 21 Oct 2023 20:09:12 +0800
Subject: [PATCH 4/6] Optimize: pwd format verification
---
frontend/src/views/Install.vue | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/frontend/src/views/Install.vue b/frontend/src/views/Install.vue
index 65a4254c..3544b989 100644
--- a/frontend/src/views/Install.vue
+++ b/frontend/src/views/Install.vue
@@ -222,7 +222,8 @@ onMounted(async () => {
:rules="[
{
required: true,
- message: t('请输入密码,9 到 36 个字符,必须包含大小写字母和数字')
+ pattern: /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d).{9,36}$/,
+ message: t('密码必须是 9 到 36 个字符,并且包含大小写字母和数字')
}
]"
>
From 7030ab18c61233a2c18886c6adb44e132f78802c Mon Sep 17 00:00:00 2001
From: Lazy <2211717435@qq.com>
Date: Sat, 21 Oct 2023 20:15:29 +0800
Subject: [PATCH 5/6] Fix: button margin
---
frontend/src/views/Install.vue | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/frontend/src/views/Install.vue b/frontend/src/views/Install.vue
index 3544b989..303fb940 100644
--- a/frontend/src/views/Install.vue
+++ b/frontend/src/views/Install.vue
@@ -163,7 +163,7 @@ onMounted(async () => {
Date: Tue, 24 Oct 2023 09:22:31 +0800
Subject: [PATCH 6/6] Optimize: background skeleton
---
frontend/src/views/Install.vue | 74 +++++++---------------------------
1 file changed, 14 insertions(+), 60 deletions(-)
diff --git a/frontend/src/views/Install.vue b/frontend/src/views/Install.vue
index 303fb940..d60186fe 100644
--- a/frontend/src/views/Install.vue
+++ b/frontend/src/views/Install.vue
@@ -7,7 +7,18 @@ import { message } from "ant-design-vue";
import type { FormInstance } from "ant-design-vue";
import { useAppRouters } from "@/hooks/useAppRouters";
import { useAppStateStore } from "@/stores/useAppStateStore";
-import { sleep } from "@/tools/commom";
+
+const skeletons = [
+ { span: 6, rows: 4 },
+ { span: 6, rows: 4 },
+ { span: 6, rows: 4 },
+ { span: 6, rows: 4 },
+ { span: 24, rows: 9 },
+ { span: 8, rows: 6 },
+ { span: 16, rows: 6 },
+ { span: 8, rows: 6 },
+ { span: 16, rows: 6 }
+];
const { updateUserInfo, state: appState } = useAppStateStore();
const step = ref(1);
@@ -27,7 +38,6 @@ const createUser = async () => {
await createAdminUser({
data: formData
});
- await sleep(100);
await updateUserInfo();
step.value++;
} catch (err: any) {
@@ -83,66 +93,10 @@ onMounted(async () => {
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+