From 0bd1fc6b9733c848bf9aeaedf1a95c5d35045681 Mon Sep 17 00:00:00 2001 From: idonice Date: Thu, 24 Jul 2025 10:40:59 +0300 Subject: [PATCH 1/5] fix group form error message --- backend/package-lock.json | 55 ++++++++++++++++++++ backend/package.json | 3 ++ frontend/app/components/groups/GroupForm.tsx | 20 ++----- frontend/app/lib/schemas/new-group.schema.ts | 12 ----- 4 files changed, 61 insertions(+), 29 deletions(-) diff --git a/backend/package-lock.json b/backend/package-lock.json index 947791b2..2de289f9 100644 --- a/backend/package-lock.json +++ b/backend/package-lock.json @@ -45,13 +45,16 @@ "@nestjs/testing": "^11.0.1", "@swc/cli": "^0.6.0", "@swc/core": "^1.10.7", + "@types/aria-query": "^5.0.4", "@types/express": "^5.0.0", "@types/jest": "^29.5.14", + "@types/jsdom": "^21.1.7", "@types/multer": "^1.4.13", "@types/node": "^22.10.7", "@types/passport-jwt": "^4.0.1", "@types/passport-local": "^1.0.38", "@types/supertest": "^6.0.2", + "@types/tough-cookie": "^4.0.5", "eslint": "^9.18.0", "eslint-config-prettier": "^10.0.1", "eslint-plugin-prettier": "^5.2.2", @@ -2795,6 +2798,13 @@ "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", "devOptional": true }, + "node_modules/@types/aria-query": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz", + "integrity": "sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/babel__core": { "version": "7.20.5", "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", @@ -2965,6 +2975,18 @@ "pretty-format": "^29.0.0" } }, + "node_modules/@types/jsdom": { + "version": "21.1.7", + "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-21.1.7.tgz", + "integrity": "sha512-yOriVnggzrnQ3a9OKOCxaVuSug3w3/SbOj5i7VwXWZEyUNl3bLF9V3MfxGbZKuwqJOQyRfqXyROBB1CoZLFWzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "@types/tough-cookie": "*", + "parse5": "^7.0.0" + } + }, "node_modules/@types/json-schema": { "version": "7.0.15", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", @@ -3119,6 +3141,13 @@ "@types/superagent": "^8.1.0" } }, + "node_modules/@types/tough-cookie": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz", + "integrity": "sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/validator": { "version": "13.15.0", "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.15.0.tgz", @@ -5128,6 +5157,19 @@ "node": ">=10.13.0" } }, + "node_modules/entities": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -8316,6 +8358,19 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/parse5": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", + "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "entities": "^6.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", diff --git a/backend/package.json b/backend/package.json index 7a2e76f9..a51b3dd3 100644 --- a/backend/package.json +++ b/backend/package.json @@ -58,13 +58,16 @@ "@nestjs/testing": "^11.0.1", "@swc/cli": "^0.6.0", "@swc/core": "^1.10.7", + "@types/aria-query": "^5.0.4", "@types/express": "^5.0.0", "@types/jest": "^29.5.14", + "@types/jsdom": "^21.1.7", "@types/multer": "^1.4.13", "@types/node": "^22.10.7", "@types/passport-jwt": "^4.0.1", "@types/passport-local": "^1.0.38", "@types/supertest": "^6.0.2", + "@types/tough-cookie": "^4.0.5", "eslint": "^9.18.0", "eslint-config-prettier": "^10.0.1", "eslint-plugin-prettier": "^5.2.2", diff --git a/frontend/app/components/groups/GroupForm.tsx b/frontend/app/components/groups/GroupForm.tsx index 5f63fd4c..ae9a3de6 100644 --- a/frontend/app/components/groups/GroupForm.tsx +++ b/frontend/app/components/groups/GroupForm.tsx @@ -39,7 +39,6 @@ type Props = { groupName?: string; gameTypes?: GameType[]; userIds?: string[]; - groupPicture?: string | undefined; }; }; @@ -52,11 +51,12 @@ const NewGroupForm: React.FC = ({ const [submitClicked, setSubmitClicked] = useState(false); const form = useForm({ resolver: zodResolver(formSchema), + mode: "onChange", + reValidateMode: "onChange", defaultValues: { groupName: "", gameTypes: [], userIds: [], - groupPicture: undefined, }, }); @@ -123,7 +123,7 @@ const NewGroupForm: React.FC = ({ name="gameTypes" render={({ field }) => ( - איזה סוג משחקים תשחקו? + איזה סוג משחקים תשחקו? (חובה)
@@ -174,20 +174,6 @@ const NewGroupForm: React.FC = ({ /> )} - ( - - תמונה (אופציונלי) - - - - - - )} - /> -