From c61e13b9c50ee128a0c9dbfc5f46280f9bc59166 Mon Sep 17 00:00:00 2001 From: kallelongjuhani Date: Sat, 9 Aug 2025 12:00:08 +0300 Subject: [PATCH 1/2] build: consisten eslint import rules Extend import rules to be autofixable and include: - no duplicates - consistent type imports separated on top level Includes adding `eslint-plugin-import` to dev dependencies. --- package.json | 1 + packages/shared-config/eslint.config.mjs | 23 +- packages/shared-config/package.json | 1 + yarn.lock | 1038 +++++++++++++++++++++- 4 files changed, 1052 insertions(+), 11 deletions(-) diff --git a/package.json b/package.json index 4adcf1dfe..9b55fa5ad 100644 --- a/package.json +++ b/package.json @@ -39,6 +39,7 @@ "cheerio": "^1.0.0", "dotenv": "^16.4.7", "eslint": "^9.39.2", + "eslint-plugin-import": "^2.32.0", "eslint-plugin-simple-import-sort": "^12.1.1", "glob": "^11.0.0", "husky": "^9.1.7", diff --git a/packages/shared-config/eslint.config.mjs b/packages/shared-config/eslint.config.mjs index e65b5155b..ed57a8ff9 100644 --- a/packages/shared-config/eslint.config.mjs +++ b/packages/shared-config/eslint.config.mjs @@ -4,6 +4,7 @@ import { FlatCompat } from '@eslint/eslintrc'; import js from '@eslint/js'; import typescriptEslint from '@typescript-eslint/eslint-plugin'; import tsParser from '@typescript-eslint/parser'; +import importPlugin from 'eslint-plugin-import'; import simpleImportSort from 'eslint-plugin-simple-import-sort'; import globals from 'globals'; @@ -37,7 +38,8 @@ export default [ { plugins: { '@typescript-eslint': typescriptEslint, - 'simple-import-sort': simpleImportSort //https://github.com/lydell/eslint-plugin-simple-import-sort?tab=readme-ov-file + 'simple-import-sort': simpleImportSort, // https://github.com/lydell/eslint-plugin-simple-import-sort?tab=readme-ov-file + import: importPlugin }, languageOptions: { @@ -113,7 +115,14 @@ export default [ } ], - '@typescript-eslint/consistent-type-imports': 'error', + '@typescript-eslint/consistent-type-imports': [ + 'error', + { + disallowTypeAnnotations: true, + fixStyle: 'separate-type-imports', + prefer: 'type-imports' + } + ], 'simple-import-sort/exports': 'error', @@ -136,7 +145,15 @@ export default [ ] ] } - ] + ], + + 'import/first': 'error', + + 'import/newline-after-import': 'error', + + 'import/no-duplicates': 'error', + + 'import/consistent-type-specifier-style': ['error', 'prefer-top-level'] } } ]; diff --git a/packages/shared-config/package.json b/packages/shared-config/package.json index 29990dcd2..620740803 100644 --- a/packages/shared-config/package.json +++ b/packages/shared-config/package.json @@ -12,6 +12,7 @@ "@typescript-eslint/parser": "^8.19.1", "eslint": "^9.39.2", "eslint-config-prettier": "^9.1.0", + "eslint-plugin-import": "^2.32.0", "eslint-plugin-simple-import-sort": "^12.1.1", "prettier": "^3.4.2", "typescript": "^5.7.3" diff --git a/yarn.lock b/yarn.lock index 7dfddbb9b..ad8a3046b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4779,6 +4779,7 @@ __metadata: "@typescript-eslint/parser": "npm:^8.19.1" eslint: "npm:^9.39.2" eslint-config-prettier: "npm:^9.1.0" + eslint-plugin-import: "npm:^2.32.0" eslint-plugin-simple-import-sort: "npm:^12.1.1" prettier: "npm:^3.4.2" typescript: "npm:^5.7.3" @@ -6345,6 +6346,13 @@ __metadata: languageName: node linkType: hard +"@rtsao/scc@npm:^1.1.0": + version: 1.1.0 + resolution: "@rtsao/scc@npm:1.1.0" + checksum: 10c0/b5bcfb0d87f7d1c1c7c0f7693f53b07866ed9fec4c34a97a8c948fb9a7c0082e416ce4d3b60beb4f5e167cbe04cdeefbf6771320f3ede059b9ce91188c409a5b + languageName: node + linkType: hard + "@rushstack/node-core-library@npm:5.10.1": version: 5.10.1 resolution: "@rushstack/node-core-library@npm:5.10.1" @@ -9787,6 +9795,13 @@ __metadata: languageName: node linkType: hard +"@types/json5@npm:^0.0.29": + version: 0.0.29 + resolution: "@types/json5@npm:0.0.29" + checksum: 10c0/6bf5337bc447b706bb5b4431d37686aa2ea6d07cfd6f79cc31de80170d6ff9b1c7384a9c0ccbc45b3f512bae9e9f75c2e12109806a15331dc94e8a8db6dbb4ac + languageName: node + linkType: hard + "@types/jsonwebtoken@npm:^9.0.2": version: 9.0.7 resolution: "@types/jsonwebtoken@npm:9.0.7" @@ -11390,6 +11405,16 @@ __metadata: languageName: node linkType: hard +"array-buffer-byte-length@npm:^1.0.1, array-buffer-byte-length@npm:^1.0.2": + version: 1.0.2 + resolution: "array-buffer-byte-length@npm:1.0.2" + dependencies: + call-bound: "npm:^1.0.3" + is-array-buffer: "npm:^3.0.5" + checksum: 10c0/74e1d2d996941c7a1badda9cabb7caab8c449db9086407cad8a1b71d2604cc8abf105db8ca4e02c04579ec58b7be40279ddb09aea4784832984485499f48432d + languageName: node + linkType: hard + "array-each@npm:^1.0.1": version: 1.0.1 resolution: "array-each@npm:1.0.1" @@ -11397,6 +11422,22 @@ __metadata: languageName: node linkType: hard +"array-includes@npm:^3.1.9": + version: 3.1.9 + resolution: "array-includes@npm:3.1.9" + dependencies: + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.4" + define-properties: "npm:^1.2.1" + es-abstract: "npm:^1.24.0" + es-object-atoms: "npm:^1.1.1" + get-intrinsic: "npm:^1.3.0" + is-string: "npm:^1.1.1" + math-intrinsics: "npm:^1.1.0" + checksum: 10c0/0235fa69078abeac05ac4250699c44996bc6f774a9cbe45db48674ce6bd142f09b327d31482ff75cf03344db4ea03eae23edb862d59378b484b47ed842574856 + languageName: node + linkType: hard + "array-slice@npm:^1.0.0": version: 1.1.0 resolution: "array-slice@npm:1.1.0" @@ -11411,6 +11452,60 @@ __metadata: languageName: node linkType: hard +"array.prototype.findlastindex@npm:^1.2.6": + version: 1.2.6 + resolution: "array.prototype.findlastindex@npm:1.2.6" + dependencies: + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.4" + define-properties: "npm:^1.2.1" + es-abstract: "npm:^1.23.9" + es-errors: "npm:^1.3.0" + es-object-atoms: "npm:^1.1.1" + es-shim-unscopables: "npm:^1.1.0" + checksum: 10c0/82559310d2e57ec5f8fc53d7df420e3abf0ba497935de0a5570586035478ba7d07618cb18e2d4ada2da514c8fb98a034aaf5c06caa0a57e2f7f4c4adedef5956 + languageName: node + linkType: hard + +"array.prototype.flat@npm:^1.3.3": + version: 1.3.3 + resolution: "array.prototype.flat@npm:1.3.3" + dependencies: + call-bind: "npm:^1.0.8" + define-properties: "npm:^1.2.1" + es-abstract: "npm:^1.23.5" + es-shim-unscopables: "npm:^1.0.2" + checksum: 10c0/d90e04dfbc43bb96b3d2248576753d1fb2298d2d972e29ca7ad5ec621f0d9e16ff8074dae647eac4f31f4fb7d3f561a7ac005fb01a71f51705a13b5af06a7d8a + languageName: node + linkType: hard + +"array.prototype.flatmap@npm:^1.3.3": + version: 1.3.3 + resolution: "array.prototype.flatmap@npm:1.3.3" + dependencies: + call-bind: "npm:^1.0.8" + define-properties: "npm:^1.2.1" + es-abstract: "npm:^1.23.5" + es-shim-unscopables: "npm:^1.0.2" + checksum: 10c0/ba899ea22b9dc9bf276e773e98ac84638ed5e0236de06f13d63a90b18ca9e0ec7c97d622d899796e3773930b946cd2413d098656c0c5d8cc58c6f25c21e6bd54 + languageName: node + linkType: hard + +"arraybuffer.prototype.slice@npm:^1.0.4": + version: 1.0.4 + resolution: "arraybuffer.prototype.slice@npm:1.0.4" + dependencies: + array-buffer-byte-length: "npm:^1.0.1" + call-bind: "npm:^1.0.8" + define-properties: "npm:^1.2.1" + es-abstract: "npm:^1.23.5" + es-errors: "npm:^1.3.0" + get-intrinsic: "npm:^1.2.6" + is-array-buffer: "npm:^3.0.4" + checksum: 10c0/2f2459caa06ae0f7f615003f9104b01f6435cc803e11bd2a655107d52a1781dc040532dc44d93026b694cc18793993246237423e13a5337e86b43ed604932c06 + languageName: node + linkType: hard + "asap@npm:^2.0.0": version: 2.0.6 resolution: "asap@npm:2.0.6" @@ -11444,6 +11539,20 @@ __metadata: languageName: node linkType: hard +"async-function@npm:^1.0.0": + version: 1.0.0 + resolution: "async-function@npm:1.0.0" + checksum: 10c0/669a32c2cb7e45091330c680e92eaeb791bc1d4132d827591e499cd1f776ff5a873e77e5f92d0ce795a8d60f10761dec9ddfe7225a5de680f5d357f67b1aac73 + languageName: node + linkType: hard + +"async-generator-function@npm:^1.0.0": + version: 1.0.0 + resolution: "async-generator-function@npm:1.0.0" + checksum: 10c0/2c50ef856c543ad500d8d8777d347e3c1ba623b93e99c9263ecc5f965c1b12d2a140e2ab6e43c3d0b85366110696f28114649411cbcd10b452a92a2318394186 + languageName: node + linkType: hard + "async@npm:^3.2.3": version: 3.2.6 resolution: "async@npm:3.2.6" @@ -11483,6 +11592,15 @@ __metadata: languageName: node linkType: hard +"available-typed-arrays@npm:^1.0.7": + version: 1.0.7 + resolution: "available-typed-arrays@npm:1.0.7" + dependencies: + possible-typed-array-names: "npm:^1.0.0" + checksum: 10c0/d07226ef4f87daa01bd0fe80f8f310982e345f372926da2e5296aecc25c41cab440916bbaa4c5e1034b453af3392f67df5961124e4b586df1e99793a1374bdb2 + languageName: node + linkType: hard + "axios@npm:1.7.4": version: 1.7.4 resolution: "axios@npm:1.7.4" @@ -12050,6 +12168,16 @@ __metadata: languageName: node linkType: hard +"call-bind-apply-helpers@npm:^1.0.0, call-bind-apply-helpers@npm:^1.0.2": + version: 1.0.2 + resolution: "call-bind-apply-helpers@npm:1.0.2" + dependencies: + es-errors: "npm:^1.3.0" + function-bind: "npm:^1.1.2" + checksum: 10c0/47bd9901d57b857590431243fea704ff18078b16890a6b3e021e12d279bbf211d039155e27d7566b374d49ee1f8189344bac9833dec7a20cdec370506361c938 + languageName: node + linkType: hard + "call-bind-apply-helpers@npm:^1.0.1": version: 1.0.1 resolution: "call-bind-apply-helpers@npm:1.0.1" @@ -12060,6 +12188,18 @@ __metadata: languageName: node linkType: hard +"call-bind@npm:^1.0.7, call-bind@npm:^1.0.8": + version: 1.0.8 + resolution: "call-bind@npm:1.0.8" + dependencies: + call-bind-apply-helpers: "npm:^1.0.0" + es-define-property: "npm:^1.0.0" + get-intrinsic: "npm:^1.2.4" + set-function-length: "npm:^1.2.2" + checksum: 10c0/a13819be0681d915144467741b69875ae5f4eba8961eb0bf322aab63ec87f8250eb6d6b0dcbb2e1349876412a56129ca338592b3829ef4343527f5f18a0752d4 + languageName: node + linkType: hard + "call-bound@npm:^1.0.2": version: 1.0.3 resolution: "call-bound@npm:1.0.3" @@ -12070,6 +12210,16 @@ __metadata: languageName: node linkType: hard +"call-bound@npm:^1.0.3, call-bound@npm:^1.0.4": + version: 1.0.4 + resolution: "call-bound@npm:1.0.4" + dependencies: + call-bind-apply-helpers: "npm:^1.0.2" + get-intrinsic: "npm:^1.3.0" + checksum: 10c0/f4796a6a0941e71c766aea672f63b72bc61234c4f4964dc6d7606e3664c307e7d77845328a8f3359ce39ddb377fed67318f9ee203dea1d47e46165dcf2917644 + languageName: node + linkType: hard + "callsites@npm:^3.0.0": version: 3.1.0 resolution: "callsites@npm:3.1.0" @@ -13316,6 +13466,39 @@ __metadata: languageName: node linkType: hard +"data-view-buffer@npm:^1.0.2": + version: 1.0.2 + resolution: "data-view-buffer@npm:1.0.2" + dependencies: + call-bound: "npm:^1.0.3" + es-errors: "npm:^1.3.0" + is-data-view: "npm:^1.0.2" + checksum: 10c0/7986d40fc7979e9e6241f85db8d17060dd9a71bd53c894fa29d126061715e322a4cd47a00b0b8c710394854183d4120462b980b8554012acc1c0fa49df7ad38c + languageName: node + linkType: hard + +"data-view-byte-length@npm:^1.0.2": + version: 1.0.2 + resolution: "data-view-byte-length@npm:1.0.2" + dependencies: + call-bound: "npm:^1.0.3" + es-errors: "npm:^1.3.0" + is-data-view: "npm:^1.0.2" + checksum: 10c0/f8a4534b5c69384d95ac18137d381f18a5cfae1f0fc1df0ef6feef51ef0d568606d970b69e02ea186c6c0f0eac77fe4e6ad96fec2569cc86c3afcc7475068c55 + languageName: node + linkType: hard + +"data-view-byte-offset@npm:^1.0.1": + version: 1.0.1 + resolution: "data-view-byte-offset@npm:1.0.1" + dependencies: + call-bound: "npm:^1.0.2" + es-errors: "npm:^1.3.0" + is-data-view: "npm:^1.0.1" + checksum: 10c0/fa7aa40078025b7810dcffc16df02c480573b7b53ef1205aa6a61533011005c1890e5ba17018c692ce7c900212b547262d33279fde801ad9843edc0863bf78c4 + languageName: node + linkType: hard + "date-fns-tz@npm:2.0.1": version: 2.0.1 resolution: "date-fns-tz@npm:2.0.1" @@ -13374,7 +13557,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:^3.1.0": +"debug@npm:^3.1.0, debug@npm:^3.2.7": version: 3.2.7 resolution: "debug@npm:3.2.7" dependencies: @@ -13490,7 +13673,7 @@ __metadata: languageName: node linkType: hard -"define-data-property@npm:^1.0.1": +"define-data-property@npm:^1.0.1, define-data-property@npm:^1.1.4": version: 1.1.4 resolution: "define-data-property@npm:1.1.4" dependencies: @@ -13755,6 +13938,15 @@ __metadata: languageName: node linkType: hard +"doctrine@npm:^2.1.0": + version: 2.1.0 + resolution: "doctrine@npm:2.1.0" + dependencies: + esutils: "npm:^2.0.2" + checksum: 10c0/b6416aaff1f380bf56c3b552f31fdf7a69b45689368deca72d28636f41c16bb28ec3ebc40ace97db4c1afc0ceeb8120e8492fe0046841c94c2933b2e30a7d5ac + languageName: node + linkType: hard + "dom-accessibility-api@npm:^0.5.9": version: 0.5.16 resolution: "dom-accessibility-api@npm:0.5.16" @@ -13918,7 +14110,7 @@ __metadata: languageName: node linkType: hard -"dunder-proto@npm:^1.0.0": +"dunder-proto@npm:^1.0.0, dunder-proto@npm:^1.0.1": version: 1.0.1 resolution: "dunder-proto@npm:1.0.1" dependencies: @@ -14154,6 +14346,68 @@ __metadata: languageName: node linkType: hard +"es-abstract@npm:^1.23.2, es-abstract@npm:^1.23.5, es-abstract@npm:^1.23.9, es-abstract@npm:^1.24.0": + version: 1.24.1 + resolution: "es-abstract@npm:1.24.1" + dependencies: + array-buffer-byte-length: "npm:^1.0.2" + arraybuffer.prototype.slice: "npm:^1.0.4" + available-typed-arrays: "npm:^1.0.7" + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.4" + data-view-buffer: "npm:^1.0.2" + data-view-byte-length: "npm:^1.0.2" + data-view-byte-offset: "npm:^1.0.1" + es-define-property: "npm:^1.0.1" + es-errors: "npm:^1.3.0" + es-object-atoms: "npm:^1.1.1" + es-set-tostringtag: "npm:^2.1.0" + es-to-primitive: "npm:^1.3.0" + function.prototype.name: "npm:^1.1.8" + get-intrinsic: "npm:^1.3.0" + get-proto: "npm:^1.0.1" + get-symbol-description: "npm:^1.1.0" + globalthis: "npm:^1.0.4" + gopd: "npm:^1.2.0" + has-property-descriptors: "npm:^1.0.2" + has-proto: "npm:^1.2.0" + has-symbols: "npm:^1.1.0" + hasown: "npm:^2.0.2" + internal-slot: "npm:^1.1.0" + is-array-buffer: "npm:^3.0.5" + is-callable: "npm:^1.2.7" + is-data-view: "npm:^1.0.2" + is-negative-zero: "npm:^2.0.3" + is-regex: "npm:^1.2.1" + is-set: "npm:^2.0.3" + is-shared-array-buffer: "npm:^1.0.4" + is-string: "npm:^1.1.1" + is-typed-array: "npm:^1.1.15" + is-weakref: "npm:^1.1.1" + math-intrinsics: "npm:^1.1.0" + object-inspect: "npm:^1.13.4" + object-keys: "npm:^1.1.1" + object.assign: "npm:^4.1.7" + own-keys: "npm:^1.0.1" + regexp.prototype.flags: "npm:^1.5.4" + safe-array-concat: "npm:^1.1.3" + safe-push-apply: "npm:^1.0.0" + safe-regex-test: "npm:^1.1.0" + set-proto: "npm:^1.0.0" + stop-iteration-iterator: "npm:^1.1.0" + string.prototype.trim: "npm:^1.2.10" + string.prototype.trimend: "npm:^1.0.9" + string.prototype.trimstart: "npm:^1.0.8" + typed-array-buffer: "npm:^1.0.3" + typed-array-byte-length: "npm:^1.0.3" + typed-array-byte-offset: "npm:^1.0.4" + typed-array-length: "npm:^1.0.7" + unbox-primitive: "npm:^1.1.0" + which-typed-array: "npm:^1.1.19" + checksum: 10c0/fca062ef8b5daacf743732167d319a212d45cb655b0bb540821d38d715416ae15b04b84fc86da9e2c89135aa7b337337b6c867f84dcde698d75d55688d5d765c + languageName: node + linkType: hard + "es-define-property@npm:^1.0.0, es-define-property@npm:^1.0.1": version: 1.0.1 resolution: "es-define-property@npm:1.0.1" @@ -14191,6 +14445,15 @@ __metadata: languageName: node linkType: hard +"es-object-atoms@npm:^1.1.1": + version: 1.1.1 + resolution: "es-object-atoms@npm:1.1.1" + dependencies: + es-errors: "npm:^1.3.0" + checksum: 10c0/65364812ca4daf48eb76e2a3b7a89b3f6a2e62a1c420766ce9f692665a29d94fe41fe88b65f24106f449859549711e4b40d9fb8002d862dfd7eb1c512d10be0c + languageName: node + linkType: hard + "es-set-tostringtag@npm:^2.1.0": version: 2.1.0 resolution: "es-set-tostringtag@npm:2.1.0" @@ -14203,6 +14466,26 @@ __metadata: languageName: node linkType: hard +"es-shim-unscopables@npm:^1.0.2, es-shim-unscopables@npm:^1.1.0": + version: 1.1.0 + resolution: "es-shim-unscopables@npm:1.1.0" + dependencies: + hasown: "npm:^2.0.2" + checksum: 10c0/1b9702c8a1823fc3ef39035a4e958802cf294dd21e917397c561d0b3e195f383b978359816b1732d02b255ccf63e1e4815da0065b95db8d7c992037be3bbbcdb + languageName: node + linkType: hard + +"es-to-primitive@npm:^1.3.0": + version: 1.3.0 + resolution: "es-to-primitive@npm:1.3.0" + dependencies: + is-callable: "npm:^1.2.7" + is-date-object: "npm:^1.0.5" + is-symbol: "npm:^1.0.4" + checksum: 10c0/c7e87467abb0b438639baa8139f701a06537d2b9bc758f23e8622c3b42fd0fdb5bde0f535686119e446dd9d5e4c0f238af4e14960f4771877cf818d023f6730b + languageName: node + linkType: hard + "es6-error@npm:^4.1.1": version: 4.1.1 resolution: "es6-error@npm:4.1.1" @@ -14894,6 +15177,58 @@ __metadata: languageName: node linkType: hard +"eslint-import-resolver-node@npm:^0.3.9": + version: 0.3.9 + resolution: "eslint-import-resolver-node@npm:0.3.9" + dependencies: + debug: "npm:^3.2.7" + is-core-module: "npm:^2.13.0" + resolve: "npm:^1.22.4" + checksum: 10c0/0ea8a24a72328a51fd95aa8f660dcca74c1429806737cf10261ab90cfcaaf62fd1eff664b76a44270868e0a932711a81b250053942595bcd00a93b1c1575dd61 + languageName: node + linkType: hard + +"eslint-module-utils@npm:^2.12.1": + version: 2.12.1 + resolution: "eslint-module-utils@npm:2.12.1" + dependencies: + debug: "npm:^3.2.7" + peerDependenciesMeta: + eslint: + optional: true + checksum: 10c0/6f4efbe7a91ae49bf67b4ab3644cb60bc5bd7db4cb5521de1b65be0847ffd3fb6bce0dd68f0995e1b312d137f768e2a1f842ee26fe73621afa05f850628fdc40 + languageName: node + linkType: hard + +"eslint-plugin-import@npm:^2.32.0": + version: 2.32.0 + resolution: "eslint-plugin-import@npm:2.32.0" + dependencies: + "@rtsao/scc": "npm:^1.1.0" + array-includes: "npm:^3.1.9" + array.prototype.findlastindex: "npm:^1.2.6" + array.prototype.flat: "npm:^1.3.3" + array.prototype.flatmap: "npm:^1.3.3" + debug: "npm:^3.2.7" + doctrine: "npm:^2.1.0" + eslint-import-resolver-node: "npm:^0.3.9" + eslint-module-utils: "npm:^2.12.1" + hasown: "npm:^2.0.2" + is-core-module: "npm:^2.16.1" + is-glob: "npm:^4.0.3" + minimatch: "npm:^3.1.2" + object.fromentries: "npm:^2.0.8" + object.groupby: "npm:^1.0.3" + object.values: "npm:^1.2.1" + semver: "npm:^6.3.1" + string.prototype.trimend: "npm:^1.0.9" + tsconfig-paths: "npm:^3.15.0" + peerDependencies: + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 + checksum: 10c0/bfb1b8fc8800398e62ddfefbf3638d185286edfed26dfe00875cc2846d954491b4f5112457831588b757fa789384e1ae585f812614c4797f0499fa234fd4a48b + languageName: node + linkType: hard + "eslint-plugin-simple-import-sort@npm:^12.1.1": version: 12.1.1 resolution: "eslint-plugin-simple-import-sort@npm:12.1.1" @@ -15652,6 +15987,15 @@ __metadata: languageName: node linkType: hard +"for-each@npm:^0.3.3, for-each@npm:^0.3.5": + version: 0.3.5 + resolution: "for-each@npm:0.3.5" + dependencies: + is-callable: "npm:^1.2.7" + checksum: 10c0/0e0b50f6a843a282637d43674d1fb278dda1dd85f4f99b640024cfb10b85058aac0cc781bf689d5fe50b4b7f638e91e548560723a4e76e04fe96ae35ef039cee + languageName: node + linkType: hard + "for-in@npm:^1.0.1": version: 1.0.2 resolution: "for-in@npm:1.0.2" @@ -15943,6 +16287,27 @@ __metadata: languageName: node linkType: hard +"function.prototype.name@npm:^1.1.6, function.prototype.name@npm:^1.1.8": + version: 1.1.8 + resolution: "function.prototype.name@npm:1.1.8" + dependencies: + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.3" + define-properties: "npm:^1.2.1" + functions-have-names: "npm:^1.2.3" + hasown: "npm:^2.0.2" + is-callable: "npm:^1.2.7" + checksum: 10c0/e920a2ab52663005f3cbe7ee3373e3c71c1fb5558b0b0548648cdf3e51961085032458e26c71ff1a8c8c20e7ee7caeb03d43a5d1fa8610c459333323a2e71253 + languageName: node + linkType: hard + +"functions-have-names@npm:^1.2.3": + version: 1.2.3 + resolution: "functions-have-names@npm:1.2.3" + checksum: 10c0/33e77fd29bddc2d9bb78ab3eb854c165909201f88c75faa8272e35899e2d35a8a642a15e7420ef945e1f64a9670d6aa3ec744106b2aa42be68ca5114025954ca + languageName: node + linkType: hard + "gauge@npm:^4.0.3": version: 4.0.4 resolution: "gauge@npm:4.0.4" @@ -15959,6 +16324,13 @@ __metadata: languageName: node linkType: hard +"generator-function@npm:^2.0.0": + version: 2.0.1 + resolution: "generator-function@npm:2.0.1" + checksum: 10c0/8a9f59df0f01cfefafdb3b451b80555e5cf6d76487095db91ac461a0e682e4ff7a9dbce15f4ecec191e53586d59eece01949e05a4b4492879600bbbe8e28d6b8 + languageName: node + linkType: hard + "gensync@npm:^1.0.0-beta.2": version: 1.0.0-beta.2 resolution: "gensync@npm:1.0.0-beta.2" @@ -15987,6 +16359,27 @@ __metadata: languageName: node linkType: hard +"get-intrinsic@npm:^1.2.4, get-intrinsic@npm:^1.2.7, get-intrinsic@npm:^1.3.0": + version: 1.3.1 + resolution: "get-intrinsic@npm:1.3.1" + dependencies: + async-function: "npm:^1.0.0" + async-generator-function: "npm:^1.0.0" + call-bind-apply-helpers: "npm:^1.0.2" + es-define-property: "npm:^1.0.1" + es-errors: "npm:^1.3.0" + es-object-atoms: "npm:^1.1.1" + function-bind: "npm:^1.1.2" + generator-function: "npm:^2.0.0" + get-proto: "npm:^1.0.1" + gopd: "npm:^1.2.0" + has-symbols: "npm:^1.1.0" + hasown: "npm:^2.0.2" + math-intrinsics: "npm:^1.1.0" + checksum: 10c0/9f4ab0cf7efe0fd2c8185f52e6f637e708f3a112610c88869f8f041bb9ecc2ce44bf285dfdbdc6f4f7c277a5b88d8e94a432374d97cca22f3de7fc63795deb5d + languageName: node + linkType: hard + "get-intrinsic@npm:^1.2.5, get-intrinsic@npm:^1.2.6": version: 1.2.6 resolution: "get-intrinsic@npm:1.2.6" @@ -16046,6 +16439,16 @@ __metadata: languageName: node linkType: hard +"get-proto@npm:^1.0.1": + version: 1.0.1 + resolution: "get-proto@npm:1.0.1" + dependencies: + dunder-proto: "npm:^1.0.1" + es-object-atoms: "npm:^1.0.0" + checksum: 10c0/9224acb44603c5526955e83510b9da41baf6ae73f7398875fba50edc5e944223a89c4a72b070fcd78beb5f7bdda58ecb6294adc28f7acfc0da05f76a2399643c + languageName: node + linkType: hard + "get-stdin@npm:^9.0.0": version: 9.0.0 resolution: "get-stdin@npm:9.0.0" @@ -16079,6 +16482,17 @@ __metadata: languageName: node linkType: hard +"get-symbol-description@npm:^1.1.0": + version: 1.1.0 + resolution: "get-symbol-description@npm:1.1.0" + dependencies: + call-bound: "npm:^1.0.3" + es-errors: "npm:^1.3.0" + get-intrinsic: "npm:^1.2.6" + checksum: 10c0/d6a7d6afca375779a4b307738c9e80dbf7afc0bdbe5948768d54ab9653c865523d8920e670991a925936eb524b7cb6a6361d199a760b21d0ca7620194455aa4b + languageName: node + linkType: hard + "get-tsconfig@npm:^4.7.5": version: 4.8.1 resolution: "get-tsconfig@npm:4.8.1" @@ -16308,7 +16722,7 @@ __metadata: languageName: node linkType: hard -"globalthis@npm:^1.0.1": +"globalthis@npm:^1.0.1, globalthis@npm:^1.0.4": version: 1.0.4 resolution: "globalthis@npm:1.0.4" dependencies: @@ -16459,6 +16873,13 @@ __metadata: languageName: node linkType: hard +"has-bigints@npm:^1.0.2": + version: 1.1.0 + resolution: "has-bigints@npm:1.1.0" + checksum: 10c0/2de0cdc4a1ccf7a1e75ffede1876994525ac03cc6f5ae7392d3415dd475cd9eee5bceec63669ab61aa997ff6cceebb50ef75561c7002bed8988de2b9d1b40788 + languageName: node + linkType: hard + "has-flag@npm:^3.0.0": version: 3.0.0 resolution: "has-flag@npm:3.0.0" @@ -16473,7 +16894,7 @@ __metadata: languageName: node linkType: hard -"has-property-descriptors@npm:^1.0.0": +"has-property-descriptors@npm:^1.0.0, has-property-descriptors@npm:^1.0.2": version: 1.0.2 resolution: "has-property-descriptors@npm:1.0.2" dependencies: @@ -16482,6 +16903,15 @@ __metadata: languageName: node linkType: hard +"has-proto@npm:^1.2.0": + version: 1.2.0 + resolution: "has-proto@npm:1.2.0" + dependencies: + dunder-proto: "npm:^1.0.0" + checksum: 10c0/46538dddab297ec2f43923c3d35237df45d8c55a6fc1067031e04c13ed8a9a8f94954460632fd4da84c31a1721eefee16d901cbb1ae9602bab93bb6e08f93b95 + languageName: node + linkType: hard + "has-symbols@npm:^1.0.3, has-symbols@npm:^1.1.0": version: 1.1.0 resolution: "has-symbols@npm:1.1.0" @@ -17171,6 +17601,17 @@ __metadata: languageName: node linkType: hard +"internal-slot@npm:^1.1.0": + version: 1.1.0 + resolution: "internal-slot@npm:1.1.0" + dependencies: + es-errors: "npm:^1.3.0" + hasown: "npm:^2.0.2" + side-channel: "npm:^1.1.0" + checksum: 10c0/03966f5e259b009a9bf1a78d60da920df198af4318ec004f57b8aef1dd3fe377fbc8cce63a96e8c810010302654de89f9e19de1cd8ad0061d15be28a695465c7 + languageName: node + linkType: hard + "interpret@npm:^2.2.0": version: 2.2.0 resolution: "interpret@npm:2.2.0" @@ -17274,6 +17715,17 @@ __metadata: languageName: node linkType: hard +"is-array-buffer@npm:^3.0.4, is-array-buffer@npm:^3.0.5": + version: 3.0.5 + resolution: "is-array-buffer@npm:3.0.5" + dependencies: + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.3" + get-intrinsic: "npm:^1.2.6" + checksum: 10c0/c5c9f25606e86dbb12e756694afbbff64bc8b348d1bc989324c037e1068695131930199d6ad381952715dad3a9569333817f0b1a72ce5af7f883ce802e49c83d + languageName: node + linkType: hard + "is-arrayish@npm:^0.2.1": version: 0.2.1 resolution: "is-arrayish@npm:0.2.1" @@ -17288,6 +17740,28 @@ __metadata: languageName: node linkType: hard +"is-async-function@npm:^2.0.0": + version: 2.1.1 + resolution: "is-async-function@npm:2.1.1" + dependencies: + async-function: "npm:^1.0.0" + call-bound: "npm:^1.0.3" + get-proto: "npm:^1.0.1" + has-tostringtag: "npm:^1.0.2" + safe-regex-test: "npm:^1.1.0" + checksum: 10c0/d70c236a5e82de6fc4d44368ffd0c2fee2b088b893511ce21e679da275a5ecc6015ff59a7d7e1bdd7ca39f71a8dbdd253cf8cce5c6b3c91cdd5b42b5ce677298 + languageName: node + linkType: hard + +"is-bigint@npm:^1.1.0": + version: 1.1.0 + resolution: "is-bigint@npm:1.1.0" + dependencies: + has-bigints: "npm:^1.0.2" + checksum: 10c0/f4f4b905ceb195be90a6ea7f34323bf1c18e3793f18922e3e9a73c684c29eeeeff5175605c3a3a74cc38185fe27758f07efba3dbae812e5c5afbc0d2316b40e4 + languageName: node + linkType: hard + "is-binary-path@npm:~2.1.0": version: 2.1.0 resolution: "is-binary-path@npm:2.1.0" @@ -17297,6 +17771,23 @@ __metadata: languageName: node linkType: hard +"is-boolean-object@npm:^1.2.1": + version: 1.2.2 + resolution: "is-boolean-object@npm:1.2.2" + dependencies: + call-bound: "npm:^1.0.3" + has-tostringtag: "npm:^1.0.2" + checksum: 10c0/36ff6baf6bd18b3130186990026f5a95c709345c39cd368468e6c1b6ab52201e9fd26d8e1f4c066357b4938b0f0401e1a5000e08257787c1a02f3a719457001e + languageName: node + linkType: hard + +"is-callable@npm:^1.2.7": + version: 1.2.7 + resolution: "is-callable@npm:1.2.7" + checksum: 10c0/ceebaeb9d92e8adee604076971dd6000d38d6afc40bb843ea8e45c5579b57671c3f3b50d7f04869618242c6cee08d1b67806a8cb8edaaaf7c0748b3720d6066f + languageName: node + linkType: hard + "is-class-hotfix@npm:~0.0.6": version: 0.0.6 resolution: "is-class-hotfix@npm:0.0.6" @@ -17304,7 +17795,7 @@ __metadata: languageName: node linkType: hard -"is-core-module@npm:^2.16.0": +"is-core-module@npm:^2.13.0, is-core-module@npm:^2.16.0, is-core-module@npm:^2.16.1": version: 2.16.1 resolution: "is-core-module@npm:2.16.1" dependencies: @@ -17313,6 +17804,27 @@ __metadata: languageName: node linkType: hard +"is-data-view@npm:^1.0.1, is-data-view@npm:^1.0.2": + version: 1.0.2 + resolution: "is-data-view@npm:1.0.2" + dependencies: + call-bound: "npm:^1.0.2" + get-intrinsic: "npm:^1.2.6" + is-typed-array: "npm:^1.1.13" + checksum: 10c0/ef3548a99d7e7f1370ce21006baca6d40c73e9f15c941f89f0049c79714c873d03b02dae1c64b3f861f55163ecc16da06506c5b8a1d4f16650b3d9351c380153 + languageName: node + linkType: hard + +"is-date-object@npm:^1.0.5, is-date-object@npm:^1.1.0": + version: 1.1.0 + resolution: "is-date-object@npm:1.1.0" + dependencies: + call-bound: "npm:^1.0.2" + has-tostringtag: "npm:^1.0.2" + checksum: 10c0/1a4d199c8e9e9cac5128d32e6626fa7805175af9df015620ac0d5d45854ccf348ba494679d872d37301032e35a54fc7978fba1687e8721b2139aea7870cafa2f + languageName: node + linkType: hard + "is-docker@npm:2.2.1, is-docker@npm:^2.0.0, is-docker@npm:^2.1.1": version: 2.2.1 resolution: "is-docker@npm:2.2.1" @@ -17329,6 +17841,15 @@ __metadata: languageName: node linkType: hard +"is-finalizationregistry@npm:^1.1.0": + version: 1.1.1 + resolution: "is-finalizationregistry@npm:1.1.1" + dependencies: + call-bound: "npm:^1.0.3" + checksum: 10c0/818dff679b64f19e228a8205a1e2d09989a98e98def3a817f889208cfcbf918d321b251aadf2c05918194803ebd2eb01b14fc9d0b2bea53d984f4137bfca5e97 + languageName: node + linkType: hard + "is-fullwidth-code-point@npm:^3.0.0": version: 3.0.0 resolution: "is-fullwidth-code-point@npm:3.0.0" @@ -17352,6 +17873,19 @@ __metadata: languageName: node linkType: hard +"is-generator-function@npm:^1.0.10": + version: 1.1.2 + resolution: "is-generator-function@npm:1.1.2" + dependencies: + call-bound: "npm:^1.0.4" + generator-function: "npm:^2.0.0" + get-proto: "npm:^1.0.1" + has-tostringtag: "npm:^1.0.2" + safe-regex-test: "npm:^1.1.0" + checksum: 10c0/83da102e89c3e3b71d67b51d47c9f9bc862bceb58f87201727e27f7fa19d1d90b0ab223644ecaee6fc6e3d2d622bb25c966fbdaf87c59158b01ce7c0fe2fa372 + languageName: node + linkType: hard + "is-generator-function@npm:^1.0.7": version: 1.0.10 resolution: "is-generator-function@npm:1.0.10" @@ -17414,6 +17948,13 @@ __metadata: languageName: node linkType: hard +"is-map@npm:^2.0.3": + version: 2.0.3 + resolution: "is-map@npm:2.0.3" + checksum: 10c0/2c4d431b74e00fdda7162cd8e4b763d6f6f217edf97d4f8538b94b8702b150610e2c64961340015fe8df5b1fcee33ccd2e9b62619c4a8a3a155f8de6d6d355fc + languageName: node + linkType: hard + "is-module@npm:^1.0.0": version: 1.0.0 resolution: "is-module@npm:1.0.0" @@ -17421,6 +17962,23 @@ __metadata: languageName: node linkType: hard +"is-negative-zero@npm:^2.0.3": + version: 2.0.3 + resolution: "is-negative-zero@npm:2.0.3" + checksum: 10c0/bcdcf6b8b9714063ffcfa9929c575ac69bfdabb8f4574ff557dfc086df2836cf07e3906f5bbc4f2a5c12f8f3ba56af640c843cdfc74da8caed86c7c7d66fd08e + languageName: node + linkType: hard + +"is-number-object@npm:^1.1.1": + version: 1.1.1 + resolution: "is-number-object@npm:1.1.1" + dependencies: + call-bound: "npm:^1.0.3" + has-tostringtag: "npm:^1.0.2" + checksum: 10c0/97b451b41f25135ff021d85c436ff0100d84a039bb87ffd799cbcdbea81ef30c464ced38258cdd34f080be08fc3b076ca1f472086286d2aa43521d6ec6a79f53 + languageName: node + linkType: hard + "is-number@npm:^7.0.0": version: 7.0.0 resolution: "is-number@npm:7.0.0" @@ -17509,6 +18067,18 @@ __metadata: languageName: node linkType: hard +"is-regex@npm:^1.2.1": + version: 1.2.1 + resolution: "is-regex@npm:1.2.1" + dependencies: + call-bound: "npm:^1.0.2" + gopd: "npm:^1.2.0" + has-tostringtag: "npm:^1.0.2" + hasown: "npm:^2.0.2" + checksum: 10c0/1d3715d2b7889932349241680032e85d0b492cfcb045acb75ffc2c3085e8d561184f1f7e84b6f8321935b4aea39bc9c6ba74ed595b57ce4881a51dfdbc214e04 + languageName: node + linkType: hard + "is-relative@npm:^1.0.0": version: 1.0.0 resolution: "is-relative@npm:1.0.0" @@ -17525,6 +18095,22 @@ __metadata: languageName: node linkType: hard +"is-set@npm:^2.0.3": + version: 2.0.3 + resolution: "is-set@npm:2.0.3" + checksum: 10c0/f73732e13f099b2dc879c2a12341cfc22ccaca8dd504e6edae26484bd5707a35d503fba5b4daad530a9b088ced1ae6c9d8200fd92e09b428fe14ea79ce8080b7 + languageName: node + linkType: hard + +"is-shared-array-buffer@npm:^1.0.4": + version: 1.0.4 + resolution: "is-shared-array-buffer@npm:1.0.4" + dependencies: + call-bound: "npm:^1.0.3" + checksum: 10c0/65158c2feb41ff1edd6bbd6fd8403a69861cf273ff36077982b5d4d68e1d59278c71691216a4a64632bd76d4792d4d1d2553901b6666d84ade13bba5ea7bc7db + languageName: node + linkType: hard + "is-ssh@npm:^1.4.0": version: 1.4.0 resolution: "is-ssh@npm:1.4.0" @@ -17548,6 +18134,27 @@ __metadata: languageName: node linkType: hard +"is-string@npm:^1.1.1": + version: 1.1.1 + resolution: "is-string@npm:1.1.1" + dependencies: + call-bound: "npm:^1.0.3" + has-tostringtag: "npm:^1.0.2" + checksum: 10c0/2f518b4e47886bb81567faba6ffd0d8a8333cf84336e2e78bf160693972e32ad00fe84b0926491cc598dee576fdc55642c92e62d0cbe96bf36f643b6f956f94d + languageName: node + linkType: hard + +"is-symbol@npm:^1.0.4, is-symbol@npm:^1.1.1": + version: 1.1.1 + resolution: "is-symbol@npm:1.1.1" + dependencies: + call-bound: "npm:^1.0.2" + has-symbols: "npm:^1.1.0" + safe-regex-test: "npm:^1.1.0" + checksum: 10c0/f08f3e255c12442e833f75a9e2b84b2d4882fdfd920513cf2a4a2324f0a5b076c8fd913778e3ea5d258d5183e9d92c0cd20e04b03ab3df05316b049b2670af1e + languageName: node + linkType: hard + "is-type-of@npm:^1.2.1": version: 1.4.0 resolution: "is-type-of@npm:1.4.0" @@ -17559,6 +18166,15 @@ __metadata: languageName: node linkType: hard +"is-typed-array@npm:^1.1.13, is-typed-array@npm:^1.1.14, is-typed-array@npm:^1.1.15": + version: 1.1.15 + resolution: "is-typed-array@npm:1.1.15" + dependencies: + which-typed-array: "npm:^1.1.16" + checksum: 10c0/415511da3669e36e002820584e264997ffe277ff136643a3126cc949197e6ca3334d0f12d084e83b1994af2e9c8141275c741cf2b7da5a2ff62dd0cac26f76c4 + languageName: node + linkType: hard + "is-typedarray@npm:^1.0.0": version: 1.0.0 resolution: "is-typedarray@npm:1.0.0" @@ -17605,6 +18221,32 @@ __metadata: languageName: node linkType: hard +"is-weakmap@npm:^2.0.2": + version: 2.0.2 + resolution: "is-weakmap@npm:2.0.2" + checksum: 10c0/443c35bb86d5e6cc5929cd9c75a4024bb0fff9586ed50b092f94e700b89c43a33b186b76dbc6d54f3d3d09ece689ab38dcdc1af6a482cbe79c0f2da0a17f1299 + languageName: node + linkType: hard + +"is-weakref@npm:^1.0.2, is-weakref@npm:^1.1.1": + version: 1.1.1 + resolution: "is-weakref@npm:1.1.1" + dependencies: + call-bound: "npm:^1.0.3" + checksum: 10c0/8e0a9c07b0c780949a100e2cab2b5560a48ecd4c61726923c1a9b77b6ab0aa0046c9e7fb2206042296817045376dee2c8ab1dabe08c7c3dfbf195b01275a085b + languageName: node + linkType: hard + +"is-weakset@npm:^2.0.3": + version: 2.0.4 + resolution: "is-weakset@npm:2.0.4" + dependencies: + call-bound: "npm:^1.0.3" + get-intrinsic: "npm:^1.2.6" + checksum: 10c0/6491eba08acb8dc9532da23cb226b7d0192ede0b88f16199e592e4769db0a077119c1f5d2283d1e0d16d739115f70046e887e477eb0e66cd90e1bb29f28ba647 + languageName: node + linkType: hard + "is-windows@npm:^1.0.1": version: 1.0.2 resolution: "is-windows@npm:1.0.2" @@ -17628,6 +18270,13 @@ __metadata: languageName: node linkType: hard +"isarray@npm:^2.0.5": + version: 2.0.5 + resolution: "isarray@npm:2.0.5" + checksum: 10c0/4199f14a7a13da2177c66c31080008b7124331956f47bca57dd0b6ea9f11687aa25e565a2c7a2b519bc86988d10398e3049a1f5df13c9f6b7664154690ae79fd + languageName: node + linkType: hard + "isarray@npm:~1.0.0": version: 1.0.0 resolution: "isarray@npm:1.0.0" @@ -18475,6 +19124,17 @@ __metadata: languageName: node linkType: hard +"json5@npm:^1.0.2": + version: 1.0.2 + resolution: "json5@npm:1.0.2" + dependencies: + minimist: "npm:^1.2.0" + bin: + json5: lib/cli.js + checksum: 10c0/9ee316bf21f000b00752e6c2a3b79ecf5324515a5c60ee88983a1910a45426b643a4f3461657586e8aeca87aaf96f0a519b0516d2ae527a6c3e7eed80f68717f + languageName: node + linkType: hard + "json5@npm:^2.1.2, json5@npm:^2.2.0, json5@npm:^2.2.3": version: 2.2.3 resolution: "json5@npm:2.2.3" @@ -19760,7 +20420,7 @@ __metadata: languageName: node linkType: hard -"math-intrinsics@npm:^1.0.0": +"math-intrinsics@npm:^1.0.0, math-intrinsics@npm:^1.1.0": version: 1.1.0 resolution: "math-intrinsics@npm:1.1.0" checksum: 10c0/7579ff94e899e2f76ab64491d76cf606274c874d8f2af4a442c016bd85688927fcfca157ba6bf74b08e9439dc010b248ce05b96cc7c126a354c3bae7fcb48b7f @@ -20830,6 +21490,13 @@ __metadata: languageName: node linkType: hard +"object-inspect@npm:^1.13.4": + version: 1.13.4 + resolution: "object-inspect@npm:1.13.4" + checksum: 10c0/d7f8711e803b96ea3191c745d6f8056ce1f2496e530e6a19a0e92d89b0fa3c76d910c31f0aa270432db6bd3b2f85500a376a83aaba849a8d518c8845b3211692 + languageName: node + linkType: hard + "object-keys@npm:^1.1.1": version: 1.1.1 resolution: "object-keys@npm:1.1.1" @@ -20837,6 +21504,20 @@ __metadata: languageName: node linkType: hard +"object.assign@npm:^4.1.7": + version: 4.1.7 + resolution: "object.assign@npm:4.1.7" + dependencies: + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.3" + define-properties: "npm:^1.2.1" + es-object-atoms: "npm:^1.0.0" + has-symbols: "npm:^1.1.0" + object-keys: "npm:^1.1.1" + checksum: 10c0/3b2732bd860567ea2579d1567525168de925a8d852638612846bd8082b3a1602b7b89b67b09913cbb5b9bd6e95923b2ae73580baa9d99cb4e990564e8cbf5ddc + languageName: node + linkType: hard + "object.defaults@npm:^1.1.0": version: 1.1.0 resolution: "object.defaults@npm:1.1.0" @@ -20849,6 +21530,29 @@ __metadata: languageName: node linkType: hard +"object.fromentries@npm:^2.0.8": + version: 2.0.8 + resolution: "object.fromentries@npm:2.0.8" + dependencies: + call-bind: "npm:^1.0.7" + define-properties: "npm:^1.2.1" + es-abstract: "npm:^1.23.2" + es-object-atoms: "npm:^1.0.0" + checksum: 10c0/cd4327e6c3369cfa805deb4cbbe919bfb7d3aeebf0bcaba291bb568ea7169f8f8cdbcabe2f00b40db0c20cd20f08e11b5f3a5a36fb7dd3fe04850c50db3bf83b + languageName: node + linkType: hard + +"object.groupby@npm:^1.0.3": + version: 1.0.3 + resolution: "object.groupby@npm:1.0.3" + dependencies: + call-bind: "npm:^1.0.7" + define-properties: "npm:^1.2.1" + es-abstract: "npm:^1.23.2" + checksum: 10c0/60d0455c85c736fbfeda0217d1a77525956f76f7b2495edeca9e9bbf8168a45783199e77b894d30638837c654d0cc410e0e02cbfcf445bc8de71c3da1ede6a9c + languageName: node + linkType: hard + "object.map@npm:^1.0.1": version: 1.0.1 resolution: "object.map@npm:1.0.1" @@ -20868,6 +21572,18 @@ __metadata: languageName: node linkType: hard +"object.values@npm:^1.2.1": + version: 1.2.1 + resolution: "object.values@npm:1.2.1" + dependencies: + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.3" + define-properties: "npm:^1.2.1" + es-object-atoms: "npm:^1.0.0" + checksum: 10c0/3c47814fdc64842ae3d5a74bc9d06bdd8d21563c04d9939bf6716a9c00596a4ebc342552f8934013d1ec991c74e3671b26710a0c51815f0b603795605ab6b2c9 + languageName: node + linkType: hard + "oblivious-set@npm:1.0.0": version: 1.0.0 resolution: "oblivious-set@npm:1.0.0" @@ -21088,6 +21804,17 @@ __metadata: languageName: node linkType: hard +"own-keys@npm:^1.0.1": + version: 1.0.1 + resolution: "own-keys@npm:1.0.1" + dependencies: + get-intrinsic: "npm:^1.2.6" + object-keys: "npm:^1.1.1" + safe-push-apply: "npm:^1.0.0" + checksum: 10c0/6dfeb3455bff92ec3f16a982d4e3e65676345f6902d9f5ded1d8265a6318d0200ce461956d6d1c70053c7fe9f9fe65e552faac03f8140d37ef0fdd108e67013a + languageName: node + linkType: hard + "p-cancelable@npm:^2.0.0": version: 2.1.1 resolution: "p-cancelable@npm:2.1.1" @@ -21849,6 +22576,13 @@ __metadata: languageName: node linkType: hard +"possible-typed-array-names@npm:^1.0.0": + version: 1.1.0 + resolution: "possible-typed-array-names@npm:1.1.0" + checksum: 10c0/c810983414142071da1d644662ce4caebce890203eb2bc7bf119f37f3fe5796226e117e6cca146b521921fa6531072674174a3325066ac66fce089a53e1e5196 + languageName: node + linkType: hard + "postcss-import@npm:^15.1.0": version: 15.1.0 resolution: "postcss-import@npm:15.1.0" @@ -23127,6 +23861,22 @@ __metadata: languageName: node linkType: hard +"reflect.getprototypeof@npm:^1.0.6, reflect.getprototypeof@npm:^1.0.9": + version: 1.0.10 + resolution: "reflect.getprototypeof@npm:1.0.10" + dependencies: + call-bind: "npm:^1.0.8" + define-properties: "npm:^1.2.1" + es-abstract: "npm:^1.23.9" + es-errors: "npm:^1.3.0" + es-object-atoms: "npm:^1.0.0" + get-intrinsic: "npm:^1.2.7" + get-proto: "npm:^1.0.1" + which-builtin-type: "npm:^1.2.1" + checksum: 10c0/7facec28c8008876f8ab98e80b7b9cb4b1e9224353fd4756dda5f2a4ab0d30fa0a5074777c6df24e1e0af463a2697513b0a11e548d99cf52f21f7bc6ba48d3ac + languageName: node + linkType: hard + "regenerator-runtime@npm:^0.14.0": version: 0.14.1 resolution: "regenerator-runtime@npm:0.14.1" @@ -23134,6 +23884,20 @@ __metadata: languageName: node linkType: hard +"regexp.prototype.flags@npm:^1.5.4": + version: 1.5.4 + resolution: "regexp.prototype.flags@npm:1.5.4" + dependencies: + call-bind: "npm:^1.0.8" + define-properties: "npm:^1.2.1" + es-errors: "npm:^1.3.0" + get-proto: "npm:^1.0.1" + gopd: "npm:^1.2.0" + set-function-name: "npm:^2.0.2" + checksum: 10c0/83b88e6115b4af1c537f8dabf5c3744032cb875d63bc05c288b1b8c0ef37cbe55353f95d8ca817e8843806e3e150b118bc624e4279b24b4776b4198232735a77 + languageName: node + linkType: hard + "registry-auth-token@npm:3.3.2": version: 3.3.2 resolution: "registry-auth-token@npm:3.3.2" @@ -23682,6 +24446,7 @@ __metadata: cheerio: "npm:^1.0.0" dotenv: "npm:^16.4.7" eslint: "npm:^9.39.2" + eslint-plugin-import: "npm:^2.32.0" eslint-plugin-simple-import-sort: "npm:^12.1.1" glob: "npm:^11.0.0" husky: "npm:^9.1.7" @@ -23751,6 +24516,19 @@ __metadata: languageName: node linkType: hard +"safe-array-concat@npm:^1.1.3": + version: 1.1.3 + resolution: "safe-array-concat@npm:1.1.3" + dependencies: + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.2" + get-intrinsic: "npm:^1.2.6" + has-symbols: "npm:^1.1.0" + isarray: "npm:^2.0.5" + checksum: 10c0/43c86ffdddc461fb17ff8a17c5324f392f4868f3c7dd2c6a5d9f5971713bc5fd755667212c80eab9567595f9a7509cc2f83e590ddaebd1bd19b780f9c79f9a8d + languageName: node + linkType: hard + "safe-buffer@npm:5.1.2, safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1": version: 5.1.2 resolution: "safe-buffer@npm:5.1.2" @@ -23765,6 +24543,27 @@ __metadata: languageName: node linkType: hard +"safe-push-apply@npm:^1.0.0": + version: 1.0.0 + resolution: "safe-push-apply@npm:1.0.0" + dependencies: + es-errors: "npm:^1.3.0" + isarray: "npm:^2.0.5" + checksum: 10c0/831f1c9aae7436429e7862c7e46f847dfe490afac20d0ee61bae06108dbf5c745a0de3568ada30ccdd3eeb0864ca8331b2eef703abd69bfea0745b21fd320750 + languageName: node + linkType: hard + +"safe-regex-test@npm:^1.1.0": + version: 1.1.0 + resolution: "safe-regex-test@npm:1.1.0" + dependencies: + call-bound: "npm:^1.0.2" + es-errors: "npm:^1.3.0" + is-regex: "npm:^1.2.1" + checksum: 10c0/f2c25281bbe5d39cddbbce7f86fca5ea9b3ce3354ea6cd7c81c31b006a5a9fff4286acc5450a3b9122c56c33eba69c56b9131ad751457b2b4a585825e6a10665 + languageName: node + linkType: hard + "safe-stable-stringify@npm:^2.3.1": version: 2.5.0 resolution: "safe-stable-stringify@npm:2.5.0" @@ -24040,6 +24839,43 @@ __metadata: languageName: node linkType: hard +"set-function-length@npm:^1.2.2": + version: 1.2.2 + resolution: "set-function-length@npm:1.2.2" + dependencies: + define-data-property: "npm:^1.1.4" + es-errors: "npm:^1.3.0" + function-bind: "npm:^1.1.2" + get-intrinsic: "npm:^1.2.4" + gopd: "npm:^1.0.1" + has-property-descriptors: "npm:^1.0.2" + checksum: 10c0/82850e62f412a258b71e123d4ed3873fa9377c216809551192bb6769329340176f109c2eeae8c22a8d386c76739855f78e8716515c818bcaef384b51110f0f3c + languageName: node + linkType: hard + +"set-function-name@npm:^2.0.2": + version: 2.0.2 + resolution: "set-function-name@npm:2.0.2" + dependencies: + define-data-property: "npm:^1.1.4" + es-errors: "npm:^1.3.0" + functions-have-names: "npm:^1.2.3" + has-property-descriptors: "npm:^1.0.2" + checksum: 10c0/fce59f90696c450a8523e754abb305e2b8c73586452619c2bad5f7bf38c7b6b4651895c9db895679c5bef9554339cf3ef1c329b66ece3eda7255785fbe299316 + languageName: node + linkType: hard + +"set-proto@npm:^1.0.0": + version: 1.0.0 + resolution: "set-proto@npm:1.0.0" + dependencies: + dunder-proto: "npm:^1.0.1" + es-errors: "npm:^1.3.0" + es-object-atoms: "npm:^1.0.0" + checksum: 10c0/ca5c3ccbba479d07c30460e367e66337cec825560b11e8ba9c5ebe13a2a0d6021ae34eddf94ff3dfe17a3104dc1f191519cb6c48378b503e5c3f36393938776a + languageName: node + linkType: hard + "setprototypeof@npm:1.1.0": version: 1.1.0 resolution: "setprototypeof@npm:1.1.0" @@ -24148,7 +24984,7 @@ __metadata: languageName: node linkType: hard -"side-channel@npm:^1.0.4, side-channel@npm:^1.0.6": +"side-channel@npm:^1.0.4, side-channel@npm:^1.0.6, side-channel@npm:^1.1.0": version: 1.1.0 resolution: "side-channel@npm:1.1.0" dependencies: @@ -24675,6 +25511,16 @@ __metadata: languageName: node linkType: hard +"stop-iteration-iterator@npm:^1.1.0": + version: 1.1.0 + resolution: "stop-iteration-iterator@npm:1.1.0" + dependencies: + es-errors: "npm:^1.3.0" + internal-slot: "npm:^1.1.0" + checksum: 10c0/de4e45706bb4c0354a4b1122a2b8cc45a639e86206807ce0baf390ee9218d3ef181923fa4d2b67443367c491aa255c5fbaa64bb74648e3c5b48299928af86c09 + languageName: node + linkType: hard + "strapi-plugin-multi-select@npm:^2.1.1": version: 2.1.1 resolution: "strapi-plugin-multi-select@npm:2.1.1" @@ -24801,6 +25647,44 @@ __metadata: languageName: node linkType: hard +"string.prototype.trim@npm:^1.2.10": + version: 1.2.10 + resolution: "string.prototype.trim@npm:1.2.10" + dependencies: + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.2" + define-data-property: "npm:^1.1.4" + define-properties: "npm:^1.2.1" + es-abstract: "npm:^1.23.5" + es-object-atoms: "npm:^1.0.0" + has-property-descriptors: "npm:^1.0.2" + checksum: 10c0/8a8854241c4b54a948e992eb7dd6b8b3a97185112deb0037a134f5ba57541d8248dd610c966311887b6c2fd1181a3877bffb14d873ce937a344535dabcc648f8 + languageName: node + linkType: hard + +"string.prototype.trimend@npm:^1.0.9": + version: 1.0.9 + resolution: "string.prototype.trimend@npm:1.0.9" + dependencies: + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.2" + define-properties: "npm:^1.2.1" + es-object-atoms: "npm:^1.0.0" + checksum: 10c0/59e1a70bf9414cb4c536a6e31bef5553c8ceb0cf44d8b4d0ed65c9653358d1c64dd0ec203b100df83d0413bbcde38b8c5d49e14bc4b86737d74adc593a0d35b6 + languageName: node + linkType: hard + +"string.prototype.trimstart@npm:^1.0.8": + version: 1.0.8 + resolution: "string.prototype.trimstart@npm:1.0.8" + dependencies: + call-bind: "npm:^1.0.7" + define-properties: "npm:^1.2.1" + es-object-atoms: "npm:^1.0.0" + checksum: 10c0/d53af1899959e53c83b64a5fd120be93e067da740e7e75acb433849aa640782fb6c7d4cd5b84c954c84413745a3764df135a8afeb22908b86a835290788d8366 + languageName: node + linkType: hard + "string_decoder@npm:^1.1.1": version: 1.3.0 resolution: "string_decoder@npm:1.3.0" @@ -25857,6 +26741,18 @@ __metadata: languageName: node linkType: hard +"tsconfig-paths@npm:^3.15.0": + version: 3.15.0 + resolution: "tsconfig-paths@npm:3.15.0" + dependencies: + "@types/json5": "npm:^0.0.29" + json5: "npm:^1.0.2" + minimist: "npm:^1.2.6" + strip-bom: "npm:^3.0.0" + checksum: 10c0/5b4f301a2b7a3766a986baf8fc0e177eb80bdba6e396792ff92dc23b5bca8bb279fc96517dcaaef63a3b49bebc6c4c833653ec58155780bc906bdbcf7dda0ef5 + languageName: node + linkType: hard + "tslib@npm:2, tslib@npm:^2.0.0, tslib@npm:^2.0.1, tslib@npm:^2.0.3, tslib@npm:^2.1.0, tslib@npm:^2.4.0, tslib@npm:^2.5.0, tslib@npm:^2.6.2, tslib@npm:^2.8.0, tslib@npm:^2.8.1": version: 2.8.1 resolution: "tslib@npm:2.8.1" @@ -26008,6 +26904,59 @@ __metadata: languageName: node linkType: hard +"typed-array-buffer@npm:^1.0.3": + version: 1.0.3 + resolution: "typed-array-buffer@npm:1.0.3" + dependencies: + call-bound: "npm:^1.0.3" + es-errors: "npm:^1.3.0" + is-typed-array: "npm:^1.1.14" + checksum: 10c0/1105071756eb248774bc71646bfe45b682efcad93b55532c6ffa4518969fb6241354e4aa62af679ae83899ec296d69ef88f1f3763657cdb3a4d29321f7b83079 + languageName: node + linkType: hard + +"typed-array-byte-length@npm:^1.0.3": + version: 1.0.3 + resolution: "typed-array-byte-length@npm:1.0.3" + dependencies: + call-bind: "npm:^1.0.8" + for-each: "npm:^0.3.3" + gopd: "npm:^1.2.0" + has-proto: "npm:^1.2.0" + is-typed-array: "npm:^1.1.14" + checksum: 10c0/6ae083c6f0354f1fce18b90b243343b9982affd8d839c57bbd2c174a5d5dc71be9eb7019ffd12628a96a4815e7afa85d718d6f1e758615151d5f35df841ffb3e + languageName: node + linkType: hard + +"typed-array-byte-offset@npm:^1.0.4": + version: 1.0.4 + resolution: "typed-array-byte-offset@npm:1.0.4" + dependencies: + available-typed-arrays: "npm:^1.0.7" + call-bind: "npm:^1.0.8" + for-each: "npm:^0.3.3" + gopd: "npm:^1.2.0" + has-proto: "npm:^1.2.0" + is-typed-array: "npm:^1.1.15" + reflect.getprototypeof: "npm:^1.0.9" + checksum: 10c0/3d805b050c0c33b51719ee52de17c1cd8e6a571abdf0fffb110e45e8dd87a657e8b56eee94b776b13006d3d347a0c18a730b903cf05293ab6d92e99ff8f77e53 + languageName: node + linkType: hard + +"typed-array-length@npm:^1.0.7": + version: 1.0.7 + resolution: "typed-array-length@npm:1.0.7" + dependencies: + call-bind: "npm:^1.0.7" + for-each: "npm:^0.3.3" + gopd: "npm:^1.0.1" + is-typed-array: "npm:^1.1.13" + possible-typed-array-names: "npm:^1.0.0" + reflect.getprototypeof: "npm:^1.0.6" + checksum: 10c0/e38f2ae3779584c138a2d8adfa8ecf749f494af3cd3cdafe4e688ce51418c7d2c5c88df1bd6be2bbea099c3f7cea58c02ca02ed438119e91f162a9de23f61295 + languageName: node + linkType: hard + "typedarray-to-buffer@npm:^3.1.5": version: 3.1.5 resolution: "typedarray-to-buffer@npm:3.1.5" @@ -26231,6 +27180,18 @@ __metadata: languageName: node linkType: hard +"unbox-primitive@npm:^1.1.0": + version: 1.1.0 + resolution: "unbox-primitive@npm:1.1.0" + dependencies: + call-bound: "npm:^1.0.3" + has-bigints: "npm:^1.0.2" + has-symbols: "npm:^1.1.0" + which-boxed-primitive: "npm:^1.1.1" + checksum: 10c0/7dbd35ab02b0e05fe07136c72cb9355091242455473ec15057c11430129bab38b7b3624019b8778d02a881c13de44d63cd02d122ee782fb519e1de7775b5b982 + languageName: node + linkType: hard + "unc-path-regex@npm:^0.1.2": version: 0.1.2 resolution: "unc-path-regex@npm:0.1.2" @@ -27326,6 +28287,52 @@ __metadata: languageName: node linkType: hard +"which-boxed-primitive@npm:^1.1.0, which-boxed-primitive@npm:^1.1.1": + version: 1.1.1 + resolution: "which-boxed-primitive@npm:1.1.1" + dependencies: + is-bigint: "npm:^1.1.0" + is-boolean-object: "npm:^1.2.1" + is-number-object: "npm:^1.1.1" + is-string: "npm:^1.1.1" + is-symbol: "npm:^1.1.1" + checksum: 10c0/aceea8ede3b08dede7dce168f3883323f7c62272b49801716e8332ff750e7ae59a511ae088840bc6874f16c1b7fd296c05c949b0e5b357bfe3c431b98c417abe + languageName: node + linkType: hard + +"which-builtin-type@npm:^1.2.1": + version: 1.2.1 + resolution: "which-builtin-type@npm:1.2.1" + dependencies: + call-bound: "npm:^1.0.2" + function.prototype.name: "npm:^1.1.6" + has-tostringtag: "npm:^1.0.2" + is-async-function: "npm:^2.0.0" + is-date-object: "npm:^1.1.0" + is-finalizationregistry: "npm:^1.1.0" + is-generator-function: "npm:^1.0.10" + is-regex: "npm:^1.2.1" + is-weakref: "npm:^1.0.2" + isarray: "npm:^2.0.5" + which-boxed-primitive: "npm:^1.1.0" + which-collection: "npm:^1.0.2" + which-typed-array: "npm:^1.1.16" + checksum: 10c0/8dcf323c45e5c27887800df42fbe0431d0b66b1163849bb7d46b5a730ad6a96ee8bfe827d078303f825537844ebf20c02459de41239a0a9805e2fcb3cae0d471 + languageName: node + linkType: hard + +"which-collection@npm:^1.0.2": + version: 1.0.2 + resolution: "which-collection@npm:1.0.2" + dependencies: + is-map: "npm:^2.0.3" + is-set: "npm:^2.0.3" + is-weakmap: "npm:^2.0.2" + is-weakset: "npm:^2.0.3" + checksum: 10c0/3345fde20964525a04cdf7c4a96821f85f0cc198f1b2ecb4576e08096746d129eb133571998fe121c77782ac8f21cbd67745a3d35ce100d26d4e684c142ea1f2 + languageName: node + linkType: hard + "which-pm@npm:2.0.0": version: 2.0.0 resolution: "which-pm@npm:2.0.0" @@ -27336,6 +28343,21 @@ __metadata: languageName: node linkType: hard +"which-typed-array@npm:^1.1.16, which-typed-array@npm:^1.1.19": + version: 1.1.20 + resolution: "which-typed-array@npm:1.1.20" + dependencies: + available-typed-arrays: "npm:^1.0.7" + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.4" + for-each: "npm:^0.3.5" + get-proto: "npm:^1.0.1" + gopd: "npm:^1.2.0" + has-tostringtag: "npm:^1.0.2" + checksum: 10c0/16fcdada95c8afb821cd1117f0ab50b4d8551677ac08187f21d4e444530913c9ffd2dac634f0c1183345f96344b69280f40f9a8bc52164ef409e555567c2604b + languageName: node + linkType: hard + "which@npm:^1.2.14": version: 1.3.1 resolution: "which@npm:1.3.1" From c4803f45898a8780cca3f5a65ee0cb5a69c71c6f Mon Sep 17 00:00:00 2001 From: kallelongjuhani Date: Wed, 28 Jan 2026 20:14:19 +0200 Subject: [PATCH 2/2] chore: format with import ordering --- .../1.0.0/full_documentation.json | 2 +- .../src/functions/generateMockData.ts | 3 ++- .../admin/src/pages/HomePage.tsx | 6 +---- backend/vaa-strapi/src/util/appSettings.ts | 4 ++-- .../api/adapters/apiRoute/apiRouteAdapter.ts | 3 ++- .../lib/api/adapters/apiRoute/apiRoutes.ts | 3 ++- .../strapi/dataProvider/strapiDataProvider.ts | 14 +++++------ .../lib/api/adapters/strapi/strapiAdapter.ts | 3 ++- .../adapters/strapi/utils/parseCandidate.ts | 3 ++- .../adapters/strapi/utils/parseNominations.ts | 20 ++++++++-------- .../strapi/utils/parseOrganization.ts | 3 ++- .../strapi/utils/parseQuestionType.ts | 3 ++- frontend/src/lib/api/base/dataTypes.ts | 4 ++-- frontend/src/lib/api/base/universalAdapter.ts | 3 ++- .../utils/filterEntitiesByNomination.test.ts | 3 ++- .../api/utils/filterEntitiesByNomination.ts | 8 ++----- .../src/lib/api/utils/parseResponse.test.ts | 3 ++- .../src/lib/api/utils/translateHeroContent.ts | 3 ++- .../PasswordValidator.svelte | 3 ++- .../categoryTag/CategoryTag.type.ts | 1 + .../ConstituencySelector.svelte | 4 ++-- .../SingleGroupConstituencySelector.svelte | 2 +- .../electionTag/ElectionTag.type.ts | 1 + .../enumerated/EnumeratedEntityFilter.svelte | 3 ++- .../lib/components/entityTag/EntityTag.svelte | 3 ++- .../components/entityTag/EntityTag.type.ts | 1 + .../errorMessage/ErrorMessage.type.ts | 1 + .../headingGroup/HeadingGroup.svelte | 1 + .../headingGroup/HeadingGroup.type.ts | 1 + .../components/headingGroup/PreHeading.svelte | 1 + .../headingGroup/PreHeading.type.ts | 1 + .../components/heroEmoji/HeroEmoji.type.ts | 1 + .../src/lib/components/input/Input.svelte | 3 ++- .../lib/components/input/QuestionInput.svelte | 12 ++++------ .../lib/components/loading/Loading.type.ts | 1 + .../notification/Notification.svelte | 3 ++- .../questions/QuestionChoices.svelte | 3 ++- .../successMessage/SuccessMessage.type.ts | 1 + frontend/src/lib/components/tabs/Tabs.type.ts | 1 + .../src/lib/components/toggle/Toggle.type.ts | 1 + .../lib/components/warning/Warning.type.ts | 1 + frontend/src/lib/contexts/admin/jobStores.ts | 3 ++- frontend/src/lib/contexts/app/appContext.ts | 6 +++-- frontend/src/lib/contexts/app/getRoute.ts | 3 ++- frontend/src/lib/contexts/app/survey.ts | 3 ++- .../contexts/app/tracking/trackingService.ts | 3 ++- .../candidate/candidateUserDataStore.ts | 8 ++++--- .../src/lib/contexts/component/darkMode.ts | 3 ++- .../src/lib/contexts/layout/layoutContext.ts | 3 ++- frontend/src/lib/contexts/utils/paramStore.ts | 3 ++- .../contexts/utils/questionCategoryStore.ts | 11 ++------- .../src/lib/contexts/utils/questionStore.ts | 10 ++------ .../src/lib/contexts/utils/stackedStore.ts | 3 ++- .../src/lib/contexts/voter/answerStore.ts | 5 ++-- .../voter/filters/buildQuestionFilter.ts | 3 ++- frontend/src/lib/contexts/voter/matchStore.ts | 4 ++-- .../voter/nominationAndQuestionStore.ts | 23 +++++++++--------- frontend/src/lib/contexts/voter/voter.ts | 4 ++-- .../appLogo/AppLogo.type.ts | 1 + .../entityCard/EntityCard.svelte | 13 ++++------ .../entityDetails/EntityDetails.svelte | 6 +++-- .../entityDetails/EntityInfo.svelte | 10 ++------ .../feedback/popup/FeedbackPopup.svelte | 3 ++- .../dynamic-components/footer/Footer.type.ts | 1 + .../navigation/NavItem.svelte | 1 + .../questionHeading/QuestionHeading.svelte | 6 +++-- frontend/src/lib/i18n/init.ts | 6 +++-- frontend/src/lib/i18n/translations/index.ts | 1 + .../admin/features/condenseArguments.ts | 8 +++---- .../admin/features/generateQuestionInfo.ts | 7 +++--- .../dataProvider/localServerDataProvider.ts | 18 +++++++------- .../api/adapters/local/localServerAdapter.ts | 3 ++- frontend/src/lib/utils/entities.ts | 3 ++- frontend/src/lib/utils/matches.ts | 4 ++-- .../lib/utils/matching/imputeParentAnswers.ts | 17 +++++++------ frontend/src/lib/utils/route/buildRoute.ts | 6 +++-- .../src/lib/utils/route/filterPersistent.ts | 3 ++- frontend/src/lib/utils/route/parseParams.ts | 3 ++- .../category/[categoryId]/+page.svelte | 3 ++- .../(voters)/(located)/results/+page.svelte | 9 +++---- .../(located)/results/statistics/+page.svelte | 3 ++- .../argument-condensation/+page.server.ts | 3 ++- .../[[lang=locale]]/admin/login/+page.svelte | 3 ++- .../(protected)/profile/+page.svelte | 10 ++++---- .../questions/[questionId]/+page.svelte | 6 +++-- .../candidate/login/+page.svelte | 3 ++- packages/argument-condensation/src/api.ts | 3 ++- .../utils/condensation/getAndSliceComments.ts | 17 ++++++------- .../utils/condensation/isSupportedQuestion.ts | 5 ++-- .../condensation/condenseQuestions.test.ts | 2 +- .../tests/unit/handleQuestion.test.ts | 3 ++- .../data/src/objects/election/election.ts | 15 ++++-------- .../data/src/objects/entities/base/entity.ts | 24 +++++++++---------- .../src/objects/entities/variants/alliance.ts | 4 ++-- .../objects/entities/variants/candidate.ts | 4 ++-- .../src/objects/entities/variants/faction.ts | 11 ++------- .../objects/entities/variants/organization.ts | 4 ++-- .../variants/candidateNomination.ts | 10 +++++--- .../nominations/variants/factionNomination.ts | 18 +++++++------- .../variants/organizationNomination.ts | 13 ++++------ .../objects/nominations/variants/variants.ts | 2 +- .../objects/questions/base/choiceQuestion.ts | 22 +++++++---------- .../questions/base/multipleChoiceQuestion.ts | 18 ++++++-------- .../questions/base/singleChoiceQuestion.ts | 9 ++----- .../questions/variants/booleanQuestion.ts | 14 ++--------- .../questions/variants/dateQuestion.ts | 15 +++++++----- .../questions/variants/numberQuestion.ts | 15 +++++++----- .../singleChoiceCategoricalQuestion.ts | 13 ++-------- .../variants/singleChoiceOrdinalQuestion.ts | 12 ++++++---- .../objects/questions/variants/variants.ts | 3 +-- .../data/src/testUtils/localizedTestData.ts | 3 ++- packages/data/src/testUtils/testData.ts | 4 ++-- packages/data/src/utils/choice.test.ts | 1 + packages/data/src/utils/choice.ts | 3 ++- packages/data/src/utils/ensureValue.ts | 4 ++-- packages/data/src/utils/filter.test.ts | 1 + packages/filters/src/filter/base/filter.ts | 9 ++++--- .../filter/enumerated/choiceQuestionFilter.ts | 9 ++++--- .../src/filter/enumerated/enumeratedFilter.ts | 3 ++- .../src/filter/enumerated/objectFilter.ts | 6 +++-- .../filters/src/filter/number/numberFilter.ts | 6 +++-- .../filters/src/filter/text/textFilter.ts | 13 ++++------ .../src/filter/text/textPropertyFilter.ts | 3 ++- packages/filters/src/group/filterGroup.ts | 3 ++- packages/filters/tests/filter.test.ts | 4 ++-- packages/llm/src/prompts/promptRegistry.ts | 3 ++- packages/llm/tests/llmProvider.test.ts | 17 ++++--------- packages/matching/examples/example.ts | 10 ++------ .../src/algorithms/matchingAlgorithm.ts | 6 +++-- packages/matching/src/distance/measure.ts | 3 +-- packages/matching/src/distance/metric.ts | 6 +++-- packages/matching/src/match/matchBase.ts | 3 ++- packages/matching/src/missingValue/impute.ts | 9 ++++--- .../src/question/categoricalQuestion.ts | 3 ++- .../matching/src/question/ordinalQuestion.ts | 9 ++----- packages/matching/src/space/matchingSpace.ts | 3 ++- packages/matching/src/space/position.ts | 3 ++- packages/matching/tests/utils.ts | 3 ++- .../src/core/infoGeneration.type.ts | 3 +-- tests/tests/utils/buildRoute.ts | 3 ++- 140 files changed, 406 insertions(+), 405 deletions(-) diff --git a/backend/vaa-strapi/src/extensions/documentation/documentation/1.0.0/full_documentation.json b/backend/vaa-strapi/src/extensions/documentation/documentation/1.0.0/full_documentation.json index a61f01f06..722cdb86a 100644 --- a/backend/vaa-strapi/src/extensions/documentation/documentation/1.0.0/full_documentation.json +++ b/backend/vaa-strapi/src/extensions/documentation/documentation/1.0.0/full_documentation.json @@ -14,7 +14,7 @@ "name": "Apache 2.0", "url": "https://www.apache.org/licenses/LICENSE-2.0.html" }, - "x-generation-date": "2026-01-28T15:08:12.363Z" + "x-generation-date": "2026-01-28T18:13:51.743Z" }, "x-strapi-config": { "plugins": [ diff --git a/backend/vaa-strapi/src/functions/generateMockData.ts b/backend/vaa-strapi/src/functions/generateMockData.ts index bb8fd9bc7..1b3d46eb3 100644 --- a/backend/vaa-strapi/src/functions/generateMockData.ts +++ b/backend/vaa-strapi/src/functions/generateMockData.ts @@ -6,7 +6,7 @@ * debugging & developing mock data generation functionality. */ -import { type Faker, faker, fakerFI, fakerSV } from '@faker-js/faker'; +import { faker, fakerFI, fakerSV } from '@faker-js/faker'; import crypto from 'crypto'; import { loadDefaultAppSettings } from './loadDefaultAppSettings'; import mockAdmins from './mockData/mockAdmins.json'; @@ -20,6 +20,7 @@ import { generateMockDataOnInitialise, generateMockDataOnRestart } from '../cons import { API } from '../util/api'; import { getDynamicTranslations } from '../util/appCustomization'; import { dropAllCollections } from '../util/drop'; +import type { Faker } from '@faker-js/faker'; import type { AnswerValue, LocalizedAnswer, LocalizedString, QuestionTypeSettings } from '@openvaa/app-shared'; import type { Data } from '@strapi/strapi'; diff --git a/backend/vaa-strapi/src/plugins/openvaa-admin-tools/admin/src/pages/HomePage.tsx b/backend/vaa-strapi/src/plugins/openvaa-admin-tools/admin/src/pages/HomePage.tsx index ed9b48420..52b5443f8 100644 --- a/backend/vaa-strapi/src/plugins/openvaa-admin-tools/admin/src/pages/HomePage.tsx +++ b/backend/vaa-strapi/src/plugins/openvaa-admin-tools/admin/src/pages/HomePage.tsx @@ -1,8 +1,4 @@ -import { Card } from '@strapi/design-system'; -import { Flex } from '@strapi/design-system'; -import { Main, Typography } from '@strapi/design-system'; -import { Accordion } from '@strapi/design-system'; -import { Box } from '@strapi/design-system'; +import { Accordion, Box, Card, Flex, Main, Typography } from '@strapi/design-system'; import { CandidateNominatorFileImport } from '../components/CandidateNominatorFileImport'; import { DeleteData } from '../components/DeleteData'; import { FindData } from '../components/FindData'; diff --git a/backend/vaa-strapi/src/util/appSettings.ts b/backend/vaa-strapi/src/util/appSettings.ts index 3d8869bc1..1143faf41 100644 --- a/backend/vaa-strapi/src/util/appSettings.ts +++ b/backend/vaa-strapi/src/util/appSettings.ts @@ -1,5 +1,5 @@ -import { type DynamicSettings, dynamicSettings } from '@openvaa/app-shared'; -import type { QuestionInCardContent } from '@openvaa/app-shared'; +import { dynamicSettings } from '@openvaa/app-shared'; +import type { DynamicSettings, QuestionInCardContent } from '@openvaa/app-shared'; import type { Data } from '@strapi/strapi'; /** diff --git a/frontend/src/lib/api/adapters/apiRoute/apiRouteAdapter.ts b/frontend/src/lib/api/adapters/apiRoute/apiRouteAdapter.ts index 7fc7129d4..211e5bdad 100644 --- a/frontend/src/lib/api/adapters/apiRoute/apiRouteAdapter.ts +++ b/frontend/src/lib/api/adapters/apiRoute/apiRouteAdapter.ts @@ -1,6 +1,7 @@ -import { API_ROUTES, type ApiGetRoute, type ApiPostRoute, type ApiRouteReturnType } from './apiRoutes'; +import { API_ROUTES } from './apiRoutes'; import type { UniversalAdapter } from '$lib/api/base/universalAdapter'; import type { ApiRouteAdapter, ApiRouteGetOptions, ApiRoutePostOptions } from './apiRouteAdapter.type'; +import type { ApiGetRoute, ApiPostRoute, ApiRouteReturnType } from './apiRoutes'; /** * A mixin for all ApiRoute Data API services, implementing `apiGet` and `apiPost` methods. diff --git a/frontend/src/lib/api/adapters/apiRoute/apiRoutes.ts b/frontend/src/lib/api/adapters/apiRoute/apiRoutes.ts index e6a7d4d9c..a8ae7928e 100644 --- a/frontend/src/lib/api/adapters/apiRoute/apiRoutes.ts +++ b/frontend/src/lib/api/adapters/apiRoute/apiRoutes.ts @@ -1,6 +1,7 @@ -import { DP_METHOD, type DPDataType } from '$lib/api/base/dataTypes'; +import { DP_METHOD } from '$lib/api/base/dataTypes'; import { API_ROOT } from '$lib/api/base/universalApiRoutes'; import type { DataApiActionResult } from '$lib/api/base/actionResult.type'; +import type { DPDataType } from '$lib/api/base/dataTypes'; export const API_GET_ROUTES = Object.fromEntries( Object.keys(DP_METHOD).map((collection) => [collection, `${API_ROOT}/data/${collection}`]) diff --git a/frontend/src/lib/api/adapters/strapi/dataProvider/strapiDataProvider.ts b/frontend/src/lib/api/adapters/strapi/dataProvider/strapiDataProvider.ts index 011f5fcc7..54c5e6381 100644 --- a/frontend/src/lib/api/adapters/strapi/dataProvider/strapiDataProvider.ts +++ b/frontend/src/lib/api/adapters/strapi/dataProvider/strapiDataProvider.ts @@ -1,10 +1,4 @@ -import { - type AnyQuestionVariantData, - type ConstituencyData, - type ConstituencyGroupData, - ENTITY_TYPE, - type QuestionCategoryData -} from '@openvaa/data'; +import { ENTITY_TYPE } from '@openvaa/data'; import { UniversalDataProvider } from '$lib/api/base/universalDataProvider'; import { translate, translateObject } from '$lib/i18n'; import { strapiAdapterMixin } from '../strapiAdapter'; @@ -23,6 +17,12 @@ import { import { parseEntityType } from '../utils/parseEntityType'; import { parseQuestionCategoryCustomData } from '../utils/parseQuestionCategoryCustomData'; import { parseQuestionCustomData } from '../utils/parseQuestionCustomData'; +import type { + AnyQuestionVariantData, + ConstituencyData, + ConstituencyGroupData, + QuestionCategoryData +} from '@openvaa/data'; import type { DPDataType } from '$lib/api/base/dataTypes'; import type { GetAppCustomizationOptions, diff --git a/frontend/src/lib/api/adapters/strapi/strapiAdapter.ts b/frontend/src/lib/api/adapters/strapi/strapiAdapter.ts index c5259463a..4e37ef863 100644 --- a/frontend/src/lib/api/adapters/strapi/strapiAdapter.ts +++ b/frontend/src/lib/api/adapters/strapi/strapiAdapter.ts @@ -1,10 +1,11 @@ import { ENTITY_TYPE } from '@openvaa/data'; import { browser } from '$app/environment'; import { constants } from '$lib/utils/constants'; -import { STRAPI_API, STRAPI_AUTH_APIS, type StrapiApi, type StrapiApiReturnType } from './strapiApi'; +import { STRAPI_API, STRAPI_AUTH_APIS } from './strapiApi'; import type { WithAuth, WithTargetEntity } from '$lib/api/base/dataWriter.type'; import type { UniversalAdapter } from '$lib/api/base/universalAdapter'; import type { StrapiAdapter, StrapiApiGetOptions, StrapiApiPostOptions } from './strapiAdapter.type'; +import type { StrapiApi, StrapiApiReturnType } from './strapiApi'; import type { StrapiResult } from './strapiData.type'; /** diff --git a/frontend/src/lib/api/adapters/strapi/utils/parseCandidate.ts b/frontend/src/lib/api/adapters/strapi/utils/parseCandidate.ts index 3095b7a92..1256d0a1f 100644 --- a/frontend/src/lib/api/adapters/strapi/utils/parseCandidate.ts +++ b/frontend/src/lib/api/adapters/strapi/utils/parseCandidate.ts @@ -1,7 +1,8 @@ -import { type CandidateData, ENTITY_TYPE } from '@openvaa/data'; +import { ENTITY_TYPE } from '@openvaa/data'; import { formatId } from '$lib/api/utils/formatId'; import { parseAnswers } from '$lib/api/utils/parseAnswers'; import { parseImage } from './parseImage'; +import type { CandidateData } from '@openvaa/data'; import type { LocalizedAnswers, LocalizedCandidateData } from '$lib/api/base/dataWriter.type'; import type { StrapiCandidateData, StrapiUpdateCandidateReturnData } from '../strapiData.type'; diff --git a/frontend/src/lib/api/adapters/strapi/utils/parseNominations.ts b/frontend/src/lib/api/adapters/strapi/utils/parseNominations.ts index 070cbdaa6..277b9977f 100644 --- a/frontend/src/lib/api/adapters/strapi/utils/parseNominations.ts +++ b/frontend/src/lib/api/adapters/strapi/utils/parseNominations.ts @@ -1,17 +1,17 @@ -import { - type AnyEntityVariantData, - type AnyNominationVariantPublicData, - type CandidateData, - ENTITY_TYPE, - type OrganizationData, - type PublicAllianceNominationData, - type PublicCandidateNominationData, - type PublicOrganizationNominationData -} from '@openvaa/data'; +import { ENTITY_TYPE } from '@openvaa/data'; import { logDebugError } from '$lib/utils/logger'; import { parseBasics, parseCandidate, parseOrganization, parseRelationIds, parseSingleRelationId } from '../utils'; import type { CustomData } from '@openvaa/app-shared'; import type { Id } from '@openvaa/core'; +import type { + AnyEntityVariantData, + AnyNominationVariantPublicData, + CandidateData, + OrganizationData, + PublicAllianceNominationData, + PublicCandidateNominationData, + PublicOrganizationNominationData +} from '@openvaa/data'; import type { StrapiAllianceData, StrapiNominationData } from '../strapiData.type'; /** diff --git a/frontend/src/lib/api/adapters/strapi/utils/parseOrganization.ts b/frontend/src/lib/api/adapters/strapi/utils/parseOrganization.ts index 1a77f50f3..6e89f8643 100644 --- a/frontend/src/lib/api/adapters/strapi/utils/parseOrganization.ts +++ b/frontend/src/lib/api/adapters/strapi/utils/parseOrganization.ts @@ -1,7 +1,8 @@ -import { ENTITY_TYPE, type OrganizationData } from '@openvaa/data'; +import { ENTITY_TYPE } from '@openvaa/data'; import { parseAnswers } from '$lib/api/utils/parseAnswers'; import { parseBasics } from './parseBasics'; import { parseImage } from './parseImage'; +import type { OrganizationData } from '@openvaa/data'; import type { StrapiPartyData } from '../strapiData.type'; export function parseOrganization(data: StrapiPartyData, locale: string | null): OrganizationData { diff --git a/frontend/src/lib/api/adapters/strapi/utils/parseQuestionType.ts b/frontend/src/lib/api/adapters/strapi/utils/parseQuestionType.ts index 0bc9bcd87..205f0d3eb 100644 --- a/frontend/src/lib/api/adapters/strapi/utils/parseQuestionType.ts +++ b/frontend/src/lib/api/adapters/strapi/utils/parseQuestionType.ts @@ -1,7 +1,8 @@ -import { type AnyQuestionVariantData, type Choice, QUESTION_TYPE } from '@openvaa/data'; +import { QUESTION_TYPE } from '@openvaa/data'; import { formatId } from '$lib/api/utils/formatId'; import { translate } from '$lib/i18n'; import type { LocalizedChoice, QuestionSettingsDateType } from '@openvaa/app-shared'; +import type { AnyQuestionVariantData, Choice } from '@openvaa/data'; import type { StrapiQuestionTypeData } from '../strapiData.type'; export function parseQuestionType( diff --git a/frontend/src/lib/api/base/dataTypes.ts b/frontend/src/lib/api/base/dataTypes.ts index fca63cd72..b67f51222 100644 --- a/frontend/src/lib/api/base/dataTypes.ts +++ b/frontend/src/lib/api/base/dataTypes.ts @@ -5,9 +5,9 @@ import type { AnyQuestionVariantData, ConstituencyData, ConstituencyGroupData, - ElectionData + ElectionData, + QuestionCategoryData } from '@openvaa/data'; -import type { QuestionCategoryData } from '@openvaa/data'; import type { AppCustomization } from '$lib/contexts/app'; import type { DataProvider } from './dataProvider.type'; diff --git a/frontend/src/lib/api/base/universalAdapter.ts b/frontend/src/lib/api/base/universalAdapter.ts index 02a3fddb5..09ad8cbb2 100644 --- a/frontend/src/lib/api/base/universalAdapter.ts +++ b/frontend/src/lib/api/base/universalAdapter.ts @@ -3,7 +3,8 @@ import { constants } from '$lib/utils/constants'; import { addHeader } from '../utils/addHeader'; import { hasAuthHeaders } from '../utils/authHeaders'; import { cachifyUrl } from '../utils/cachifyUrl'; -import { type ParsedResponse, parseResponse, type ResponseParser } from '../utils/parseResponse'; +import { parseResponse } from '../utils/parseResponse'; +import type { ParsedResponse, ResponseParser } from '../utils/parseResponse'; import type { AdapterConfig, FetchOptions, GetOptions, PostOptions, SearchParams } from './universalAdapter.type'; const DEFAULT_PARSER = 'json' as const; diff --git a/frontend/src/lib/api/utils/filterEntitiesByNomination.test.ts b/frontend/src/lib/api/utils/filterEntitiesByNomination.test.ts index 20254c6e7..56383f97e 100644 --- a/frontend/src/lib/api/utils/filterEntitiesByNomination.test.ts +++ b/frontend/src/lib/api/utils/filterEntitiesByNomination.test.ts @@ -1,6 +1,7 @@ -import { type AnyEntityVariantData, type AnyNominationVariantPublicData, ENTITY_TYPE } from '@openvaa/data'; +import { ENTITY_TYPE } from '@openvaa/data'; import { describe, expect, test } from 'vitest'; import { filterEntitiesByNomination, parseEntitiesFromNominations } from './filterEntitiesByNomination'; +import type { AnyEntityVariantData, AnyNominationVariantPublicData } from '@openvaa/data'; const nominations: Array = [ { diff --git a/frontend/src/lib/api/utils/filterEntitiesByNomination.ts b/frontend/src/lib/api/utils/filterEntitiesByNomination.ts index 74523729f..5cb4b3ed7 100644 --- a/frontend/src/lib/api/utils/filterEntitiesByNomination.ts +++ b/frontend/src/lib/api/utils/filterEntitiesByNomination.ts @@ -1,10 +1,6 @@ -import { - type AnyEntityVariantData, - type AnyNominationVariantPublicData, - ENTITY_TYPE, - type EntityType -} from '@openvaa/data'; +import { ENTITY_TYPE } from '@openvaa/data'; import type { Id } from '@openvaa/core'; +import type { AnyEntityVariantData, AnyNominationVariantPublicData, EntityType } from '@openvaa/data'; /** * Filter the entities to those that are included in the possibly nested nominations. diff --git a/frontend/src/lib/api/utils/parseResponse.test.ts b/frontend/src/lib/api/utils/parseResponse.test.ts index 1d8cdca76..ee3f42f19 100644 --- a/frontend/src/lib/api/utils/parseResponse.test.ts +++ b/frontend/src/lib/api/utils/parseResponse.test.ts @@ -1,5 +1,6 @@ import { describe, expect, test, vi } from 'vitest'; -import { parseResponse, type ResponseParser } from './parseResponse'; +import { parseResponse } from './parseResponse'; +import type { ResponseParser } from './parseResponse'; describe('parseResponse', () => { test('should parse json response', async () => { diff --git a/frontend/src/lib/api/utils/translateHeroContent.ts b/frontend/src/lib/api/utils/translateHeroContent.ts index fb72f89fa..1f9e6ef7c 100644 --- a/frontend/src/lib/api/utils/translateHeroContent.ts +++ b/frontend/src/lib/api/utils/translateHeroContent.ts @@ -1,5 +1,6 @@ -import { type HeroContent, isEmoji, isImage, isLocalizedObject, type LocalizedHeroContent } from '@openvaa/app-shared'; +import { isEmoji, isImage, isLocalizedObject } from '@openvaa/app-shared'; import { translateObject } from '$lib/i18n'; +import type { HeroContent, LocalizedHeroContent } from '@openvaa/app-shared'; /** * Translate possibly localized hero content object into a `HeroContent` object. diff --git a/frontend/src/lib/candidate/components/passwordValidator/PasswordValidator.svelte b/frontend/src/lib/candidate/components/passwordValidator/PasswordValidator.svelte index 24ff46356..467262b40 100644 --- a/frontend/src/lib/candidate/components/passwordValidator/PasswordValidator.svelte +++ b/frontend/src/lib/candidate/components/passwordValidator/PasswordValidator.svelte @@ -38,12 +38,13 @@ When using this component, the `validPassword` property should be bound to a boo --> diff --git a/frontend/src/lib/components/headingGroup/HeadingGroup.type.ts b/frontend/src/lib/components/headingGroup/HeadingGroup.type.ts index ce735acd2..5ea881724 100644 --- a/frontend/src/lib/components/headingGroup/HeadingGroup.type.ts +++ b/frontend/src/lib/components/headingGroup/HeadingGroup.type.ts @@ -1,4 +1,5 @@ import type { AriaRole, SvelteHTMLElements } from 'svelte/elements'; + export type HeadingGroupProps = SvelteHTMLElements['hgroup'] & { /** * The Aria role description of the `
` element. diff --git a/frontend/src/lib/components/headingGroup/PreHeading.svelte b/frontend/src/lib/components/headingGroup/PreHeading.svelte index 6787d4b1e..ac73c40d4 100644 --- a/frontend/src/lib/components/headingGroup/PreHeading.svelte +++ b/frontend/src/lib/components/headingGroup/PreHeading.svelte @@ -20,6 +20,7 @@ Used for a pre-title, or kicker, above the main title of a page within a `Headin diff --git a/frontend/src/lib/components/headingGroup/PreHeading.type.ts b/frontend/src/lib/components/headingGroup/PreHeading.type.ts index e6fba3bf4..f265f9487 100644 --- a/frontend/src/lib/components/headingGroup/PreHeading.type.ts +++ b/frontend/src/lib/components/headingGroup/PreHeading.type.ts @@ -1,4 +1,5 @@ import type { SvelteHTMLElements } from 'svelte/elements'; + export type PreHeadingProps = SvelteHTMLElements['p'] & { /** * The Aria role description of the `

` element representing diff --git a/frontend/src/lib/components/heroEmoji/HeroEmoji.type.ts b/frontend/src/lib/components/heroEmoji/HeroEmoji.type.ts index 084234790..94ca86ced 100644 --- a/frontend/src/lib/components/heroEmoji/HeroEmoji.type.ts +++ b/frontend/src/lib/components/heroEmoji/HeroEmoji.type.ts @@ -1,4 +1,5 @@ import type { SvelteHTMLElements } from 'svelte/elements'; + export type HeroEmojiProps = SvelteHTMLElements['div'] & { /** * The emoji to use. Note that all non-emoji characters will be removed. If `undefined` the component will not be rendered at all. @default `undefined` diff --git a/frontend/src/lib/components/input/Input.svelte b/frontend/src/lib/components/input/Input.svelte index 97a028dc8..affb5fc26 100644 --- a/frontend/src/lib/components/input/Input.svelte +++ b/frontend/src/lib/components/input/Input.svelte @@ -53,7 +53,7 @@ The input itself is wrapped in multiple container elements, the outermost of whi