diff --git a/backend/.github/workflows/codeql-analysis.yml b/backend/.github/workflows/codeql-analysis.yml index 174c78de..a88eaf67 100644 --- a/backend/.github/workflows/codeql-analysis.yml +++ b/backend/.github/workflows/codeql-analysis.yml @@ -31,7 +31,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL diff --git a/backend/.github/workflows/deploy-prep.yml b/backend/.github/workflows/deploy-prep.yml index 39e9ead7..20771fd3 100644 --- a/backend/.github/workflows/deploy-prep.yml +++ b/backend/.github/workflows/deploy-prep.yml @@ -10,7 +10,7 @@ jobs: if: github.repository == 'anuraghazra/github-readme-stats' runs-on: ubuntu-latest steps: - - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Deployment Prep run: python ./.github/workflows/deploy-prep.py - uses: stefanzweifel/git-auto-commit-action@04702edda442b2e678b25b537cec683a1493fcb9 # v7.1.0 diff --git a/backend/.github/workflows/e2e-test.yml b/backend/.github/workflows/e2e-test.yml index 8d0a4578..c75f2db9 100644 --- a/backend/.github/workflows/e2e-test.yml +++ b/backend/.github/workflows/e2e-test.yml @@ -22,7 +22,7 @@ jobs: node-version: [22.x] steps: - - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Setup Node uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0 diff --git a/backend/.github/workflows/empty-issues-closer.yml b/backend/.github/workflows/empty-issues-closer.yml index 7fe82766..e1437a9e 100644 --- a/backend/.github/workflows/empty-issues-closer.yml +++ b/backend/.github/workflows/empty-issues-closer.yml @@ -27,7 +27,7 @@ jobs: runs-on: ubuntu-latest steps: # NOTE: Retrieve issue templates. - - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Run empty issues closer action uses: rickstaa/empty-issues-closer-action@e96914613221511279ca25f50fd4acc85e331d99 # v1.1.74 diff --git a/backend/.github/workflows/generate-theme-doc.yml b/backend/.github/workflows/generate-theme-doc.yml index 6fc170f1..c258889e 100644 --- a/backend/.github/workflows/generate-theme-doc.yml +++ b/backend/.github/workflows/generate-theme-doc.yml @@ -31,7 +31,7 @@ jobs: node-version: [22.x] steps: - - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Setup Node uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0 diff --git a/backend/.github/workflows/ossf-analysis.yml b/backend/.github/workflows/ossf-analysis.yml index d1245cb8..9b53f4bc 100644 --- a/backend/.github/workflows/ossf-analysis.yml +++ b/backend/.github/workflows/ossf-analysis.yml @@ -22,7 +22,7 @@ jobs: steps: - name: "Checkout code" - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 with: persist-credentials: false diff --git a/backend/.github/workflows/preview-theme.yml b/backend/.github/workflows/preview-theme.yml index e7716d99..1d0e8063 100644 --- a/backend/.github/workflows/preview-theme.yml +++ b/backend/.github/workflows/preview-theme.yml @@ -33,7 +33,7 @@ jobs: node-version: [22.x] steps: - - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Setup Node uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0 diff --git a/backend/.github/workflows/stale-theme-pr-closer.yml b/backend/.github/workflows/stale-theme-pr-closer.yml index 99d0ed95..ace72a55 100644 --- a/backend/.github/workflows/stale-theme-pr-closer.yml +++ b/backend/.github/workflows/stale-theme-pr-closer.yml @@ -39,7 +39,7 @@ jobs: node-version: [22.x] steps: - - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Setup Node uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0 diff --git a/backend/.github/workflows/test.yml b/backend/.github/workflows/test.yml index cdc97b0a..bd29d4c1 100644 --- a/backend/.github/workflows/test.yml +++ b/backend/.github/workflows/test.yml @@ -1,5 +1,6 @@ name: Test on: + workflow_dispatch: push: branches: - master @@ -20,7 +21,7 @@ jobs: node-version: [22.x] steps: - - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Setup Node uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0 diff --git a/backend/.github/workflows/theme-prs-closer.yml b/backend/.github/workflows/theme-prs-closer.yml index 614ccfc2..b71a1c18 100644 --- a/backend/.github/workflows/theme-prs-closer.yml +++ b/backend/.github/workflows/theme-prs-closer.yml @@ -23,7 +23,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Check out the code - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Set up Git run: | diff --git a/backend/.github/workflows/update-langs.yml b/backend/.github/workflows/update-langs.yml index 443353a9..7e523989 100644 --- a/backend/.github/workflows/update-langs.yml +++ b/backend/.github/workflows/update-langs.yml @@ -1,5 +1,6 @@ name: Update supported languages on: + workflow_dispatch: schedule: # ┌───────────── minute (0 - 59) # │ ┌───────────── hour (0 - 23) @@ -38,7 +39,7 @@ jobs: node-version: [22.x] steps: - - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Setup Node uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0 @@ -55,7 +56,7 @@ jobs: run: npm run generate-langs-json - name: Create Pull Request if upstream language file is changed - uses: peter-evans/create-pull-request@98357b18bf14b5342f975ff684046ec3b2a07725 # v8.0.0 + uses: peter-evans/create-pull-request@c0f553fe549906ede9cf27b5156039d195d2ece0 # v8.1.0 with: commit-message: "refactor: update languages JSON" branch: "update_langs/patch" diff --git a/backend/package-lock.json b/backend/package-lock.json index 820ca12c..643f5092 100644 --- a/backend/package-lock.json +++ b/backend/package-lock.json @@ -28,9 +28,9 @@ "color-contrast-checker": "^2.1.0", "eslint": "^9.39.2", "eslint-config-prettier": "^10.1.8", - "eslint-plugin-jsdoc": "^62.0.1", + "eslint-plugin-jsdoc": "^62.4.1", "express": "^5.2.1", - "globals": "^17.0.0", + "globals": "^17.1.0", "hjson": "^3.2.2", "husky": "^9.1.7", "jest": "^30.2.0", @@ -39,7 +39,7 @@ "lint-staged": "^16.2.7", "lodash.snakecase": "^4.1.1", "parse-diff": "^0.11.1", - "prettier": "^3.8.0" + "prettier": "^3.8.1" }, "engines": { "node": "24.x" @@ -755,16 +755,16 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.79.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.79.0.tgz", - "integrity": "sha512-q/Nc241VsVRC5b1dgbsOI0fnWfrb1S9sdceFewpDHto4+4r2o6SSCpcY+Z+EdLdMPN6Nsj/PjlPcKag6WbU6XQ==", + "version": "0.83.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.83.0.tgz", + "integrity": "sha512-e1MHSEPJ4m35zkBvNT6kcdeH1SvMaJDsPC3Xhfseg3hvF50FUE3f46Yn36jgbrPYYXezlWUQnevv23c+lx2MCA==", "dev": true, "dependencies": { "@types/estree": "^1.0.8", - "@typescript-eslint/types": "^8.52.0", - "comment-parser": "1.4.1", + "@typescript-eslint/types": "^8.53.1", + "comment-parser": "1.4.5", "esquery": "^1.7.0", - "jsdoc-type-pratt-parser": "~7.0.0" + "jsdoc-type-pratt-parser": "~7.1.0" }, "engines": { "node": "^20.19.0 || ^22.13.0 || >=24" @@ -1900,9 +1900,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "8.53.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.53.0.tgz", - "integrity": "sha512-Bmh9KX31Vlxa13+PqPvt4RzKRN1XORYSLlAE+sO1i28NkisGbTtSLFVB3l7PWdHtR3E0mVMuC7JilWJ99m2HxQ==", + "version": "8.53.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.53.1.tgz", + "integrity": "sha512-jr/swrr2aRmUAUjW5/zQHbMaui//vQlsZcJKijZf3M26bnmLj8LyZUpj8/Rd6uzaek06OWsqdofN/Thenm5O8A==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2883,9 +2883,9 @@ } }, "node_modules/comment-parser": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", - "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.5.tgz", + "integrity": "sha512-aRDkn3uyIlCFfk5NUA+VdwMmMsh8JGhc4hapfV4yxymHGQ3BVskMQfoXGpCo5IoBuQ9tS5iiVKhCpTcB4pW4qw==", "dev": true, "engines": { "node": ">= 12.0.0" @@ -3342,18 +3342,18 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "62.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-62.0.1.tgz", - "integrity": "sha512-TNeqgrE+xjDGCZVlRIiQcnUWNoMlHE5+oIyGbVFbrdIPOkz5ecWAmB26xSgqm2Mz7wny/ztyqCOUOeJhGrElpA==", + "version": "62.4.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-62.4.1.tgz", + "integrity": "sha512-HgX2iN4j104D/mCUqRbhtzSZbph+KO9jfMHiIJjJ19Q+IwLQ5Na2IqvOJYq4S+4kgvEk1w6KYF4vVus6H2wcHg==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.79.0", + "@es-joy/jsdoccomment": "~0.83.0", "@es-joy/resolve.exports": "1.2.0", "are-docs-informative": "^0.0.2", - "comment-parser": "1.4.1", + "comment-parser": "1.4.5", "debug": "^4.4.3", "escape-string-regexp": "^4.0.0", - "espree": "^11.0.0", + "espree": "^11.1.0", "esquery": "^1.7.0", "html-entities": "^2.6.0", "object-deep-merge": "^2.0.0", @@ -3394,9 +3394,9 @@ } }, "node_modules/eslint-plugin-jsdoc/node_modules/espree": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-11.0.0.tgz", - "integrity": "sha512-+gMeWRrIh/NsG+3NaLeWHuyeyk70p2tbvZIWBYcqQ4/7Xvars6GYTZNhF1sIeLcc6Wb11He5ffz3hsHyXFrw5A==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-11.1.0.tgz", + "integrity": "sha512-WFWYhO1fV4iYkqOOvq8FbqIhr2pYfoDY0kCotMkDeNtGpiGGkZ1iov2u8ydjtgM8yF8rzK7oaTbw2NAzbAbehw==", "dev": true, "dependencies": { "acorn": "^8.15.0", @@ -4111,9 +4111,9 @@ } }, "node_modules/globals": { - "version": "17.0.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-17.0.0.tgz", - "integrity": "sha512-gv5BeD2EssA793rlFWVPMMCqefTlpusw6/2TbAVMy0FzcG8wKJn4O+NqJ4+XWmmwrayJgw5TzrmWjFgmz1XPqw==", + "version": "17.1.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-17.1.0.tgz", + "integrity": "sha512-8HoIcWI5fCvG5NADj4bDav+er9B9JMj2vyL2pI8D0eismKyUvPLTSs+Ln3wqhwcp306i73iyVnEKx3F6T47TGw==", "dev": true, "engines": { "node": ">=18" @@ -5516,9 +5516,9 @@ } }, "node_modules/jsdoc-type-pratt-parser": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-7.0.0.tgz", - "integrity": "sha512-c7YbokssPOSHmqTbSAmTtnVgAVa/7lumWNYqomgd5KOMyPrRve2anx6lonfOsXEQacqF9FKVUj7bLg4vRSvdYA==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-7.1.0.tgz", + "integrity": "sha512-SX7q7XyCwzM/MEDCYz0l8GgGbJAACGFII9+WfNYr5SLEKukHWRy2Jk3iWRe7P+lpYJNs7oQ+OSei4JtKGUjd7A==", "dev": true, "engines": { "node": ">=20.0.0" @@ -6557,9 +6557,9 @@ } }, "node_modules/prettier": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.8.0.tgz", - "integrity": "sha512-yEPsovQfpxYfgWNhCfECjG5AQaO+K3dp6XERmOepyPDVqcJm+bjyCVO3pmU+nAPe0N5dDvekfGezt/EIiRe1TA==", + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.8.1.tgz", + "integrity": "sha512-UOnG6LftzbdaHZcKoPFtOcCKztrQ57WkHDeRD9t/PTQtmT0NHSeWWepj6pS0z/N7+08BHFDQVUrfmfMRcZwbMg==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" @@ -8534,16 +8534,16 @@ } }, "@es-joy/jsdoccomment": { - "version": "0.79.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.79.0.tgz", - "integrity": "sha512-q/Nc241VsVRC5b1dgbsOI0fnWfrb1S9sdceFewpDHto4+4r2o6SSCpcY+Z+EdLdMPN6Nsj/PjlPcKag6WbU6XQ==", + "version": "0.83.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.83.0.tgz", + "integrity": "sha512-e1MHSEPJ4m35zkBvNT6kcdeH1SvMaJDsPC3Xhfseg3hvF50FUE3f46Yn36jgbrPYYXezlWUQnevv23c+lx2MCA==", "dev": true, "requires": { "@types/estree": "^1.0.8", - "@typescript-eslint/types": "^8.52.0", - "comment-parser": "1.4.1", + "@typescript-eslint/types": "^8.53.1", + "comment-parser": "1.4.5", "esquery": "^1.7.0", - "jsdoc-type-pratt-parser": "~7.0.0" + "jsdoc-type-pratt-parser": "~7.1.0" } }, "@es-joy/resolve.exports": { @@ -9438,9 +9438,9 @@ "dev": true }, "@typescript-eslint/types": { - "version": "8.53.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.53.0.tgz", - "integrity": "sha512-Bmh9KX31Vlxa13+PqPvt4RzKRN1XORYSLlAE+sO1i28NkisGbTtSLFVB3l7PWdHtR3E0mVMuC7JilWJ99m2HxQ==", + "version": "8.53.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.53.1.tgz", + "integrity": "sha512-jr/swrr2aRmUAUjW5/zQHbMaui//vQlsZcJKijZf3M26bnmLj8LyZUpj8/Rd6uzaek06OWsqdofN/Thenm5O8A==", "dev": true }, "@ungap/structured-clone": { @@ -10098,9 +10098,9 @@ "dev": true }, "comment-parser": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", - "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.5.tgz", + "integrity": "sha512-aRDkn3uyIlCFfk5NUA+VdwMmMsh8JGhc4hapfV4yxymHGQ3BVskMQfoXGpCo5IoBuQ9tS5iiVKhCpTcB4pW4qw==", "dev": true }, "concat-map": { @@ -10478,18 +10478,18 @@ "requires": {} }, "eslint-plugin-jsdoc": { - "version": "62.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-62.0.1.tgz", - "integrity": "sha512-TNeqgrE+xjDGCZVlRIiQcnUWNoMlHE5+oIyGbVFbrdIPOkz5ecWAmB26xSgqm2Mz7wny/ztyqCOUOeJhGrElpA==", + "version": "62.4.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-62.4.1.tgz", + "integrity": "sha512-HgX2iN4j104D/mCUqRbhtzSZbph+KO9jfMHiIJjJ19Q+IwLQ5Na2IqvOJYq4S+4kgvEk1w6KYF4vVus6H2wcHg==", "dev": true, "requires": { - "@es-joy/jsdoccomment": "~0.79.0", + "@es-joy/jsdoccomment": "~0.83.0", "@es-joy/resolve.exports": "1.2.0", "are-docs-informative": "^0.0.2", - "comment-parser": "1.4.1", + "comment-parser": "1.4.5", "debug": "^4.4.3", "escape-string-regexp": "^4.0.0", - "espree": "^11.0.0", + "espree": "^11.1.0", "esquery": "^1.7.0", "html-entities": "^2.6.0", "object-deep-merge": "^2.0.0", @@ -10512,9 +10512,9 @@ "dev": true }, "espree": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-11.0.0.tgz", - "integrity": "sha512-+gMeWRrIh/NsG+3NaLeWHuyeyk70p2tbvZIWBYcqQ4/7Xvars6GYTZNhF1sIeLcc6Wb11He5ffz3hsHyXFrw5A==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-11.1.0.tgz", + "integrity": "sha512-WFWYhO1fV4iYkqOOvq8FbqIhr2pYfoDY0kCotMkDeNtGpiGGkZ1iov2u8ydjtgM8yF8rzK7oaTbw2NAzbAbehw==", "dev": true, "requires": { "acorn": "^8.15.0", @@ -10958,9 +10958,9 @@ } }, "globals": { - "version": "17.0.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-17.0.0.tgz", - "integrity": "sha512-gv5BeD2EssA793rlFWVPMMCqefTlpusw6/2TbAVMy0FzcG8wKJn4O+NqJ4+XWmmwrayJgw5TzrmWjFgmz1XPqw==", + "version": "17.1.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-17.1.0.tgz", + "integrity": "sha512-8HoIcWI5fCvG5NADj4bDav+er9B9JMj2vyL2pI8D0eismKyUvPLTSs+Ln3wqhwcp306i73iyVnEKx3F6T47TGw==", "dev": true }, "gopd": { @@ -11977,9 +11977,9 @@ } }, "jsdoc-type-pratt-parser": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-7.0.0.tgz", - "integrity": "sha512-c7YbokssPOSHmqTbSAmTtnVgAVa/7lumWNYqomgd5KOMyPrRve2anx6lonfOsXEQacqF9FKVUj7bLg4vRSvdYA==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-7.1.0.tgz", + "integrity": "sha512-SX7q7XyCwzM/MEDCYz0l8GgGbJAACGFII9+WfNYr5SLEKukHWRy2Jk3iWRe7P+lpYJNs7oQ+OSei4JtKGUjd7A==", "dev": true }, "jsdom": { @@ -12713,9 +12713,9 @@ "dev": true }, "prettier": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.8.0.tgz", - "integrity": "sha512-yEPsovQfpxYfgWNhCfECjG5AQaO+K3dp6XERmOepyPDVqcJm+bjyCVO3pmU+nAPe0N5dDvekfGezt/EIiRe1TA==", + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.8.1.tgz", + "integrity": "sha512-UOnG6LftzbdaHZcKoPFtOcCKztrQ57WkHDeRD9t/PTQtmT0NHSeWWepj6pS0z/N7+08BHFDQVUrfmfMRcZwbMg==", "dev": true }, "pretty-format": { diff --git a/backend/package.json b/backend/package.json index eb868179..9183eeac 100644 --- a/backend/package.json +++ b/backend/package.json @@ -47,9 +47,9 @@ "color-contrast-checker": "^2.1.0", "eslint": "^9.39.2", "eslint-config-prettier": "^10.1.8", - "eslint-plugin-jsdoc": "^62.0.1", + "eslint-plugin-jsdoc": "^62.4.1", "express": "^5.2.1", - "globals": "^17.0.0", + "globals": "^17.1.0", "hjson": "^3.2.2", "husky": "^9.1.7", "jest": "^30.2.0", @@ -58,7 +58,7 @@ "lint-staged": "^16.2.7", "lodash.snakecase": "^4.1.1", "parse-diff": "^0.11.1", - "prettier": "^3.8.0" + "prettier": "^3.8.1" }, "dependencies": { "axios": "^1.13.1", diff --git a/backend/src/common/languageColors.json b/backend/src/common/languageColors.json index 9d6b0fa2..ff190b85 100644 --- a/backend/src/common/languageColors.json +++ b/backend/src/common/languageColors.json @@ -7,6 +7,7 @@ "AGS Script": "#B9D9FF", "AIDL": "#34EB6B", "AL": "#3AA2B5", + "ALGOL": "#D1E0DB", "AMPL": "#E6EFBB", "ANTLR": "#9DC3FF", "API Blueprint": "#2ACCA8", @@ -31,7 +32,6 @@ "Apollo Guidance Computer": "#0B3D91", "AppleScript": "#101F1F", "Arc": "#aa2afe", - "ArkTS": "#0080ff", "AsciiDoc": "#73a0c5", "AspectJ": "#a957b0", "Assembly": "#6E4C13", @@ -42,6 +42,7 @@ "AutoIt": "#1C3552", "Avro IDL": "#0040FF", "Awk": "#c30e9b", + "B (Formal Method)": "#8aa8c5", "B4X": "#00e4ff", "BASIC": "#ff0000", "BQN": "#2b7067", @@ -75,6 +76,7 @@ "CLIPS": "#00A300", "CMake": "#DA3434", "COLLADA": "#F1A42B", + "CQL": "#006091", "CSON": "#244776", "CSS": "#663399", "CSV": "#237346", @@ -211,6 +213,7 @@ "Go": "#00ADD8", "Go Checksums": "#00ADD8", "Go Module": "#00ADD8", + "Go Template": "#00ADD8", "Go Workspace": "#00ADD8", "Godot Resource": "#355570", "Golo": "#88562A", @@ -270,6 +273,7 @@ "JSON5": "#267CB9", "JSONLD": "#0c479c", "JSONiq": "#40d47e", + "Jac": "#FC792D", "Jai": "#ab8b4b", "Janet": "#0886a5", "Jasmin": "#d03600", @@ -290,7 +294,9 @@ "Julia REPL": "#a270ba", "Jupyter Notebook": "#DA5B0B", "Just": "#384d54", + "KCL": "#7ABABF", "KDL": "#ffb3b3", + "KFramework": "#4195c5", "KRL": "#28430A", "Kaitai Struct": "#773b37", "KakouneScript": "#6f8042", @@ -306,6 +312,8 @@ "LOLCODE": "#cc9900", "LSL": "#3d9970", "LabVIEW": "#fede06", + "Lambdapi": "#8027a3", + "Langium": "#2c8c87", "Lark": "#2980B9", "Lasso": "#999999", "Latte": "#f2a542", @@ -338,6 +346,7 @@ "Markdown": "#083fa1", "Marko": "#42bff2", "Mask": "#f97732", + "Mathematical Programming System": "#0530ad", "Max": "#c4a79c", "Mercury": "#ff2b2b", "Mermaid": "#ff3670", @@ -457,6 +466,7 @@ "QuickBASIC": "#008080", "R": "#198CE7", "RAML": "#77d9fb", + "RAScript": "#2C97FA", "RBS": "#701516", "RDoc": "#701516", "REXX": "#d90e09", @@ -535,6 +545,7 @@ "SubRip Text": "#9e0101", "SugarSS": "#2fcc9f", "SuperCollider": "#46390b", + "SurrealQL": "#ff00a0", "Survex data": "#ffcc99", "Svelte": "#ff3e00", "Sway": "#00F58C", @@ -544,6 +555,7 @@ "TI Program": "#A0AA87", "TL-Verilog": "#C40023", "TLA": "#4b0079", + "TMDL": "#f0c913", "TOML": "#9c4221", "TSQL": "#e38c00", "TSV": "#237346",