From cce2c23566daee0d45f23f7aecc098322baa52af Mon Sep 17 00:00:00 2001 From: Huskydog9988 <39809509+Huskydog9988@users.noreply.github.com> Date: Sat, 22 Mar 2025 19:37:28 -0400 Subject: [PATCH] use arktype for clientside validation --- server/.vscode/settings.json | 35 ++++---- server/package.json | 1 + server/pages/register.vue | 21 +++-- .../server/api/v1/auth/signup/simple.post.ts | 79 ++++++------------- server/server/tsconfig.json | 5 +- server/tsconfig.json | 5 +- server/yarn.lock | 20 +++++ 7 files changed, 87 insertions(+), 79 deletions(-) diff --git a/server/.vscode/settings.json b/server/.vscode/settings.json index 87ca8efb..e426a5e1 100644 --- a/server/.vscode/settings.json +++ b/server/.vscode/settings.json @@ -1,18 +1,21 @@ { - "spellchecker.ignoreWordsList": [ - "mTLS", - "Wireguard" - ], - "sqltools.connections": [ - { - "previewLimit": 50, - "server": "localhost", - "port": 5432, - "driver": "PostgreSQL", - "name": "drop", - "database": "drop", - "username": "drop", - "password": "drop" - } - ] + "spellchecker.ignoreWordsList": ["mTLS", "Wireguard"], + "sqltools.connections": [ + { + "previewLimit": 50, + "server": "localhost", + "port": 5432, + "driver": "PostgreSQL", + "name": "drop", + "database": "drop", + "username": "drop", + "password": "drop" + } + ], + // allow autocomplete for ArkType expressions like "string | num" + "editor.quickSuggestions": { + "strings": "on" + }, + // prioritize ArkType's "type" for autoimports + "typescript.preferences.autoImportSpecifierExcludeRegexes": ["^(node:)?os$"] } diff --git a/server/package.json b/server/package.json index c114de5a..b05f39ba 100644 --- a/server/package.json +++ b/server/package.json @@ -19,6 +19,7 @@ "@prisma/client": "^6.1.0", "@tailwindcss/vite": "^4.0.6", "argon2": "^0.41.1", + "arktype": "^2.1.10", "axios": "^1.7.7", "bcryptjs": "^2.4.3", "cookie-es": "^1.2.2", diff --git a/server/pages/register.vue b/server/pages/register.vue index 4a7b018c..5574ab44 100644 --- a/server/pages/register.vue +++ b/server/pages/register.vue @@ -188,6 +188,7 @@