-
Signup Register
+
+
+
新規登録
+
+ *
+ がついた項目は必須です。
+
+
+
+
+ ユーザー名
+ *
+
+
+
+
+ 文字数は〇以上〇以下で、半角英数字とアンダースコアのみが使用できます。
+
+
+
+
+
+ メールアドレス
+
+
+
+ {{ emailAddress }}
+
+
+
+
+
+ パスワード
+ *
+
+
+
+
+ 文字数は〇以上〇以下で、半角英数字と記号が使用できます。
+
+
+ 英字、数字、記号がそれぞれ1文字以上含まれている必要があります。
+
+
+
+
+
+
+
From 824fc4fbd7a1984f6ec4f6be07c9f5e566ee44d2 Mon Sep 17 00:00:00 2001
From: Eraxyso <130852025+Eraxyso@users.noreply.github.com>
Date: Sat, 14 Dec 2024 17:23:09 +0000
Subject: [PATCH 04/11] feat: add the logical processing for signup-related
pages
---
.env.development | 1 +
env.d.ts | 8 ++++
package-lock.json | 18 ++++++++
package.json | 2 +
src/components/Controls/OAuthButton.vue | 61 +++++++++++++++++++++++--
src/views/SignupAfterMailView.vue | 7 ++-
src/views/SignupRegisterView.vue | 57 +++++++++++++++++++++--
src/views/SignupView.vue | 25 +++++++++-
vite.config.ts | 3 +-
9 files changed, 169 insertions(+), 13 deletions(-)
create mode 100644 .env.development
diff --git a/.env.development b/.env.development
new file mode 100644
index 0000000..1d0b57f
--- /dev/null
+++ b/.env.development
@@ -0,0 +1 @@
+VITE_API_BASE_URL = http://localhost:4010
\ No newline at end of file
diff --git a/env.d.ts b/env.d.ts
index 11f02fe..84087a9 100644
--- a/env.d.ts
+++ b/env.d.ts
@@ -1 +1,9 @@
///
+
+interface ImportMetaEnv {
+ readonly VITE_API_BASE_URL: string;
+}
+
+interface ImportMeta {
+ readonly env: ImportMetaEnv;
+}
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index cd291e0..d951b8a 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -10,6 +10,7 @@
"dependencies": {
"@types/eslint__js": "^8.42.3",
"eslint-config-prettier": "^9.1.0",
+ "jwt-decode": "^4.0.0",
"validator": "^13.12.0",
"vue": "^3.5.6",
"vue-router": "^4.3.3"
@@ -18,6 +19,7 @@
"@eslint/js": "^9.11.0",
"@rushstack/eslint-patch": "^1.8.0",
"@tsconfig/node20": "^20.1.4",
+ "@types/jwt-decode": "^2.2.1",
"@types/node": "^20.14.5",
"@types/validator": "^13.12.2",
"@vitejs/plugin-vue": "^5.1.3",
@@ -1019,6 +1021,13 @@
"integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==",
"license": "MIT"
},
+ "node_modules/@types/jwt-decode": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/@types/jwt-decode/-/jwt-decode-2.2.1.tgz",
+ "integrity": "sha512-aWw2YTtAdT7CskFyxEX2K21/zSDStuf/ikI3yBqmwpwJF0pS+/IX5DWv+1UFffZIbruP6cnT9/LAJV1gFwAT1A==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/@types/node": {
"version": "20.14.9",
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.9.tgz",
@@ -2713,6 +2722,15 @@
"resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
"integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw=="
},
+ "node_modules/jwt-decode": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/jwt-decode/-/jwt-decode-4.0.0.tgz",
+ "integrity": "sha512-+KJGIyHgkGuIq3IEBNftfhW/LfWhXUIY6OmyVWjliu5KH1y0fw7VQ8YndE2O4qZdMSd9SqbnC8GOcZEy0Om7sA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ }
+ },
"node_modules/keyv": {
"version": "4.5.4",
"resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz",
diff --git a/package.json b/package.json
index f6812ec..bba0f6d 100644
--- a/package.json
+++ b/package.json
@@ -17,6 +17,7 @@
"dependencies": {
"@types/eslint__js": "^8.42.3",
"eslint-config-prettier": "^9.1.0",
+ "jwt-decode": "^4.0.0",
"validator": "^13.12.0",
"vue": "^3.5.6",
"vue-router": "^4.3.3"
@@ -25,6 +26,7 @@
"@eslint/js": "^9.11.0",
"@rushstack/eslint-patch": "^1.8.0",
"@tsconfig/node20": "^20.1.4",
+ "@types/jwt-decode": "^2.2.1",
"@types/node": "^20.14.5",
"@types/validator": "^13.12.2",
"@vitejs/plugin-vue": "^5.1.3",
diff --git a/src/components/Controls/OAuthButton.vue b/src/components/Controls/OAuthButton.vue
index 48ec7a3..eb3583a 100644
--- a/src/components/Controls/OAuthButton.vue
+++ b/src/components/Controls/OAuthButton.vue
@@ -1,11 +1,66 @@
diff --git a/src/views/SignupAfterMailView.vue b/src/views/SignupAfterMailView.vue
index d7cc5d7..3d9df78 100644
--- a/src/views/SignupAfterMailView.vue
+++ b/src/views/SignupAfterMailView.vue
@@ -1,12 +1,15 @@
diff --git a/src/views/SignupRegisterView.vue b/src/views/SignupRegisterView.vue
index 6ab2520..3377f6b 100644
--- a/src/views/SignupRegisterView.vue
+++ b/src/views/SignupRegisterView.vue
@@ -1,15 +1,59 @@
@@ -68,7 +112,10 @@ function onSignupRegister() {
*