From a8157dff0e70d2141462dde9b5768b632d4b7f00 Mon Sep 17 00:00:00 2001 From: Harsh Tandiya Date: Mon, 9 Feb 2026 00:58:48 +0530 Subject: [PATCH 1/8] feat: add TypeScript type checking and skip library check - Introduced a new script for TypeScript type checking in package.json. - Updated tsconfig.json to skip library checks for improved build performance. --- frontend/package.json | 1 + frontend/tsconfig.json | 1 + 2 files changed, 2 insertions(+) diff --git a/frontend/package.json b/frontend/package.json index ad40e75..8a0803a 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -8,6 +8,7 @@ "build": "vite build --base=/assets/forms_pro/frontend/ && yarn copy-html-entry", "preview": "vite preview", "lint": "biome check --write .", + "typecheck": "tsc --noEmit", "copy-html-entry": "cp ../forms_pro/public/frontend/index.html ../forms_pro/www/forms.html" }, "dependencies": { diff --git a/frontend/tsconfig.json b/frontend/tsconfig.json index 2a3e1e4..d424370 100644 --- a/frontend/tsconfig.json +++ b/frontend/tsconfig.json @@ -20,6 +20,7 @@ "@/*": ["src/*"] } }, + "skipLibCheck": true, "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue", "src/main.ts"], "references": [{ "path": "./tsconfig.node.json" }] } From f6f911887e3305bbb382e792c0c9e031b91b8fc4 Mon Sep 17 00:00:00 2001 From: Harsh Tandiya Date: Mon, 9 Feb 2026 01:01:06 +0530 Subject: [PATCH 2/8] feat: add TypeScript type checking workflow for frontend - Introduced a new GitHub Actions workflow for TypeScript type checking in the frontend application. - The workflow triggers on pushes and pull requests to the develop branch, ensuring type safety during development. - Configured steps for checking out the code, setting up Node.js, installing dependencies, and running type checks. --- .github/workflows/typecheck.yml | 41 +++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 .github/workflows/typecheck.yml diff --git a/.github/workflows/typecheck.yml b/.github/workflows/typecheck.yml new file mode 100644 index 0000000..611e334 --- /dev/null +++ b/.github/workflows/typecheck.yml @@ -0,0 +1,41 @@ +name: Frontend TypeScript + +on: + push: + branches: + - develop + paths: + - "apps/forms_pro/frontend/**" + - ".github/workflows/typecheck.yml" + pull_request: + paths: + - "apps/forms_pro/frontend/**" + - ".github/workflows/typecheck.yml" + +concurrency: + group: typecheck-forms_pro-${{ github.event.number || github.sha }} + cancel-in-progress: true + +jobs: + typecheck: + name: TypeScript + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: "24" + cache: "yarn" + cache-dependency-path: apps/forms_pro/frontend/yarn.lock + + - name: Install dependencies + working-directory: apps/forms_pro/frontend + run: yarn install --frozen-lockfile + + - name: Type check + working-directory: apps/forms_pro/frontend + run: yarn typecheck From 48a59a94ca4762053f1161beb1487adb847a456e Mon Sep 17 00:00:00 2001 From: Harsh Tandiya Date: Mon, 9 Feb 2026 01:05:56 +0530 Subject: [PATCH 3/8] chore: update typecheck workflow paths and working directories - Simplified paths in the GitHub Actions typecheck workflow to target the frontend directory directly. - Adjusted working directories for dependency installation and type checking to reflect the new structure. --- .github/workflows/typecheck.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/typecheck.yml b/.github/workflows/typecheck.yml index 611e334..0fd6ff1 100644 --- a/.github/workflows/typecheck.yml +++ b/.github/workflows/typecheck.yml @@ -5,11 +5,11 @@ on: branches: - develop paths: - - "apps/forms_pro/frontend/**" + - "frontend/**" - ".github/workflows/typecheck.yml" pull_request: paths: - - "apps/forms_pro/frontend/**" + - "frontend/**" - ".github/workflows/typecheck.yml" concurrency: @@ -30,12 +30,12 @@ jobs: with: node-version: "24" cache: "yarn" - cache-dependency-path: apps/forms_pro/frontend/yarn.lock + cache-dependency-path: frontend/yarn.lock - name: Install dependencies - working-directory: apps/forms_pro/frontend + working-directory: frontend run: yarn install --frozen-lockfile - name: Type check - working-directory: apps/forms_pro/frontend + working-directory: frontend run: yarn typecheck From 7b1b6d4072ee71ed42d6d7873e01e88c23ac5805 Mon Sep 17 00:00:00 2001 From: Harsh Tandiya Date: Wed, 11 Feb 2026 01:11:39 +0530 Subject: [PATCH 4/8] chore: update TypeScript configuration and add typecheck script - Changed the TypeScript library target from ES2020 to ES2022 in tsconfig.json for improved features. - Updated the include paths in tsconfig.json to include types.d.ts and added an exclude rule for node_modules. - Replaced the typecheck command in package.json with a new script (typecheck.sh) that filters out errors from node_modules. - Introduced typecheck.sh to streamline type checking and ignore irrelevant errors from third-party libraries. --- frontend/package.json | 2 +- frontend/tsconfig.json | 6 +++--- frontend/typecheck.sh | 13 +++++++++++++ frontend/types.d.ts | 6 ++++++ 4 files changed, 23 insertions(+), 4 deletions(-) create mode 100755 frontend/typecheck.sh create mode 100644 frontend/types.d.ts diff --git a/frontend/package.json b/frontend/package.json index 8a0803a..ff147f6 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -8,7 +8,7 @@ "build": "vite build --base=/assets/forms_pro/frontend/ && yarn copy-html-entry", "preview": "vite preview", "lint": "biome check --write .", - "typecheck": "tsc --noEmit", + "typecheck": "./typecheck.sh", "copy-html-entry": "cp ../forms_pro/public/frontend/index.html ../forms_pro/www/forms.html" }, "dependencies": { diff --git a/frontend/tsconfig.json b/frontend/tsconfig.json index d424370..7958e81 100644 --- a/frontend/tsconfig.json +++ b/frontend/tsconfig.json @@ -2,7 +2,7 @@ "compilerOptions": { "target": "ES2020", "useDefineForClassFields": true, - "lib": ["ES2020", "DOM", "DOM.Iterable"], + "lib": ["ES2022", "DOM", "DOM.Iterable"], "module": "ESNext", "skipLibCheck": true, "moduleResolution": "bundler", @@ -20,7 +20,7 @@ "@/*": ["src/*"] } }, - "skipLibCheck": true, - "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue", "src/main.ts"], + "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue", "src/main.ts", "types.d.ts"], + "exclude": ["node_modules"], "references": [{ "path": "./tsconfig.node.json" }] } diff --git a/frontend/typecheck.sh b/frontend/typecheck.sh new file mode 100755 index 0000000..be618b5 --- /dev/null +++ b/frontend/typecheck.sh @@ -0,0 +1,13 @@ +#!/bin/bash +# Typecheck script that filters out errors from node_modules +# Doing this because frappe-ui has a lot of errors that are not related to our code +OUTPUT=$(tsc --noEmit 2>&1) +ERRORS=$(echo "$OUTPUT" | grep -E "^(src/|error TS)" | grep -v "node_modules/") + +if [ -n "$ERRORS" ]; then + echo "$ERRORS" + exit 1 +else + echo "Type check completed successfully (node_modules errors ignored)" + exit 0 +fi diff --git a/frontend/types.d.ts b/frontend/types.d.ts new file mode 100644 index 0000000..c2d2b70 --- /dev/null +++ b/frontend/types.d.ts @@ -0,0 +1,6 @@ +// Global type declarations to handle Vue files +declare module "*.vue" { + import type { DefineComponent } from "vue"; + const component: DefineComponent<{}, {}, any>; + export default component; +} From df46e23e805a35d6602adb3bff8214fc43de78d7 Mon Sep 17 00:00:00 2001 From: Harsh Tandiya Date: Wed, 11 Feb 2026 01:16:30 +0530 Subject: [PATCH 5/8] fix: update TypeScript imports and improve code consistency - Added missing FormFieldTypes import in editForm store for better type safety. - Updated router beforeEnter and beforeEach hooks to use a consistent parameter naming convention. - Cleaned up trailing commas in computed properties and function calls for improved readability. - Removed unused import in editSubmission store to streamline code. --- frontend/src/router.ts | 4 ++-- frontend/src/stores/editForm.ts | 4 ++-- frontend/src/stores/editSubmission.ts | 2 +- frontend/src/stores/user.ts | 3 ++- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/frontend/src/router.ts b/frontend/src/router.ts index 1e06ef3..e08911b 100644 --- a/frontend/src/router.ts +++ b/frontend/src/router.ts @@ -32,7 +32,7 @@ const routes: RouteRecordRaw[] = [ name: "Form Submission Page", component: () => import("@/pages/SubmissionPage.vue"), meta: { allowGuest: true }, - beforeEnter: async (to, from) => { + beforeEnter: async (to, _from) => { const loginRequired = await isLoginRequired(to.params.route as string); if (loginRequired && !session.isLoggedIn) { @@ -54,7 +54,7 @@ const router = createRouter({ routes, }); -router.beforeEach(async (to, from, next) => { +router.beforeEach(async (to, _from, next) => { let isLoggedIn = session.isLoggedIn; try { await userResource.promise; diff --git a/frontend/src/stores/editForm.ts b/frontend/src/stores/editForm.ts index 03cd337..4425f7b 100644 --- a/frontend/src/stores/editForm.ts +++ b/frontend/src/stores/editForm.ts @@ -2,7 +2,7 @@ import { defineStore } from "pinia"; import { ref, computed } from "vue"; import { createDocumentResource, createResource } from "frappe-ui"; import { mapDoctypeFieldForForm } from "@/utils/form_fields"; -import { FormField } from "@/types/formfield"; +import { FormField, FormFieldTypes } from "@/types/formfield"; import { Form } from "@/types/form"; import { toast } from "vue-sonner"; @@ -155,7 +155,7 @@ export const useEditForm = defineStore("editForm", () => { if (formResource.value?.doc) { const newField: FormField = { idx: formResource.value.doc.fields.length + 1, - fieldtype, + fieldtype: fieldtype as FormFieldTypes, label: "", fieldname: "", options: "", diff --git a/frontend/src/stores/editSubmission.ts b/frontend/src/stores/editSubmission.ts index 6de26c7..5a7b57c 100644 --- a/frontend/src/stores/editSubmission.ts +++ b/frontend/src/stores/editSubmission.ts @@ -1,4 +1,4 @@ -import { createDocumentResource, createResource } from "frappe-ui"; +import { createDocumentResource } from "frappe-ui"; import { defineStore } from "pinia"; import { computed, ref } from "vue"; import { toast } from "vue-sonner"; diff --git a/frontend/src/stores/user.ts b/frontend/src/stores/user.ts index 99090b2..a593972 100644 --- a/frontend/src/stores/user.ts +++ b/frontend/src/stores/user.ts @@ -57,6 +57,7 @@ export const useUser = defineStore("user", () => { userTeamsResource.fetch(); } + // @ts-ignore function getCurrentTeamFromAllTeams() { return userTeams.value?.find((team) => team.is_current); } @@ -95,7 +96,7 @@ export const useUser = defineStore("user", () => { team_name: teamName, }; }, - onSuccess(data: CreateTeamResponse) { + onSuccess() { userTeamsResource.reload(); toast.success("Team created successfully"); }, From f18987ada7813383f40f9fcf4508dd6129edb10a Mon Sep 17 00:00:00 2001 From: Harsh Tandiya Date: Wed, 11 Feb 2026 01:20:28 +0530 Subject: [PATCH 6/8] chore: add vue-tsc for improved TypeScript type checking - Updated package.json to include vue-tsc for enhanced type checking capabilities. - Modified typecheck.sh to utilize vue-tsc instead of tsc, streamlining the type checking process. - Updated yarn.lock to reflect new dependencies and versions for better compatibility. --- frontend/package.json | 3 +- frontend/typecheck.sh | 2 +- frontend/yarn.lock | 111 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 114 insertions(+), 2 deletions(-) diff --git a/frontend/package.json b/frontend/package.json index ff147f6..803f46d 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -36,6 +36,7 @@ "tailwindcss": "^3.4.15", "typescript": "^5.9.3", "vite": "^5.4.10", - "vitest": "^2.1.8" + "vitest": "^2.1.8", + "vue-tsc": "^3.2.4" } } diff --git a/frontend/typecheck.sh b/frontend/typecheck.sh index be618b5..2c50dfa 100755 --- a/frontend/typecheck.sh +++ b/frontend/typecheck.sh @@ -1,7 +1,7 @@ #!/bin/bash # Typecheck script that filters out errors from node_modules # Doing this because frappe-ui has a lot of errors that are not related to our code -OUTPUT=$(tsc --noEmit 2>&1) +OUTPUT=$(vue-tsc --noEmit 2>&1) ERRORS=$(echo "$OUTPUT" | grep -E "^(src/|error TS)" | grep -v "node_modules/") if [ -n "$ERRORS" ]; then diff --git a/frontend/yarn.lock b/frontend/yarn.lock index 7ca0050..1c75275 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -49,6 +49,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz#a7054dcc145a967dd4dc8fee845a57c1316c9df8" integrity sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow== +"@babel/helper-validator-identifier@^7.28.5": + version "7.28.5" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz#010b6938fab7cb7df74aa2bbc06aa503b8fe5fb4" + integrity sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q== + "@babel/parser@^7.25.4", "@babel/parser@^7.28.3": version "7.28.4" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.28.4.tgz#da25d4643532890932cc03f7705fe19637e03fa8" @@ -56,6 +61,13 @@ dependencies: "@babel/types" "^7.28.4" +"@babel/parser@^7.29.0": + version "7.29.0" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.29.0.tgz#669ef345add7d057e92b7ed15f0bac07611831b6" + integrity sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww== + dependencies: + "@babel/types" "^7.29.0" + "@babel/types@^7.25.4", "@babel/types@^7.28.4": version "7.28.4" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.28.4.tgz#0a4e618f4c60a7cd6c11cb2d48060e4dbe38ac3a" @@ -64,6 +76,14 @@ "@babel/helper-string-parser" "^7.27.1" "@babel/helper-validator-identifier" "^7.27.1" +"@babel/types@^7.29.0": + version "7.29.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.29.0.tgz#9f5b1e838c446e72cf3cd4b918152b8c605e37c7" + integrity sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A== + dependencies: + "@babel/helper-string-parser" "^7.27.1" + "@babel/helper-validator-identifier" "^7.28.5" + "@bcoe/v8-coverage@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" @@ -996,6 +1016,27 @@ loupe "^3.1.2" tinyrainbow "^1.2.0" +"@volar/language-core@2.4.27": + version "2.4.27" + resolved "https://registry.yarnpkg.com/@volar/language-core/-/language-core-2.4.27.tgz#c66d44cd22a914384d238bbcd0f621ecc57e3618" + integrity sha512-DjmjBWZ4tJKxfNC1F6HyYERNHPYS7L7OPFyCrestykNdUZMFYzI9WTyvwPcaNaHlrEUwESHYsfEw3isInncZxQ== + dependencies: + "@volar/source-map" "2.4.27" + +"@volar/source-map@2.4.27": + version "2.4.27" + resolved "https://registry.yarnpkg.com/@volar/source-map/-/source-map-2.4.27.tgz#8ce6f16e207987078fd866e2faf65c35c4d15987" + integrity sha512-ynlcBReMgOZj2i6po+qVswtDUeeBRCTgDurjMGShbm8WYZgJ0PA4RmtebBJ0BCYol1qPv3GQF6jK7C9qoVc7lg== + +"@volar/typescript@2.4.27": + version "2.4.27" + resolved "https://registry.yarnpkg.com/@volar/typescript/-/typescript-2.4.27.tgz#8950318a33d5dfcdc4b0e5bbe5a38c1b8383eae6" + integrity sha512-eWaYCcl/uAPInSK2Lze6IqVWaBu/itVqR5InXcHXFyles4zO++Mglt3oxdgj75BDcv1Knr9Y93nowS8U3wqhxg== + dependencies: + "@volar/language-core" "2.4.27" + path-browserify "^1.0.1" + vscode-uri "^3.0.8" + "@vue/compiler-core@3.5.21": version "3.5.21" resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.5.21.tgz#5915b19273f0492336f0beb227aba86813e2c8a8" @@ -1007,6 +1048,17 @@ estree-walker "^2.0.2" source-map-js "^1.2.1" +"@vue/compiler-core@3.5.28": + version "3.5.28" + resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.5.28.tgz#8298ab91d34b2c0d7d398384cd840471919e7e34" + integrity sha512-kviccYxTgoE8n6OCw96BNdYlBg2GOWfBuOW4Vqwrt7mSKWKwFVvI8egdTltqRgITGPsTFYtKYfxIG8ptX2PJHQ== + dependencies: + "@babel/parser" "^7.29.0" + "@vue/shared" "3.5.28" + entities "^7.0.1" + estree-walker "^2.0.2" + source-map-js "^1.2.1" + "@vue/compiler-dom@3.5.21": version "3.5.21" resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.5.21.tgz#26126447fe1e1d16c8cbac45b26e66b3f7175f65" @@ -1015,6 +1067,14 @@ "@vue/compiler-core" "3.5.21" "@vue/shared" "3.5.21" +"@vue/compiler-dom@^3.5.0": + version "3.5.28" + resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.5.28.tgz#4e27b885898f4799d95305dfc56d14c2dcf8e5ba" + integrity sha512-/1ZepxAb159jKR1btkefDP+J2xuWL5V3WtleRmxaT+K2Aqiek/Ab/+Ebrw2pPj0sdHO8ViAyyJWfhXXOP/+LQA== + dependencies: + "@vue/compiler-core" "3.5.28" + "@vue/shared" "3.5.28" + "@vue/compiler-sfc@3.5.21": version "3.5.21" resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.5.21.tgz#e48189ef3ffe334c864c2625389ebe3bb4fa41eb" @@ -1070,6 +1130,19 @@ dependencies: rfdc "^1.4.1" +"@vue/language-core@3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@vue/language-core/-/language-core-3.2.4.tgz#03bb7a67ab8639fabb2cc4e49360fc742e99816a" + integrity sha512-bqBGuSG4KZM45KKTXzGtoCl9cWju5jsaBKaJJe3h5hRAAWpZUuj5G+L+eI01sPIkm4H6setKRlw7E85wLdDNew== + dependencies: + "@volar/language-core" "2.4.27" + "@vue/compiler-dom" "^3.5.0" + "@vue/shared" "^3.5.0" + alien-signals "^3.0.0" + muggle-string "^0.4.1" + path-browserify "^1.0.1" + picomatch "^4.0.2" + "@vue/reactivity@3.5.21": version "3.5.21" resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.5.21.tgz#34d4532c325876cf5481206060a3d525862c8ac5" @@ -1108,6 +1181,11 @@ resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.5.21.tgz#505edb122629d1979f70a2a65ca0bd4050dc2e54" integrity sha512-+2k1EQpnYuVuu3N7atWyG3/xoFWIVJZq4Mz8XNOdScFI0etES75fbny/oU4lKWk/577P1zmg0ioYvpGEDZ3DLw== +"@vue/shared@3.5.28", "@vue/shared@^3.5.0": + version "3.5.28" + resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.5.28.tgz#ed9b6785e9452621ad3ab2f2775e9cba494a9ef4" + integrity sha512-cfWa1fCGBxrvaHRhvV3Is0MgmrbSCxYTXCSCau2I0a1Xw1N1pHAvkWCiXPRAqjvToILvguNyEwjevUqAuBQWvQ== + "@vueuse/core@^10.11.0", "@vueuse/core@^10.4.1": version "10.11.1" resolved "https://registry.yarnpkg.com/@vueuse/core/-/core-10.11.1.tgz#15d2c0b6448d2212235b23a7ba29c27173e0c2c6" @@ -1181,6 +1259,11 @@ agent-base@^7.1.0, agent-base@^7.1.2: resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-7.1.4.tgz#e3cd76d4c548ee895d3c3fd8dc1f6c5b9032e7a8" integrity sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ== +alien-signals@^3.0.0: + version "3.1.2" + resolved "https://registry.yarnpkg.com/alien-signals/-/alien-signals-3.1.2.tgz#26e623e3ed81e401df1a7c503f726e2288a4fa02" + integrity sha512-d9dYqZTS90WLiU0I5c6DHj/HcKkF8ZyGN3G5x8wSbslulz70KOxaqCT0hQCo9KOyhVqzqGojvNdJXoTumZOtcw== + ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" @@ -1629,6 +1712,11 @@ entities@^6.0.0: resolved "https://registry.yarnpkg.com/entities/-/entities-6.0.1.tgz#c28c34a43379ca7f61d074130b2f5f7020a30694" integrity sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g== +entities@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/entities/-/entities-7.0.1.tgz#26e8a88889db63417dcb9a1e79a3f1bc92b5976b" + integrity sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA== + es-define-property@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa" @@ -2364,6 +2452,11 @@ ms@^2.1.3: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== +muggle-string@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/muggle-string/-/muggle-string-0.4.1.tgz#3b366bd43b32f809dc20659534dd30e7c8a0d328" + integrity sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ== + mz@^2.7.0: version "2.7.0" resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32" @@ -2462,6 +2555,11 @@ parse5@^7.1.2: dependencies: entities "^6.0.0" +path-browserify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd" + integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g== + path-key@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" @@ -3421,6 +3519,11 @@ vitest@^2.1.8: vite-node "2.1.9" why-is-node-running "^2.3.0" +vscode-uri@^3.0.8: + version "3.1.0" + resolved "https://registry.yarnpkg.com/vscode-uri/-/vscode-uri-3.1.0.tgz#dd09ec5a66a38b5c3fffc774015713496d14e09c" + integrity sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ== + vue-demi@>=0.13.0, vue-demi@>=0.14.8: version "0.14.10" resolved "https://registry.yarnpkg.com/vue-demi/-/vue-demi-0.14.10.tgz#afc78de3d6f9e11bf78c55e8510ee12814522f04" @@ -3438,6 +3541,14 @@ vue-sonner@^2.0.9: resolved "https://registry.yarnpkg.com/vue-sonner/-/vue-sonner-2.0.9.tgz#32ec9a394eb8903bb40e48d974ce55ffa6be8dc4" integrity sha512-i6BokNlNDL93fpzNxN/LZSn6D6MzlO+i3qXt6iVZne3x1k7R46d5HlFB4P8tYydhgqOrRbIZEsnRd3kG7qGXyw== +vue-tsc@^3.2.4: + version "3.2.4" + resolved "https://registry.yarnpkg.com/vue-tsc/-/vue-tsc-3.2.4.tgz#a8cebd4b44e6804a99f4d88a8161a4bfb293c3b4" + integrity sha512-xj3YCvSLNDKt1iF9OcImWHhmYcihVu9p4b9s4PGR/qp6yhW+tZJaypGxHScRyOrdnHvaOeF+YkZOdKwbgGvp5g== + dependencies: + "@volar/typescript" "2.4.27" + "@vue/language-core" "3.2.4" + vue@^3.5.13: version "3.5.21" resolved "https://registry.yarnpkg.com/vue/-/vue-3.5.21.tgz#30af9553fd9642870321b7dc547b46c395cb7b91" From 8af8a4179fc66b86686920e0f4ac6b2c0a67b950 Mon Sep 17 00:00:00 2001 From: Harsh Tandiya Date: Wed, 11 Feb 2026 01:23:36 +0530 Subject: [PATCH 7/8] fix: add Vue ignore comments for TypeScript compatibility - Added `` comments in Attachment.vue and AccessSection.vue to suppress TypeScript warnings. - Updated Dashboard.vue to remove unnecessary template parameters for improved clarity. --- frontend/src/components/fields/Attachment.vue | 2 ++ frontend/src/components/form/manage/AccessSection.vue | 1 + frontend/src/pages/Dashboard.vue | 2 +- 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/frontend/src/components/fields/Attachment.vue b/frontend/src/components/fields/Attachment.vue index 6a2d225..3f850e2 100644 --- a/frontend/src/components/fields/Attachment.vue +++ b/frontend/src/components/fields/Attachment.vue @@ -11,6 +11,7 @@ const props = defineProps({ const emit = defineEmits(["update:value"]); +// @ts-ignore const value = defineModel(); const inPreview = ref(false); @@ -68,6 +69,7 @@ const handleRemove = () => { v-bind="props.field" @success="(file: FileType) => handleChange(file)" > +